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.
  • 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 interface org.opt4j.core.IndividualStateListener
      Overrides:
      inidividualStateChanged in class org.opt4j.operator.mutate.AdaptiveMutationRate
    • setMutationIntensity

      public void setMutationIntensity(double mutationIntensity)
    • getMutationIntensity

      public double getMutationIntensity()