|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.ObjectOperator.Operations.CrossoverOperation
Operator.Operations.SinglePointCrossover
public class SinglePointCrossover
Single point crossover.
| Field Summary | |
|---|---|
protected boolean |
codonsUsedSensitive
|
protected boolean |
fixedCrossoverPoint
|
| Fields inherited from class Operator.Operations.CrossoverOperation |
|---|
probability, rand |
| Constructor Summary | |
|---|---|
SinglePointCrossover(double prob,
RandomNumberGenerator m)
Creates a new instance of SinglePointCrossover |
|
SinglePointCrossover(RandomNumberGenerator m,
double prob)
Creates a new instance of SinglePointCrossover |
|
SinglePointCrossover(RandomNumberGenerator m,
java.util.Properties p)
New instance |
|
| Method Summary | |
|---|---|
void |
doOperation(Individual operands)
Performs the operation on an operand |
void |
doOperation(java.util.List<Individual> operands)
Performes crossover on the 2 first individuals in the incoming list. |
protected int |
getMaxXOPoint(GEIndividual i)
Get xover max point based on used codons. |
protected int |
getXoverPoint(int length1,
int length2)
Get the crossover point within the shortest of the incoming chromosomes |
boolean |
isFixedCrossoverPoint()
Chech is the crossover point is fixed |
static void |
main(java.lang.String[] args)
|
int[] |
makeNewChromosome(GEChromosome c1,
GEChromosome c2,
int p1maxXOPoint,
int p2maxXOPoint)
Creates the new chromsome, with fixed crossver point or not, and returns the crossover points on the individuals. |
int[] |
performCrossover(GEIndividual indiv1,
GEIndividual indiv2,
GEChromosome chrome1,
GEChromosome chrome2,
int chrome1MaxXOPoint,
int chrome2MaxXOPoint)
This method actually performs the crossover and returns an int array with the crossover points. |
void |
setFixedCrossoverPoint(boolean fixedCrossoverPoint)
Set crossover point to be fixed (same on both chromsomes) or not fixed |
void |
setProperties(java.util.Properties p)
Set properties |
| Methods inherited from class Operator.Operations.CrossoverOperation |
|---|
getRNG, setRNG |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected boolean fixedCrossoverPoint
protected boolean codonsUsedSensitive
| Constructor Detail |
|---|
public SinglePointCrossover(RandomNumberGenerator m,
double prob)
m - random number generatorprob - crossover probability
public SinglePointCrossover(double prob,
RandomNumberGenerator m)
m - random number generatorprob - crossover probability
public SinglePointCrossover(RandomNumberGenerator m,
java.util.Properties p)
m - random number generatorp - properties| Method Detail |
|---|
public void setProperties(java.util.Properties p)
setProperties in interface ParameterIsetProperties in class CrossoverOperationp - object containing propertiespublic void doOperation(Individual operands)
Operation
operands - operand to perform operation onpublic void doOperation(java.util.List<Individual> operands)
doOperation in interface OperationdoOperation in class CrossoverOperationoperands - Individuals to crossover
public int[] performCrossover(GEIndividual indiv1,
GEIndividual indiv2,
GEChromosome chrome1,
GEChromosome chrome2,
int chrome1MaxXOPoint,
int chrome2MaxXOPoint)
indiv1 - The first individualindiv2 - The second individualchrome1 - The first individual's chromosomechrome2 - The second individual's chromosomechrome1MaxXOPoint - The first Individual's maximum crossover pointchrome2MaxXOPoint - The second Individual's maximum crossover point
protected int getMaxXOPoint(GEIndividual i)
i - GEIndividual to get find the max XO point
protected int getXoverPoint(int length1,
int length2)
length1 - Chromsome length 1length2 - Chromsome length 2
public int[] makeNewChromosome(GEChromosome c1,
GEChromosome c2,
int p1maxXOPoint,
int p2maxXOPoint)
c1 - Chromsome 1c2 - Chromsome 2p1maxXOPoint - Max crossover point Chromsome 1p2maxXOPoint - Max crossover point Chromsome 2
public boolean isFixedCrossoverPoint()
public void setFixedCrossoverPoint(boolean fixedCrossoverPoint)
fixedCrossoverPoint - crossverpoint fixationpublic static void main(java.lang.String[] args)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||