Package org.opt4j.operator.crossover
Class CrossoverPermutationBucket
java.lang.Object
org.opt4j.operator.crossover.CrossoverPermutationBucket
- All Implemented Interfaces:
Operator<PermutationGenotype<?>>,Crossover<PermutationGenotype<?>>,CrossoverPermutation
Crossover for the PermutationGenotype.
The bucket operator randomly runs through to permutation from the beginning to the end, and fill the current element into the new permutation if not existent.
Given two permutations
1 2 3 4 5 6 7 8 and 8 7 6 5 4 3 2 1
this results, for instance, in
1 8 2 7 3 6 4 5 or 8 7 1 2 3 6 5 4.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCrossoverPermutationBucket(Rand random) Constructs a newCrossoverPermutationBucket. -
Method Summary
Modifier and TypeMethodDescriptioncrossover(PermutationGenotype<?> p1, PermutationGenotype<?> p2) Performs a crossover for twoGenotypeparents.
-
Field Details
-
random
-
-
Constructor Details
-
CrossoverPermutationBucket
Constructs a newCrossoverPermutationBucket.- Parameters:
random- the random number generator
-
-
Method Details
-
crossover
Description copied from interface:CrossoverPerforms a crossover for twoGenotypeparents. The resulting pair ofGenotypeoffspring is returned.- Specified by:
crossoverin interfaceCrossover<PermutationGenotype<?>>- Parameters:
p1- The first parent genotype for the crossoverp2- The second parents genotype for the crossover- Returns:
- The resulting pair of offspring genotypes
-