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 2ccdf8d0029776ae794139ad83dda6eb61f8bef2 Author: Gilles Sadowski <gillese...@gmail.com> AuthorDate: Wed Aug 25 01:50:28 2021 +0200 MATH-1622: Simulated annealing variant of "NelderMeadTransform". --- .../legacy/optim/nonlinear/scalar/noderiv/NelderMeadTransform.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/NelderMeadTransform.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/NelderMeadTransform.java index 7cace7b..e94261d 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/NelderMeadTransform.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/optim/nonlinear/scalar/noderiv/NelderMeadTransform.java @@ -75,7 +75,7 @@ public class NelderMeadTransform @Override public UnaryOperator<Simplex> create(final MultivariateFunction evaluationFunction, final Comparator<PointValuePair> comparator, - final DoublePredicate unused) { + final DoublePredicate sa) { return original -> { // The simplex has n + 1 points if dimension is n. final int n = original.getDimension(); @@ -105,7 +105,9 @@ public class NelderMeadTransform -gamma, xWorst, evaluationFunction); - if (comparator.compare(expanded, reflected) < 0) { + if (comparator.compare(expanded, reflected) < 0 || + (sa != null && + sa.test(expanded.getValue() - reflected.getValue()))) { return original.replaceLast(expanded); } else { return original.replaceLast(reflected);