robot motion planning and obstacle avoidance algorithms
-
Upload
meeshu-agnihotri -
Category
Documents
-
view
110 -
download
2
description
Transcript of robot motion planning and obstacle avoidance algorithms
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
1: Introduction
Some of the most significant challenges confronting autonomous robotics lie in the area
of motion planning. The prototypical task is to find a path for a robot, whether it is a robot
arm, a mobile robot, or a magically free-flying piano, from one configuration to another
while avoiding obstacles.
From the early piano mover's problem, motion planning has evolved to address a huge
number of variations on the problem, allowing applications in areas such as animation of
digital characters, surgical planning, automatic verification of factory layouts, mapping of
unexplored environments, navigation of changing environments, assembly sequencing,
and drug design.
1.1 Piano Mover's Problem
The classic path planning problem is the piano mover's problem. Given a three-
dimensional rigid body, for example a polyhedron, and a known set of obstacles, the
problem is to find a collision-free path for the omnidirectional free-flying body from a
start configuration to a goal configuration. The obstacles are assumed to be stationary and
perfectly known, and the execution of the planned path is exact. This is called offline
planning, because planning is finished in advance of execution.
The key problem is to make sure no point on the robot hits an obstacle, so we need to
represent the location of all the points on the robot. This representation is the
configuration of the robot, and the configuration space is the space of all configurations
the robot can achieve. The configuration space is generally non-Euclidean, meaning that
it does not look like an n-dimensional Euclidean space Rn. The dimension of the
configuration space is equal to the number of independent variables in the representation
of the configuration, also known as the degrees of freedom (DOF). The problem is to find
a curve in the configuration space that connects the start and goal points and avoids all
configuration space obstacles that arise due to obstacles in the space.
Department of ECE, DSCE Page 1
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
1.2 APPLICATIONS OF MOTION PLANNING
Mini AERCam
NASA's Johnson Space Center is developing the Mini AERCam, or Autonomous
Extravehicular Robotic Camera, for visual inspection tasks in space (figure 1.1). It is a
free-flying robot which when operating in autonomous mode, must be able to navigate in
a potentially complex three-dimensional environment.
Figure 1.1: NASA's Mini AERCam free-flying video inspection robot.
Planetary Exploration
One of the most exciting successes in robot deployment was a mobile robot, called
Sojourner, which landed on Mars on July 4, 1997. Sojourner provided up-close images of
Martian terrain surrounding the lander. Sojourner did not move very far from the lander
and was able to rely on motion plans generated offline on Earth and uploaded.
Demining
Mine fields stifle economic development and result in tragic injuries and deaths each
year. Robots can play a key role in quickly and safely demining an area. The crucial first
step is finding the mines. In demining, a robot must pass a mine-detecting sensor over all
points in the region that might conceal a mine.
Department of ECE, DSCE Page 2
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
Snake Robots for Urban Search and Rescue
When a robot has many extra degrees of freedom, then it is called hyper-redundant. They
can use their extra degrees of freedom to thread through tightly packed volumes to reach
locations inaccessible to humans and conventional machines. These robots may be
particularly well-suited to urban search and rescue, where it is of paramount importance
to locate survivors in densely packed rubble as quickly and safely as possible.
Digital Actors
Algorithms developed for motion planning or sensor interpretation are not just for robots
anymore. In the entertainment industry, motion planning has found a wide variety of
applications in the generation of motion for digital actors, opening the way to exciting
scenarios in video games, animation, and virtual environments.
Museum Tour Guides
In 1997, a mobile robot named RHINO (figure 1.2) served as a fully autonomous tour-
guide at the Deutsches Museum Bonn. RHINO was able to lead museum visitors from
one exhibit to the next by calculating a path using a stored map of the museum. To deal
with uncertainty and changes in the environment, RHINO employed a sensor-based
planning approach, interleaving sensing, planning, and action.
Figure 1.2: RHINO, the interactive mobile tour-guide robot
Department of ECE, DSCE Page 3
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
2: Concepts in Motion Planning
The characterization of a motion planner is according to the task it addresses, properties
of the robot solving the task, and properties of the algorithm. Table 2.1 discusses some of
these motion planners.
Table 2.1: Various Characterization of Motion Planner
Task Robot Algorithm
Navigate
Map
Cover
Localize
Configuration space, degree of freedom
Kinematic/dynamic
Omnidirectional or motion constraints
Optimal/non optimal motions
Computational complexity
Completeness (resolution, probabilistic)
Online/offline
Sensor-based/world model
2.1 Task
The most important characterization of a motion planner is according to the problem it
solves. Four of the tasks considered are: navigation, coverage, localization, and mapping.
Navigation is the problem of finding a collision-free motion for the robot system from
one configuration (or state) to another. Coverage is the problem of passing a sensor or
tool over all points in a space, such as in demining or painting. Localization is the
problem of using a map to interpret sensor data to determine the configuration of the
robot. Mapping is the problem of exploring and sensing an unknown environment to
construct a representation that is useful for navigation, coverage, or localization.
Localization and mapping can be combined, as in Simultaneous Localization and
Mapping (SLAM).
Department of ECE, DSCE Page 4
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
2.2 Properties of the Robot
The form of an effective motion planner depends heavily on properties of the robot
solving the task. For example, the robot and the environment determine the number of
degrees of freedom of the system and the shape of the configuration space. Once we
understand the robot's configuration space, we can ask if the robot is free to move
instantaneously in any direction in its configuration space (in the absence of obstacles). If
so, we call the robot omnidirectional. If the robot is subject to velocity constraints, such
as a car that cannot translate sideways, both the constraint and the robot are called
nonholonomic. Finally, the robot could be modeled using kinematic equations, with
velocities as controls, or using dynamic equations of motion, with forces as controls.
2.3 Properties of the Algorithm
Once the task and the robot system are defined, we can choose between algorithms based
on how they solve the problem. For example, does the planner find motions that are
optimal in some way, such as in length, execution time, or energy consumption? Or does
it simply find a solution satisfying the constraints? In addition to the quality of the output
of the planner, we can ask questions about the computational complexity of the planner.
Are the memory requirements and running time of the algorithm constant, polynomial, or
exponential in the "size" of the problem description?
Some planners are complete, meaning that they will always find a solution to the motion
planning problem when one exists or indicate failure in finite time. For the motion
planning problem, as the number of degrees of freedom increases, complete solutions
may become computationally intractable. Therefore, we can seek weaker forms of
completeness. One such form is resolution completeness. It means that if a solution exists
at a given resolution of discretization, the planner will find it. Another weaker form of
completeness is probabilistic completeness. It means that the probability of finding a
solution (if one exists) converges to 1 as time goes to infinity.
We say a planner is offline if it constructs the plan in advance, based on a known model
of the environment, and then hands the plan off to an executor. The planner is online if it
incrementally constructs the plan while the robot is executing. In this case, the planner
can be sensor-based, meaning that it interleaves sensing, computation, and action.
Department of ECE, DSCE Page 5
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
2.4 Mathematics in Motion Planning
Throughout this report, robots are assumed to operate in a planar ( 2) or three-
dimensional ( 3) ambient space, sometimes called the workspace ( ). This workspace
will often contain obstacles; let be the ith obstacle. The free workspace is the set of
points where the \ is a subtraction operator and Ui is the union or
summation of all obstacles.
Motion planning, however, does not usually occur in the workspace. Instead, it occurs in
the configuration space (also called C-space), the set of all robot configurations. We
will use the notation R(q) to denote the set of points of the ambient space occupied by the
robot at configuration q. An obstacle in the configuration space corresponds to
configurations of the robot that intersect an obstacle in the workspace, i.e.
. Now we can define the free configuration space as
.
3: Bug Algorithms
The Bug1 and Bug2 algorithms are among the earliest and simplest sensor-based planners
with provable guarantees. These algorithms assume the robot is a point operating in the
Department of ECE, DSCE Page 6
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
plane with a contact sensor or a zero range sensor to detect obstacles. When the robot has
a finite range (nonzero range) sensor, then the Tangent Bug algorithm is a Bug derivative
that can use that sensor information to find shorter paths to the goal. The Bug and Bug-
like algorithms are straightforward to implement; moreover, a simple analysis shows that
their success is guaranteed, when possible.
3.1 Bug1 Algorithm
Perhaps the most straight forward path planning approach is to move toward the goal,
unless an obstacle is encountered, in which case, circumnavigate the obstacle until motion
toward the goal is once again allowable. Essentially, the Bug1 algorithm formalizes the
"common sense" idea of moving toward the goal and going around obstacles. The robot is
assumed to be a point with perfect positioning (no positioning error) with a contact sensor
that can detect an obstacle boundary if the point robot "touches" it. The robot can also
measure the distance d(x, y) between any two points x and y. Finally, assume that the
workspace is bounded. Let Br (x) denote a ball of radius r centered on x, i.e.
. The fact that the workspace is bounded implies that for
all , there exists an r < ∞ such that .
The start and goal are labeled qstart and qgoal, respectively. Let qLO = qstart and the m-line be
the line segment that connects qLi to qgoal. Initially, i = 0. The Bug1 algorithm exhibits two
behaviors: motion-to-goal and boundary-following. During motion-to-goal, the robot
moves along the m-line toward qgoal until it either encounters the goal or an obstacle. If the
robot encounters an obstacle, let qH1 be the point where the robot first encounters an
obstacle and call this point a hit point. The robot then circumnavigates the obstacle until it
returns to qH1. Then, the robot determines the closest point to the goal on the perimeter of
the obstacle and traverses to this point. This point is called a leave point and is labeled
qL1. From qL
1, the robot heads straight toward the goal again, i.e., it reinvokes the motion-
to-goal behavior. If the line that connects qL1 and the goal intersects the current obstacle,
then there is no path to the goal; note that this intersection would occur immediately
"after" leaving qL1.
Otherwise, the index i is incremented and this procedure is then repeated for qLi and qH
i
until the goal is reached or the planner determines that the robot cannot reach the goal
Department of ECE, DSCE Page 7
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
(figures 3.1, 3.2). Finally, if the line to the goal "grazes" an obstacle, the robot need not
invoke a boundary following behavior, but rather continues onward toward the goal.
Figure 3.1: The Bug1 algorithm successfully finds the goal.
Figure 3.2: The Bug1 algorithm reports the goal is unreachable.
3.2 BUG2 ALGORITHM
Like its Bug1 sibling, the Bug2 algorithm exhibits two behaviors: motion-to-goal and
boundary-following. During motion-to-goal, the robot moves toward the goal on the m-
line; however, in Bug2 the m-line connects qstart and qgoal, and thus remains fixed. The
boundary-following behavior is invoked if the robot encounters an obstacle, but this
Department of ECE, DSCE Page 8
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
behavior is different from that of Bug1. For Bug2, the robot circumnavigates the obstacle
until it reaches a new point on the m-line closer to the goal than the initial point of contact
with the obstacle. At this time, the robot proceeds toward the goal, repeating this process
if it encounters an object. If the robot re-encounters the original departure point from the
m-line, then there is no path to the goal (figures 3.3, 3.4). Let be the
current position of the robot, i = 1, and qLO be the start location.
Figure 3.3: (Top) The Bug2 algorithm finds a path to the goal. (Bottom) The Bug2 algorithm reports failure.
Department of ECE, DSCE Page 9
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
Figure 3.4: Bug2 Algorithm.
At first glance, it seems that Bug2 is a more effective algorithm than Bug1 because the
robot does not have to entirely circumnavigate the obstacles; however, this is not always
the case. This can be seen by comparing the lengths of the paths found by the two
algorithms. For Bug1, when the ith obstacle is encountered, the robot completely
circumnavigates the boundary, and then returns to the leave point. In the worst case, the
robot must traverse half the perimeter, pi, of the obstacle to reach this leave point.
For Bug2, the path length is a bit more complicated. Suppose that the line through qstart
and qgoal intersects the ith obstacle ni times. Then, there are at most ni leave points for this
obstacle, since the robot may only leave the obstacle when it returns to a point on this
line. It is easy to see that half of these intersection points are not valid leave points
because they lie on the "wrong side" of the obstacle, i.e., moving toward the goal would
cause a collision. In the worst case, the robot will traverse nearly the entire perimeter of
the obstacle for each leave point. For each obstacle that it encounters, Bug1 performs an
exhaustive search to find the optimal leave point. In contrast, Bug2 uses an opportunistic
approach. When Bug2 finds a leave point that is better than any it has seen before, it
commits to that leave point. Such an algorithm is also called greedy, since it opts for the
first promising option that is found. When the obstacles are simple, the greedy approach
of Bug2 gives a quick payoff, but when the obstacles are complex, the more conservative
approach of Bug1 often yields better performance.
Department of ECE, DSCE Page 10
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
4: Potential Functions
We have seen that the Bug algorithms maneuver through free space without constructing
the configuration space, but the Bug algorithms are limited to simple two-dimensional
configuration spaces. Potential Functions introduces navigation planners that apply to a
richer class of robots and produce a greater variety of paths than the Bug methods, i.e.,
they apply to a more general class of configuration spaces, including those that are
multidimensional and non-Euclidean.
A potential function is a differentiable real-valued function . The value of a
potential function can be viewed as energy and hence the gradient of the potential is
force. The gradient is a vector
which points in the direction that locally maximally increases U. We use the gradient to
define a vector field, which assigns a vector to each point on a manifold. A gradient
vector field, as its name suggests, assigns the gradient of some function to each point.
When U is energy, the gradient vector field has the property that work done along any
closed path is zero.The potential function approach directs a robot as if it were a particle
moving in a gradient vector field. Gradients can be intuitively viewed as forces acting on
a positively charged particle robot which is attracted to the negatively charged goal.
Obstacles also have a positive charge which forms a repulsive force directing the robot
away from obstacles. The combination of repulsive and attractive forces hopefully directs
the robot from the start location to the goal location while avoiding obstacles (figure 4.1).
Figure 4.1: The negative charge attracts the robot and the positive charge repels it,
resulting in a path, denoted by the dashed line, around the obstacle and to the goal.
Department of ECE, DSCE Page 11
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
Potential functions can be viewed as a landscape where the robots move from a "high-
value" state to a "low-value" state. The robot follows a path "downhill" by following the
negated gradient of the potential function. Following such a path is called gradient
descent, i.e.
The robot terminates motion when it reaches a point where the gradient vanishes, i.e., it
has reached a q* where ∇U (q*) = 0. Such a point q* is called a critical point of U. The
point q* is either a maximum or a minimum, or a saddle point (figure 4.2). One can look
at the second derivative to determine the type of critical point. For real-valued functions,
this second derivative is the Hessian matrix.
Figure 4.2: Different types of critical points: (Top) Graphs of functions. (Bottom)
Gradients of functions.
For gradient descent methods, we do not have to compute the Hessian because the robot
generically terminates its motion at a local minimum, not at a local maximum or a saddle
point. Since gradient descent decreases U, the robot cannot arrive at a local maximum,
unless of course the robot starts at a maximum. Since we assume that the function is
Department of ECE, DSCE Page 12
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
never flat, the set of maxima contains just isolated points, and the likelihood of starting at
one is practically zero. However, even if the robot starts at a maximum, any perturbation
of the robot position frees the robot, allowing the gradient vector field to induce motion
onto the robot. Arriving at a saddle point is also unlikely, because they are unstable as
well. Local minima, on the other hand, are stable because after any perturbation from a
minimum, gradient descent returns the robot to the minimum. Therefore, the only critical
point where the robot can generically terminate is a local minimum. Hopefully this is
where the goal is located. See figure 4.3 for an example of a configuration space with its
corresponding potential function, along with its energy surface landscape and gradient
vector field.
Figure 4.3: (a) A configuration space with three circular obstacles bounded by a circle. (b) Potential function energy surface. (c) Contour plot for energy surface. (d) Gradient vectors for potential function.
There are many potential functions other than the attractive/repulsive potential. Many of
these potential functions are efficient to compute and can be computed online.
Unfortunately, they all suffer one problem—the existence of local minima not
corresponding to the goal. This problem means that potential functions may lead the robot
to a point which is not the goal; in other words, many potential functions do not lead to
complete path planners. Two classes of approaches address this problem: the first class
augments the potential field with a search-based planner, and the second defines a
potential function with one local minimum, called a navigation function. Although
complete (or resolution complete), both methods require full knowledge of the
configuration space prior to the planning event.
4.1 Local Minima Problem
The problem that plagues all gradient descent algorithms is the possible existence of local
minima in the potential field. There is no guarantee that gradient descent will find a path
to qgoal. In figure 4.4, the robot is initially attracted to the goal as it approaches the
Department of ECE, DSCE Page 13
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
horseshoe-shaped obstacle. The goal continues to attract the robot, but the bottom arm of
the obstacle deflects the robot upward until the top arm of the horseshoe begins to
influence the robot. At this point, the effect of the top and bottom arms keeps the robot
halfway between them and the goal continues to attract the robot. The robot reaches a
point where the effect of the obstacle's base counteracts the attraction of the goal. In other
words, the robot has reached a q* where ∇U (q*) = 0 and q* is not the goal. Note this
problem is not limited to concave obstacles as can be seen in figure 4.5. Local minima
present a significant drawback to the attractive/repulsive approach, and thus the
attractive/repulsive technique is not complete.
Figure 4.4: Local minimum inside the concavity. The robot moves into the concavity until the repulsive gradient balances out the attractive gradient.
Figure 4.5: Local minimum without concave obstacles. The robot moves away from the two convex obstacles until it reaches a point where the gradient vanishes; at this point, the sum of the attractive gradient and the repulsive gradient is zero.
Barraquand and Latombe developed search techniques other than gradient descent to
overcome the problem of local minima present when planning with potential functions.
Department of ECE, DSCE Page 14
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
Their planner, the Randomized Path Planner (RPP), followed the negative gradient of the
specified potential function and when stuck at a local minimum, it initiated a series of
random walks. Often the random walks allowed RPP to escape the local minimum and in
that case, the negative gradient to the goal was followed again.
5: OBSTACLE AVOIDANCE ALGORITHM
Department of ECE, DSCE Page 15
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
5.1 The Vector Field Histogram
The Vector Field Histogram (VFH) method, introduced by Borenstein and Korem, is a
real-time obstacle avoidance method that permits the detection of unknown obstacles and
avoids collisions while simultaneously steering the mobile robot towards the target. The
VFH method uses a two-dimensional Cartesian histogram grid as a world model. This
world model is updated continuously with range data sampled by on-board range sensors.
The VFH method subsequently employs a two-stage data-reduction process in order to
compute the desired control commands for the vehicle. In the first stage, a constant size
subset of the 2D histogram grid considered around the robot’s momentary location is
reduced to a one-dimensional polar histogram. Each sector in the polar histogram
contains a value representing the polar obstacle density in that direction. In the second
stage, the algorithm selects the most suitable sector from among all polar histogram
sectors with a low polar obstacle density, and the steering of the robot is aligned with that
direction.
The three main steps of implementation of the VFH method are as below:
Step 1 of VHF
Step 1 of VHF generates a 2D Cartesian coordinate from each range sensor measurement
and increments that position in a 2D Cartesian histogram grid map C. The construction of
this grid maps does not depend on the specific sensor used for obstacle detection, in
particular ultrasound and laser range sensors may be used.
For ultrasound sensors and for each range reading, the cell that lies on the acoustic axis
and corresponds to the measured distance d is incremented (Figure 5.1) increasing the
certainty value (CV) of the occupancy of that cell. This is the Histogrammic in Motion
Mapping (HIMM) algorithm.
Figure 5.1 illustrates the cells certainty value update along the movement of a robot
equipped with ultrasonic sensors. It is clear that, for each range reading, only one cell is
updated. The HIMM provides a histogramic pseudo-probability distribution by
continuous and rapid sampling the sensors while the robot is moving.
Department of ECE, DSCE Page 16
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
Figure 5.1: Construction of the 2D Histogram grid map.
Step 2 of VHF
The next step of VFH, maps the 2D Cartesian histogram grid map C onto a 1D structure.
To preserve and isolate the information about the local obstacle information rather than
using the entire grid map C, the 2D grid used in this step is restricted to a window of C,
called the active window, denoted by C_, with constant dimensions, centered on the
Vehicle Central Point (VCP) and that, consequently, moves with the robot. C_ represents
a local map of the environment around the robot.
Figure 5.2: Mapping of active cells onto the polar histogram.
The active grid C_ is mapped onto a 1D structure known as a polar histogram, H, that
comprises n angular sections each with width _. Figure 5.2 illustrates the cell occupancy
Department of ECE, DSCE Page 17
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
of C_, the active window around the robot, and represents the angular sectors considered
for the evaluation of the 1D polar histograms.
Figure 5.3: a) 1D polar histogram of obstacle occupancy around the robot. b) Polar histogram shown in polar form overlapped with C_.
The x-axis of the polar histogram represents the angular sector where the obstacles were
found and the y-axis represents the probability P that there is really an obstacle in that
direction based on the occupancy grid’s cell values of C_. Figure 5.3-a) represents the 1D
polar histogram with obstacle density for a situation where the robot has three obstacles,
A, B and C in its close vicinity. In Figure 5.3 b) the previously obtained 1D histogram is
shown in polar form overlapped with the referred obstacles.
Step 3 of VHF
The step 3 of VFH evaluates the required steering direction for the robot that corresponds
to a given sector of the 1D histogram and, simultaneously, adapts the robot velocity
according to the obstacle polar density. A typical polar histogram contains “peaks” or
sectors with a high polar density and “valleys”, i.e., sectors with low polar density. To
evaluate the steering direction towards the target goal, all openings, i.e., valleys large
enough for the vehicle to pass through are identified as candidate valleys. Valleys are
classified as wide or narrow according to the number of sectors below the threshold. If the
number of consecutive sectors below the threshold is greater than Smax the valley is wide,
while it is classified as narrow if that number is less than Smax. The parameter Smax is set
according to the robot dimensions and kinematic constraints. From the set of wide
valleys, VHF chooses the one that minimizes a cost function that accounts for:
• The alignment of the robot to the target,
• The difference between the robot current direction and the goal direction,
Department of ECE, DSCE Page 18
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
• The difference between the robots previously selected direction and the new robot
direction.
If the threshold is set too high, the robot may be too close to an obstacle, and moving too
quickly in order to prevent a collision. On the other hand, if set too low, VHF can miss
some valid candidate valleys. The VHF needs a fine-tuned threshold only for the most
challenging applications, for example, travel at high speed and in densely cluttered
environments. Under less demanding conditions the system performs well even with an
imprecisely set threshold. One way to optimize performance is to use an adaptive
threshold. Besides the robot steering direction, the VFH also sets the robot speed
according to the obstacle polar density.
5.2 Advantages and Drawbacks
The Vector Field Histogram overcomes some of the limitations exhibited by the potential
field methods. In fact, the influence of bad sensor measurements is minimized because
sensorial data is averaged out onto an histogram grid that is further processed. Moreover,
instability in travelling down a corridor, present when using the potential field method, is
eliminated because the polar histogram varies only slightly between sonar readings. In the
VFH there are no repulsive or attractive forces and thus the robot cannot be trapped in
local minima, because VFH only tries to drive the robot through the best possible valley,
regardless if it leads away from the target.
Department of ECE, DSCE Page 19
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
6: Conclusion
Today path planning for few degree of freedom (dof) robots is quasi-instantaneous even
in large and complex environments encountered in practical problems. Within a few years
this will also be true for many dof robots including animated figures such as virtual
characters modeled with several dozen dofs or more using randomized planning. This
trend will encompass more complex planning problems like optimal planning with
kinematic and dynamic constraints and planning with deformable robots and obstacles to
which Probability Roadmap Method planning has been shown to extend well.
As several forms of motion planning turn real-time, the role of planning in integrated
systems will change from a costly resource that should be rarely invoked to a cheap
commodity that can be called at will. Randomized planning will make motion planning
less dependent on the number of dofs than on the geometric complexity of the
environment. However progress in enabling technologies like specific hardware to
perform distance computation operations and to maintain dynamic data structures should
make it possible to handle robots and environments described by hundreds of millions of
polygons.
Motion planning applications will grow considerably. CAD-based robot programming
systems will include planners to compute quasi-optimal motions of robots and to optimize
robot layouts. CAD systems will include planners to verify that products or building
facilities can be easily manufactured or built and serviced. In video games character
motions will be recomputed on the fly to adapt to user inputs allowing new forms of
games to be created. More generally, video games, movies, animated webpages and
interfaces will converge with motion planning and motion capture used jointly to produce
rich interactive animation of virtual characters. Motion planners will help surgeons plan
for minimally-invasive operations. Software packages to assist biochemists in the
discovery of new drugs will include motion planners to compute plausible motions of
ligands binding against proteins. Simultaneously new motion planning problems will be
investigated. For instance reconfigurable robots made up of thousands of modules will
require planners to compute their reconfiguration motions; today this problem is mostly
open. Robots equipped with sensors to collect information will need planners to decide
which are the most efficient motions to obtain pertinent information. Minimizing surgical
invasiveness will require planners that reason about the deformations of soft tissues
caused by the motions of surgical tools. It is almost certain that the basic path planning
Department of ECE, DSCE Page 20
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
problem which has been the focus of the research in motion planning for more than two
decades will soon lose this status. No other problem however seems basic enough to play
the same role in the future.
Department of ECE, DSCE Page 21
Robot Motion Planning and Obstacle Avoidance Algorithms 2012-13
7: References
[1] Principles of Robot Motion-Theory, Algorithms, and Implementation-Howie
Choset, Kevin Lynch, Seth Hutchinson, George Kantor, Wolfram Burgard, Lydia
Kavraki, Sebastian Thrun. © 2005 Massachusetts Institute of Technology
[2] Robot Motion Planning, Latombe J.C., Kluwer Academic Pub, Boston, MA.
[3] Practical Motion Planning in Robotics Current Approaches and Future
Directions, Gupta_ K and del Pobil A. (eds.) 1998, John Wiley, West Sussex, England.
[4] Obstacle Avoidance, Maria Isabel Ribeiro, 3rd November 2005
[5] Motion Planning A Journey of Robots, Molecules, Digital Actors and Other
Artifacts, Jean Claude Latombe, Stanford University, Stanford, CA, USA, July 1, 1999
Department of ECE, DSCE Page 22