Class TrustRegionUpdateDogleg_F64<S extends DMatrix>

All Implemented Interfaces:

public class TrustRegionUpdateDogleg_F64<S extends DMatrix>
extends Object
implements TrustRegionBase_F64.ParameterUpdate<S>

Approximates the optimal solution to the Trust Region's sub-problem using a piecewise linear approach [1,2]. The first part of the "dogleg" is a line along the steepest descent line. The second part moves towards the solution to unconstrained sub-problem, a.k.a. Gauss-Newton solution. Positive-definite Hessians are handled using standard equations. Negative semi-definite systems will take a Cauchy step to avoid blowing up, see [2]. A more elegant solution to negative definite systems is outline in [1] but hasn't been implemented yet due to complexity.

  • [1] Jorge Nocedal,and Stephen J. Wright "Numerical Optimization" 2nd Ed. Springer 2006
  • [2] Peter Abeles, "DDogleg Technical Report: Nonlinear Optimization R1", July 2018