Expand description
The encoding
module provides basic scheme of encoding
genetic::Genotype
s.
Most important encoding schemes are:
- binary encoding
- value encoding
- permutation encoding
- tree encoding
To express which encoding scheme is used for a specific genetic::Genotype
a set of marker traits are defined:
BinaryEncoded
ValueEncoded
PermutationEncoded
TreeEncoded
These marker traits are important for providing default implementations
for the operator::CrossoverOp
and the operator::MutationOp
. In order
to use any of the default operator implementation the genetic::Genotype
used for a genetic algorithm application must be marked with the
appropriate encoding trait. If an application is defining its own crossover
and mutation operators then using these marker traits is optional.
Traits
Marker trait for declaring a genetic::Genotype
as binary encoded.
Marker trait for declaring a permutation encoded genetic::Genotype
.
Marker trait for declaring a tree encoded genetic::Genotype
.
Marker trait for declaring a genetic::Genotype
as value encoded.