Class NelderMead
java.lang.Object
org.apache.commons.math.optimization.direct.DirectSearchOptimizer
org.apache.commons.math.optimization.direct.NelderMead
- All Implemented Interfaces:
MultivariateRealOptimizer
This class implements the Nelder-Mead direct search method.
- Since:
- 1.2
- Version:
- $Revision: 1070725 $ $Date: 2011-02-15 02:31:12 +0100 (mar. 15 févr. 2011) $
- See Also:
-
Field Summary
Fields inherited from class org.apache.commons.math.optimization.direct.DirectSearchOptimizer
simplex
-
Constructor Summary
ConstructorsConstructorDescriptionBuild a Nelder-Mead optimizer with default coefficients.NelderMead
(double rho, double khi, double gamma, double sigma) Build a Nelder-Mead optimizer with specified coefficients. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
iterateSimplex
(Comparator<RealPointValuePair> comparator) Compute the next simplex of the algorithm.Methods inherited from class org.apache.commons.math.optimization.direct.DirectSearchOptimizer
evaluate, evaluateSimplex, getConvergenceChecker, getEvaluations, getIterations, getMaxEvaluations, getMaxIterations, incrementIterationsCounter, optimize, replaceWorstPoint, setConvergenceChecker, setMaxEvaluations, setMaxIterations, setStartConfiguration, setStartConfiguration
-
Constructor Details
-
NelderMead
public NelderMead()Build a Nelder-Mead optimizer with default coefficients.The default coefficients are 1.0 for rho, 2.0 for khi and 0.5 for both gamma and sigma.
-
NelderMead
public NelderMead(double rho, double khi, double gamma, double sigma) Build a Nelder-Mead optimizer with specified coefficients.- Parameters:
rho
- reflection coefficientkhi
- expansion coefficientgamma
- contraction coefficientsigma
- shrinkage coefficient
-
-
Method Details
-
iterateSimplex
protected void iterateSimplex(Comparator<RealPointValuePair> comparator) throws FunctionEvaluationException, OptimizationException Compute the next simplex of the algorithm.- Specified by:
iterateSimplex
in classDirectSearchOptimizer
- Parameters:
comparator
- comparator to use to sort simplex vertices from best to worst- Throws:
FunctionEvaluationException
- if the function cannot be evaluated at some pointOptimizationException
- if the algorithm fails to converge
-