In the context of evolutionary computation, in particular genetic algorithms, there are two stochastic operations "mutation" and "crossover". What are the differences between them?
4 Answers
The mutation is an operation that is applied to a single individual in the population. It can e.g. introduce some noise in the chromosome. For example, if the chromosomes are binary, a mutation may simply be the flip of a bit (or gene).
The crossover is an operation which takes as input two individuals (often called the "parents") and somehow combines their chromosomes, so as to produce usually two other chromosomes (the "children"), which inherit, in a certain way, the genes of both parents.
For more details about these operations, you can use the book Genetic Algorithms in Search, Optimization, and Machine Learning by David E. Goldberg (who is an expert in genetic algorithms and was just advised by John H. Holland). You can also take a look at the book Computational Intelligence: An Introduction (2nd edition, 2007) by Andries P. Engelbrecht.
- 42,615
- 12
- 119
- 217
I like to use the term, "recombination operator" rather than "crossover operator", because the latter term suggests a specific type of operation: constructing an offspring by switching corresponding chromosome segments between two parents. "Recombination" (to me) suggests any operation that forms an offspring from the genetic information of two parents. "Crossover" in that sense doesn't work when the individuals are, for example, permutations; but many "recombination operators" that do work are still possible, which preserve non-conflicting portions of two parent permutations.
In GA, mutation can be thought of as a relatively small random change that occurs within an individual. Mutation usually is a change of the value of one gene without making use of gene values in any other individuals, but can also be a random rearrangement of elements in a permutation, or a random change in the values of several genes. Sometimes the term is applied to a "hill climbing" procedure in which several mutations are applied to an individual and their effect on fitness is tested; then the one that produces the most fitness improvement is retained.
- 373
- 1
- 8
Mutation is secondary operator (10%) while Crossover is Primary (90%) which creates offspring while mutation can only shuffle information within the Choromsome
- 373
- 1
- 8
Evolutionary algorithms use it in a very similar way as the two terms are used in biology:
In biology, a mutation is the permanent alteration of the nucleotide sequence of the genome of an organism, virus, or extrachromosomal DNA or other genetic elements.
Source: Wikipedia
Chromosomal crossover [...] is the exchange of genetic material [...] that results in recombinant chromosomes during sexual reproduction.
Source: Wikipedia
Hence the main difference is that mutations happen within one individual while crossover is between two individuals.
- 1,055
- 7
- 17