Genetic variation is a necessity for the process of
evolution. Genetic operators used in evolutionary algorithms are analogous to those in the natural world:
survival of the fittest, or
selection; reproduction (
crossover, also called recombination); and
mutation.
Selection Selection operators give preference to better candidate solutions (chromosomes), allowing them to pass on their 'genes' to the next generation (
iteration) of the algorithm. The best solutions are determined using some form of
objective function (also known as a '
fitness function' in evolutionary algorithms), before being passed to the crossover operator. Different methods for choosing the best solutions exist, for example,
fitness proportionate selection and
tournament selection. A further or the same selection operator is used to determine the individuals for being selected to form the next parental generation. The selection operator may also ensure that the best solution(s) from the current generation always become(s) a member of the next generation without being altered; this is known as
elitism or
elitist selection.
Crossover Crossover is the process of taking more than one parent solutions (chromosomes) and producing a child solution from them. By recombining portions of good solutions, the evolutionary algorithm is more likely to create a better solution.
Mutation The mutation operator encourages genetic diversity amongst solutions and attempts to prevent the evolutionary algorithm converging to a
local minimum by stopping the solutions becoming too close to one another. In mutating the current pool of solutions, a given solution may change between slightly and entirely from the previous solution. By mutating the solutions, an evolutionary algorithm can reach an improved solution solely through the mutation operator. ==Combining operators==