Class PolynomialMutation
java.lang.Object
org.uma.jmetal.operator.mutation.impl.PolynomialMutation
- All Implemented Interfaces:
Serializable,MutationOperator<DoubleSolution>,Operator<DoubleSolution,DoubleSolution>
This class implements a polynomial mutation operator
The implementation is based on the NSGA-II code available in http://www.iitk.ac.in/kangal/codes.shtml
If the lower and upper bounds of a variable are the same, no mutation is carried out and the bound value is returned.
- Author:
- Antonio J. Nebro, Juan J. Durillo
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionConstructorPolynomialMutation(double mutationProbability, double distributionIndex) ConstructorPolynomialMutation(double mutationProbability, double distributionIndex, RepairDoubleSolution solutionRepair) ConstructorPolynomialMutation(double mutationProbability, double distributionIndex, RepairDoubleSolution solutionRepair, RandomGenerator<Double> randomGenerator) ConstructorPolynomialMutation(double mutationProbability, double distributionIndex, RandomGenerator<Double> randomGenerator) ConstructorPolynomialMutation(DoubleProblem problem, double distributionIndex, RandomGenerator<Double> randomGenerator) Constructor -
Method Summary
Modifier and TypeMethodDescriptionexecute(DoubleSolution solution) Execute() methoddoubledoublevoidsetDistributionIndex(double distributionIndex) voidsetMutationProbability(double probability)
-
Constructor Details
-
PolynomialMutation
public PolynomialMutation()Constructor -
PolynomialMutation
public PolynomialMutation(DoubleProblem problem, double distributionIndex, RandomGenerator<Double> randomGenerator) Constructor -
PolynomialMutation
public PolynomialMutation(double mutationProbability, double distributionIndex) Constructor -
PolynomialMutation
public PolynomialMutation(double mutationProbability, double distributionIndex, RandomGenerator<Double> randomGenerator) Constructor -
PolynomialMutation
public PolynomialMutation(double mutationProbability, double distributionIndex, RepairDoubleSolution solutionRepair) Constructor -
PolynomialMutation
public PolynomialMutation(double mutationProbability, double distributionIndex, RepairDoubleSolution solutionRepair, RandomGenerator<Double> randomGenerator) Constructor
-
-
Method Details
-
mutationProbability
public double mutationProbability()- Specified by:
mutationProbabilityin interfaceMutationOperator<DoubleSolution>
-
getDistributionIndex
public double getDistributionIndex() -
setMutationProbability
public void setMutationProbability(double probability) -
setDistributionIndex
public void setDistributionIndex(double distributionIndex) -
execute
Execute() method- Specified by:
executein interfaceMutationOperator<DoubleSolution>- Specified by:
executein interfaceOperator<DoubleSolution,DoubleSolution> - Parameters:
solution- The data to process- Throws:
JMetalException
-