Key Points
-
Evolutionary computation (EC) incorporates evolutionary ideas into algorithms.
-
These algorithms can be applied to problems of biological interest.
-
They are interesting models for evolution, so that EC research might inform biological questions.
-
There are many types of EC: genetic algorithms, evolutionary programming, evolution strategies, genetic programming and evolvable hardware.
-
These differ in that some solve particular problems, and others produce descriptions of entities that solve several problems. They tend to differ in implementation details.
-
Successful EC applications represent evolving objects with appropriate data structures, and implement evolutionary processes that work well with these representations.
-
Techniques exist that allow representations and evolutionary processes to change during the course of an evolutionary computation.
-
Evolved programs often have interesting properties, such as increasing genome sizes, 'unexpressed' genomic material and phenotypic resilience, which might be analogous to biological phenomena.
Abstract
Evolution does not require DNA, or even living organisms. In computer science, the field known as 'evolutionary computation' uses evolution as an algorithmic tool, implementing random variation, reproduction and selection by altering and moving data within a computer. This harnesses the power of evolution as an alternative to the more traditional ways to design software or hardware. Research into evolutionary computation should be of interest to geneticists, as evolved programs often reveal properties — such as robustness and non-expressed DNA — that are analogous to many biological phenomena.
This is a preview of subscription content, access via your institution
Access options
Subscribe to this journal
Receive 12 print issues and online access
$189.00 per year
only $15.75 per issue
Rent or buy this article
Prices vary by article type
from$1.95
to$39.95
Prices may be subject to local taxes which are calculated during checkout
Similar content being viewed by others
References
Danielson, W. F., Foster, J. A. & Frincke, D. in Proc. Int. Conf. Evolutionary Computing (eds Fogel, D. B. & Angeline, P. J.) 259–264 (IEEE Press, Piscataway, New Jersey, 1998).
Shoaf, J. S. & Foster, J. A. in Proc. 1996 Annu. Meeting of the Decision Sciences Institute Vol . 2, 571– 573 (Decision Sciences Institute, Orlando, Florida, 1996).
Marconi, J. & Foster, J. A. in Proc. Int. Conf. Evolutionary Computing (eds Fogel, D. B. & Angeline, P. J.) 650– 655 (IEEE Press, Piscataway, New Jersey, 1998).
Notredame, C. & Higgins, D. G. SAGA: sequence alignment by genetic algorithm. Nucleic Acids Res. 24, 1515– 1524 (1996).
Chellapilla, K. & Fogel, G. B. in Proc. Congr. Evolutionary Computation (eds Angeline, P. J. & Porto, V. W.) 445–452 (IEEE Press, Piscataway, New Jersey, 1999).
Zhang, C. & Wong, A. K. C. Toward efficient multiple molecular sequence alignment: a system of genetic algorithm and dynamic programming . IEEE Trans. Syst. Man Cybernet. B: Cybernet. 27, 918–932 (1997).
Lewis, P. O. A genetic algorithm for maximum-likelihood phylogeny inference using nucleotide sequence data. Mol. Biol. Evol. 15, 277– 283 (1998).
Koza, J. R., Mydlowec, W., Lanza, G., Yu, J. & Keane, M. A. in Pacific Symp. Biocomputing 2001 (eds Altman, R. B., Dunker, A. K., Hunker, L., Lauderdale, K. & Klein, T. E.) 434–445 (World Scientific, Singapore, 2001).
Goh, G. K.-M. & Foster, J. A. in Proc. Genetic and Evolutionary Computation Conf. (GECCO-2000) (eds Whitley, D. et al.) 27–33 (Morgan Kaufmann, San Francisco, California, 2000).
Gehlhaar, D. et al. Molecular recognition of the inhibitor AG-1343 by HIV-1 protease: conformationally flexible docking by evolutionary programming. Chem. Biol. 2, 317–324 ( 1995).
Bäck, T. Evolutionary Algorithms in Theory and Practice: Evolutionary Strategies, Evolutionary Programming, Genetic Algorithms (Oxford Univ. Press, New York, 1996).Survey of all evolutionary computation types, with mathematical characterization of their properties.
Holland, J. H. Adaptation in Natural and Artificial Systems (MIT Press, Cambridge, Massachusetts, 1975).Readable introduction to genetic algorithms, with interesting additional comments on artificial ecosystems.
Fraser, A. S. Simulation of genetic systems by automatic digital computers. I. Introduction . Aust. J. Biol. Sci. 10, 484– 491 (1957).
Krasnogor, N., Hart, W. E., Smith, J. & Pelta, D. A. in Proc. Genetic and Evolutionary Computation Conf. (eds Banzhaf, W. et al.) 1596–1601 (Morgan Kaufmann, San Francisco, California, 1999).
Blickle, T. in Handbook of Evolutionary Computation (eds Bäck, T., Fogel, D. B. & Michalewicz, Z.) C2. 3: 1–4 (Oxford Univ. Press, New York, 1997).
Fogel, D. B. Evolutionary Computation: Towards a New Philosophy of Machine Intelligence (IEEE Press, Piscataway, New Jersey, 1999).
Fogel, D. B. in Proc. 2nd Annu. Conf. Evolutionary Programming (eds Fogel, D. B. & Atmar, W.) 23–29 (IEEE Press, Piscataway, New Jersey, 1993).
Fogel, L. J., Owens, A. & Walsh, M. Artificial Intelligence Through Simulated Evolution (John Wiley & Sons, New York, 1966).
Bäck, T., Hammel, U. & Schwefel, H.-P. Evolutionary computation: comments on the history and current state. IEEE Trans. Evol. Comput. 1, 3–17 (1997).Thorough presentation of main types of evolutionary computation (EC), with a complete discussion of EC history.
Reed, J., Toombs, R. & Barricelli, N. A. Simulation of biological evolution and machine learning. I. Selection of self-reproducing numeric patterns by data processing machines, effects of hereditary control, mutation and type crossing. J. Theor. Biol. 17, 319–342 ( 1967).
Rosenberg, R. Simulation of Genetic Populations with Biochemical Properties (Univ. of Michigan, Ann Arbor, 1967).
Fogel, D. B., Fogel, L. J. & Atmar, J. W. in Proc. 25th Asilomar Conf. Signals, Systems and Computers (ed. Chen, R. R.) 540–545 (Pacific Grove, California, 1991).
Koza, J. R. Genetic Programming. II. Automatic Discovery of Reusable Programs (MIT Press, Cambridge, Massachusetts, 1994).
Koza, J. R. Genetic Programming: On the Programming of Computers by Means of Natural Selection (MIT Press, Cambridge, Massachusetts, 1992).
Mayley, G. Landscapes, learning costs and genetic assimilation. Evol. Comput. 4, 213–234 ( 1996).
Smith, R. E. in Handbook of Evolutionary Computation (eds Bäck, T., Fogel, D. B. & Michalewicz, Z.) B1. 5: 6–11 (Oxford Univ. Press, New York, 1997).
Holland, J. H. Adaptation in Natural and Artificial Systems (MIT Press, Cambridge, Massachusetts, 1992).
Russo, M. Genetic fuzzy learning. IEEE Trans. Evol. Comput. 4 , 259–273 (2000).
Banzhaf, W., Nordin, P., Keller, R. E. & Francone, F. D. Genetic Programming – An Introduction; On the Automatic Evolution of Computer Programs and its Applications (Morgan Kaufmann, San Francisco, California, 1998).Textbook on genetic programming, with a survey of many applications.
Foster, J. A. Discipulus: the first commercial genetic programming system. J. Genetic Programming Evolvable Hardware 2, 201– 203 (2001).
Ryan, C., Collins, J. J. & O'Neill, M. in Proc. 1st European Workshop on Genetic Programming (eds Banzhaf, W., Poli, R., Schoenauer, M. & Fogarty, T. C.) 83–95 (Springer, New York,1998).
Koza, J. R., Bennett, F. H., Andre, D. & Keane, M. A. Genetic Programming. III. Darwinian Invention and Problem Solving (Morgan Kaufmann, San Francisco, California, 1999).
Koza, J. R., Bennett, F. H., Andre, D., Keane, M. A. & Dunlap, F. Automated synthesis of analog electrical circuits by means of genetic programming. IEEE Trans. Evol. Comput. 1, 109–128 ( 1997).
Miller, J. F., Job, D. & Vassilev, V. K. Principles in the evolutionary design of digital circuits. Part I. Genetic Programming Evolvable Machines 1, 7–35 (2000).
Miller, J. F., Job, D. & Vassilev, V. K. Principles in the evolutionary design of digital circuits. Part II. Genetic Programming Evolvable Machines 1, 259–288 (2000).
Miller, J. F. in Proc. Genetic and Evolutionary Computation Conf. (eds Banzhaf, W. et al.) 1135–1142 (Morgan Kaufmann, San Francisco, California, 1999).
Masner, J., Cavalieri, J., Frenzel, J. & Foster, J. A. in Proc. NASA/DoD Workshop on Evolvable Hardware (eds Stoica, A., Keymenlen, D. & John, J.) 255–261 (IEEE Press, Piscataway, New Jersey, 1999).
Thompson, A. in Genetic Programming 1996: Proc. 1st Annu. Conf. (eds Koza, J. R., Goldberg, D. E., Fogel, D. B. & Riolo, R. L.) 444–452 (Morgan Kaufmann, San Francisco, California, 1996).
Dumoulin, J., McGrew, S., Frenzel, J. & Foster, J. A. in Proc. Int. Workshop on Evolvable Image and Digital Signal Processing (ed. Cagnoni, S.) 1–11 (Springer, New York, 2000).
Thompson, A., Harvey, I. & Husbands, P. in Towards Evolvable Hardware; The Evolutionary Engineering Approach (eds Sanchez, E. & Tomassini, M.) 136– 165 (Springer, Berlin, 1996).
Masner, J., Cavalieri, J., Frenzel, J. & Foster, J. A. in Proc. NASA/DoD Workshop on Evolvable Hardware (eds Stoica, A., Keymenlen, D. & John, J.) 81–90 (IEEE Press, Piscataway, New Jersey, 2000).
Barkai, N. & Leibler, S. Robustness in simple biochemical networks. Nature 387 (1997).
Wolpert, D. H. & Macready, W. G. No free lunch theorems for optimization. IEEE Trans. Evol. Comput. 1, 67–82 (1997).
Culberson, J. C. On the futility of blind search: an algorithmic view of 'no free lunch'. Evol. Comput. 6, 109–127 (1998).Readable presentation of 'no free lunch' theorems, an important part of evolutionary computation theory.
Whitely, D. in Proc. Genetic and Evolutionary Computation Conf. (eds Banzhaf, W. et al.) 833–839 (Morgan Kaufmann, San Francisco, California, 1999).
Angeline, P. J. & Pollack, J. B. in Artificial Life III (ed. Langton, C.) 55–71 (Addison-Wesley Longman, Reading, Massachusetts, 1994).
Rosca, J. P. & Ballard, D. H. in Advances in Genetic Programming 2 (ed. Angeline, P. J. & Kinnear, K. E.) 177– 202 (MIT Press, Cambridge, Massachusetts, 1996).
Jones, T. in Proc. 6th Int. Conf. Genetic Algorithms (ed. Eshelman, L. J.) 73–80 (Morgan Kaufmann, San Francisco, California, 1995).
Angeline, P. J. in Genetic Programming 1997: Proc. 2nd Annu. Conf. (eds Koza, J. R. et al.) 9–17 (Stanford Univ., California, 1997).
O'Reilly, U.-M. & Oppacher, F. in Parallel Problem Solving from Nature (PPSN III) (eds Davidor, Y., Schwefel, H.-P. & Männer, R.) 397–406 (Springer, New York, 1994).
Goldberg, D. Genetic Algorithms in Search, Optimization and Machine Learning (Addison–Wesley, Reading, Massachusetts, 1989).
Lipson, H. & Pollack, J. B. Automatic design and manufacture of artificial lifeforms. Nature 406, 974 –978 (2000).
Whitley, D. L., Gordon, V. S. & Mathias, K. E. in Parallel Problem Solving from Nature (eds Davidor, Y., Schwefel, H.-P. & Männer, R.) 6– 15 (Springer, Berlin, 1994).
Turney, P., Whitely, D. & Anderson, R. Evolution, learning, and instinct: 100 years of the Baldwin effect. Evol. Comput. 4, iv– viii (1996).
Hinton, G. E. & Nowlan, S. J. How learning can guide evolution . Complex Syst. 1, 495– 502 (1987).
Schaffer, J. D. & Morishima, A. in Genetic Algorithms and their Applications: Proc. 2nd Int. Conf. Genetic Algorithms (ed. Grefenstette, J. J.) 36–40 (Morgan Kaufmann, San Francisco, California, 1987).
Louis, S. J. & Rawlins, G. J. E. in Proc. 4th Int. Conf. Genetic Algorithms (eds Belew, R. K. & Booker, L. B.) 53– 60 (Morgan Kaufmann, San Mateo, California, 1991).
Hadad, B. S. & Eick, C. F. in Evolutionary Programming VI (eds Angeline, P. J., Reynolds, R. G., McDonnell, J. R. & Eberhart, R.) 223–234 (Springer, New York, 1997).
Francone, F. D., Conrads, M., Banzhaf, W. & Nordin, P. in Proc. Genetic and Evolutionary Computation Conf. (eds Banzhaf, W. et al.) 1021–1026 (Orlando, Florida, 1999).
Langdon, W. B. Size fair and homologous tree genetic programming crossovers. Genetic Programming Evolvable Machines 1, 95– 119 (2000).
Langdon, W. B., Soule, T., Poli, R. & Foster, J. A. in Advances in Genetic Programming 3 (eds Spector, L., Langdon, W. B., O'Reilly, U.-M. & Angeline, P. J.) 163–190 (MIT Press, Cambridge, Massachusetts, 1999).
Soule, T. & Foster, J. A. Effects of code growth and parsimony pressure on populations in genetic programming. Evol. Comput. 6, 293–309 (1998).
Soule, T., Foster, J. A. & Dickinson, J. in Genetic Programming 1996: Proc. 1st Annu. Conf. (eds Koza, J. R., Goldberg, D. E., Fogel, D. B. & Riolo, R. L.) 215–223 (Morgan Kaufmann, San Francisco, California, 1996).
Leung, K.-S., Duan, Q.-H., Xu, Z.-B. & Wong, C. K. A new model of simulated evolution computation – convergence analysis and specifications . IEEE Trans. Evol. Comput. 5, 3– 16 (2001).
Deb, K. & Spears, W. M. in Handbook of Evolutionary Computation (eds Bäck, T., Fogel, D. B. & Michalewicz, Z.) C6. 2: 1–5 (Oxford Univ. Press, New York, 1997).
Paredis, J. in Evolutionary Computation. 2. Advanced Algorithms and Operators (eds Bäck, T., Fogel, D. B. & Michalewicz, Z.) 224– 238 (Institute of Physics Publishers, Bristol, UK, 2000).
Dorigo, M. & Caro, G. D. in New Ideas in Optimization (eds Corne, D., Dorigo, M. & Glover, F.) 11–32 (McGraw–Hill, London, 1999).
Hofmeyr, S. A. & Forrest, S. in Proc. Genetic and Evolutionary Computation Conf. (eds Banzhaf, W. et al.) 1289–1296 (Orlando, Florida, 1999).
Vose, M. D. The Simple Genetic Algorithm: Foundations and Theory (MIT Press, Cambridge, Massachusetts, 1999).A thorough presentation of current genetic algorithm theory.
Jones, T. Computer Science. Thesis, Univ. of New Mexico, Albuquerque, New Mexico (1995).
Poli, R. & Langdon, W. B. Schema theory for genetic programming with one-point crossover and point mutation. Evol. Comput. 6, 231–252 (1998).
Heckendorn, R. B. & Whitley, D. Walsh functions and predicting problem complexity. Evol. Comput. 7, 69–101 (1999).
Altenberg, L. in Foundations of Genetic Algorithms III (eds Whitley, L. D. & Vose, M. D.) 23–49 (Morgan Kaufmann, San Francisco, California, 1995).
Fogel, D. B. & Ghozeil, A. The schema theorem and the misallocation of trials in genetic algorithms. Inform. Sci. 122, 93–119 (2000).
Macready, W. G. & Wolpert, D. H. Bandit problems and the exploration/exploitation trade-off. IEEE Trans. Evol. Comput. 2, 2–22 (1998 ).
Acknowledgements
This work was supported in part by the National Science Foundation and the National Institutes of Health. The author is particularly grateful for detailed comments from, and discussions with, D. Fogel, J. Koza, R. Heckendorn and H. Wichman, and the anonymous referees.
Author information
Authors and Affiliations
Related links
Glossary
- FITNESS FUNCTION
-
A function that measures the quality of an individual with respect to the given target function, usually as a real value.
- DATA STRUCTURE
-
An organized collection of data, such as a list, tree, or array.
- GENE
-
A field in a chromosome, usually associated with a single parameter (allele) in the target problem.
- OPERATORS
-
Processes that act on chromosomes, including selection, mutation and recombination.
- FINITE (STATE) AUTOMATA
-
A finite state machine is one that takes a sequence of input 'letters' (symbols, inputs), and begins in a 'start state', then repeatedly reads one input letter, optionally outputs a letter and moves to a new state.
- SELF-ADAPTATION
-
The ability of an individual to alter the evolutionary processes that affect its genotype through the use of strategy parameters.
- MACHINE CODE
-
Instructions for a particular computer, expressed in directly machine-readable form.
- EMBRYONIC INDIVIDUAL
-
A simple individual which is transformed into a more complex one by applying instructions evolved in a grammatical or developmental genetic programme.
- BOOLEAN OPERATOR
-
Logical operators, such as AND or OR, that form expressions with binary values, denoted 'true' and 'false', or 1 and 0.
- REPRESENTATION PROBLEM
-
Decision on how to organize data in individuals, and the choice of variation and recombination operators that work well with that organization.
- MACROMUTATION
-
Any large change in alleles that does not involve recombination.
- HILL CLIMBING
-
Varying a chromosome by searching explicitly for small changes that improve the fitness of the individual, and then making those changes.
- PERMUTATION
-
An ordered arrangement of distinct items.
- EVOLUTIONARY ROBOTICS
-
Using evolutionary computation to design robots or robot controllers.
- INTRON
-
Data in chromosomes that do not contribute to fitness.
- PARSIMONY PRESSURE
-
Selective fitness advantage for smaller genomes.
Rights and permissions
About this article
Cite this article
Foster, J. Evolutionary computation . Nat Rev Genet 2, 428–436 (2001). https://doi.org/10.1038/35076523
Issue Date:
DOI: https://doi.org/10.1038/35076523
This article is cited by
-
Multiphase CFD modelling for enclosure fires—A review on past studies and future perspectives
Experimental and Computational Multiphase Flow (2022)
-
Study on the thermal decomposition kinetics and flammability performance of a flame-retardant leather
Journal of Thermal Analysis and Calorimetry (2017)
-
Defining and simulating open-ended novelty: requirements, guidelines, and challenges
Theory in Biosciences (2016)
-
Designing antimicrobial peptides: form follows function
Nature Reviews Drug Discovery (2012)
-
Computational design of digital and memory biological devices
Systems and Synthetic Biology (2007)