@PublicationReference(author={"William H. Press","Saul A. Teukolsky","William T. Vetterling","Brian P. Flannery"},title="Numerical Recipes in C, Second Edition",type=Book,year=1992,pages={411,412},notes="Section 10.5",url="http://www.nrbook.com/a/bookcpdf.php") @PublicationReference(author="Wikipedia",title="Nelder-Mead method",type=WebPage,year=2008,url="http://en.wikipedia.org/wiki/Nelder-Mead_method") public class FunctionMinimizerNelderMead extends AbstractAnytimeFunctionMinimizer<Vector,java.lang.Double,Evaluator<? super Vector,java.lang.Double>>
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_MAX_ITERATIONS
Default max iterations, 4000
|
static double |
DEFAULT_TOLERANCE
Default tolerance, 0.001
|
initialGuess, result, tolerancedata, keepGoingmaxIterationsDEFAULT_ITERATION, iteration| Constructor and Description |
|---|
FunctionMinimizerNelderMead()
Creates a new instance of FunctionMinimizerNelderMead
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
cleanupAlgorithm()
Called to clean up the learning algorithm's state after learning has
finished.
|
protected Vector |
computeSimplexInputSum()
Computes the sum of input values in the simplex
|
protected boolean |
initializeAlgorithm()
Called to initialize the learning algorithm's state based on the
data that is stored in the data field.
|
java.util.ArrayList<DefaultInputOutputPair<Vector,java.lang.Double>> |
initializeSimplex(InputOutputPair<Vector,java.lang.Double> initialPoint,
double offsetValue)
Initializes the simplex about the initial point
|
protected boolean |
step()
Called to take a single step of the learning algorithm.
|
getInitialGuess, getResult, getTolerance, setInitialGuess, setResult, setToleranceclone, getData, getKeepGoing, learn, setData, setKeepGoing, stopgetMaxIterations, isResultValid, setMaxIterationsaddIterativeAlgorithmListener, fireAlgorithmEnded, fireAlgorithmStarted, fireStepEnded, fireStepStarted, getIteration, getListeners, removeIterativeAlgorithmListener, setIteration, setListenersequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitlearnclonegetMaxIterations, setMaxIterationsaddIterativeAlgorithmListener, getIteration, removeIterativeAlgorithmListenerisResultValid, stoppublic static final double DEFAULT_TOLERANCE
public static final int DEFAULT_MAX_ITERATIONS
public FunctionMinimizerNelderMead()
protected boolean initializeAlgorithm()
AbstractAnytimeBatchLearnerinitializeAlgorithm in class AbstractAnytimeBatchLearner<Evaluator<? super Vector,java.lang.Double>,InputOutputPair<Vector,java.lang.Double>>public java.util.ArrayList<DefaultInputOutputPair<Vector,java.lang.Double>> initializeSimplex(InputOutputPair<Vector,java.lang.Double> initialPoint, double offsetValue)
initialPoint - Initial point about which to initialize the simplexoffsetValue - Value to use to spread out the vertices of the simplexprotected boolean step()
AbstractAnytimeBatchLearnerstep in class AbstractAnytimeBatchLearner<Evaluator<? super Vector,java.lang.Double>,InputOutputPair<Vector,java.lang.Double>>protected void cleanupAlgorithm()
AbstractAnytimeBatchLearnercleanupAlgorithm in class AbstractAnytimeBatchLearner<Evaluator<? super Vector,java.lang.Double>,InputOutputPair<Vector,java.lang.Double>>protected Vector computeSimplexInputSum()