EvolvingObjects
Utilities

Classes that may help you write elegant code. More...

Classes

class  eoProcedureCounter< Procedure >
 Generic counter class that counts the number of times a procedure is used. More...
class  eoFactory< EOClass >
 EO Factory. More...
class  eoFunctorStore
 eoFunctorStore is a class that stores functors that are allocated on the heap. More...
class  eoOpSelMason< eoClass >
 EO Mason, or builder, for operator selectors. More...
class  eoPerf2Worth< EOT, WorthT >
 Base class to transform raw fitnesses into fitness for selection. More...
class  eoPerf2WorthCached< EOT, WorthT >
 Perf2Worth with fitness cache. More...
class  eoNoPerf2Worth< EOT >
 A dummy perf2worth, just in case you need it. More...
class  eoPopulator< EOT >
 eoPopulator is a helper class for general operators eoGenOp It is an eoPop but also behaves like an eoPop::iterator as far as operator* and operator++ are concerned More...
class  eoSelectFactory< EOT >
 EO Factory.An instance of the factory class to create selectors, that is, eoSelect objects. More...
class  eoSTLF< R >
 Generic set of classes that wrap an eoF, eoUF or eoBF so that they have the copy semantics the STL functions usually require (i.e. More...
class  eoSTLUF< A1, R >
 Generic set of classes that wrap an eoF, eoUF or eoBF so that they have the copy semantics the STL functions usually require (i.e. More...
class  eoSTLBF< A1, A2, R >
 Generic set of classes that wrap an eoF, eoUF or eoBF so that they have the copy semantics the STL functions usually require (i.e. More...
class  lower_triangular_matrix
class  square_matrix
class  eoExternalEO< Fit, External >
 Definition of an object that allows an external struct to be inserted in EO. More...
class  eoExternalInit< F, External, ExternalEO >
 Initialization of external struct, ctor expects a function of the following signature: More...
class  eoExternalEvalFunc< F, External, ExternalEO >
 Evaluation of external struct, ctor expects a function of the following signature: More...
class  eoExternalMonOp< F, External, ExternalEO >
 Mutation of external struct, ctor expects a function of the following signature: More...
class  eoExternalBinOp< F, External, ExternalEO >
 Crossover of external struct, ctor expects a function of the following signature: More...
class  eoExternalQuadOp< F, External, ExternalEO >
 Crossover of external struct, ctor expects a function of the following signature: More...
class  eoString< fitnessT >
 Adaptor that turns an STL std::string into an EO. More...
class  eoSignal< EOT >
 eoSignal inherits from eoCheckPoint including signals handling (see signal(7)) More...
class  eoState
 eoState can be used to register derivants of eoPersistent. More...
class  eoTimer
 Timer allowing to measure time between a start point and a stop point. More...
class  eoTimerStat
 Registers a group of statistics, each statistic corresponding to user, system and wallclock times distribution. More...
class  eoUpdatable
 eoUpdatable is a generic class for adding updatation to an existing class Just says it has an update() method More...
class  eoDynUpdater
 A base class to actually update an eoUpdatable object. More...
class  eoTimedDynUpdate
 An eoUpdater to update an eoUpdatable object every given time interval. More...
class  eoCountedDynUpdate
 An eoUpdater to update an eoUpdatable object every given tic. More...
class  eoUpdater
 eoUpdater is a generic procudere for updating whatever you want. More...
class  eoIncrementor< T >
 an eoUpdater that simply increments a counter More...
class  eoIncrementorParam< T >
 an eoUpdater that is an eoValueParam (and thus OWNS its counter) Mandatory for generation counter in make_checkpoint More...
class  eoTimedStateSaver
 an eoUpdater that saves a state every given time interval More...
class  eoCountedStateSaver
 an eoUpdater that saves a state every given generations More...

Modules

 Automatic builders
 

Automatic builders are functions that automagically builds most commons instances for you.


 Stopping criteria
 

A stopping criterion is called a "continue".


 Operators combination
 

Classes that permits to combine several operators in a single one.


 Bounds management
 

Bounds are a set of utilities that permits to manage ranges of existence for variables.


 Serialization helpers
 

Contains all the necessary entities to serialize eo objects into JSON objects.


 Checkpointing
 

Checkpoints are supposed to be called perodically (for instance at each generation) and will call every functors you put in them.


 Logging
 

Global logger for EO.


 Monitoring
 

Monitors take a set of value parameters (eoValueParam) objects and output them on a given stream, file, pipe, etc.


 Parallel
 Parameters management
 

A parameter is basically an object that stores a value and that can read/print it from/on streams.


 Random number generation
 

Random number generator adapted from (see comments below)


 Statistics computation
 

Compute various statistics on a population.


Functions

template<class EOT >
void apply (eoUF< EOT &, void > &_proc, std::vector< EOT > &_pop)
 Applies a unary function to a std::vector of things.
template<class F , class External >
std::ostream & operator<< (std::ostream &os, const eoExternalEO< F, External > &eo)
 To remove ambiguities between EO<F> and External, streaming operators are defined yet again.
template<class F , class External >
std::istream & operator>> (std::istream &is, eoExternalEO< F, External > &eo)
 To remove ambiguities between EO<F> and External, streaming operators are defined yet again.

Detailed Description

Classes that may help you write elegant code.

One of the invalidator operators.

Use this one as a 'hat' on an operator that is defined to work on a generic datatype. This functor will then check the return type of the operator and invalidate the fitness of the individual.

This functor is used in algorithms that work with straight eoMonOp, eoBinOp or eoQuadOp operators, for instance eoSGA. Note that eoGenOp derived operators generally do invalidate the fitness of the objects they have changed.

Return value means "Has_Changed" and not "Needs_To_Be_Invalidated" as successive invalidation are not really a problem

 All Classes Namespaces Files Functions Variables Typedefs Friends