Prof. Dr. rer. nat. habil. Hans-Georg Beyer


1. Evolution Strategy Examples (for teaching only)

For the underlying algorithmic ideas refer to Scholarpedia's  Evolution Strategies.

Mathematica Sources

Matlab/Octave Sources

2. Matrix Adaptation Evolution Strategies (MA-ES)

Fast MA-ES with O(N^2) algorithmic complexity

A tar-ball containing Matlab/Octave code that avoids matrix-matrix- multiplication (see Slide 32 in my tutorial Design Principles for Matrix Adaptation Evolution Strategies). Experiments can be started in Experiment.m

Meta MA-ES aka Bi-Population MA-ES (BiPop-MA-ES)

In order to optimize highly multi-modal optimization problems, the population size must be learned on-the-fly. This can be done by running two MA-ES with restarts (for details see Simplify Your Covariance Matrix Adaptation Evolution Strategy). A tar-ball containing Matlab/Octave code is provided below. Experiments can be started in BiPop_MAES_test.m

Limited Memory MA-ES (LM-MA-ES)

The matrix-vector operations are the algorithmic bottleneck in the fast MA-ES. If one wants to reduce the algorithmic complexity below O(N^2) one must approximate these operations. It turns out that one can reduce this complexity to O(N log N) by introducing a set of path cumulation vectors at different time scales to approximate the matrix vector operations for generation of mutations. The resulting LM-MA-ES has been published in Large Scale Black-Box Optimization by Limited-Memory Matrix Adaptation). This algorithm is able to handle 10000 variables (if efficiently coded in C or Fortran). A tar-ball containing Matlab/Octave code (suited for somewhat smaller problem sizes) is provided below. Experiments can be started in Test_LM_MA_ES.m

3. Lecture Slides (password protected)


last change: 14.07.2020