Generalized crowding for genetic algorithms

Crowding is a technique used in genetic algorithms to preserve diversity in the population and to prevent premature convergence to local optima. It consists of pairing each offspring with a similar individual in the current population (pairing phase) and deciding which of the two will remain in the population (replacement phase). The present work focuses on the replacement phase of crowding, which usually has been carried out by one of the following three approaches: Deterministic, Probabilistic, and Simulated Annealing. These approaches present some limitations regarding the way replacement is conducted. On the one hand, the first two apply the same selective pressure regardless of the problem being solved or the stage of the genetic algorithm. On the other hand, the third does not apply a uniform selective pressure over all the individuals in the population, which makes the control of selective pressure over the generations somewhat difficult. This work presents a Generalized Crowding approach that allows selective pressure to be controlled in a simple way in the replacement phase of crowding, thus overcoming limitations of the other approaches. Furthermore, the understanding of existing approaches is greatly improved, since both Deterministic and Probabilistic Crowding turn out to be special cases of Generalized Crowding. In addition, the temperature parameter used in Simulated Annealing is replaced by a parameter called scaling factor that controls the selective pressure applied. Theoretical analysis using Markov chains and empirical evaluation using Bayesian networks demonstrate the potential of this novel Generalized Crowding approach.

[1]  David E. Goldberg,et al.  Parallel Recombinative Simulated Annealing: A Genetic Algorithm , 1995, Parallel Comput..

[2]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[3]  Ole J. Mengshoel,et al.  Constraint Handling Using Tournament Selection: Abductive Inference in Partly Deterministic Bayesian Networks , 2009, Evolutionary Computation.

[4]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[5]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[6]  Ole J Mengshoel,et al.  The Crowding Approach to Niching in Genetic Algorithms , 2008, Evolutionary Computation.

[7]  Samir W. Mahfoud Crowding and Preselection Revisited , 1992, PPSN.

[8]  David C. Wilkins,et al.  Efficient Bayesian Network Inference: Genetic Algorithms, Stochastic Local Search, and Abstraction , 1999 .

[9]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[10]  Samir W. Mahfoud Niching methods for genetic algorithms , 1996 .

[11]  John Holland,et al.  Adaptation in Natural and Artificial Sys-tems: An Introductory Analysis with Applications to Biology , 1975 .

[12]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[13]  Geoffrey E. Hinton,et al.  A Learning Algorithm for Boltzmann Machines , 1985, Cogn. Sci..

[14]  David E. Goldberg,et al.  Probabilistic Crowding: Deterministic Crowding with Probabilistic Replacement , 1999 .

[15]  David E. Goldberg,et al.  A Note on Boltzmann Tournament Selection for Genetic Algorithms and Population-Oriented Simulated Annealing , 1990, Complex Syst..

[16]  K. Dejong,et al.  An analysis of the behavior of a class of genetic adaptive systems , 1975 .