Class ConfigurableAdaptiveMutationRate
- java.lang.Object
-
- org.opt4j.operator.mutate.AdaptiveMutationRate
-
- de.uka.ipd.sdq.dsexplore.opt4j.representation.ConfigurableAdaptiveMutationRate
-
- All Implemented Interfaces:
org.opt4j.core.IndividualStateListener,org.opt4j.operator.mutate.MutationRate
public class ConfigurableAdaptiveMutationRate extends org.opt4j.operator.mutate.AdaptiveMutationRateTheAdaptiveMutationRatealways uses a mutation rate of 1 / (genome length). In this class, the ratio can be configured by a factor mutationIntensity, so that the final mutation rate is min(1, 1 / (genome length) * mutationIntensity). The higher the mutation intensity, the closer the mutation rate comes to 1. If the mutation intensity is larger than the genome length, then the mutation rate is capped to 1. A mutation intensity smaller than 1 leads to less mutation that in theAdaptiveMutationRate. A mutation intensity larger than 1 leads to more mutation than in theAdaptiveMutationRate.
-
-
Constructor Summary
Constructors Constructor Description ConfigurableAdaptiveMutationRate(org.opt4j.core.IndividualFactory individualFactory, double intensity)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetMutationIntensity()voidinidividualStateChanged(org.opt4j.core.Individual individual)voidsetMutationIntensity(double mutationIntensity)
-
-
-
Method Detail
-
inidividualStateChanged
public void inidividualStateChanged(org.opt4j.core.Individual individual)
- Specified by:
inidividualStateChangedin interfaceorg.opt4j.core.IndividualStateListener- Overrides:
inidividualStateChangedin classorg.opt4j.operator.mutate.AdaptiveMutationRate
-
setMutationIntensity
public void setMutationIntensity(double mutationIntensity)
-
getMutationIntensity
public double getMutationIntensity()
-
-