MOEA Framework 2.12
API Specification

org.moeaframework.core.operator.real
Class UM

java.lang.Object
  extended by org.moeaframework.core.operator.real.UM
All Implemented Interfaces:
Variation

public class UM
extends Object
implements 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.

Example UM operator 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
UM(double probability)
          Constructs a uniform mutation operator.
 
Method Summary
static void evolve(RealVariable variable)
          Mutates the specified variable using uniform mutation.
 Solution[] evolve(Solution[] parents)
          Evolves one or more parent solutions (specified by getArity) and produces one or more child solutions.
 int getArity()
          Returns the number of solutions that must be supplied to the evolve method.
 double getProbability()
          Returns the probability of mutating each variable in a solution.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UM

public UM(double probability)
Constructs a uniform mutation operator.

Parameters:
probability - the probability of mutating each variable in a solution
Method Detail

getProbability

public double getProbability()
Returns the probability of mutating each variable in a solution.

Returns:
the probability of mutating each variable in a solution

evolve

public Solution[] evolve(Solution[] parents)
Description copied from interface: Variation
Evolves one or more parent solutions (specified by getArity) and produces one or more child solutions. By contract, the parents must not be modified. The copy constructor should be used to create copies of the parents with these copies subsequently modified.

Specified by:
evolve in interface Variation
Parameters:
parents - the array of parent solutions
Returns:
an array of child solutions

evolve

public static void evolve(RealVariable variable)
Mutates the specified variable using uniform mutation.

Parameters:
variable - the variable to be mutated

getArity

public int getArity()
Description copied from interface: Variation
Returns the number of solutions that must be supplied to the evolve method.

Specified by:
getArity in interface Variation
Returns:
the number of solutions that must be supplied to the evolve method

MOEA Framework 2.12
API Specification

Copyright 2009-2016 MOEA Framework. All rights reserved.
Licensed under the GNU Lesser General Public License.
Return to the MOEA Framework homepage. Visit us on Github!