Package io.jenetics.ext
Class WeaselMutator<G extends Gene<?,G>,C extends Comparable<? super C>>
- java.lang.Object
 - 
- io.jenetics.AbstractAlterer<G,C>
 - 
- io.jenetics.Mutator<G,C>
 - 
- io.jenetics.ext.WeaselMutator<G,C>
 
 
 
 
- 
- Type Parameters:
 G- the gene typeC- the fitness result type
- All Implemented Interfaces:
 Alterer<G,C>
public class WeaselMutator<G extends Gene<?,G>,C extends Comparable<? super C>> extends Mutator<G,C>
Mutator implementation which is part of the Weasel program algorithm. The Weasel program is an thought experiment by Richard Dawkins to illustrate the functioning of the evolution: random mutation combined with non-random cumulative selection.The mutator mutates the genes of every chromosome of every genotype in the population with the given mutation probability.
Enginesetup for the Weasel program:final Engine<CharacterGene, Integer> engine = Engine.builder(problem) // Set the 'WeaselSelector'. .selector(new WeaselSelector<>()) // Disable survivors selector. .offspringFraction(1) // Set the 'WeaselMutator'. .alterers(new WeaselMutator<>(0.05)) .build();- Since:
 - 3.5
 - Version:
 - 5.0
 - See Also:
 - Weasel program, 
WeaselSelector 
 
- 
- 
Field Summary
- 
Fields inherited from class io.jenetics.AbstractAlterer
_probability 
- 
Fields inherited from interface io.jenetics.Alterer
DEFAULT_ALTER_PROBABILITY 
 - 
 
- 
Constructor Summary
Constructors Constructor Description WeaselMutator()Create a new weasel mutator with the default mutation probability of0.05.WeaselMutator(double probability)Create a new weasel mutator with the given mutation probability. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AltererResult<G,C>alter(Seq<Phenotype<G,C>> population, long generation)protected MutatorResult<Genotype<G>>mutate(Genotype<G> genotype, double p, Random random)StringtoString()- 
Methods inherited from class io.jenetics.AbstractAlterer
probability 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
WeaselMutator
public WeaselMutator(double probability)
Create a new weasel mutator with the given mutation probability.- Parameters:
 probability- the mutation probability- Throws:
 IllegalArgumentException- if theprobabilityis not in the valid range of[0, 1].
 
- 
WeaselMutator
public WeaselMutator()
Create a new weasel mutator with the default mutation probability of0.05. 
 - 
 
 -