Slide 1 Robot Lab: Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University.

Slides:



Advertisements
Similar presentations
Complete Motion Planning
Advertisements

Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
Probabilistic Path Planner by Someshwar Marepalli Pratik Desai Ashutosh Sahu Gaurav jain.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
The Voronoi Diagram David Johnson. Voronoi Diagram Creates a roadmap that maximizes clearance –Can be difficult to compute –We saw an approximation in.
Presented By: Aninoy Mahapatra
Probabilistic Roadmap
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Multi-Robot Motion Planning Jur van den Berg. Outline Recap: Configuration Space for Single Robot Multiple Robots: Problem Definition Multiple Robots:
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Fast C-obstacle Query Computation for Motion Planning Liang-Jun Zhang 12/13/2005 Liang-Jun Zhang 1 Young.
Motion Planning: A Journey of Robots, Digital Actors, Molecules and Other Artifacts Jean-Claude Latombe Computer Science Department Stanford University.
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
1 Last lecture  Path planning for a moving Visibility graph Cell decomposition Potential field  Geometric preliminaries Implementing geometric primitives.
Algorithmic Robotics and Motion Planning Dan Halperin Tel Aviv University Fall 2006/7 Algorithmic motion planning, an overview.
CS 326A: Motion Planning Jean-Claude Latombe CA: Aditya Mandayam.
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners Burchan Bayazit Joint Work With Nancy Amato.
CS 326 A: Motion Planning Instructor: Jean-Claude Latombe Teaching Assistant: Itay Lotan Computer Science.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
CS 326A: Motion Planning Criticality-Based Motion Planning: Target Finding.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Robot Motion Planning.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Configuration Space – Basic Path-Planning Methods.
CS 326A: Motion Planning robotics.stanford.edu/~latombe/cs326/2004/index.htm Jean-Claude Latombe Computer Science Department Stanford University.
NUS CS 5247 David Hsu Minkowski Sum Gokul Varadhan.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Constraint-Based Motion Planning using Voronoi Diagrams Maxim Garber and Ming C. Lin Department of Computer.
Workspace-based Connectivity Oracle An Adaptive Sampling Strategy for PRM Planning Hanna Kurniawati and David Hsu Presented by Nicolas Lee and Stephen.
The University of North Carolina at CHAPEL HILL A Simple Path Non-Existence Algorithm using C-obstacle Query Liang-Jun Zhang.
Spring 2007 Motion Planning in Virtual Environments Dan Halperin Yesha Sivan TA: Alon Shalita Basics of Motion Planning (D.H.)
Introduction to Mobile Robots Motion Planning Prof.: S. Shiry Pooyan Fazli M.Sc Computer Science Department of Computer Eng. and IT Amirkabir Univ. of.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
Introduction to Robot Motion Planning. Example A robot arm is to build an assembly from a set of parts. Tasks for the robot: Grasping: position gripper.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners by Burchan Bayazit Department of Computer Science.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Visibility Graphs and Cell Decomposition By David Johnson.
Slide 1 Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
9/14/2015CS225B Kurt Konolige Locomotion of Wheeled Robots 3 wheels are sufficient and guarantee stability Differential drive (TurtleBot) Car drive (Ackerman.
© Manfred Huber Autonomous Robots Robot Path Planning.
B659: Principles of Intelligent Robot Motion Kris Hauser.
Robotics Chapter 5 – Path and Trajectory Planning
Computational Geometry Piyush Kumar (Lecture 10: Robot Motion Planning) Welcome to CIS5930.
Path Planning for a Point Robot
Introduction to Robot Motion Planning Robotics meet Computer Science.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
CS B659: Principles of Intelligent Robot Motion Configuration Space.
Introduction to Motion Planning
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Administration Feedback on assignment Late Policy
Robotics Chapter 5 – Path and Trajectory Planning
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Planning and Navigation. 6 Competencies for Navigation Navigation is composed of localization, mapping and motion planning – Different forms of motion.
Robot Motion Planning Robotics meet Computer Science.
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Last lecture Configuration Space Free-Space and C-Space Obstacles
Robot Lab: Robot Path Planning
C-obstacle Query Computation for Motion Planning
Probabilistic Roadmap Motion Planners
Presented By: Aninoy Mahapatra
Planning and Navigation
Robotics meet Computer Science
Planning.
Classic Motion Planning Methods
Presentation transcript:

Slide 1 Robot Lab: Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University

Slide 2 Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap –Cell Decomposition –Potential Field

Slide 3 Goals Compute motion strategies, e.g., –Geometric paths –Time-parameterized trajectories –Sequence of sensor-based motion commands Achieve high-level goals, e.g., –Go to the door and do not collide with obstacles –Assemble/disassemble the engine –Build a map of the hallway –Find and track the target (an intruder, a missing pet, etc.)

Slide 4 Fundamental Question Are two given points connected by a path?

Slide 5 Basic Problem Problem statement: Compute a collision-free path for a rigid or articulated moving object among static obstacles. Input –Geometry of a moving object (a robot, a digital actor, or a molecule) and obstacles –How does the robot move? –Kinematics of the robot (degrees of freedom) –Initial and goal robot configurations (positions & orientations) Output Continuous sequence of collision-free robot configurations connecting the initial and goal configurations

Slide 6 Example: Rigid Objects

Slide 7 Example: Articulated Robot

Slide 8 Is it easy?

Slide 9 Hardness Results Several variants of the path planning problem have been proven to be PSPACE-hard. A complete algorithm may take exponential time. –A complete algorithm finds a path if one exists and reports no path exists otherwise. Examples –Planar linkages [Hopcroft et al., 1984] –Multiple rectangles [Hopcroft et al., 1984]

Slide 10 Tool: Configuration Space Difficulty –Number of degrees of freedom (dimension of configuration space) –Geometric complexity

Slide 11 Extensions of the Basic Problem More complex robots –Multiple robots –Movable objects –Nonholonomic & dynamic constraints –Physical models and deformable objects –Sensorless motions (exploiting task mechanics) –Uncertainty in control

Slide 12 Extensions of the Basic Problem More complex environments –Moving obstacles –Uncertainty in sensing More complex objectives –Optimal motion planning –Integration of planning and control –Assembly planning –Sensing the environment Model building Target finding, tracking

Slide 13 Practical Algorithms A complete motion planner always returns a solution when one exists and indicates that no such solution exists otherwise. Most motion planning problems are hard, meaning that complete planners take exponential time in the number of degrees of freedom, moving objects, etc.

Slide 14 Practical Algorithms Theoretical algorithms strive for completeness and low worst-case complexity –Difficult to implement –Not robust Heuristic algorithms strive for efficiency in commonly encountered situations. –No performance guarantee Practical algorithms with performance guarantees –Weaker forms of completeness –Simplifying assumptions on the space: “exponential time” algorithms that work in practice

Slide 15 Problem Formulation for Point Robot Input –Robot represented as a point in the plane –Obstacles represented as polygons –Initial and goal positions Output –A collision-free path between the initial and goal positions

Slide 16 Framework

Slide 17 Visibility Graph Method Observation: If there is a collision-free path between two points, then there is a polygonal path that bends only at the obstacles vertices. Why? –Any collision-free path can be transformed into a polygonal path that bends only at the obstacle vertices. A polygonal path is a piecewise linear curve.

Slide 18 Visibility Graph A visibility graphis a graph such that –Nodes: q init, q goal, or an obstacle vertex. –Edges: An edge exists between nodes u and v if the line segment between u and v is an obstacle edge or it does not intersect the obstacles.

Slide 19 A Simple Algorithm for Building Visibility Graphs

Slide 20 Computational Efficiency Simple algorithm O(n 3 ) time More efficient algorithms –Rotational sweep O(n 2 log n) time –Optimal algorithm O(n 2 ) time –Output sensitive algorithms O(n 2 ) space

Slide 21 Framework

Slide 22 Breadth-First Search

Slide 23 Breadth-First Search

Slide 24 Breadth-First Search

Slide 25 Breadth-First Search

Slide 26 Breadth-First Search

Slide 27 Breadth-First Search

Slide 28 Breadth-First Search

Slide 29 Breadth-First Search

Slide 30 Breadth-First Search

Slide 31 Breadth-First Search

Slide 32 Other Search Algorithms Depth-First Search Best-First Search, A*

Slide 33 Framework

Slide 34 Summary Discretize the space by constructing visibility graph Search the visibility graph with breadth-first search Q: How to perform the intersection test?

Slide 35 Summary Represent the connectivity of the configuration space in the visibility graph Running time O(n3) –Compute the visibility graph –Search the graph –An optimal O(n2) time algorithm exists. Space O(n2) Can we do better?

Slide 36 Classic Path Planning Approaches Roadmap – Represent the connectivity of the free space by a network of 1-D curves Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function

Slide 37 Classic Path Planning Approaches Roadmap – Represent the connectivity of the free space by a network of 1-D curves Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function

Slide 38 Roadmap Visibility graph Shakey Project, SRI [Nilsson, 1969] Voronoi Diagram Introduced by computational geometry researchers. Generate paths that maximizes clearance. Applicable mostly to 2-D configuration spaces.

Slide 39 Voronoi Diagram Space O(n) Run time O(n log n)

Slide 40 Other Roadmap Methods Silhouette First complete general method that applies to spaces of any dimensions and is singly exponential in the number of dimensions [Canny 1987] Probabilistic roadmaps

Slide 41 Classic Path Planning Approaches Roadmap – Represent the connectivity of the free space by a network of 1-D curves Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function

Slide 42 Cell-decomposition Methods Exact cell decomposition The free space F is represented by a collection of non-overlapping simple cells whose union is exactly F Examples of cells: trapezoids, triangles

Slide 43 Trapezoidal Decomposition

Slide 44 Computational Efficiency Running time O(n log n) by planar sweep Space O(n) Mostly for 2-D configuration spaces

Slide 45 Adjacency Graph Nodes: cells Edges: There is an edge between every pair of nodes whose corresponding cells are adjacent.

Slide 46 Summary Discretize the space by constructing an adjacency graph of the cells Search the adjacency graph

Slide 47 Cell-decomposition Methods Exact cell decomposition Approximate cell decomposition –F is represented by a collection of non- overlapping cells whose union is contained in F. –Cells usually have simple, regular shapes, e.g., rectangles, squares. –Facilitate hierarchical space decomposition

Slide 48 Quadtree Decomposition

Slide 49 Octree Decomposition

Slide 50 Algorithm Outline

Slide 51 Classic Path Planning Approaches Roadmap – Represent the connectivity of the free space by a network of 1-D curves Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the steepest descent of the potential function

Slide 52 Potential Fields Initially proposed for real-time collision avoidance [Khatib 1986]. Hundreds of papers published. A potential field is a scalar function over the free space. To navigate, the robot applies a force proportional to the negated gradient of the potential field. A navigation function is an ideal potential field that –has global minimum at the goal –has no local minima –grows to infinity near obstacles –is smooth

Slide 53 Attractive & Repulsive Fields

Slide 54 How Does It Work?

Slide 55 Algorithm Outline Place a regular grid G over the configuration space Compute the potential field over G Search G using a best-first algorithm with potential field as the heuristic function

Slide 56 Local Minima What can we do? –Escape from local minima by taking random walks –Build an ideal potential field – navigation function – that does not have local minima

Slide 57 Question Can such an ideal potential field be constructed efficiently in general?

Slide 58 Completeness A complete motion planner always returns a solution when one exists and indicates that no such solution exists otherwise. –Is the visibility graph algorithm complete? Yes. –How about the exact cell decomposition algorithm and the potential field algorithm?

Slide 59 Why Complete Motion Planning? Probabilistic roadmap motion planning –Efficient –Work for complex problems with many DOF –Difficult for narrow passages –May not terminate when no path exists Complete motion planning –Always terminate –Not efficient –Not robust even for low DOF

Slide 60 Path Non-existence Problem Obstacle Goal Initial Robot

Slide 61 Main Challenge Obstacle Goal Initial Robot Exponential complexity: n DOF –Degree of freedom: DOF –Geometric complexity: n More difficult than finding a path –To check all possible paths

Slide 62 Approaches Exact Motion Planning –Based on exact representation of free space Approximation Cell Decomposition (ACD) A Hybrid planner

Slide 63 Configuration Space: 2D Translation Workspace Configuration Space x y Robot Start Goal Free Obstacle C- obstacle

Slide 64 Configuration Space Computation [Varadhan et al, ICRA 2006] 2 Translation + 1 Rotation 215 seconds Obstacle Robot x  y

Slide 65 Exact Motion Planning Approaches –Exact cell decomposition [Schwartz et al. 83] –Roadmap [Canny 88] –Criticality based method [Latombe 99] –Voronoi Diagram –Star-shaped roadmap [Varadhan et al. 06] Not practical –Due to free space computation –Limit for special and simple objects Ladders, sphere, convex shapes 3DOF

Slide 66 Approaches Exact Motion Planning –Based on exact representation of free space Approximation Cell Decomposition (ACD) A Hybrid Planner Combing ACD and PRM

Slide 67 Approximation Cell Decomposition (ACD) Not compute the free space exactly at once But compute it incrementally Relatively easy to implement –[Lozano-Pérez 83] –[Zhu et al. 91] –[Latombe 91] –[Zhang et al. 06]

Slide 68 fullmixed empty Approximation Cell Decomposition Full cell Empty cell Mixed cell –Mixed –Uncertain Configuration Space

Slide 69 Connectivity Graph G f : Free Connectivity GraphG: Connectivity Graph G f is a subgraph of G

Slide 70 Finding a Path by ACD Goal Initial G f : Free Connectivity Graph

Slide 71 Finding a Path by ACD L: Guiding Path First Graph Cut Algorithm –Guiding path in connectivity graph G –Only subdivide along this path –Update the graphs G and G f Described in Latombe’s book

Slide 72 First Graph Cut Algorithm Only subdivide along L L

Slide 73 Finding a Path by ACD

Slide 74 ACD for Path Non-existence C-space Goal Initial

Slide 75 Connectivity Graph Guiding Path ACD for Path Non-existence

Slide 76 ACD for Path Non-existence Connectivity graph is not connected No path! Sufficient condition for deciding path non-existence

Slide 77 Two-gear Example no path! Cells in C-obstacle Initial Goal Roadmap in F Vide o 3.356s

Slide 78 Cell Labeling Free Cell Query –Whether a cell completely lies in free space? C-obstacle Cell Query –Whether a cell completely lies in C-obstacle? fullmixed empty

Slide 79 Free Cell Query A Collision Detection Problem Does the cell lie inside free space? Do robot and obstacle separate at all configurations? Obstacle Workspace Configuration space ? Robot

Slide 80 Clearance Separation distance –A well studied geometric problem Determine a volume in C-space which are completely free d

Slide 81 C-obstacle Query Another Collision Detection Problem Does the cell lie inside C-obstacle? Do robot and obstacle intersect at all configurations? Obstacle Workspace Configuration space ? Robot

Slide 82 ‘Forbiddance’ ‘Forbiddance’: dual to clearance Penetration Depth –A geometric computation problem less investigated [Zhang et al. ACM SPM 2006] PD

Slide 83 Limitation of ACD Combinatorial complexity of cell decomposition Limited for low DOF problem –3-DOF robots

Slide 84 Approaches Exact Motion Planning –Based on exact representation of free space Approximation Cell Decomposition (ACD) A Hybrid Planner Combing ACD and PRM

Slide 85 Hybrid Planning Probabilistic roadmap motion planning + Efficient + Many DOFs -Narrow passages -Path non-existence Complete Motion Planning + Complete -Not efficient Can we combine them together?

Slide 86 Hybrid Approach for Complete Motion Planning Use Probabilistic Roadmap (PRM): –Capture the connectivity for mixed cells –Avoid substantial subdivision Use Approximation Cell Decomposition (ACD) –Completeness –Improve the sampling on narrow passages

Slide 87 Connectivity Graph G f : Free Connectivity GraphG: Connectivity Graph G f is a subgraph of G

Slide 88 Pseudo-free edges Pseudo free edge for two adjacent cells Goal Initial

Slide 89 Pseudo-free Connectivity Graph: G sf Goal Initial G sf = G f + Pseudo-edges

Slide 90 Algorithm G f G sf G

Slide 91 Results of Hybrid Planning

Slide 92 Results of Hybrid Planning

Slide 93 Results of Hybrid Planning times speedup 3 DOF4 DOF timingcells #timingcells #timingcells # Hybrid34s50K16s48K102s164K ACD85s168K???? Speedup2.53.3≥10? ?

Slide 94 Summary Difficult for Exact Motion Planning –Due to the difficulty of free space configuration computation ACD is more practical –Explore the free space incrementally Hybrid Planning –Combine the completeness of ACD and efficiency of PRM