Motion Planning Algorithms

Total Page:16

File Type:pdf, Size:1020Kb

Motion Planning Algorithms Survey: Motion Planning Algorithms by Leslie Glaves [email protected] CSE638 Topics in Computational Geometry Professor Joe Mitchell Stony Brook University, New York 11794 May 2004 Abstract This paper introduces and surveys current progress in path/motion planning al- gorithms with greater attention given to recent work with RRTs (Rapidly-Exploring Random Trees). 1 Introduction The perennial pursuit of artificial intelligence, that of constructing a robot that can learn on it’s own can be distilled to solving a few essential problems. For a mobile robot, a basic problem is how to plan to move, alternately referred to as path planning or motion planning. Although robotic applications are currently one of the most popular and highly publicized topics in motion planning, planning and solving collision free paths is required for many other computational pursuits. Motion planning is used in graphic animation and video game software, navigation within virtual environments, physics-based simulation, CAGD (computer-aided geometric design), molecular dynamics (such as binding and folding), vir- tual prototyping, computer controlled medical surgery and for computerized navigation of all types of vehicles (wheeled, aircraft, spacecraft, etc). Study of motion planning is encom- passed by several disciplines, including (but not limited to): Computer Science, Artificial Intelligence, Robotics, Mechanical Engineering, Computational Geometry and Differential Geometry. 1 The most basic motion planning problem is to compute a collision-free path from start loca- tion to goal location in a static environment containing obstacles which must be manuvered around. In reality, motion planning often involves reaching a goal location while obstacles are moving in the environment and optimized paths are desired. Motion planning has been a serious study area for at least three decades now. What has become the ”classical” motion planning problem was first analyzed in 1979 by Reif (also referred to as the ”piano mover’s problem”). The problem required finding a path to move a rigid 6 degrees of freedom object among obstacles from one location to another. With the considerable increases in computing power over the past decade or so, there has been a flurry of new research into robotics motion planning. Motion planning analysis, research and experimentation with robotics is expected to be generalizable to many other areas. This paper will introduce some necessary terminology and problem specification terms first, and then describe some of the more current motion planning algorithms and their applications, discuss shortcomings and suggest some future research directions. 2 Problem Specification and Terminology 2.1 Constraints on Motion The motions of all moving objects are subject to physical laws and geometric constraints. We refer to holonomic and non-holonomic constraints in studying motion planning. Holonomic Path Planning Holonomic refers to a basic path planning problem in which the robot’s absolute position and orientation is considered to be attainable, or is simply not considered as a constraint on the problem solution. This would be the most basic path planning problem we can consider. Holonomic kinematics can be expressed as algebraic equations. An example of holonomic motion would be that of the point robot in a two- dimensional planar world. Non-holonomic Path Planning A Non-holonomic system is one in which a return to an absolute position and orientation cannot be guaranteed without considering differential relationships, such as relationship between wheel rotation and position/orientation of the vehicle or robotic base. Nonholonomic planning requires incorporating corrections for wheel slippage, as in the case of a moving vehicle. Calculation of non-holonomic constraints 2 requires the use of differential geometry and control theory. Examples of non-holohomic motions are those achieved by pushing, pulling, rolling, bouncing and flying. 2.2 Motion Planning Goal Path A continuous, collision-free path of movement is to be found, given an initial S (start) position and a final position, T (terminal). For state space, a common notation is xinit for a start location, and xgoal for the goal location, or Xgoal for a goal region. Kinodynamic Path Planning Kinodynamic path planning incorporates dynamic con- straints on velocity and acceleration into the planner, in addition to obstacle avoidance. Earlier path planning algorithms would first generate a solution path in the configuration space and then afterward determine control inputs required for the robot to travel along the path. Real, physical world path planning problems must incorporate both static and dynamic constraints. The motion planning goal of the algorithms described in this paper address this by employing the state space problem specification, which will be described later in this section. 2.3 Configuration Space Specification DOF or Degrees of Freedom refers to direction of movement for the object or robot which will travel the path. In the R2 plane, 2 dof would refer to movement in the x and y directions, whereas 3 dof would in the R2 plane would include rotation. Translation in R3 results in 3 dof for movement in the x, y, and z directions. If the robot can also rotate in R3, it has 6 dof. Motion planning in simpler cases involves locating a path of travel within a fixed (2- dimensional or 3-dimensional) environment which usually contains obstacles. A conven- tional combinatorial paradigm consists of the following: C-space or configuration space refers to the parameter space within which a robot may move. Robot may generally be used to refer to any moving object. In the simplist case, we consider movement in the 2-dimensional Euclidean plane. The regions not accessible to the robot are called configuration space obstacles. Free space denoted C-free, is the total configuration space minus C-obs, the space that is occupied by obstacles. 3 Various methods developed in computational geometry have been used to represent the configuration space. Several examples described in LaValle’s Planning Algorithms are: • Cellular Decomposition – Partition C-free into simpler (connected) neighboring cells. Construct a graph with vertices representing the cells, and edges between the vertices of connected cells. • Voronoi Roadmap – Can be used to construct a roadmap which is centered between C-obs, which are represented as polygons. • Visibility Roadmap – By constructing line segments between polygon vertices of C- obs, and treating start and goal positions as vertices, the optimal (shortest) path can be found. Subsequent minor modification to provide clearance between obstacles results in a path planning solution. Point Robot Simplification In this most basic representation of the motion planning problem, the Robot is reduced to a single point translating in planar ”world”. Robot, R or P, generally refers to any moveable object with particular geometric characteristics. The point robot is typically a reference point somewhere within or on the boundary of the geometric configuration of the robot or moving object. Minkowski Sums are used in motion planning to dilate the geometric configuration of obstacles in the C-space to account for the robot’s footprint and degrees of freedom when working with the point robot simplification. 2.4 State Space Specification As formulated in [LK01]: We can formulate the problem in terms of the following six components: 1. State Space: A topological space, X 2. Boundary Values: xinit ∈ X and xgoal ∈ X, or Xgoal ⊂ X 3. Collision Detector: A function, D : X −→ {true,false}, that determines whether global constraints are satisfied from state x. This could be a binary-valued or real-valued function. 4. Inputs: A set, U, which specifies the complete set of controls or actions that can affect the state. 5. Incremental Simulator: Given the current state, x(t), and inputs applied over a time interval, {u(t´)|t ≤ t≤´ t + 4t). 4 6. Metric: A real-valued function, ρ : X × X −→ [0, ∞), which specifies the distance between pairs of points in X. The inputs (or controls) and incremental simulator will specify possible changes in the state of the system. The incremental simulator will indicate reachable next discrete states for the system (given a time-step), which are the response of a discrete-time system, or a continuous time system that has been discretized. 3 Brief History Since the 1980’s, researchers in Computer Science, Artificial Intelligence, Mechanical Engi- neering and Mathematics have been investigating the theoretical and practical aspects of motion planning. Most recently, the focus on pratical applications has resulted in numerous successful implementations by developing motion-planning software systems specific to the particular problem. Research in robotic path planning has been studied since the early 1970’s [18]. The first formally proposed motion planner (for a robot) was presented at the 1st International Joint Conference on AI, by Nilsson of Stanford Research Institute. This motion planner used the visibility graph method with an A* search algorithm to find a minimized collision-free path through polygonal obstacles [18]. In the early 1980’s, working with the concept of configuration space and reduction of the planning problem to a point robot in a parameter space which incorporates the robot’s dofs was introduced by Lozano-P´erez and Wesley [28]. Additionally, formal analysis of the complexity of motion planning was conducted by John Reif in 1979. As a result of the computational complexity of motion planning, instead of searching for optimal paths, focus has been on achieving practical results by using probabilistic algorithms. The first well known sampling-based motion planner (developed at Stanford in 1990) was the (RPP) Randomized Path Planner of Barraquand & Latombe. 4 Algorithmic Complexity One of the earliest algorithmic examinations of motion planning, conducted by John Reif, now referred to as the ”piano mover’s problem”, or ”Generalized Mover’s Problem” [36], is an analysis of moving a robot with arbitrary numbers of degrees of freedom from a 5 start to a finish goal among static obstacles in both 2-D and 3-D space.
Recommended publications
  • Toward Autonomous Robots
    Toward Autonomous Rob ots: Robust, Adaptive and Dynamic Motion John Reif Department of Computer Science, Duke University Abstract Wewere engaged in researchinvarious areas of rob otic movement planning. The movement planning problems investigated were static movement problems where the obstacles do not move, minimum distance path planning, compliant motion control whichinvolves planning without complete knowledge of the p osition of the rob ot and related frictional movement problems, motion planning with indep en- dently moving obstacles, and kino dynamic movement planning where the dynamics are taken into account including driving forces and torque, motion planning within p otential elds such as gravitational force p otential elds and magnetic elds and pursuit movement games whichinvolvemovement control planning with an adver- sary. Most of our e orts were involved in the latter problems which have b een investigated less. This pap er will present some of our lates results on these various problems. Also this pap er will include some improved algorithms we develop ed for the fundamental algebraic and combinatorial problems such as ro ot nding which app ear frequently as subproblems in these rob ot movement planning problems. 1 Intro duction Robotics movement planning problem or robotics motion planning problem is to plan an obstacle-free path or tra jectory for a rob ot from a sp eci ed initial con- guration p osition, orientation, etc. to a sp eci ed nal con guration. It is one of the most fundamental problems in rob otics research. No matter what purp ose a rob ot is designed for, the rst task is how to plan the rob ot to move in its working space, while avoiding p ossible obstacles, to reach a desired con guration.
    [Show full text]
  • Games, Puzzles, and Computation Robert Aubrey Hearn
    Games, Puzzles, and Computation by Robert Aubrey Hearn B.A., Rice University (1987) S.M., Massachusetts Institute of Technology (2001) Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY June 2006 c Massachusetts Institute of Technology 2006. All rights reserved. Author.............................................................. Department of Electrical Engineering and Computer Science May 23, 2006 Certified by. Erik D. Demaine Esther and Harold E. Edgerton Professor of Electrical Engineering and Computer Science Thesis Supervisor Certified by. Gerald J. Sussman Matsushita Professor of Electrical Engineering Thesis Supervisor Accepted by......................................................... Arthur C. Smith Chairman, Department Committee on Graduate Students Games, Puzzles, and Computation by Robert Aubrey Hearn Submitted to the Department of Electrical Engineering and Computer Science on May 23, 2006, in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science Abstract There is a fundamental connection between the notions of game and of computation. At its most basic level, this is implied by any game complexity result, but the connec- tion is deeper than this. One example is the concept of alternating nondeterminism, which is intimately connected with two-player games. In the first half of this thesis, I develop the idea of game as computation to a greater degree than has been done previously. I present a general family of games, called Constraint Logic, which is both mathematically simple and ideally suited for reductions to many actual board games. A deterministic version of Constraint Logic corresponds to a novel kind of logic circuit which is monotone and reversible.
    [Show full text]
  • 1 RESUME PAUL G. SPIRAKIS (1) Full Professor Dept. of Computer
    RESUME PAUL G. SPIRAKIS (1) Full Professor Dept. of Computer Science and Engineering School of Engineering, Patras University, PATRAS-RION GREECE Department Chairman during Sept. 1987-Sept. 1989 Sept. 1989-Sept. 1991 and Sept. 1991 - Sept. 1993 Dept. Vice-Chairman during Sept. 1993-1995 (2) Director (since 1996) and senior researcher of the (Research and Academic) Computer Technology Institute (R & A C.T.I.) P.O. BOX 1122, 26110 Patras Greece. C.T.I. is under the auspices of the Ministry of Education of Greece. CTI is , under a recent law , the main Informatics Technology Institute of the Ministry of Education. P. Spirakis directs scientifically the RACTI Research Unit 1 (Foundations of Computing) and the new Division of Security of Information Systems. (3) Director of the distributed systems and telematics laboratory of Patras University , 1996 on. (4) Director of Graduate Studies of the Dept. of Computer Science and Eng. Patras University , Greece , Sept. 2005-Sept. 2007. Also Sept. 2007-09. Birth Date : August 29 1955 Children : Two daughters Citizenship : Greek Phone (work) : GREECE-2610-960450, 2610-997703 Phone (home) : GREECE-210-8232202, 2610-361258 Phone (mobile) : GREECE-6944-260936 email: [email protected] Paul Spirakis has served the Greek Army from Oct. 8/85 to April 11/87. 1. EDUCATION Graduate Studies Ph.D. in Applied Mathematics (Computer Science) Harvard University, December 1981. Official degree date: March 1982, Title: Probabilistic Algorithms, Algorithms with Random Inputs and Random Combinatorial Structures. Advisor: John H. Reif. S.M. in Applied Mathematics (Computer Science) Harvard University, June 1979. Undergraduate Studies 1 Electrical Engineering Diploma.
    [Show full text]
  • Mechcomp2017.Pdf
    Mechanical Computation: The Computational Complexity of Physical Computing Devices Chapter, Encyclopedia of Complexity and Systems Science1 John H. Reif2 Article Outline Glossary I. Definition of the Subject and Its Importance II. Introduction to Computational Complexity III. Computational Complexity of Mechanical Devices and their Movement Problems IV. Concrete Mechanical Computing Devices V. Future Directions VI. Bibliography Glossary - Mechanism: A machine or part of a machine that performs a particular task computation: the use of a computer for calculation. - Computable: Capable of being worked out by calculation, especially using a computer. - Simulation: Used to denote both the modeling of a physical system by a computer as well as the modeling of the operation of a computer by a mechanical system; the difference will be clear from the context. 1 This is a revised and updated version of John H. Reif, Mechanical Computing: The Computational Complexity of Physical Devices, invited chapter, Encyclopedia of Complexity and System Science (edited by Andrew Spencer), Springer-Verlag, Heidelberg, Germany, (2013). Published online: http://www.springerreference.com/docs/html/chapterdbid/60497.html 2 Department of Computer Science, Duke University, Box 90129, Durham, NC 27708- 90129 USA. E-mail: [email protected]. This work was supported by NSF grants NSF Grants CCF-1217457, CCF-1320360 and CCF-1617791. I. Definition of the Subject and Its Importance Mechanical devices for computation appear to be largely displaced by the widespread use of microprocessor-based computers that are pervading almost all aspects of our lives. Nevertheless, mechanical devices for computation are of interest for at least three reasons: (a) Historical: The use of mechanical devices for computation is of central importance in the historical study of technologies, with a history dating to thousands of years and with surprising applications even in relatively recent times.
    [Show full text]