Manipula0on Algorithms Mo0on Planning. Mo#on Planning I. Katharina Muelling (NREC, Carnegie Mellon University) 1

Similar documents
ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space

Road Map Methods. Including material from Howie Choset / G.D. Hager S. Leonard

Path Planning for Point Robots. NUS CS 5247 David Hsu

Motion Planning. Howie CHoset

Sung-Eui Yoon ( 윤성의 )

CS4733 Class Notes. 1 2-D Robot Motion Planning Algorithm Using Grown Obstacles

Planning: Part 1 Classical Planning

Computational Geometry csci3250. Laura Toma. Bowdoin College

Robot Motion Planning

Visibility Graph. How does a Mobile Robot get from A to B?

Lecture 11 Combinatorial Planning: In the Plane

Motion Planning for Robot Manipulators

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Robot Motion Planning

Unit 5: Part 1 Planning

Configuration Space of a Robot

Motion Planning 2D. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Func%on Approxima%on. Pieter Abbeel UC Berkeley EECS

Autonomous and Mobile Robotics Prof. Giuseppe Oriolo. Motion Planning 1 Retraction and Cell Decomposition

Planning in Mobile Robotics

Motion Planning, Part III Graph Search, Part I. Howie Choset

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry

Motion Planning. O Rourke, Chapter 8

Robotics Tasks. CS 188: Artificial Intelligence Spring Manipulator Robots. Mobile Robots. Degrees of Freedom. Sensors and Effectors

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

Spa$al Analysis and Modeling (GIST 4302/5302) Guofeng Cao Department of Geosciences Texas Tech University

Lecture 3: Motion Planning 2

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Planning Techniques for Robotics Planning Representations: Skeletonization- and Grid-based Graphs

Computer Game Programming Basic Path Finding

Navigation and Metric Path Planning

Motion Planning, Part IV Graph Search Part II. Howie Choset

EE631 Cooperating Autonomous Mobile Robots

An angle that has a measure less than a right angle.

Minkowski Sums. Dinesh Manocha Gokul Varadhan. UNC Chapel Hill. NUS CS 5247 David Hsu

Lecture 3: Motion Planning (cont.)

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text

CS 4649/7649 Robot Intelligence: Planning

Describe Plane Shapes

Path Planning. Jacky Baltes Dept. of Computer Science University of Manitoba 11/21/10

CS 763 F16. Moving objects in space with obstacles/constraints.

Announcements. CS 188: Artificial Intelligence Fall Robot motion planning! Today. Robotics Tasks. Mobile Robots

CS 188: Artificial Intelligence Fall Announcements

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

Roadmap-Based Path Planning

Human-Oriented Robotics. Robot Motion Planning. Kai Arras Social Robotics Lab, University of Freiburg

Robotic Motion Planning: Cell Decompositions (with some discussion on coverage and pursuer/evader)

Autonomous Mobile Robots, Chapter 6 Planning and Navigation Where am I going? How do I get there? Localization. Cognition. Real World Environment

Other Voronoi/Delaunay Structures

Lecture notes: Object modeling

Robot Motion Planning Using Generalised Voronoi Diagrams

CS Path Planning

Path Planning. Ioannis Rekleitis

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Advanced Robotics Path Planning & Navigation

General Pyramids. General Cone. Right Circular Cone = "Cone"

Local Search Methods. CS 188: Artificial Intelligence Fall Announcements. Hill Climbing. Hill Climbing Diagram. Today

MEV 442: Introduction to Robotics - Module 3 INTRODUCTION TO ROBOT PATH PLANNING

Motion Planning. Howie CHoset

Visual Navigation for Flying Robots. Motion Planning

Roadmaps. Vertex Visibility Graph. Reduced visibility graph, i.e., not including segments that extend into obstacles on either side.

Introduction to Information Science and Technology (IST) Part IV: Intelligent Machines and Robotics Planning

Computational Geometry

Prime Time (Factors and Multiples)

Polygon decomposition. Motivation: Art gallery problem

Introduction to State-of-the-art Motion Planning Algorithms. Presented by Konstantinos Tsianos

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Geometric Computations for Simulation

9. Three Dimensional Object Representations

Unit 10 Study Guide: Plane Figures

The Art Gallery Problem: An Overview and Extension to Chromatic Coloring and Mobile Guards

pine cone Ratio = 13:8 or 8:5

Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

Intersection of an Oriented Box and a Cone

Path Planning by Using Generalized Voronoi Diagrams and Dijkstra Algorithm. Lai Hon Lin. Project Proposal. Computational Geometry

Robot Motion Control Matteo Matteucci

Sampling-Based Robot Motion Planning. Lydia Kavraki Department of Computer Science Rice University Houston, TX USA

Coverage and Search Algorithms. Chapter 10

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Deformable Part Models

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Trajectory Optimization

Renderer Implementation: Basics and Clipping. Overview. Preliminaries. David Carr Virtual Environments, Fundamentals Spring 2005

Variable-resolution Velocity Roadmap Generation Considering Safety Constraints for Mobile Robots

Guidelines for proper use of Plate elements

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013

Motion Planning. Jana Kosecka Department of Computer Science

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro

Discrete search algorithms

Introduction to Mobile Robotics Path and Motion Planning. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

Algebraic Geometry of Segmentation and Tracking

Spatial Data Structures

Solid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects

Unit 1, Lesson 11: Polygons

Planning & Decision-making in Robotics Planning Representations/Search Algorithms: RRT, RRT-Connect, RRT*

Advanced Robotics Path Planning & Navigation

Rapid Extraction and Updating Road Network from LIDAR Data

Transcription:

16-843 Manipula0on Algorithms Mo0on Planning Mo#on Planning I Katharina Muelling (NREC, Carnegie Mellon University) 1

Configura0on Space Obstacles Star Algorithm Convex robot, transla#on C obs : convex polygon Determine the order of these edges! β 2 α 3 β 2 α 2 α 1 β 1 α A 2 O β 3 β 3 α 1 β 1 α 3 β 4 β 4 Key observa0on: every edge of C obs is a translated edge from either A or O

Configura0on Space Obstacles Star Algorithm Convex robot, transla#on C obs : convex polygon Solid representa0on of C obs Idea: Create convex obstacles by intersec#ng half- planes Two types of contacts: O A Vertex of A and Edge of O A Edge of A and Vertex of O

Configura0on Space Obstacles Star Algorithm Convex robot, transla#on C obs : convex polygon Solid representa0on of C obs Idea: Create convex obstacles by intersec#ng half- planes Contact occurs when n and v are perpendicular n v = 0 Func#on of kinema#cs f(q) <=0 { } H = (x t, y t ) C n v(x t, y t ) 0 A Analysis of contacts: n v

Configura0on Space Obstacle What happens when the robot translates and rotates in the plane? π θ π/2 y x 0 From Howie Choset Need to consider orienta#on, i.e., need to consider all possible contact interac#ons between all pairs of object and robot features! Problem: Exponen0al run 0mes! Katharina Muelling (NREC, Carnegie Mellon University) 5

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 Objec0ve: Fast C obs construc#on for manipulator with revolute joints Mo0va0on: C obs construc#on is exponen#al in #me. Not suitable for real #me planning. Katharina Muelling (NREC, Carnegie Mellon University) 6

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 Approach: Define transforma#on primi#ves that allow to transforma#on workspace obstacles to c- Space obstacles Algorithm: lookup + analy#cal transforma#ons to quickly generate the c- space for complex environments from simple primi#ves Katharina Muelling (NREC, Carnegie Mellon University) 7

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 General Transforma0on Proper0es: Set Union Property: C obs (B 1 B 2 ) C obs (B 1 ) C obs (B 2 ) n Relevance: C obs (E) = B E = i B i i=1 i=1 Can decompose complex objects into sets for which we have efficient transforma#ons Set Containment Property: If B 1 B 2 : A physical object that is fully C enclosed by a larger one has obs (B 1 ) = C obs (B 1 ) C obs (B 2 ) a transform that is fully contained C obs (B 1 ) C obs (B 2 ) in the transform of the larger one Only need transforma#ons of boundaries n Katharina Muelling (NREC, Carnegie Mellon University) 8

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 General Transforma0on Primi0ves: Point Primi#ves Line Primi#ves Circle Primi#ves Katharina Muelling (NREC, Carnegie Mellon University) 9

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 General Transforma0on Primi0ves: Point Primi#ves Katharina Muelling (NREC, Carnegie Mellon University) 10

Real Time Configura0on Space Transforms for Obstacle Avoidance Newman and Branicky, 1991 Advantages: Can quickly generate complex configura#on space obstacle from precomputed and stored primi#ves. Disadvantages: A lot of work! Only approxima#on. Robot arm dependent. Katharina Muelling (NREC, Carnegie Mellon University) 11

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Objec0ve Simple and efficient mo#on planning algorithm for general manipulator moving in a cluiered environment What is it about: Configura#on space representa#on that is suitable for for mo#on planning (easy to implement). Katharina Muelling (NREC, Carnegie Mellon University) 12

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Mo0va0on Exis#ng mo#on planning algorithms are either: Not simple enough to implement Not general enough Approach: Discre#ze joint angles and look at ranges of joint angle values Katharina Muelling (NREC, Carnegie Mellon University) 13

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Key Idea: Slice Projec#ons q C obs = R n Configura#on for manipulator with n degrees of freedom Approximate C obs by an union of n- 1 dimensional slices π j (q) = ( q 1,..., q j 1, q j+1,..., q ) n Π [aj,b j ](C obs ) = { π j (q) q C obs, q j [a j, b j ]} Slice projec#on of C obs for values of q j in the range of a j - b j Katharina Muelling (NREC, Carnegie Mellon University) 14

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Example: Key Idea: Slice Projec#ons a=0 b = π 4 q [a, b] Katharina Muelling (NREC, Carnegie Mellon University) 15

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Example: Key Idea: Slice Projec#ons Katharina Muelling (NREC, Carnegie Mellon University) 16

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Example: Key Idea: Slice Projec#ons Katharina Muelling (NREC, Carnegie Mellon University) 17

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Key Idea: Slice Projec#ons Make image of data structure Katharina Muelling (NREC, Carnegie Mellon University) 18

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Algorithm to create C- Space approxima0on: For i=1 to i=n: Compute C- Space(i): Ignore links > i Find range of legal values range(q i ) by rota#ng joint i given the current joint ranges C- Space(i- 1) If i<n: sample range(q i ) at specified resolu#on θ 1 Katharina Muelling (NREC, Carnegie Mellon University) 19

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Algorithm to create C- Space approxima0on: For i=1 to i=n: Compute C- Space(i): Ignore links > i Find range of legal values range(q i ) by rota#ng joint i given the current joint ranges C- Space(i- 1) If i<n: sample range(q i ) at specified resolu#on θ 2 Katharina Muelling (NREC, Carnegie Mellon University) 20

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 How to compute range(q i ): Assume: k<i are fixed and safe Two types of collision: Edge link with vertex object Vertex link with edge object θ 2 Katharina Muelling (NREC, Carnegie Mellon University) 21

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 How to compute range(q i ): 1. Determine if vertex and infinite support line of edge intersect n v(q i )+ d = 0 Katharina Muelling (NREC, Carnegie Mellon University) 22

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 How to compute range(q i ): 1. Determine if vertex and infinite support line of edge intersect 2. In edge constraint: Does it indeed intersect with edge 3. Orienta#on constraint: Ensure polygon edges do not intersect object at contact point Katharina Muelling (NREC, Carnegie Mellon University) 23

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 How to compute range(q i ): 1. Determine if vertex and infinite support line of edge intersect 2. In edge constraint: compute the coordinates 3. Orienta#on constraint: Ensure polygon edges do not intersect object at contact point 4. Reachability constraint: Can it reach point without collision? Katharina Muelling (NREC, Carnegie Mellon University) 24

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 How to compute range(q i ): 1. Determine if vertex and infinite support line of edge intersect 2. In edge constraint: compute the coordinates 3. Orienta#on constraint: Ensure polygon edges do not intersect object at contact point 4. Reachability constraint: Can it reach point without collision? Katharina Muelling (NREC, Carnegie Mellon University) 25

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 The effect of ranges of joint angles: Idea: Grow the shape of the links to accommodate the range of the joint angles! Katharina Muelling (NREC, Carnegie Mellon University) 26

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Free- Space Representa0on: Regions: set of adjacent slices with overlapping ranges Build region graph to search for path between points in different regions Katharina Muelling (NREC, Carnegie Mellon University) 27

A Simple Mo0on Planning Algorithm for General Robot Manipula0on Thomas Lozano- Perez, AAAI 1986 Advantages: Simpler and more efficient than complete C- space construc#on. Disadvantages: Approxima#on: may miss legal paths Rapid grow in execu#on #me and memory with growing DOF Katharina Muelling (NREC, Carnegie Mellon University) 28

Mo0on Planning Katharina Muelling (NREC, Carnegie Mellon University) 29

Mo0on Planning Let W = R m being the work space, O W the set of obstacles, A(q) the robot in configura#on q C C obs = { q C A(q) O } C free = C \ C obs Mo0on planning: find a con#nuous path With τ :[0,1] C free τ (0) = q I, τ (1) = q G Planning with robot being point in C- Space LaValle, Planning Algorihtms Katharina Muelling (NREC, Carnegie Mellon University) 30

Mo0on Planning Overview of all mo#on planning we will handle: Combinatorial Planning Sampling based Planning Poten#al Func#ons Jacobian Transpose Decision Theory Katharina Muelling (NREC, Carnegie Mellon University) 31

Mo0on Planning Con0nuous terrain needs to be discre0zed for path planning! Two general approaches: Combinatorial Planning Explicit characteriza#on of C free Capture connec#vity of C free into graph and do graph search to find solu#ons Ooen complete Sampling based planning Sample in C- space Use collision detec#on to probe for collisions with obstacles Probabilis#c complete Katharina Muelling (NREC, Carnegie Mellon University) 32

Completeness Complete: A mo#on planner always returns a solu#on if there exist one and returns a failure otherwise in bounded #me. Probabilis0c Complete: The probability tends to zero as the number of sampled points increases. No #me bound. Katharina Muelling (NREC, Carnegie Mellon University) 33

Road maps Road map R, is a union of 1- D curves s.t. for all q I C free q G C free there exist a path between q I and q G if: and 1) Accessibility: There is a path to q I C free to a q' 2) Departability: There is a path from a q G C free to a Rq'' R 3) Connec#vity: There exist a path in R between q and q Building R: Nodes: q C free (or its boundary) Edge between nodes: if there is a free path between the two nodes Path Planning: 1) Connect q I and q G to road map to q and q 2) Find path from q and q in R Katharina Muelling (NREC, Carnegie Mellon University) 34

Combinatorial Planning Main combinatorial planning techniques: Visibility graphs Voronoi diagrams Exact cell decomposi#on Approximate cell decomposi#on Result: Graph, ooen road map Require: Explicit C obs representa#on Katharina Muelling (NREC, Carnegie Mellon University) 35

Visibility graph Idea: Construct a path as polygonal line connec#ng q I and q G through ver#ces of C obs Why? Any collision- free path can be transformed into a piece- wise linear path that bends only at the obstacle ver#ces Shortest Path roadmaps Katharina Muelling (NREC, Carnegie Mellon University) 36

A graph defined by: Visibility graph Nodes: q I,q G, obstacle vertex Edges: either obstacle edge or edge between nodes that does not intersect with any obstacle Run#me: O(n 2 log n) Shortest Path roadmaps Katharina Muelling (NREC, Carnegie Mellon University) 37

Voronoi Diagram Idea: Divide the space into regions closest to a par#cular site Katharina Muelling (NREC, Carnegie Mellon University) 38

Generalized Voronoi Diagram Idea: Set of points that have maximal clearance from all nearest objects goal Katharina Muelling (NREC, Carnegie Mellon University) 39 start Figure: Howie Choset

Generalized Voronoi Diagram Idea: Set of points that have maximal clearance from all nearest objects Voronoi diagram V(C free ) = { q C free near(q) >1} where near(q) = { p B free d(p, q) = min(p, q) } Boundary of C free Distance func#on One nearest point p p p q Two nearest points The set of configura#ons with more than one nearest base point p Katharina Muelling (NREC, Carnegie Mellon University)

Generalized Voronoi Diagram Idea: Set of points that have maximal clearance from all nearest objects For polygonal C obs consists of n lines and parabolic segments: Naïve: O(n4) Best: O(n log n) Pros: maximize clearance good when uncertainty involved (what is always the case) Cons: Airac#on to open space Subop#mal paths Real #me for low- dimensional C- space goal start Figure: Howie Choset Katharina Muelling (NREC, Carnegie Mellon University) 41

Cell Decomposi0on Idea: Decompose C free into regions (cells) and create connec#vity graph that represents adjacencies Two types of approach: Exact Cell Decomposi0on: Union of cells corresponds to C free Approximate Cell Decomposi0on: Decomposes C free into cells with pre- defined shape; union of cells typically only approximates C free space Katharina Muelling (NREC, Carnegie Mellon University) 42

Exact Cell Decomposi0on Example: Trapezoid Decomposi#on Each cell is either triangle or trapezoid and is formed by: 1) Draw ver#cal line segments by shoo#ng rays upward and downward from each polygonal vertex 2) Each cell corresponds to one node in connec#vity graph 3) Nodes are connected if the corresponding cells share a common boundary Katharina Muelling (NREC, Carnegie Mellon University) 43

Exact Cell Decomposi0on Example: Trapezoid Decomposi#on Each cell is either triangle or trapezoid and is formed by: 1) Draw ver#cal line segments by shoo#ng rays upward and downward from each polygonal vertex 2) Each cell corresponds to one node in connec#vity graph 3) Nodes are connected if the corresponding cells share a common boundary Katharina Muelling (NREC, Carnegie Mellon University) 44

Exact Cell Decomposi0on Example: Trapezoid Decomposi#on Each cell is either triangle or trapezoid and is formed by: 1) Draw ver#cal line segments by shoo#ng rays upward and downward from each polygonal vertex 2) Each cell corresponds to one node in connec#vity graph 3) Nodes are connected if the corresponding cells share a common boundary Nodes: Cells Edges: between all adjacent cells Run #me best: O(n log n) N number of cells Katharina Muelling (NREC, Carnegie Mellon University) 45

Approximate Cell Decomposi0on Exact cell decomposi#on can be inefficient for complex objects and problems Idea: Use cells with the same simple predefined shape, e.g., rectangle, square Hierarchical space decomposi#on: Quadtree or Octree decomposi#on The union of those non- overlapping cells is contained in C free Katharina Muelling (NREC, Carnegie Mellon University) 46

Approximate Cell Decomposi0on Example: Quadtree decomposi#on full mixed empty Pros: - Itera#on of repe##ve and simple computa#on - Simple to implement - Can be made complete Katharina Muelling (NREC, Carnegie Mellon University) 47

Combinatorial Planning Summary Pros Cons Completeness Become intractable with increasing C- space dimensionality and/or object complexity In finite #me: Report failure if no solu#on exist Report solu#on, otherwise Combinatorial explosion in represen#ng robot, obstacles and C obs, especially with manipulators How can we do beier? Katharina Muelling (NREC, Carnegie Mellon University) 48

Sampling Based Planning Sampling based planning algorithms: Probabilis#c Road Maps (PRM) Rapidly Exploring Random Trees Derivates of above More efficient in most prac0cal problems but weaker guarantees: Probabilis#c Complete: The probability tends to 0 that no solu#on exist if not found yet Main planning approaches found in manipula#on! Katharina Muelling (NREC, Carnegie Mellon University) 49

Discrete Mo0on Planning Given a graph, how do we search? Search Algorithms: Breadth- First Search Depth- First Search Dijkstra s algorithm Greedy best- first Search A* D* Katharina Muelling (NREC, Carnegie Mellon University) 50

Summary Combinatorial Planning Algorithms Visibility Graphs Generalized Voronoi Diagrams Exact Cell Decomposi#on Approximate Cell Decomposi#on Concept Explicit representa#on of C obs Captures connec#vity of C free in graph and finds path with graph search Sampling Based Planning Sample in C- Space Use collision detec#on to probe for collisions with obstacles Pros and Cons Pros Cons Cons complete Becomes intractable with increasing C- Space and object/robot complexity Completeness Complete Probabilis#c Complete Weaker guarantees Katharina Muelling (NREC, Carnegie Mellon University) 51

Concepts: Completeness Probabilis#c Complete Roadmap Summary Katharina Muelling (NREC, Carnegie Mellon University) 52