Steepest descent
From DDWiki
Definition: The "Steepest Descent Method" is a specific type of unconstrained multivariate optimization which determines the minima of a continuous function. This method analyzes the gradient of a specific function at a specific initial point, then determines the minima points of the function along that gradient direction, settles on the global minima along that gradient direction, and sets the next point to that global minima. The user then checks to see if the change in value from the initial point to the new point is within terminating criteria, and if not the method is repeated with the new point placing the initial point.
English Definition: The "Steepest Descent Method" takes a function of multiple variables that have no constraint on the range of variables and an initial point, calculates the direction where the function descends the fastest from that point, and finds all the points along that direction where the function does not descend anymore. The new point is compared to the original point and if the difference of function values of those points is small enough then we assume that the function has found a point of optimization (in this case a minima).
Contents |
General Equation
The general equation for the steepest descent method is:
where
is the current vector of independent variables
in the function
,
is the transpose of the gradient of the function
, and αi is the stepsize for that specific point which defines how much we move in the direction of the gradient to approach the new point of independent variables
.
Algorithm
Given:
containing
independent variables AND
as the initial set of independent variables:
- Determine the gradient of the function
and the specific gradient
at point
.
- Plug point
and
into the general equation to solve for
in terms of αi.
- Redefine
in terms of
to result in f(αi).
- Optimize f(αi) by setting f'(αi) = 0 to acheive critical values of αi.
- Compare f(αi) for each α value found in step 4 and select the global minima αi.
- Plug αi into the general equation and solve for
.
- If
, where ε is your termination criteria, then
is your local minima values. Otherwise set
and repeat steps 1-7.
Example
Consider the following unconstrained optimization problem:
Minimize
Convergence check: is
?
In this case
. In most cases ε is a very small value, usually ε=10-6, and so we have not reached termination criteria yet. Therefore we set
and repeat steps 1-7 again.
After enough iterations we will approach the final solution, as shown in the graph:
Advantages and Disadvantages
The "Steepest Descent" method is a very effective method even with a simple algorithm. It can efficiently locate a minima with as few steps as necessary, and the availability of a variable stepsize allows us to move along the gradient without missing the local minima.
However, certain equations can cause problems for this method. If we are at a point with multiple minima and maxima along a gradient direction of equal value, we may not be able to definately determine the global minima. Also, depending on the value of ε the termination criteria may not settle on the local minima if the function decreases at a very small rate along our gradient direction. These problems can usually be fixed by altering the starting point and ε values.



