Path Planning for a Point Robot

Slides:



Advertisements
Similar presentations
NUS CS5247 Motion Planning for Car- like Robots using a Probabilistic Learning Approach --P. Svestka, M.H. Overmars. Int. J. Robotics Research, 16: ,
Advertisements

Complete Motion Planning
Motion Planning for Point Robots CS 659 Kris Hauser.
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
Probabilistic Path Planner by Someshwar Marepalli Pratik Desai Ashutosh Sahu Gaurav jain.
Slide 1 Robot Lab: Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University.
Motion Planning CS 6160, Spring 2010 By Gene Peterson 5/4/2010.
Visibility Graph and Voronoi Diagram CS Tutorial.
Presented By: Aninoy Mahapatra
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
Visibility Computations: Finding the Shortest Route for Motion Planning COMP Presentation Eric D. Baker Tuesday 1 December 1998.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song and Nancy M. Amato Department of Computer Science Texas A&M University College Station,
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by David Camarillo CS326a: Motion Planning, Spring
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 ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
CS 326A: Motion Planning Criticality-Based Motion Planning: Target Finding.
Navigation and Motion Planning for Robots Speaker: Praveen Guddeti CSE 976, April 24, 2002.
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,
Roadmap Methods How do I get there? Visibility Graph Voronoid Diagram.
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.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
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.
Spring 2007 Motion Planning in Virtual Environments Dan Halperin Yesha Sivan TA: Alon Shalita Basics of Motion Planning (D.H.)
Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by Dongkyu, Choi On the day of 28 th May 2003 CS326a: Motion.
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.
Roadmap Methods How do I get there? Visibility Graph Voronoid Diagram.
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.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Motion Planning Howie CHoset.
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.
4/21/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Motion Planning Carola Wenk.
May Motion Planning Shmuel Wimer Bar Ilan Univ., Eng. Faculty Technion, EE Faculty.
© Manfred Huber Autonomous Robots Robot Path Planning.
Planning Near-Optimal Corridors amidst Obstacles Ron Wein Jur P. van den Berg (U. Utrecht) Dan Halperin Athens May 2006.
B659: Principles of Intelligent Robot Motion Kris Hauser.
Computational Geometry Piyush Kumar (Lecture 10: Robot Motion Planning) Welcome to CIS5930.
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.
October 9, 2003Lecture 11: Motion Planning Motion Planning Piotr Indyk.
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
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
Robotics Chapter 5 – Path and Trajectory Planning
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Motion Planning Howie CHoset. Assign HW Algorithms –Start-Goal Methods –Map-Based Approaches –Cellular Decompositions.
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.
4/9/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Motion Planning Carola Wenk.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Optimal Acceleration and Braking Sequences for Vehicles in the Presence of Moving Obstacles Jeff Johnson, Kris Hauser School of Informatics and Computing.
How do I get there? Roadmap Methods Visibility Graph Voronoid Diagram.
Schedule for next 2 weeks
Motion Planning for a Point Robot (2/2)
Robot Lab: Robot Path Planning
Presented By: Aninoy Mahapatra
Planning and Navigation
Robotics meet Computer Science
Planning.
Classic Motion Planning Methods
Presentation transcript:

Path Planning for a Point Robot Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Configuration Space: Tool to Map a Robot to a Point

Problem free space s free path g

Problem semi-free path

Types of Path Constraints Local constraints: lie in free space Differential constraints: have bounded curvature Global constraints: have minimal length

Motion-Planning Framework Continuous representation Discretization Graph searching (blind, best-first, A*)

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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Roadmap Methods Visibility graph Introduced in the Shakey project at SRI in the late 60s. Can produce shortest paths in 2-D configuration spaces g s

Simple Algorithm Install all obstacles vertices in VG, plus the start and goal positions For every pair of nodes u, v in VG If segment(u,v) is an obstacle edge then insert (u,v) into VG else for every obstacle edge e if segment(u,v) intersects e then goto 2 Search VG using A*

Complexity Simple algorithm: O(n3) time Rotational sweep: O(n2 log n) Optimal algorithm: O(n2) Space: O(n2)

Rotational Sweep Check the following page: VISIBLE_VERTICES(PolygonSet S, Point p) 1. initialize balanced search tree T 2. initialize list L 3. Sort the obstacle vertices in set S according to the clockwise angle that the half-line from p to each vertex makes with the positive x-axis. In case of ties vertices closer to p should come before vertices farther from p. Let W1, ..., Wn be the sorted list. 4. Let r be the half-line parallel to the positive x-axis starting at p. Find the obstacle edges that are properly intersected by r, and store them in a balanced search tree T in the order in which they are intersected by r. 5. i = 1 // rotate the ray to the first vertex 6. while not (i > n) 7. Delete from T the obstacle edges incident to Wi that lie on the counterclockwise side of the half-line from p to Wi. 8. if (VISIBLE(p, Wi, T)) 9. L.append(Wi) 10. Insert into T the obstacle edges incident to Wi that lie on the clockwise side of the half-line from p to Wi. 11. increment i // rotate the ray to the next vertex 12. return L Check the following page: http://www.cs.hut.fi/Research/TRAKLA2/exercises/VisibleVertices.html

Rotational Sweep

Rotational Sweep

Rotational Sweep

Rotational Sweep

Reduced Visibility Graph can’t be shortest path tangent segments  Eliminate concave obstacle vertices

Generalized (Reduced) Visibility Graph tangency point

Three-Dimensional Space Shortest path passes through none of the vertices locally shortest path homotopic to globally shortest path Computing the shortest collision-free path in a polyhedral space is NP-hard

Roadmap Methods Voronoi diagram Introduced by Computational Geometry researchers. Generate paths that maximizes clearance. O(n log n) time O(n) space

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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Cell-Decomposition Methods Two classes of methods: Exact cell decomposition The free space F is represented by a collection of non-overlapping cells whose union is exactly F Examples: Polygonal decomposition Trapezoidal decomposition

Polygonal Configuration Space - represent the configuration space boundary and obstacles as polygons - polygons may be concave - decompose the free space into convex cells

Polygonal Configuration Space cells form channels instead of line paths channels give the robot more information to avoid obstacles encountered at run time - cells form channels instead of line paths - the interior of the channel lies entirely in free space - an easy way to generate a path is to connect the midpoint of every cell boundary

Polygonal Configuration Space qfinal qinit - to do a query, identify the cells where the initial and final configurations lie - look for a sequence of cells that connect the initial and final cells - connect the midpoints together - can apply spline curve fitting techniques if we want a smooth path

Trapezoidal decomposition

Trapezoidal decomposition

Trapezoidal decomposition

Trapezoidal decomposition

Trapezoidal decomposition critical events  criticality-based decomposition …

Trapezoidal decomposition Planar sweep  O(n log n) time, O(n) space

Generalization to 3 Dimensions - the sweeping method can be generalized to 3D quite easily - instead of sweeping lines, we sweep planes, the result are parallelpiped cells - the figure here is crude because it is just lifted from the 2D case. In general, we put a plane when we come to a vertex in the sweep - the connectivity graph is generated much in the same way as the 2D case by connecting points on the cell boundaries

Cell-Decomposition Methods Two classes of methods: Exact cell decomposition Approximate cell decomposition F is represented by a collection of non-overlapping cells whose union is contained in F Examples: quadtree, octree, 2n-tree

Octree Decomposition

Sketch of Algorithm Compute cell decomposition down to some resolution Identify start and goal cells Search for sequence of empty/mixed cells between start and goal cells If no sequence, then exit with no path If sequence of empty cells, then exit with solution If resolution threshold achieved, then exit with failure Decompose further the mixed cells Return to 2

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 function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Potential Field Methods Approach initially proposed for real-time collision avoidance [Khatib, 86]. Hundreds of papers published on it. Goal Robot

Attractive and Repulsive fields

Local-Minimum Issue Perform best-first search (possibility of combining with approximate cell decomposition) Alternate descents and random walks Use local-minimum-free potential (navigation function)

Completeness of Planner A motion planner is complete if it finds a collision-free path whenever one exists and return failure otherwise. Visibility graph, Voronoi diagram, exact cell decomposition, navigation function provide complete planners Weaker notions of completeness, e.g.: - resolution completeness (PF with best-first search) - probabilistic completeness (PF with random walks)

A probabilistically complete planner returns a path with high probability if a path exists. It may not terminate if no path exists. A resolution complete planner discretizes the space and returns a path whenever one exists in this representation.

Preprocessing / Query Processing Preprocessing: Compute visibility graph, Voronoi diagram, cell decomposition, navigation function Query processing: - Connect start/goal configurations to visibility graph, Voronoi diagram - Identify start/goal cell - Search graph

Summary: Exact Cell Decomposition

Summary: Approximate Cell Decomposition

Summary: Potential Fields