
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.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages26 Page
-
File Size-