path planning for a point robotgamma.cs.unc.edu/courses/planning-f13/slides/lecture2.pdf · comp...

45
COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore) Path Planning for a Point Robot

Upload: others

Post on 27-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

COMP 790-058: Fall 2013

(Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Path Planning for a Point Robot

Page 2: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Main Concepts

•  Reduction to point robot •  Search problem •  Graph search •  Configuration spaces

Page 3: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Configuration Space: Tool to Map a Robot to a Point

Page 4: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Problem

free space

s

g

free path

Page 5: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Problem semi-free path

Page 6: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Types of Path Constraints

§  Local constraints: lie in free space

§ Differential constraints: have bounded curvature

§ Global constraints: have minimal length

Page 7: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Homotopy of Free Paths

http://en.wikipedia.org/wiki/Homotopy

Page 8: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Motion-Planning Framework

Continuous representation

Discretization

Graph searching (blind, best-first, A*)

Page 9: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Path-Planning Approaches 1.  Roadmap

Represent the connectivity of the free space by a network of 1-D curves

2.  Cell decomposition Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells

3.  Potential field Define a function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Page 10: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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

Page 11: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Simple Algorithm 1.  Install all obstacles vertices in VG, plus the start

and goal positions 2.  For every pair of nodes u, v in VG 3.  If segment(u,v) is an obstacle edge then 4.  insert (u,v) into VG 5.  else 6.  for every obstacle edge e 7.  if segment(u,v) intersects e 8.  then goto 2 9.  insert (u,v) into VG 10.  Search VG using A*

Page 12: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Complexity

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

Page 13: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Rotational Sweep

Page 14: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Rotational Sweep

Page 15: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Rotational Sweep

Page 16: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Rotational Sweep

Page 17: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Rotational Sweep

Page 18: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Reduced Visibility Graph

tangent segments

à Eliminate concave obstacle vertices

can’t be shortest path

Page 19: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Generalized (Reduced) Visibility Graph

tangency point

Page 20: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Three-Dimensional Space

Computing the shortest collision-free path in a polyhedral space is NP-hard

Shortest path passes through none of the vertices

locally shortest path homotopic to globally shortest path

Page 21: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Roadmap Methods

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

Page 22: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Roadmap Methods §  Visibility graph §  Voronoi diagram §  Silhouette

First complete general method that applies to spaces of any dimension and is singly exponential in # of dimensions [Canny, 87]

§  Probabilistic roadmaps

Page 23: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Path-Planning Approaches 1.  Roadmap

Represent the connectivity of the free space by a network of 1-D curves

2.  Cell decomposition Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells

3.  Potential field Define a function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Page 24: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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 Example: trapezoidal decomposition

Page 25: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

Page 26: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

Page 27: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

Page 28: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

Page 29: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

critical events à criticality-based decomposition

Page 30: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Trapezoidal decomposition

Planar sweep à O(n log n) time, O(n) space

Page 31: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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

Page 32: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Octree Decomposition

Page 33: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Sketch of Algorithm 1.  Compute cell decomposition down to some

resolution 2.  Identify start and goal cells 3.  Search for sequence of empty/mixed cells

between start and goal cells 4.  If no sequence, then exit with no path 5.  If sequence of empty cells, then exit with

solution 6.  If resolution threshold achieved, then exit

with failure 7.  Decompose further the mixed cells 8.  Return to 2

Page 34: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Path-Planning Approaches 1.  Roadmap

Represent the connectivity of the free space by a network of 1-D curves

2.  Cell decomposition Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells

3.  Potential field Define a function over the free space that has a global minimum at the goal configuration and follow its steepest descent

Page 35: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Potential Field Methods

Goal

Goal Force

Obs

tacl

e Fo

rceMotion

Robot

)( GoalpGoal xxkF −−=

⎪⎩

⎪⎨

>

≤∂

∂⎟⎟⎠

⎞⎜⎜⎝

⎛−

=

0

020

0

,111

ρρ

ρρρ

ρρρη

if

ifxFObstacle

Goal

Robot

§  Approach initially proposed for real-time collision avoidance [Khatib, 86]. Hundreds of papers published on it.

Page 36: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Attractive and Repulsive fields

Page 37: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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)

Page 38: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Sketch of Algorithm (with best-first search)

1.  Place regular grid G over space 2.  Search G using best-first search

algorithm with potential as heuristic function

Page 39: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Simple Navigation Function

0 1 1

1

2

2 2

2 3

3

3

4 4 5

Page 40: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Simple Navigation Function

1

1 2 2

2 3

3

3

4 5

2 1 0

4

Page 41: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Simple Navigation Function

1

1 2 2

2 3

3

3

4 5

2 1 0

4

Page 42: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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)

Page 43: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

§ 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.

Page 44: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

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

Page 45: Path Planning for a Point Robotgamma.cs.unc.edu/courses/planning-f13/SLIDES/Lecture2.pdf · COMP 790-058: Fall 2013 (Based on slides from J. Latombe @ Stanford & David Hsu @ Singapore)

Issues for Future Classes

§ Space dimensionality § Geometric complexity of the free space §  Constraints other than avoiding collision § The goal is not just a position to reach §  Etc …