You are on page 1of 6

Neural Network Structure for Navigation Using Potential Fields

Edward S. Plumed
Stanford University
Durand 104, Department of Electrical Engineering, Stanford, CA, 94305-4055
e-mail : plumer@il.stanford.edu

Abstract
A neural network technique for vehicle navigation and control in the presence of obstacles has been
developed. A potential function which peaks at the surface of obstacles and has its minimum at the
proper vehicle destination is computed using a network structure. The field is guaranteed not to have
spurious local minima and does not have the property of flattening-out far from the goal. A feedforward
neural network is used to control the steering of the vehicle using local field information. The network
is trained in an obstacle free space to follow the negative gradient of the field, after which the network
is able to control and navigate the truck to its target destination in a space of obstacles which may be
stationary or movable.

1 Introduction
The methods of backpropagation and backpropagation-through-time [8,6]are useful in many neural-control
applications such as the truck-backer described by Nguyen and Widrow [SI.This paper examines a compu-
tationally efficient method of modifying the truck-backing system to permit vehicle control in the presence
of obstacles.
Path-planning and obstacle avoidance have been approached using a variety of techniques, among which
are methods based on computing an artificial potential field in the operational space. This idea was proposed
by Khatib [l] and has been used successfully by others as well [2,4,10,9].
The analytical nature of the artificial
potential field used by Khatib does not lend itself directly to a neural network implementation. However,
the concept of low-level control and navigation based on such potential fields is quite useful and motivates
the technique for truck-backing presented in this paper.
A hybrid-network technique for truck navigation based on potential fields, which has been previously
demonstrated by the author [7],is presented here. The technique involves the real-time calculation of a
potential field using a network structure. A multi-layer feedforward neural network is trained to use local
potential field information to control truck steering.

2 Network Structure for Computing Navigational Field


The role of the potential field is to distribute information about obstacle and goal locations throughout
operational space, thus providing local information about how t o solve the global navigation problem. A
field is developed which is a measure of the penalty associated with a given location in obstacle space. The
field level decreases towards the goal, rises sharply near obstacles, and contains no spurious local minima.

Navigational Space Representation - In this work, navigation takes place within a 2 dimensional
operational space. The space is partitioned by a rectangular lattice with spacing 6 into grid-squares whose
centers are at lattice points. A particular lattice point or square is denoted by ni,, = ( i 6 , j b ) . The set of
grid-squares intersecting obstacles is denoted by 0.The set of possible target destinations for the truck is
called the goal and is denoted by G. Finally, the level of a potential field at the lattice point n i j is denoted
by @i,j.
'Supported by NASA Fellowship NGT-50642

/92 $3.00 0 1992IEEE


0-7803-0559-0 1-327

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.
This representation, and the proposed algorithm, presumes that obstacle locations within the operational
space are known, although they may be moving. This information can come from an over-head camera or
inferred by some other means and stored in memory.
The regular representation of obstacles on a grid permits computation of the potential field by a set
of simple, identical processors arranged in a rectangular array (one processor associated with each lattice
point, ni,j). Each processor receives information as to whether the associated grid square contains an obstacle
(ni,j E 0),a goal point (nij E G), or is in free space. The processor then computes the local level of the
potential field, @id, by interacting dynamically with its 8 nearest neighbors.
The processing array is composed of two layers, one that computes an intermediate “barrier potential
field” and a second layer which computes the desired “naviagational potential field”.

Barrier-Potential Field - The barrier-potential field, atj,is designed only to spread information about
obstacle locations to surrounding nodes and therefore ignores the location of the goal points. The relaxation
equations are:

When the process has converged, the resulting barrier potential field, @cj,
decays geometrically away
are used to control the effective
from obstacles. The geometric ratio, a,and the maximum barrier level,
radius of influence of obstacles. A sample barrier potential field is given in figure l a .

Navigational Potential Field - Once @fjhas reached steady-state, the navigational potential field,
@cj,is computed using the following relaxation calculations:

The resulting navigational potential field, in effect, gives a measure of a “generalized distance” from each
lattice point to the goal. The measure consists of the weighted sum of the distance from the point to the
g o d along the “optimal” path and the cumulative barrier potential, atj, along that path. The potential
field, atj, has the effect of stretching out the distance metric in the vicinity of obstacles, hence favoring
paths which steer clear of obstacles. The large value of @Eaz prevents the paths defined by the gradient
of the field from ever “punching through” an obstacle rather than going around it, no matter the length of
the resulting path. Alternatively, some form of switching logic may be used to prevent the m h ( ) operation

1-328

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.
from choosing a neighbor which is an element of 0.A sample navigational potential field is illustrated in
figure lb.

Figure 1: Potential fields (a = 0.6 and @%,, = 50). (a) Bam‘er field @fj (b) Navigational field atj.

A number of desirable properties of this two-layer technique have been proved by the author [7].First,
the iterative calculations for the barrier and navigational fields can be shown to converge to a unique set of
values from any initial condition of the field values.
Second, the resulting field is guaranteed to have no spurious local minima which could trap the truck
en-route. The problem of local minima, especially “uphill” of large concave obstacles, has been discussed by
Volpe and Khosla [9]. The problem of local minima in previous methods, arose from the fact that the barrier
potential field was computed and added to an independently computed basin of attraction around the goal.
In the twdayered method presented here, the navigational field is computed by cumulatively incorporating
the barrier potential field.
Finally, the gradient of the field outside of the “radius of influence” of obstacles is approximately uniform
over the entire operational space. Consider trying to compute a similar navigational field by using a one-layer
network. This network fixes the outputs of the goal-processors and obstacle-processors at two different levels
while allowing the other processor outputs to converge to intermediate values by averaging the outputs of
their nearest neighbors:
@ i j ( t = 0) = any value
+ + + + 40
{
ni,j
@i,j(k 1) = f (@i+l,j(k) @i-l,j(k) @i,j+l(k) @i,j-l(k)) for
nij 4 (3)
@ij(k + 1) = @mas for nij E0
@ij(k+ 1) = 0 for ni,j EG

This technique is similar to the approach used in Carver Mead’s resistive networks [3]. Using such a technique,
however, the resulting field increases logarithmically away from the goal and quickly flattens out. The
logarithmic growth rate implies that the the further the truck is from the goal, the greater the resolution
needed in estimating the gradient of the field. Furthermore, there is no parameter which controls the rate of
growth. Hence, the radius of influence of obstacles cannot be controlled independently of the grid resolution.
This property of such a “local averaging method” is the main reason that a twdayer technique was adopted.

3 Feedforward Neural Network Controller


This section discusses the development a feedforward neural network capable of using the navigational
potential field described in section 2 to control and navigate the truck to the goal.

3.1 Controller Structure


Previous work by Nguyen and Widrow [5] has shown that a feedforward neural network can be trained
successfully to implement a nonlinear state feedback controller for backing a trailer-truck to a loading dock.

1-329

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.
Their two segmented truck had the state vector [ttrai/er, ytrajler, &railer, Bcoa] and control input [erteering].
They used the state vector and 2 redundant variables as inputs to a multilayer neural network which produced
the steering angle at each iteration.
For the navigation problem, the previous choice of controller inputs is clearly not sufficient unless the
position of the obstacles is to be learned implicitly within the network weights; information about obstacle
locations must be provided t o the controller.
In developing an alternate set of controller inputs, a set of field interpolation points, { s i } , configured in
a circle about the rear of the truck was defined in the local coordinate system of the truck (fig. 2).

Figure 2: Truck state variables and field interpolation points.

During each discrete control cycle, the local coordinates of the set of points, {si}, were converted into
global coordinates ( z , y ) by the appropriate transformation. The field value, a,: was measured at these
locations giving the set {@E}. Because the field is defined at discrete lattice points, bi-linear interpolation
using the 4 nearest lattice points was used. The difference between the field level at each of the outer points
and the level at the center point (fig. 2), was computed, As = [@Fl - @fccnrar, . ,@fN - This gave
a measure of the directional derivative of the potential field in N directions. This derivative vector, combined
with Bjack = eCo) - etroiler and appropriately scaled, constituted the input vector t o a 2-layer, sigmoidal
feedforward network with 20 hidden units. The overall navigation-control structure is shown in figure 3.

0
~ [e,,,asl . . %er - state
_.)
Interpolate -. Neural Truck -
I-
Obstacle
Lattice Controller

pattern
I
Figure 3: Overall navigation and control structure comprised of a two-layered network, a lattice interpolation
function, and a feedforward neural network.

3.2 Controller Training


Training of the feedforward neural-controller was performed using backpropagation-through-time in an
obstacle-free space. First, @cj
was computed for this space. Note that, since there were no obstacles,
@fj= 0 and thus, @cj
consisted simply of the distance-to-goal measure. The truck was then placed in ran-
dom initial configurations within the space and trained to back to the goal while minimizing e,,&. Tkaining
was carried out exactly as in the work of Nguyen and Widrow [5] except that the docking-angle constraint
was lifted by setting

[ c z ~ , c y , c B , , c B , ] = [%dock - zfino/,Ydock - !/finol,O,oI +~jock[0,0,1,-11 (4)

1-330

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.
Imposing the first term caused the truck to dock with the goal, while imposing the second term caused the
controller to minimize the angle between the cab and trailer, thus preventing jack-knifing. Training required
about 1000 complete docking cycles, with initial conditions being chosen progressively further from goal and
at larger offset angles. When the truck was then placed in an operational space with obstacles, the obstacles
warped The truck was now able to navigate around obstacles without any further training. Sample
trajectories are shown in figure 4.

Go

Figure 4: Sample truck trajectories an obstacle spaces.

Consider what task-knowledge was gained by the feedforward network during the training process which
permitted it to successfully use t o navigate. Had the controller been provided with only truck state
information, the controller would have learned to directly drive the state vector to zero, knowledge which
would not have permitted obstacle avoidance. However, the particular choice of controller inputs, [Bjack, AS],
allowed the truck to attempt to follow the negative gradient of the navigational potential field, -V@f,, within
the constraints of the truck kinematics.

4 Conclusion
A hybrid-network method for obstacle avoidance in the truck-backing system of Nguyen and Widrow has
been presented. The method uses a relatively simple, low-level algorithm easily implemented in hardware or
software.
A key advantage of the technique is the separation of the field-computing network from the feedforward
controller network. The field computations are independent of the truck dynamics, constraints, etc., and
serve simply to distribute information about goal and obstacle locations. These computations are carried
out in parallel and can accomodate real-time field updating for moving obstacles. The feedforward neural
network is used to control the dynamics and kinematics of the vehicle. This network is trained independently
of any particular obstacle configuration. No additional training is needed when new obstacle patterns are
presented.
Currently, grid-squares are either impenetrable obstacles or completely free. The technique presented
can easily be extended to handle variable terrain difficulties by making @$as vary for each obstacle square.
This could be used, for example, to avoid rocky terrain if a clear path was available, yet allow the rocky
terrain to be crossed if it constituted the only path. Specific choices of @~,, would depend on the trade-off
between terrain difficulty and path length.
In situations where tight maneuvering is necessary to negotiate obstacles, the method presented may fail.
It would, in those cases, be desirable to further train the feedforward network in the presence of obstacles to

1-331

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.
tune the control. This might also require additional sensory input to the controller. One may also observe
that the method could generate a path which passes through a barrier aperture too narrow for the truck to
fit through. It is envisioned that the truck controller could determine this while navigating. When such an
aperture might be encountered, the controller could modify the obstacle space description by increasing the
local obstacle level (the input to the 1'' layer of the field-computing network) until the potential field shifted
to favor a different direction. This could be accomplished in real-time due t o the speed of convergence of
the field computations.
The field-computing network requires obstacle information for the entire space in which navigation is to
occur. In the case where the vehicle must navigate over a long distance for which the entire obstacle space
is not known, the method could be used to perform local path-planning, assuming that the general desired
direction of travel is known. The idea of using multiple resolutions of the description of the obstacle space
is currently being investigated.

References
[I] 0.Khatib. Real-time obstacle avoidance for manipulators and mobile robots. International Journal of
Robotics Research, 5( 1):90-98, 1986.
[2] B. Krogh. A generalized potential field approach to obstacle avoidance control. In Proceedings of SME
Conference on Robotics Research: The N e t t Five Years and Beyond, Bethlehem, PA, August 1984.
[3] C. A. Mead. Analog VLSI and neural systems. Addison-Wesley, Reading, MA, 1989.
[4] W. Newman and N. Hogan. High speed robot control and obstacle avoidance using dynamic potential
functions. In Proceedings of IEEE Conference on Robotics and Automation, volume 1, pages 14-24,
1987.
[5] D. Nguyen and B. Widrow. The truck backer-upper: An example of self-learning in neural networks.
In Proceedings of the International Joint Conference on Neural Networks, volume 2, pages 357-363,
Washington, DC, June 1989.
[6] F. Pineda. Generalization of backpropagation to recurrent neural networks. Physical Review Letters,
18(59):2229-2232, 1987.
[7] E. S. Plumer. Cascading a systolic array and a feedforward neural network for navigation and obsta-
cle avoidance using potential fields. Contractor Report CR-177575, National Aeronautics and Space
Administration, Ames Research Center, Moffett Field, CA 94035-1000, February 1991.
[8] D. Rummelhart, G. Hinton, and R. Williams. Learning internal representations by error propagation.
In D. Rummelhart and J . McClelland, editors, Parallel Distributed Processing, volume 1, chapter 8. The
MIT Press, Cambridge, MA, 1986.
[9] R. Volpe and P. Khosla. Manipulator control with superquadric artifical potential functions: theory
and experiments. IEEE Dansactions on Systems, Man, and Cybernetics, pages 1423-1436, December
1990.
[lo] C. Warren. Global path planning using artificial potential fields. In Proceedings of IEEE Conference
o n Robotics and Automation, volume 1, pages 316-321, 1989.

1-332

Authorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY DURGAPUR. Downloaded on July 14, 2009 at 06:31 from IEEE Xplore. Restrictions apply.

You might also like