Class BLXAlphaBetaCrossover

java.lang.Object
org.uma.jmetal.operator.crossover.impl.BLXAlphaBetaCrossover
All Implemented Interfaces:
Serializable, CrossoverOperator<DoubleSolution>, Operator<List<DoubleSolution>,List<DoubleSolution>>

public class BLXAlphaBetaCrossover extends Object implements CrossoverOperator<DoubleSolution>
This class implements the BLX-αβ crossover operator for real-valued solutions. The BLX-αβ crossover creates offspring that are randomly selected from intervals that extend beyond the parent values, controlled by parameters α and β.

Reference: Eshelman, L. J., invalid input: '&' Schaffer, J. D. (1993). Real-coded genetic algorithms and interval-schemata. Foundations of genetic algorithms, 2, 187-202.

Parameter recommendations:

  • α (alpha): Controls the exploration range below the smaller parent value. Typical values are in the range [0.0, 1.0]. A value of 0.0 means no exploration below the smaller parent, while 1.0 allows exploration equal to the distance between parents below the smaller parent.
  • β (beta): Controls the exploration range above the larger parent value. Typical values are in the range [0.0, 1.0]. A value of 0.0 means no exploration above the larger parent, while 1.0 allows exploration equal to the distance between parents above the larger parent.

Note: Both α and β must be non-negative values. Setting both to 0.0 results in a crossover that only generates values strictly between the parent values.

Author:
Antonio J. Nebro
See Also: