16-782 Planning & Decision-making in Robotics Planning...

27
16-782 Planning & Decision-making in Robotics Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim Likhachev Robotics Institute Carnegie Mellon University

Transcript of 16-782 Planning & Decision-making in Robotics Planning...

Page 1: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

16-782

Planning & Decision-making in Robotics

Planning Representations:

Probabilistic Roadmaps for Continuous Spaces

Maxim Likhachev

Robotics Institute

Carnegie Mellon University

Page 2: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 2

Example

• Planning for manipulation

Page 3: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 3

Example

• Planning for manipulation

Page 4: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 4

Example

• Planning for manipulation

– robot state is defined by joint angles Q = {q1,…,q6}

– need to find a (least-cost) motion that connects Qstart to Qgoal

Constraints?

Page 5: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 5

Example

• Planning for manipulation

– robot state is defined by joint angles Q = {q1,…,q6}

– need to find a (least-cost) motion that connects Qstart to Qgoal

– Constraints:

• All joint angles should be within corresponding joint limits

• No collisions with obstacles and no self-collisions

Page 6: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 6

Example

• Planning for manipulation

– robot state is defined by joint angles Q = {q1,…,q6}

– need to find a (least-cost) motion that connects Qstart to Qgoal

– Constraints:

• All joint angles should be within corresponding joint limits

• No collisions with obstacles and no self-collisions

Can we use a grid-based

representation for planning?

Page 7: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 7

Resolution Complete vs. Sampling-based Planning

• Resolution complete planning (e.g. Grid-based):– generate a systematic (uniform) representation (graph) of a free C-space (Cfree)

– search the generated representation for a solution guaranteeing to find it if one

exists (completeness)

– can interleave the construction of the representation with the search (i.e.,

construct only what is necessary)

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Page 8: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 8

Resolution Complete vs. Sampling-based Planning

• Resolution complete planning (e.g. Grid-based):

– complete and provide sub-optimality bounds on the solution

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Great. Any issues?

Page 9: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 9

Resolution Complete vs. Sampling-based Planning

• Resolution complete planning (e.g. Grid-based):

– complete and provide sub-optimality bounds on the solution

– can get computationally very expensive, especially in high-D

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Page 10: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 10

Resolution Complete vs. Sampling-based Planning

• Sampling-based planning:

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Main observation:

The space is continuous and rather benign!

Page 11: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 11

Resolution Complete vs. Sampling-based Planning

• Sampling-based planning:– generate a sparse (sample-based) representation (graph) of a free C-space (Cfree)

– search the generated representation for a solution

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Page 12: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 12

Resolution Complete vs. Sampling-based Planning

• Sampling-based planning:

– provide probabilistic completeness guarantees

• guaranteed to find a solution, if one exists, but only in the limit of the number

of samples (that is, only as the number of samples approaches infinity)

– well-suited for high-dimensional planning

the example above is borrowed from “AI: A Modern Approach” by S. RusselL & P. Norvig

Page 13: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 13

Main Questions in Sampling-based Planning

• How to select samples to construct a “good” graph

• How to search the graph

• Can we interleave these steps

Page 14: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 14

Probabilistic Roadmaps (PRMs)

Step 1. Preprocessing Phase: Build a roadmap (graph) G which,

hopefully, should be accessible from any point in Cfree

Step 2. Query Phase: Given a start configuration qI and goal

configuration qG, connect them to the roadmap G using a local planner,

and then search the augmented roadmap for a shortest path from qI to

qG

Page 15: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 15

Probabilistic Roadmaps (PRMs)

Step 1. Preprocessing Phase: Build a roadmap (graph) G which,

hopefully, should be accessible from any point in Cfree

Step 2. Query Phase: Given a start configuration qI and goal

configuration qG, connect them to the roadmap G using a local planner,

and then search the augmented roadmap for a shortest path from qI to

qG Any ideas for the local planner?

Page 16: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 16

Probabilistic Roadmaps (PRMs)

Step 1. Preprocessing Phase: Build a roadmap (graph) G which,

hopefully, should be accessible from any point in Cfree

Step 2. Query Phase: Given a start configuration qI and goal

configuration qG, connect them to the roadmap G using a local planner,

and then search the augmented roadmap for a shortest path from qI to

qG Any ideas for the local planner?

Can be as simple as a straight line (interpolation)

connecting start (or goal) configuration

to the nearest vertex in the roadmap

Page 17: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 17

Probabilistic Roadmaps (PRMs)

Step 1. Preprocessing Phase: Build a roadmap (graph) G which,

hopefully, should be accessible from any point in Cfree

Step 2. Query Phase: Given a start configuration qI and goal

configuration qG, connect them to the roadmap G using a local planner,

and then search the augmented roadmap for a shortest path from qI to

qG What can we use to search the roadmap?

Page 18: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 18

Probabilistic Roadmaps (PRMs)

Step 1. Preprocessing Phase: Build a roadmap (graph) G which,

hopefully, should be accessible from any point in Cfree

Step 2. Query Phase: Given a start configuration qI and goal

configuration qG, connect them to the roadmap G using a local planner,

and then search the augmented roadmap for a shortest path from qI to

qG What can we use to search the roadmap?

Dijkstra’s, A*, wA*, and any other variant…

Page 19: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 19

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

Page 20: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 20

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

new ith configuration sample

α(i) is an ith sample in the configuration space.

Each sample can be drawn uniformly

(or more intelligently as described later)

Page 21: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 21

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

some region around

the configuration sample

can be connected

by a local planner

Page 22: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 22

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

can be replaced with:

“number of successors of q < K”

Page 23: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 23

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

Efficient implementation of q Є NEIGHBORHOOD(α(i),G)

- select K vertices closest to α(i)

- select K (often just 1) closest points from each of the components in G

- select all vertices within radius r from α(i)

Page 24: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 24

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

Sampling strategies

- sample uniformly from Cfree

Why do we need anything better

than uniform sampling?

Page 25: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 25

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

Sampling strategies

- sample uniformly from Cfree

- select at random an existing vertex with a probability distribution inversely

proportional to how well-connected a vertex is, and then generate a random motion

from it to get a sample α(i)

- bias sampling towards obstacle boundaries

Page 26: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

Carnegie Mellon University 26

Probabilistic Roadmaps (PRMs)

Step 1: Preprocessing Phase.

borrowed from“Planning Algorithms” by S. LaValle

Sampling strategies

- sample q1 and q2 from Gaussian around q1 and if either is in Cobs, then the

other one is set as α(i)

- sample q1, q2 , q3 from Gaussian around q2 and set q2 as α(i) if q2 is in Cfree,

and q1 and q3 are in Cobs

- bias sampling away from obstacles

Page 27: 16-782 Planning & Decision-making in Robotics Planning …maxim/classes/robotplanning_grad/lecture… · Planning Representations: Probabilistic Roadmaps for Continuous Spaces Maxim

• Pros and Cons of Resolution-complete approaches

(like Grid-based or Lattice-based graphs) vs.

Sampling-based approaches

• What domains are more suitable for each

• How PRM works

What You Should Know…

Carnegie Mellon University 27