eoEasyEA< EOT > Class Template Reference

An easy-to-use evolutionary algorithm; you can use any chromosome, and any selection transformation, merging and evaluation algorithms; you can even change in runtime parameters of those sub-algorithms. More...

#include <eoEasyEA.h>

Inheritance diagram for eoEasyEA< EOT >:

eoAlgo< EOT > eoUF< A1, R > eoFunctorBase

List of all members.

Public Member Functions

 eoEasyEA (eoContinue< EOT > &_continuator, eoEvalFunc< EOT > &_eval, eoBreed< EOT > &_breed, eoReplacement< EOT > &_replace)
 Ctor taking a breed and merge.
 eoEasyEA (eoContinue< EOT > &_continuator, eoPopEvalFunc< EOT > &_eval, eoBreed< EOT > &_breed, eoReplacement< EOT > &_replace)
 NEW Ctor taking a breed and merge and an eoPopEval.
 eoEasyEA (eoContinue< EOT > &_continuator, eoPopEvalFunc< EOT > &_eval, eoSelect< EOT > &_select, eoTransform< EOT > &_transform, eoReplacement< EOT > &_replace)
 Ctor eoSelect, eoTransform, eoReplacement and an eoPopEval.
 eoEasyEA (eoContinue< EOT > &_continuator, eoEvalFunc< EOT > &_eval, eoBreed< EOT > &_breed, eoMerge< EOT > &_merge, eoReduce< EOT > &_reduce)
 Ctor eoBreed, eoMerge and eoReduce.
 eoEasyEA (eoContinue< EOT > &_continuator, eoEvalFunc< EOT > &_eval, eoSelect< EOT > &_select, eoTransform< EOT > &_transform, eoReplacement< EOT > &_replace)
 Ctor eoSelect, eoTransform, and eoReplacement.
 eoEasyEA (eoContinue< EOT > &_continuator, eoEvalFunc< EOT > &_eval, eoSelect< EOT > &_select, eoTransform< EOT > &_transform, eoMerge< EOT > &_merge, eoReduce< EOT > &_reduce)
 Ctor eoSelect, eoTransform, eoMerge and eoReduce.
virtual void operator() (eoPop< EOT > &_pop)
 Apply a few generation of evolution to the population.

Protected Attributes

eoEasyEA::eoDummySelect dummySelect
eoEasyEA::eoDummyTransform dummyTransform
eoEasyEA::eoDummyEval dummyEval
eoContinue< EOT > & continuator
eoEvalFunc< EOT > & eval
eoPopLoopEval< EOTloopEval
eoPopEvalFunc< EOT > & popEval
eoSelectTransform< EOTselectTransform
eoBreed< EOT > & breed
eoNoElitism< EOTdummyMerge
eoTruncate< EOTdummyReduce
eoMergeReduce< EOTmergeReduce
eoReplacement< EOT > & replace

Friends

class eoIslandsEasyEA< EOT >
class eoDistEvalEasyEA< EOT >

Classes

class  eoDummyEval
class  eoDummySelect
class  eoDummyTransform


Detailed Description

template<class EOT>
class eoEasyEA< EOT >

An easy-to-use evolutionary algorithm; you can use any chromosome, and any selection transformation, merging and evaluation algorithms; you can even change in runtime parameters of those sub-algorithms.

Change (MS, July 3. 2001): Replaced the eoEvalFunc by an eoPopEvalFunc: this immediately allows many useful constructs, such as co-evolution (e.g. game players), parisian approach (the solution to the problem is the whole population) or simple distribution of evaluations on a cluster. In case an eoEvalFunc is passed, it is embedded on an eoPopLoopEval This makes things a little uglier (required an additional "dummy" member

Note: it looks ugly only because we wanted to authorize many different constructors. Please only look at the operator() and there shall be light

Definition at line 63 of file eoEasyEA.h.


The documentation for this class was generated from the following file:

Generated on Thu Jan 1 23:19:45 2009 for EvolvingObjects by  doxygen 1.5.5