Larger commit, adding IPOP-ES and RankMuCMA mutator. Revs. 130-174 from MK-branch should be merged with this.

This commit is contained in:
Marcel Kronfeld
2008-08-29 14:04:32 +00:00
parent c2a3f06498
commit 68241a0dc0
39 changed files with 1593 additions and 404 deletions

View File

@@ -3,19 +3,23 @@
<title>Evolution Strategy - ES</title>
</head>
<body>
<EFBFBD>
<h1 align="center">Evolution Strategy - ES</h1>
<center>
</center><br>
An ES works on a population of real valued solutions
by repeated use of evolutionary operators like reproduction,
recombination and mutation (see pseudocode in figures.
lambda offspring individuals are generated from mu parents
by recombination and mutation. After evaluating the fitness of the lambda
offspring individuals, mu individuals with the best fitness are
selected by a comma-strategy to build the parent population for the next generation.
On the other hand, a plus-strategy selects the best mu individuals
from the aggregation of parents and offspring individuals.
The properties of ES are given in the population sub frame.
recombination and mutation.
&lambda; offspring individuals are generated from &mu; parents
by recombination and mutation (with &mu; &lt; &lambda;).
<br>
After evaluating the fitness of the &lambda;
offspring individuals, the comma-strategy selects the &mu; individuals
with the best fitness as parent population for the next generation.
On the other hand, a plus-strategy selects the best &mu; individuals
from the aggregation of parents and offspring individuals, so in this
case the best individual is guaranteed to survive.
In general, however, the comma-strategy is more robust and can easier
escape from local optima, which is why it is usually the standard selection.
<br>
</body>
</html>

View File

@@ -0,0 +1,30 @@
<html>
<head>
<title>Increasing Population Size ES - IPOP-ES</title>
</head>
<body>
<h1 align="center">Increasing Population Size ES - IPOP-ES</h1>
<center>
</center><br>
<p>
This class implements the IPOP (increased population size) restart strategy ES, which increases
the ES population size (i.e., lambda) after phases of stagnation and then restarts the optimization
by reinitializing the individuals and operators.<br>
Stagnation is for this implementation defined by a FitnessConvergenceTerminator instance
which terminates if the absolute change in fitness is below a threshold (default 10e-12) for a
certain number of generations (default: 10+floor(30*n/lambda) for problem dimension n).
</p>
<p>
If the MutateESRankMuCMA mutation operator is employed, additional criteria are used for restarts,
such as numeric conditions of the covariance matrix.
Lambda is increased multiplicatively for every restart, and typical initial values are
mu=5, lambda=10, incFact=2.
The IPOP-CMA-ES won the CEC 2005 benchmark challenge.
Refer to Auger&Hansen 05 for more details.
</p>
<br>
A.Auger & N.Hansen. <i>A Restart CMA Evolution Strategy With Increasing Population Size</i>. CEC 2005.
</body>
</html>

View File

@@ -0,0 +1,33 @@
<html>
<head>
<title>Covariance Matrix Adaptation with Rank-Mu-Update</title>
</head>
<body>
<h1 align="center">Covariance Matrix Adaptation with rank-mu update after Hansen & Kern 2004</h1>
Implementing CMA ES with rank-mu-update and weighted recombination. This operator won the CEC 2005
challenge employed with a restart scheme with increasing population size.
Basically, in each generation the population is resampled around the weighted center of the
last population using the adapted covariance matrix C. In contrast to earlier CMA versions,
this implementation only holds one single covariance matrix for the whole population, making
it much more memory efficient and useful for high dimensional problems as well.
<br>
While C is adapted based on a cumulated evolution path, the step size sigma is adapted based
on path length control.
Due to the repeated resampling starting from a single "center", the CMA version can
be interpreted as a sophisticated local search, if the initial solution set is sampled
close to an initial guess. In this case, a small initial sigma is favourable.
<br>
For multimodal problems, the initial population can be sampled randomly in the search space
and the initial sigma must be rather high.
To meet both conditions, the initial sigma may be set to half the average problem range
or to the average distance in the initial population.
<br>
<p>
* N.Hansen & S.Kern 2004: <i>Evaluating the CMA Evolution Strategy on Multimodal Test Functions.</i>
Parallel Problem Solving from Nature 2004.
</body>
</html>