
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<String> org.uncommons.watchmaker.framework.operators.StringCrossover
public class StringCrossover
Variablepoint (fixed or random) crossover for String candidates. This implementation assumes that all candidate Strings are the same length. If they are not, an exception will be thrown at runtime.
Constructor Summary  

StringCrossover()
Default is singlepoint crossover, applied to all parents. 

StringCrossover(int crossoverPoints)
Crossover with a fixed number of crossover points. 

StringCrossover(int crossoverPoints,
Probability crossoverProbability)
Crossover with a fixed number of crossover points. 

StringCrossover(NumberGenerator<Integer> crossoverPointsVariable)
Crossover with a variable number of crossover points. 

StringCrossover(NumberGenerator<Integer> crossoverPointsVariable,
NumberGenerator<Probability> crossoverProbabilityVariable)
Sets up a crossover implementation that uses a variable number of crossover points. 
Method Summary  

protected List<String> 
mate(String parent1,
String parent2,
int numberOfCrossoverPoints,
Random rng)
Perform crossover on a pair of parents to generate a pair of offspring. 
Methods inherited from class org.uncommons.watchmaker.framework.operators.AbstractCrossover 

apply 
Methods inherited from class java.lang.Object 

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

public StringCrossover()
public StringCrossover(int crossoverPoints)
crossoverPoints
 The constant number of crossover points
to use for all crossover operations.public StringCrossover(int crossoverPoints, Probability crossoverProbability)
crossoverProbability
.
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.public StringCrossover(NumberGenerator<Integer> crossoverPointsVariable)
crossoverPointsVariable
 A random variable that provides a number
of crossover points for each crossover operation.public StringCrossover(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 

protected List<String> mate(String parent1, String parent2, int numberOfCrossoverPoints, Random rng)
mate
in class AbstractCrossover<String>
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 