[frames] | no frames]

# Module backtrack

source code

Backtracking line search algorithm.

This file is part of the minfx optimisation library.

 Functions
numpy rank-1 array
 backtrack(func, args, x, f, g, p, a_init=1.0, rho=0.5, c=0.0001, max_iter=500) Backtracking line search. source code
 Variables
__package__ = `'minfx.line_search'`

Imports: dot

 Function Details

### backtrack(func, args, x, f, g, p, a_init=1.0, rho=0.5, c=0.0001, max_iter=500)

source code

Backtracking line search.

Procedure 3.1, page 41, from 'Numerical Optimization' by Jorge Nocedal and Stephen J. Wright, 1999, 2nd ed.

Requires the gradient vector at point xk.

# Internal variables

ai - The step length at line search iteration i. xai - The parameter vector at step length ai. fai - The function value at step length ai.

Parameters:
• `func` (func) - The function to minimise.
• `args` (tuple) - The tuple of arguments to supply to the functions func.
• `x` (numpy rank-1 array) - The parameter vector.
• `f` (float) - The function value at the point x.
• `g` (numpy rank-1 array) - The gradient vector at the point x.
• `p` (numpy rank-1 array) - The descent direction.
• `a_init` (float) - Initial step length.
• `rho` (float) - The step length scaling factor (should be between 0 and 1).
• `c` (float) - Constant between 0 and 1 determining the slope for the sufficient decrease condition.
• `maxiter` (int) - The maximum number of iterations.
Returns: numpy rank-1 array
The parameter vector, minimised along the direction xk + ak.pk, to be used at k+1.

 Generated by Epydoc 3.0.1 on Thu Jul 3 13:38:04 2014 http://epydoc.sourceforge.net