Class AbstractEstimator
- java.lang.Object
-
- org.apache.commons.math.estimation.AbstractEstimator
-
- All Implemented Interfaces:
Estimator
- Direct Known Subclasses:
GaussNewtonEstimator
,LevenbergMarquardtEstimator
@Deprecated public abstract class AbstractEstimator extends java.lang.Object implements Estimator
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.generalBase class for implementing estimators.This base class handles the boilerplates methods associated to thresholds settings, jacobian and error estimation.
- Since:
- 1.2
- Version:
- $Revision: 990655 $ $Date: 2010-08-29 23:49:40 +0200 (dim. 29 août 2010) $
-
-
Field Summary
Fields Modifier and Type Field Description protected int
cols
Deprecated.Number of columns of the jacobian matrix.protected double
cost
Deprecated.Cost value (square root of the sum of the residuals).static int
DEFAULT_MAX_COST_EVALUATIONS
Deprecated.Default maximal number of cost evaluations allowed.protected double[]
jacobian
Deprecated.Jacobian matrix.protected WeightedMeasurement[]
measurements
Deprecated.Array of measurements.protected EstimatedParameter[]
parameters
Deprecated.Array of parameters.protected double[]
residuals
Deprecated.Residuals array.protected int
rows
Deprecated.Number of rows of the jacobian matrix.
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractEstimator()
Deprecated.Build an abstract estimator for least squares problems.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description abstract void
estimate(EstimationProblem problem)
Deprecated.Solve an estimation problem.double
getChiSquare(EstimationProblem problem)
Deprecated.Get the Chi-Square value.int
getCostEvaluations()
Deprecated.Get the number of cost evaluations.double[][]
getCovariances(EstimationProblem problem)
Deprecated.Get the covariance matrix of unbound estimated parameters.int
getJacobianEvaluations()
Deprecated.Get the number of jacobian evaluations.double
getRMS(EstimationProblem problem)
Deprecated.Get the Root Mean Square value.double[]
guessParametersErrors(EstimationProblem problem)
Deprecated.Guess the errors in unbound estimated parameters.protected void
incrementJacobianEvaluationsCounter()
Deprecated.Increment the jacobian evaluations counter.protected void
initializeEstimate(EstimationProblem problem)
Deprecated.Initialization of the common parts of the estimation.void
setMaxCostEval(int maxCostEval)
Deprecated.Set the maximal number of cost evaluations allowed.protected void
updateJacobian()
Deprecated.Update the jacobian matrix.protected void
updateResidualsAndCost()
Deprecated.Update the residuals array and cost function value.
-
-
-
Field Detail
-
DEFAULT_MAX_COST_EVALUATIONS
public static final int DEFAULT_MAX_COST_EVALUATIONS
Deprecated.Default maximal number of cost evaluations allowed.- See Also:
- Constant Field Values
-
measurements
protected WeightedMeasurement[] measurements
Deprecated.Array of measurements.
-
parameters
protected EstimatedParameter[] parameters
Deprecated.Array of parameters.
-
jacobian
protected double[] jacobian
Deprecated.Jacobian matrix.This matrix is in canonical form just after the calls to
updateJacobian()
, but may be modified by the solver in the derived class (theLevenberg-Marquardt estimator
does this).
-
cols
protected int cols
Deprecated.Number of columns of the jacobian matrix.
-
rows
protected int rows
Deprecated.Number of rows of the jacobian matrix.
-
residuals
protected double[] residuals
Deprecated.Residuals array.This array is in canonical form just after the calls to
updateJacobian()
, but may be modified by the solver in the derived class (theLevenberg-Marquardt estimator
does this).
-
cost
protected double cost
Deprecated.Cost value (square root of the sum of the residuals).
-
-
Constructor Detail
-
AbstractEstimator
protected AbstractEstimator()
Deprecated.Build an abstract estimator for least squares problems.The maximal number of cost evaluations allowed is set to its default value
DEFAULT_MAX_COST_EVALUATIONS
.
-
-
Method Detail
-
setMaxCostEval
public final void setMaxCostEval(int maxCostEval)
Deprecated.Set the maximal number of cost evaluations allowed.- Parameters:
maxCostEval
- maximal number of cost evaluations allowed- See Also:
estimate(org.apache.commons.math.estimation.EstimationProblem)
-
getCostEvaluations
public final int getCostEvaluations()
Deprecated.Get the number of cost evaluations.- Returns:
- number of cost evaluations
-
getJacobianEvaluations
public final int getJacobianEvaluations()
Deprecated.Get the number of jacobian evaluations.- Returns:
- number of jacobian evaluations
-
updateJacobian
protected void updateJacobian()
Deprecated.Update the jacobian matrix.
-
incrementJacobianEvaluationsCounter
protected final void incrementJacobianEvaluationsCounter()
Deprecated.Increment the jacobian evaluations counter.
-
updateResidualsAndCost
protected void updateResidualsAndCost() throws EstimationException
Deprecated.Update the residuals array and cost function value.- Throws:
EstimationException
- if the number of cost evaluations exceeds the maximum allowed
-
getRMS
public double getRMS(EstimationProblem problem)
Deprecated.Get the Root Mean Square value. Get the Root Mean Square value, i.e. the root of the arithmetic mean of the square of all weighted residuals. This is related to the criterion that is minimized by the estimator as follows: if c if the criterion, and n is the number of measurements, then the RMS is sqrt (c/n).- Specified by:
getRMS
in interfaceEstimator
- Parameters:
problem
- estimation problem- Returns:
- RMS value
- See Also:
Estimator.guessParametersErrors(EstimationProblem)
-
getChiSquare
public double getChiSquare(EstimationProblem problem)
Deprecated.Get the Chi-Square value.- Parameters:
problem
- estimation problem- Returns:
- chi-square value
-
getCovariances
public double[][] getCovariances(EstimationProblem problem) throws EstimationException
Deprecated.Get the covariance matrix of unbound estimated parameters.- Specified by:
getCovariances
in interfaceEstimator
- Parameters:
problem
- estimation problem- Returns:
- covariance matrix
- Throws:
EstimationException
- if the covariance matrix cannot be computed (singular problem)
-
guessParametersErrors
public double[] guessParametersErrors(EstimationProblem problem) throws EstimationException
Deprecated.Guess the errors in unbound estimated parameters.Guessing is covariance-based, it only gives rough order of magnitude.
- Specified by:
guessParametersErrors
in interfaceEstimator
- Parameters:
problem
- estimation problem- Returns:
- errors in estimated parameters
- Throws:
EstimationException
- if the covariances matrix cannot be computed or the number of degrees of freedom is not positive (number of measurements lesser or equal to number of parameters)- See Also:
Estimator.getRMS(EstimationProblem)
-
initializeEstimate
protected void initializeEstimate(EstimationProblem problem)
Deprecated.Initialization of the common parts of the estimation.This method must be called at the start of the
estimate
method.- Parameters:
problem
- estimation problem to solve
-
estimate
public abstract void estimate(EstimationProblem problem) throws EstimationException
Deprecated.Solve an estimation problem.The method should set the parameters of the problem to several trial values until it reaches convergence. If this method returns normally (i.e. without throwing an exception), then the best estimate of the parameters can be retrieved from the problem itself, through the
EstimationProblem.getAllParameters
method.- Specified by:
estimate
in interfaceEstimator
- Parameters:
problem
- estimation problem to solve- Throws:
EstimationException
- if the problem cannot be solved
-
-