|
||||||||||
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 probabilitypublic SinglePointCrossover(double prob, RandomNumberGenerator m)
m
- random number generatorprob
- crossover probabilitypublic SinglePointCrossover(RandomNumberGenerator m, java.util.Properties p)
m
- random number generatorp
- propertiesMethod Detail |
---|
public void setProperties(java.util.Properties p)
setProperties
in interface ParameterI
setProperties
in class CrossoverOperation
p
- object containing propertiespublic void doOperation(Individual operands)
Operation
operands
- operand to perform operation onpublic void doOperation(java.util.List<Individual> operands)
doOperation
in interface Operation
doOperation
in class CrossoverOperation
operands
- Individuals to crossoverpublic 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 |