You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2012/10/15 15:33:43 UTC

svn commit: r1398284 - /commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java

Author: erans
Date: Mon Oct 15 13:33:43 2012
New Revision: 1398284

URL: http://svn.apache.org/viewvc?rev=1398284&view=rev
Log:
MATH-873
Removed usage of "maximum number of evaluations" in a place where it altered
the algorithm's core behaviour (whereas it should only serve as a processing
time limit).

Modified:
    commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java

Modified: commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java?rev=1398284&r1=1398283&r2=1398284&view=diff
==============================================================================
--- commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java (original)
+++ commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/direct/CMAESOptimizer.java Mon Oct 15 13:33:43 2012
@@ -670,9 +670,8 @@ public class CMAESOptimizer
         cs = (mueff + 2.) / (dimension + mueff + 3.);
         damps = (1. + 2. * Math.max(0, Math.sqrt((mueff - 1.) /
                 (dimension + 1.)) - 1.)) *
-                Math.max(0.3, 1. - dimension /
-                        (1e-6 + Math.min(maxIterations, getMaxEvaluations() /
-                                lambda))) + cs; // minor increment
+                Math.max(0.3,
+                         1. - dimension / (1e-6 + maxIterations)) + cs; // minor increment
         ccov1 = 2. / ((dimension + 1.3) * (dimension + 1.3) + mueff);
         ccovmu = Math.min(1 - ccov1, 2. * (mueff - 2. + 1. / mueff) /
                 ((dimension + 2.) * (dimension + 2.) + mueff));