Trust Region Step Evaluation¶
This module provides the machinery to evaluate different trust-region( -reflective) step proposals and select among them based on to their performance according to the quadratic approximation of the objective function
Functions Summary
|
Compute a step according to the solution of the trust-region subproblem. |
Functions
-
fides.trust_region.
trust_region
(x, g, hess, scaling, delta, dv, theta, lb, ub, subspace_dim, stepback_strategy, refine_stepback, logger)[source]¶ Compute a step according to the solution of the trust-region subproblem. If step-back is necessary, gradient and reflected trust region step are also evaluated in terms of their performance according to the local quadratic approximation
- Parameters
x (
numpy.ndarray
) – Current values of the optimization variablesg (
numpy.ndarray
) – Objective function gradient at xhess (
numpy.ndarray
) – (Approximate) objective function Hessian at xscaling (
scipy.sparse.csc.csc_matrix
) – Scaling transformation according to distance to boundarydelta (
float
) – Trust region radius, note that this applies after scaling transformationdv (
numpy.ndarray
) – derivative of scaling transformationtheta (
float
) – parameter regulating stepbacklb (
numpy.ndarray
) – lower optimization variable boundariesub (
numpy.ndarray
) – upper optimization variable boundariessubspace_dim (
fides.constants.SubSpaceDim
) – Subspace dimension in which the subproblem will be solved. Larger subspaces require more compute time but can yield higher quality step proposals.stepback_strategy (
fides.constants.StepBackStrategy
) – Strategy that is applied when the proposed step exceeds the optimization boundary.refine_stepback (
bool
) – If set to True, proposed steps that are computed via the specified stepback_strategy will be refined via optimization.logger (
logging.Logger
) – logging.Logger instance to be used for logging
- Return type
fides.steps.Step
- Returns
s: proposed step, ss: rescaled proposed step, qpval: expected function value according to local quadratic approximation, subspace: computed subspace for reuse if proposed step is not accepted, steptype: type of step that was selected for proposal