motion planning path planning for a point robot (this slides are based on latombe and hwang slides)

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

Upload: dominick-fisher

Post on 01-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

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

Motion PlanningMotion Planning

Path Planning Path Planning for a Point Robotfor a Point Robot

(This slides are based on Latombe and Hwang slides)(This slides are based on Latombe and Hwang slides)

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

Configuration Space:Configuration Space:Tool to Map a Robot to a PointTool to Map a Robot to a Point

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

ProblemProblem

free space

s

g

free path

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

ProblemProblem

semi-free path

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

Types of Path ConstraintsTypes of Path Constraints

Local constraints: lie in free space

Differential constraints: have bounded

curvature Global constraints:

have minimal length

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

Motion-Planning Motion-Planning FrameworkFramework

Continuous representation

Discretization

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

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

Path-Planning ApproachesPath-Planning Approaches1. Roadmap

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

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

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

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

Roadmap MethodsRoadmap Methods

Visibility graphIntroduced in the Shakey project at SRI in the late 60s. Can produce shortest paths in 2-D configuration spaces

g

s

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

Simple AlgorithmSimple Algorithm1. Install all obstacles vertices in VG, plus the start

and goal positions2. For every pair of nodes u, v in VG3. If segment(u,v) is an obstacle edge then4. insert (u,v) into VG5. else6. for every obstacle edge e7. if segment(u,v) intersects e8. then goto 29. insert (u,v) into VG10. Search VG using A*

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

ComplexityComplexity

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

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

Rotational SweepRotational Sweep

Check the following page:http://www.cs.hut.fi/Research/TRAKLA2/exercises/VisibleVertices.html

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

Rotational SweepRotational Sweep

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

Rotational SweepRotational Sweep

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

Rotational SweepRotational Sweep

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

Rotational SweepRotational Sweep

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

Reduced Visibility GraphReduced Visibility Graph

tangent segments

Eliminate concave obstacle vertices

can’t be shortest path

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

Generalized (Reduced) Generalized (Reduced) Visibility GraphVisibility Graph

tangency point

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

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 19: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Roadmap MethodsRoadmap Methods

Voronoi diagram Introduced by Computational Geometry researchers. Generate paths that maximizes clearance.

O(n log n) timeO(n) space

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

Path-Planning ApproachesPath-Planning Approaches1. Roadmap

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

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

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

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

Cell-Decomposition Cell-Decomposition MethodsMethods

Two classes of methods: Exact cell decomposition

The free space F is represented by a collection of non-overlapping cells whose union is exactly FExamples: Polygonal decomposition Trapezoidal decomposition

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

Polygonal Configuration Space

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

Polygonal Configuration Space

• cells form channels instead of line paths

• channels give the robot more information to avoid obstacles encountered at run time

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

Polygonal Configuration Space

qinit

qfinal

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

Trapezoidal decompositionTrapezoidal decomposition

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

Trapezoidal decompositionTrapezoidal decomposition

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

Trapezoidal decompositionTrapezoidal decomposition

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

Trapezoidal decompositionTrapezoidal decomposition

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

Trapezoidal decompositionTrapezoidal decomposition

critical events criticality-based decomposition

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

Trapezoidal decompositionTrapezoidal decomposition

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

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

Generalization to 3 Dimensions

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

Cell-Decomposition Cell-Decomposition MethodsMethods

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 FExamples: quadtree, octree, 2n-tree

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

Octree DecompositionOctree Decomposition

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

Sketch of AlgorithmSketch of Algorithm

1. Compute cell decomposition down to some resolution

2. Identify start and goal cells3. Search for sequence of empty/mixed

cells between start and goal cells4. If no sequence, then exit with no path5. If sequence of empty cells, then exit with

solution6. If resolution threshold achieved, then

exit with failure7. Decompose further the mixed cells8. Return to 2

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

Path-Planning ApproachesPath-Planning Approaches1. Roadmap

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

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

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

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

Potential Field MethodsPotential Field Methods

Goal

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 37: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Attractive and Repulsive Attractive and Repulsive fieldsfields

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

Local-Minimum IssueLocal-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 39: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Completeness of PlannerCompleteness 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 40: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

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 41: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Preprocessing / Query Preprocessing / Query ProcessingProcessing

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 42: Motion Planning Path Planning for a Point Robot (This slides are based on Latombe and Hwang slides)

Summary: Exact Cell Decomposition

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

Summary: Approximate Cell Decomposition

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

Summary: Potential Fields