You are viewing an older version (1.17.1).Go to latest (1.18.0)
{ } Raw JSON

bundles / scipy 1.17.1 / scipy / optimize / _linesearch / scalar_search_wolfe1

function

scipy.optimize._linesearch:scalar_search_wolfe1

source: /scipy/optimize/_linesearch.py:100

Signature

def scalar_search_wolfe1(phi, derphi, phi0 = None, old_phi0 = None, derphi0 = None, c1 = 0.0001, c2 = 0.9, amax = 50, amin = 1e-08, xtol = 1e-14)

Summary

Scalar function search for alpha that satisfies strong Wolfe conditions

Extended Summary

alpha > 0 is assumed to be a descent direction.

Parameters

phi : callable phi(alpha)

Function at point alpha

derphi : callable phi'(alpha)

Objective function derivative. Returns a scalar.

phi0 : float, optional

Value of phi at 0

old_phi0 : float, optional

Value of phi at previous point

derphi0 : float, optional

Value derphi at 0

c1 : float, optional

Parameter for Armijo condition rule.

c2 : float, optional

Parameter for curvature condition rule.

amax, amin : float, optional

Maximum and minimum step size

xtol : float, optional

Relative tolerance for an acceptable step.

Returns

alpha : float

Step size, or None if no suitable step was found

phi : float

Value of phi at the new point alpha

phi0 : float

Value of phi at alpha=0

Notes

Uses routine DCSRCH from MINPACK.

Parameters c1 and c2 must satisfy 0 < c1 < c2 < 1 as described in [1].

Aliases

  • scipy.optimize._linesearch.scalar_search_wolfe1