Click or drag to resize

VariableMetricMinimizer Class

Class VariableMetricMinimizer uses the Broyden-Fletcher-Goldfarb-Shanno variable metric algorithm to minimize multivariable functions.
Inheritance Hierarchy
SystemObject
  CenterSpace.NMath.CoreMinimizerBase
    CenterSpace.NMath.CoreVariableMetricMinimizer

Namespace:  CenterSpace.NMath.Core
Assembly:  NMath (in NMath.dll) Version: 7.4
Syntax
[SerializableAttribute]
public class VariableMetricMinimizer : MinimizerBase, 
	IMultiVariableDMinimizer, ICloneable

The VariableMetricMinimizer type exposes the following members.

Constructors
  NameDescription
Public methodVariableMetricMinimizer
Default constructor.
Public methodVariableMetricMinimizer(Double)
Constructs a GoldenMinimizer instance with the given error tolerance.
Public methodVariableMetricMinimizer(Int32)
Constructs a GoldenMinimizer instance with the given maximum number of iterations.
Public methodVariableMetricMinimizer(Double, Int32)
Constructs a GoldenMinimizer instance with the given maximum number of iterations.
Top
Properties
  NameDescription
Public propertyError
Gets the error associated with the mimimum just computed.
(Inherited from MinimizerBase.)
Public propertyHessian
Gets the estimated Hessian matrix for the target function. The Hessian matrix for a function is the square matrix of second-order partial derivative.
Public propertyIterations
Gets the number of iterations used in the estimate of the mimimum just computed.
(Inherited from MinimizerBase.)
Public propertyMaxIterations
Gets and sets the maximum number of iterations used in computing minima estimates.
(Inherited from MinimizerBase.)
Public propertyMaxIterationsMet
Returns true if the minimum just computed stopped because the maximum number of iterations was reached; otherwise, false.
(Inherited from MinimizerBase.)
Public propertyTolerance
Gets and sets the error tolerance used in computing minima estimates.
(Inherited from MinimizerBase.)
Public propertyToleranceMet
Returns true if the minimum just computed stopped because the error tolerance was reached; otherwise, false.
(Inherited from MinimizerBase.)
Top
Methods
  NameDescription
Public methodClone
Creates a deep copy of self.
(Overrides MinimizerBaseClone.)
Public methodMinimize(DoubleFunctional, DoubleVector)
Minimizes the given function near the given starting point, using the given array of partial derivatives.
Public methodMinimize(MultiVariableFunction, MultiVariableFunction, DoubleVector) Obsolete.
Minimizes the given function near the given starting point, using the given array of partial derivatives.
Top
Fields
  NameDescription
Protected fielderror_
The current error.
(Inherited from MinimizerBase.)
Protected fielditer_
The current number of iterations performed.
(Inherited from MinimizerBase.)
Protected fieldmax_
The maximum number of iterations.
(Inherited from MinimizerBase.)
Protected fieldtolerance_
The error tolerance.
(Inherited from MinimizerBase.)
Top
Remarks
Like conjugate gradient methods, variable metric methods calculate gradients using the partial derivatives, but storage is less efficient—order N^2 storage, versus order a few times N . However, variable metric methods predate conjugate gradient methods, and are still widely used.
Iteration stops when either the estimated error is less than a specified error tolerance, or a specified maximum number of iterations is reached.
See Also