Wolfe Conditions
   HOME

TheInfoList



OR:

In the unconstrained minimization problem, the Wolfe conditions are a set of inequalities for performing inexact line search, especially in quasi-Newton methods, first published by Philip Wolfe in 1969. In these methods the idea is to find \min_x f(\mathbf) for some smooth f\colon\mathbb R^n\to\mathbb R. Each step often involves approximately solving the subproblem \min_ f(\mathbf_k + \alpha \mathbf_k) where \mathbf_k is the current best guess, \mathbf_k \in \mathbb R^n is a search direction, and \alpha \in \mathbb R is the step length. The inexact line searches provide an efficient way of computing an acceptable step length \alpha that reduces the
objective function In mathematical optimization and decision theory, a loss function or cost function (sometimes also called an error function) is a function that maps an event or values of one or more variables onto a real number intuitively representing some "cost ...
'sufficiently', rather than minimizing the objective function over \alpha\in\mathbb R^+ exactly. A line search algorithm can use Wolfe conditions as a requirement for any guessed \alpha, before finding a new search direction \mathbf_k.


Armijo rule and curvature

A step length \alpha_k is said to satisfy the ''Wolfe conditions'', restricted to the direction \mathbf_k, if the following two inequalities hold: with 0 < c_1 < c_2 < 1. (In examining condition (ii), recall that to ensure that \mathbf_k is a descent direction, we have \mathbf_k^\nabla f(\mathbf_k) < 0 , as in the case of gradient descent, where \mathbf_k = -\nabla f(\mathbf_k), or Newton–Raphson, where \mathbf_k = -\mathbf^ \nabla f(\mathbf_k) with \mathbf positive definite.) c_1 is usually chosen to be quite small while c_2 is much larger; Nocedal and Wright give example values of c_1 = 10^ and c_2 = 0.9 for Newton or quasi-Newton methods and c_2=0.1 for the nonlinear conjugate gradient method. Inequality i) is known as the Armijo rule and ii) as the curvature condition; i) ensures that the step length \alpha_k decreases f 'sufficiently', and ii) ensures that the slope has been reduced sufficiently. Conditions i) and ii) can be interpreted as respectively providing an upper and lower bound on the admissible step length values.


Strong Wolfe condition on curvature

Denote a univariate function \varphi restricted to the direction \mathbf_k as \varphi(\alpha)=f(\mathbf_k+\alpha\mathbf_k). The Wolfe conditions can result in a value for the step length that is not close to a minimizer of \varphi. If we modify the curvature condition to the following, then i) and iii) together form the so-called strong Wolfe conditions, and force \alpha_k to lie close to a critical point of \varphi.


Rationale

The principal reason for imposing the Wolfe conditions in an optimization algorithm where \mathbf_ = \mathbf_k + \alpha \mathbf_k is to ensure convergence of the gradient to zero. In particular, if the cosine of the angle between \mathbf_k and the gradient, \cos \theta_k = \frac is bounded away from zero and the i) and ii) conditions hold, then \nabla f(\mathbf_k) \rightarrow 0 . An additional motivation, in the case of a quasi-Newton method, is that if \mathbf_k = -B_k^ \nabla f(\mathbf_k) , where the matrix B_k is updated by the BFGS or DFP formula, then if B_k is positive definite ii) implies B_ is also positive definite.


Comments

Wolfe's conditions are more complicated than Armijo's condition, and a gradient descent algorithm based on Armijo's condition has a better theoretical guarantee than one based on Wolfe conditions (see the sections on "Upper bound for learning rates" and "Theoretical guarantee" in the Backtracking line search article).


See also

* Backtracking line search


References


Further reading

* * {{Optimization algorithms, unconstrained Mathematical optimization