Page 140 - Introduction to AI Robotics
P. 140
123
4.4 Potential Fields Methodologies
describe here, so instead a generalization will be presented. Potential field
VECTORS styles of behaviors always use vectors to represent behaviors and vector sum-
VECTOR SUMMATION mation to combine vectors from different behaviors to produce an emergent
behavior.
4.4.1 Visualizing potential fields
The first tenet of a potential fields architecture is that the motor action of a
behavior must be represented as a potential field. A potential field is an array,
or field, of vectors. As described earlier, a vector is a mathematical construct
which consists of a magnitude and a direction. Vectors are often used to
represent a force of some sort. They are typically drawn as an arrow, where
the length of the arrow is the magnitude of the force and the angle of the
arrow is the direction. Vectors are usually represented with a boldface capital
letter, for example, V. A vector can also be written as a tuple (m;d ), where m
stands for magnitude and d for direction. By convention the magnitude is a
real number between 0.0 and 1, but the magnitude can be any real number.
ARRAY REPRESENTING The array represents a region of space. In most robotic applications, the
A FIELD space is in two dimensions, representing a bird’s eye view of the world just
like a map. The map can be divided into squares, creating a (x,y) grid. Each
element of the array represents a square of space. Perceivable objects in the
world exert a force field on the surrounding space. The force field is anal-
ogous to a magnetic or gravitation field. The robot can be thought of as a
particle that has entered the field exuded by an object or environment. The
vector in each element represents the force, both the direction to turn and the
magnitude or velocity to head in that direction, a robot would feel if it were
at that particular spot. Potential fields are continuous because it doesn’t mat-
ter how small the element is; at each point in space, there is an associated
vector.
Fig. 4.12 shows how an obstacle would exert a field on the robot and make
it run away. If the robot is close to the obstacle, say within 5 meters, it is inside
the potential field and will fell a force that makes it want to face directly away
from the obstacle (if it isn’t already) and move away. If the robot is not within
range of the obstacle, it just sits there because there is no force on it. Notice
that the field represents what the robot should do (the motor schema) based
on if the robot perceives an obstacle (the perceptual schema). The field isn’t
concerned with how the robot came to be so close to the obstacle; the robot
feels the same force if it were happening to move within range or if it was
just sitting there and someone put their hand next to the robot.