Evolutionary Tools¶
Operators¶
The operator set does the minimum job for transforming or selecting
individuals. This means, for example, that providing two individuals to the
crossover will transform those individuals in-place. The responsibility of
making offspring(s) independent of their parent(s) and invalidating the
fitness is left to the user and is generally fulfilled in the algorithms by
calling toolbox.clone()
on an individual to duplicate it and
del
on the values
attribute of the individual’s fitness to
invalidate it.
Here is a list of the implemented operators in DEAP,
Initialization | Crossover | Mutation | Selection | Migration |
---|---|---|---|---|
initRepeat() |
cxOnePoint() |
mutGaussian() |
selTournament() |
migRing() |
initIterate() |
cxTwoPoint() |
mutShuffleIndexes() |
selRoulette() |
|
initCycle() |
cxUniform() |
mutFlipBit() |
selNSGA2() |
|
cxPartialyMatched() |
mutPolynomialBounded() |
selSPEA2() |
||
cxUniformPartialyMatched() |
mutUniformInt() |
selRandom() |
||
cxOrdered() |
mutESLogNormal() |
selBest() |
||
cxBlend() |
selWorst() |
|||
cxESBlend() |
selTournamentDCD() |
|||
cxESTwoPoint() |
selDoubleTournament() |
|||
cxSimulatedBinary() |
selStochasticUniversalSampling() |
|||
cxSimulatedBinaryBounded() |
||||
cxMessyOnePoint() |
and genetic programming specific operators.
Initialization | Crossover | Mutation | Bloat control |
---|---|---|---|
genFull() |
cxOnePoint() |
mutShrink() |
staticLimit() |
genGrow() |
cxOnePointLeafBiased() |
mutUniform() |
selDoubleTournament() |
genHalfAndHalf() |
mutNodeReplacement() |
||
mutEphemeral() |
|||
mutInsert() |