trust_region⚓︎
Trust-region deterministic optimization methods.
This module implements a trust-region optimizer with optional BFGS Hessian approximation and restart support.
TrustRegion
⚓︎
Bases: OptimizerBase
Trust-region Optimizer.
The class supports exact Hessian trust-region subproblems (iterative or
CG-Steihaug) and optional BFGS Hessian approximation via hess='BFGS'.
__init__(x0, fun, jac, hess, method='iterative', args=(), bounds=None, callback=None, **options)
⚓︎
Initialize a trust-region optimizer instance.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
x0
|
ndarray
|
Initial parameter vector. |
required |
fun
|
callable
|
Objective function. |
required |
jac
|
callable
|
Gradient function. |
required |
hess
|
callable or {BFGS}
|
Hessian function, or |
required |
method
|
(iterative, CG - Steihaug)
|
Trust-region subproblem solver. |
'iterative'
|
args
|
tuple
|
Extra positional arguments passed to the wrapped callables. |
()
|
bounds
|
sequence
|
Lower and upper bounds for each state variable. |
None
|
callback
|
callable
|
Callback invoked after successful updates. |
None
|
**options
|
Trust-region configuration, plus everything :class: |
{}
|
check_convergence()
⚓︎
The projected gradient, the trust-region radius, and any custom criterion.
log_columns()
⚓︎
The row of the iteration log: iteration, objective, trust radius, reduction ratio, whether the step hit the boundary.
update_step()
⚓︎
Perform one trust-region step with optional radius reductions.