6964 Commits

Author SHA1 Message Date
Gilles Sadowski
b89f677c67 Relax tolerance (unit tests). 2021-09-01 13:34:56 +02:00
Gilles Sadowski
6e11126615 Spurious "throws" clauses. 2021-09-01 11:25:20 +02:00
Gilles Sadowski
b222580737 Replace algorithm used in "best list" search.
Although efficient in terms of evaluations, "NelderMeadTransform" fails for
some higher-dimensional test functions.
2021-09-01 03:43:05 +02:00
Gilles Sadowski
f44cae3985 Upgrade dependency. 2021-08-28 03:19:57 +02:00
Gilles Sadowski
1811eeaf37 Unused "import". 2021-08-27 20:58:27 +02:00
Gilles Sadowski
bf1c2c214c Remove obsolete helper class for unit testing.
Retries are handled by the "surefire" plugin.
2021-08-27 19:16:03 +02:00
Gilles Sadowski
dd0acaa9ff Relax expectations (unit test). 2021-08-27 19:15:17 +02:00
Gilles Sadowski
6f33d5f0a7 Fix incorrect usage of "ROSENBROCK" test function (unit tests). 2021-08-27 18:35:47 +02:00
Gilles Sadowski
cc5ae51f98 Favouring the "expanded" simplex over the "reflected" one.
This modification decreases the number of function evaluations in several
test cases. Note however that the original description of the algorithm
uses the strict inequality...
2021-08-27 17:24:51 +02:00
Gilles Sadowski
f1ad9d1b00 Simplex search in higher-dimensional cases (unit test). 2021-08-27 05:37:49 +02:00
Gilles Sadowski
ca826ba76b Add (back) "POwELL" standard test function for optimizers. 2021-08-26 23:56:42 +02:00
Gilles Sadowski
f58da4abf5 Use default SA setup in "SimplexOptimizerTest" (unit test).
A single additional search finds the optimum of the test functions.
2021-08-26 02:05:15 +02:00
Gilles Sadowski
06ec7ad0bc MATH-1622: Simulated annealing entails at least one additional search.
Also ensure that the "best list" contains at least two points.
2021-08-26 01:39:46 +02:00
Gilles Sadowski
677f5f7a3f Input files for "SimplexOptimizerTest" (unit tests). 2021-08-25 01:51:34 +02:00
Gilles Sadowski
2ccdf8d002 MATH-1622: Simulated annealing variant of "NelderMeadTransform". 2021-08-25 01:50:28 +02:00
Gilles Sadowski
80a7eb1832 Change how simulated annealing affects the transformed simplex (cf. MATH-1622).
Compared with commit 97462b1a1b6f64ab10e06db331d5b6762d979aab, this commit is
more consistent with assumptions of the original (non-hybridized) algorithm.
2021-08-24 15:46:10 +02:00
Gilles Sadowski
c21a810558 Useless local variable. 2021-08-24 04:09:42 +02:00
Gilles Sadowski
f8d7476614 Input files for "SimplexOptimizerTest" (unit tests). 2021-08-24 01:28:43 +02:00
Gilles Sadowski
97462b1a1b MATH-1622: Simulated annealing variant of "MultiDirectionalTransform". 2021-08-24 01:18:16 +02:00
Alex Herbert
47904caeb8 Update exception fr locale to match changes to en locale 2021-08-23 07:40:55 +01:00
Alex Herbert
21f8008108 MATH-1627: Throw an exception when column or row sums are zero. 2021-08-22 21:43:52 +01:00
Alex Herbert
991314d461 Remove incorrect localization format for zero exception 2021-08-22 21:43:52 +01:00
Alex Herbert
dc639967c2 Fix localization formats used by ZeroException.
The ZeroException preprends zero to the arguments. The {0} corresponds
to zero. All arguments to be formatted must start at {1}.
2021-08-22 21:43:52 +01:00
Gilles Sadowski
fb314ef3df Spurious "throws" clauses. 2021-08-22 03:46:25 +02:00
Gilles Sadowski
9bb5791906 Redundant inner class. 2021-08-22 03:28:37 +02:00
Gilles Sadowski
f466637d82 Merge branch 'master' of https://gitbox.apache.org/repos/asf/commons-math 2021-08-22 02:32:10 +02:00
Gilles Sadowski
78fbc5f07c Update script for visual check of "SimplexOptimizerTest" debugging output.
Allow displaying negative values of the objective function.
2021-08-22 02:30:01 +02:00
Gilles Sadowski
1e7bce134f Adapt input files for "SimplexOptimizerTest" (unit tests).
The current tests are "baseline" (2D) cases.
Further work should check degradation with increased dimensionality.
2021-08-22 02:14:53 +02:00
Gilles Sadowski
14ebd93426 Relax expected number of evaluations (unit test).
Optimization is sensitive to the change from "AccurateMath" to "Math"
for computing the "pow" function used in "TestFunction.SUM_POW".
2021-08-22 01:10:04 +02:00
Alex Herbert
bdb4160b00 Add variance tests for zero weights
Update javadoc for the behaviour when input weights are zero.

This issue was found when checking the sonar report for the variance
class which has a potential divide by zero if the weights sum to zero.
2021-08-21 14:37:13 +02:00
Alex Herbert
033c7e2c39 Correct verification of zero length values and weights
This bug was found when checking the sonar report for the variance class
which uses MathArrays.verifyValues.
2021-08-21 14:37:13 +02:00
Alex Herbert
5245a685a0 sonar fix: Handle variance=0 in skewness computation for input array 2021-08-21 14:37:13 +02:00
Alex Herbert
30aa597f1e sonar fix: Ensure checkFeasableCount is not negative.
Change loop condition to 'i <= checkFeasableCount' from 'i <
checkFeasableCount + 1'

This ensures the loop to identify a new feasible column (RealMatrix
arxk) always executes at least once even with checkFeasibleCount at the
limit of 0 or Integer.MAX_VALUE.
2021-08-21 14:37:13 +02:00
Alex Herbert
228a832532 Javadoc typo 2021-08-21 14:37:13 +02:00
Alex Herbert
75c7377e47 Only restore interrupted state if necessary 2021-08-21 14:37:13 +02:00
Alex Herbert
26e4a737f7 Javadoc typo 2021-08-21 14:37:13 +02:00
Alex Herbert
1bdb310ffa Sonar fix: restore thread interrupted state 2021-08-21 14:37:13 +02:00
Gilles Sadowski
3ba0221c26 Simplify data format for "SimplexOptimizerTest" (randomized) input.
This commit also makes the following changes (unit tests):
 * Add/remove/rename/rewrite test functions.
2021-08-21 14:33:30 +02:00
Alex Herbert
569e35ddbe Add variance tests for zero weights
Update javadoc for the behaviour when input weights are zero.

This issue was found when checking the sonar report for the variance
class which has a potential divide by zero if the weights sum to zero.
2021-08-21 10:04:49 +01:00
Alex Herbert
a2efd4fad5 Correct verification of zero length values and weights
This bug was found when checking the sonar report for the variance class
which uses MathArrays.verifyValues.
2021-08-21 09:58:13 +01:00
Alex Herbert
3f7de0eb1e sonar fix: Handle variance=0 in skewness computation for input array 2021-08-21 09:11:05 +01:00
Alex Herbert
1fdd55981d sonar fix: Ensure checkFeasableCount is not negative.
Change loop condition to 'i <= checkFeasableCount' from 'i <
checkFeasableCount + 1'

This ensures the loop to identify a new feasible column (RealMatrix
arxk) always executes at least once even with checkFeasibleCount at the
limit of 0 or Integer.MAX_VALUE.
2021-08-21 08:16:20 +01:00
Alex Herbert
69bab476a5 Javadoc typo 2021-08-20 22:23:58 +01:00
Alex Herbert
5201f2c5fa Only restore interrupted state if necessary 2021-08-20 21:19:23 +01:00
Alex Herbert
7ee70ef474 Javadoc typo 2021-08-20 13:44:15 +01:00
Alex Herbert
09dd29e56d Sonar fix: restore thread interrupted state 2021-08-20 13:38:10 +01:00
Alex Herbert
7813ecb115 Update plugin order in pom
checkstyle
spotbugs
pmd
2021-08-19 00:35:58 +01:00
Alex Herbert
86624912ff Update distribution source archive specification
Copy from commons-rng multi-module project
2021-08-19 00:29:56 +01:00
Alex Herbert
b6acad285d Remove checksum from installed artifacts
This creates md5 and sha1 checksums for the dist-archive pom in the
local maven repository. It is not required.
2021-08-19 00:19:54 +01:00
Alex Herbert
c8b45d43fa Add jars to dist archive 2021-08-19 00:19:54 +01:00