eoSelectFromWorth< EOT, WorthType > Class Template Reference

selects one element from a population (is an eoSelectOne) but the selection is based on a std::vector of Worth that is different from the fitnesses (e.g. More...

#include <eoSelectFromWorth.h>

Inheritance diagram for eoSelectFromWorth< EOT, WorthType >:

eoSelectOne< EOT, WorthT > eoUF< A1, R > eoFunctorBase eoDetTournamentWorthSelect< EOT, WorthT > eoRouletteWorthSelect< EOT, WorthT > eoStochTournamentWorthSelect< EOT, WorthT > eoFitnessScalingSelect< EOT > eoRankingSelect< EOT > eoSharingSelect< EOT > List of all members.

Public Member Functions

 eoSelectFromWorth (eoPerf2Worth< EOT, WorthType > &_perf2Worth)
virtual void setup (const eoPop< EOT > &pop)
 virtual function to setup some population stats (for instance eoProportional can benefit greatly from this)

Protected Member Functions

void check_sync (unsigned index, const EOT &_eo)

Protected Attributes

eoPerf2Worth< EOT, WorthType > & perf2Worth
std::vector< typename EOT::Fitnessfitness

Detailed Description

template<class EOT, class WorthType = double>
class eoSelectFromWorth< EOT, WorthType >

selects one element from a population (is an eoSelectOne) but the selection is based on a std::vector of Worth that is different from the fitnesses (e.g.

EO fitness is what Koza terms "raw fitness", Worth is what the selection is based upon).

see class eoPerf2Worth: an eoStat that transforms fitnesses into Worthes

Note: Worthes will not always be doubles - see some multi-objective techniques where it is a std::pair of doubles ...

It has to have a < operator it you want to call an existing selector (see selector.h) - but of course you can write the whole thing ...

Definition at line 51 of file eoSelectFromWorth.h.


The documentation for this class was generated from the following file:
Generated on Thu Apr 19 11:02:33 2007 for EO by  doxygen 1.4.7