Page 80 - Anatomy of a Robot
P. 80
02_200256_CH02/Bergren 4/17/03 11:24 AM Page 65
HOW CAN WE ALTER THE DESIGN OF THE
SYSTEM TO AFFECT ITS PERFORMANCE? CONTROL SYSTEMS 65
An LMS algorithm is relatively straightforward for the following reasons:
We can keep the step sizes in the vector S(t) as constants. If the step sizes vary
between 0 and 1, the system response speed varies from glacial to jack rabbit. We
must recognize that jack-rabbit control systems have too high a frequency and are
vulnerable to overshoot, ringing, and instabilities. A good bet is to get your robot
working first and then back down the values of S(t).
We can alter the step sizes in the vector S(t) to keep the rest state of the system
quiet. The way in which this is done must be chosen with great care to avoid
adding noise to the system. One good bet is to decrease the step sizes as the sys-
tem starts to quiet down, and increase the step sizes (within reason) as the system
begins to get noisy and active.
We can alter the step sizes in such a way that they are always a power of 2 (like
1/8, 1/4, 1/2, 2, 4, 8, 16, and so on). Multiplying (or dividing) by a power of 2 only
requires a simple shift operation in binary arithmetic. Restricting the step sizes to
such values can make LMS computations much simpler for smaller microcom-
puters to execute.
We can set the step size to 0 when the cost function is small enough. This will pre-
vent thrashing around near the optimal solution. Such thrashing around can be
caused by input noise and by minor arithmetic effects. Picture an elevator open-
ing its doors. The passengers are no longer interested in getting exactly to floor
level as long as it’s close enough. The passengers would be truly upset if the ele-
vator control system was still moving up and down a tiny bit trying to get it just
right. Instead, elevator control systems stop all action when the doors open. We
can achieve a similar effect by setting the step size to 0. We will look at other
safety considerations later.
NON-LMS COST FUNCTIONS
A control algorithm, like LMS, has behavioral characteristics that will affect how our
robot will behave:
LMS control systems tend to react slower to inputs. This usually means they have
slower reaction times.
LMS control systems are more stable in the face of noise on the inputs.
The math is not difficult and does not consume valuable computer resources.