public class SBXCrossover extends Object implements CrossoverOperator<DoubleSolution>
RepairDoubleSolution object is used to decide the strategy to apply when a value is out
of range.
The implementation is based on the NSGA-II code available in
http://www.iitk.ac.in/kangal/codes.shtml| Constructor and Description |
|---|
SBXCrossover(double crossoverProbability,
double distributionIndex)
Constructor
|
SBXCrossover(double crossoverProbability,
double distributionIndex,
RandomGenerator<Double> randomGenerator)
Constructor
|
SBXCrossover(double crossoverProbability,
double distributionIndex,
RepairDoubleSolution solutionRepair)
Constructor
|
SBXCrossover(double crossoverProbability,
double distributionIndex,
RepairDoubleSolution solutionRepair,
RandomGenerator<Double> randomGenerator)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
List<DoubleSolution> |
doCrossover(double probability,
DoubleSolution parent1,
DoubleSolution parent2)
doCrossover method
|
List<DoubleSolution> |
execute(List<DoubleSolution> solutions)
Execute() method
|
double |
getCrossoverProbability() |
double |
getDistributionIndex() |
int |
getNumberOfParents()
Two parents are required to apply this operator.
|
void |
setCrossoverProbability(double probability) |
void |
setDistributionIndex(double distributionIndex) |
public SBXCrossover(double crossoverProbability,
double distributionIndex)
public SBXCrossover(double crossoverProbability,
double distributionIndex,
RandomGenerator<Double> randomGenerator)
public SBXCrossover(double crossoverProbability,
double distributionIndex,
RepairDoubleSolution solutionRepair)
public SBXCrossover(double crossoverProbability,
double distributionIndex,
RepairDoubleSolution solutionRepair,
RandomGenerator<Double> randomGenerator)
public double getCrossoverProbability()
public double getDistributionIndex()
public void setCrossoverProbability(double probability)
public void setDistributionIndex(double distributionIndex)
public List<DoubleSolution> execute(List<DoubleSolution> solutions)
execute in interface Operator<List<DoubleSolution>,List<DoubleSolution>>solutions - The data to processpublic List<DoubleSolution> doCrossover(double probability, DoubleSolution parent1, DoubleSolution parent2)
public int getNumberOfParents()
getNumberOfParents in interface CrossoverOperator<DoubleSolution>Copyright © 2017. All rights reserved.