Implementation of the IPOP flavor of CMA-ES, with restarts that linearly increase the population of offsprings used in the update of the distribution parameters.
More...
|
| IPOPCMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters) |
| constructor.
|
|
| IPOPCMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters, const CMASolutions &solutions) |
| constructor.
|
|
void | tell () |
| Updates the covariance matrix and prepares for the next iteration.
|
|
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.
|
|
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.
|
|
| CMAStrategy () |
| dummy constructor
|
|
| CMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters) |
| constructor.
|
|
| CMAStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters, const CMASolutions &cmasols) |
| constructor for starting from an existing solution.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
| ESOStrategy (FitFunc &func, CMAParameters< TGenoPheno > ¶meters, const CMASolutions &solutions) |
| constructor for starting from an existing solution.
|
|
dMat | ask () |
| Generates a set of candidate points.
|
|
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.
|
|
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.
|
|
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.
|
|
void | inc_iter () |
| increment iteration count.
|
|
void | update_fevals (const int &evals) |
| updates the consumed budget of objective function evaluations.
|
|
void | set_gradient_func (GradFunc &gfunc) |
| sets the gradient function, if available.
|
|
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.
|
|
void | start_from_solution (const CMASolutions &sol) |
| starts optimization from a given solution object.
|
|
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.
|
|
dVec | gradf (const dVec &x) |
| returns numerical gradient of objective function at x.
|
|
dVec | gradgp (const dVec &x) const |
| returns the numerical gradient of the objective function in phenotype space
|
|
double | edm () |
| computes expected distance to minimum (EDM).
|
|
CMASolutions & | get_solutions () |
| returns reference to current solution object
|
|
CMAParameters< TGenoPheno > & | get_parameters () |
| returns reference to current optimization parameters object
|
|
double | fitfunc (const double *x, const int N) |
| execute objective function
|
|
void | uncertainty_handling () |
| uncertainty handling scheme that computes and uncertainty level based on a dual candidate ranking.
|
|
void | perform_uh (const dMat &candidates, const dMat &phenocandidates, int &nfcalls) |
| uncertainty handling scheme that perform completely the reevaluation of solutions.
|
|
void | select_candidates_uh (const dMat &candidates, const dMat &phenocandidates, dMat &candidates_uh) |
| part of the ucertainty handling scheme that select which candidates should be reevaluated.
|
|
void | eval_candidates_uh (const dMat &candidates, const dMat &candidates_uh, std::vector< RankedCandidate > &nvcandidates, int &nfcalls) |
| part of the ucertainty handling scheme that evaluate the candidates to be reevaluated.
|
|
void | set_candidates_uh (const std::vector< RankedCandidate > &nvcandidates) |
| part of the ucertainty handling scheme that set the results of evaluation to the solutions.
|
|
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) |
|
Implementation of the IPOP flavor of CMA-ES, with restarts that linearly increase the population of offsprings used in the update of the distribution parameters.