public interface Variation extends Configurable
A variation operator is type-safe if it checks variable types at runtime and operates only on those
variables it supports. Unsupported variables must be left unmodified. A type-safe variation operator must ensure
casts are valid and never throw a ClassCastException
. A type-safe variation class should indicate this fact
by stating "This variation operator is type-safe" in the class comments.
Mixed-type encodings are supported by using type-safe variation operators. Variation operators for each type in the encoding are applied sequentially, each operating on only those variables with the correct type.
Modifier and Type | Method and Description |
---|---|
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. |
java.lang.String |
getName()
Returns the name of this variation operator.
|
applyConfiguration, getConfiguration
java.lang.String getName()
int getArity()
evolve
method.evolve
methodSolution[] evolve(Solution[] parents)
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.parents
- the array of parent solutionsjava.lang.IllegalArgumentException
- if an incorrect number of parents was supplied
(parents.length != getArity())
Copyright 2009-2024 David Hadka and other contributors. All rights reserved.
Licensed under the GNU Lesser General Public License.
Return to the MOEA Framework homepage.