and finally... still more grouping in documentation.

This commit is contained in:
Johann Dreo 2010-11-05 22:46:15 +01:00
commit 2104f5b7e9
76 changed files with 427 additions and 70 deletions

View file

@ -68,8 +68,10 @@
* *
* This is why the template is the complete EOT even though only the fitness * This is why the template is the complete EOT even though only the fitness
* is actually templatized here * is actually templatized here
*
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoAlgo<EOT> & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoPopEvalFunc<EOT>& _popeval, eoContinue<EOT>& _continue, eoGenOp<EOT>& _op) eoAlgo<EOT> & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoPopEvalFunc<EOT>& _popeval, eoContinue<EOT>& _continue, eoGenOp<EOT>& _op)
{ {

View file

@ -73,9 +73,9 @@
* *
* This is why the template is the complete EOT even though only the fitness * This is why the template is the complete EOT even though only the fitness
* is actually templatized here * is actually templatized here
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoAlgo<EOT> & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoEvalFunc<EOT>& _eval, eoContinue<EOT>& _continue, eoGenOp<EOT>& _op, eoDistance<EOT> * _dist = NULL) eoAlgo<EOT> & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoEvalFunc<EOT>& _eval, eoContinue<EOT>& _continue, eoGenOp<EOT>& _op, eoDistance<EOT> * _dist = NULL)
{ {

View file

@ -69,6 +69,8 @@ bool testDirRes(std::string _dirName, bool _erase);
* *
* CHANGE (March 2008): now receiving an eoValueParam instead of an eoEvalFuncCounter. This function is just interested * CHANGE (March 2008): now receiving an eoValueParam instead of an eoEvalFuncCounter. This function is just interested
* in the value of the parameter calculated on the evaluation function, not in the actual function itself!! * in the value of the parameter calculated on the evaluation function, not in the actual function itself!!
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoValueParam<unsigned long>& _eval, eoContinue<EOT>& _continue) eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoValueParam<unsigned long>& _eval, eoContinue<EOT>& _continue)

View file

@ -41,6 +41,9 @@ bool testDirRes(std::string _dirName, bool _erase);
/////////////////// The checkpoint and other I/O ////////////// /////////////////// The checkpoint and other I/O //////////////
/**
* @ingroup Builders
*/
template <class EOT> template <class EOT>
eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue) eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue)
{ {

View file

@ -49,7 +49,11 @@
bool testDirRes(std::string _dirName, bool _erase); bool testDirRes(std::string _dirName, bool _erase);
/////////////////// The checkpoint and other I/O ////////////// /////////////////// The checkpoint and other I/O //////////////
/** Of course, Fitness needs to be an eoScalarFitnessAssembled!!! */ /** Of course, Fitness needs to be an eoScalarFitnessAssembled!!!
*
*
* @ingroup Builders
* */
template <class EOT> template <class EOT>
eoCheckPoint<EOT>& do_make_checkpoint_assembled(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue) eoCheckPoint<EOT>& do_make_checkpoint_assembled(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue)
{ {

View file

@ -49,6 +49,9 @@ It can then be instantiated, and compiled on its own for a given EOType
/////////////////// the stopping criterion //////////////// /////////////////// the stopping criterion ////////////////
/**
* @ingroup Builders
*/
template <class Indi> template <class Indi>
eoCombinedContinue<Indi> * make_combinedContinue(eoCombinedContinue<Indi> *_combined, eoContinue<Indi> *_cont) eoCombinedContinue<Indi> * make_combinedContinue(eoCombinedContinue<Indi> *_combined, eoContinue<Indi> *_cont)
{ {
@ -59,7 +62,10 @@ eoCombinedContinue<Indi> * make_combinedContinue(eoCombinedContinue<Indi> *_comb
return _combined; return _combined;
} }
/**
*
* @ingroup Builders
*/
template <class Indi> template <class Indi>
eoContinue<Indi> & do_make_continue(eoParser& _parser, eoState& _state, eoEvalFuncCounter<Indi> & _eval) eoContinue<Indi> & do_make_continue(eoParser& _parser, eoState& _state, eoEvalFuncCounter<Indi> & _eval)
{ {

View file

@ -39,6 +39,8 @@
/** a helper function that decodes a parameter read by the parser into an /** a helper function that decodes a parameter read by the parser into an
* eoReduce<EOT> & (allocates the pointer and stores it into an eoState) * eoReduce<EOT> & (allocates the pointer and stores it into an eoState)
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoReduce<EOT> & decode_reduce(eoParamParamType & _ppReduce, eoState & _state) eoReduce<EOT> & decode_reduce(eoParamParamType & _ppReduce, eoState & _state)
@ -129,8 +131,9 @@ eoReduce<EOT> & decode_reduce(eoParamParamType & _ppReduce, eoState & _state)
* eoHowMany _surviveOffspring number of offspring after offspring recuction * eoHowMany _surviveOffspring number of offspring after offspring recuction
* eoParamParamType & _reduceOffspringType how the offspring are reduced * eoParamParamType & _reduceOffspringType how the offspring are reduced
* eoParamParamType & _reduceFinalType how the final population is reduced to initial population size * eoParamParamType & _reduceFinalType how the final population is reduced to initial population size
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoReplacement<EOT> & make_general_replacement( eoReplacement<EOT> & make_general_replacement(
eoParser& _parser, eoState& _state, eoParser& _parser, eoState& _state,

View file

@ -34,17 +34,25 @@
#include <utils/eoParser.h> #include <utils/eoParser.h>
#include <utils/eoState.h> #include <utils/eoState.h>
/** @defgroup Builders Automatic builders
*
* Automatic builders are functions that automagically builds most commons instances for you.
*
* All the options you needs are set in the command-line parser.
* Those functions all start with the "do_make_" prefix.
*
* @ingroup Utilities
*/
///////////////////////////////// INIT POP ///////////////////////////////
/** /**
* Templatized version of parser-based construct of the population * Templatized version of parser-based construct of the population
* + other initializations that are NOT representation-dependent. * + other initializations that are NOT representation-dependent.
* *
* It must then be instantiated, and compiled on its own for a given EOType * It must then be instantiated, and compiled on its own for a given EOType
* (see e.g. ga.h and ga.pp in dir ga) * (see e.g. ga.h and ga.pp in dir ga)
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
eoPop<EOT>& do_make_pop(eoParser & _parser, eoState& _state, eoInit<EOT> & _init) eoPop<EOT>& do_make_pop(eoParser & _parser, eoState& _state, eoInit<EOT> & _init)
{ {

View file

@ -34,8 +34,9 @@
* A trivial function - only here to allow instanciation with a give EOType * A trivial function - only here to allow instanciation with a give EOType
* and separate compilation - see in ga dir, make_run_ga * and separate compilation - see in ga dir, make_run_ga
* *
*
* @ingroup Builders
*/ */
template <class EOT> template <class EOT>
void do_run(eoAlgo<EOT>& _algo, eoPop<EOT>& _pop) void do_run(eoAlgo<EOT>& _algo, eoPop<EOT>& _pop)
{ {

View file

@ -36,6 +36,10 @@
#include <vector> #include <vector>
#include <string> #include <string>
/** @addtogroup Evaluation
* @{
*/
//! Defines properties of eoScalarFitnessAssembled. //! Defines properties of eoScalarFitnessAssembled.
/*! Properties that are hold in this traits class: /*! Properties that are hold in this traits class:
- std::vector<std::string> to hold descriptions of the different fitness terms - std::vector<std::string> to hold descriptions of the different fitness terms
@ -270,7 +274,6 @@ std::istream& operator>>(std::istream& is, eoScalarFitnessAssembled<F, Cmp, Fitn
return is; return is;
} }
/** @} */
#endif #endif

View file

@ -40,7 +40,8 @@ Contact: http://eodev.sourceforge.net
/** Random Es-chromosome initializer (therefore derived from eoInit) /** Random Es-chromosome initializer (therefore derived from eoInit)
@ingroup EvolutionStrategies @ingroup Real
@ingroup Initializators
This class can initialize four types of real-valued genotypes thanks This class can initialize four types of real-valued genotypes thanks

View file

@ -30,7 +30,7 @@
#include <eoVector.h> #include <eoVector.h>
/** /**
\ingroup EvolutionStrategies \ingroup Real
The most complex evolutionary strategy representation. Co-evolving mutation The most complex evolutionary strategy representation. Co-evolving mutation
rates and correlated mutations. rates and correlated mutations.

View file

@ -36,9 +36,12 @@
// needs a selector - here random // needs a selector - here random
#include <eoRandomSelect.h> #include <eoRandomSelect.h>
/** Gloabl crossover operator for ES genotypes. /** Global crossover operator for ES genotypes.
* Uses some Atom crossovers to handle both the object variables * Uses some Atom crossovers to handle both the object variables
* and the mutation strategy parameters * and the mutation strategy parameters
*
* @ingroup Real
* @ingroup Variators
*/ */
template<class EOT> template<class EOT>
class eoEsGlobalXover: public eoGenOp<EOT> class eoEsGlobalXover: public eoGenOp<EOT>

View file

@ -45,7 +45,8 @@
/** ES-style mutation in the large /** ES-style mutation in the large
@ingroup EvolutionStrategies @ingroup Real
@ingroup Variators
Obviously, valid only for eoES*. It is currently valid for three types Obviously, valid only for eoES*. It is currently valid for three types
of ES chromosomes: of ES chromosomes:

View file

@ -31,7 +31,8 @@
/** Initialize Mutation operator /** Initialize Mutation operator
@ingroup EvolutionStrategies @ingroup Real
@ingroup Variators
Proxy class that is used for initializing the mutation operator. It provides an Proxy class that is used for initializing the mutation operator. It provides an
interface between eoEsMutate and the abstract parameterLoader. It also provides interface between eoEsMutate and the abstract parameterLoader. It also provides

View file

@ -30,7 +30,7 @@ Contact: http://eodev.sourceforge.net
/** Simple Evolution Strategy /** Simple Evolution Strategy
@ingroup EvolutionStrategies @ingroup Real
One of the more simple evolution strategies, sporting just a single stdeviation One of the more simple evolution strategies, sporting just a single stdeviation
for the entire chromosome. For more advanced versions see also eoEsStdev for the entire chromosome. For more advanced versions see also eoEsStdev

View file

@ -41,6 +41,9 @@
* and the mutation strategy parameters * and the mutation strategy parameters
* It is an eoBinOp and has to be wrapped into an eoGenOp before being used * It is an eoBinOp and has to be wrapped into an eoGenOp before being used
* like the global version * like the global version
*
* @ingroup Real
* @ingroup Variators
*/ */
template<class EOT> template<class EOT>
class eoEsStandardXover: public eoBinOp<EOT> class eoEsStandardXover: public eoBinOp<EOT>

View file

@ -28,10 +28,10 @@ Contact: http://eodev.sourceforge.net
/** Evolutionary Strategy with a standard deviation per parameter /** Evolutionary Strategy with a standard deviation per parameter
@ingroup EvolutionStrategies
Evolutionary strategie style representation, supporting co-evolving Evolutionary strategie style representation, supporting co-evolving
standard deviations. standard deviations.
@ingroup Real
*/ */
template <class Fit> template <class Fit>
class eoEsStdev : public eoVector<Fit, double> class eoEsStdev : public eoVector<Fit, double>

View file

@ -43,8 +43,10 @@
* As for the bounds, the values are here folded back into the bounds. * As for the bounds, the values are here folded back into the bounds.
* The other possiblity would be to iterate until we fall inside the bounds - * The other possiblity would be to iterate until we fall inside the bounds -
* but this sometimes takes a long time!!! * but this sometimes takes a long time!!!
*
* @ingroup Real
* @ingroup Variators
*/ */
template<class EOT> class eoNormalVecMutation: public eoMonOp<EOT> template<class EOT> class eoNormalVecMutation: public eoMonOp<EOT>
{ {
public: public:
@ -111,8 +113,10 @@ private:
* As for the bounds, the values are here folded back into the bounds. * As for the bounds, the values are here folded back into the bounds.
* The other possiblity would be to iterate until we fall inside the bounds - * The other possiblity would be to iterate until we fall inside the bounds -
* but this sometimes takes a long time!!! * but this sometimes takes a long time!!!
*
* @ingroup Real
* @ingroup Variators
*/ */
template<class EOT> class eoNormalMutation template<class EOT> class eoNormalMutation
: public eoMonOp<EOT> : public eoMonOp<EOT>
{ {
@ -172,8 +176,10 @@ private:
* and write the update() method! * and write the update() method!
* here the 1 fifth rule: count the proportion of successful mutations, and * here the 1 fifth rule: count the proportion of successful mutations, and
* increase sigma if more than threshold (1/5 !) * increase sigma if more than threshold (1/5 !)
*
* @ingroup Real
* @ingroup Variators
*/ */
template<class EOT> class eoOneFifthMutation : template<class EOT> class eoOneFifthMutation :
public eoNormalMutation<EOT>, public eoUpdatable public eoNormalMutation<EOT>, public eoUpdatable
{ {

View file

@ -33,6 +33,8 @@
/** eoReal: implementation of simple real-valued chromosome. /** eoReal: implementation of simple real-valued chromosome.
* based on eoVector class * based on eoVector class
*
* @ingroup Real
*/ */
template <class FitT> class eoReal: public eoVector<FitT, double> template <class FitT> class eoReal: public eoVector<FitT, double>
{ {

Some files were not shown because too many files have changed in this diff Show more