and finally... still more grouping in documentation.
This commit is contained in:
parent
f478817c6e
commit
2104f5b7e9
76 changed files with 427 additions and 70 deletions
|
|
@ -68,8 +68,10 @@
|
|||
*
|
||||
* This is why the template is the complete EOT even though only the fitness
|
||||
* is actually templatized here
|
||||
*
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
|
||||
template <class EOT>
|
||||
eoAlgo<EOT> & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoPopEvalFunc<EOT>& _popeval, eoContinue<EOT>& _continue, eoGenOp<EOT>& _op)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -73,9 +73,9 @@
|
|||
*
|
||||
* This is why the template is the complete EOT even though only the fitness
|
||||
* is actually templatized here
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
|
||||
|
||||
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)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -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
|
||||
* in the value of the parameter calculated on the evaluation function, not in the actual function itself!!
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
template <class EOT>
|
||||
eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoValueParam<unsigned long>& _eval, eoContinue<EOT>& _continue)
|
||||
|
|
|
|||
|
|
@ -41,6 +41,9 @@ bool testDirRes(std::string _dirName, bool _erase);
|
|||
/////////////////// The checkpoint and other I/O //////////////
|
||||
|
||||
|
||||
/**
|
||||
* @ingroup Builders
|
||||
*/
|
||||
template <class EOT>
|
||||
eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -49,7 +49,11 @@
|
|||
bool testDirRes(std::string _dirName, bool _erase);
|
||||
/////////////////// 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>
|
||||
eoCheckPoint<EOT>& do_make_checkpoint_assembled(eoParser& _parser, eoState& _state, eoEvalFuncCounter<EOT>& _eval, eoContinue<EOT>& _continue)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -49,6 +49,9 @@ It can then be instantiated, and compiled on its own for a given EOType
|
|||
|
||||
|
||||
/////////////////// the stopping criterion ////////////////
|
||||
/**
|
||||
* @ingroup Builders
|
||||
*/
|
||||
template <class Indi>
|
||||
eoCombinedContinue<Indi> * make_combinedContinue(eoCombinedContinue<Indi> *_combined, eoContinue<Indi> *_cont)
|
||||
{
|
||||
|
|
@ -59,7 +62,10 @@ eoCombinedContinue<Indi> * make_combinedContinue(eoCombinedContinue<Indi> *_comb
|
|||
return _combined;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
template <class Indi>
|
||||
eoContinue<Indi> & do_make_continue(eoParser& _parser, eoState& _state, eoEvalFuncCounter<Indi> & _eval)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@
|
|||
|
||||
/** a helper function that decodes a parameter read by the parser into an
|
||||
* eoReduce<EOT> & (allocates the pointer and stores it into an eoState)
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
template <class EOT>
|
||||
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
|
||||
* eoParamParamType & _reduceOffspringType how the offspring are reduced
|
||||
* eoParamParamType & _reduceFinalType how the final population is reduced to initial population size
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
|
||||
template <class EOT>
|
||||
eoReplacement<EOT> & make_general_replacement(
|
||||
eoParser& _parser, eoState& _state,
|
||||
|
|
|
|||
|
|
@ -34,17 +34,25 @@
|
|||
#include <utils/eoParser.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
|
||||
* + other initializations that are NOT representation-dependent.
|
||||
*
|
||||
* 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)
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
|
||||
|
||||
template <class EOT>
|
||||
eoPop<EOT>& do_make_pop(eoParser & _parser, eoState& _state, eoInit<EOT> & _init)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -34,8 +34,9 @@
|
|||
* A trivial function - only here to allow instanciation with a give EOType
|
||||
* and separate compilation - see in ga dir, make_run_ga
|
||||
*
|
||||
*
|
||||
* @ingroup Builders
|
||||
*/
|
||||
|
||||
template <class EOT>
|
||||
void do_run(eoAlgo<EOT>& _algo, eoPop<EOT>& _pop)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -36,6 +36,10 @@
|
|||
#include <vector>
|
||||
#include <string>
|
||||
|
||||
/** @addtogroup Evaluation
|
||||
* @{
|
||||
*/
|
||||
|
||||
//! Defines properties of eoScalarFitnessAssembled.
|
||||
/*! Properties that are hold in this traits class:
|
||||
- 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;
|
||||
}
|
||||
|
||||
/** @} */
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,8 @@ Contact: http://eodev.sourceforge.net
|
|||
|
||||
/** 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
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
#include <eoVector.h>
|
||||
|
||||
/**
|
||||
\ingroup EvolutionStrategies
|
||||
\ingroup Real
|
||||
|
||||
The most complex evolutionary strategy representation. Co-evolving mutation
|
||||
rates and correlated mutations.
|
||||
|
|
|
|||
|
|
@ -36,9 +36,12 @@
|
|||
// needs a selector - here random
|
||||
#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
|
||||
* and the mutation strategy parameters
|
||||
*
|
||||
* @ingroup Real
|
||||
* @ingroup Variators
|
||||
*/
|
||||
template<class EOT>
|
||||
class eoEsGlobalXover: public eoGenOp<EOT>
|
||||
|
|
|
|||
|
|
@ -45,7 +45,8 @@
|
|||
|
||||
/** ES-style mutation in the large
|
||||
|
||||
@ingroup EvolutionStrategies
|
||||
@ingroup Real
|
||||
@ingroup Variators
|
||||
|
||||
Obviously, valid only for eoES*. It is currently valid for three types
|
||||
of ES chromosomes:
|
||||
|
|
|
|||
|
|
@ -31,7 +31,8 @@
|
|||
|
||||
/** Initialize Mutation operator
|
||||
|
||||
@ingroup EvolutionStrategies
|
||||
@ingroup Real
|
||||
@ingroup Variators
|
||||
|
||||
Proxy class that is used for initializing the mutation operator. It provides an
|
||||
interface between eoEsMutate and the abstract parameterLoader. It also provides
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ Contact: http://eodev.sourceforge.net
|
|||
|
||||
/** Simple Evolution Strategy
|
||||
|
||||
@ingroup EvolutionStrategies
|
||||
@ingroup Real
|
||||
|
||||
One of the more simple evolution strategies, sporting just a single stdeviation
|
||||
for the entire chromosome. For more advanced versions see also eoEsStdev
|
||||
|
|
|
|||
|
|
@ -41,6 +41,9 @@
|
|||
* and the mutation strategy parameters
|
||||
* It is an eoBinOp and has to be wrapped into an eoGenOp before being used
|
||||
* like the global version
|
||||
*
|
||||
* @ingroup Real
|
||||
* @ingroup Variators
|
||||
*/
|
||||
template<class EOT>
|
||||
class eoEsStandardXover: public eoBinOp<EOT>
|
||||
|
|
|
|||
|
|
@ -28,10 +28,10 @@ Contact: http://eodev.sourceforge.net
|
|||
|
||||
/** Evolutionary Strategy with a standard deviation per parameter
|
||||
|
||||
@ingroup EvolutionStrategies
|
||||
|
||||
Evolutionary strategie style representation, supporting co-evolving
|
||||
standard deviations.
|
||||
|
||||
@ingroup Real
|
||||
*/
|
||||
template <class Fit>
|
||||
class eoEsStdev : public eoVector<Fit, double>
|
||||
|
|
|
|||
|
|
@ -43,8 +43,10 @@
|
|||
* 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 -
|
||||
* but this sometimes takes a long time!!!
|
||||
*
|
||||
* @ingroup Real
|
||||
* @ingroup Variators
|
||||
*/
|
||||
|
||||
template<class EOT> class eoNormalVecMutation: public eoMonOp<EOT>
|
||||
{
|
||||
public:
|
||||
|
|
@ -111,8 +113,10 @@ private:
|
|||
* 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 -
|
||||
* but this sometimes takes a long time!!!
|
||||
*
|
||||
* @ingroup Real
|
||||
* @ingroup Variators
|
||||
*/
|
||||
|
||||
template<class EOT> class eoNormalMutation
|
||||
: public eoMonOp<EOT>
|
||||
{
|
||||
|
|
@ -172,8 +176,10 @@ private:
|
|||
* and write the update() method!
|
||||
* here the 1 fifth rule: count the proportion of successful mutations, and
|
||||
* increase sigma if more than threshold (1/5 !)
|
||||
*
|
||||
* @ingroup Real
|
||||
* @ingroup Variators
|
||||
*/
|
||||
|
||||
template<class EOT> class eoOneFifthMutation :
|
||||
public eoNormalMutation<EOT>, public eoUpdatable
|
||||
{
|
||||
|
|
|
|||
|
|
@ -33,6 +33,8 @@
|
|||
|
||||
/** eoReal: implementation of simple real-valued chromosome.
|
||||
* based on eoVector class
|
||||
*
|
||||
* @ingroup Real
|
||||
*/
|
||||
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
Loading…
Reference in a new issue