@PublicationReference(author={"Y. Liu","C. Storey"}, title="Efficient generalized conjugate gradient algorithms, Part 1: theory", type=Journal, publication="Journal of Optimization Theory and Applications", pages={129,137}, year=1991, notes={"I\'ve seen independent analyses that indicate that this is the most efficient CG algorithm out there.","For example, http://www.ici.ro/camo/neculai/cg.ppt"}) public class FunctionMinimizerLiuStorey extends FunctionMinimizerConjugateGradient
DEFAULT_LINE_MINIMIZER, DEFAULT_MAX_ITERATIONS, DEFAULT_TOLERANCE, lineFunctioninitialGuess, result, tolerancedata, keepGoingmaxIterationsDEFAULT_ITERATION, iteration| Constructor and Description |
|---|
FunctionMinimizerLiuStorey()
Creates a new instance of FunctionMinimizerLiuStorey
|
FunctionMinimizerLiuStorey(LineMinimizer<?> lineMinimizer)
Creates a new instance of FunctionMinimizerLiuStorey
|
FunctionMinimizerLiuStorey(LineMinimizer<?> lineMinimizer,
Vector initialGuess,
double tolerance,
int maxIterations)
Creates a new instance of FunctionMinimizerLiuStorey
|
| Modifier and Type | Method and Description |
|---|---|
protected double |
computeScaleFactor(Vector gradientCurrent,
Vector gradientPrevious)
Computes the conjugate gradient parameter for the particular update
scheme.
|
cleanupAlgorithm, getLineMinimizer, initializeAlgorithm, setLineMinimizer, stepgetInitialGuess, 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 FunctionMinimizerLiuStorey()
public FunctionMinimizerLiuStorey(LineMinimizer<?> lineMinimizer)
lineMinimizer - Work-horse algorithm that minimizes the function along a directionpublic FunctionMinimizerLiuStorey(LineMinimizer<?> lineMinimizer, Vector initialGuess, double tolerance, int maxIterations)
initialGuess - Initial guess about the minimum of the methodtolerance - Tolerance of the minimization algorithm, must be >= 0.0, typically ~1e-10lineMinimizer - Work-horse algorithm that minimizes the function along a directionmaxIterations - Maximum number of iterations, must be >0, typically ~100protected double computeScaleFactor(Vector gradientCurrent, Vector gradientPrevious)
FunctionMinimizerConjugateGradientcomputeScaleFactor in class FunctionMinimizerConjugateGradientgradientCurrent - Gradient at the current evaluation pointgradientPrevious - Gradient at the previous evaluation point