# Evolutionary algorithm

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Evolutionary_algorithm
> Markdown URL: https://mediated.wiki/source/Evolutionary_algorithm.md
> Source: https://en.wikipedia.org/wiki/Evolutionary_algorithm
> Source revision: 1356406616
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Subset of evolutionary computation

Part of a series on the Evolutionary algorithm Chromosome Fitness function Genetic operator Crossover Mutation Selection Population model Genetic algorithm (GA) Chromosome Clonal selection algorithm Fly algorithm Genetic fuzzy systems Genetic memory Schema Promoter based GA Genetic programming (GP) Cartesian GP Linear GP Gene expression programming Grammatical evolution Multi expression programming Differential evolution Evolution strategy Evolutionary programming Related topics Cellular EA Cultural algorithm Effective fitness Evolutionary computation Gaussian adaptation Grammar induction Evolutionary multimodal optimization Memetic algorithm Neuroevolution v t e

Part of a series on Artificial intelligence (AI) Major goals Artificial general intelligence Intelligent agent Recursive self-improvement Planning Computer vision General game playing Knowledge representation Natural language processing Robotics AI safety Approaches Machine learning Symbolic Deep learning Bayesian networks Evolutionary algorithms Neuro-symbolic AI Systems integration Open-source AI data centers Applications Bioinformatics Deepfake Earth sciences Finance Generative AI Art Audio Music Government Healthcare Industry Software development Translation Military Physics Projects Philosophy AI alignment Artificial consciousness The bitter lesson Chinese room Friendly AI Ethics Existential risk Turing test Uncanny valley Human–AI interaction History Timeline Progress AI winter AI boom AI bubble Controversies Deepfake pornography Taylor Swift deepfake pornography controversy Grok sexual deepfake scandal Google Gemini image generation controversy It's the Most Terrible Time of the Year Pause Giant AI Experiments Removal of Sam Altman from OpenAI Statement on AI Risk Tay (chatbot) Théâtre D'opéra Spatial Voiceverse NFT plagiarism scandal Glossary Glossary v t e

**Evolutionary algorithms** (**EA**) reproduce essential elements of biological [evolution](/source/Evolution) in a [computer algorithm](/source/Computer_algorithm) in order to solve "difficult" problems, at least [approximately](/source/Approximation), for which no exact or satisfactory solution methods are known. They are [metaheuristics](/source/Metaheuristics) and [population-based bio-inspired algorithms](/source/Bio-inspired_computing#Population-Based_Bio-Inspired_Algorithms)[1] and [evolutionary computation](/source/Evolutionary_computation), which itself are part of the field of [computational intelligence](/source/Computational_intelligence).[2] The mechanisms of biological evolution that an EA mainly imitates are [reproduction](/source/Reproduction), [mutation](/source/Mutation), [recombination](/source/Genetic_recombination) and [selection](/source/Natural_selection). [Candidate solutions](/source/Candidate_solution) to the [optimization problem](/source/Optimization_problem) play the role of individuals in a population, and the [fitness function](/source/Fitness_function) determines the quality of the solutions (see also [loss function](/source/Loss_function)). Evolution of the population then takes place after the repeated application of the above operators.

Evolutionary algorithms often perform well approximating solutions to all types of problems because they ideally do not make any assumption about the underlying [fitness landscape](/source/Fitness_landscape). Techniques from evolutionary algorithms applied to the modeling of biological evolution are generally limited to explorations of [microevolution](/source/Microevolution) (microevolutionary processes) and planning models based upon cellular processes. In most real applications of EAs, computational complexity is a prohibiting factor.[3] In fact, this computational complexity is due to fitness function evaluation. [Fitness approximation](/source/Fitness_approximation) is one of the solutions to overcome this difficulty. However, seemingly simple EA can solve often complex problems;[4][5][6] therefore, there may be no direct link between algorithm complexity and problem complexity.

## Generic definition

The following is an example of a generic evolutionary algorithm:[7][8][9]

1. Randomly generate the initial [population](/source/Population_model_(evolutionary_algorithm)) of [individuals](/source/Chromosome_(evolutionary_algorithm)), the first generation.

1. Evaluate the [fitness](/source/Fitness_function) of each individual in the population.

1. Check, if the goal is reached and the algorithm can be terminated.

1. [Select](/source/Selection_(evolutionary_algorithm)) individuals as parents, preferably of higher fitness.

1. Produce offspring with optional [crossover](/source/Crossover_(evolutionary_algorithm)) (mimicking [reproduction](/source/Reproduce)).

1. Apply [mutation](/source/Mutation_(evolutionary_algorithm)) operations on the [offspring](/source/Offspring).

1. [Select](/source/Selection_(evolutionary_algorithm)) individuals preferably of lower fitness for replacement with new individuals (mimicking [natural selection](/source/Natural_selection)).

1. Return to 2

## Types

Similar techniques differ in [genetic representation](/source/Genetic_representation) and other implementation details, and the nature of the particular applied problem.

- [Genetic algorithm](/source/Genetic_algorithm) – This is the most popular type of EA. One seeks the solution of a problem in the form of strings of numbers (traditionally binary, although the best representations are usually those that reflect something about the problem being solved),[3] by applying operators such as recombination and mutation (sometimes one, sometimes both). This type of EA is often used in [optimization](/source/Optimization_(mathematics)) problems.

- [Genetic programming](/source/Genetic_programming) – Here the solutions are in the form of computer programs, and their fitness is determined by their ability to solve a computational problem. There are many variants of Genetic Programming: - [Cartesian genetic programming](/source/Cartesian_genetic_programming) - [Gene expression programming](/source/Gene_expression_programming) - [Grammatical evolution](/source/Grammatical_evolution) - [Linear genetic programming](/source/Linear_genetic_programming) - [Multi expression programming](/source/Multi_expression_programming)

- [Evolutionary programming](/source/Evolutionary_programming) – Similar to evolution strategy, but with a deterministic selection of all parents.

- [Evolution strategy](/source/Evolution_strategy) (ES) – Works with vectors of real numbers as representations of solutions, and typically uses self-adaptive mutation rates. The method is mainly used for numerical optimization, although there are also variants for combinatorial tasks.[10][11][12] - [CMA-ES](/source/CMA-ES) - [Natural evolution strategy](/source/Natural_evolution_strategy)

- [Differential evolution](/source/Differential_evolution) – Based on vector differences and is therefore primarily suited for [numerical optimization](/source/Numerical_optimization) problems.

- Coevolutionary algorithm – Similar to genetic algorithms and evolution strategies, but the created solutions are compared on the basis of their outcomes from interactions with other solutions. Solutions can either compete or cooperate during the search process. Coevolutionary algorithms are often used in scenarios where the fitness landscape is dynamic, complex, or involves competitive interactions.[13][14]

- [Neuroevolution](/source/Neuroevolution) – Similar to genetic programming but the genomes represent artificial neural networks by describing structure and connection weights. The genome encoding can be direct or indirect.

- [Learning classifier system](/source/Learning_classifier_system) – Here the solution is a set of classifiers (rules or conditions). A Michigan-LCS evolves at the level of individual classifiers whereas a Pittsburgh-LCS uses populations of classifier-sets. Initially, classifiers were only binary, but now include real, neural net, or [S-expression](/source/S-expression) types. Fitness is typically determined with either a strength or accuracy based [reinforcement learning](/source/Reinforcement_learning) or [supervised learning](/source/Supervised_learning) approach.

- Quality–Diversity algorithms – QD algorithms simultaneously aim for high-quality and diverse solutions. Unlike traditional optimization algorithms that solely focus on finding the best solution to a problem, QD algorithms explore a wide variety of solutions across a problem space and keep those that are not just high performing, but also diverse and unique.[15][16][17]

## Theoretical background

The following theoretical principles apply to all or almost all EAs.

### No free lunch theorem

The [no free lunch theorem](/source/No_free_lunch_theorem) of optimization states that all optimization strategies are equally effective when the set of all optimization problems is considered. Under the same condition, no evolutionary algorithm is fundamentally better than another. This can only be the case if the set of all problems is restricted. This is exactly what is inevitably done in practice. Therefore, to improve an EA, it must exploit problem knowledge in some form (e.g. by choosing a certain mutation strength or a [problem-adapted coding](/source/Genetic_representation)). Thus, if two EAs are compared, this constraint is implied. In addition, an EA can use problem specific knowledge by, for example, not randomly generating the entire start population, but creating some individuals through [heuristics](/source/Heuristic_(computer_science)) or other procedures.[18][19] Another possibility to tailor an EA to a given problem domain is to involve suitable heuristics, [local search procedures](/source/Local_search_(optimization)) or other problem-related procedures in the process of generating the offspring. This form of extension of an EA is also known as a [memetic algorithm](/source/Memetic_algorithm). Both extensions play a major role in practical applications, as they can speed up the search process and make it more robust.[18][20]

### Convergence

For EAs in which, in addition to the offspring, at least the best individual of the parent generation is used to form the subsequent generation (so-called elitist EAs), there is a general proof of [convergence](/source/Convergence_(logic)) under the condition that an [optimum](/source/Optimum) exists. [Without loss of generality](/source/Without_loss_of_generality), a maximum search is assumed for the proof:

From the property of elitist offspring acceptance and the existence of the optimum it follows that per generation k {\displaystyle k} an improvement of the fitness F {\displaystyle F} of the respective best individual x ′ {\displaystyle x'} will occur with a probability P > 0 {\displaystyle P>0} . Thus:

- F ( x 1 ′ ) ≤ F ( x 2 ′ ) ≤ F ( x 3 ′ ) ≤ ⋯ ≤ F ( x k ′ ) ≤ ⋯ {\displaystyle F(x'_{1})\leq F(x'_{2})\leq F(x'_{3})\leq \cdots \leq F(x'_{k})\leq \cdots }

I.e., the fitness values represent a [monotonically](/source/Monotonic_function) non-decreasing [sequence](/source/Sequence), which is [bounded](/source/Bounded_set) due to the existence of the optimum. From this follows the convergence of the sequence against the optimum.

Since the proof makes no statement about the speed of convergence, it is of little help in practical applications of EAs. But it does justify the recommendation to use elitist EAs. However, when using the usual [panmictic](/source/Panmixia) [population model](/source/Population_model_(evolutionary_algorithm)), elitist EAs tend to [converge prematurely](/source/Premature_convergence) more than non-elitist ones.[21] In a panmictic population model, mate selection (see step 4 of the [generic definition](#Generic_definition)) is such that every individual in the entire population is eligible as a mate. In [non-panmictic populations](/source/Population_model_(evolutionary_algorithm)), selection is suitably restricted, so that the dispersal speed of better individuals is reduced compared to panmictic ones. Thus, the general risk of premature convergence of elitist EAs can be significantly reduced by suitable population models that restrict mate selection.[22][23]

### Virtual alphabets

With the theory of virtual alphabets, [David E. Goldberg](/source/David_E._Goldberg) showed in 1990 that by using a representation with real numbers, an EA that uses classical [recombination operators](/source/Crossover_(genetic_algorithm)) (e.g. uniform or n-point crossover) cannot reach certain areas of the search space, in contrast to a coding with binary numbers.[24] This results in the recommendation for EAs with real representation to use arithmetic operators for recombination (e.g. arithmetic mean or intermediate recombination). With suitable operators, real-valued representations are more effective than binary ones, contrary to earlier opinion.[25][26]

## Comparison to other concepts

### Biological processes

A possible limitation[*[according to whom?](https://en.wikipedia.org/wiki/Wikipedia:Manual_of_Style/Words_to_watch#Unsupported_attributions)*] of many evolutionary algorithms is their lack of a clear [genotype–phenotype distinction](/source/Genotype%E2%80%93phenotype_distinction). In nature, the fertilized egg cell undergoes a complex process known as [embryogenesis](/source/Embryogenesis) to become a mature [phenotype](/source/Phenotype). This indirect [encoding](/source/Encoding) is believed to make the genetic search more robust (i.e. reduce the probability of fatal mutations), and also may improve the [evolvability](/source/Evolvability) of the organism.[27][28] Such indirect (also known as generative or developmental) encodings also enable evolution to exploit the regularity in the environment.[29] Recent work in the field of [artificial embryogeny](/source/Artificial_development), or artificial developmental systems, seeks to address these concerns. And [gene expression programming](/source/Gene_expression_programming) successfully explores a genotype–phenotype system, where the genotype consists of linear multigenic chromosomes of fixed length and the phenotype consists of multiple expression trees or computer programs of different sizes and shapes.[30][*[improper synthesis?](https://en.wikipedia.org/wiki/Wikipedia:No_original_research#Synthesis_of_published_material)*]

### Monte-Carlo methods

EAs and [Monte-Carlo methods](/source/Monte_Carlo_method) have in common that their individual search steps are determined by chance. The main difference, however, is that EAs, like many other metaheuristics, learn from past search steps and incorporate this experience into the execution of the next search steps in a method-specific form. With EAs, this is done firstly through the fitness-based selection operators for partner choice and the formation of the next generation. And secondly, in the type of search steps: In EA, they start from a current solution and change it or they mix the information of two solutions. In contrast, when dicing out new solutions in Monte-Carlo methods, there is usually no connection to existing solutions.[31][32]

If, on the other hand, the search space of a task is such that there is nothing to learn, Monte-Carlo methods are an appropriate tool, as they do not contain any algorithmic overhead that attempts to draw suitable conclusions from the previous search. An example of such tasks is the proverbial *search for a needle in a haystack*, e.g. in the form of a flat (hyper)plane with a single narrow peak.

## Applications

The areas in which evolutionary algorithms are practically used are almost unlimited[6] and range from industry,[33][34] engineering,[3][4][35] complex scheduling,[5][36][37] agriculture,[38] robot movement planning[39] and finance[40][41] to research[42][43] and [art](/source/Evolutionary_art). The application of an evolutionary algorithm requires some rethinking from the inexperienced user, as the approach to a task using an EA is different from conventional exact methods and this is usually not part of the curriculum of engineers or other disciplines. For example, the fitness calculation must not only formulate the goal but also support the evolutionary search process towards it, e.g. by rewarding improvements that do not yet lead to a better evaluation of the original quality criteria. For example, if peak utilisation of resources such as personnel deployment or energy consumption is to be avoided in a scheduling task, it is not sufficient to assess the maximum utilisation. Rather, the number and duration of exceedances of a still acceptable level should also be recorded in order to reward reductions below the actual maximum peak value.[44] There are therefore some publications that are aimed at the beginner and want to help avoiding beginner's mistakes as well as leading an application project to success.[44][45][46] This includes clarifying the fundamental question of when an EA should be used to solve a problem and when it is better not to.

## Related techniques and other global search methods

There are some other proven and widely used methods of nature inspired global search techniques[47] such as

- [Memetic algorithm](/source/Memetic_algorithm) – A hybrid method, inspired by [Richard Dawkins](/source/Richard_Dawkins)'s notion of a meme. It commonly takes the form of a population-based algorithm (frequently an EA) coupled with individual learning procedures capable of performing local refinements. Emphasizes the exploitation of problem-specific knowledge and tries to orchestrate local and global search in a synergistic way.[48][49][50]

- A [cellular evolutionary or memetic algorithm](/source/Population_model_(evolutionary_algorithm)#Neighbourhood_models_or_cellular_evolutionary_algorithms) uses a topological neighborhood relation between the individuals of a population for restricting the mate selection and by that reducing the propagation speed of above-average individuals. The idea is to maintain genotypic diversity in the population over a longer period of time to reduce the risk of premature convergence.[51][52][53]

- [Ant colony optimization](/source/Ant_colony_optimization) is based on the ideas of ant foraging by pheromone communication to form paths. Primarily suited for [combinatorial optimization](/source/Combinatorial_optimization) and [graph](/source/Graph_theory) problems.[54][55]

- [Particle swarm optimization](/source/Particle_swarm_optimization) is based on the ideas of animal flocking behaviour. Also primarily suited for [numerical optimization](/source/Numerical_optimization) problems.[56][57]

- [Gaussian adaptation](/source/Gaussian_adaptation) – Based on information theory. Used for maximization of manufacturing yield, [mean fitness](/source/Mean_fitness) or [average information](/source/Average_information).[58][59] See for instance [Entropy in thermodynamics and information theory](/source/Entropy_in_thermodynamics_and_information_theory).

In addition, many new nature-inspired or metaphor-guided algorithms have been proposed since the beginning of the 21st century. For criticism of most publications on these, see the remarks at the end of the introduction to the article on [metaheuristics](/source/Metaheuristic).

## Examples

In 2020, [Google](/source/Google) stated that their AutoML-Zero can successfully rediscover classic algorithms such as the concept of neural networks.[60]

The computer simulations *[Tierra](/source/Tierra_(computer_simulation))* and *[Avida](/source/Avida_(software))* attempt to model [macroevolutionary](/source/Macroevolution) dynamics.

## Gallery

[61][62]

		- A two-population EA search over a constrained [Rosenbrock function](/source/Rosenbrock_function) with bounded global optimum

		- A two-population EA search over a constrained [Rosenbrock function](/source/Rosenbrock_function). Global optimum is not bounded.

		- [Estimation of distribution algorithm](/source/Estimation_of_distribution_algorithm) over [Keane's bump function](/source/Keane's_bump_function)

		- A two-population EA search of a bounded optima of [Simionescu's function](/source/Test_functions_for_optimization#Test_functions_for_constrained_optimization)

## References

1. **[^](#cite_ref-1)** Farinati, Davide; Vanneschi, Leonardo (December 2024). "A survey on dynamic populations in bio-inspired algorithms". *Genetic Programming and Evolvable Machines*. **25** (2) 19. [doi](/source/Doi_(identifier)):[10.1007/s10710-024-09492-4](https://doi.org/10.1007%2Fs10710-024-09492-4). [hdl](/source/Hdl_(identifier)):[10362/170138](https://hdl.handle.net/10362%2F170138).

1. **[^](#cite_ref-EVOALG_2-0)** Vikhar, P. A. (2016). "Evolutionary algorithms: A critical review and its future prospects". *2016 International Conference on Global Trends in Signal Processing, Information Computing and Communication (ICGTSPICC)*. IEEE. pp. 261–265. [doi](/source/Doi_(identifier)):[10.1109/ICGTSPICC.2016.7955308](https://doi.org/10.1109%2FICGTSPICC.2016.7955308). [ISBN](/source/ISBN_(identifier)) [978-1-5090-0467-6](https://en.wikipedia.org/wiki/Special:BookSources/978-1-5090-0467-6). [S2CID](/source/S2CID_(identifier)) [22100336](https://api.semanticscholar.org/CorpusID:22100336).

1. ^ [***a***](#cite_ref-VLSI_3-0) [***b***](#cite_ref-VLSI_3-1) [***c***](#cite_ref-VLSI_3-2) Cohoon, J. P.; Karro, J.; Lienig, J. (2003). [*"Evolutionary Algorithms for the Physical Design of VLSI Circuits" in Advances in Evolutionary Computing: Theory and Applications*](https://www.ifte.de/mitarbeiter/lienig/cohoon.pdf) (PDF). London: Springer Verlag. pp. 683–712. [ISBN](/source/ISBN_(identifier)) [978-3-540-43330-9](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-43330-9).

1. ^ [***a***](#cite_ref-:0_4-0) [***b***](#cite_ref-:0_4-1) Slowik, Adam; Kwasnicka, Halina (2020). ["Evolutionary algorithms and their applications to engineering problems"](https://doi.org/10.1007%2Fs00521-020-04832-8). *Neural Computing and Applications*. **32** (16): 12363–12379. [doi](/source/Doi_(identifier)):[10.1007/s00521-020-04832-8](https://doi.org/10.1007%2Fs00521-020-04832-8). [ISSN](/source/ISSN_(identifier)) [0941-0643](https://search.worldcat.org/issn/0941-0643). [S2CID](/source/S2CID_(identifier)) [212732659](https://api.semanticscholar.org/CorpusID:212732659).

1. ^ [***a***](#cite_ref-:1_5-0) [***b***](#cite_ref-:1_5-1) Mika, Marek; Waligóra, Grzegorz; Węglarz, Jan (2011). ["Modelling and solving grid resource allocation problem with network resources for workflow applications"](http://link.springer.com/10.1007/s10951-009-0158-0). *Journal of Scheduling*. **14** (3): 291–306. [doi](/source/Doi_(identifier)):[10.1007/s10951-009-0158-0](https://doi.org/10.1007%2Fs10951-009-0158-0). [ISSN](/source/ISSN_(identifier)) [1094-6136](https://search.worldcat.org/issn/1094-6136). [S2CID](/source/S2CID_(identifier)) [31859338](https://api.semanticscholar.org/CorpusID:31859338).

1. ^ [***a***](#cite_ref-:2_6-0) [***b***](#cite_ref-:2_6-1) ["International Conference on the Applications of Evolutionary Computation"](https://www.evostar.org/). The conference is part of the Evo* series. The conference proceedings are published by Springer. Retrieved 2022-12-23.

1. **[^](#cite_ref-7)** Jansen, Thomas; Weyland, Dennis (7 July 2007). ["Analysis of evolutionary algorithms for the longest common subsequence problem"](https://dl.acm.org/doi/abs/10.1145/1276958.1277148). *Proceedings of the 9th annual conference on Genetic and evolutionary computation*. Association for Computing Machinery. pp. 939–946. [doi](/source/Doi_(identifier)):[10.1145/1276958.1277148](https://doi.org/10.1145%2F1276958.1277148). [ISBN](/source/ISBN_(identifier)) [978-1-59593-697-4](https://en.wikipedia.org/wiki/Special:BookSources/978-1-59593-697-4).

1. **[^](#cite_ref-8)** Jin, Yaochu (2003). ["Evolutionary Algorithms"](https://link.springer.com/chapter/10.1007/978-3-7908-1771-3_2). *Advanced Fuzzy Systems Design and Applications*. Studies in Fuzziness and Soft Computing. Vol. 112. Physica-Verlag HD. pp. 49–71. [doi](/source/Doi_(identifier)):[10.1007/978-3-7908-1771-3_2](https://doi.org/10.1007%2F978-3-7908-1771-3_2). [ISBN](/source/ISBN_(identifier)) [978-3-7908-2520-6](https://en.wikipedia.org/wiki/Special:BookSources/978-3-7908-2520-6).

1. **[^](#cite_ref-9)** Tavares, Jorge; Machado, Penousal; Cardoso, Amílcar; Pereira, Francisco B.; Costa, Ernesto (2004). ["On the Evolution of Evolutionary Algorithms"](https://link.springer.com/chapter/10.1007/978-3-540-24650-3_37). *Genetic Programming*. Lecture Notes in Computer Science. Vol. 3003. Springer. pp. 389–398. [doi](/source/Doi_(identifier)):[10.1007/978-3-540-24650-3_37](https://doi.org/10.1007%2F978-3-540-24650-3_37). [ISBN](/source/ISBN_(identifier)) [978-3-540-21346-8](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-21346-8).

1. **[^](#cite_ref-10)** Nissen, Volker; Krause, Matthias (1994), "Constrained Combinatorial Optimization with an Evolution Strategy", in Reusch, Bernd (ed.), [*Fuzzy Logik*](https://link.springer.com/chapter/10.1007/978-3-642-79386-8_5), Informatik aktuell, Berlin, Heidelberg: Springer, pp. 33–40, [doi](/source/Doi_(identifier)):[10.1007/978-3-642-79386-8_5](https://doi.org/10.1007%2F978-3-642-79386-8_5), [ISBN](/source/ISBN_(identifier)) [978-3-642-79386-8](https://en.wikipedia.org/wiki/Special:BookSources/978-3-642-79386-8)

1. **[^](#cite_ref-11)** Coelho, V. N.; Coelho, I. M.; Souza, M. J. F.; Oliveira, T. A.; Cota, L. P.; Haddad, M. N.; Mladenovic, N.; Silva, R. C. P.; Guimarães, F. G. (2016). "Hybrid Self-Adaptive Evolution Strategies Guided by Neighborhood Structures for Combinatorial Optimization Problems". *Evol Comput*. **24** (4): 637–666. [doi](/source/Doi_(identifier)):[10.1162/EVCO_a_00187](https://doi.org/10.1162%2FEVCO_a_00187). [PMID](/source/PMID_(identifier)) [27258842](https://pubmed.ncbi.nlm.nih.gov/27258842). [S2CID](/source/S2CID_(identifier)) [13582781](https://api.semanticscholar.org/CorpusID:13582781).

1. **[^](#cite_ref-eaoverview_12-0)** Slowik, Adam; Kwasnicka, Halina (1 August 2020). ["Evolutionary algorithms and their applications to engineering problems"](https://doi.org/10.1007%2Fs00521-020-04832-8). *Neural Computing and Applications*. **32** (16): 12363–12379. [doi](/source/Doi_(identifier)):[10.1007/s00521-020-04832-8](https://doi.org/10.1007%2Fs00521-020-04832-8). [ISSN](/source/ISSN_(identifier)) [1433-3058](https://search.worldcat.org/issn/1433-3058).

1. **[^](#cite_ref-13)** Ma, Xiaoliang; Li, Xiaodong; Zhang, Qingfu; Tang, Ke; Liang, Zhengping; Xie, Weixin; Zhu, Zexuan (2019), "A Survey on Cooperative Co-Evolutionary Algorithms.", *IEEE Transactions on Evolutionary Computation*, **23** (3): 421–441, [Bibcode](/source/Bibcode_(identifier)):[2019ITEC...23..421M](https://ui.adsabs.harvard.edu/abs/2019ITEC...23..421M), [doi](/source/Doi_(identifier)):[10.1109/TEVC.2018.2868770](https://doi.org/10.1109%2FTEVC.2018.2868770), [S2CID](/source/S2CID_(identifier)) [125149900](https://api.semanticscholar.org/CorpusID:125149900)

1. **[^](#cite_ref-14)** Popovici, Elena; Bucci, Anthony; Wiegand, R. Paul; De Jong, Edwin D. (2012). ["Coevolutionary Principles"](https://stars.library.ucf.edu/scopus2010/5632). In Rozenberg, Grzegorz; Bäck, Thomas; Kok, Joost N. (eds.). *Handbook of Natural Computing*. Berlin, Heidelberg: Springer Berlin Heidelberg. pp. 987–1033. [doi](/source/Doi_(identifier)):[10.1007/978-3-540-92910-9_31](https://doi.org/10.1007%2F978-3-540-92910-9_31). [ISBN](/source/ISBN_(identifier)) [978-3-540-92910-9](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-92910-9).

1. **[^](#cite_ref-15)** Pugh, Justin K.; Soros, Lisa B.; Stanley, Kenneth O. (2016-07-12). ["Quality Diversity: A New Frontier for Evolutionary Computation"](https://doi.org/10.3389%2Ffrobt.2016.00040). *Frontiers in Robotics and AI*. **3**. [doi](/source/Doi_(identifier)):[10.3389/frobt.2016.00040](https://doi.org/10.3389%2Ffrobt.2016.00040). [ISSN](/source/ISSN_(identifier)) [2296-9144](https://search.worldcat.org/issn/2296-9144).

1. **[^](#cite_ref-16)** Lehman, Joel; Stanley, Kenneth O. (2011-07-12). ["Evolving a diversity of virtual creatures through novelty search and local competition"](https://dx.doi.org/10.1145/2001576.2001606). [*Proceedings of the 13th annual conference on Genetic and evolutionary computation*](https://stars.library.ucf.edu/scopus2010/2703). New York, NY, USA: ACM. pp. 211–218. [doi](/source/Doi_(identifier)):[10.1145/2001576.2001606](https://doi.org/10.1145%2F2001576.2001606). [ISBN](/source/ISBN_(identifier)) [9781450305570](https://en.wikipedia.org/wiki/Special:BookSources/9781450305570). [S2CID](/source/S2CID_(identifier)) [17338175](https://api.semanticscholar.org/CorpusID:17338175).

1. **[^](#cite_ref-17)** Cully, Antoine; Clune, Jeff; Tarapore, Danesh; Mouret, Jean-Baptiste (2015-05-27). ["Robots that can adapt like animals"](https://dx.doi.org/10.1038/nature14422). *Nature*. **521** (7553): 503–507. [arXiv](/source/ArXiv_(identifier)):[1407.3501](https://arxiv.org/abs/1407.3501). [Bibcode](/source/Bibcode_(identifier)):[2015Natur.521..503C](https://ui.adsabs.harvard.edu/abs/2015Natur.521..503C). [doi](/source/Doi_(identifier)):[10.1038/nature14422](https://doi.org/10.1038%2Fnature14422). [ISSN](/source/ISSN_(identifier)) [0028-0836](https://search.worldcat.org/issn/0028-0836). [PMID](/source/PMID_(identifier)) [26017452](https://pubmed.ncbi.nlm.nih.gov/26017452). [S2CID](/source/S2CID_(identifier)) [3467239](https://api.semanticscholar.org/CorpusID:3467239).

1. ^ [***a***](#cite_ref-Davis91_18-0) [***b***](#cite_ref-Davis91_18-1) Davis, Lawrence (1991). *Handbook of genetic algorithms*. New York: Van Nostrand Reinhold. [ISBN](/source/ISBN_(identifier)) [0-442-00173-8](https://en.wikipedia.org/wiki/Special:BookSources/0-442-00173-8). [OCLC](/source/OCLC_(identifier)) [23081440](https://search.worldcat.org/oclc/23081440).

1. **[^](#cite_ref-19)** Lienig, Jens; Brandt, Holger (1994), "An evolutionary algorithm for the routing of multi-chip modules", in Davidor, Yuval; Schwefel, Hans-Paul; Männer, Reinhard (eds.), [*Parallel Problem Solving from Nature — PPSN III*](http://link.springer.com/10.1007/3-540-58484-6_301), vol. 866, Berlin, Heidelberg: Springer, pp. 588–597, [doi](/source/Doi_(identifier)):[10.1007/3-540-58484-6_301](https://doi.org/10.1007%2F3-540-58484-6_301), [ISBN](/source/ISBN_(identifier)) [978-3-540-58484-1](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-58484-1), retrieved 2022-10-18

1. **[^](#cite_ref-20)** Neri, Ferrante; Cotta, Carlos; Moscato, Pablo, eds. (2012). [*Handbook of Memetic Algorithms*](http://link.springer.com/10.1007/978-3-642-23247-3). Studies in Computational Intelligence. Vol. 379. Berlin, Heidelberg: Springer Berlin Heidelberg. [doi](/source/Doi_(identifier)):[10.1007/978-3-642-23247-3](https://doi.org/10.1007%2F978-3-642-23247-3). [ISBN](/source/ISBN_(identifier)) [978-3-642-23246-6](https://en.wikipedia.org/wiki/Special:BookSources/978-3-642-23246-6).

1. **[^](#cite_ref-21)** Leung, Yee; Gao, Yong; Xu, Zong-Ben (1997). "Degree of population diversity - a perspective on premature convergence in genetic algorithms and its Markov chain analysis". *IEEE Transactions on Neural Networks*. **8** (5): 1165–1176. [doi](/source/Doi_(identifier)):[10.1109/72.623217](https://doi.org/10.1109%2F72.623217). [ISSN](/source/ISSN_(identifier)) [1045-9227](https://search.worldcat.org/issn/1045-9227). [PMID](/source/PMID_(identifier)) [18255718](https://pubmed.ncbi.nlm.nih.gov/18255718).

1. **[^](#cite_ref-22)** Gorges-Schleuter, Martina (1998), "A comparative study of global and local selection in evolution strategies", in Eiben, Agoston E.; Bäck, Thomas; Schoenauer, Marc; Schwefel, Hans-Paul (eds.), [*Parallel Problem Solving from Nature — PPSN V*](http://link.springer.com/10.1007/BFb0056879), Lecture Notes in Computer Science, vol. 1498, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 367–377, [doi](/source/Doi_(identifier)):[10.1007/bfb0056879](https://doi.org/10.1007%2Fbfb0056879), [ISBN](/source/ISBN_(identifier)) [978-3-540-65078-2](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-65078-2), retrieved 2022-10-21

1. **[^](#cite_ref-23)** Dorronsoro, Bernabe; Alba, Enrique (2008). [*Cellular Genetic Algorithms*](http://link.springer.com/10.1007/978-0-387-77610-1). Operations Research/Computer Science Interfaces Series. Vol. 42. Boston, MA: Springer US. [doi](/source/Doi_(identifier)):[10.1007/978-0-387-77610-1](https://doi.org/10.1007%2F978-0-387-77610-1). [ISBN](/source/ISBN_(identifier)) [978-0-387-77609-5](https://en.wikipedia.org/wiki/Special:BookSources/978-0-387-77609-5).

1. **[^](#cite_ref-24)** Goldberg, David E. (1990), "The theory of virtual alphabets", in Schwefel, Hans-Paul; Männer, Reinhard (eds.), [*Parallel Problem Solving from Nature*](http://link.springer.com/10.1007/BFb0029726), Lecture Notes in Computer Science, vol. 496, Berlin/Heidelberg: Springer-Verlag (published 1991), pp. 13–22, [doi](/source/Doi_(identifier)):[10.1007/bfb0029726](https://doi.org/10.1007%2Fbfb0029726), [ISBN](/source/ISBN_(identifier)) [978-3-540-54148-6](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-54148-6), retrieved 2022-10-22

1. **[^](#cite_ref-25)** Stender, J.; Hillebrand, E.; Kingdon, J. (1994). *Genetic algorithms in optimisation, simulation, and modelling*. Amsterdam: IOS Press. [ISBN](/source/ISBN_(identifier)) [90-5199-180-0](https://en.wikipedia.org/wiki/Special:BookSources/90-5199-180-0). [OCLC](/source/OCLC_(identifier)) [47216370](https://search.worldcat.org/oclc/47216370).

1. **[^](#cite_ref-26)** Michalewicz, Zbigniew (1996). *Genetic Algorithms + Data Structures = Evolution Programs* (3rd ed.). Berlin Heidelberg: Springer. [ISBN](/source/ISBN_(identifier)) [978-3-662-03315-9](https://en.wikipedia.org/wiki/Special:BookSources/978-3-662-03315-9). [OCLC](/source/OCLC_(identifier)) [851375253](https://search.worldcat.org/oclc/851375253).

1. **[^](#cite_ref-27)** G.S. Hornby and J.B. Pollack. "Creating high-level components with a generative representation for body-brain evolution". *[Artificial Life](/source/Artificial_Life_(journal))*, 8(3):223–246, 2002.

1. **[^](#cite_ref-28)** Jeff Clune, Benjamin Beckmann, Charles Ofria, and Robert Pennock. ["Evolving Coordinated Quadruped Gaits with the HyperNEAT Generative Encoding"](http://www.ofria.com/pubs/2009CluneEtAl.pdf) [Archived](https://web.archive.org/web/20160603205252/http://www.ofria.com/pubs/2009CluneEtAl.pdf) 2016-06-03 at the [Wayback Machine](/source/Wayback_Machine). *Proceedings of the IEEE Congress on Evolutionary Computing Special Section on Evolutionary Robotics*, 2009. Trondheim, Norway.

1. **[^](#cite_ref-29)** J. Clune, C. Ofria, and R. T. Pennock, ["How a generative encoding fares as problem-regularity decreases"](http://jeffclune.com/publications/Clune-HyperNEATandRegularity.pdf), in *PPSN* (G. Rudolph, T. Jansen, S. M. Lucas, C. Poloni, and N. Beume, eds.), vol. 5199 of *Lecture Notes in Computer Science*, pp. 358–367, Springer, 2008.

1. **[^](#cite_ref-30)** Ferreira, C., 2001. ["Gene Expression Programming: A New Adaptive Algorithm for Solving Problems"](http://www.gene-expression-programming.com/webpapers/GEP.pdf). *Complex Systems*, Vol. 13, issue 2: 87–129.

1. **[^](#cite_ref-31)** Schwefel, Hans-Paul (1995). [*Evolution and Optimum Seeking*](https://www.researchgate.net/publication/220690578). Sixth-generation computer technology series. New York: Wiley. p. 109. [ISBN](/source/ISBN_(identifier)) [978-0-471-57148-3](https://en.wikipedia.org/wiki/Special:BookSources/978-0-471-57148-3).

1. **[^](#cite_ref-32)** Fogel, David B.; Bäck, Thomas; Michalewicz, Zbigniew, eds. (2000). [*Evolutionary Computation 1*](https://www.worldcat.org/title/ocm44807816). Bristol ; Philadelphia: Institute of Physics Publishing. pp. xxx and xxxvii (Glossary). [ISBN](/source/ISBN_(identifier)) [978-0-7503-0664-5](https://en.wikipedia.org/wiki/Special:BookSources/978-0-7503-0664-5). [OCLC](/source/OCLC_(identifier)) [44807816](https://search.worldcat.org/oclc/44807816).

1. **[^](#cite_ref-33)** Sanchez, Ernesto; Squillero, Giovanni; Tonda, Alberto (2012). [*Industrial Applications of Evolutionary Algorithms*](http://link.springer.com/10.1007/978-3-642-27467-1). Intelligent Systems Reference Library. Vol. 34. Berlin, Heidelberg: Springer Berlin Heidelberg. [doi](/source/Doi_(identifier)):[10.1007/978-3-642-27467-1](https://doi.org/10.1007%2F978-3-642-27467-1). [ISBN](/source/ISBN_(identifier)) [978-3-642-27466-4](https://en.wikipedia.org/wiki/Special:BookSources/978-3-642-27466-4).

1. **[^](#cite_ref-34)** Miettinen, Kaisa; Neittaanmäki, Pekka; Mäkelä, M. M.; Périaux, Jacques, eds. (1999). [*Evolutionary algorithms in engineering and computer science : recent advances in genetic algorithms, evolution strategies, evolutionary programming, genetic programming, and industrial applications*](https://www.wiley.com/en-us/Evolutionary+Algorithms+in+Engineering+and+Computer+Science%3A+Recent+Advances+in+Genetic+Algorithms%2C+Evolution+Strategies%2C+Evolutionary+Programming%2C+Genetic+Programming+and+Industrial+Applications-p-9780471999027). Chichester: Wiley and Sons. [ISBN](/source/ISBN_(identifier)) [0-585-29445-3](https://en.wikipedia.org/wiki/Special:BookSources/0-585-29445-3). [OCLC](/source/OCLC_(identifier)) [45728460](https://search.worldcat.org/oclc/45728460).

1. **[^](#cite_ref-35)** Gen, Mitsuo; Cheng, Runwei (1999-12-17). [*Genetic Algorithms and Engineering Optimization*](http://doi.wiley.com/10.1002/9780470172261). Wiley Series in Engineering Design and Automation. Hoboken, NJ, USA: John Wiley & Sons, Inc. [doi](/source/Doi_(identifier)):[10.1002/9780470172261](https://doi.org/10.1002%2F9780470172261). [ISBN](/source/ISBN_(identifier)) [978-0-470-17226-1](https://en.wikipedia.org/wiki/Special:BookSources/978-0-470-17226-1).

1. **[^](#cite_ref-36)** Dahal, Keshav P.; Tan, Kay Chen; Cowling, Peter I. (2007). *Evolutionary scheduling*. Berlin: Springer. [doi](/source/Doi_(identifier)):[10.1007/978-3-540-48584-1](https://doi.org/10.1007%2F978-3-540-48584-1). [ISBN](/source/ISBN_(identifier)) [978-3-540-48584-1](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-48584-1). [OCLC](/source/OCLC_(identifier)) [184984689](https://search.worldcat.org/oclc/184984689).

1. **[^](#cite_ref-37)** Jakob, Wilfried; Strack, Sylvia; Quinte, Alexander; Bengel, Günther; Stucky, Karl-Uwe; Süß, Wolfgang (2013-04-22). ["Fast Rescheduling of Multiple Workflows to Constrained Heterogeneous Resources Using Multi-Criteria Memetic Computing"](https://doi.org/10.3390%2Fa6020245). *Algorithms*. **6** (2): 245–277. [doi](/source/Doi_(identifier)):[10.3390/a6020245](https://doi.org/10.3390%2Fa6020245). [ISSN](/source/ISSN_(identifier)) [1999-4893](https://search.worldcat.org/issn/1999-4893).

1. **[^](#cite_ref-38)** Mayer, David G. (2002). [*Evolutionary Algorithms and Agricultural Systems*](http://link.springer.com/10.1007/978-1-4615-1717-7). Boston, MA: Springer US. [doi](/source/Doi_(identifier)):[10.1007/978-1-4615-1717-7](https://doi.org/10.1007%2F978-1-4615-1717-7). [ISBN](/source/ISBN_(identifier)) [978-1-4613-5693-6](https://en.wikipedia.org/wiki/Special:BookSources/978-1-4613-5693-6).

1. **[^](#cite_ref-39)** Blume, Christian (2000), "Optimized Collision Free Robot Move Statement Generation by the Evolutionary Software GLEAM", in Cagnoni, Stefano (ed.), [*Real-World Applications of Evolutionary Computing*](http://link.springer.com/10.1007/3-540-45561-2_32), LNCS 1803, vol. 1803, Berlin, Heidelberg: Springer, pp. 330–341, [doi](/source/Doi_(identifier)):[10.1007/3-540-45561-2_32](https://doi.org/10.1007%2F3-540-45561-2_32), [ISBN](/source/ISBN_(identifier)) [978-3-540-67353-8](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-67353-8), retrieved 2022-12-28

1. **[^](#cite_ref-40)** Aranha, Claus; Iba, Hitoshi (2008), "Application of a Memetic Algorithm to the Portfolio Optimization Problem", in Wobcke, Wayne; Zhang, Mengjie (eds.), [*AI 2008: Advances in Artificial Intelligence*](http://link.springer.com/10.1007/978-3-540-89378-3_52), Lecture Notes in Computer Science, vol. 5360, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 512–521, [doi](/source/Doi_(identifier)):[10.1007/978-3-540-89378-3_52](https://doi.org/10.1007%2F978-3-540-89378-3_52), [ISBN](/source/ISBN_(identifier)) [978-3-540-89377-6](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-89377-6), retrieved 2022-12-23

1. **[^](#cite_ref-41)** Chen, Shu-Heng, ed. (2002). [*Evolutionary Computation in Economics and Finance*](http://link.springer.com/10.1007/978-3-7908-1784-3). Studies in Fuzziness and Soft Computing. Vol. 100. Heidelberg: Physica-Verlag HD. [doi](/source/Doi_(identifier)):[10.1007/978-3-7908-1784-3](https://doi.org/10.1007%2F978-3-7908-1784-3). [ISBN](/source/ISBN_(identifier)) [978-3-7908-2512-1](https://en.wikipedia.org/wiki/Special:BookSources/978-3-7908-2512-1).

1. **[^](#cite_ref-42)** Lohn, J.D.; Linden, D.S.; Hornby, G.S.; Kraus, W.F. (June 2004). "Evolutionary design of an X-band antenna for NASA's Space Technology 5 mission". *IEEE Antennas and Propagation Society Symposium, 2004*. Vol. 3. pp. 2313–2316 Vol.3. [doi](/source/Doi_(identifier)):[10.1109/APS.2004.1331834](https://doi.org/10.1109%2FAPS.2004.1331834). [hdl](/source/Hdl_(identifier)):[2060/20030067398](https://hdl.handle.net/2060%2F20030067398). [ISBN](/source/ISBN_(identifier)) [0-7803-8302-8](https://en.wikipedia.org/wiki/Special:BookSources/0-7803-8302-8).

1. **[^](#cite_ref-43)** Fogel, Gary; Corne, David (2003). [*Evolutionary Computation in Bioinformatics*](https://linkinghub.elsevier.com/retrieve/pii/B9781558607972X50008). Elsevier. [doi](/source/Doi_(identifier)):[10.1016/b978-1-55860-797-2.x5000-8](https://doi.org/10.1016%2Fb978-1-55860-797-2.x5000-8). [ISBN](/source/ISBN_(identifier)) [978-1-55860-797-2](https://en.wikipedia.org/wiki/Special:BookSources/978-1-55860-797-2).

1. ^ [***a***](#cite_ref-:3_44-0) [***b***](#cite_ref-:3_44-1) Jakob, Wilfried (2021), [*Applying Evolutionary Algorithms Successfully - A Guide Gained from Realworld Applications*](https://publikationen.bibliothek.kit.edu/1000135763/121278298), KIT Scientific Working Papers, vol. 170, Karlsruhe, FRG: KIT Scientific Publishing, [arXiv](/source/ArXiv_(identifier)):[2107.11300](https://arxiv.org/abs/2107.11300), [doi](/source/Doi_(identifier)):[10.5445/IR/1000135763](https://doi.org/10.5445%2FIR%2F1000135763), [S2CID](/source/S2CID_(identifier)) [236318422](https://api.semanticscholar.org/CorpusID:236318422), retrieved 2022-12-23

1. **[^](#cite_ref-45)** Whitley, Darrell (2001). ["An overview of evolutionary algorithms: practical issues and common pitfalls"](https://linkinghub.elsevier.com/retrieve/pii/S0950584901001884). *Information and Software Technology*. **43** (14): 817–831. [doi](/source/Doi_(identifier)):[10.1016/S0950-5849(01)00188-4](https://doi.org/10.1016%2FS0950-5849%2801%2900188-4). [S2CID](/source/S2CID_(identifier)) [18637958](https://api.semanticscholar.org/CorpusID:18637958).

1. **[^](#cite_ref-46)** Eiben, A.E.; Smith, J.E. (2015). "Working with Evolutionary Algorithms". [*Introduction to Evolutionary Computing*](http://link.springer.com/10.1007/978-3-662-44874-8). Natural Computing Series (2nd ed.). Berlin, Heidelberg: Springer Berlin Heidelberg. pp. 147–163. [doi](/source/Doi_(identifier)):[10.1007/978-3-662-44874-8](https://doi.org/10.1007%2F978-3-662-44874-8). [ISBN](/source/ISBN_(identifier)) [978-3-662-44873-1](https://en.wikipedia.org/wiki/Special:BookSources/978-3-662-44873-1). [S2CID](/source/S2CID_(identifier)) [20912932](https://api.semanticscholar.org/CorpusID:20912932).

1. **[^](#cite_ref-NIOA_review_47-0)** Singh, Avjeet; Kumar, Anoj (2021). "Applications of nature-inspired meta-heuristic algorithms: a survey". *International Journal of Advanced Intelligence Paradigms*. **20** (3/4) 119026: 388–417. [doi](/source/Doi_(identifier)):[10.1504/IJAIP.2021.119026](https://doi.org/10.1504%2FIJAIP.2021.119026).

1. **[^](#cite_ref-48)** Chen, Xianshun; Ong, Yew-Soon; Lim, Meng-Hiot; Tan, Kay Chen (October 2011). "A Multi-Facet Survey on Memetic Computation". *IEEE Transactions on Evolutionary Computation*. **15** (5): 591–607. [Bibcode](/source/Bibcode_(identifier)):[2011ITEC...15..591C](https://ui.adsabs.harvard.edu/abs/2011ITEC...15..591C). [doi](/source/Doi_(identifier)):[10.1109/TEVC.2011.2132725](https://doi.org/10.1109%2FTEVC.2011.2132725). [ISSN](/source/ISSN_(identifier)) [1089-778X](https://search.worldcat.org/issn/1089-778X).

1. **[^](#cite_ref-49)** Cotta, Carlos; Fernàndez, Antonio J. (2007), "Memetic Algorithms in Planning, Scheduling, and Timetabling", in Dahal, Keshav P.; Tan, Kay Chen; Cowling, Peter I. (eds.), *Evolutionary Scheduling*, vol. 49, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 1–30, [doi](/source/Doi_(identifier)):[10.1007/978-3-540-48584-1_1](https://doi.org/10.1007%2F978-3-540-48584-1_1), [ISBN](/source/ISBN_(identifier)) [978-3-540-48582-7](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-48582-7)

1. **[^](#cite_ref-MemeticAlgorithm_overview_50-0)** Nguyen, Phan Trung Hai; Sudholt, Dirk (October 2020). "Memetic algorithms outperform evolutionary algorithms in multimodal optimisation". *Artificial Intelligence*. **287** 103345. [doi](/source/Doi_(identifier)):[10.1016/j.artint.2020.103345](https://doi.org/10.1016%2Fj.artint.2020.103345).

1. **[^](#cite_ref-:22_51-0)** Gordon, V. Scott; Mathias, Keith; Whitley, Darrell (1994), "Cellular genetic algorithms as function optimizers", [*Proceedings of the 1994 ACM symposium on Applied computing - SAC '94*](http://portal.acm.org/citation.cfm?doid=326619.326732), Phoenix, Arizona, United States: ACM Press, pp. 237–241, [doi](/source/Doi_(identifier)):[10.1145/326619.326732](https://doi.org/10.1145%2F326619.326732), [ISBN](/source/ISBN_(identifier)) [978-0-89791-647-9](https://en.wikipedia.org/wiki/Special:BookSources/978-0-89791-647-9), [S2CID](/source/S2CID_(identifier)) [6418773](https://api.semanticscholar.org/CorpusID:6418773)

1. **[^](#cite_ref-52)** Alba, Enrique; Dorronsoro, Bernabé (2008). *Cellular genetic algorithms*. Operations research/computer science interfaces series. New York: Springer. [ISBN](/source/ISBN_(identifier)) [978-0-387-77610-1](https://en.wikipedia.org/wiki/Special:BookSources/978-0-387-77610-1).

1. **[^](#cite_ref-53)** Alba, Enrique; Dorronsoro, Bernabé; Alfonso, Hugo (2005-12-01). ["Cellular Memetic Algorithms"](https://journal.info.unlp.edu.ar/JCST/article/view/845). *Journal of Computer Science & Technology*. **5** (4): 257–263.

1. **[^](#cite_ref-54)** Dorigo, Marco; Gambardella, Luca Maria (April 1997). "Ant colony system: a cooperative learning approach to the traveling salesman problem". *IEEE Transactions on Evolutionary Computation*. **1** (1): 53–66. [doi](/source/Doi_(identifier)):[10.1109/4235.585892](https://doi.org/10.1109%2F4235.585892).

1. **[^](#cite_ref-55)** Dorigo, Marco (2004). *Ant colony optimization*. Thomas G. Stützle. Cambridge, Mass: MIT Press. [ISBN](/source/ISBN_(identifier)) [978-0-262-04219-2](https://en.wikipedia.org/wiki/Special:BookSources/978-0-262-04219-2).

1. **[^](#cite_ref-56)** Kennedy, J.; Eberhart, R. (1995). "Particle Swarm Optimization". *Proceedings of IEEE International Conference on Neural Networks*. Vol. IV. pp. 1942–1948. [doi](/source/Doi_(identifier)):[10.1109/ICNN.1995.488968](https://doi.org/10.1109%2FICNN.1995.488968).

1. **[^](#cite_ref-57)** Zhang, Yudong; Wang, Shuihua; Ji, Genlin (2015). ["A Comprehensive Survey on Particle Swarm Optimization Algorithm and Its Applications"](https://doi.org/10.1155%2F2015%2F931256). *Mathematical Problems in Engineering*. **2015**: 1–38. [doi](/source/Doi_(identifier)):[10.1155/2015/931256](https://doi.org/10.1155%2F2015%2F931256). [ISSN](/source/ISSN_(identifier)) [1024-123X](https://search.worldcat.org/issn/1024-123X).

1. **[^](#cite_ref-58)** Kjellström, Gregor; Taxén, Lars (1992), "Gaussian Adaptation, an Evolution-Based Efficient Global Optimizer", in Brezinski, Claude; Kulisch, Ulrich (eds.), [*Computational and Applied Mathematics. 1: Algorithms and Theory*](https://www.academia.edu/103511244/Gaussian_Adaptation_an_evolution_based_efficient_global_optimizer), Amsterdam: North-Holland, pp. 267–276, [ISBN](/source/ISBN_(identifier)) [978-0-444-89701-5](https://en.wikipedia.org/wiki/Special:BookSources/978-0-444-89701-5), retrieved 2026-04-03

1. **[^](#cite_ref-59)** Kjellström, Gregor (1991-12-01). ["On the Efficiency of Gaussian Adaptation"](https://dl.acm.org/doi/10.5555/3228374.3228868). *Journal of Optimization Theory and Applications*. **71** (3): 589–597. [ISSN](/source/ISSN_(identifier)) [0022-3239](https://search.worldcat.org/issn/0022-3239).

1. **[^](#cite_ref-60)** Gent, Edd (13 April 2020). ["Artificial intelligence is evolving all by itself"](https://www.science.org/content/article/artificial-intelligence-evolving-all-itself). *Science | AAAS*. [Archived](https://web.archive.org/web/20200416222954/https://www.sciencemag.org/news/2020/04/artificial-intelligence-evolving-all-itself) from the original on 16 April 2020. Retrieved 16 April 2020.

1. **[^](#cite_ref-61)** Simionescu, P.A.; Dozier, G.V.; Wainwright, R.L. (2006). ["A Two-Population Evolutionary Algorithm for Constrained Optimization Problems"](http://faculty.tamucc.edu/psimionescu/PDFs/WCCI2006-Paper7204(1).pdf) (PDF). *2006 IEEE International Conference on Evolutionary Computation*. Proc 2006 IEEE International Conference on Evolutionary Computation. IEEE. pp. 1647–1653. [doi](/source/Doi_(identifier)):[10.1109/CEC.2006.1688506](https://doi.org/10.1109%2FCEC.2006.1688506). [ISBN](/source/ISBN_(identifier)) [0-7803-9487-9](https://en.wikipedia.org/wiki/Special:BookSources/0-7803-9487-9). [S2CID](/source/S2CID_(identifier)) [1717817](https://api.semanticscholar.org/CorpusID:1717817). Retrieved 7 January 2017.

1. **[^](#cite_ref-62)** Simionescu, P.A. (2014). *Computer Aided Graphing and Simulation Tools for AutoCAD Users* (1st ed.). Boca Raton, FL: [CRC Press](/source/CRC_Press). [ISBN](/source/ISBN_(identifier)) [978-1-4822-5290-3](https://en.wikipedia.org/wiki/Special:BookSources/978-1-4822-5290-3).

## Bibliography

- Ashlock, D. (2006), *Evolutionary Computation for Modeling and Optimization*, Springer, New York, [doi:10.1007/0-387-31909-3](https://doi.org/10.1007/0-387-31909-3) [ISBN](/source/ISBN_(identifier)) [0-387-22196-4](https://en.wikipedia.org/wiki/Special:BookSources/0-387-22196-4).

- Bäck, T. (1996), *[Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Programming, Genetic Algorithms](https://books.google.com/books?id=htJHI1UrL7IC)*, Oxford Univ. Press, New York, [ISBN](/source/ISBN_(identifier)) [978-0-19-509971-3](https://en.wikipedia.org/wiki/Special:BookSources/978-0-19-509971-3).

- Bäck, T., Fogel, D., Michalewicz, Z. (1999), *Evolutionary Computation 1: Basic Algorithms and Operators*, CRC Press, Boca Raton, USA, [ISBN](/source/ISBN_(identifier)) [978-0-7503-0664-5](https://en.wikipedia.org/wiki/Special:BookSources/978-0-7503-0664-5).

- Bäck, T., Fogel, D., Michalewicz, Z. (2000), *Evolutionary Computation 2: Advanced Algorithms and Operators*, CRC Press, Boca Raton, USA, [doi:10.1201/9781420034349](https://doi.org/10.1201/9781420034349) [ISBN](/source/ISBN_(identifier)) [978-0-3678-0637-8](https://en.wikipedia.org/wiki/Special:BookSources/978-0-3678-0637-8).

- Banzhaf, W., Nordin, P., Keller, R., Francone, F. (1998), *Genetic Programming - An Introduction*, Morgan Kaufmann, San Francisco, [ISBN](/source/ISBN_(identifier)) [978-1-55860-510-7](https://en.wikipedia.org/wiki/Special:BookSources/978-1-55860-510-7).

- Eiben, A.E., Smith, J.E. (2003), *Introduction to Evolutionary Computing*, Springer, Heidelberg, New York, [doi:10.1007/978-3-662-44874-8](https://doi.org/10.1007/978-3-662-44874-8) [ISBN](/source/ISBN_(identifier)) [978-3-662-44873-1](https://en.wikipedia.org/wiki/Special:BookSources/978-3-662-44873-1).

- Holland, J. H. (1992), *[Adaptation in Natural and Artificial Systems](https://books.google.com/books?id=5EgGaBkwvWcC)*, MIT Press, Cambridge, MA, [ISBN](/source/ISBN_(identifier)) [978-0-262-08213-6](https://en.wikipedia.org/wiki/Special:BookSources/978-0-262-08213-6).

- Michalewicz, Z.; Fogel, D.B. (2004), *How To Solve It: Modern Heuristics*. Springer, Berlin, Heidelberg, [ISBN](/source/ISBN_(identifier)) [978-3-642-06134-9](https://en.wikipedia.org/wiki/Special:BookSources/978-3-642-06134-9), [doi:10.1007/978-3-662-07807-5](https://doi.org/10.1007/978-3-662-07807-5).

- Benko, Attila; Dosa, Gyorgy; Tuza, Zsolt (2010). "Bin Packing/Covering with Delivery, solved with the evolution of algorithms". *2010 IEEE Fifth International Conference on Bio-Inspired Computing: Theories and Applications (BIC-TA)*. pp. 298–302. [doi](/source/Doi_(identifier)):[10.1109/BICTA.2010.5645312](https://doi.org/10.1109%2FBICTA.2010.5645312). [ISBN](/source/ISBN_(identifier)) [978-1-4244-6437-1](https://en.wikipedia.org/wiki/Special:BookSources/978-1-4244-6437-1). [S2CID](/source/S2CID_(identifier)) [16875144](https://api.semanticscholar.org/CorpusID:16875144).

- Price, K., Storn, R.M., Lampinen, J.A., (2005). [*Differential Evolution: A Practical Approach to Global Optimization*](https://books.google.com/books?id=hakXI-dEhTkC), Springer, Berlin, Heidelberg, [ISBN](/source/ISBN_(identifier)) [978-3-642-42416-8](https://en.wikipedia.org/wiki/Special:BookSources/978-3-642-42416-8), [doi:10.1007/3-540-31306-0](https://doi.org/10.1007/3-540-31306-0).

- [Ingo Rechenberg](/source/Ingo_Rechenberg) (1971), *Evolutionsstrategie - Optimierung technischer Systeme nach Prinzipien der biologischen Evolution* (PhD thesis). Reprinted by Fromman-Holzboog (1973). [ISBN](/source/ISBN_(identifier)) [3-7728-1642-8](https://en.wikipedia.org/wiki/Special:BookSources/3-7728-1642-8)

- [Hans-Paul Schwefel](/source/Hans-Paul_Schwefel) (1974), *Numerische Optimierung von Computer-Modellen* (PhD thesis). Reprinted by Birkhäuser (1977).

- [Hans-Paul Schwefel](/source/Hans-Paul_Schwefel) (1995), *[Evolution and Optimum Seeking](https://www.researchgate.net/publication/220690578_Evolution_and_Optimum_Seeking)*. Wiley & Sons, New York. [ISBN](/source/ISBN_(identifier)) [0-471-57148-2](https://en.wikipedia.org/wiki/Special:BookSources/0-471-57148-2)

- Simon, D. (2013), [*Evolutionary Optimization Algorithms*](http://academic.csuohio.edu/simond/EvolutionaryOptimization) [Archived](https://web.archive.org/web/20140310010900/http://academic.csuohio.edu/simond/EvolutionaryOptimization/) 2014-03-10 at the [Wayback Machine](/source/Wayback_Machine), Wiley & Sons, [ISBN](/source/ISBN_(identifier)) [978-0-470-93741-9](https://en.wikipedia.org/wiki/Special:BookSources/978-0-470-93741-9)

- Kruse, Rudolf; Borgelt, Christian; Klawonn, Frank; Moewes, Christian; Steinbrecher, Matthias; Held, Pascal (2013), [*Computational Intelligence: A Methodological Introduction*](https://books.google.com/books?id=yQVGAAAAQBAJ). Springer, London. [ISBN](/source/ISBN_(identifier)) [978-1-4471-5012-1](https://en.wikipedia.org/wiki/Special:BookSources/978-1-4471-5012-1), [doi:10.1007/978-1-4471-5013-8](https://doi.org/10.1007/978-1-4471-5013-8).

- Rahman, Rosshairy Abd.; Kendall, Graham; Ramli, Razamin; Jamari, Zainoddin; Ku-Mahamud, Ku Ruhana (2017). ["Shrimp Feed Formulation via Evolutionary Algorithm with Power Heuristics for Handling Constraints"](https://doi.org/10.1155%2F2017%2F7053710). *Complexity*. **2017**: 1–12. [doi](/source/Doi_(identifier)):[10.1155/2017/7053710](https://doi.org/10.1155%2F2017%2F7053710).

## External links

- [An Overview of the History and Flavors of Evolutionary Algorithms](https://www.staracle.com/general/evolutionaryAlgorithms.php)

v t e Evolutionary computation Main Topics Evolutionary algorithm Evolutionary data mining Evolutionary multimodal optimization Human-based evolutionary computation Interactive evolutionary computation Algorithms Cellular evolutionary algorithm Covariance Matrix Adaptation Evolution Strategy (CMA-ES) Cultural algorithm Differential evolution Evolutionary programming Genetic algorithm Genetic programming Gene expression programming Evolution strategy Natural evolution strategy Neuroevolution Learning classifier system Related techniques Swarm intelligence Ant colony optimization Bees algorithm Cuckoo search Particle swarm optimization Bacterial Colony Optimization Metaheuristic methods Firefly algorithm Harmony search Gaussian adaptation Memetic algorithm Related topics Artificial development Artificial intelligence Artificial life Digital organism Evolutionary robotics Fitness function Fitness landscape Fitness approximation Genetic operators Interactive evolutionary computation No free lunch in search and optimization Machine learning Mating pool Premature convergence Program synthesis Organizations ACM IEEE ACM SIGEVO IEEE CIS Conferences CEC GECCO PPSN EvoStar FOGA Journals Evolutionary Computation (journal) IEEE Trans Evol Comput ACM Trans Evol Learning Optim

---
Adapted from the Wikipedia article [Evolutionary algorithm](https://en.wikipedia.org/wiki/Evolutionary_algorithm) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Evolutionary_algorithm?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
