Table of contents
General
Classes
- AgeStat
class to get age statistics from a population
- Arg
An Arg repesents an argument that can be passed to a program in the command line
- BinOp Binary genetic operator: subclasses EOOp, and defines
basically the operator() with two operands
- CharCircMutate These are the genetic operators
- CoincidenceTerm Termination object for Genetic MasterMind
Terminates when the number of rules met coincides with the number of rules so far,
or if _maxCounter steps have happened without change
- EO EO: Base class for the whole hierarchy
T is the type it will be instantiated with; this type must have, at
least, a copy ctor, assignment operators,
- EOAgeGA Simple algorithm for evolutionary computation
It is not exactly a Simple GA, as defined by Goldberg,
it is just a simple implementation of a Genetic Algorithm
- EOAlgo Algorithm that performs the evolutionary computation
Might be genetic or not
- EOBase
Base class for chromosomes, it's a very basic class, which does not require
anything but a fitness and an ID
- EOBidim
Bidimensional Chromosomes
- EOBidimEvaluator Evaluator takes a vector of EOs and evaluates its fitness
returning void
- EOBidimMutation Every gen is mutated adding or substracting a percentage
multipliying by a value between 0 a 1
- EOBin
Binary chromosome for EO; this is the classical bitstring chromosome
described by Holland, Goldberg and others
- EOBinFactory Factory method
- EOBitFlip
EOBitFlip: operator for binary chromosomes
Changes one bit in the chromosome every time that is aplied
- EOBreeder Takes those on the selection list and creates a list of new individuals
Destroys the genetic pool
So many instances are necessary to be able to use EOops
EOT is a EO-type class
- EOCrowding Each one of the new population substitutes the most similar of the
old population
- EODup Dup or duplicate: duplicates a gene in a chromosome
- EOEasyGA Simple algorithm for evolutionary computation
It is not exactly a Simple GA, as defined by Goldberg,
it is just a simple implementation of a Genetic Algorithm
- EOElimAll Selects those who are going to reproduce, eliminates those which
are not fit
- EOElimWorst Eliminates the worst of the populaton
- EOES Simple algorithm for evolutionary computation
It is a wrapper for EasyGA, but lets the user only the decisions
of some constants
- EOESChrom Basic chromosome for evolution strategies (ES), as defined by Rechenberg and
Schwefel
- EOESMutate ES-style mutation: each gene in the chromosome is added its own sigma
Obviously, valid only for EOESChrom
- EOEvaluator Evaluator takes a vector of EOs and evaluates its fitness
returning void
- EOFactory EO Factory
- EOFitness Abstract data type for fitness objects.
- EOFitTerm Fitness termination: terminates after a the difference between the
fitness of the best individual and a maximum fitness to achieve is less
than certain number called epsilon
- EOFloatArrayMutateByPercentage Every gen is mutated adding or substracting a percentage
multipliying by a value between 0 a 1
- EOFloatArrayXoverAverage Average crossover for arrays of floats
- EOFloatIntermXOver IntermXOver computes an arithmetic average of the two chromosomes
- EOGeneFactory Creates random EOs under request
- EOGenTerm Generational termination: terminates after a number of generations
- EOIntArrayMutate Mutation for integers: adds one
- EOKill Kill eliminates a gen in a chromosome
- EOLinearFreezer
Implememtation of a linear freezer
- EOLottery
EOLottery: an selection operator, which get the fitness from every
chrommosome (fitness must have a standard typecast to float), and them
creates a new population with fitness-proportionate selection
- EOMutation
EOMutation: operator for binary chromosomes
Mutation change for all bits in the chromosome
- EOOp Abstract data types for EO operators
- EOPop Subpopulation: it is used to move parts of population
from one algorithm to another and one population to another
- EORandom
EORandom: operator for binary chromosomes
random change for all bits in the chromosome
- EORandomBreed Takes those on the selection list and creates a list of new individuals
Destroys the genetic pool
- EORandomBreedLog Exactly as RandomBreed, except that uses factories
- EORandomSelect
EORandomSelect: an selection operator, which selects random chromosomes
- EORank
Takes those on the selection list and creates a list of new individuals
Destroys the genetic pool
- EOReplace Abstract data type for Replacement algorithms, which will be implemented elsewhere
- EOSelector Selects those who are going to reproduce, eliminates those which
are not fit
- EOSGA Simple algorithm for evolutionary computation
It is a wrapper for EasyGA, but lets the user only the decisions
of some constants
- EOSimAnnAlg
Implementation of a Simulated annealing algorithm using EO
- EOSimAnnFreezer
Abstrac implementation of a freezer
- EOStat
class to get statistic from populations
- EOSteadyState Selects those who are going to reproduce, eliminates those which
are not fit
- EOString Adaptor that turns an STL string into an EO
- EOTerm Termination condition for the genetic algorithm
Takes the population as input, returns true for continue,
false for termination
- EOTournament Selects those who are going to reproduce, eliminates those which
are not fit using Tournament selection: a subset of the population
of size tournamentSize is chosen, and the best is selected for the
population
- EOTranspose Transposition operator: interchanges the position of two genes
of an EO
- EOUniformCrossover
EOUniformCrossover: operator for binary chromosomes
implementation of uniform crossover for EO
swaps ranges of bits between the parents
- EOVector Adaptor that turns an STL vector into an EO
with the same gene type as the type with which
the vector has been instantiated
- EOVectorFactory Factory method
- EOView
class EOView: to decode binary chromosomes
- EOXOver2 2-point crossover: takes the genes in the central section of two EOs
and interchanges it
- EvalAll Particular instantiation of the EOEvaluator class
It takes each member in the population, and evaluates it, applying
the evaluation function itīs been initialized with
- FitStat
a simpler class to get fitness statistics from a population
- Flag
A flag is a type of param that gets enabled if appears in the command line or
disabled if it doesn't
- GeneCrossover GeneCrossover
- Grapher This is a decorator for the EOEvaluator class, as defined in the Gamma et
al book
- InverOver Michalewicz's inver-over operator
- LenStat
a simpler class to get length statistics from a population
- MonOp MonOp is the monary operator: genetic operator that takes
only one EO
- NaryOp NaryOp is the N-ary operator: genetic operator that takes
several EOs
- NxOver NxOver: multi point crossover
- Param
A param is a type of argument that must be followed by its associated value
in the command line or takes a default value if doesn't appear in the command
line
- Parser
Parses the command line
- Random
Random Generator Class
- ScanXOver ScanXOver is the N-ary operator: genetic operator that takes
several EOs
- TSPFitness Fitness for travellins salesman problem
- UException
This class manages exceptions
- Uniform
This class generates uniform random values of any type
Uses the static class Random
- urEO
Base class for chromosomes, it's a very basic class, which does not require
anything but a fitness and an ID; and it know how to evaluate fitness itself
Functions, Macros
Enums, Unions, Structs
- Arity
- EOESGene Each gene in an Evolution Strategies is composed of a value plus an standard
deviation, sigma, used for mutation
- EOEvalFunc Evaluate: takes one EO and sets its "fitness" property
returning this fitness also
- EvalRules Evaluation function object: it counts how many mastermind rules have been met
- MinOnes
Evaluation Function to minimize the number of 1's in an EO
- NumOnes Implementation of a function evaluation object
- SortEO sort class for EOBase
- SortEOp for sorting EO Ops
- SortEOpPt For sorting EOOp pointers, can be used later on
hierarchy of classes