scispace - formally typeset
Open AccessProceedings ArticleDOI

Dynamic-Domain RRTs: Efficient Exploration by Controlling the Sampling Domain

Reads0
Chats0
TLDR
This paper develops and implements a simple new planner which shows significant improvement over existing RRT-based planners and proposes a general framework for minimizing their effect.
Abstract
Sampling-based planners have solved difficult problems in many applications of motion planning in recent years. In particular, techniques based on the Rapidly-exploring Random Trees (RRTs) have generated highly successful single-query planners. Even though RRTs work well on many problems, they have weaknesses which cause them to explore slowly when the sampling domain is not well adapted to the problem. In this paper we characterize these issues and propose a general framework for minimizing their effect. We develop and implement a simple new planner which shows significant improvement over existing RRT-based planners. In the worst cases, the performance appears to be only slightly worse in comparison to the original RRT, and for many problems it performs orders of magnitude better.

read more

Content maybe subject to copyright    Report

Dynamic-Domain RRTs: Efficient Exploration by Controlling
the Sampling Domain
Anna Yershova
L
´
eonard Jaillet
Department of Computer Science
University of Illinois
Urbana, IL 61801 USA
{yershova, lavalle}@uiuc.edu
Thierry Sim
´
eon
Steven M. LaValle
LAAS-CNRS
7, Avenue du Colonel Roche
31077 Toulouse Cedex 04,France
{ljaillet, nic}@laas.fr
Abstract Sampling-based planners have solved difficult
problems in many applications of motion planning in recent
years. In particular, techniques based on the Rapidly-exploring
Random Trees (RRTs) have generated highly successful single-
query planners. Even though RRTs work well on many prob-
lems, they have weaknesses which cause them to explore slowly
when the sampling domain is not well adapted to the problem.
In this paper we characterize these issues and propose a
general framework for minimizing their effect. We develop
and implement a simple new planner which shows significant
improvement over existing RRT-based planners. In the worst
cases, the performance appears to be only slightly worse in
comparison to the original RRT, and for many problems it
performs orders of magnitude better.
Index Terms Motion Planning, Voronoi Bias, RRTs
I. INTRODUCTION
Motion planning has many applications in such areas
as robotics, manufacturing, pharmaceutical drug design,
computational biology and computer graphics. The com-
putational intractability of the general motion planning
problem has led to the development of the sampling-based
algorithms, which have been successfully used in practice
over the last decade. Unfortunately, there is no planning
algorithm that efficiently solves all instances of the motion
planning problem. Each planner has a set of applicable
problems, on part of which it performs well, and on another
part it may perform poorly. Designing a single algorithm
that reliably performs on a large set of problems is important
to the motion planning area.
Current sampling-based algorithms can be divided into
two sets of approaches: multiple-query and single-query
methods. The primary philosophy behind the multiple-query
methods is that substantial precomputational time may be
taken so that multiple queries for the same environment can
be answered quickly. The Probabilistic Roadmap (PRM)
planner [19] is an example of such method. More recent
roadmap methods are based on importance sampling. They
This work is partially supported by NSF CAREER Award IRI-
9875304, NSF ANI-0208891, NSF IIS-0118146, the UIUC-CNRS grant,
and the European project MOVIE, IST-20001-39250.
(a) (b)
Fig. 1. Trees constructed by an RRT-based planner and the Voronoi regions
associated with the nodes of the trees. (a) A bug trap problem in high
dimensions can be a challenging problem for this planner. (b) It becomes
much more challenging when the region for sampling is enlarged.
concentrate samples in a nonuniform way, for example,
along the C-space boundaries [1], [4], or the medial axis
[14], [28], [35]. These and other methods are primarily
designed for solving problems with narrow corridors [12],
[15]. The visibility approach taken in [31] leads to another
nonuniform way of sampling over the configuration space.
PRMs can also be extended to problems of motion plan-
ning for closed chains [9], [13], [36], multiple robots [34],
and nonholonomic robots [30], although there are difficul-
ties with handling complicated differential constraints with
PRM methods.
Multiple-query methods may take considerable precom-
putation time, thus different approaches were developed for
solving single-query problems [3], [16], [23], [27], [29].
Rapidly-exploring Random Trees (RRTs) were primarily
designed for targeting single-query holonomic problems and
problems with differential constraints [21], [23], [25]. The
performance success of the RRTs on many motion planning
problems has led to broad extensions and applications of
this approach. For example, problems with complicated
geometries are handled with the RRT-based planners in [7],
[10]. Extensions of RRTs for manipulation problems and

motions of closed articulated chains are developed in [8],
[17], [18], [33]. Adapted versions of RRTs for kinodynamic
and nonholonomic planning also exist [5], [6], [11], [20],
[22], [25]. In the place of random sampling used in these, de-
terministic, resolution-complete alternatives of RRTs have
been proposed in [24], [26].
Even though RRTs work well in many applications, they
have several weaknesses, which cause them to perform
poorly in some cases. This is the reason why adaptations
and extensions of RRTs are proposed to handle different
classes of problems. In this paper, we characterize these
issues and propose a general framework for minimizing the
effect of some of these weaknesses. We have developed and
implemented a simple new planner that shows significant
improvement over existing RRT-based planners, in some
cases by several orders of magnitude. The resulting planner
treats some of the pathological cases of the original RRT,
and at the same time is adapted to solve more classes of
motion planning problems. By taking into account the ob-
stacles of the configuration space into the Voronoi bias, the
planner solves problems that have complicated geometries
more efficiently. Although the idea is general enough and
should be applicable to other constrained motion planning
problems (e.g. planning for closed chains, nonholonomic
planning), in this work we concentrated only on holonomic
problems.
In the next section we re-examine the Voronoi biased ex-
ploration strategy of the RRTs and illustrate the performance
of the RRT algorithm on one challenging example. In the
end of section II, we formulate the problem of controlling
Voronoi bias for more efficient exploration of the config-
uration space. We propose our solution to this problem in
Section III and the experimental evaluations in Section IV.
II. V
ORONOI BIAS EXPLORATION IN RRTS
RRTs were originally introduced in [23]. Starting at a
given initial configuration, RRTs incrementally search the
configuration space for a path connecting the initial and the
goal configurations. At each iteration a new configuration is
sampled and the extension from the nearest node in the tree
toward this sample is attempted. If the extension succeeds, a
new node in the tree is created.
There are several planners that exploit the exploration
properties of the basic RRTs, such as the RRT-CONNECT
planner (pseudocode shown in Figure 2). Bidirectional ver-
sions of RRTs exist (bi-RRTs), which alternate execution of
the basic algorithm for two trees growing from the initial and
the goal configurations, and put some additional bounds on
the sizes of each of the t rees (bidirectional balanced RRTs).
RRT exploration is determined by the Voronoi diagram
of the nodes in the tree. The probability that a node will be
chosen for an extension is proportional to the volume of its
Voronoi region. Therefore, the RRT tends to rapidly grow in
the unexplored regions of the configuration space.
BUILD RRT(q
init
)
1 T .init(q
init
);
2 for k =1to K do
3 q
rand
RANDOM CONFIG();
4 q
near
NEAREST NEIGHBOR(q
rand
, T );
5 if CONNECT(T ,q
rand
,q
near
,q
new
)
6 T .add
vertex(q
new
);
7 T .add
edge(q
near
,q
new
);
8ReturnT ;
Fig. 2. The RRT-CONNECT construction algorithm.
A. Motivating Example
Consider a problem shown in Figure 1(a). The task is to
move the robot outside of the bug trap
1
. Since the size of
the free space inside the trap is considerably larger than
the narrow opening, in high dimensions it can be a very
challenging problem for any motion planner. Now consider
the Voronoi regions of the set of sample points built by the
RRT planner inside the trap. There is a considerable bias
toward the points near the obstacles. That is, most of the
points on the boundary of the trap will have higher prob-
ability of being selected for extension than the points near
the opening accordingly to the sizes of the corresponding
Voronoi regions.
The problem becomes even more challenging if the sam-
pling region is enlarged. It may become so difficult that a
regular RRT will not be able to solve the 2-dimensional
problem shown in 1(b) in any reasonable time. This is
explained by an even larger bias toward the points near the
obstacles. In fact, the Voronoi regions of these points grow
with the size of the environment. Meanwhile, the tree in the
middle of the bug trap does not grow at all.
The obvious solution to this problem would be to limit
the sampling region to fit the bug trap. However, while this
would help in this easy case, the approach would not be gen-
eral enough to deal with other motion planning problems.
In what follows we distinguish different types of nodes in
the tree. We call frontier nodes the vertices in the tree that
have their Voronoi regions growing together with the size of
the environment. The boundary nodes are t hose that lie in
some proximity to the obstacles. It is important to note that
the frontier vertices provide especially strong bias toward
the unexplored portions of the configuration space. In many
cases this helps the tree to rapidly grow. However, this may
cause a slow-down in the performance when a frontier point
is also a boundary point. For example, in the Figures 1(a)
and (b), all the frontier points are also boundary points. The
problem is that they have high probability of being chosen
for extension in the direction of the obstacles, but most of
the times the extension cannot be performed.
In general, boundary points are given more Voronoi bias
than they can explore. As a consequence, prohibitively
1
This name is inspired by actual devices for catching bugs. They can
enter easily, but it is hard to escape. The analogy was suggested by James
O’Brien in a conversation with James Kuffner.

(b)
(c)
(a)
Fig. 3. For a set of points inside a bug trap different sampling domains are
shown: (a) regular RRTs sampling domain, (b) visibility Voronoi region,
(c) dynamic domain.
many expensive operations are being performed during the
execution of the RRT planners. For example, interpolation
between the new configuration and its nearest node in the
tree is required at each iteration in the holonomic version
of the RRTs. This involves several collision checks being
performed along the interpolation path, which may be very
expensive in the environments with complicated geometry
[10]. Inverse kinematics, together with interpolation, should
be performed at each iteration of some RRT-based planner
for systems with closed linkages [9]. For nonholonomic
planners [6], [25], some integration is also required at each
iteration.
Thus, the goal of this paper is to find a way of reducing the
number of expensive iterations in RRTs by controlling the
Voronoi bias of the nodes in the tree. We define the problem
formally in the next subsection.
B. Problem Definition
Let C be an n-dimensional configuration space, and C
obs
be the set of obstacles in this space. Let V be a set of N
collision free points lying inside C
free
= C \ C
obs
(i.e. the
current RRT’s nodes), and D be the Voronoi diagram of V .
Definition 2.1: Let L be any local method that computes
a path L(v, v
) (e.g., the straight line segment) between two
given nodes in the tree v and v
. We define the visibility
domain of a point v for L as in [31]:
Vis
L
(v)={v
C
free
such that L(v, v
) C
free
}
Definition 2.2: For a point v V and its Voronoi
region D(v) define the visible Voronoi region of v to be
O(v)=Vis(v) D(v).
Now consider the union of all the visible Voronoi regions
vV
O(v), which together comprise the visibility region of
the set of points V . A uniform distribution over
vV
O(v),
which we call a visibility distribution, would be more ap-
propriate for the RRT planner than the uniform distribution
over the configuration space. Indeed, this distribution does
not have bias for exploring toward the obstacles. At the same
time it includes the important bias toward the unexplored
parts of the configuration space. Examples of the visibility
obst
C
obst
C
obst
C
vv
v
(b)
(c)
(a)
Fig. 4. For a non-boundary point different sampling domains are shown:
(a) regular RRTs sampling domain, (b) visible Voronoi region, (c) dynamic
domain.
C
obst
(a)
(c)
obst
R
v
v
v
C
obst
C
(b)
Fig. 5. For a boundary point different sampling domains are shown: (a)
regular RRTs sampling domain, (b) visible Voronoi region, (c) dynamic
domain.
distribution for a linear local planner and the uniform dis-
tribution over all configuration space for the set of points
inside the bug trap are shown in Figures 3(a) and 3(b).
Ideally, the distribution over the visible Voronoi diagram
should not be uniform. It should concentrate more points
inside the narrow corridors and less points in larger open
areas of the space. This by itself is a very hard problem,
since finding narrow corridors may be harder than solving
the original motion planning problem. Producing a uniform
distribution from the visible Voronoi regions is already quite
a challenging task. In this paper we propose another distri-
bution, which is easier to compute but retains some useful
properties of the visibility distribution. The next section
describes this approach.
III. D
YNAMIC-DOMAIN RRT PATH PLANNER
Although the visibility distribution provides the necessary
bias to the RRT planners, computing it may be expensive.
Consider computing the visible Voronoi region O(v) of
some node v in the tree. Finding the points in D(v) that are
visible f rom v may require performing interpolation and,
therefore, expensive collision detection calls. This is exactly
what planners should try to avoid when the interpolation
is expensive. Therefore, we consider another distribution
which we define as follows.
Definition 3.1: Given a boundary point v at distance
at most from an obstacle in C
obs
, define the boundary
domain for v as the intersection of the Voronoi region of v
and an n-dimensional sphere of radius R, centered at v.
Definition 3.2: The dynamic domain of radius R for the
set of points V is the boundary domains of the boundary
points combined with the Voronoi regions of all other

BUILD DYNAMIC DOMAIN RRT(q
init
)
1 T .init(q
init
);
2 for k =1to K do
3 repeat
4 q
rand
RANDOM CONFIG();
5 q
near
NEAREST NEIGHBOR(q
rand
, T );
6 until dist(q
near
,q
rand
) <q
near
.radius
7 if CONNECT(T ,q
rand
,q
near
,q
new
)
8 q
new
.radius = ;
9 T .add
vertex(q
new
);
10 T .add
edge(q
near
,q
new
);
11 else
12 q
near
.radius = R;
13 Return T ;
Fig. 6. The dynamic domain RRT construction algorithm
points. The uniform distribution over this domain is called
the dynamic domain distribution.
The differences between the original RRT’s sampling
domain, the visibility region and dynamic domain for a set
of points inside a bug trap can be seen on Figure 3. When a
point is quite far from the obstacles, its boundary domain is
the s ame as the RRT’s sampling domain, that is, the whole
Voronoi region (Figure 4). On the other hand, when a point
is a boundary point, the boundary domain may be much
smaller than both the visible Voronoi region and the whole
Voronoi region (Figure 5).
The parameter should be chosen carefully. It should
be sufficiently small, so that the point becomes a boundary
point when most of the attempts to interpolate from it fail.
On the other hand, it should not be smaller than the reso-
lution of the tree, to reduce the number of redundant nodes.
Therefore, can be naturally chosen as the interpolation step
in the connect function of the RRT planner. The radius R is
chosen as a multiple of .
A. Implementation
To obtain the dynamic domain distribution, we generate a
distribution from the configuration space C, and then restrict
it to the dynamic domain. Given that the original distribu-
tion was uniform, the obtained restriction is also uniform.
Computing this restriction corresponds to the lines 3-6 in
the Figure 6. The radius field of each point stores value
R, if it is a boundary point, and value otherwise. It is
important to note, that for this step to be efficient the random
configurations should be chosen from the area closely fitting
the dynamic domain. In our experiments this area is the
smallest bounding box among all boundary domains.
Next, we show how to incorporate sampling from the
dynamic domain in the RRT-CONNECT planner. The com-
plete pseudocode is shown on figure 6. The algorithm up-
dates the information about the boundary points on the fly.
At the beginning of the exploration of the tree, all points are
considered to be non-boundary. As soon as the interpolation
from one of the nodes fails (meaning that the distance to the
(1) (2) (3)
Dynamic-Domain bi-RRT bi-RRT
time (1) 0.4 sec 0.1 sec
no. nodes (1) 253 37
CD calls (1) 618 54
time (2) 2.5 sec 379 sec
no. nodes (2) 1607 6924
CD calls (2) 3751 781530
time (3) 1.6 sec > 80000 sec
no. nodes (3) 1301
CD calls (3) 3022
Fig. 7. The goal is to move a point robot out of the two-dimensional bug
trap. Results for different environment sizes are shown in (1), (2), (3). Each
next environment has 50 times the volume of the previous one.
obstacles is at least , where is length of the interpolation
step) the point becomes a boundary point. This corresponds
to the lines 11-12 in the code. The radius field of this point
is updated to R. Next time the samples from the Voronoi
region of this point are restricted to its boundary domain.
It is important to note that the dynamic domain RRTs
retain the probabilistic completeness of the original RRTs.
The argument follows closely to the one presented in [21].
Deterministic, resolution completeness can alternatively be
obtained (which results in an RDT) by using a dense sample
sequence in the place of the random sequence [24].
Another note is that the proposed method changes its
behavior with the size of the radius parameter R. When
the radius is chosen to be , this dynamic domain RRT is
the same as the original RRT. As the radius value becomes
smaller, the behavior of the dynamic domain RRT is more
greedy. The tree tends to produce more nodes in the free
space, since the bias of the boundary points is reduced.
Therefore, efficient nearest neighbor methods adapted to
the topology of the configuration space should be used [2].
Unfortunately, we do not have theoretical characterization of
the dependence of the performance of the dynamic domain
RRT from the radius parameter. However, there is a strong
relationship between this parameter and the interpolation
step size of the RRT. For all our experiments we set R =
10.
IV. E
XPERIMENTAL RESULTS
We have implemented our algorithm in C and incor-
porated it into the software platform Move3D [32] de-
veloped at LAAS. The experiments were performed on
a 333 MHz Sunblade 100 running SunOs 5.9 and com-
piled under gcc 3.3. We have compared the performance

Dynamic-Domain bi-RRT bi-RRT
time 93 sec 1868 sec
no. nodes 1093 786
CD calls 88926 754493
Fig. 8. Molecule example. The task is to compute the pathway of a small
molecule to the active site located inside the protein model.
Dynamic-Domain bi-RRT bi-RRT
time 217 sec > 80000 sec
no. nodes 219
CD calls 30443
Fig. 9. An example from the manufacturing industry. The goal is to find a
collision free path dismounting a wiper motor from a car body.
of the bidirectional balanced RRT-CONNECT algorithm
and Dynamic-Domain bidirectional RRT-CONNECT. For
each of the experiments we show the running times, the
number of nodes in the solution trees and the number of
the collision detection (CD) calls during the construction
process, averaged over 50 runs.
We first show the results obtained for a bug trap in two
dimensions (Figure 7). We have picked several different
environments to demonstrate the deterioration of the perfor-
mance of the classical bi-RRT planner with the environment
size. In comparison, the average running times of the dy-
namic domain RRT do not change.
Next experiment was performed on the molecule model
shown in Figure 8. Since the molecule is modeled as a
3-d rigid body, the configuration space is 6-dimensional.
The task is to compute the pathway of a ligand (i.e. the
small molecule displayed in black) to the active site located
inside the protein model. The motion planning problem is
Dynamic-Domain bi-RRT bi-RRT
time 96 sec 262 sec
no. nodes 22415 20787
CD calls 296323 443504
Fig. 10. The goal in this example is to move a two link articulated body
with 4 degrees of freedom from one corner of the labyrinth to another.
relatively easy here, since the number of nodes required to
find a solution by a regular bidirectional RRT is 400. How-
ever, since the collision detection calls are very expensive,
the performance of the regular bi-RRT is poor. Therefore,
setting up a small radius parameter, which results in a larger
number of nodes constructed by the dynamic domain RRT,
results in much faster running times.
Next example in Figure 9 is a benchmark from the
automotive industry. Automotive industry provides impor-
tant applications for motion planning, since the industrial
companies can verify the manufacturing process and/or the
maintainability of the assembly by computing the solution
to the motion planning problem. The goal in this example
is to find a collision free path dismounting a wiper motor
from a car body. This is a real industrial problem which is
highly constrained and was solved before with the method
described in [10]. A weighted metric that highly favors
translations is usually used for this environment. The origi-
nal bi-RRT is not able to solve this problem after running for
several days. The dynamic domain RRT solves it on average
in several minutes.
The problem shown in Figure 10 is a motion planning
problem for a two link articulated body with 4 degrees of
freedom. The goal is to move the robot from one corner of
the labyrinth to another. The collision checks are relatively
cheap in this problem and there are several narrow passages.
This problem is easily solved by the original RRT method,
however, the dynamic domain RRT is still advantageous.
V. C
ONCLUSIONS AND FUTURE WORK
We have considered the Voronoi biased exploration strat-
egy of the RRTs and characterized the weaknesses of this
strategy when the obstacles in the configuration space are
not taken into account and/or the sampling region is inappro-
priately chosen. We then proposed a general framework for
addressing these problems by considering a new sampling
strategy based on the visibility region of the nodes in the
tree. The new planner adaptively controls the Voronoi bias

Citations
More filters
MonographDOI

Planning Algorithms: Introductory Material

TL;DR: This coherent and comprehensive book unifies material from several sources, including robotics, control theory, artificial intelligence, and algorithms, into planning under differential constraints that arise when automating the motions of virtually any mechanical system.
Journal ArticleDOI

Real-Time Motion Planning With Applications to Autonomous Urban Driving

TL;DR: The proposed algorithm was at the core of the planning and control software for Team MIT's entry for the 2007 DARPA Urban Challenge, where the vehicle demonstrated the ability to complete a 60 mile simulated military supply mission, while safely interacting with other autonomous and human driven vehicles.
Journal ArticleDOI

Sampling-Based Robot Motion Planning: A Review

TL;DR: The state of the art in motion planning is surveyed and selected planners that tackle current issues in robotics are addressed, for instance, real-life kinodynamic planning, optimal planning, replanning in dynamic environments, and planning under uncertainty are discussed.
Journal ArticleDOI

Sampling-Based Path Planning on Configuration-Space Costmaps

TL;DR: The proposed planner computes low-cost paths that follow valleys and saddle points of the configuration-space costmap using the exploratory strength of the Rapidly exploring Random Tree (RRT) algorithm with transition tests used in stochastic optimization methods to accept or to reject new potential states.
Journal ArticleDOI

Survey of Robot 3D Path Planning Algorithms

TL;DR: This paper discusses the fundamentals of these most successful robot 3D path planning algorithms which have been developed in recent years and concentrate on universally applicable algorithms which can be implemented in aerial robots, ground robots, and underwater robots.
References
More filters
MonographDOI

Planning Algorithms: Introductory Material

TL;DR: This coherent and comprehensive book unifies material from several sources, including robotics, control theory, artificial intelligence, and algorithms, into planning under differential constraints that arise when automating the motions of virtually any mechanical system.
Journal ArticleDOI

Probabilistic roadmaps for path planning in high-dimensional configuration spaces

TL;DR: Experimental results show that path planning can be done in a fraction of a second on a contemporary workstation (/spl ap/150 MIPS), after learning for relatively short periods of time (a few dozen seconds).
Book

Planning Algorithms

Journal Article

Rapidly-exploring random trees : a new tool for path planning

TL;DR: The Rapidly-exploring Random Tree (RRT) as discussed by the authors is a data structure designed for path planning problems with high degrees of freedom and non-holonomic constraints, including dynamics.
Proceedings ArticleDOI

RRT-connect: An efficient approach to single-query path planning

TL;DR: A simple and efficient randomized algorithm is presented for solving single-query path planning problems in high-dimensional configuration spaces by incrementally building two rapidly-exploring random trees rooted at the start and the goal configurations.
Frequently Asked Questions (8)
Q1. What are the contributions mentioned in the paper "Dynamic-domain rrts: efficient exploration by controlling the sampling domain" ?

In this paper the authors characterize these issues and propose a general framework for minimizing their effect. The authors develop and implement a simple new planner which shows significant improvement over existing RRT-based planners. 

As soon as the interpolation from one of the nodes fails (meaning that the distance to theobstacles is at least , where is length of the interpolation step) the point becomes a boundary point. 

Let V be a set of N collision free points lying inside Cfree = C \\ Cobs (i.e. the current RRT’s nodes), and D be the Voronoi diagram of V . 

The dynamic domain of radius R for the set of points V is the boundary domains of the boundary points combined with the Voronoi regions of all otherpoints. 

Since the size of the free space inside the trap is considerably larger than the narrow opening, in high dimensions it can be a very challenging problem for any motion planner. 

One improvement would be to consider other kinds of boundary domains, for example hyperplanebased domains, which are automatically adapted with respect to the distances to the obstacles. 

The task is to compute the pathway of a ligand (i.e. the small molecule displayed in black) to the active site located inside the protein model. 

The authors define the visibility domain of a point v for L as in [31]:V isL(v) = {v′ ∈ Cfree such that L(v, v′) ∈ Cfree}Definition 2.2: For a point v ∈ V and its Voronoi region D(v) define the visible Voronoi region of v to be O(v) = V is(v) ∩ D(v).