Package org.opt4j.operator.mutate
Class AdaptiveMutationRate
- java.lang.Object
-
- org.opt4j.operator.mutate.AdaptiveMutationRate
-
- All Implemented Interfaces:
IndividualStateListener,MutationRate
public class AdaptiveMutationRate extends Object implements MutationRate, IndividualStateListener
Self adaptiveMutationRatethat uses the size of the genotype (size) to estimate a rate. The calculated rate is 1/size.
-
-
Field Summary
Fields Modifier and Type Field Description protected IndividualFactoryindividualFactoryprotected booleanisInitprotected doublerate
-
Constructor Summary
Constructors Constructor Description AdaptiveMutationRate(IndividualFactory individualFactory)Constructs anAdaptiveMutationRate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doubleget()Returns the mutation rate as a double value.voidinidividualStateChanged(Individual individual)Invoked if theIndividualchanges its state.voidinit()Initializes the listeners.voidset(double value)Sets the mutation to a double value.
-
-
-
Field Detail
-
isInit
protected boolean isInit
-
rate
protected double rate
-
individualFactory
protected final IndividualFactory individualFactory
-
-
Constructor Detail
-
AdaptiveMutationRate
@Inject public AdaptiveMutationRate(IndividualFactory individualFactory)
Constructs anAdaptiveMutationRate.- Parameters:
individualFactory- the individual creator
-
-
Method Detail
-
init
@Inject public void init()
Initializes the listeners.
-
get
public double get()
Description copied from interface:MutationRateReturns the mutation rate as a double value.- Specified by:
getin interfaceMutationRate- Returns:
- the mutation rate
-
set
public void set(double value)
Description copied from interface:MutationRateSets the mutation to a double value.- Specified by:
setin interfaceMutationRate- Parameters:
value- the new muation rate
-
inidividualStateChanged
public void inidividualStateChanged(Individual individual)
Description copied from interface:IndividualStateListenerInvoked if theIndividualchanges its state.- Specified by:
inidividualStateChangedin interfaceIndividualStateListener- Parameters:
individual- the individual that changes the state
-
-