Real Time OV
Real Time OV
Abstract -A new real-time obstacle avoidance approach for mobile therefore concentrates only on the local obstacle avoidance
robots has been developed and implemented. This approach permits the aspect.
detection of unknown obstacles simultaneously with the steering of the
mobile robot to avoid collisions and advancing toward the target. The One approach to autonomous navigation is the wall-fol-
novelty of this approach, entitled the virtual force field, lies in the lowing method [l], [17], [U]. Here the robot navigation is
integration of two known concepts: Certainty grids for obstacle representa- based on moving alongside walls at a predefined distance.
tion, and potential fields for navigation. This combination is especially If an obstacle is encountered, the robot regards the obsta-
suitable for the accommodation of inaccurate sensor data (such as pro- cle as just another wall, following the obstacle’s contour
duced by ultrasonic sensors) as well as for sensor fusion, and enables
continuous motion of the robot without stopping in front of obstacles. This until it may resume its original course. This kind of naviga-
navigation algorithm also takes into account the dynamic behavior of a fast tion is technologically less demanding, since one major
mobile robot and solves the local minimum trap problem. Experimental problem of mobile robots- the determination of their own
results from a mobile robot running at a maximum speed of 0.78 m/s position-is largely facilitated. Naturally, robot navigation
demonstrate the power of the proposed algorithm. by the wall-following method is less versatile and is suit-
able only for very specific applications. One soon-to-be
introduced commercial system uses this method on a floor
I. INTRODUCTION cleaning robot for long hallways [16].
the incoming ultrasound waves away from the sensor, planning, whch uses Krogh’s generalized potential field
and the obstacle is either not detected at all, or (since (GPF) approach. These methods however assume a known
only part of the surface is detected) seen much smaller and prescribed world model of the obstacles. Furthermore,
than it is in reality. none of these methods has been implemented on a mobile
robot that uses real sensory data. The closest project to
To reduce the effects just listed we have decided to
ours is that of Brooks [7], [8], who uses a force field
represent obstacles with the certainty grid method. This
method in an experimental robot equipped with a ring of
method of obstacle representation allows adding and re-
twelve ultrasonic sensors. Brooks’ implementation treats
trieving data on the fly and enables easy integration of
each ultrasonic range reading as a repulsive force vector. If
multiple sensors.
the magnitude of the sum of the repulsive forces exceeds a
The representation of obstacles by certainty levels in a
certain threshold, the robot stops, turns into the direction
grid model has been suggested by Elfes [15], who used the
of the resultant force vector, and moves on.
certainty grid for off-line global path planning. Moravec
and Elfes [23], and Moravec [24] also describe the use of
A. The Basic VFF Method
certainty grids for map-building. Since our obstacle avoid-
ance approach makes use of this method, we will briefly This section explains the combination of the potential
describe the basic idea of the certainty grid, field method with a certainty grid. This combination pro-
In order to create a certainty grid, the robot’s work area duces a powerful and robust control scheme for mobile
is divided into many square elements (denoted as cells), robots, denoted as the virtual force field (VFF) method.
which form a grid (in our implementation the cell size is 10 As the robot moves around, range readings are taken
cm by 10 cm). Each cell ( i , j ) contains a certainty value and projected into the certainty grid, as explained. Simul-
C ( i , j ) that indicates the measure of confidence that an taneously the algorithm scans a small square window
obstacle exists within the cell area. The greater C ( i , j ) , the of the grid. The size of the window is 33x33 cells
greater the level of confidence that the cell is occupied by (i.e., 3.30m X 3.30m) and its location is such that the robot
an obstacle. is always at its center.
In our system the ultrasonic sensors are continuously Each occupied cell inside the window applies a repulsive
sampled while the robot is moving. If an obstacle produces force to the robot, pushing the robot away from the cell.
an echo (within the predefined maximum range limit of The magnitude of this force is proportional to the cell
two meters), the corresponding cell contents C( i , j ) are contents C ( i , j ) and is inversely proportional to the square
incremented. A solid, motionless obstacle eventually causes of the distance between the cell and the robot:
a high count in the corresponding cells. Misreadings on the
other hand, occur randomly, and do not cause high counts
in any particular cell. This method yields a more reliable
obstacle representation in spite of the ultrasonic sensors’
inaccuracies. where
The novelty of our approach lies in the combination of Fcr force constant (repelling),
certainty grids for obstacle representation with the poten-
d(i,j ) distance between cell (i, j ) and the robot,
tial field method for local path planning. Section I1 ex-
C ( i , j ) certainty level of cell ( i , j ) ,
plains our basic virtual force field (VFF) obstacle avoid-
xo, yo robot’s present coordinates,
ance approach in which we apply the potential field method
X i , Yj coordinates of cell (i, j ) .
to a certainty grid. The VFF method is further enhanced
by taking into account the dynamic behavior of a mobile Notice that in (1) the force constant is divided by d ’. By
robot at high speeds and by a comprehensive heuristic this method occupied cells exert strong repulsive forces
solution to the trap problem (which is associated with the when they are in the immediate vicinity of the robot, and
potential field method). A discussion on these two algo- weak forces when they are further away.
rithms is included in Sections I11 and IV. The described The resultant repulsive force I;; is the vectorial sum of
algorithms have been implemented and tested on our mo- the individual forces from all cells:
bile robot, computer-aided robotics for maintenance, emer-
gency, and life support (Carmel). Fr= c F ( i , j ) . (2)
1, 1
FORCE
11. THEVIRTUAL FIELD
(VFF) METHOD At any time during the motion, a constant-magnitude
The idea of having obstacles conceptually exerting forces attracting force I;; pulls the robot toward the target. E; is
onto a mobile robot has been suggested by Khatib [20]. generated by the target point T, whose coordinates are
Krogh [21] has enhanced this concept further by taking known to the robot. The target-attracting force E; is given
into consideration the robot’s velocity in the vicinity of by
obstacles. Thorpe [26] has applied the potential fields
method to off-line path planning. Krogh and Thorpe [22]
suggested a combined method for global and local path
[
4 = 4, d(t)P
xt-xo
+
Y t - Yo
TI;](3)
BORENSTEIN A N D KOREN: REAL-TIME OBSTACLE AVOIDANCE FOR FAST MOBILE ROBOTS 1181
where ROBOTSRUNNING
AT HIGHSPEEDS
1184 IEEE TRANSACTIONSON SYSTEMS,MAN, AND CYBERNETICS, VOL. 19, NO. 5, SEPTEMBER/OCTOBER 1989
1 :. . _ . . 1. . . . . _ . _ . . . . . . ................
. . . . . ...... ...;
-
0 -
[ml
Fig. 4. Robot successfully recovers from labyrinth-like obstacle course.
Proiected virtual
6 =sum of repulsive
forces
' Obstacle
boundary
Fig. 5. Derivation of virtual attractive force 4' for wall-followingmode.
' X [nl
Fig. 3. (a) Robot is caught in local minimum trap. (b) As robot finds
itself 90" off target, it goes into wall-following mode (at A ) and reaims lowing could also be implemented through controlling a
at target (at B ) . fixed distance to the wall, our method is preferable, since it
is less sensitive to misreadings of the ultrasonic sensors. A
similar implementation for wall-following has .been sug-
target. The joint operation of the WFM and the VFF gested by Brooks and Connell [8], with a = 120".
mode is demonstrated in Fig. 3(b), in which the robot There is however one catch to the WFM, which may
reaches the target in 16.0 s at an average speed of 0.44 occur if more than one trap is present. Fig. 6(a) shows one
m/s. At point A, the algorithm detects a trap situation, such case. Here the robot switches to WFM at point A
and switches back into WFM. At point B the off-angle and follows a wall to its left. Then at point B, it switches
becomes less than 90", and the algorithm switches back back to VFF mode, since its heading is now less than 90'
into VFF mode. This recovery algorithm works even for off the target direction. At point C, a new trap-condition
extreme constellations of obstacles, such as the labyrinth- is detected, and the robot goes again into WFM (notice
like obstacle course in Fig. 4. Again at point A the system that this time the robot follows the obstacle at its right).
activates the WFM algorithm, and at point B it switches This pattern repeats itself at points D, E, and F, inside
back to VFF mode. the second and third trap. Subsequently the robot returns
The WFM algorithm is implemented in the following and oscillates between the traps. To solve this problem two
manner. First the robot calculates the sum of all repulsive possible wall-following modes must be distinguished: L-
forces, e, in order to determine the direction of &Or. mode, where the robot follows a wall to its left, and
Next as is depicted in Fig. 5 (for following a wall to the R-mode, where the robot follows a wall to its right. This
left of the robot), the algorithm adds an angle a to e, distinction is utilized in the implementation of the WFM
where 90" < a < 180" (or subtracts a from Or, if following a in our system.
wall to the right of the robot). In our system a=145". In a given run the robot might select either L- or
Then the algorithm projects a new virtual attractive force R-mode at the first trap-situation, but then it must stick
4' in the resulting direction, which temporarily replaces always to this mode within the given run. The result of
the attractive force from the target location, Fo.The new running this algorithm is depicted in Fig. 6(b) (for the
resultant R will now point (or eventually converge) into a same obstacle configuration as in Fig. 6(a)). The robot
direction parallel to the obstacle boundary. While wall-fol- encounters a trap at point A and chooses L-mode. At
BORENSTEIN A N D KOREN: REAL-TIME OBSTACLE AVOIDANCE FOR FAST MOBILE ROBOTS 1185
T Y M $ Y M
7 ? Y M Wall
6
I
i Wall
II
I ... 5
I
I
~ .r c
I
3
"sObstacle
I --*A
2
I
1
I .
.
..
..
.
..
..
.
..
..
.
..
..
.
..
..
.
..
.
d
.
.
..
..
.
..
..
.
..
.
L J t xm
J
Fig. 7. Wall-following on inner wall of room may result in indefinite
loop. However, full loop around target can be identified and used to
remedy situation.
Each dot in Fig. 8 represents one cell in the certainty -, “Optimal path algorithms for autonomous vehicles,” Proc.
18th CIRP Manufacturing Systems Sem., Stuttgart, W. Germany,
grid. In our current implementation, certainty values (CV) June 5-6.
range only from zero to three. The CV = 0 means no -, “Motion control analysis of a mobile robot,” Trans. ASME,
sensor reading has been projected into the cell during the J. Dynam. Meusurement Contr., vol. 109, no. 2, 1987, pp. 73-79.
J. Borenstein, “The nursing robot system,” Ph. D. Dissertation,
run (no dot at all). C V = 1 (or CV= 2) means that one (or Technion, Haifa, Israel, 1987.
two) readings have been projected into the cell, and this is J. Borenstein and Y. Koren, “Obstacle avoidance with ultrasonic
shown in Fig. 8 with dots comprising of one (or two) sensors,” IEEE J. Robotics and Automat., vol. RA-4, no. 2, pp.
213-218, 1988.
pixels. CV = 3 means that three or more readings have R. A. Brooks, “A robust layered control system for a mobile
been projected into the same cell, and t h s is represented robot,” IEEE J. Robotics and Automat., vol. RA-2, no. 1, 14-23,
by a 4-pixel dot in Fig. 8. 1986.
R. A. Brooks and J. H. Connell, “Asynchronous distributed control
At least two misreadings can be identified in Fig. 8, system for a mobile robot,” Proc. SPIE, vol. 727, pp. 77-84, 1986.
which have been encircled for emphasis. R. A. Cooke, “Microcomputer control of free-ranging robots,”
Proc. 13th Int. Symp. Ind. Robots and Robols, Chcago, IL, Apr.
1983, pp. 13.109-13.120.
V. CONCLUSION R. Chattergy, “Some heuristics for the navigation of a robot,” Int.
J. Robotics Res., vol. 4, no. 1, 1985, pp. 59-66.
A comprehensive obstacle avoidance approach for fast- J. L. Crowley, “Dynamic world modeling for an intelligent mobile
running mobile robots, denoted as the VFF method, has robot,” Proc. IEEE Seventh Int. Conf. Pattern Recognition, Mon-
been developed and tested on our experimental mobile treal, Canada, 1984, July 30-August 2, pp. 207-210.
-, “Navigation for an intelligent mobile robot,” Technical
robot Carmel. The VFF method is based on the following Report, The Robotics Inst., Camegie-Mellon Univ., Aug. 1984.
principles. Cybermation, “K2A Mobile Platform,” Commercial offer, 5457
JAE Valley Road, Roanoke, Virginia 24014, 1987.
A certainty grid for representation of (inaccurate) Denning Mobile Robotics, Inc., “Securing the future,’’ Commercial
Offer, 21 Cummings Park, Wobum, MA 01801, 1985.
sensory data about obstacles provides a robust real- A. Elfes, “A sonar-based mapping and navigation system,” Techni-
time world model. cal Report, The Robotics Inst., Carnegie-Mellon Univ., pp. 25-30,
A field of virtual attractive and repulsive forces de- 1985.
Engelberger, J., Transitions Research Corporation, private commu-
termines the direction and speed of the mobile robot. nication, 1986.
The combination of results in 1) and 2) is the charac- G. Giralt, “Mobile robots,” NATO ASI Series, vol. FII, Robotics
teristic behavior of the robot: The robot responds to and Artificial Intelligence. New York: Springer-Verlag, 1984, pp.
365-393.
clusters of high-likelihood for the existence of an J. Iijima, S. Yuta, and Y. Kanayama, “Elementary functions of a
obstacle, while ignoring single (possibly erroneous) self-contained robot ‘YAMABICO 3.1’,” Proc. 11th Int. Symp.
data points. Ind. Robots, Tokyo, 1983, pp. 211-218.
C. Jorgensen, W. Hamel, and C. Weisbin, “Autonomous robot
Trap states are automatically detected and recovery navigation,” BYTE, pp. 223-235, Jan. 1986.
routines are activated. These routines distinguish 0. Khatib, “Real-time obstacle avoidance for manipulators and
among several different situations and take appropri- mobile robots,” 1985 IEEE Int. Conj Robotics and Automat., St.
Louis, MO, March 25-28, 1985, pp. 500-505.
ate action for each situation. B. H. Krogh, “A generalized potential field approach to obstacle
Oscillatory robot motion is resolved by damping avoidance control,” Int. Robotics Research Conf ., Bethlehem, PA,
algorithms (which only marginally compromise the Aug. 1984.
B. H. Krogh and C. E. Thorpe, “Integrated path planning and
robot’s average speed). dynamic steering control for autonomous vehicles,” Proc. 1986
IEEE Int. Conf. Robotics and Auromation, San Francisco, CA, Apr.
Based on the VFF method for autonomous obstacle 7-10,1986, pp. 1664-1669.
avoidance, we are currently developing a new mode of H. P. Moravec and A. Elfes, “High-resolution maps from wide
operation for the remote guidance of mobile robots. Under angle sonar,’’ IEEE Conf. Robotics and Automation, Washington
DC, 1985, pp. 116-121.
this mode of operation, the mobile robot follows the H. P. Moravec, “Certainty grids for mobile robots,” Technical
general direction prescribed by the operator. If the robot Report Preprint, The Robotics Inst., Carnegie-Mellon Univ., 1986.
encounters an obstacle, it autonomously avoids collision Polaroid Corporation, “Ultrasonic ranging marketing,” 1 Upland
Road, Norwood, MA 02062, 1982.
with that obstacle, trying to match the prescribed direction C. F. Thorpe, “Path relaxation: Path planning for a mobile robot,”
as good as possible. With this integrated self-protection Carnegie-Mellon University: The Robotics Institute, Mobile Robots
mechanism, robots can be steered at high speeds and in Laboratory, Autonomous Mobile Robots, Annual Report, 1985, pp.
39-42.
cluttered environments, even by inexperienced operators. S. A. Walter, “The sonar ring: Obstacle detection for a mobile
robot,” Proc. IEEE Int. Conf. Robotics and Automat., Raleigh, NC,
Mar. 31-Apr. 3, 1987, pp. 1547-1579.
REFERENCES C. R. Weisbin, G. de Saussure, and D. Kammer, “Self-Controlled:
A real-time expert system for an autonomous mobile robot,” Com-
put. Mech. Eng., pp. 12-19, Sept. 1986.
G. Bauzil, M. Briot, and P. Ribes, “A navigation sub system using
ultrasonic sensors for the mobile robot Hilare,” 1st Int. Conf. on
Robot Vision and Sensory Controls, Stratford-upon-Avon, UK, 1981,
pp. 47-58 and pp. 681-698.
J. Borenstein and Y. Koren, “A mobile platform for nursing Johann Borenstein (M88) received the B.Sc., M.Sc., and D.Sc. in mechan-
robots,” IEEE Trans. on Ind. Electron., vol. 32, no. 2, pp. 158-165, ical engineering in 1981, 1983, and 1987, respectively, from the Technion
1985. -Israel Institute of Technology, Haifa, Israel.
BORENSTEIN A N D KOREN: REAL-TIME OBSTACLE AVOIDANCE FOR FAST MOBILE ROBOTS 1187
Since 1987 he has been with the Robotics Yoram Koren (M76-SM88) has 20 years of
Systems Division at the University of Michigan, research, teaching, and consulting experience in
Ann Arbor, where he is currently an Assistant the automated manufacturing field At present
Research Scientist and Head of the MEAM MO- he is the Chairman of the Mechanical Sciences
bile Robotics Lab. His research interests include Division in the Department of Mechanical Engi-
mobile robot navigation, obstacle avoidance, path neering and Applied Mechanics, at the Univer-
planning, real-time control, sensors for robotic sity of Michigan, AM Arbor. He is the author of
applications, multisensor integration, computer Computer Control of Manufacturing Systems (Mc-
interfacing and integration. Graw-Hill, 1983) which is used as a textbook at
major universities and received the 1984 Text-
book Award from the Society of Manufacturing
Engineenng. His book, Robotics for Engineers, (McGraw-Hill, 1985) was
translated into Japanese and French and is used by engineers throughout
the world. Professor Koren is a member of ASME, an active member of
CIRP, and a Fellow of SME/Robotics-International.