Evolutionary computation uses iterative progress, such as growth or development in a population. This population is then selected in a guided random search using parallel processing to achieve the desired end. Such processes are often inspired by biological mechanisms of evolution.
In the fifties, the idea to use Darwinian principles for automated problem solving originated. It was not until the sixties that three distinct interpretations of this idea started to be developed in three different places.
Evolutionary programming was introduced by Lawrence J. Fogel in the USA, while John Henry Holland called his method a genetic algorithm. In Germany Ingo Rechenberg and Hans-Paul Schwefel introduced evolution strategies. These areas developed separately for about 15 years. From the early nineties on they are unified as different representatives (“dialects”) of one technology, called evolutionary computing. Also in the early nineties, a fourth stream following the general ideas had emerged – genetic programming.
These terminologies denote the field of evolutionary computing and consider evolutionary programming, evolution strategies, genetic algorithms, and genetic programming as sub-areas.
- evolutionary algorithms (comprising genetic algorithms, evolutionary programming, evolution strategy, genetic programming and learning classifier systems)
- swarm intelligence (comprising ant colony optimization and particle swarm optimization)
and in a lesser extent also:
- self-organization such as self-organizing maps, growing neural gas, competitive learning demo applet
- differential evolution
- artificial life (also see digital organism)
- cultural algorithms
- harmony search algorithm
- artificial immune systems
- Learnable Evolution Model
Evolutionary algorithms form a subset of evolutionary computation in that they generally only involve techniques implementing mechanisms inspired by biological evolution such as reproduction, mutation, recombination, natural selection and survival of the fittest. Candidate solutions to the optimization problem play the role of individuals in a population, and the cost function determines the environment within which the solutions "live" (see also fitness function). Evolution of the population then takes place after the repeated application of the above operators.
In this process, there are two main forces that form the basis of evolutionary systems: Recombination and mutation create the necessary diversity and thereby facilitate novelty, while selection acts as a force increasing quality.
Many aspects of such an evolutionary process are stochastic. Changed pieces of information due to recombination and mutation are randomly chosen. On the other hand, selection operators can be either deterministic, or stochastic. In the latter case, individuals with a higher fitness have a higher chance to be selected than individuals with a lower fitness, but typically even the weak individuals have a chance to become a parent or to survive.
Evolutionary computation practitioners
- Kalyanmoy Deb
- David E. Goldberg
- John Henry Holland
- John Koza
- Ingo Rechenberg
- Hans-Paul Schwefel
- Edward Tsang
Major conferences and workshops
- The Genetic and Evolutionary Computation Conference (GECCO)
- IEEE Congress on Evolutionary Computation (CEC)
- Parallel Problem Solving from Nature (PPSN)
- The Foundations of Genetic Algorithms workshop (FOGA)
- The Workshop on Ant Colony optimization and Swarm Intellligence (ANTS)
- The Evo* and EuroGP workshops
- Evolutionary Computation
- IEEE Transactions on Evolutionary Computation
- Genetic Programming and Evolvable Machines
- Interactive evolutionary computation
- Human-based evolutionary computation
- Evolutionary robotics
- No free lunch in search and optimization
- Estimation of distribution algorithm
- K.A. De Jong, Evolutionary computation: a unified approach. MIT Press, Cambridge MA, 2006
- A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing, Springer, 2003, ISBN 3-540-40184-9
- A.E. Eiben and M. Schoenauer, Evolutionary computing, Information Processing Letters, 82(1): 1-6, 2002.
- W. Banzhaf, P. Nordin, R.E. Keller, and F.D. Francone. Genetic Programming — An Introduction. Morgan Kaufmann, 1998.
- D. B. Fogel. Evolutionary Computation. Toward a New Philosophy of Machine Intelligence. IEEE Press, Piscataway, NJ, 1995.
- H.-P. Schwefel. Numerical Optimization of Computer Models. John Wiley & Sons, New-York, 1981. 1995 – 2nd edition.
- Th. Bäck and H.-P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary Computation, 1(1):1–23, 1993.
- J. R. Koza. Genetic Programming: On the Programming of Computers by means of Natural Evolution. MIT Press, Massachusetts, 1992.
- D. E. Goldberg. Genetic algorithms in search, optimization and machine learning. Addison Wesley, 1989.
- J. H. Holland. Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor, 1975.
- I. Rechenberg. Evolutionstrategie: Optimierung Technisher Systeme nach Prinzipien des Biologischen Evolution. Fromman-Hozlboog Verlag, Stuttgart, 1973.
- L. J. Fogel, A. J. Owens, and M. J. Walsh. Artificial Intelligence through Simulated Evolution. New York: John Wiley, 1966.
There is no pharmaceutical or device industry support for this site and we need your viewer supported Donations | Editorial Board | Governance | Licensing | Disclaimers | Avoid Plagiarism | Policies