6938 Commits

Author SHA1 Message Date
Gilles Sadowski
59e9604dd8 Consistency check to ensure that "TestFunction" implementations are correct.
Call is commented out (it is mostly intended for a one-time visual check).
2021-08-12 01:59:37 +02:00
Gilles Sadowski
f29ebd2e13 More test functions. 2021-08-12 01:56:44 +02:00
Gilles Sadowski
6a7b4ccbe3 Drop repeated tests inside "SimplexOptimizerTest.Task" class.
Explicitly specify the initial simplex side (as test parameter).
2021-08-11 19:58:28 +02:00
Gilles Sadowski
9b7a2c8edc Delete spurious files.
Files were committed by mistake.
2021-08-11 13:30:44 +02:00
Gilles Sadowski
aea043cffd Function optimum is rarely found: Disable (comment out) test. 2021-08-10 12:44:01 +02:00
Gilles Sadowski
59573134d8 Reduce build failure frequency. 2021-08-10 12:43:23 +02:00
Gilles Sadowski
04d1b46525 Unused "import". 2021-08-10 12:42:13 +02:00
Gilles Sadowski
1fb5411a81 Move tests for expected exceptions to "SimplexOptimizerTest" class. 2021-08-10 11:47:59 +02:00
Gilles Sadowski
9fd6725d51 MATH-1623: Add unit tests for "HedarFukushimaTransform".
Adapt input files for the "simulated annealing" option.

Class "SimplexOptimizerHedarFukushimaTest" superseded by input from CSV.
2021-08-10 11:06:14 +02:00
Gilles Sadowski
bdd6bc4d13 Unused "import". 2021-08-10 10:56:17 +02:00
Gilles Sadowski
061c6d2c30 Unused field. 2021-08-10 10:22:12 +02:00
Gilles Sadowski
858ecda80f MATH-1623: Remove duplicate unit tests.
Standard test functions are now handled by class "SimplexOptimizerTest".
2021-08-10 01:07:31 +02:00
Gilles Sadowski
fdbb8b98f5 MATH-1623: Add parameterized unit tests for simplex-based optimizers. 2021-08-09 18:27:00 +02:00
Gilles Sadowski
c40a30678b Unused "import". 2021-08-09 18:22:39 +02:00
Gilles Sadowski
40984b8275 Use JUnit 5 engine (unit tests).
Unmodified classes rely on JUnit 5 compatibility layer with JUnit 4.

Note: Upgrading to "maven-surefire-plugin" to version 3.0.0-M5 was
necessary since prior to 3.0.0-M4 support for "rerunFailingTestsCount"
was dropped on JUnit 5.
2021-08-09 17:59:01 +02:00
Gilles Sadowski
7ce320700a Web links to reference definitions of test functions.
Changed "TestFunction.DIFF_POW" to match the definition.
2021-08-09 17:56:52 +02:00
Gilles Sadowski
a2491345b8 Remove duplicate function (unit tests). 2021-08-09 16:10:48 +02:00
Gilles Sadowski
43ac946382 Delete unused test data files. 2021-08-09 11:54:38 +02:00
Gilles Sadowski
970834f9b9 Delete unused test data files. 2021-08-09 11:40:21 +02:00
Gilles Sadowski
1bc6e8de25 "Simplex.TransformFactory" must extend "OptimizationData". 2021-08-09 10:31:07 +02:00
Gilles Sadowski
c04dd79f0f Preserve RNG state integrity in case unit tests would be run concurrently. 2021-08-09 10:27:34 +02:00
Gilles Sadowski
1444d2d8d1 Replace deprecated calls. 2021-08-07 22:31:39 +02:00
Gilles Sadowski
26fc13cf66 Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-math 2021-08-07 15:34:48 +02:00
Gilles Sadowski
9246814e59 Track changes. 2021-08-07 15:26:37 +02:00
Gilles Sadowski
92a3b0c040 Replace calls to deprecated method. 2021-08-07 15:26:02 +02:00
Alex Herbert
dd294d7c91 Track changes
Closes #194
2021-08-07 13:39:12 +01:00
Gilles Sadowski
50ca244b38 MATH-1622: Hybridation of simplex-based search with simulated annealing (SA).
Class "SimulatedAnnealing" provides user-defined input ("OptimizationData").
Behaviour of "SimplexOptimizer" depends on whether SA is activated (if yes,
each "iteration" is further split in "epoch" stages).
The "Simplex.TransformFactory" interface is changed to allow passing the SA
acceptance test ("Metropolis" rule).

The "SimplexOptimizer" is furter refactored (cf. MATH-1614) so that the
steps (in method "doOptimize") clearly stand out as
 1. Setup and iteration (optionally with simulated annealing).
 2. Simplex transformation rule.
 3. Convergence check.
 4. "Best list" search.

This commit also contains the following modifications:
 * "TestFunction": Override "toString" (for display in unit tests).
 * "Simplex"
   - Self-documenting names for factories.
   - Utility methods: "centroid", "asList", "replaceLast".
   - Unit tests.
 * "MultiDirectionalTransform":
   - Use common utility methods.
   - Fix missing sort in "transform" method.
   - Check validity of constructor parameters.
   - Parameter names to match the equivalent in "NelderMeadMeadTransform".
 * Adapt unit test classes to the updated API of class "Simplex".
 * "PointValuePair":
   - "final".
   - Implements "hashCode".
2021-08-07 14:38:46 +02:00
Gilles Sadowski
d26470b139 Delete unused test data files.
The same data is still available in directory
  commons-math-legacy/src/test/resources/org/apache/commons/math4/legacy/fitting/leastsquares
2021-08-07 14:38:46 +02:00
Gilles Sadowski
b167967767 Standard test functions defined in a dedicated factory ("TestFunction" enum). 2021-08-07 14:38:46 +02:00
Gilles Sadowski
a791c576d5 Relax tolerance (unit test). 2021-08-07 14:38:46 +02:00
Gilles Sadowski
790ceb5ade Nit: Information message in unit test assertions. 2021-08-07 14:38:46 +02:00
Gilles Sadowski
fd3313724e Move utility method "newPoint" to "Simplex" class.
Reduce visibility of utility methods to "package-private".
2021-08-07 14:38:46 +02:00
Gilles Sadowski
de99fd0384 Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-math 2021-08-07 14:38:04 +02:00
Arturo Bernal
3aab631272 MATH-1573 - Redundant local variable 2021-08-07 13:37:21 +01:00
Alex Herbert
9e017dfbea Add XML schema 2021-08-07 13:24:59 +01:00
Alex Herbert
17ee804605 Track changes 2021-08-07 13:24:14 +01:00
Arturo Bernal
1c8d8da63a MATH-1572: Simplify conditional expressions
* Simplify bitwise
* Simplify boolean expression
* Simplify conditional expression
* Redundant 'if' statement
2021-08-07 13:19:32 +01:00
Alex Herbert
14d5d0c2d1 Ignore site-content in modules 2021-08-07 13:14:26 +01:00
Gilles Sadowski
b5d21665ff MATH-1621: Override "equals" and "toString". 2021-08-04 06:47:27 +02:00
Gilles Sadowski
771a21815b Unused "import". 2021-08-03 16:20:11 +02:00
Gilles Sadowski
6bc63d4f3f Suppress obsolete unit test.
Class "ConstantContinuousDistribution" has been removed from "Commons Statistics".
2021-08-03 03:22:47 +02:00
Gilles Sadowski
3df6d879e7 Implement "ConstantContinuousDistribution" as a local workaround.
Corresponding code to be removed from "Commons Statistics" (no other known use case).
2021-08-02 02:31:37 +02:00
Gilles Sadowski
8e63d421bf Adapt to "Commons Statistics" API change. 2021-08-02 01:36:34 +02:00
Gilles Sadowski
f49e77a806 Delete spurious file.
File was committed by mistake.
2021-07-28 13:01:18 +02:00
Gilles Sadowski
e39ad3c984 Userguide. 2021-07-20 18:46:16 +02:00
Gilles Sadowski
9433847128 Track changes. 2021-07-20 18:07:20 +02:00
Gilles Sadowski
9dbceb0ed1 MATH-1616: Refactor "EmpiricalDistribution".
* No default bin count (cf. MATH-1462).
* No data loading from external sources (file, URL).
* No data abstraction layer.
* Return defensive copies of the internal state.
* Make class immutable.
* Allow user-defined within-bin kernel.
2021-07-20 18:07:12 +02:00
Gilles Sadowski
8968416790 MATH-1379: Fix "LoessInterpolator" in case of unevenly spaced samples.
Thanks to Richard Wilkinson.
2021-07-19 18:43:59 +02:00
Ng Tsz Sum
30a2593c2c MATH-1617: Ensure that "hashCode" is consistent with "equals". 2021-07-19 17:43:51 +02:00
Gilles Sadowski
8cd59b991e Replace deprecated calls. 2021-07-19 15:02:29 +02:00