Conjugate Gradient (CG) optimization method.
Inheritance Hierarchy Namespace: Accord.Math.OptimizationAccord.Math (in Accord.Math.dll) Version: 3.8.0
Syntaxpublic class ConjugateGradient : BaseGradientOptimizationMethod, IGradientOptimizationMethod, IOptimizationMethod, IOptimizationMethod<double[], double>, IGradientOptimizationMethod<double[], double>, IFunctionOptimizationMethod<double[], double>, IOptimizationMethod<ConjugateGradientCode>, IOptimizationMethod<double[], double, ConjugateGradientCode>, ISupportsCancellation
Public Class ConjugateGradient Inherits BaseGradientOptimizationMethod Implements IGradientOptimizationMethod, IOptimizationMethod, IOptimizationMethod(Of Double(), Double), IGradientOptimizationMethod(Of Double(), Double), IFunctionOptimizationMethod(Of Double(), Double), IOptimizationMethod(Of ConjugateGradientCode), IOptimizationMethod(Of Double(), Double, ConjugateGradientCode), ISupportsCancellationRequest Example View Source
The ConjugateGradient type exposes the following members.
Constructors Properties Name Description EvaluationsGets the number of function evaluations performed in the last call to
Minimize.
FunctionGets or sets the function to be optimized.
(Inherited from BaseOptimizationMethod.) GradientGets or sets a function returning the gradient vector of the function to be optimized for a given value of its free parameters.
(Inherited from BaseGradientOptimizationMethod.) IterationsGets the number of iterations performed in the last call to
Minimize.
MaxIterationsGets or sets the maximum number of iterations to be performed during optimization. Default is 0 (iterate until convergence).
MethodGets or sets the conjugate gradient update method to be used during optimization.
NumberOfVariablesGets the number of variables (free parameters) in the optimization problem.
(Inherited from BaseOptimizationMethod.) SearchesGets the number of linear searches performed in the last call to
Minimize.
SolutionGets the current solution found, the values of the parameters which optimizes the function.
(Inherited from BaseOptimizationMethod.) StatusGet the exit code returned in the last call to the
Maximizeor
Minimizemethods.
TokenGets or sets a cancellation token that can be used to stop the learning algorithm while it is running.
(Inherited from BaseOptimizationMethod.) ToleranceGets or sets the relative difference threshold to be used as stopping criteria between two iterations. Default is 0 (iterate until convergence).
ValueGets the output of the function at the current
Solution.
(Inherited from BaseOptimizationMethod.) Top Methods Events Name Description ProgressOccurs when progress is made during the optimization.
Top Extension Methods Name Description HasMethodChecks whether an object implements a method with the given name.
(Defined by ExtensionMethods.) IsEqualCompares two objects for equality, performing an elementwise comparison if the elements are vectors or matrices.
(Defined by Matrix.) To(Type) Overloaded.Converts an object into another type, irrespective of whether the conversion can be done at compile time or not. This can be used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) ToT Overloaded.Converts an object into another type, irrespective of whether the conversion can be done at compile time or not. This can be used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) Top RemarksIn mathematics, the conjugate gradient method is an algorithm for the numerical solution of particular systems of linear equations, namely those whose matrix is symmetric and positive- definite. The conjugate gradient method is an iterative method, so it can be applied to sparse systems that are too large to be handled by direct methods. Such systems often arise when numerically solving partial differential equations. The nonlinear conjugate gradient method generalizes the conjugate gradient method to nonlinear optimization (Wikipedia, 2011).
T
The framework implementation of this method is based on the original FORTRAN source code by Jorge Nocedal (see references below). The original FORTRAN source code of CG+ (for large scale unconstrained problems) is available at http://users.eecs.northwestern.edu/~nocedal/CG+.html and had been made freely available for educational or commercial use. The original authors expect that all publications describing work using this software quote the (Gilbert and Nocedal, 1992) reference given below.
References:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4