From 439350bc56d1822f4ada5d573ac8f95b8f6fd51f Mon Sep 17 00:00:00 2001 From: kuepper Date: Wed, 28 Sep 2005 08:36:00 +0000 Subject: [PATCH] documente for stdev_eps --- eo/src/es/eoEsMutate.h | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/eo/src/es/eoEsMutate.h b/eo/src/es/eoEsMutate.h index b00c6abb8..f31f5eb4a 100644 --- a/eo/src/es/eoEsMutate.h +++ b/eo/src/es/eoEsMutate.h @@ -236,11 +236,25 @@ public: /** Bounds of parameters */ eoRealVectorBounds& bounds; - /** Minimum stdev */ + /** Minimum stdev. + + If you let the step-size go to 0, self-adaptation stops, therefore we give a + lower bound. The actual value used is somewhat arbitrary and the is no + theoretical reasoning known for it (Sep 2005). + + The code that we have in EO is a port from a C code that Thomas Bäck kindly + donated to the community some years ago. It has been modified by Marc + Schoenauer for inclusion in EvolC, than by Maarten Keijzer into EO. The + exact value was adjusted based on practice. + + Removing this doesn't work well, but it was never tried to figure out what + the best value would be. + */ static const double stdev_eps; }; +// Minimum value of stdevs, see declaration for details. template const double eoEsMutate::stdev_eps = 1.0e-40;