eoEsChromInit(3)

NAME
eoEsChromInit - Random Es-chromosome initializer (therefore derived from eoInit).

SYNOPSIS

#include <eoEsChromInit.h>

Inherits eoRealInitBounded< EOT >< EOT >.

  Public Types
typedef EOT::Fitness FitT

  Public Member Functions
eoEsChromInit (eoRealVectorBounds &_bounds, double _sigma=0.3, bool _to_scale=false)
Constructor.
eoEsChromInit (eoRealVectorBounds &_bounds, 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.

Detailed Description

  template<class EOT> class eoEsChromInit< EOT >
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:

•   eoReal just an eoVector<double>

•   eoEsSimple + one self-adapting single sigma for all variables

•   eoEsStdev a whole std::vector of self-adapting sigmas

•   eoEsFull a full self-adapting correlation matrix

See also:
    eoReal eoEsSimple eoEsStdev eoEsFull eoInit

Definition at line 55 of file eoEsChromInit.h.

Constructor & Destructor Documentation

  template<class EOT> eoEsChromInit< EOT >::eoEsChromInit (eoRealVectorBounds & _bounds, double _sigma = 0.3, bool _to_scale = false) [inline]

Constructor.

Parameters:
    _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 71 of file eoEsChromInit.h.

References eoRealBaseVectorBounds::range(), eoRealInitBounded< EOT >::theBounds(), eoEsChromInit< EOT >::uniqueSigma, and eoEsChromInit< EOT >::vecSigma.

  template<class EOT> eoEsChromInit< EOT >::eoEsChromInit (eoRealVectorBounds & _bounds, 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.

Parameters:
    _bounds bounds for uniform initialization
    _sigma initial value for the stddev

Definition at line 109 of file eoEsChromInit.h.

References eoEsChromInit< EOT >::uniqueSigma, and eoEsChromInit< EOT >::vecSigma.

Member Function Documentation

  template<class EOT> void eoEsChromInit< EOT >::create_self_adapt (eoReal< FitT > &) [inline, private]

Create intializer.

No adaptive mutation at all

Definition at line 128 of file eoEsChromInit.h.

Referenced by eoEsChromInit< EOT >::operator()().

  template<class EOT> 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 139 of file eoEsChromInit.h.

References eoEsSimple< Fit >::stdev.

  template<class EOT> 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

Todo
    Should we scale sigmas to the corresponding object variable range?

Definition at line 155 of file eoEsChromInit.h.

References eoEsStdev< Fit >::stdevs.

  template<class EOT> 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 169 of file eoEsChromInit.h.

References eoEsFull< Fit >::correlations, eoEsFull< Fit >::stdevs, and eoRng::uniform().

Author

Generated automatically by Doxygen for EO from the source code.