es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.mutationStrategy
Class RandomDEMutationStrategy
java.lang.Object
es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.mutationStrategy.DEMutationStrategy
es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.mutationStrategy.RandomDEMutationStrategy
public class RandomDEMutationStrategy
- extends DEMutationStrategy
The mutation operator of the Differential Evolution Algorithm use different mutation strategies to
create the individuals of the population. This class implements the random strategy.
Following this strategy a new mutation vector is generated as follows:
vi,g = xr1,g + F⋅(xr2,g - xr3,g)
where r1, r2 and r3 are distinct integers uniformely chosen from from the set {1, 2, …, NP}
and F is the mutation factor which is implemented as a Plugin. In the canonical version F is a constant
double value.
To configure this mutation strategy the xml code should be:
<MutationStrategy>
<Class>es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.mutationStrategy.RandomDEMutationStrategy</Class>
<F>value</F><br>
<diffVector>value</diffVector><br>
<MutationStrategy><p>
where F and diffVector are parameters inherit from the DEMutationStrategy class. If
some of the parameters do not appear in the configuration, they are set to their default values.
Default values:
- F as a constant parameter with value 0.5
- diffVector = 1
- Since:
- 1.0
- Author:
- Grupo Integrado de IngenierĂa (www.gii.udc.es)
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RandomDEMutationStrategy
public RandomDEMutationStrategy()
configure
public void configure(org.apache.commons.configuration.Configuration conf)
- Overrides:
configure
in class DEMutationStrategy
getMutatedIndividual
public Individual getMutatedIndividual(EvolutionaryAlgorithm algorithm,
Individual target)
- Specified by:
getMutatedIndividual
in class DEMutationStrategy