Please note that a more advanced version of the code is available at https://sites.google.com/site/ecjlmcma/ and

it corresponds to http://arxiv.org/pdf/1511.00221.pdf .

The original LM-CMA-ES

code to download: LMCMA.tgz

A modified version (July 2014)

code to download: lmcma.cpp

+ an implemented fix suggested by Oswin Krause. The fix (a procedure) corrects the computation of v vectors which were corrupted in the original LM-CMA-ES. The fix allows to improve the results on some problems (e.g. up to 20% on Ellipsoid for D=128...512)

+ a simple trick to make the algorithm about 2 times faster (in terms of internal CPU time) : to sample (like in mirroring sampling by Anne Auger) m+sigma*A*z and m-sigma*A*z

+ the use of Ziggurat method for Gaussian sampling which seems to perform both faster and better than the original RNG.

see also http://loshchilov.com