|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.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
public abstract class AbstractLeastSquaresOptimizer
Base class for implementing least-squares optimizers. It provides methods for error estimation.
| Field Summary |
|---|
| Fields inherited from class org.apache.commons.math3.optim.BaseOptimizer |
|---|
evaluations, iterations |
| Constructor Summary | |
|---|---|
protected |
AbstractLeastSquaresOptimizer(ConvergenceChecker<PointVectorValuePair> checker)
|
| Method Summary | |
|---|---|
protected double |
computeCost(double[] residuals)
Computes the cost. |
double[][] |
computeCovariances(double[] params,
double threshold)
Get the covariance matrix of the optimized parameters. |
protected double[] |
computeResiduals(double[] objectiveValue)
Computes the residuals. |
double[] |
computeSigma(double[] params,
double covarianceSingularityThreshold)
Computes an estimate of the standard deviation of the parameters. |
protected RealMatrix |
computeWeightedJacobian(double[] params)
Computes the weighted Jacobian matrix. |
double |
getChiSquare()
Get a Chi-Square-like value assuming the N residuals follow N distinct normal distributions centered on 0 and whose variances are the reciprocal of the weights. |
double |
getRMS()
Gets the root-mean-square (RMS) value. |
RealMatrix |
getWeightSquareRoot()
Gets the square-root of the weight matrix. |
PointVectorValuePair |
optimize(OptimizationData... optData)
Stores data and performs the optimization. |
protected void |
setCost(double cost)
Sets the cost. |
| Methods inherited from class org.apache.commons.math3.optim.nonlinear.vector.JacobianMultivariateVectorOptimizer |
|---|
computeJacobian |
| Methods inherited from class org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer |
|---|
computeObjectiveValue, getTarget, getTargetSize, getWeight |
| Methods inherited from class org.apache.commons.math3.optim.BaseMultivariateOptimizer |
|---|
getLowerBound, getStartPoint, getUpperBound |
| Methods inherited from class org.apache.commons.math3.optim.BaseOptimizer |
|---|
doOptimize, getConvergenceChecker, getEvaluations, getIterations, getMaxEvaluations, getMaxIterations, incrementEvaluationCount, incrementIterationCount |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected AbstractLeastSquaresOptimizer(ConvergenceChecker<PointVectorValuePair> checker)
checker - Convergence checker.| Method Detail |
|---|
protected RealMatrix computeWeightedJacobian(double[] params)
params - Model parameters at which to compute the Jacobian.
DimensionMismatchException - if the Jacobian dimension does not
match problem dimension.protected double computeCost(double[] residuals)
residuals - Residuals.
computeResiduals(double[])public double getRMS()
public double getChiSquare()
public RealMatrix getWeightSquareRoot()
protected void setCost(double cost)
cost - Cost value.
public double[][] computeCovariances(double[] params,
double threshold)
JTJ matrix, where J is the
Jacobian matrix.
The threshold parameter is a way for the caller to specify
that the result of this computation should be considered meaningless,
and thus trigger an exception.
params - Model parameters.threshold - Singularity threshold.
SingularMatrixException - if the covariance matrix cannot be computed (singular problem).
public double[] computeSigma(double[] params,
double covarianceSingularityThreshold)
sd(a[i]) ~= sqrt(C[i][i]), where a[i]
is the optimized value of the i-th parameter, and C is
the covariance matrix.
params - Model parameters.covarianceSingularityThreshold - Singularity threshold (see
computeCovariances).
SingularMatrixException - if the covariance matrix cannot be computed.
public PointVectorValuePair optimize(OptimizationData... optData)
throws TooManyEvaluationsException
optimize in class JacobianMultivariateVectorOptimizeroptData - Optimization data. The following data will be looked for:
TooManyEvaluationsException - if the maximal number of
evaluations is exceeded.
DimensionMismatchException - if the initial guess, target, and weight
arguments have inconsistent dimensions.protected double[] computeResiduals(double[] objectiveValue)
objectiveValue - Value of the the objective function. This is
the value returned from a call to
computeObjectiveValue
(whose array argument contains the model parameters).
DimensionMismatchException - if params has a wrong
length.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||