The objective of the Evolutionary Programming algorithm is to maximize the suitability of a collection of candidate solutions in the context of an objective function from the domain. This objective is pursued by using an adaptive model with surrogates for the processes of evolution, specically hereditary (reproduction with variation) under competition. The representation used for candidate solutions is directly assessable by a cost or objective function from the domain.
The representation for candidate solutions should be domain specific, such as real numbers for continuous function optimization. The sample size (bout size) for tournament selection during competition is commonly between 5% and 10% of the population size. Evolutionary Programming traditionally only uses the mutation operator to create new candidate solutions from existing candidate solutions. The crossover operator that is used in some other Evolutionary Algorithms is not employed in Evolutionary Programming. Evolutionary Programming is concerned with the linkage between parent and child candidate solutions and is not concerned with surrogates for genetic mechanisms.
Continuous function optimization is a popular application for the approach, where real-valued representations are used with a Gaussian-based mutation operator. The mutation-specific parameters used in the application of the algorithm to continuous function optimization can be adapted in concert with the candidate solutions.