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 2021/08/27 15:31:32 UTC

[commons-math] 02/03: Simplex search in higher-dimensional cases (unit test).

This is an automated email from the ASF dual-hosted git repository.

erans pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-math.git

commit f1ad9d1b000e1535550aef452c07a92de602c573
Author: Gilles Sadowski <gi...@gmail.com>
AuthorDate: Fri Aug 27 05:37:49 2021 +0200

    Simplex search in higher-dimensional cases (unit test).
---
 .../nonlinear/scalar/noderiv/SimplexOptimizerTest.java   |  2 +-
 .../noderiv/std_test_func.simplex.hedar_fukushima.csv    | 11 ++++++++---
 .../noderiv/std_test_func.simplex.multidirectional.csv   | 13 ++++++++++++-
 .../scalar/noderiv/std_test_func.simplex.nelder_mead.csv | 16 ++++++----------
 4 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/SimplexOptimizerTest.java b/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/SimplexOptimizerTest.java
index 33d6190..38d0f13 100644
--- a/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/SimplexOptimizerTest.java
+++ b/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/SimplexOptimizerTest.java
@@ -112,7 +112,7 @@ public class SimplexOptimizerTest {
      */
     public static class Task {
         /** Function evaluations hard count (debugging). */
-        private static final int FUNC_EVAL_DEBUG = 80000;
+        private static final int FUNC_EVAL_DEBUG = 500000;
         /** Default convergence criterion. */
         private static final double CONVERGENCE_CHECK = 1e-9;
         /** Default cooling factor. */
diff --git a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.hedar_fukushima.csv b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.hedar_fukushima.csv
index 2030e0c..bebc135 100644
--- a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.hedar_fukushima.csv
+++ b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.hedar_fukushima.csv
@@ -31,18 +31,23 @@
 # Caveat: Some tests are commented out (cf. JIRA: MATH-1552).
 #
 PARABOLA, 8, 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 900, true
+PARABOLA, 16, 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0, 20, 40, 5e-4, 5200, true
 ROSENBROCK, 2, 1 1, 0.9, 1.1, 1e-4, 160, true
+ROSENBROCK, 4, 1 1 1 1, 0.9, 1.1, 1e-4, 500, true
+ROSENBROCK, 8, 1 1 1 1 1 1 1 1, 0.9, 1.1, 2e-4, 2200, true
+ROSENBROCK, 16, 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1, 0.9, 1.1, 3e-1, 9000, true
 POWELL, 4, 0 0 0 0, 4, 5, 4e-3, 400, true
-CIGAR, 2, 0 0, 2, 3, 5e-5, 140, true
+POWELL, 8, 0 0 0 0 0 0 0 0, 4, 5, 2e-2, 1760, true
+CIGAR, 2, 0 0, 2, 3, 5e-5, 150, true
 SPHERE, 2, 0 0, 2, 3, 5e-4, 110, true
 ELLI, 2, 0 0, 3, 4, 1e-4, 150, true
 TWO_AXES, 2, 0 0, 3, 4, 1e-4, 170, true
-CIG_TAB, 2, 0 0, 3, 4, 1e-3, 150, true
+CIG_TAB, 2, 0 0, 3, 4, 2e-3, 160, true
 TABLET, 2, 0 0, 3, 4, 2e-4, 160, true
 SUM_POW, 2, 0 0, 3, 4, 1e-2, 110,  true
 ACKLEY, 2, 0 0, 2, 4, 1e-6, 170, true
 RASTRIGIN, 2, 0 0, 6, 10, 5e-5, 130, true
-GRIEWANK, 2, 0 0, 2, 3, 1e-1, 100, true
+GRIEWANK, 2, 0 0, 2, 3, 1e-1, 120, true
 LEVY, 2, 1 1, 0.9, 1.1, 1e-3, 110, true
 SCHWEFEL, 2, 420.9687 420.9687, 9, 11, 1, 110, true
 ZAKHAROV, 2, 0 0, 3, 4, 1e-4, 130, true
diff --git a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.multidirectional.csv b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.multidirectional.csv
index 806e083..acc5e2f 100644
--- a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.multidirectional.csv
+++ b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.multidirectional.csv
@@ -32,9 +32,20 @@
 #
 PARABOLA, 8, 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 1500, false
 PARABOLA, 8, 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 2500, true
+PARABOLA, 16, 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 5800, false
+PARABOLA, 16, 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 10260, true
+ROSENBROCK, 2, 1 1, 0.9, 1.1, 3e-3, 11000, false
 ROSENBROCK, 2, 1 1, 0.9, 1.1, 3e-3, 650, true
+ROSENBROCK, 4, 1 1 1 1, 0.9, 1.1, 3e-3, 45000, false
+ROSENBROCK, 4, 1 1 1 1, 0.9, 1.1, 3e-3, 1850, true
+ROSENBROCK, 8, 1 1 1 1 1 1 1 1, 0.9, 1.1, 4e-3, 130000, false
+ROSENBROCK, 8, 1 1 1 1 1 1 1 1, 0.9, 1.1, 3e-3, 8000, true
+ROSENBROCK, 16, 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1, 0.9, 1.1, 2e-1, 430000, false
+ROSENBROCK, 16, 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1, 0.9, 1.1, 3e-1, 29000, true
 POWELL, 4, 0 0 0 0, 4, 5, 5e-2, 11800, false
-POWELL, 4, 0 0 0 0, 4, 5, 4e-3, 2000, true
+POWELL, 4, 0 0 0 0, 4, 5, 4e-3, 2200, true
+POWELL, 8, 0 0 0 0 0 0 0 0, 4, 5, 7e-2, 37000, false
+POWELL, 8, 0 0 0 0 0 0 0 0, 4, 5, 4e-2, 8500, true
 CIGAR, 2, 0 0, 2, 3, 5e-5, 240, false
 SPHERE, 2, 0 0, 2, 3, 5e-4, 200, false
 ELLI, 2, 0 0, 3, 4, 1e-4, 350, false
diff --git a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.nelder_mead.csv b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.nelder_mead.csv
index b70eb6b..15dcfcc 100644
--- a/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.nelder_mead.csv
+++ b/commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/std_test_func.simplex.nelder_mead.csv
@@ -31,29 +31,25 @@
 # Caveat: Some tests are commented out (cf. JIRA: MATH-1552).
 #
 PARABOLA, 8, 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 700, false
-PARABOLA, 8, 0 0 0 0 0 0 0 0, 20, 40, 1e-4, 6000, true
+PARABOLA, 16, 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0, 20, 40, 5e-4, 3600, false
 ROSENBROCK, 2, 1 1, 0.9, 1.1, 1e-4, 110, false
-ROSENBROCK, 2, 1 1, 0.9, 1.1, 1e-4, 140, true
-POWELL, 4, 0 0 0 0, 4, 5, 4e-3, 290, false
-POWELL, 4, 0 0 0 0, 4, 5, 4e-3, 380, true
+ROSENBROCK, 4, 1 1 1 1, 0.9, 1.1, 1e-4, 400, false
+ROSENBROCK, 8, 1 1 1 1 1 1 1 1, 0.9, 1.1, 3e-4, 2200, false
+ROSENBROCK, 16, 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1, 0.9, 1.1, 5e-1, 7500, false
+POWELL, 4, 0 0 0 0, 4, 5, 5e-3, 290, false
+POWELL, 8, 0 0 0 0 0 0 0 0, 4, 5, 3e-2, 1300, false
 CIGAR, 2, 0 0, 2, 3, 5e-5, 100, false
 SPHERE, 2, 0 0, 2, 3, 5e-4, 80, false
 ELLI, 2, 0 0, 3, 4, 1e-4, 350, false
 TWO_AXES, 2, 0 0, 3, 4, 1e-4, 120, false
 CIG_TAB, 2, 0 0, 3, 4, 1e-3, 100, false
-CIG_TAB, 2, 0 0, 3, 4, 1e-3, 115, true
 TABLET, 2, 0 0, 3, 4, 2e-4, 100, false
 SUM_POW, 2, 0 0, 3, 4, 1e-2, 75, false
 ACKLEY, 2, 0 0, 2, 4, 1e-6, 145, false
-ACKLEY, 2, 0 0, 2, 4, 1e-6, 160, true
 RASTRIGIN, 2, 0 0, 6, 10, 5e-5, 105, false
-RASTRIGIN, 2, 0 0, 6, 10, 5e-5, 140, true
 GRIEWANK, 2, 0 0, 2, 3, 1e-1, 75, false
-GRIEWANK, 2, 0 0, 2, 3, 1e-1, 90, true
 LEVY, 2, 1 1, 0.9, 1.1, 1e-3, 75, false
-LEVY, 2, 1 1, 0.9, 1.1, 1e-3, 80, true
 SCHWEFEL, 2, 420.9687 420.9687, 9, 11, 1, 85, false
-SCHWEFEL, 2, 420.9687 420.9687, 9, 11, 1, 90, true
 ZAKHAROV, 2, 0 0, 3, 4, 1e-4, 85, false
 PERM, 2, 1 2, 0.9, 1.1, 2e-3, 110, false
 STYBLINSKI_TANG, 2, -2.903534 -2.903534, 1, 2, 1e-4, 85, false