4#include "PermutationCrsPMX.h"
5#include "PermutationMutToggle.h"
6#include "PermutationMutIns.h"
7#include "PermutationMutInv.h"
8#include "PermutationCrsPBX.h"
9#include "PermutationCrsOX.h"
10#include "PermutationCrsCOSA.h"
11#include "PermutationCrsCyclic.h"
12#include "PermutationCrsCyclic2.h"
13#include "PermutationCrsOBX.h"
14#include "PermutationCrsULX.h"
15#include "PermutationCrsOX2.h"
16#include "PermutationCrsOPX.h"
17#include "PermutationCrsSPX.h"
18#include "PermutationCrsDPX.h"
19#include "PermutationCrsUPMX.h"
22#include "../Genotype.h"
37class Permutation:
public Genotype {
41 typedef std::vector<int> var;
44 Permutation () {
name_ =
"Permutation";}
49 bool initialize (StateP state);
51 void registerParameters(StateP state);
55 Permutation *newObject =
new Permutation(*
this);
61 std::vector<CrossoverOpP> crx;
80 std::vector<MutationOpP> mut;
93typedef std::shared_ptr<Permutation::Permutation> PermutationP;
std::string name_
genotype's name
Permutation genotype: COSA crossover operator (adapted from HeuristicLab).
Permutation genotype: Cyclic version 2 crossover operator (adapted from HeuristicLab).
Permutation genotype: Cyclic crossover operator (see e.g. http://www.rubicite.com/Tutorials/GeneticAl...
Permutation genotype: DPX crossover operator (see e.g. itc.ktu.lt/itc342/Misev342....
Permutation genotype: Order based crossover operator (see e.g. http://dx.doi.org/10....
Permutation genotype: OPX crossover operator (see e.g. itc.ktu.lt/itc342/Misev342....
Permutation genotype: Order crossover operator variant where algorithm starts from the beginning when...
Permutation genotype: OX crossover operator (see e.g. http://dx.doi.org/10.1016/j....
Permutation genotype: PBX crossover operator (see e.g. http://dx.doi.org/10.1016/j....
Permutation genotype: PMX crossover operator (see e.g. http://dx.doi.org/10.1016/j....
Permutation genotype: SPX crossover operator (see e.g. itc.ktu.lt/itc342/Misev342....
Permutation genotype: Uniform like crossover operator (see e.g. itc.ktu.lt/itc342/Misev342....
Permutation genotype: UMPX crossover operator (see e.g. itc.ktu.lt/itc342/Misev342....
Permutation * copy()
Create an identical copy of the genotype object.
uint size_
permutation vector size
std::vector< CrossoverOpP > getCrossoverOp()
Create and return a vector of crossover operators.
std::vector< MutationOpP > getMutationOp()
Create and return a vector of mutation operators.
Permutation genotype: insert mutation operator (see e.g. http://dx.doi.org/10.1016/j....
Permutation genotype: inversion mutation operator (see e.g. http://dx.doi.org/10.1016/j....
Permutation genotype: toggle mutation operator (see e.g. http://dx.doi.org/10.1016/j....