#include <OnePlusOneES.h>

Public Types | |
| enum | eStepSizeControl { SelfAdaptation, OneFifth, SymmetricOneFifth } |
Public Member Functions | |
| OnePlusOneES () | |
| ~OnePlusOneES () | |
| void | init (eStepSizeControl mode, ObjectiveFunctionVS< double > &fitness) |
| void | init (eStepSizeControl mode, ObjectiveFunctionVS< double > &fitness, const Array< double > &start, double stepsize) |
| void | run () |
| main interface: perform one iteration of the search algorithm | |
| void | bestSolutions (std::vector< double * > &points) |
| void | bestSolutionsFitness (Array< double > &fitness) |
| Return a two-dimensional array of fitness values. | |
| unsigned int | dimension () const |
| double | stepsize () const |
| const IndividualT< double > & | parent () const |
Protected Member Functions | |
| void | SampleUnitVector (Vector &v) |
| void | DoSelfAdaptation () |
| void | DoOneFifth () |
| void | DoSymmetricOneFifth () |
Protected Attributes | |
| eStepSizeControl | m_mode |
| ObjectiveFunctionVS< double > * | m_fitness |
| IndividualT< double > | m_parent |
| double | m_logStepSizeStdDev |
| double | m_logStepSizeShift |
Definition at line 40 of file OnePlusOneES.h.
| OnePlusOneES::OnePlusOneES | ( | ) |
Definition at line 33 of file OnePlusOneES.cpp.
References m_mode, SearchAlgorithmBase::m_name, and SelfAdaptation.
| OnePlusOneES::~OnePlusOneES | ( | ) |
Definition at line 40 of file OnePlusOneES.cpp.
| void OnePlusOneES::bestSolutions | ( | std::vector< double * > & | points | ) |
| void OnePlusOneES::bestSolutionsFitness | ( | Array< double > & | fitness | ) | [virtual] |
Return a two-dimensional array of fitness values.
The first dimension corresponds to the solution, while the second dimension corresponds to the objective.
Implements SearchAlgorithm< double * >.
Definition at line 205 of file OnePlusOneES.cpp.
References Individual::getFitness(), and m_parent.
| unsigned int OnePlusOneES::dimension | ( | ) | const [inline] |
| void OnePlusOneES::DoOneFifth | ( | ) | [protected] |
Definition at line 141 of file OnePlusOneES.cpp.
References ObjectiveFunctionVS< T >::dimension(), Individual::getFitness(), m_fitness, m_parent, and Individual::setFitness().
Referenced by run().
| void OnePlusOneES::DoSelfAdaptation | ( | ) | [protected] |
Definition at line 116 of file OnePlusOneES.cpp.
References ObjectiveFunctionVS< T >::dimension(), Individual::getFitness(), m_fitness, m_parent, and Individual::setFitness().
Referenced by run().
| void OnePlusOneES::DoSymmetricOneFifth | ( | ) | [protected] |
Definition at line 167 of file OnePlusOneES.cpp.
References ObjectiveFunctionVS< T >::dimension(), Individual::getFitness(), m_fitness, m_logStepSizeShift, m_logStepSizeStdDev, m_parent, SampleUnitVector(), and Individual::setFitness().
Referenced by run().
| void OnePlusOneES::init | ( | eStepSizeControl | mode, | |
| ObjectiveFunctionVS< double > & | fitness, | |||
| const Array< double > & | start, | |||
| double | stepsize | |||
| ) |
Definition at line 71 of file OnePlusOneES.cpp.
References ObjectiveFunctionVS< T >::dimension(), m_fitness, m_logStepSizeShift, m_logStepSizeStdDev, m_mode, m_parent, and Individual::setFitness().
| void OnePlusOneES::init | ( | eStepSizeControl | mode, | |
| ObjectiveFunctionVS< double > & | fitness | |||
| ) |
Definition at line 45 of file OnePlusOneES.cpp.
References ObjectiveFunctionVS< T >::dimension(), ObjectiveFunctionVS< T >::ProposeStartingPoint(), and stepsize().
| const IndividualT<double>& OnePlusOneES::parent | ( | ) | const [inline] |
| void OnePlusOneES::run | ( | ) | [virtual] |
main interface: perform one iteration of the search algorithm
Reimplemented from SearchAlgorithm< double * >.
Definition at line 100 of file OnePlusOneES.cpp.
References DoOneFifth(), DoSelfAdaptation(), DoSymmetricOneFifth(), m_mode, OneFifth, SelfAdaptation, and SymmetricOneFifth.
| void OnePlusOneES::SampleUnitVector | ( | Vector & | v | ) | [protected] |
| double OnePlusOneES::stepsize | ( | ) | const [inline] |
ObjectiveFunctionVS<double>* OnePlusOneES::m_fitness [protected] |
Definition at line 67 of file OnePlusOneES.h.
Referenced by DoOneFifth(), DoSelfAdaptation(), DoSymmetricOneFifth(), and init().
double OnePlusOneES::m_logStepSizeShift [protected] |
double OnePlusOneES::m_logStepSizeStdDev [protected] |
eStepSizeControl OnePlusOneES::m_mode [protected] |
IndividualT<double> OnePlusOneES::m_parent [protected] |
Definition at line 68 of file OnePlusOneES.h.
Referenced by bestSolutions(), bestSolutionsFitness(), dimension(), DoOneFifth(), DoSelfAdaptation(), DoSymmetricOneFifth(), init(), parent(), and stepsize().