# CMA-ES

`Evolutionary.CMAES`

— TypeCovariance Matrix Adaptation Evolution Strategy Implementation: (μ/μ_{I,W},λ)-CMA-ES

The constructor takes following keyword arguments:

`μ`

/`mu`

is the number of parents`λ`

/`lambda`

is the number of offspring`c_1`

is a learning rate for the rank-one update of the covariance matrix update`c_c`

is a learning rate for cumulation for the rank-one update of the covariance matrix`c_mu`

is a learning rate for the rank-$\mu$ update of the covariance matrix update`c_sigma`

is a learning rate for the cumulation for the step-size control`c_m`

is the learning rate for the mean update, $c_m \leq 1$`σ0`

/`sigma0`

is the initial step size`σ`

`weights`

are recombination weights, if the weights are set to $1/\mu$ then the*intermediate*recombination is activated.`metrics`

is a collection of convergence metrics.

## Description

The Covariance Matrix Adaptation Evolution Strategy (CMA-ES) is a stochastic derivative-free numerical optimization algorithm for difficult (non-convex, ill-conditioned, multi-modal, rugged, noisy) optimization problems in continuous search spaces ^{[1]}.

The current CMA-ES algorithm implementation based on a simplified outline^{[2]}.

## References

- 1Hansen, N. (2016), "The CMA Evolution Strategy: A Tutorial", arXiv:1604.00772
- 2http://www.scholarpedia.org/article/Evolution_strategies