Class UM
java.lang.Object
org.moeaframework.core.operator.TypeSafeMutation<RealVariable>
org.moeaframework.core.operator.real.UM
- All Implemented Interfaces:
Configurable
,Mutation
,Variation
Uniform mutation (UM) operator. Each decision variable is mutated by selecting a new value within its bounds
uniformly at random. The figure below depicts the offspring distribution.
It is recommended each decision variable is mutated with a probability of 1 / L
, where L
is the
number of decision variables. This results in one mutation per offspring on average.
This operator is type-safe.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetName()
Returns the name of this variation operator.void
mutate
(RealVariable variable) Mutates the specified variable using uniform mutation.Methods inherited from class org.moeaframework.core.operator.TypeSafeMutation
getProbability, mutate, setProbability
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.moeaframework.core.configuration.Configurable
applyConfiguration, getConfiguration
-
Constructor Details
-
UM
public UM()Constructs a uniform mutation operator with default settings. -
UM
public UM(double probability) Constructs a uniform mutation operator.- Parameters:
probability
- the probability of mutating each variable in a solution
-
-
Method Details
-
getName
Description copied from interface:Variation
Returns the name of this variation operator. This name should also be used as the prefix for any parameters. As such, the name should only contain alphanumeric characters, avoid using whitespace and other symbols.- Returns:
- the name of this variation operator
-
mutate
Mutates the specified variable using uniform mutation.- Specified by:
mutate
in classTypeSafeMutation<RealVariable>
- Parameters:
variable
- the variable to be mutated
-