
Watchmaker Framework for Evolutionary Computation API (Version 0.7.1) 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object org.uncommons.watchmaker.framework.operators.AbstractCrossover<T>
T
 The type of evolved candidates that are operated on by
this crossover implementation.public abstract class AbstractCrossover<T>
Generic base class for crossover implementations. Supports all crossover processes that operate on a pair of parent candidates.
Constructor Summary  

protected 
AbstractCrossover(int crossoverPoints)
Sets up a fixedpoint crossover implementation. 
protected 
AbstractCrossover(int crossoverPoints,
Probability crossoverProbability)
Sets up a crossover implementation that uses a fixed number of crossover points. 
protected 
AbstractCrossover(NumberGenerator<Integer> crossoverPointsVariable)
Sets up a crossover implementation that uses a variable number of crossover points. 
protected 
AbstractCrossover(NumberGenerator<Integer> crossoverPointsVariable,
NumberGenerator<Probability> crossoverProbabilityVariable)
Sets up a crossover implementation that uses a variable number of crossover points. 
Method Summary  

List<T> 
apply(List<T> selectedCandidates,
Random rng)
Applies the crossover operation to the selected candidates. 
protected abstract List<T> 
mate(T parent1,
T parent2,
int numberOfCrossoverPoints,
Random rng)
Perform crossover on a pair of parents to generate a pair of offspring. 
Methods inherited from class java.lang.Object 

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
Constructor Detail 

protected AbstractCrossover(int crossoverPoints)
AbstractCrossover(int, Probability)
constructor.
crossoverPoints
 The constant number of crossover points
to use for all crossover operations.protected AbstractCrossover(int crossoverPoints, Probability crossoverProbability)
crossoverProbability
parameter.
crossoverPoints
 The constant number of crossover points
to use for all crossover operations.crossoverProbability
 The probability that, once selected,
a pair of parents will be subjected to crossover rather than
being copied, unchanged, into the output population. Must be in the range
0 < crossoverProbability <= 1protected AbstractCrossover(NumberGenerator<Integer> crossoverPointsVariable)
AbstractCrossover(NumberGenerator, NumberGenerator)
constructor.
crossoverPointsVariable
 A random variable that provides a number
of crossover points for each crossover operation.protected AbstractCrossover(NumberGenerator<Integer> crossoverPointsVariable, NumberGenerator<Probability> crossoverProbabilityVariable)
crossoverProbabilityVariable
parameter.
crossoverPointsVariable
 A variable that provides a (possibly constant,
possibly random) number of crossover points for each crossover operation.crossoverProbabilityVariable
 A variable that controls the probability
that, once selected, a pair of parents will be subjected to crossover rather
than being copied, unchanged, into the output population.Method Detail 

public List<T> apply(List<T> selectedCandidates, Random rng)
apply
in interface EvolutionaryOperator<T>
selectedCandidates
 The evolved individuals that have survived to
be eligible to reproduce.rng
 A source of randomness used to determine the location of
crossover points.
protected abstract List<T> mate(T parent1, T parent2, int numberOfCrossoverPoints, Random rng)
parent1
 One of two individuals that provides the source material
for generating offspring.parent2
 One of two individuals that provides the source material
for generating offspring.numberOfCrossoverPoints
 The number of crossovers performed on the
two parents.rng
 A source of randomness used to determine the location of
crossover points.

Watchmaker Framework for Evolutionary Computation API (Version 0.7.1) 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 