|
| LMCMA (random::rng_type &rng=random::globalRng) |
| Default c'tor. More...
|
|
std::string | name () const |
| From INameable: return the class name. More...
|
|
unsigned | suggestLambda (unsigned int dimension) |
| Calculates lambda for the supplied dimensionality n. More...
|
|
double | suggestMu (unsigned int lambda) |
| Calculates mu for the supplied lambda and the recombination strategy. More...
|
|
void | init (ObjectiveFunctionType const &function, SearchPointType const &p) |
| Initializes the algorithm for the supplied objective function. More...
|
|
void | init (ObjectiveFunctionType const &function, SearchPointType const &initialSearchPoint, unsigned int lambda, double mu, double initialSigma) |
| Initializes the algorithm for the supplied objective function. More...
|
|
void | step (ObjectiveFunctionType const &function) |
| Executes one iteration of the algorithm. More...
|
|
double | sigma () const |
| Accesses the current step size. More...
|
|
RealVector const & | mean () const |
| Accesses the current population mean. More...
|
|
RealVector const & | weights () const |
| Accesses the current weighting vector. More...
|
|
RealVector const & | evolutionPath () const |
| Accesses the evolution path for the covariance matrix update. More...
|
|
unsigned int | mu () const |
| Returns the size of the parent population \(\mu\). More...
|
|
unsigned int & | mu () |
| Returns a mutabl rference to the size of the parent population \(\mu\). More...
|
|
unsigned int | lambda () const |
| Returns a immutable reference to the size of the offspring population \(\mu\). More...
|
|
unsigned int & | lambda () |
| Returns a mutable reference to the size of the offspring population \(\mu\). More...
|
|
std::size_t | numInitPoints () const |
| By default most single objective optimizers only require a single point. More...
|
|
virtual void | init (ObjectiveFunctionType const &function, std::vector< SearchPointType > const &initPoints) |
| Initialize the optimizer for the supplied objective function using a set of initialisation points. More...
|
|
virtual const SolutionType & | solution () const |
| returns the current solution of the optimizer More...
|
|
const Features & | features () const |
|
virtual void | updateFeatures () |
|
bool | requiresValue () const |
|
bool | requiresFirstDerivative () const |
|
bool | requiresSecondDerivative () const |
|
bool | canSolveConstrained () const |
|
bool | requiresClosestFeasible () const |
|
virtual | ~AbstractOptimizer () |
|
virtual void | init (ObjectiveFunctionType const &function) |
| Initialize the optimizer for the supplied objective function. More...
|
|
virtual | ~INameable () |
|
virtual | ~ISerializable () |
| Virtual d'tor. More...
|
|
virtual void | read (InArchive &archive) |
| Read the component from the supplied archive. More...
|
|
virtual void | write (OutArchive &archive) const |
| Write the component to the supplied archive. More...
|
|
void | load (InArchive &archive, unsigned int version) |
| Versioned loading of components, calls read(...). More...
|
|
void | save (OutArchive &archive, unsigned int version) const |
| Versioned storing of components, calls write(...). More...
|
|
| BOOST_SERIALIZATION_SPLIT_MEMBER () |
|
Implements a Limited-Memory-CMA.
This is the algorithm as proposed in Ilya Loshchilov, "A Computationally Efficient Limited Memory CMA-ES for Large Scale Optimization" with a few corrections regarding the covariance matrix update.
The algorithm stores a subset of previous evolution path vectors and approximates the covariance matrix based on this. This algorithm only requires O(nm) memory, where n is the dimensionality and n the problem dimensionality. To be more exact, 2*m vectors of size n are stored to calculate the matrix-vector product with the choelsky factor of the covariance matrix in O(mn).
The algorithm uses the population based step size adaptation strategy as proposed in the same paper.
Definition at line 198 of file LMCMA.h.