1 Motion Planning (It’s all in the discretization) R&N: Chap. 25 gives some background.

Slides:



Advertisements
Similar presentations
Configuration Space. Recap Represent environments as graphs –Paths are connected vertices –Make assumption that robot is a point Need to be able to use.
Advertisements

Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
PRM and Multi-Space Planning Problems : How to handle many motion planning queries? Jean-Claude Latombe Computer Science Department Stanford University.
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
Geometric Representations & Collision Detection Kris Hauser I400/B659: Intelligent Robotics Spring 2014.
Presented By: Aninoy Mahapatra
Probabilistic Roadmap
Iterative Relaxation of Constraints (IRC) Can’t solve originalCan solve relaxed PRMs sample randomly but… start goal C-obst difficult to sample points.
Randomized Kinodynamics Motion Planning with Moving Obstacles David Hsu, Robert Kindel, Jean-Claude Latombe, Stephen Rock.
Proximity Computations between Noisy Point Clouds using Robust Classification 1 Jia Pan, 2 Sachin Chitta, 1 Dinesh Manocha 1 UNC Chapel Hill 2 Willow Garage.
Sampling and Connection Strategies for PRM Planners Jean-Claude Latombe Computer Science Department Stanford University.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
David Hsu, Robert Kindel, Jean- Claude Latombe, Stephen Rock Presented by: Haomiao Huang Vijay Pradeep Randomized Kinodynamic Motion Planning with Moving.
Presented by David Stavens. Manipulation Planning Before: Want to move the robot from one configuration to another, around obstacles. Now: Want to robot.
Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints. Timothy Bretl Presented by Patrick Mihelich and Salik Syed.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
1 Probabilistic Roadmaps CS 326A: Motion Planning.
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.
Planning Motions with Intentions By Chris Montgomery A presentation on the paper Planning Motions with Intentions written by Yoshihito Koga, Koichi Kondo,
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Sampling Strategies.
CS 326A: Motion Planning Jean-Claude Latombe CA: Aditya Mandayam.
1 On the Probabilistic Foundations of Probabilistic Roadmaps D. Hsu, J.C. Latombe, H. Kurniawati. On the Probabilistic Foundations of Probabilistic Roadmap.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
1 Target Finding. 2 Example robot’s visibility region hiding region 1 cleared region robot.
CS 326A: Motion Planning Criticality-Based Motion Planning: Target Finding.
1 Path Planning in Expansive C-Spaces D. HsuJ. –C. LatombeR. Motwani Prepared for CS326A, Spring 2003 By Xiaoshan (Shan) Pan.
NUS CS 5247 David Hsu1 Last lecture  Multiple-query PRM  Lazy PRM (single-query PRM)
Toward Autonomous Free- Climbing Robots Tim Bretl, Jean-Claude Latombe, and Stephen Rock May 2003 Presented by Randall Schuh.
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,
Motion Algorithms: Planning, Simulating, Analyzing Motion of Physical Objects Jean-Claude Latombe Computer Science Department Stanford University.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Path Planning in Expansive C-Spaces D. HsuJ.-C. LatombeR. Motwani CS Dept., Stanford University, 1997.
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.
CS 326A: Motion Planning Probabilistic Roadmaps: Sampling and Connection Strategies.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Chris Allocco.
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.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Lydia E. Kavraki Petr Švetka Jean-Claude Latombe Mark H. Overmars Presented.
CS B659: Principles of Intelligent Robot Motion Collision Detection.
A Randomized Approach to Robot Path Planning Based on Lazy Evaluation Robert Bohlin, Lydia E. Kavraki (2001) Presented by: Robbie Paolini.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
Planning with Non-Deterministic Uncertainty. Recap Uncertainty is inherent in systems that act in the real world Last lecture: reacting to unmodeled disturbances.
Robotics Chapter 5 – Path and Trajectory Planning
Path Planning for a Point Robot
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.
Multi-Step Motion Planning for Free-Climbing Robots Tim Bretl, Sanjay Lall, Jean-Claude Latombe, Stephen Rock Presenter: You-Wei Cheah.
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.
CS B553: A LGORITHMS FOR O PTIMIZATION AND L EARNING Global optimization 1.
Real-time motion planning for Manipulator based on Configuration Space Chen Keming Cis Peking University.
Sampling-Based Planners. The complexity of the robot’s free space is overwhelming.
1 CS26N: Motion Planning for Robots, Digital Actors, and Other Moving Objects Jean-Claude Latombe ai.stanford.edu/~latombe/ Winter.
Motion Planning CS121 – Winter Basic Problem Are two given points connected by a path?
Example robot cleared region robot’s visibility region hiding region 2
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Motion Planning for a Point Robot (2/2)
Last lecture Configuration Space Free-Space and C-Space Obstacles
Probabilistic Roadmap Motion Planners
Presented By: Aninoy Mahapatra
Sampling and Connection Strategies for Probabilistic Roadmaps
Motion Planning CS121 – Winter 2003 Motion Planning.
Configuration Space of an Articulated Robot
Presentation transcript:

1 Motion Planning (It’s all in the discretization) R&N: Chap. 25 gives some background

2 Motion planning is the ability for an agent to compute its own motions in order to achieve certain goals. All autonomous robots and digital actors should eventually have this ability

3 Digital Actors

4 Basic problem  Point robot in a 2-dimensional workspace with obstacles of known shape and position  Find a collision-free path between a start and a goal position of the robot

5 Basic problem  Each robot position (x,y) can be seen as a state   Continuous state space  Then each state has an infinity of successors  We need to discretize the state space (x,y)

6 Two Possible Discretizations Grid-basedCriticality-based

7 Two Possible Discretizations Grid-basedCriticality-based But this problem is very simple How do these discretizations scale up?

8 Intruder Finding Problem  A moving intruder is hiding in a 2-D workspace  The robot must “sweep” the workspace to find the intruder  Both the robot and the intruder are points robot’s visibility region hiding region 1 cleared region robot

9 Does a solution always exist?

10 Does a solution always exist? Easy to test: “Hole” in the workspace Hard to test: No “hole” in the workspace No !

Information State  Example of an information state = (x,y,a=1,b=1,c=0)  An initial state is of the form (x,y,1, 1,..., 1)  A goal state is any state of the form (x,y,0,0,..., 0) (x,y) a = 0 or 1 c = 0 or 1 b = 0 or 1 0  cleared region 1  hidding region

12 Critical Line a=0 b=1 a=0 b=1 Information state is unchanged a=0 b=0 Critical line

13 A BCD E Criticality-Based Discretization Each of the regions A, B, C, D, and E consists of “equivalent” positions of the robot, so it’s sufficient to consider a single position per region

14 Criticality-Based Discretization A B CD E (C, 1, 1) (D, 1)(B, 1)

15 Criticality-Based Discretization A BC D E (C, 1, 1) (D, 1)(B, 1)(E, 1)(C, 1, 0)

16 Criticality-Based Discretization A B CD E (C, 1, 1) (D, 1)(B, 1)(E, 1)(C, 1, 0) (B, 0)(D, 1)

17 Criticality-Based Discretization A CD E (C, 1, 1) (D, 1)(B, 1)(E, 1)(C, 1, 0) (B, 0)(D, 1) Much smaller search tree than with grid-based discretization ! B

18 Grid-Based Discretization  Ignores critical lines  Visits many “equivalent” states  Many information states per grid point  Potentially very inefficient

19 Example of Solution

20 But... Criticality-based discretization does not scale well in practice when the dimensionality of the continuous space increases (It becomes prohibitively complex to define and compute)

21 Motion Planning for an Articulated Robot Find a path to a goal configuration that satisfies various constraints: collision avoidance, equilibrium, etc...

22 Configuration Space of an Articulated Robot  A configuration of a robot is a list of non-redundant parameters that fully specify the position and orientation of each of its bodies  In this robot, one possible choice is: (q 1, q 2 ) The configuration space (C-space) has 2 dimensions

23 How many dimensions has the C-space of these 3 rings? Answer: 3  5 = 15

Every robot maps to a point in its configuration space... q 1 q 3 q 0 q n q 4 12 D ~ D 6 D 15 D ~40 D

... and every robot path is a curve in configuration space q 1 q 3 q 0 q n q 4

But how do obstacles (and other constraints) map in configuration space? q 1 q 3 q 0 q n q 4 12 D ~ D 6 D 15 D ~40 D

27 C-space “reduces” motion planning to finding a path for a point But how do the obstacle constraints map into C-space ?

28 A Simple Example: Two-Joint Planar Robot Arm Problems: Geometric complexity Space dimensionality

29 Continuous state space Discretization Search C-space

30 About Discretization  Dimensionality + geometric complexity  Criticality-based discretization turns out to be prohibitively complex  Dimensionality  Grid-based discretization leads to impractically large state spaces for dim(C-space)  6 Each grid node has 3 n -1 neighbors, where n = dim(C-space)

31 Robots with many joints: Modular Self-Reconfigurable Robots (M. Yim) (S. Redon) Millipede-like robot with 13,000 joints

32 Probabilistic Roadmap (PRM) feasible space n -dimensional C-space forbidden space

33 Probabilistic Roadmap (PRM) Configurations are sampled by picking coordinates at random

34 Probabilistic Roadmap (PRM) Configurations are sampled by picking coordinates at random

35 Probabilistic Roadmap (PRM) Sampled configurations are tested for collision (feasibility)

36 Probabilistic Roadmap (PRM) The collision-free configurations are retained as “milestones” (states)

37 Probabilistic Roadmap (PRM) Each milestone is linked by straight paths to its k-nearest neighbors

38 Probabilistic Roadmap (PRM) Each milestone is linked by straight paths to its k-nearest neighbors

39 Probabilistic Roadmap (PRM) The collision-free links are retained to form the PRM (state graph)

40 Probabilistic Roadmap (PRM) s g The start and goal configurations are connected to nodes of the PRM

41 Probabilistic Roadmap (PRM) The PRM is searched for a path from s to g s g

42 Continuous state space Discretization SearchA*

43 Why Does PRM Work? Because most feasible spaces verifies some good geometric (visibility) properties

44 Why Does PRM Work? In most feasible spaces, every configuration “sees” a significant fraction of the feasible space  A relatively small number of milestones and connections between them are sufficient to cover most feasible spaces with high probability

45 S1S1 S2S2 Narrow-Passage Issue Lookout of S 1 The lookout of a subset S of the feasible space is the set of all configurations in S from which it is possible to “see” a significant fraction of the feasible space outside S The feasible space is expansive if all of its subsets have a large lookout

46

47 In an expansive feasible space, the probability that a PRM planner with uniform sampling strategy finds a solution path, if one exists, goes to 1 exponentially with the number of milestones (~ running time) A PRM planner can’t detect that no path exists. Like A*, it must be allocated a time limit beyond which it returns that no path exists. But this answer may be incorrect. Perhaps the planner needed more time to find one ! Probabilistic Completeness of a PRM Motion Planner

48 Continuous state space Discretization Search C-space

49 Sampling Strategies  Issue: Where to sample configurations? That is, which probabilistic distribution to use?  Example: Two-stage sampling strategy: 1.Construct initial PRM with uniform sampling 2.Identify milestones that have few connections to their close neighbors 3.Sample more configurations around them  Greater density of milestones in “difficult” regions of the feasible space

50

51 Collision Checking  Check whether objects overlap

52 Hierarchical Collision Checking  Enclose objects into bounding volumes (spheres or boxes)  Check the bounding volumes

53 Hierarchical Collision Checking  Enclose objects into bounding volumes (spheres or boxes)  Check the bounding volumes first  Decompose an object into two

54 Hierarchical Collision Checking  Enclose objects into bounding volumes (spheres or boxes)  Check the bounding volumes first  Decompose an object into two  Proceed hierarchically

55 Hierarchical Collision Checking  Enclose objects into bounding volumes (spheres or boxes)  Check the bounding volumes first  Decompose an object into two  Proceed hierarchically

56 Bounding Volume Hierarchy (BVH) A BVH (~ balanced binary tree) is pre-computed for each object (obstacle, robot link)

57 BVH of a 3D Triangulated Cat

58 Collision Checking Between Two Objects BVH of object 1 A B C A B C BVH of object 2 [Usually, the two trees have different sizes]  Search for a collision

59 Search for a Collision A Search tree A A pruning

60 Search for a Collision A Search tree A A Heuristic: Break the largest BV

61 Search for a Collision A CACABABA Search tree A B C Heuristic: Break the largest BV

62 Search for a Collision A CACABABA Search tree C CCBCB B C

63 Search for a Collision A CACABABA Search tree C CCBCB B C B If two leaves of the BVH’s overlap (here, C and B) check their content for collision

64 Search Strategy  If there is no collision, all paths must eventually be followed down to pruning or a leaf node  But if there is collision, one may try to detect it as quickly as possible  Greedy best-first search strategy with f(N) = h(N) = d/(r X +r Y ) [Expand the node XY with largest relative overlap (most likely to contain a collision)] rXrX rYrY d X Y

65 So, to discretize the state space of a motion planning problem, a PRM planner performs thousands of auxiliary searches (sometimes even more) to detect collisions ! But from an outsider’s point of view the search of the PRM looks like the main search

66 Fortunately, hierarchical collision checkers are quite fast On average, over 10,000 collision checks per second for two 3-D objects each described by 500,000 triangles, on a contemporary PC Checks are much faster when the objects are either neatly separated (  early pruning) or neatly overlapping (  quick detection of collision)

67

68 Free-Climbing Robot LEMUR IIb robot (created by NASA/JPL)

69 Only friction and internal degrees of freedom are used to achieve equilibrium

Lemur Capuchin 70

71 1)One-step planning: Plan a path for moving a foot/hand from one hold to another Can be solved using a PRM planner 2)Multi-step planning: Plan a sequence of one-step paths Can be solved by searching a stance space Two Levels of Planning

72 Multi-Step Planning initial 4-hold stance 3-hold stance 4-hold stance...

73 Multi-Step Planning 4 possible 3-hold stances initial 4-hold stance 3-hold stance 4-hold stance...

74 Multi-Step Planning New contact initial 4-hold stance 3-hold stance 4-hold stance... several candidate 4-hold stances

75 Multi-Step Planning New contact initial 4-hold stance 3-hold stance 4-hold stance... ?

76 Multi-Step Planning breaking contact / zero force initial 4-hold stance 3-hold stance 4-hold stance...

77 Multi-Step Planning breaking contact / zero force one-step planning The one-step planner is needed to determine if a one-step path exists between two stances initial 4-hold stance 3-hold stance 4-hold stance...

78 Multi-Step Planning initial 4-hold stance 3-hold stance 4-hold stance... New contact

79 Multi-Step Planning one-step planning initial 4-hold stance 3-hold stance 4-hold stance...

80 One-Step Planning  The contact constraints define specific C-space that is easy to sample at random  It is also easy to test (self-)collision avoidance and equilibrium constraints at sampled configurations  PRM planning s g

81 Hierarchical collision checking Many searches !! (+ searches for planning exploratory moves, for interpreting 3D sensor data,...) Multi-step planner One-step planner

82  Several 10,000 queries  Many infeasible  Some critical Multi-step planner One-step planner  A PRM planner can’t detect that a query is infeasible  How much time should it spend on each query?  Too little, and it will often fail incorrectly  Too much, and it will waste time on infeasible queries Dilemma

83 Dilemma  More than 1,000,000 stances, but only 20,000 feasible ones  Several 1000 one-step path queries  A large fraction of them have no solution  The running times for (feasible) queries making up an 88-step path are highly variable difficult queries or bad luck?

84 Possible Solution  Use learning method to train a “feasibility” classifier  Use this classifier to avoid infeasible one-step queries in the multi-step search tree  More on this later in a lecture on Learning (if there is enough time)

85 Another Multi-Step Planning Problem: Navigation of legged robots on rough terrain (stances  foot placements)

86 Another Multi-Step Planning Problem Object manipulation (stances  grasps) [Yamane, Kuffner and Hodgins]

87 Some Applications of Motion Planning

88 Design for Manufacturing and Servicing General Motors General Electric

89 Automatic Robot Programming ABB

90 Navigation through Virtual Environments M. Lin, UNC

91 Virtual Angiography [S. Napel, 3D Medical Imaging Lab. Stanford]

92 Radiosurgery CyberKnife (Accuray)

93 Transportation of A380 Fuselage through Small Villages Kineo

94 Architectural Design: Verification of Building Code C. Han

95 Architectural Design: Egress Analysis

96 Planet Exploration

97 [Yamane, Kuffner and Hodgins] Autonomous Digital Actors

98 Animation of Crowds Amato

99