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.AdaptiveMutationRate
The
AdaptiveMutationRate
always 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 the AdaptiveMutationRate
.
A mutation intensity larger than 1 leads to more mutation than in the AdaptiveMutationRate
.-
Field Summary
Fields inherited from class org.opt4j.operator.mutate.AdaptiveMutationRate
individualFactory, isInit, rate
-
Constructor Summary
ConstructorDescriptionConfigurableAdaptiveMutationRate
(org.opt4j.core.IndividualFactory individualFactory, double intensity) -
Method Summary
Modifier and TypeMethodDescriptiondouble
void
inidividualStateChanged
(org.opt4j.core.Individual individual) void
setMutationIntensity
(double mutationIntensity) Methods inherited from class org.opt4j.operator.mutate.AdaptiveMutationRate
get, init, set
-
Constructor Details
-
ConfigurableAdaptiveMutationRate
public ConfigurableAdaptiveMutationRate(org.opt4j.core.IndividualFactory individualFactory, double intensity)
-
-
Method Details
-
inidividualStateChanged
public void inidividualStateChanged(org.opt4j.core.Individual individual) - Specified by:
inidividualStateChanged
in interfaceorg.opt4j.core.IndividualStateListener
- Overrides:
inidividualStateChanged
in classorg.opt4j.operator.mutate.AdaptiveMutationRate
-
setMutationIntensity
public void setMutationIntensity(double mutationIntensity) -
getMutationIntensity
public double getMutationIntensity()
-