|
EvolvingObjects
|
Random Es-chromosome initializer (therefore derived from eoInit) More...
#include <eoEsChromInit.h>
Public Types | |
| typedef EOT::Fitness | FitT |
Public Member Functions | |
| eoEsChromInit (eoRealVectorBounds &_bounds, double _sigma=0.3, bool _to_scale=false) | |
| Constructor. | |
| eoEsChromInit (eoRealVectorBounds &_bounds, const std::vector< double > &_vecSigma) | |
| Constructor. | |
| void | operator() (EOT &_eo) |
| simply passes the argument to the uniform method of the bounds | |
Private Member Functions | |
| void | create_self_adapt (eoReal< FitT > &) |
| Create intializer. | |
| void | create_self_adapt (eoEsSimple< FitT > &result) |
| Create intializer. | |
| void | create_self_adapt (eoEsStdev< FitT > &result) |
| Create intializer. | |
| void | create_self_adapt (eoEsFull< FitT > &result) |
| Create intializer. | |
Private Attributes | |
| double | uniqueSigma |
| Initial value in case of a unique sigma. | |
| std::vector< double > | vecSigma |
| Initial values in case of a vector of sigmas. | |
Random Es-chromosome initializer (therefore derived from eoInit)
This class can initialize four types of real-valued genotypes thanks to tempate specialization of private method create:
Definition at line 58 of file eoEsChromInit.h.
| eoEsChromInit< EOT >::eoEsChromInit | ( | eoRealVectorBounds & | _bounds, |
| double | _sigma = 0.3, |
||
| bool | _to_scale = false |
||
| ) | [inline] |
Constructor.
| _bounds | bounds for uniform initialization |
| _sigma | initial value for the stddev |
| _to_scale | wether sigma should be multiplied by the range of each variable added December 2004 - MS (together with the whole comment :-) |
Definition at line 74 of file eoEsChromInit.h.
References eoRealInitBounded< EOT >::theBounds(), eoEsChromInit< EOT >::uniqueSigma, and eoEsChromInit< EOT >::vecSigma.
| eoEsChromInit< EOT >::eoEsChromInit | ( | eoRealVectorBounds & | _bounds, |
| const std::vector< double > & | _vecSigma | ||
| ) | [inline] |
Constructor.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Specify individual initial sigmas for each variable.
| _bounds | bounds for uniform initialization |
| _vecSigma | initial value for the stddev |
Definition at line 112 of file eoEsChromInit.h.
| void eoEsChromInit< EOT >::create_self_adapt | ( | eoReal< FitT > & | ) | [inline, private] |
Create intializer.
No adaptive mutation at all
Definition at line 134 of file eoEsChromInit.h.
Referenced by eoEsChromInit< EOT >::operator()().
| void eoEsChromInit< EOT >::create_self_adapt | ( | eoEsSimple< FitT > & | result | ) | [inline, private] |
Create intializer.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Adaptive mutation through a unique sigma
Definition at line 145 of file eoEsChromInit.h.
References eoEsChromInit< EOT >::uniqueSigma.
| void eoEsChromInit< EOT >::create_self_adapt | ( | eoEsStdev< FitT > & | result | ) | [inline, private] |
Create intializer.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Adaptive mutation through a std::vector of sigmas
Definition at line 161 of file eoEsChromInit.h.
References eoEsChromInit< EOT >::vecSigma.
| void eoEsChromInit< EOT >::create_self_adapt | ( | eoEsFull< FitT > & | result | ) | [inline, private] |
Create intializer.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Adaptive mutation through a whole correlation matrix
Definition at line 175 of file eoEsChromInit.h.
References eoRng::uniform(), and eoEsChromInit< EOT >::vecSigma.