Evolution Strategies (ES)
ES are a class of evolutionary optimization algorithms for continuous, gradient-free parameter optimization.
There is no one definition, but broadly:
ES is an algorithm that provides the user a set of candidate solutions to evaluate a problem. The evaluation is based on an objective function that takes a given solution and returns a single fitness value. Based on the fitness results of the current solutions, the algorithm will then produce the next generation of candidate solutions that is more likely to produce even better results than the current generation. The iterative process will stop once the best known solution is satisfactory for the user. 1
In a nutshell:
ES maintain a probability distribution (typically gaussian) over the parameter space:
Variants
Simple ES
The simplest form of an evolution strategy is just iteratively updating the mean of the sampling distribution (green) to the best solution of the current population (red). This only works on toy problems.
![]()
Selection in ES ,
… elites, best performing individuals of a generation
… population size (including elites)
… give the parents a chance to compete with their children (elitist, best survive)
… replace parents by children (can help overcome local optimium through turnover/diversity→ advantage over gradient-based methods; bio inspo: death of old age)
References
https://lilianweng.github.io/posts/2019-09-05-evolution-strategies/
Footnotes
-
Highly recommended blog: https://blog.otoro.net/2017/10/29/visual-evolution-strategies ↩