The 'genetic' module defines types for the genetic algorithm. The traits
defined in this module should be implemented to formulate an optimization
or search problem. The types are named after terms as they are found in
genetic biology.
AsScalar | In order to be able to use operator::GeneticOperator s designed for
single-objective optimization to be used for multi-objective Fitness
values the struct implementing the Fitness trait must also implement
this AsScalar trait.
|
Fitness | A Fitness value is used to determine the quality of a Genotype .
Fitness values should have an ordering, also called ranking.
|
FitnessFunction | Defines the evaluation function to calculate the Fitness value of a
Genotype based on its properties.
|
Genotype | A Genotype defines those properties of a Phenotype that are relevant
for the genetic algorithm. Respectively they are used to determine the
Fitness value of the solution candidate. These properties are also called
chromosomes.
|
Phenotype | A Phenotype is a candidate solution of the optimization or search problem.
Phenotypes are also called individuals or creatures. A Phenotype is the
type of data for which the optimal value for solving an optimization or
search problem should be found.
|
Children | The Children type defines a set of Genotype s which is the outcome of
the operator::CrossoverOp function.
|
Locus | The Locus is a position within a Genotype .
|
Offspring | The Offspring type defines the set of Children of type Genotype
which represents the all children of all Parents of one generation.
|
Parents | The Parents type defines a tuple of individuals that are needed for
breeding one offspring. The operator::SelectionOp selects a list of
parents which are taken by the operator::CrossoverOp for breeding
the offspring.
|
ParentsSlice | |