<< Chapter < Page | Chapter >> Page > |
By their nature, steepest descent and hill climbing methods use only local information. This isbecause the update from a point $x\left[k\right]$ depends only on the value of $x\left[k\right]$ and on the value of its derivative evaluated at that point. This can be a problem,since if the objective function has many minima, the steepest descent algorithm may become “trapped” at a minimum that is not (globally)the smallest. These are called local minima. To see how this can happen, consider the problem of finding the value of $x$ that minimizes the function
Applying the chain rule, the derivative is
where
is the formal derivative of $\left|x\right|$ . Solving directly for the minimum point is nontrivial (try it!). Yet implementing a steepest descentsearch for the minimum can be done in a straightforward manner using the iteration
To be concrete, replace the update equation in
polyconverge.m
with
x(k+1)=x(k)-mu*exp(-0.1*abs(x(k)))*(cos(x(k))...
-0.1* sin(x(k))*sign(x(k)));
One way to understand the behavior of steepest descent algorithms is to plot the error surface , which is basically a plot of the objective as a function of the variablethat is being optimized. [link] (a) displays clearly the single global minimum of the objective function [link] while [link] (b) shows the many minima of the objective function defined by [link] . As will be clear to anyone who has attempted Exercise [link] , initializing within any one of the valleys causes the algorithmto descend to the bottom of that valley. Although true steepest descent algorithms can never climb over a peak to enter another valley(even if the minimum there is lower) it can sometimes happen in practice when there is a significant amount of noise inthe measurement of the downhill direction.
Essentially, the algorithm gradually descends the error surface by moving in the (locally)downhill direction, and different initial estimates may lead to different minima. Thisunderscores one of the limitations of steepest descent methods—if there are many minima, then it is important to initialize near an acceptable one. In someproblems such prior information may easily be obtained, while in others it may be truly unknown.
The examples of this section are somewhat simple because they involve static functions. Most applications incommunication systems deal with signals that evolve over time, and the next section applies thesteepest descent idea in a dynamic setting to the problem of Automatic Gain Control (AGC). The AGC provides a simple settingin which all three of the major issues in optimization must be addressed: setting the goal, choosing a method of solution, andverifying that the method is successful.
Notification Switch
Would you like to follow the 'Software receiver design' conversation and receive update notifications?