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 intcolsDeprecated.Number of columns of the jacobian matrix.protected doublecostDeprecated.Cost value (square root of the sum of the residuals).static intDEFAULT_MAX_COST_EVALUATIONSDeprecated.Default maximal number of cost evaluations allowed.protected double[]jacobianDeprecated.Jacobian matrix.protected WeightedMeasurement[]measurementsDeprecated.Array of measurements.protected EstimatedParameter[]parametersDeprecated.Array of parameters.protected double[]residualsDeprecated.Residuals array.protected introwsDeprecated.Number of rows of the jacobian matrix.
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractEstimator()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 voidestimate(EstimationProblem problem)Deprecated.Solve an estimation problem.doublegetChiSquare(EstimationProblem problem)Deprecated.Get the Chi-Square value.intgetCostEvaluations()Deprecated.Get the number of cost evaluations.double[][]getCovariances(EstimationProblem problem)Deprecated.Get the covariance matrix of unbound estimated parameters.intgetJacobianEvaluations()Deprecated.Get the number of jacobian evaluations.doublegetRMS(EstimationProblem problem)Deprecated.Get the Root Mean Square value.double[]guessParametersErrors(EstimationProblem problem)Deprecated.Guess the errors in unbound estimated parameters.protected voidincrementJacobianEvaluationsCounter()Deprecated.Increment the jacobian evaluations counter.protected voidinitializeEstimate(EstimationProblem problem)Deprecated.Initialization of the common parts of the estimation.voidsetMaxCostEval(int maxCostEval)Deprecated.Set the maximal number of cost evaluations allowed.protected voidupdateJacobian()Deprecated.Update the jacobian matrix.protected voidupdateResidualsAndCost()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 estimatordoes 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 estimatordoes 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 EstimationExceptionDeprecated.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:
getRMSin 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:
getCovariancesin 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:
guessParametersErrorsin 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
estimatemethod.- 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.getAllParametersmethod.- Specified by:
estimatein interfaceEstimator- Parameters:
problem- estimation problem to solve- Throws:
EstimationException- if the problem cannot be solved
-
-