OnePlusOneES Class Reference

#include <OnePlusOneES.h>

Inheritance diagram for OnePlusOneES:

SearchAlgorithm< double * > SearchAlgorithmBase

List of all members.

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


Detailed Description

Definition at line 40 of file OnePlusOneES.h.


Member Enumeration Documentation

Enumerator:
SelfAdaptation 
OneFifth 
SymmetricOneFifth 

Definition at line 46 of file OnePlusOneES.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

void OnePlusOneES::bestSolutions ( std::vector< double * > &  points  ) 

Definition at line 199 of file OnePlusOneES.cpp.

References m_parent.

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]

Definition at line 59 of file OnePlusOneES.h.

References m_parent, and Individual::size().

void OnePlusOneES::DoOneFifth (  )  [protected]

void OnePlusOneES::DoSelfAdaptation (  )  [protected]

void OnePlusOneES::DoSymmetricOneFifth (  )  [protected]

void OnePlusOneES::init ( eStepSizeControl  mode,
ObjectiveFunctionVS< double > &  fitness,
const Array< double > &  start,
double  stepsize 
)

void OnePlusOneES::init ( eStepSizeControl  mode,
ObjectiveFunctionVS< double > &  fitness 
)

const IndividualT<double>& OnePlusOneES::parent (  )  const [inline]

Definition at line 61 of file OnePlusOneES.h.

References m_parent.

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]

Definition at line 86 of file OnePlusOneES.cpp.

Referenced by DoSymmetricOneFifth().

double OnePlusOneES::stepsize (  )  const [inline]

Definition at line 60 of file OnePlusOneES.h.

References m_parent.

Referenced by init().


Member Data Documentation

Definition at line 67 of file OnePlusOneES.h.

Referenced by DoOneFifth(), DoSelfAdaptation(), DoSymmetricOneFifth(), and init().

Definition at line 75 of file OnePlusOneES.h.

Referenced by DoSymmetricOneFifth(), and init().

Definition at line 74 of file OnePlusOneES.h.

Referenced by DoSymmetricOneFifth(), and init().

Definition at line 66 of file OnePlusOneES.h.

Referenced by init(), OnePlusOneES(), and run().

IndividualT<double> OnePlusOneES::m_parent [protected]


The documentation for this class was generated from the following files: