49
Motion Planning for Point Robots I400/B659: Intelligent Robotics Kris Hauser

Motion Planning for Point Robots

  • Upload
    bambi

  • View
    51

  • Download
    1

Embed Size (px)

DESCRIPTION

Motion Planning for Point Robots. I400/B659: Intelligent Robotics Kris Hauser. Agenda. Breeze through Principles Ch. 2, 5.1, 6.1 . Fundamental question of motion planning. Are the two given points connected by a path?. Feasible space. - PowerPoint PPT Presentation

Citation preview

Page 1: Motion Planning for Point Robots

Motion Planning for Point RobotsI400/B659: Intelligent RoboticsKris Hauser

Page 2: Motion Planning for Point Robots

Agenda

• Breeze through Principles Ch. 2, 5.1, 6.1

Page 3: Motion Planning for Point Robots

Fundamental question of motion planning• Are the two given points connected by a path?

Forbidden region

Feasible space

collision with obstaclelack of stabilitylost sight of target…

Page 4: Motion Planning for Point Robots

Basic Problem

Statement: Compute a collision-free path for a rigid or articulated object among static obstacles

Inputs:• Geometry of moving object and obstacles• Kinematics of moving object (degrees of

freedom)• Initial and goal configurations (placements)

Output:Continuous sequence of collision-free robot

configurations connecting the initial and goal configurations

Page 5: Motion Planning for Point Robots

Why is this hard?

Page 6: Motion Planning for Point Robots

Tool: Configuration Space

Problems:• Geometric complexity• Space dimensionality

Page 7: Motion Planning for Point Robots

Tool: Configuration Space

Page 8: Motion Planning for Point Robots

2D Point Robot Problem

free space

s

g

free path

obstacle

obstacle

obstacle

Page 9: Motion Planning for Point Robots

2D Point Robot Problem

g

obstacle

obstacle

obstacle

s

Semi-free path

Page 10: Motion Planning for Point Robots

Types of Path Constraints

Local constraints: e.g., avoid collision with obstacles

Differential constraints: e.g., bounded curvature

Global constraints: e.g., minimal length

Page 11: Motion Planning for Point Robots

Motion-Planning Framework

Continuous representation

Discretization

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

Page 12: Motion Planning for Point Robots

Path-Planning Approaches• Roadmap

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

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

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

Page 13: Motion Planning for Point Robots

Roadmap Methods• Visibility graph

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

Page 14: Motion Planning for Point Robots

Simple (Naïve) 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 15: Motion Planning for Point Robots

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

Page 16: Motion Planning for Point Robots

Rotational Sweep

Page 17: Motion Planning for Point Robots

Rotational Sweep

Page 18: Motion Planning for Point Robots

Rotational Sweep

Page 19: Motion Planning for Point Robots

Rotational Sweep

Page 20: Motion Planning for Point Robots

Rotational Sweep

Page 21: Motion Planning for Point Robots

Reduced Visibility Graph

tangent segments Eliminate concave obstacle vertices

can’t be shortest path

Page 22: Motion Planning for Point Robots

Generalized (Reduced) Visibility Graph

tangency point

Page 23: Motion Planning for Point Robots

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 24: Motion Planning for Point Robots

Roadmap Methods Voronoi diagram

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

O(n log n) timeO(n) space

Page 25: Motion Planning for Point Robots

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 26: Motion Planning for Point Robots

Path-Planning Approaches• Roadmap

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

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

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

Page 27: Motion Planning for Point Robots

Cell-Decomposition MethodsTwo classes of methods: Exact cell decomposition

The free space F is represented by a collection of non-overlapping cells whose union is exactly FExample: trapezoidal decomposition

Page 28: Motion Planning for Point Robots

Trapezoidal decomposition

Page 29: Motion Planning for Point Robots

Trapezoidal decomposition

Page 30: Motion Planning for Point Robots

Trapezoidal decomposition

Page 31: Motion Planning for Point Robots

Trapezoidal decomposition

Page 32: Motion Planning for Point Robots

critical events criticality-based decomposition

Trapezoidal decomposition

Page 33: Motion Planning for Point Robots

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

Trapezoidal decomposition

Page 34: Motion Planning for Point Robots

Cell-Decomposition MethodsTwo 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 35: Motion Planning for Point Robots

Octree Decomposition

Page 36: Motion Planning for Point Robots

Sketch of Algorithm

1. Compute cell decomposition down to some resolution2. 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 37: Motion Planning for Point Robots

Path-Planning Approaches• Roadmap

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

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

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

Page 38: Motion Planning for Point Robots

Potential Field Methods

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

)( GoalpGoal xxkF

0

020

0

,111

if

ifxFObstacle

Goal

Robot

Page 39: Motion Planning for Point Robots

Attractive and Repulsive fields

Page 40: Motion Planning for Point Robots

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 41: Motion Planning for Point Robots

Sketch of Algorithm (with best-first search)1. Place regular grid G over space2. Search G using best-first search algorithm with potential as

heuristic function

Page 42: Motion Planning for Point Robots

Simple Navigation Function

0 11

1

2

22

2 3

3

3

4 45

Page 43: Motion Planning for Point Robots

1

1 22

2 3

3

3

4 5

210

4

Simple Navigation Function

Page 44: Motion Planning for Point Robots

1

1 22

2 3

3

3

4 5

210

4

Simple Navigation Function

Page 45: Motion Planning for Point Robots

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 46: Motion Planning for Point Robots

• 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 47: Motion Planning for Point Robots

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 48: Motion Planning for Point Robots

Some Variants Moving obstacles Multiple robots Movable objects Assembly planning Goal is to acquire

information by sensing• Model building• Object finding/tracking• Inspection

Nonholonomic constraints Dynamic constraints Stability constraints

Optimal planning Uncertainty in model,

control and sensing Exploiting task mechanics

(sensorless motions, under-actuated systems)

Physical models and deformable objects

Integration of planning and control

Integration with higher-level planning

Page 49: Motion Planning for Point Robots

Readings• Principles Ch. 7.1-7.2• Kavraki, Sveska, Latombe, and Overmars (1999)