Class GaussNewtonEstimator
 java.lang.Object

 org.apache.commons.math.estimation.AbstractEstimator

 org.apache.commons.math.estimation.GaussNewtonEstimator

 All Implemented Interfaces:
java.io.Serializable
,Estimator
@Deprecated public class GaussNewtonEstimator extends AbstractEstimator implements java.io.Serializable
Deprecated.as of 2.0, everything in package org.apache.commons.math.estimation has been deprecated and replaced by package org.apache.commons.math.optimization.generalThis class implements a solver for estimation problems.This class solves estimation problems using a weighted least squares criterion on the measurement residuals. It uses a GaussNewton algorithm.
 Since:
 1.2
 See Also:
 Serialized Form


Field Summary

Fields inherited from class org.apache.commons.math.estimation.AbstractEstimator
DEFAULT_MAX_COST_EVALUATIONS


Constructor Summary
Constructors Constructor Description GaussNewtonEstimator()
Deprecated.Simple constructor with default settings.GaussNewtonEstimator(int maxCostEval, double convergence, double steadyStateThreshold)
Deprecated.Simple constructor.

Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
estimate(EstimationProblem problem)
Deprecated.Solve an estimation problem using a least squares criterion.void
setConvergence(double convergence)
Deprecated.Set the convergence criterion threshold.void
setSteadyStateThreshold(double steadyStateThreshold)
Deprecated.Set the steady state detection threshold.
Methods inherited from class org.apache.commons.math.estimation.AbstractEstimator
getChiSquare, getCostEvaluations, getCovariances, getJacobianEvaluations, getRMS, guessParametersErrors, setMaxCostEval




Constructor Detail

GaussNewtonEstimator
public GaussNewtonEstimator()
Deprecated.Simple constructor with default settings.The estimator is built with default values for all settings.

GaussNewtonEstimator
public GaussNewtonEstimator(int maxCostEval, double convergence, double steadyStateThreshold)
Deprecated.Simple constructor.This constructor builds an estimator and stores its convergence characteristics.
An estimator is considered to have converged whenever either the criterion goes below a physical threshold under which improvements are considered useless or when the algorithm is unable to improve it (even if it is still high). The first condition that is met stops the iterations.
The fact an estimator has converged does not mean that the model accurately fits the measurements. It only means no better solution can be found, it does not mean this one is good. Such an analysis is left to the caller.
If neither conditions are fulfilled before a given number of iterations, the algorithm is considered to have failed and an
EstimationException
is thrown. Parameters:
maxCostEval
 maximal number of cost evaluations allowedconvergence
 criterion threshold below which we do not need to improve the criterion anymoresteadyStateThreshold
 steady state detection threshold, the problem has converged has reached a steady state ifFastMath.abs(J_{n}  J_{n1}) < J_{n} × convergence
, whereJ_{n}
andJ_{n1}
are the current and preceding criterion values (square sum of the weighted residuals of considered measurements).


Method Detail

setConvergence
public void setConvergence(double convergence)
Deprecated.Set the convergence criterion threshold. Parameters:
convergence
 criterion threshold below which we do not need to improve the criterion anymore

setSteadyStateThreshold
public void setSteadyStateThreshold(double steadyStateThreshold)
Deprecated.Set the steady state detection threshold.The problem has converged has reached a steady state if
FastMath.abs(J_{n}  J_{n1}) < J_{n} × convergence
, whereJ_{n}
andJ_{n1}
are the current and preceding criterion values (square sum of the weighted residuals of considered measurements). Parameters:
steadyStateThreshold
 steady state detection threshold

estimate
public void estimate(EstimationProblem problem) throws EstimationException
Deprecated.Solve an estimation problem using a least squares criterion.This method set the unbound parameters of the given problem starting from their current values through several iterations. At each step, the unbound parameters are changed in order to minimize a weighted least square criterion based on the measurements of the problem.
The iterations are stopped either when the criterion goes below a physical threshold under which improvement are considered useless or when the algorithm is unable to improve it (even if it is still high). The first condition that is met stops the iterations. If the convergence it not reached before the maximum number of iterations, an
EstimationException
is thrown. Specified by:
estimate
in interfaceEstimator
 Specified by:
estimate
in classAbstractEstimator
 Parameters:
problem
 estimation problem to solve Throws:
EstimationException
 if the problem cannot be solved See Also:
EstimationProblem

