This is an implementation of CMA-ES. It uses the reference algorithm and termination criteria of the following paper: Hansen, N. (2009). Benchmarking a BI-Population CMA-ES on the BBOB-2009 Function Testbed. Workshop Proceedings of the GECCO Genetic and Evolutionary Computation Conference, ACM, pp. 2389-2395 See https://www.lri.fr/~hansen/publications.html for more information.
More...
|
|
| CMAStrategy () |
| | dummy constructor
|
| |
| | CMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters) |
| | constructor. More...
|
| |
| | CMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters, const CMASolutions &cmasols) |
| | constructor for starting from an existing solution. More...
|
| |
|
dMat | ask () |
| | generates nsols new candidate solutions, sampled from a multivariate normal distribution. return A matrix whose rows contain the candidate points.
|
| |
|
void | tell () |
| | Updates the covariance matrix and prepares for the next iteration.
|
| |
| bool | stop () |
| | Stops search on a set of termination criterias, see reference paper. More...
|
| |
| int | optimize (const EvalFunc &evalf, const AskFunc &askf, const TellFunc &tellf) |
| | Finds the minimum of the objective function. It makes alternate calls to ask(), tell() and stop() until one of the termination criteria triggers. More...
|
| |
| int | optimize () |
| | Finds the minimum of the objective function. It makes alternate calls to ask(), tell() and stop() until one of the termination criteria triggers. More...
|
| |
|
void | plot () |
| | Stream the internal state of the search into an output file, as defined in the _parameters object.
|
| |
|
| ESOStrategy () |
| | dummy constructor.
|
| |
| | ESOStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters) |
| | constructor More...
|
| |
| | ESOStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters, const CMASolutions &solutions) |
| | constructor for starting from an existing solution. More...
|
| |
| dMat | ask () |
| | Generates a set of candidate points. More...
|
| |
| void | eval (const dMat &candidates, const dMat &phenocandidates=dMat(0, 0)) |
| | Evaluates a set of candidates against the objective function. The procedure is multithreaded and stores both the candidates and their f-value into the _solutions object that bears the current set of potential solutions to the optimization problem. More...
|
| |
|
void | tell () |
| | Updates the state of the stochastic search, and prepares for the next iteration.
|
| |
| bool | stop () |
| | Decides whether to stop the search for solutions. More...
|
| |
| int | optimize (const EvalFunc &evalf, const AskFunc &askf, const TellFunc &tellf) |
| | Finds the minimum of the objective function. It makes alternative calls to ask(), tell() and stop() until one of the termination criteria triggers. More...
|
| |
|
void | inc_iter () |
| | increment iteration count.
|
| |
| void | update_fevals (const int &evals) |
| | updates the consumed budget of objective function evaluations. More...
|
| |
| void | set_gradient_func (GradFunc &gfunc) |
| | sets the gradient function, if available. More...
|
| |
| void | set_progress_func (ProgressFunc< CMAParameters< TGenoPheno >, CMASolutions > &pfunc) |
| | Sets the possibly custom progress function, that is called in between every search step, and gives an outside user a simple way to witness progress of the algorithm, as well as to add custom termination criteria. More...
|
| |
| void | start_from_solution (const CMASolutions &sol) |
| | starts optimization from a given solution object. More...
|
| |
| void | set_plot_func (PlotFunc< CMAParameters< TGenoPheno >, CMASolutions > &pffunc) |
| | Sets the possibly custom plot to file function, that is useful for storing into file various possibly custom variable values for each step until termination. More...
|
| |
| dVec | gradf (const dVec &x) |
| | returns numerical gradient of objective function at x. More...
|
| |
| dVec | gradgp (const dVec &x) const |
| | returns the numerical gradient of the objective function in phenotype space More...
|
| |
| double | edm () |
| | computes expected distance to minimum (EDM). More...
|
| |
| CMASolutions & | get_solutions () |
| | returns reference to current solution object More...
|
| |
| CMAParameters< TGenoPheno > & | get_parameters () |
| | returns reference to current optimization parameters object More...
|
| |
| double | fitfunc (const double *x, const int N) |
| | execute objective function More...
|
| |
|
void | uncertainty_handling () |
| | uncertainty handling scheme that computes and uncertainty level based on a dual candidate ranking.
|
| |
|
void | tpa_update () |
| | updates the two-point adaptation average rank difference for the step-size adaptation mechanism
|
| |
|
Candidate | best_solution () const |
| |
|
void | set_initial_elitist (const bool &e) |
| |
template<class TCovarianceUpdate, class TGenoPheno = GenoPheno<NoBoundStrategy>>
class libcmaes::CMAStrategy< TCovarianceUpdate, TGenoPheno >
This is an implementation of CMA-ES. It uses the reference algorithm and termination criteria of the following paper: Hansen, N. (2009). Benchmarking a BI-Population CMA-ES on the BBOB-2009 Function Testbed. Workshop Proceedings of the GECCO Genetic and Evolutionary Computation Conference, ACM, pp. 2389-2395 See https://www.lri.fr/~hansen/publications.html for more information.