Evolutionary programming


Evolutionary programming is an evolutionary algorithm, where a share of new population is created by mutation of previous population without crossover. Evolutionary programming differs from evolution strategy ES in one detail. All individuals are selected for the new population, while in ES, every individual has the same probability to be selected. It is one of the four major evolutionary algorithm paradigms.

History

It was first used by Lawrence J. Fogel in the US in 1960 in order to use simulated evolution as a learning process aiming to generate artificial intelligence. It was used to evolve finite-state machines as predictors.
YearDescriptionReference
1966EP introduced by Fogel et al.
1992Improved fast EP - Cauchy mutation is used instead of Gaussian mutation
2002Generalized EP - usage of Lévy-type mutation
2012Diversity-guided EP - Mutation step size is guided by diversity
2013Adaptive EP - The number of successful mutations determines the strategy parameter
2014Social EP - Social cognitive model is applied meaning replacing individuals with cognitive agents
2015Immunised EP - Artificial immune system inspired mutation and selection
2016Mixed mutation strategy EP - Gaussian, Cauchy and Lévy mutations are used
2017Fast Convergence EP - An algorithm, which boosts convergence speed and solution quality
2017Immune log-normal EP - log-normal mutation combined with artificial immune system
2018ADM-EP - automatically designed mutation operators