Sampling Based Robot Motion Planning: Dept. of Ece, Bgsit 2015page 1
Sampling Based Robot Motion Planning: Dept. of Ece, Bgsit 2015page 1
Sampling Based Robot Motion Planning: Dept. of Ece, Bgsit 2015page 1
CHAPTER 1
INTRODUCTION
Autonomous robots are characterized by their ability to exe-cute tasks deprived of
any human intervention. Decision making requires full or partial knowledge of the
surrounding environment, or workspace, in which the agent is operating. Recent advances
in sensor technology have enabled the use of reliable multisensory perception systems.
Uncertainty in the perception stage leads to accumulated localization errors. Processing of
collected data and accounting for errors is essential for accurate mapping and localization.
The planning stage involves devising a collision free strategy from the current location, or
configuration, to a desired goal location, or configuration. The current configuration is
estimated in the localization stage whereas a behavioral planner can provide a goal
configuration. Path planning is a purely geometric process that is only concerned with
finding a collision free path regardless of the feasibility of the path. Kinodynamic
planning, on the other hand, considers the kinematics and dynamics of the robot. Once a
path is specified the final procedure is motion control or execution. The full potential of
autonomous vehicles is yet to be fully exploited in enriching human lives. Nevertheless
there exist several applications such as self-driving cars, forklifts, mining trucks,
unmanned aerial vehicles (UAV), military drones, cleaning mobile robots, planetary
rovers, rescue robots and many more.
computational methods inspired their use in path planning. Methods such as Fuzzy Logic
Control, Neural Networks, Genetic Algorithms, Ant Colony Optimization and Simulated
Annealing have all been applied in robot path planning. Khatib proposed a potential field
method such that artificial forces repelled the robot away from the obstacles and attracted
it towards the goal position.
obstacle space are discarded. This is followed by a query phase where the start and goal
configurations are defined and connected to the roadmap. Roadmaps are sometimes
referred to as forests, as an analogy to trees in RRT. As a result of maintaining the
roadmap and specifying start and goal configurations in a subsequent stage, PRM is able
to solve different instances of the problem in the same environment. It is referred to as a
multi-query planner. Planning time is invested in sampling and generating a roadmap so
that queries are solved quickly. Initially developed for articulated robots. PRM has been
extended for nonholonomic car-like robots. It was shown that PRM is probabilistically
complete.
RRT represents another category of sampling based planners, which are single-
query planners. A tree is incrementally grown from the start configuration to the goal
configuration, or vice versa. A configuration is randomly selected in the configuration
space. If it lies in the free space, a connection is attempted to the nearest vertex in the
tree. For single query problems, RRT is faster compared to PRM. It does not need to
sample the configuration space and construct a roadmap i.e. learning phase. RRT was
shown to be probabilistically complete.
Expansiveness was proposed as a measure of the number of neighbouring nodes to
any nodes. It is used as an indication whether a node will be useful in expanding the
search tree. Expansive space trees (EST) were developed based on that proposed measure.
Unlike RRT where sampling is uniform, EST employs a function that sets the probability
of node selection based on neighbouring nodes.
Table 1.1: Main SBP algorithms
CHAPTER 2
2.2 PRIMITIVES
It is essential to introduce the constitutions of any SBP algorithm prior to
introducing the different planners.
Sampling: This procedure is used to select a configuration, randomly, or quasi-
randomly, and add it to the tree or roadmap. As mentioned earlier, the samples can be
either in the free, or obstacle configuration space. It can be considered as the core of
the planner and the main advantage of SBP over other techniques.
Metric: Given two configurations qa and qb, this procedure returns a value, or cost,
that signifies the effort required to reach qb from qa. It is important that it is truly
representative of the effort, or time-to-go between both configurations. Otherwise
highly suboptimal solutions will be returned.
Nearest Neighbour (NN): It is a search algorithm that returns that closest node(s) to
the new sample. The value is based on the predefined metric function. Some papers
refer to it as proximity search or near vertices.
Select Parent: This procedure selects an existing node to connect to newly sampled
node. That existing node is considered parent. RRT selects the nearest node as the
parent. PRM connects the sample to several nodes within its neighbourhood. On the
other hand, EST selects a parent node to randomly extend based on its neigh-boring
nodes. Ariadne's clew selects a parent node for extension using a genetic algorithm.
Local planning: Given two configurations qa and qb, this procedure attempts to
establish a connection between them. It is intuitive to employ straight-line paths. For
most robotic systems this is not a feasible plan due to kinematic or dynamic
constraints.
Collision checking (CC): It is mostly a Boolean function that returns success, or
failure, when connecting two configurations. A connection is successful, if it does not
intersect Cobs.
2.3 ALGORITHMS
Algorithms for PRM and RRT are presented. They are the main algorithms used
in SBP. It must be noted that configurations may be referred to, using common SBP
literature terminology, as nodes or milestones, throughout this study.
2.3.1 RRT
The search is initialized from qstart. A node, qrand, is selected from the C-space
using the sample procedure, as shown in Figure 2.2.qrand is discarded, if it is in Cobs.
Dept. of ECE, BGSIT 2015Page 5
Sampling Based Robot Motion Planning
Using Nearest Neighbour search qnear is returned according to the metric, as shown in
Figure 2.3. The local planner is used to connect qrand and qnear. The planner may return
qnew qrand may not be reachable, as shown in Figure 2.3. If qrand is not reached, it is
discarded. Collision checking is performed to ensure the path between qnear and qnew is
collision free. If path is collision free qnew is added to the tree as shown in, as show in
Figure 2(d).The search terminates when qnew D qgoal, a number of iterations is exceeded
or a specified time period are exceeded.
Figure 2.3: RRT exploring free space (right) and environment with one obstacle (left) after 500
iterations.
The ability of RRT to explore free space in presence and absence of obstacles is
illustrated in Figure 3. This property is often referred to as the Voronoi bias of RRT. As a
result of uniform sampling, the planner is more likely to select samples in larger Voronoi
regions and the tree is incrementally and rapidly grown towards that free space.
2.3.2 PRM
Firstly, a roadmap is built in the learning phase, A node, qrand, is selected from
the C-space using sample procedure. qrand is discarded, if it is in Cobs. Otherwise, qrand
is added to the roadmap. Find all nodes within a specified range to qrand Attempt to
connect all neighbouring nodes using local planner to qrand: Check for collision and
disconnect colliding paths this process is repeated until a certain number of nodes have
been sampled.
A typical roadmap, built in the learning phase, is shown in Figure 2.4. In the query
phase the start and goal configurations are connected to the roadmap. A graph search
algorithm is then used to find the shortest path through the roadmap between start and
goal configurations.
CHAPTER 3
Medial axis: Sampling probability is increased around the medial axis (Voronoi
graph) to guide the generation of a roadmap that fully captures the shape of the C-
space.
Boundary: Forcing sampling towards the boundary of obstacles, as opposed to free
space, was proposed in.
Gaussian: Similar to boundary sampling, this strategy increases the probability of
sampling around obstacles. Nodes are expanded using an adaptive probability based
on obstacle and collision data.
Bridge-test: This overcomes the weakness of SBP in narrow regions. The strategy
uses a short segment with two configurations and their midpoint. If the two ends are
in Cobs and their midpoint is in Cfree then a narrow region has been identified.
Hybrid: Combining two sampling strategies, narrow pas-sage (bridge-test), and
uniform sampling. This lead to an increase density in narrow regions and still
maintaining randomization which is advantageous in solving difficult problems.
Medial axis and narrow sampling are combined to better capture the environment
connectivity.
The motivation behind the attempts to guide the search is that RRT expansion is
more prone to fail if the node is near and obstacle (boundary node). A simple approach is
to attempt to limit the sampling domain to the visibility region, which is difficult to
compute. Dynamic-Domain RRT (DD-RRT) limits the sampling domain of boundary
nodes to a small ball of a predetermined radius as an alternative to the visibility region.
Adaptive Dynamic Domain RRT (ADD-RRT) limits the domain to a ball, whose radius
changes according to the extension success rate of each boundary node.
Unlike ADD-RRT and DD-RRT, Utility-RRT influences the direction and length
of extension, not the sampling domain. A utility function evaluates the direction of
expansion and the selected node. Utility functions are computed based on the success rate
of the node and previous direction of expansion. Obstacle Based RRT (OB-RRT) gathers
data from obstacles and selects predetermined growth directions. Utility-RRT
outperforms both ADD-RRT and RRT, OB-RRT has only been benchmarked against
RRT. OB-RRT relies on obstacles models consisting of triangles. No discussion is
provided whether this method would extend to other representations.
3.3 METRICS
Metrics are used to indicate the cost or time to go between two configurations.
PRM and RRT are reliant on metrics for extending their search. Choosing an accurate
metric is arguably as difficult as the motion problem itself. It is of the utmost importance
that metrics provide a good estimation, not necessarily exact, of the cost between two
configurations. Metrics can be called multiple times during the planning procedure so it
must be easily computed.
Dept. of ECE, BGSIT 2015Page 9
Sampling Based Robot Motion Planning
EST and Guided Expansive Space Trees (GEST) select nodes for expansion based
on their neighboring nodes. Path Directed Subdivision Trees (PDST) and KPIECE1 select
nodes for expansion based on their coverage, to ensure that expansion is not wasted on
already explored areas. These planners reduce their dependency on metrics.
Amato, et al. experimentally studied the effect of different metrics on PRM and
reported that the best performance was obtained by using a weighed Euclidian metric.
This metric accounted for rotation as well as linear Euclidian distance. Similarly,
accounting for rotation using Euler angles, or Quaternions, proved to be advantageous
when planning with RRT in 3D. Nonholonomic vehicles such as car-like ground robots or
UAV with upper-bounded curvature are common robotic platforms. Euclidian metric is a
poor choice for those vehicles since two configurations that are physically close may
require complex Maneuvering to reach (see subsection III-G for discussion on local
planning). Calculating the true cost involves expensive computations which is infeasible
given the frequency of the metric function usage during planning. SRRT uses a Euclidian
distance to calculate the closest k-neighbors, where k is a positive integer, and then
connect to the one with the smaller real distance. Another approach overestimates the
distance when the Euclidian distance is less than the minimum turning radius, indicating
that a complex Maneuver might be needed. Manipulability was pro-posed as a metric for
articulated robots to signify the ease by which the robot can reach a certain
configurations, especially that articulated have redundant configurations.
One of the main properties of SBP is that obstacles in the environment are not
explicitly defined. Planning generally takes place in the C-space, which is separated into
Cfree and Cobs. This approach requires a module, which provides information on
whether a path collides with any obstacle. Since the goal of SBP is to create collision free
paths in the C-space, it stands to reason that collision checking (CC) will be called several
times during planning. Some experiments show that more than 90% of planning time is
spent processing CC queries. It can be noticed by from any SBL that most connections
are collision free.
Single-query Bidirectional Lazy (SBL) is a planner that not only delays planning but it
also performs CC in regions that are more likely to collide. The CC algorithm in SBL is
based on four observations:
Figure3.1: (a) The midpoint of a colliding path between two free configurations is more likely to be
in Cobs (b) It is difficult to have a colliding path between two free configurations that are separated
by a short distance.
Figure 3.2: (a) Naive incremental collision checking (b) SBL midpoint collision checking .
3.5 HEURISTICS
In this section we introduce some methods that have been shown to re ne the
solution cost or planning time of SBP. It must be noted that there are no theoretical
guarantees to those claims. However, these planners have been shown to work well in
various situations. We will provide some discussions about the strengths and shortcoming
of those tactics.
RRT-Connect and SBL use two trees to perform bidirectional search. One tree is
rooted at the start, whereas the other is at the goal. The search is complete when the two
trees are connected. This approach provides significant improvements in the search
efficiency, which is illustrated in Figure 3.3. Triple RRT generates two trees from start
and goal configurations and one tree from a narrow region which is identified using the
bridge test. Similarly, Multiple RRT are generated from all narrow regions, in the free
space that are identified using the bridge test. A problem arises when attempting to
connect two trees for differentially constrained systems where the local planning is not a
simple straight line, resulting in what is known as a boundary valued problem. Methods to
overcome this problem will be discussed in section IV.
Figure 3.3: Unidirectional search coverage area (left) and bidirectional search (right).
It can be seen that using NN search to connect the sampled node to the nearest
node does not necessarily improve the path cost. A k-near RRT employs NN search to
find the nearest k nodes, where k is a positive integer. The path is evaluated for all the k-
nearest nodes and the node with the best solution is connected to improve the overall
solution. The drawback of this approach is computational overhead as, NN search is
called, and metrics are evaluated more frequently.
employed to speed up the search. Whereas some methods attempt to guide to improve the
path quality during the search process the algorithms in this section proceed to smooth
and modify the path after planning is complete. Post processing is illustrated in Figure
3.4. The original path is shown as a thin line, the dotted line is the trimmed path, and
finally the bold line shows the smooth curved path.
Figure 3.4: The original path is highly suboptimal (grey thin line). Redundant nodes are removed and
the rest are connected to provide a shortcut path (red dotted line).
Post processing, as is the case with any SBP stage, is limited by an amount of time.
Alternating between hybridization and smoothing within the given time-frame have been
shown to be effective and computationally efficient. Path Deformation Roadmap (PDR)
extends on the notion of Visibility PRM by removing redundant paths that can be
deformed into other existing paths. Maintaining a compact deformable roadmap
facilitates post processing as various paths between two roadmaps can be easily obtained.
robots can solve a single query, i.e. reach a pose, in a various configurations. Certain
planning dimensions are disregarded by constraining the motion of the robot to a specific
manifold or moving the planning problem into a lower dimensional space that is more
relevant the task.
CHAPTER 4
EXPERIMENTS
In order to illustrate the significance of SBP parameters on the results obtained
several experiments are presented here.
RRT rely on random sampling. As a result, running the same algorithm with the
same parameters will produce different solutions. Some solutions can be near optimal,
lucky, while others may be grossly suboptimal, pathological cases. Both cases are shown
in Figure 10. There are three obstacles in the environment shown as grey boxes. The goal
region is highlighted as the green box, the path is shown in red and the RRT is shown as
black lines.
Figure 4.1: Trap environment is shown on the left and cluttered is shown on the right.
Figure 4.2. Trap environment is shown on the left and cluttered is shown on the right.
Several measures have been put in place to ensure that the presented results are
truly reflective of parameter effects. Firstly, any experiment is looped for 54 runs, the best
and worst two results are then omitted, and the remaining 50 are averaged. All
experiments are run on three environments, each with its own challenges. Environment
dimensions are 100x100 in all cases, obstacles are grey objects, goal region is a green
box, RRT is shown in black, and the final path is highlighted in red. The environments
are referred to as narrow, trap and clutter in this study, shown in Figure 10, Figure 11 left
and Figure 11 right respectively. All the experiments are implemented in Python.
Kinodynamic planning deals with the kinematic, nonholonomic and, or, dynamic
constraints imposed on the robotic system or vehicle. The previously presented planners
were purely geometric, considering only the feasibility of the path. The term
``Kinodynamic'' has been coined as a synergy between kinematics and dynamics.
Deterministic planners were proposed, however, they suffered from high computational
costs.
modification support was exploited by generating a feasible path and then subsequent
local adjustments are performed to ensure dynamic feasibility. The main advantage, of
using splines, is that kinodynamic planning is limited to a lower dimensional space, a
notion similar to Maneuver based planning proposed, thus planning can be executed in
real time scenarios. Subsequently, B-spline interpolation was used to generate smooth
trajectories for an RRT planner in a dynamic driving scenario.
Figure 4.3: (a) Select a random node (b) Compute the reachability of the nearest node (c) Find the
nearest reachable node to the random node, shown as a red node (d) Extension will only be executed
if the reachable node is closer.
4.3.1 RRT*
A recent development in SBP was set forth by Karaman and Frazzoli. A family
of optimal sampling based planners, RRT*2, PRM* and RRG*; were presented which
guaranteed asymptotic optimality. These algorithms operate analogously to any common
SBP except in two procedures. Performing nearest neighbor search and adding a node to
the existing graph or tree. The two different procedures are named ``near vertices'' and
``Rewire''. Near vertices returns a number of nearest nodes similar to k-RRT.
CHAPTER 5
5.1 APPLICATIONS
Robot navigation
Automation
The driverless car
Robotic surgery
Digital character animation
Protein folding
Safety and accessibility in computer-aided architectural design
5.2 ADVANTAGES
Explores small subset of possibilities by sampling
Computationally efficient
Solves high-dimensional problems (with hundreds of DOFs)
Easy to implement
Applications in many different areas
5.3 DISADVANTAGES
CONCLUSION
This brings into the light the gap that existed in classical motion planning
algorithms to illustrate the significance of SBP and the motivation behind their inception.
We then continue by listing the main algorithms that all state of the art algorithms are
built upon. The growing body of work is surveyed in this paper. Several experiments are
executed to shed a light on some of the current issues, investigated by researchers, and
highlight the implementation details that are often not discussed when planners and
algorithms are proposed.
REFERENCES
[1]A. Kelly and A. Stentz, ``Rough terrain autonomous mobility Part 2: An active vision,
predictive control approach,'' Autonom. Robot, vol. 5, no. 2, pp.163 198, May 1998.
[2]P. Corke, J. Lobo, and J. Dias, ``An introduction to inertial and visual sensing,'' Int. J.
Robot. Res., vol. 26, no. 6, pp. 519 535, Jun. 2007.
[4]G. Pandey, J. R. McBride, and R. M. Eustice, ``Ford campus vision and lidar data set,''
Int. J. Robot. Res., vol. 30, no. 13, pp. 1543 1552, Nov. 2011.
[5]A. Geiger, P. Lenz, C. Stiller, and R. Urtasun, ``Vision meets robotics: The KITTI
dataset,'' Int. J. Robot. Res., vol. 32, no. 11, pp. 1231 1237, Sep. 2013.