Class TrustRegionLeastSqBase_F64<S extends DMatrix,HM extends HessianMath>
java.lang.Object
org.ddogleg.optimization.GaussNewtonBase_F64<ConfigTrustRegion,HM>
org.ddogleg.optimization.trustregion.TrustRegionBase_F64<S,HM>
org.ddogleg.optimization.trustregion.TrustRegionLeastSqBase_F64<S,HM>
- All Implemented Interfaces:
VerbosePrint
- Direct Known Subclasses:
UnconLeastSqTrustRegion_F64
,UnconLeastSqTrustRegionSchur_F64
public abstract class TrustRegionLeastSqBase_F64<S extends DMatrix,HM extends HessianMath>
extends TrustRegionBase_F64<S,HM>
Base class for all least squares trust region implementations.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.ddogleg.optimization.trustregion.TrustRegionBase_F64
TrustRegionBase_F64.ParameterUpdate<S extends DMatrix>
Nested classes/interfaces inherited from class org.ddogleg.optimization.GaussNewtonBase_F64
GaussNewtonBase_F64.Mode
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected FunctionNtoM
protected LossFunction
Given the residuals it computes the "Loss" or costprotected @Nullable LossFunctionGradient
Gradient of the loss function.protected DMatrixRMaj
protected DMatrixRMaj
Fields inherited from class org.ddogleg.optimization.trustregion.TrustRegionBase_F64
gradientNorm, parameterUpdate, tmp_p
Fields inherited from class org.ddogleg.optimization.GaussNewtonBase_F64
config, ftest_val, fx, gradient, gtest_val, hessian, hessianScaling, mode, p, postUpdateAdjuster, sameStateAsCost, totalFullSteps, totalSelectSteps, verbose, verboseLevel, x, x_next
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
TrustRegionLeastSqBase_F64
(TrustRegionBase_F64.ParameterUpdate<S> parameterUpdate, HM hessian) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
acceptNewState
(boolean converged, double fx_candidate) protected double
This function was created for least squares which requires special set up due to the Loss functionprotected double
cost
(DMatrixRMaj x) Computes the function's value at xvoid
setLoss
(LossFunction loss, LossFunctionGradient lossGradient) Specifies the loss function.Methods inherited from class org.ddogleg.optimization.trustregion.TrustRegionBase_F64
checkConvergenceFTest, computeStep, configure, considerCandidate, getConfig, initialize, setVerbose, solveCauchyStepLength, updateDerivates
Methods inherited from class org.ddogleg.optimization.GaussNewtonBase_F64
applyHessianScaling, checkConvergenceGTest, computeHessianScaling, computeHessianScaling, computePredictedReduction, functionGradientHessian, initialize, iterate, mode, setVerbose, undoHessianScalingOnParameters
-
Field Details
-
functionResiduals
-
residuals
-
lossFunc
Given the residuals it computes the "Loss" or cost -
lossFuncGradient
Gradient of the loss function. If null then squared error is assumed and this step can be skipped. -
storageLossGradient
-
-
Constructor Details
-
TrustRegionLeastSqBase_F64
protected TrustRegionLeastSqBase_F64(TrustRegionBase_F64.ParameterUpdate<S> parameterUpdate, HM hessian)
-
-
Method Details
-
setLoss
Specifies the loss function. -
computeCostAtInitialization
protected double computeCostAtInitialization()Description copied from class:TrustRegionBase_F64
This function was created for least squares which requires special set up due to the Loss function- Overrides:
computeCostAtInitialization
in classTrustRegionBase_F64<S extends DMatrix,
HM extends HessianMath>
-
acceptNewState
protected boolean acceptNewState(boolean converged, double fx_candidate) - Overrides:
acceptNewState
in classTrustRegionBase_F64<S extends DMatrix,
HM extends HessianMath>
-
cost
Description copied from class:TrustRegionBase_F64
Computes the function's value at x- Specified by:
cost
in classTrustRegionBase_F64<S extends DMatrix,
HM extends HessianMath> - Parameters:
x
- parameters- Returns:
- function value
-