Class AdvancedDifferentialEvolutionCrossover
java.lang.Object
org.uma.jmetal.operator.crossover.impl.AdvancedDifferentialEvolutionCrossover
- All Implemented Interfaces:
Serializable,CrossoverOperator<DoubleSolution>,Operator<List<DoubleSolution>,List<DoubleSolution>>
public class AdvancedDifferentialEvolutionCrossover
extends Object
implements CrossoverOperator<DoubleSolution>
An advanced implementation of Differential Evolution crossover operator supporting multiple variants
and parameter adaptation. This implementation is designed to work well with both single and
multi-objective optimization problems.
Supported variants include: - RAND_1_BIN: Classic DE/rand/1/bin - RAND_2_BIN: DE/rand/2/bin - CURRENT_TO_RAND_1: Current-to-rand/1 - CURRENT_TO_PBEST_1: Current-to-pbest/1 (JADE variant) - SHADE: Success-History based Adaptive DE
The operator supports parameter adaptation for CR and F parameters when using adaptive variants.
- Author:
- Antonio J. Nebro
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder class for AdvancedDifferentialEvolutionCrossoverstatic enumEnumeration of supported DE variants -
Method Summary
-
Method Details
-
execute
- Specified by:
executein interfaceOperator<List<DoubleSolution>,List<DoubleSolution>> - Parameters:
solutions- The data to process
-
numberOfRequiredParents
public int numberOfRequiredParents()- Specified by:
numberOfRequiredParentsin interfaceCrossoverOperator<DoubleSolution>
-
numberOfGeneratedChildren
public int numberOfGeneratedChildren()- Specified by:
numberOfGeneratedChildrenin interfaceCrossoverOperator<DoubleSolution>
-
crossoverProbability
public double crossoverProbability()- Specified by:
crossoverProbabilityin interfaceCrossoverOperator<DoubleSolution>
-