|evolutionary algorithm - (EA) An algorithm which incorporates aspects of natural
selection or survival of the fittest. An evolutionary
algorithm maintains a population of structures (usually
randomly generated initially), that evolves according to rules
of selection, recombination, mutation and survival, referred
to as genetic operators. A shared "environment" determines
the fitness or performance of each individual in the
population. The fittest individuals are more likely to be
selected for reproduction (retention or duplication), while
recombination and mutation modify those individuals, yielding
potentially superior ones.|
EAs are one kind of evolutionary computation and differ from genetic algorithms. A GA generates each individual from some encoded form known as a "chromosome" and it is these which are combined or mutated to breed new individuals.
EAs are useful for optimisation when other techniques such as gradient descent or direct, analytical discovery are not possible. Combinatoric and real-valued function optimisation in which the optimisation surface or fitness landscape is "rugged", possessing many locally optimal solutions, are well suited for evolutionary algorithms.