Magnitude profiles
Notice that in Fig. 4.13, the length of the arrows gets smaller closer to theobject. The way the magnitude of vectors in the field change is called the
magnitude profile. (The term MAGNITUDE PROFILE “magnitude profile” is used here because the
term “velocity profile” is used by control engineers to describe how a robot’s
motors actually accelerate and decelerate to produce a particular movement
without jerking.)
Consider the repulsive field in Fig. 4.12. Mathematically, the field can be
representedwith polar coordinates and the center of the field being the origin
(0,0):
Vdirection =
Vmagnitude = c
In that case, the magnitude was a constant value, c: the length of the arrows
was the same. This can be visualized with a plot of the magnitude
shown in Fig. 4.14a.
This profile says that the robot will run away (the direction it will run
is ) at the same velocity, no matter how close it is to the object, as long
as it is in the range of the obstacle. As soon as the robot gets out of range
of the obstacle, the velocity drops to 0.0, stopping the robot. The field is
essentially binary: the robot is either running away at a constant speed or
stopped. In practice there is a problem with a constant magnitude. It leads
to jerky motion on the perimeter of the range of the field. This is illustrated
when a robot is heading in a particular direction, then encounters an obstacle.
It runs away, leaving the field almost immediately, and turns back to its
original path, encounters the field again, and so on.
Magnitude profiles solve the problem of a constant magnitude. They also
REFLEXIVITY make it possible for a robot designer to represent reflexivity (that a response
should be proportional to the strength of a stimulus) and to create interesting
responses. Now consider the profile in Fig. 4.13c. It can be described as how
an observer would see a robot behave in that field: if the robot is far away
from the object, it will turn and move quickly towards it, then slow up to
keep from overshooting and hitting the object. Mathematically, this is called
a linear drop off , since the LINEAR DROP OFF rate atwhich the magnitude of the vectors drops off
can be plotted as a straight line. The formula for a straight line is y = mx+b,
where x is the distance and y is magnitude. b biases where the line starts,
and m is the slope (m = y
x
). Any value of m and b is acceptable. If it is not
specified, m = 1 or -1 (a 45 slope up or down) and b = 0 in linear functions.
The linear profile in Fig. 4.14b matches the desired behavior of the designer:
to have the robot react more, the closer it is. But it shares the problem
of the constant magnitude profile in the sharp transition to 0.0 velocity.
Therefore, another profile might be used to capture the need for a strong
EXPONENTIAL DROP reaction but with more of a taper. One such profile is a exponential drop off
OFF function, where the drop off is proportional to the square of the distance: for
every unit of distance away from the object, the force on the robot drops in
half. The exponential profile is shown in Fig. 4.14c.
As can be seen from the previous examples, almost any magnitude profile
is acceptable. The motivation for using magnitude profiles is to fine-tune the
behavior. It is important to note that the robot only computes the vectors
acting on it at its current location. The figures display the entire field for
all possible locations of the robot. The question then arises as to why do
the figures show an entire field over space? First, it aids visualizing what
the robot will do overall, not just at one particular time step. Second, since
fields are continuous representations, it simplifies confirming that the field is
correct and makes any abrupt transitions readily apparent.
No comments:
Post a Comment