es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover
Class SBXCrossOver
java.lang.Object
es.udc.gii.common.eaf.algorithm.operator.reproduction.ReproductionOperator
es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.CrossOverOperator
es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.SBXCrossOver
- All Implemented Interfaces:
- Operator, Configurable
public class SBXCrossOver
- extends CrossOverOperator
This class implements a SBX crossover (Simulated Binary Crossover). It is based on the search features
of the single-point crossover used in the binary-coded genetic algorithm. In this operator, the common
interval schemata of the parents are preserved in the offspring. This operator tends to generate
offspring near the parents. So, the extent of the children is proportional to the extent of the parents.
This is the xml code to configure this operator
<Operator>
<Class>es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.SBXCrossOver</Class>
<Probability>value</Probability>+
<CrossOverIndex>value</CrossOverIndex>
</Operator>
Where the tag Class is mandatory and indicates the this class is goint to be used. The other
two tags are optional. The tag Probability represents the probability of two individuals of
being crossover and the tag CrossOverIndex represents the crossover index of the two individuals.
If some of these parameters do not appear in the configuration, their default value is used.
Default values:
- Probability is set to 60.0
- CrossOverIndex is set to 1
More information about this operator can be found in:
K. Deb and R. B. Agrawal. Simulated binary crossover for continuous search space. Complex Systems, 9115-148, 1995.
- 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, wait, wait, wait |
EPS
private static double EPS
crossOverIndex
private int crossOverIndex
numberCrossOvers
private int numberCrossOvers
SBXCrossOver
public SBXCrossOver()
- Creates a new instance of MOPCrossOver
SBXCrossOver
public SBXCrossOver(int probability)
configure
public void configure(org.apache.commons.configuration.Configuration conf)
- Description copied from interface:
Configurable
- Configures the specific element that implements this method.
- Specified by:
configure
in interface Configurable
- Overrides:
configure
in class CrossOverOperator
- Parameters:
conf
- a Configuration object.- See Also:
Configuration
crossOver
protected java.util.List<Individual> crossOver(EvolutionaryAlgorithm ea,
java.util.List<Individual> individuals)
- Specified by:
crossOver
in class CrossOverOperator
increaseCrossOvers
private void increaseCrossOvers()
toString
public java.lang.String toString()
- Overrides:
toString
in class CrossOverOperator