Complexity Issues in Robot Motion Planning

advertisement
COMPLEXITY ISSUES IN ROBOT MOTION PLANNING
ELIF TOSUN
MTH 353
FINAL PAPER
May 4, 2001
1 Introduction
Robotics is a broad domain of research. This paper will cover only a small portion of this
domain, namely Robot Motion Planning. Robots are mechanical devices equipped with
actuators and sensors under the control of a computing system. They perform tasks by
executing motions in space that is populated by various objects. Motion planning is
aimed at providing robots with the capability of deciding automatically which motions to
execute in order to achieve their tasks without colliding with other objects in the
workspace. Some economic considerations mandate the use of a cost function on robot’s
motion such as the time duration or the amount of energy required. Furthermore, it’s
important to take into account physical limitations of the robot such as friction with
surface. There has been a great deal of work by algorithm developers and computational
geometers in finding lower bounds on the complexity of motion planning problems. This
paper will summarize the main complexity results in several fields of motion planning.
1.1 Motivation
The reason that there is so much research in motion planning is based greatly on
technological advances of our time. Motion planning problem is directly related to many
robot applications and in general programming complex automatic systems. Today, many
manufacturers choose to use robots in their factories to decrease the cost of production.
Robots started taking the place of doctors in several fields of medical surgery namely the
ones that require perfect precision such as brain surgeries. However, the applications of
robot motion planning are not limited with the ones directly related to robotics. Motion
planning can be used in molecular biology to model the motions of molecules, especially
protein folding which is a current open problem. In computer graphics motion planning is
1
one of the key concepts in creating virtual environments and allowing characters navigate
through such environments. Some specific questions in motion planning apply to vehicle,
aircraft and spacecraft navigations. Although there are many more applications to motion
planning the ones listed above are the most important ones. For more information on the
applications and motivations behind studying motion planning the reader is referred to
the sources listed in bibliography.
1.2 Preliminaries and Definitions
In this section some definitions are listed in order to help the reader understand the
terminology used in the following sections.
A robot is a mechanical system consisting of one or more rigid bodies possibly connected
by various joints and hinges. The physical space, also known as the workspace, is the
environment (2D or 3D) in which the robot moves. Configuration of a robot is the
specification of the position of every point in the robot relative to a fixed frame of
reference. The configuration space of a robot is the space C of all configurations of a
robot. Free space is the configuration space C minus the space occupied by obstacles.
Degrees of freedom, also known as DOF, is the number of real parameters that define the
space occupied by the robot at a given instant. It can also be defined as the number of
dimensions along which the robot can move itself or some part of itself. For example,
free objects in three dimensions have six degrees of freedom, three for position and three
for orientation. A path from an initial configuration to a final configuration is a
continuous map in C. Finally, the basic motion planning problem is to compute a path in
free space between two input configurations, the initial configuration and the final
2
configuration. More terminology specific to some problems will be introduced in the
relevant sections.
1.3 Overview
In section 2, generalized motion planning problem will be introduced with the results in
complexity. In sections 3 through 6 some specific questions in motion planning such as
shortest path, dynamic motion planning, motion planning with uncertainty, and motion
planning with manipulation will be stated and explained. In section 7 some
approximation methods will be introduced followed by section 8 with some general
concluding points and open questions.
2 Basic Motion Planning
2.1 Generalized Mover’s Problem
The generalized mover’s problem is to plan a collision-free motion of a robot with an
arbitrary number of degrees of freedom to a goal position in 2-D or 3-D space avoiding a
set of obstacles stationary in space. This was the first problem examined from an
algorithmic point of view and it has been studied extensively under different names such
as “FIND-PATH”, “furniture mover’s problem”, “piano mover’s problem” by many
researchers. The complexity of this problem depends heavily on the specifics of the input,
which brings up several sub-questions.
In the 3D version the robot is described as a set of linked polyhedra, and the obstacles are
polyhedra fixed in 3-space. In 1979, Reif showed that the generalized 3-D mover’s
problem is PSPACE-hard when the robot has n links. The proof uses the robot’s degrees
of freedom to encode the configurations of the robot to be simulated with a polynomial
3
space bounded Turing Machine. However, if the robot has only a constant number of
degrees of freedom then the problem is solvable in polynomial time provided that the
geometric constraints on the motion can be stated algebraically as shown by Schwartz
and Sharir in 1983. A year later Hopcroft, Schwartz, and Sharir showed that the
PSPACE-hardness lower bound results also hold true for the 2-D version of the general
mover’s problem.
There are two complete general motion planning algorithms that propose solutions to the
preceding problems. The older one is due to Schwartz and Sharir and it takes doubly
exponential time. Their method partitions an n-dimensional space into cells whose
connectivity can easily be determined. The best complete algorithm known for the
general motion planning problem is due to Canny which takes singly exponential time.
His algorithm is based on a roadmap, which generates a 1-D subset of the possible
motions of the robot.
2.2 Robot Arm Motion Planning
A different version of this problem comes up in the motion planning of a robot arm.
Although these problems seem different from a perspective of configuration space they
are identical. For example, deciding whether a planar arm with links in some initial
configuration can be moved so that a certain joint reaches a given point in the plane in the
absence of obstacles is PSPACE-hard. On the other hand, motion planning of a planar
arm within an empty circle is in P. Another planar robot arm motion planning problem is
the following: Consider a planar arm consisting of arbitrarily many links serially
connected by revolute joints such that all the links are constrained to move in the plane.
4
Planning a free path for such an arm among a finite number of polygonal obstacles
between two given configurations is also proved to be PSPACE-hard.
2.3 Multiple Robots
Another extension of the general problem is the case with multiple robots or multiple
robot arms. In this case each robot (or arm) is a potential obstacle to the other. A method
to deal with multiple robots is to treat them as a single but multi-bodied robot so that
planning a path for all robots would be equivalent to planning a path in the cross product
of their configuration spaces. For example planning a path in the configuration space of a
multi bodied robot consisting of all rectangles (or planning a path for several rectangular
robots) is PSPACE-hard.
The motion planning problem of a robot with multiple arms in a 3-D polyhedral
environment is also proved to be PSPACE-hard.
3 Optimal Motion Planning
The preceding section only described results for determining the existence of a collision
free motion between two configurations. However, optimality is a very important
consideration in practice. Only two types of optimality will be discussed in this paper
although there are many more in which extensive research has been done.
3.1 Minimal-Time Trajectory Planning
It’s important to maximize the efficiency of a robot’s motions under the function of time.
In the future robots are expected to take on more tasks in manufacturing and manual
labor so it’s crucial to minimize time for the most efficient use of high cost robots.
5
One approach to finding a minimal time trajectory is to plan a geometric free path and
then iteratively deform it to reduce travel time. However, no bound has been established
on the running time of this approach or the correctness of the output. Although currently
there are no correct algorithms for this planning, in theory such a computation was
proved to be NP-hard for a point robot under Newtonian mechanics in 3-space.
3.2 Shortest Path Motion Planning
Shortest path motion planning is of interest because it’s the simplest instance of a
minimum cost motion planning problem where the cost is simply the length of the path
according to some metric that is not necessarily Euclidian.
In the planar case, the problem can be solved with an efficient algorithm that runs in
O(nlogn) time for Euclidian, L1 or L metric. However the problem in 3-D is much more
difficult. One of the difficulties of dealing with shortest paths in 3D is that although
shortest paths are sequences of line segments that start and end on obstacle edges, they
don’t necessarily pass through obstacle vertices. Furthermore, the length of the minimal
length path as well as the coordinates, which it passes through, may not be rational
numbers. Although there is a polynomial-time algorithm for finding the shortest path on
the surface of a convex polyhedron between two points, it can only be used only when
the robot can walk over the obstacles in 3-space. In general, finding the single source single destination shortest path is an NP-hard problem in 3D. The motion planning
problem of finding the shortest path between two points in 3-dimensional space with
polyhedral obstacles ( not necessarily convex ) is known to be PSPACE-hard. And there
exist doubly exponential (Sharir and Schorr, 1984) and singly exponential algorithms
(Reif and Storer, 1994) that suggest a solution to this problem. It’s proved by Canny and
6
Reif by reduction from 3SAT that determining even the sequence of edges in the
environment that are touched by the shortest path is NP-hard. However, there also exist a
fully polynomial algorithm proposed by Papadimitriou in 1985 for computing an
approximate rational shortest path.
4 Dynamic Motion Planning
Dynamic motion planning is an important class of problems in motion planning because
of its applications in robotic collision avoidance, car collision avoidance, aircraft
collision avoidance and spacecraft navigation. In this paper, it is explored in two main
subsections dealing with the general problem and a more specific case of it, called the
asteroid avoidance problem.
4.1 General Dynamic Motion Planning
The general dynamic motion planning problem is to plan a collision-free motion of a
robot which is free to move within some 2-D or 3-D space S, containing several obstacles
which move in S along known trajectories independent of the motion of the robot. The
obstacles are allowed to rotate. As stated in the general problem if there are no constraints
on the motion of the robot and if the trajectories of the obstacles can be described
algebraically in space and time then the problem is solvable in polynomial time in 2D.
However, when the problem is moved to 3-D the complexity changes drastically and the
problem becomes intractable. By using time-related configuration changes to encode
Turing Machine states, it’s proven that the problem in 3D is PSPACE-hard even for
systems with small and fixed number of degrees of freedom when the robot is given a
velocity bound. When the robot has no constraints in velocity then the problem is
7
NP-hard.
4.2 Asteroid Avoidance
An asteroid avoidance problem is the dynamic motion planning problem where each of
the obstacles is a polygon (or a polyhedron in 3D) with a fixed translational velocity and
the robot is a convex polygon (or a polyhedron) which may make arbitrary translational
movements but with a bounded velocity. Neither the robot nor the obstacles may rotate.
This problem is named after a well-known video game called ASTEROID where a
spacecraft of limited velocity must be maneuvered to avoid moving asteroids. In 2D there
are two significant results: The motion planning for a point in the plane with velocity
bounds in NP–hard even when the moving obstacles are convex polygons moving with
constant linear velocity without rotation. However, if the robot is polygon instead of a
point and if there are a constant number of obstacles then the problem is can be solved in
polynomial time. On the other hand in 3D, asteroid avoidance problem becomes PSPACE
hard if the robot is a convex polygon and if there are arbitrarily many polygonal obstacles
that are translating. Advances in the asteroid avoidance problem bring up the question of
optimality. A common optimality criterion is time, which leads to the problem of
minimum-time asteroid avoidance: Planning a collision free movement of a robot, which
will take it from an initial configuration to a final one in the shortest possible. In this
problem the robot is allowed to contact but not penetrate into any of the obstacles. The
results of this problem can be summarized as follows: In 1-D, it can be solved in
O(nlogn) time, in 2-D the problem can be solved in O(n2(k+2)k) time and in time 2n^(O(1))
in the 3-D case, where n is the total number of edges in the whole environment and k is
the number of degrees of freedom.
8
5 Motion Planning with Uncertainty
In real life, robots deviate from their planned paths due to errors in control and position
sensing. To avoid running into problems in real life the problem should be re-formulated
as to produce a plan which is guaranteed to succeed even if the robot cannot perfectly
execute it due to control error.
This notion of uncertainty brings several advantages as well as disadvantages.
Advantages can be listed as follows: (1) It’s possible to naturally introduce a powerful
notion of feedback control so the computation is a continuous online process rather than
an offline as in the case with general motion planning problem. (2) The obstacles don’t
have to be stationary since very little information is processed at each step. In contrast,
the disadvantages of motion planning in uncertainty are as follows: (1) Since no
preplanning is possible, optimality cannot be achieved. (2) The problem dimensionality
cannot be made arbitrarily hard, meaning that not too many choices can be available at
each step.
The general problem in motion planning with uncertainty is the problem of moving a
robot from an initial region to a final region in configuration space allowing compliant
motion along the way. Compliant motion occurs when a robot is commanded to move
into an obstacle, but rather than stubbornly obeying its motion command it complies with
the geometry of the obstacle by sliding along it. It’s proved that compliant motion
planning with uncertainty in a three-dimensional polyhedral configuration space with an
arbitrarily large number of faces is NEXPTIME-hard. This result was the first instance of
a provably intractable problem in robotics. Planning with uncertainty requires concurrent
9
selection of: (1) Regions of configuration space representing the intermediate goals. (2)
Motion directions to go from intermediate goals to other intermediate goals. (3) Goalrecognition functions. The greatest difficulty in such motion planning problems is the fact
that these choices have the possibility of interacting along the way.
There are several algorithmic motion-planning approaches to this problem with different
complexities. The following sub-sections will deal with these different approaches.
5.1 One-Step Planning
One way to simplify planning is to restrict each termination condition so that the robot
recognizes the goal of its motion command independently of the region in which it
started. In other words, this is the case where you plan just one step at a time. It is
possible to plan each step in time O(q2logq), where q is the number of edges in the
environment by an algorithm proposed by Briggs. (Note that the running time depends
greatly on the complexity of the workspace, the robot and the obstacles.)
5.2 Multi-Step Planning
In principle, the approach presented above could be extended to the general case of
multiple steps however it is difficult in practice. Instead the more common approach for
multi-step planning has been proposed by both Canny and Donald based on algebraic
computations. Both algorithms check the satisfiability of a first order algebraic formula to
plan the movement of the robot. Canny’s approach takes doubly exponential time in the
number of steps whereas Donald’s approach takes singly exponential time.
5.3 Landmark Based Planning
A landmark is an easily recognizable, unique element of the environment that the robot
can use to get information about its bearings. Sometimes a workspace contains such
10
features that can be reliably sensed and used to precisely localize the robot. Each such
landmark creates a region in configuration space called the landmark area from which
the robot can sense the corresponding landmark feature. When the robot is in such a
landmark area then it know its position exactly, however, when outside of all areas the
robot has no direct position information. Lazanas and Latombe introduced a motion
planner that considers a point robot among n circular obstacles and O(n) circular
landmark areas. Using this information it is possible to plan the motion of such a robot
such that the robot will move from landmark areas to landmark areas until each reaches
the goal in time O(n4logn) . Although this approach has efficient results, the environment
might not have such landmarks at all times.
6 Manipulation Planning
Many robot tasks consist of moving objects around in a workspace to reach a final
arrangement. Such objects are movable, meaning they cannot move by themselves and
they need to be moved by a robot to reach their final configurations. The objects may be
grasped and displaced by robots or they may be pushed. In this paper only the pushing
scenario will be explored.
A problem in manipulation planning is the following, which has a polynomial time
solution. Given a robot and a movable object that are both convex polygons in a
polygonal workspace, bring both of them to specific positions. The robot is only allowed
to translate. While the robot pushes the movable object, one of the edges of each polygon
should coincide exactly so that they start moving together as one rigid object. An exact
algorithm has been proposed by Wilfong in 1991 that runs in O(n2) time after O(n3log2n)
11
preprocessing, where n is the total number of edges in the workspace, the robot and the
movable object.
In the rest of this section two motion planning games will be introduced that deal with
manipulation planning.
6.1 Sokoban
Sokoban, which means a warehouse person in Japanese, is a puzzle game that was first
introduced as a video game in Japan. The game consists of a pusher (robot) who must
push a number of boxes into a set of designated storage locations, without getting himself
or the boxes stuck. The warehouse (workspace) is a set of barriers, passages and storage
areas. In a more general sense everything in the warehouse are squares in a two
dimensional grid. Some important rules are that the pusher can push only one box at a
time, cannot pull a box, and it cannot occupy the same place as a box at a given instant.
The puzzle is solved only if all boxes are pushed into storage locations.
This problem was proved to be PSPACE-hard by Culberson in 1998, therefore proving
that all puzzles of this sort are PSPACE-complete. The proof is based on simulating a
Turing Machine in linear time using an infinite version of the puzzle in which only a
finite number of boxes need to be placed into the storage areas. The PSPACE-hardness
result comes from the fact that the tape is restricted to finite length.
6.2 PushPush
PushPush is a particular case of a general pushing blocks puzzle. It’s inspired by another
computer game initially written for the Macintosh. The problem is defined on an integer
grid consisting of until square blocks. An agent (robot) may push blocks but never pull
them in order to move between given an initial and a final position. In the general
12
problem the agent can push only one block at a time and the block moves only one
square. However, in this particular case although the robot can still only push one block
at a time, each block when pushed slides the full extent of the available empty space in
the direction in which it was pushed. The problem was initially proved to be NP-hard in
3-dimensions and then was proved to be NP-hard in the two-dimensional case as well.
Both proofs are based on a reduction from SAT. However, it’s still an open question
whether this NP-hardness result can be strengthened in either direction: either by proving
PushPush is in NP in which case it is NP-complete, or by showing that PushPush is
PSPACE-complete.
7 Algorithmic Motion Planning
Motion planning algorithms can be classified according to the methods used and the
outcomes of the algorithms. The most common classes in algorithmic motion planning
are complete algorithms, probabilistic algorithms and heuristic algorithms, which would
be explained in detail in the following subsections. An important point to note is that the
different algorithmic methods other then complete algorithms were proposed to solve the
motion planning time in less time than the lower bounds known.
7.1 Complete Algorithms
A motion planning algorithm is complete if it is guaranteed to find a free path between
two given configurations whenever such a path exists, and report that there is no free path
otherwise. Complete algorithms are sometimes referred to as exact algorithms.
Most complete algorithms deal with the connectivity of the free space by first capturing it
on a graph. There are two main methods for doing this: the cell decomposition technique
13
or the roadmap technique. In cell decomposition, free space is partitioned into a
collection of cells and the motion of the robot is planned among the connected cells. On
the other hand in the roadmap technique, a network of curves is extracted from the free
space and again finding a path is based on the connectivity of different “roads”.
The complete motion planning algorithms can be divided into two categories: General
complete planners and specific complete planners. General complete planners apply to
virtually any robot with an arbitrary number of degrees of freedom whereas the specific
complete planners apply to a restricted family of robots usually with a fixed small
number of degrees of freedom.
Although, a lot of work has been done in this field, because of the PSPACE-hardness
result due to Reif, it’s not open to any more improvements. (The only improvement was
by Canny in decreasing the running time from doubly exponential time to singly
exponential.)
7.2 Probabilistic Algorithms
Computational complexity of robot motion planning for robots with many degrees of
freedom made researchers come up with different algorithms where they had to trade off
exactness against running time. One such class of algorithms is the probabilistic ones.
Such randomized probabilistic techniques do not guarantee a solution will be found, but
if a solution is possible, it is very likely they will find it relatively quickly. An example of
such algorithms is the probabilistic roadmap algorithm, which works in the following
way: This algorithm avoids computing explicit geometric representation of the free
space. Rather, it uses an efficient procedure to compute distances between bodies in the
workspace. Then it samples the configuration space by selecting a large number of
14
configurations at random and marking only the free configurations as milestones of the
algorithm. In the next step, each pair of milestones is checked in order to see if there
exists a collision free path between the two. By using this information a graph G(V, E) is
constructed where V is the set of milestones and E are the edges between them. Two
vertices have an edge connecting them if there exists a collision free path between them.
This resulting graph is called the probabilistic roadmap, which then can be used as the
general roadmap to plan the motion of a complicated robot. Experimental results show
that this algorithm takes less than one second to reach a result.
Although such randomization algorithms cannot be used for extremely precise
applications such as medical surgeries, they are widely used in maintenance of aircraft
engines.
7.3 Heuristic Algorithms
Another approach to speed up motion planning was to use heuristic techniques. Several
of such techniques have been proposed, but although many of them work well in practice
they usually offer no performance guarantee.
Heuristic algorithms usually deal with a regular grid defined over the configuration
space. Path planning is based on generating a path as a sequence of adjacent grid points,
which require extensive use of a search method. An example of such a search method is
the potential field that is a function over the free space that has a global minimum at the
goal configuration. The potential field causes the robot to get pulled to the goals as it is
being repelled by the obstacles. The problem with this model is the evaluation of these
repulsive and attractive fields where local minima might attract the robot in some wrong
15
direction in which it can get stuck. Although potentials without local minima have been
proposed they have the same running times as the complete algorithms.
Another heuristics approach widely used is the hierarchical space decomposition. In this
approach unlike exact cell decomposition specific cells are chosen to be decomposed
more than other in a hierarchical fashion. Although this algorithm can run in polynomial
time, the time and space complexity of this model grows quickly with the dimension of
the configuration space, so it’s applicable only when the dimension of the configuration
space is small.
Both these approaches have great room for improvement and active research has been
conducted in the past years on these heuristics.
8 Conclusions and Open Problems
Over the past decade, robot motion planning has grown into an extensive research field.
The topic has been explored in many different viewpoints of computer scientists,
mathematicians and mechanical and electrical engineers. There are extremely many
results in all the topics covered in this paper and many other topics that were not and it
would have been impossible to cover all of them. This paper was particularly designed to
give the reader a broad sense of the hardness of motion planning without giving too
much detail in any of the topics. For details and proofs of the results given in this paper
the reader is referred to the sources listed in the last section.
Despite the research that has already been done, there are extremely many open problems
and a lot of room for improvement in the field, and this is one of the biggest reasons why
it attracts so much attention. The topics within robot motion planning that have space for
16
improvement include motion planning with uncertainty, minimum time motion planning,
assembly planning, manipulation planning, approximation algorithms, and probabilistic
algorithms. On the other hand, there are a lot of open problems regarding motion
planning with flexible objects, motion planning using sensors, reconfigurable robot
motions, motions of robots with sensors that need to obtain information from the
environment. Another open problem is putting all the different versions of the basic
problem together, such as “What happens if there’s need to plan motion for a robot with
kinematic constraints, uncertainty and moving obstacles?”
As the number of such open problems grow, the interest in the basic motion planning has
been fading away since the types of problems given above have more realistic
applications than the basic question. This is mostly because today, most of the research
done in this field is aimed for real life applications rather than theoretical solutions. In
conclusion, as robots take over more things in our lives the interest in theory of robot
motion planning and computational complexity results is expected to subside whereas the
interest in approximation algorithms and applications will grow more and more.
9 Bibliography
Amato, N.,Wu, Y. A randomized roadmap method for path and manipulation planning.
Proc. IEEE Int. Conf. on Robotics and Automation, pp. 113--120, 1996
Brady, M. Robot Motion: Planning and Control
MIT Press, Cambridge, MA 1982
Canny, J. The Complexity of Robot Motion Planning
MIT Press, Cambridge, MA 1988
Canny, J., Reif, J.H. Lower Bounds for Shortest Path and Other Related Problems
Culberson, J. Sokoban is PSPACE-Complete.
17
Proc. International Conf. Fun with Algorithms. pp. 65-76.
Elba, Italy, June 1998. Carleton Scientific
Demaine,E.D., Demaine,M.L, O'Rourke, J. PushPush is NP-hard in 2D.
Technical Report 066, Smith College, Northampton, MA, January 2000.
Goodman, J.E, O'Rourke, J., eds. Handbook of Discrete and Computational Geometry.
CRC Press, Boca Raton, FL 1997.
Halperin, D., Kavraki, L.E., Latombe, J.C. Robot Algorithms
CRC Handbook of Algorithms and Theory of Computation
CRC Press, Boca Raton, FL, 1998. Ch. 12.
Lamiraux, F.,Laumond, J.P. On the Expected Complexity of Random Path Planning
IEEE International Conference on Robotics and Automation (ICRA'96),
1996, pp.3014-3019.
Latombe, J.C. A Journey of Robots, Molecules, Digital Actors and Other Artifacts
Int. J. of Robotics Research, Special Issue on Robotics at the Millenium – I
18(11):1119-1128, November 1999
Latombe, J.C. Controllability, Recognizability, and Complexity Issues in
Robot Motion Planning.
Proc. 36th Annual Symposium on Foundations of Computer Science,
pp.484-500, 1995.
Latombe, J.C. Robot Motion Planning
Kluwer Academic Publishers, Boston, MA 1991
Lumelsky,V. Algorithmic and complexity issues of robot motion in an uncertain
environment,
J. Complexity, 3 (1987), pp. 146--182.
Reif, J.H., Sharir, M. Motion Planning in the Presence of Moving Obstacles.
Proc.of 25th IEEE Symposium on Foundations of Computer Science,
pp. 144--154, 1985
Reif, J.H, Storer, J.A. A single-exponential upper bound for finding shortest paths in
three dimensions.
Journal of the Association for Computing Machinery,
41(5):1013--1019, September 1994.
Tate, S.R. Arithmetic Circuit Complexity and Motion Planning
Technical report DUKE--TR--1992—05, 1992.
18
Download