org.apache.commons.math3.optim.nonlinear.vector.jacobian
Class GaussNewtonOptimizer
java.lang.Object
org.apache.commons.math3.optim.BaseOptimizer<PAIR>
org.apache.commons.math3.optim.BaseMultivariateOptimizer<PointVectorValuePair>
org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer
org.apache.commons.math3.optim.nonlinear.vector.JacobianMultivariateVectorOptimizer
org.apache.commons.math3.optim.nonlinear.vector.jacobian.AbstractLeastSquaresOptimizer
org.apache.commons.math3.optim.nonlinear.vector.jacobian.GaussNewtonOptimizer
public class GaussNewtonOptimizer
- extends AbstractLeastSquaresOptimizer
Gauss-Newton least-squares solver.
This class solve a least-square problem by solving the normal equations
of the linearized problem at each iteration. Either LU decomposition or
QR decomposition can be used to solve the normal equations. LU decomposition
is faster but QR decomposition is more robust for difficult problems.
- Since:
- 2.0
- Version:
- $Id: GaussNewtonOptimizer.java 7721 2013-02-14 14:07:13Z CardosoP $
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
GaussNewtonOptimizer
public GaussNewtonOptimizer(ConvergenceChecker<PointVectorValuePair> checker)
- Simple constructor with default settings.
The normal equations will be solved using LU decomposition.
- Parameters:
checker
- Convergence checker.
GaussNewtonOptimizer
public GaussNewtonOptimizer(boolean useLU,
ConvergenceChecker<PointVectorValuePair> checker)
- Parameters:
useLU
- If true
, the normal equations will be solved
using LU decomposition, otherwise they will be solved using QR
decomposition.checker
- Convergence checker.
doOptimize
public PointVectorValuePair doOptimize()
- Performs the bulk of the optimization algorithm.
- Specified by:
doOptimize
in class BaseOptimizer<PointVectorValuePair>
- Returns:
- the point/value pair giving the optimal value of the
objective function.
Copyright © 2016 CNES. All Rights Reserved.