Crossover

class jmetal.operator.crossover.CXCrossover(probability: float)[source]

Bases: Crossover[PermutationSolution, PermutationSolution]

execute(parents: List[PermutationSolution]) List[PermutationSolution][source]
get_name()[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.CompositeCrossover(crossover_operator_list: [<class 'jmetal.core.operator.Crossover'>])[source]

Bases: Crossover[CompositeSolution, CompositeSolution]

execute(solutions: List[CompositeSolution]) List[CompositeSolution][source]
get_name() str[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.DifferentialEvolutionCrossover(CR: float, F: float, K: float = 0.5)[source]

Bases: Crossover[FloatSolution, FloatSolution]

This operator receives two parameters: the current individual and an array of three parent individuals. The best and rand variants depends on the third parent, according whether it represents the current of the “best” individual or a random_search one. The implementation of both variants are the same, due to that the parent selection is external to the crossover operator.

execute(parents: List[FloatSolution]) List[FloatSolution][source]

Execute the differential evolution crossover (‘best/1/bin’ variant in jMetal).

get_name() str[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.IntegerSBXCrossover(probability: float, distribution_index: float = 20.0)[source]

Bases: Crossover[IntegerSolution, IntegerSolution]

execute(parents: List[IntegerSolution]) List[IntegerSolution][source]
get_name() str[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.NullCrossover[source]

Bases: Crossover[Solution, Solution]

execute(parents: List[Solution]) List[Solution][source]
get_name()[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.PMXCrossover(probability: float)[source]

Bases: Crossover[PermutationSolution, PermutationSolution]

execute(parents: List[PermutationSolution]) List[PermutationSolution][source]
get_name()[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.SBXCrossover(probability: float, distribution_index: float = 20.0)[source]

Bases: Crossover[FloatSolution, FloatSolution]

execute(parents: List[FloatSolution]) List[FloatSolution][source]
get_name() str[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]
class jmetal.operator.crossover.SPXCrossover(probability: float)[source]

Bases: Crossover[BinarySolution, BinarySolution]

execute(parents: List[BinarySolution]) List[BinarySolution][source]
get_name() str[source]
get_number_of_children() int[source]
get_number_of_parents() int[source]