Range-sensor based navigation in three dimensions
Range-sensor based navigation in three dimensions
net/publication/3802458
Conference Paper in Proceedings - IEEE International Conference on Robotics and Automation · February 1999
DOI: 10.1109/ROBOT.1999.769955 · Source: IEEE Xplore
CITATIONS READS
48 85
3 authors:
Ehud Rivlin
Technion - Israel Institute of Technology
248 PUBLICATIONS 9,924 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Ishay Kamon on 14 February 2015.
164
point within the visible set. First we describe the global
structure of the algorithm and then discuss its detailed
14 operation. A detailed convergence proof for the 3DBug
algorithm appears in Ref. [4].
165
to the target on the obstacle surface, pmin, and checks
the leaving condition from there. If the leaving con-
dition is not satisfied at pmin, the target is necessarily
unreachable and the robot halts its motion. A summary
of the algorithm now follows.
1. Move towards T along the locally shortest path,
until one of the following events occurs: Figure 2. Motion towards the target. (a) From x = S, the
0 The target is reached. Stop. locally shortest path passes through the focus point 9 . (b)
0 A local minimum is detected. Go to step 2. At x = F1, the point G lies on an occluded edge. Hence the
2. Traverse the obstacle's surface, searching for next focus point, F2, is set on the occluding edge. (c) From
2 = Fz, the locally shortest path passes through F3, from
a suitable leave point, while updating the CEG
and recording pmin and dmin(T), which the target can be reached directly.
until one of the following events occurs:
0 The target is reached. Stop.
The robot terminates its motion towards the target
0 The leaving condition holds:
and switches to the surface-traversing mode after de-
3vleaue d(Uleouet T ) < dmin(T). Go to step 4- tecting that it is trapped in the basin of attraction of a
0 The entire surface has been sensed. Go to step 3.
local minimum of the function d(w, T ) . The correspond-
3. Perform the final target reachability test: ing sensor-based termination condition is that the fea-
GOto pmin. sible sub-contour becomes empty, and it can be verified
If the leaving condition holds at pmin, go to step 4. that this event is always associated with the presence of
Otherwise the target is unreachable. Stop. a local minimum of d(w, T ) [4].
4. Perform the transition phase.
Move directly towards uleoue until reaching
a point z where d ( z , T ) < dmin(T). Go to step 1. 3.3 Traversing an Obstacle Surface
This motion mode has two simultaneous objectives-to
3.2 Motion Towards the Target
find a suitable leave point and t o explore the obsta-
During motion towards the target, the robot moves be- cle surface. Let P denote the point where the robot
tween successive focus points along the locally shortest switches to surface-traversing mode. It can be verified
path to the target, based on the currently sensed ob- that the local minimum of d(w, 2') which terminated the
stacles. If the target is visible to the robot, the robot motion towards the target is visible from P , and lies on
moves directly towards the target. the robot moves di- the surface of the obstacle which blocks the direct path
rectly to it. Otherwise, the locally shortest path passes from P to the target (the blocking obstacle). The robot
through the blocking contour (Proposition 2.2). In or- traverses the surface of this obstacle until either a leav-
der to guarantee convergence to the target, we wish to ing condition is satisfied or the entire obstacle surface is
ensure that the distance of the robot to the target de- explored. Upon starting a new surface traversing seg-
creases monotonically between successive focus points. ment, the robot moves into the convex hull of the block-
To achieve this objective, the algorithm computes the ing obstacle, senses the environment, and generates the
locally shortest path based only on the points y of the initial CEG of the blocking obstacle.
blocking contour satisfying d ( y , T ) 5 d(z, T ) , where x At each step after the initial one, the robot computes
is the current robot location. We call this subset of the shortest path to the target, y,on the current CEG.
the blocking contour the feasible sub-contour (Figure Given this path, the robot chooses the next focus point
2(a)). Once the feasible sub-contour is computed, the F as the last vertex along y which lies on an obsta-
algorithm constructs the blocking-contour graph based cle edge. The robot then moves to F by repeatedly
on the feasible sub-contour and the target node, and performing the following procedure. The robot chooses
searches this graph for the shortest path to T . the furthest visible point v along y, and moves directly
Once the locally shortest path is computed,.the next towards v without performing any sensing. After reach-
focus point F is chosen on this path as follows. Let G ing U , the robot senses the environment, and repeats the
be the point on the feasible sub-contour through which same procedure of moving t o the furthest visible point
the locally shortest path passes. If G lies on a convex along y. After finitely many such steps the robot reaches
edge of the blocking obstacle, F is set to G (FI in Fig. the focus point F.
2(a)). If G lies on an edge generated from occlusion, Upon reaching F , the robot traces a small portion
F is chosen on the occluding edge, at the point where of the convex edge on which F is located while contin-
the line segment [x,G] crosses the occluding edge (Fi in uously sensing the environment. The accumulative ef-
Fig. 2(b)). fect of tracing small edge segments each time the robot
166
envl I env2 I env3 1 env4
1.00 I 1.02 I 1.06 I 1.03
4 Simulation Results
167
the roof from FI, the robot moves along the shortest
path from Fl to T . Partial occlusion is another mani-
T (invisible) festation of the limited nature of local information, as
demonstrated in Figure 3. Using the motion-towards-
the-target mode, the robot moves from S to the focus
point Fl, which lies on an occluding edge (Fig. 3(a)).
The robot chooses this path from S since it does not see
the entire blocking obstacle, denoted 01, and occluded
portions of obstacles are considered as non-existent. An-
other reason for the difference between the two paths
is the incorporation of the global convergence require-
ment during motion-towards-the-target. Restricting the
computed shortest path to the feasible sub-contour may
prevent the robot from moving along the precise locally
shortest path, which may pass through any point on the
blocking contour. Thus there are several reasons which
cause 3DBug’s paths to differ from the globally optimal
ones.
3DBug as a search algorithm: Last we discuss the
search characteristics of 3DBug. In the graph-search
terminology, the motion-towards-the-target mode is
a hill-descending strategy, and the surface-traversing
mode is a mechanism for escaping local minima. For
Figure 5 . 3DBug in env4. (a,b) The robot leaves house1 comparison, we consider the classical A* algorithm
from the window, and enters house2 from the door. The which uses the generalized visibility graph as the un-
globally optimal path is almost identical to 3DBug’s path.
derlying search space. The 3DBug algorithm finds the
(c) The blocking contour from S. (d) The blocking contour
from FI (located at the internal window frame). target in fewer steps than A* for the following reasons.
First, 3DBug performs a depth search, thus it moves
faster towards the target. Second, the candidate loca-
tions for the next step in 3DBug are limited to a single
3DBug’s paths in e m 2 is 1.02. In both envl and env2
obstacle, which is the blocking obstacle in both modes
the algorithm used the motion-towards-the-target mode
of motion. In contrast, A* must consider all the nodes
along the entire path in over 99% of the runs.
which are visible from each node U in the generalized vis-
The environment env3 consists of a single concave ibility graph. In env3, for example, 3DBug reaches the
room-like obstacle (Fig. 4 ) . The average path length in target after 3.3 steps on average, while A* requires 32.4
this environment is 1.06 (relative to the generalized vis- steps to reach the target. The advantage of 3DBug is
ibility graph shortest path), and the surface-traversing even more pronounced when the target is unreachable.
mode was activated in 65% of the runs. The last envi- The 3DBug algorithm concludes target unreachability
ronment env4 consists of two room-like obstacles, sep- after exploring the entire surface of a single obstacle in
arated by a wall (Fig. 5). The start and target points which the target is trapped, while A* must expand all
were always placed inside or near the rooms, on differ- the nodes in its search space to conclude unreachability.
ent sides of the separating wall. In this environment the Another advantage of 3DBug is that it uses a compact
average path length of 3DBug is 1.03. The tested sce- data structure, since it uses only a limited amount of
narios constitute only a preliminary study. There are global information. In contrast, a data structure which
other environments, in which the locally optimal deci- represents the entire environment may be very large.
sions do not necessarily lead to globally optimal paths, For example, the generalized visibility graph of env2
and in these environments 3Dbug would be less effective. with resolution 0.1 consists of 620 nodes and 118912
The local characteristics of 3DBug: The paths edges, while 3DBug’s data structure consists on the av-
of 3DBug are distinct from the globally optimal ones erage of 7 nodes and 9 edges.
for several reasons. As demonstrated in Figure 4 , the
locally shortest path may differ from the globally op-
timal one due to the limited nature of local informa- 5 Concluding Discussion
tion. From S, the robot moves towards the ”roof” of We presented new basic results in sensor-based surface
the room, since the roof is not visible from S and thus exploration, and locally shortest path computation in
considered non-existent (Fig. 4 ( b ) ) . After observing three-dimensional polyhedral environments. Consider-
168
ing surface exploration, we showed that the entire sur- I. Kamon, E. Rimon, and E. Rivlin. Tangentbug: A
face of a polyhedral obstacle is visible from the convex range-sensor based navigation algorithm. To appear
obstacle edges within the obstacle’s convex hull. Then in the International Journal on Robotic Research.
we introduced the notion of a locally shortest path in
three-dimensions, and showed that it must pass through I. Kamon, E. Rimon, and E. Rivlin. Range-sensor
the blocking contour. We used this property to for- based navigation in three dimensions. CIS 9712,
mulate an efficient technique for estimating the locally Center of Intelligent Systems, Dept. of Computer
shortest path in time linear in the number of edges in Science, Technion, Israel, 1997.
the blocking contour. K. N. Kutulakos, V. J. Lumelsky, and C. R. Dyer.
These results were incorporated into the new glob- Vision guided exploration: a step toward general
ally convergent 3 D B u g algorithm, which navigates a motion planning in three dimensions. I E E E Conf.
point robot equipped with position and range sensors on Robotics and Automation, 289-296, 1993.
in a three-dimensional unknown environment. The al-
gorithm falls within the general framework of the Bug T. Lozano-Perez and M. A. Wesley. An algo-
paradigm since it strives to process the sensory data rithm for planning collision free paths among poly-
in the most reactive way possible, without sacrificing hedral obstacles. Communications of the A C M ,
the global convergence guarantee. During motion to- 22(10):560-570, 1979.
wards the target, the robot follows the locally shortest
path in a purely reactive fashion. During traversal of V. J. Lumelsky. A comparative study on the path
an obstacle surface, the robot incrementally constructs length performance of maze-searching and robot
the CEG of the obstacle, while performing local short- motion planning algorithms. I E E E Transactions
cuts based on the local range data. Simulation results on on Robotics and Automation, 7(1):57-66, 1991.
show that 3 D B u g generates paths which resemble the V. J. Lumelsky and A. A. Stepanov. Path-planning
globally shortest path in simple scenarios, consisting of strategies for a point mobile automaton moving
disjoint convex obstacles. Moreover, the algorithm gen- amidst obstacles of arbitrary shape. Algoritmica,
erates reasonably short paths even in concave, room-like 2:403-430, 1987.
environments.
Let us mention several potential uses and extensions C. H. Papadimitriou. An algorithm for shortest
for the new algorithm. First, 3 D B u g is useful for nav- path motion in three dimensions. Information pro-
igating free-flying robots in either real tasks such as cessing letters, 20:259-263, 1985.
surveillance, or in simulated scenarios such as virtual re-
N. S. V. Rao and S. S. Iyengar. Autonomous robot
ality games. Second, 3 D B u g provides new insight into
navigation in unknown terrains: visibility graph
the important problem of sensor-based navigation in
based methods. I E E E transactions on Systems,
three-dimensions. Third, the algorithm can be extended
Man and Cybernetics, 20(6):1443-1449, 1990.
to other three-dimensional configuration spaces, such as
the ones associated with three degrees-of-freedom mo- J. H. Rieger. The geometry of view space of opaque
bile robots. Last, 3 D B u g is also useful as a search al- objects bounded by smooth surfaces. Artificial In-
gorithm in completely known three-dimensional envi- telligence, 44:l-40, 1990.
ronments. The main advantage of 3Dug over classical
search algorithms such as A* is that it takes into con- A. Sankaranarayanan and M. Vidyasagar. Path
sideration the geometric characteristics of the locally planning for moving a point object amidst unknown
shortest path. Consequently, 3 D B u g finds the target obstacles in a plane: the universal lower bound on
much faster than other, less informed, algorithms. worst case path lengths and a classification of algo-
rithms. I E E E Conf. on Robotics and Automation,
1734-1941,1991.
References
A. Stentz. Optimal and efficient path planning
R. Chatila. Deliberation and reactivity in au- for partially known environments. I E E E Conf. on
tonomous mobile robots. Robotics and Autonomous Robotics and Automation, 3310-3317, 1994.
Systems, 16:197-211, 1995. C. J. Taylor and D. J. Kriegman. Vision based mo-
tion planning and exploration algorithms for mobile
G. Foux, M. Heymann, and A. Bruckstein. Two robots. Workshop on Algorithmic Foundations of
dimensional robot navigation among unknown sta- Robotics, 69-83. A K Peters, 1995.
tionary polygonal obstacles. IEEE Transactions on
Robotics and Automation, 9(1):96-102, 1993.
169