T
- extends DoubleChromosome
public class IntermediateCrossover<T extends DoubleChromosome> extends Crossover<T>
code
.Crossover.Statistics
Modifier and Type | Field and Description |
---|---|
protected double |
ratio
Combination ratio
|
probability
random, statistics
biggerIsBetter, fitness, ga
Constructor and Description |
---|
IntermediateCrossover(double p)
Creates IntermediateCrossover
|
IntermediateCrossover(double p,
double r)
Creates IntermediateCrossover
|
Modifier and Type | Method and Description |
---|---|
protected void |
cross(Individual<T>[] offsprings)
Executes the crossover.
|
double |
getRatio()
Returns ratio
|
boolean |
isRandom()
Says if the ratio is random
|
void |
setRandom()
Sets the ratio random
|
void |
setRatio(double r)
Sets the ratio
|
int |
spread()
Returns the number of individuals involved by this crossover operator
|
getProbability, init, process, setProbability
getStatistics, updateStatistics
dispose, getFitness, isBiggerBetter, isFitnessChanged, setBiggerIsBetter, setBiggerIsBetter, setFitness, setFitness
public IntermediateCrossover(double p)
p
- crossover probabilitypublic IntermediateCrossover(double p, double r)
p
- crossover probabilityr
- ratiopublic final double getRatio()
public void setRatio(double r)
r
- a value between 0 and 1; if r = NaN, the ratio is set randomly at each iterationpublic final boolean isRandom()
public final void setRandom()
public int spread()
Crossover
spread
in class Crossover<T extends DoubleChromosome>
protected void cross(Individual<T>[] offsprings)
Crossover
cross
in class Crossover<T extends DoubleChromosome>
offsprings
- the individuals to be modified.