template <class GENOME, class NICHEPARS> class NicheRep : public ControlPars

This is the body of the Niche class

Inheritance:


Private Methods

NicheRep(GENOME& Problem, int number_elements, const NICHEPARS& npars, const GENOME::Pars& gpars, ControlPars cpars, int niche_label)
Construction based on a given GENOME

Private

"standard" operations on populations:
void Scale(double selectivity)
Scaling based on some well established method
void Select(SelectionPairs& couple)
Select pairs of individuals for mating
void Breed(const NicheRep& orig, bool ElitistMode)
Do all the genetic operations between pairs of selected individuals: meiosis, crossover, and mutation

Inherited from ControlPars:


Documentation

This is the body of the Niche class. It holds all data and also some of the members which are for "internal" usage.
NicheRep(GENOME& Problem, int number_elements, const NICHEPARS& npars, const GENOME::Pars& gpars, ControlPars cpars, int niche_label)
Construction based on a given GENOME
Parameters:
Problem - an object of the class GENOME, which is itself a template argument. This object holds a functor that implements the objective function, that tells the fitness of individuals.
number_elements - the population of each of the niches
npars - an object containing the parameters that control the operations inside the niche.
gpars - an object containing the parameters that control the genetic operations for the population of this niche.
cp - an optional parameter, where we can specify detailed information for controlling the evolution.
niche_label - an integer value uniquely identifying the niche, to allow us to keep track of the evolution of the niches. It is calculated in Niche.

"standard" operations on populations:

void Scale(double selectivity)
Scaling based on some well established method

void Select(SelectionPairs& couple)
Select pairs of individuals for mating

void Breed(const NicheRep& orig, bool ElitistMode)
Do all the genetic operations between pairs of selected individuals: meiosis, crossover, and mutation. Hence, produce a new generation inside this niche.


This class has no child classes.



this page was generated by


Joao Pedro Pedroso
Oct 21, 1997