Path Planning for Point Robots Jane Li Assistant Professor - - PowerPoint PPT Presentation

path planning for point robots
SMART_READER_LITE
LIVE PREVIEW

Path Planning for Point Robots Jane Li Assistant Professor - - PowerPoint PPT Presentation

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON S RBE 550 Path Planning for Point Robots Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Presentation Topic Preferences due


slide-1
SLIDE 1

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11

Path Planning for Point Robots

slide-2
SLIDE 2

 Presentation Topic Preferences due today!

 Make sure you have voted on piazza

slide-3
SLIDE 3

Path Planning for Point Robots

slide-4
SLIDE 4

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Path Planning for Point Robots

 Problem setup

 Point robot  2D environment, with polygonal obstacles

 Objective

 Find a collision-free path from start to goal

start goal

slide-5
SLIDE 5

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Method

 Roadmaps

 Visibility graph  Voronoi graph

 Cell decomposition  Potential field

start goal

slide-6
SLIDE 6

Modified based on Slides by Prof. David Hsu, University of Singapore

Framework

slide-7
SLIDE 7

Modified based on Slides by Prof. David Hsu, University of Singapore

Framework

  • Continuous representation
  • Discretization
  • Graph searching
slide-8
SLIDE 8

Modified based on Slides by Prof. David Hsu, University of Singapore

Continuous representation

start goal

slide-9
SLIDE 9

Modified based on Slides by Prof. David Hsu, University of Singapore

Framework

  • Continuous representation
  • Discretization
  • Sampling (random, with bias)
  • Processing critical geometric features
  • Graph searching
slide-10
SLIDE 10

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Discretization – Visibility Graph

 If a collision-free path exists

 There must be a piecewise linear path that bends only at the obstacles

vertices

slide-11
SLIDE 11

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Visibility Graph

 Nodes

 qinit, qgoal, obstacle vertices

 Edges

 Obstacle edges  No intersection with obstacles

slide-12
SLIDE 12

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Naïve Algorithm for Computing Visibility Graph

Input: qinit, qgoal, polygonal obstacles Output: visibility graph G 1: for every pair of nodes u,v 2: if segment(u,v) is an obstacle edge then 3: insert edge(u,v) into G; 4: else 5: for every obstacle edge e 6: if segment(u,v) intersects e 7: go to (1); 8: insert edge(u,v) into G.

slide-13
SLIDE 13

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Running time?

1: for every pair of nodes u,v 2: if segment(u,v) is an obstacle edge then 3: insert edge(u,v) into G; 4: else 5: for every obstacle edge e 6: if segment(u,v) intersects e 7: go to (1); 8: insert edge(u,v) into G.

 Running time?  More efficient algorithm?

 Sweep-line algorithm – O(n^2 log n) (see Principles 5.1.2)  Optimal –Using line arrangement – O(n^2)

O(n^3) O(n2) O(n) O(n)

slide-14
SLIDE 14

Reduced Visibility Graph

 Construct visibility graph from

 Supporting lines  Separating lines

slide-15
SLIDE 15

Framework

  • Continuous representation
  • Discretization
  • Sampling (random, with bias)
  • Processing critical geometric features
  • Graph searching
  • Breadth first, depth first, A*, Dijkstra, etc
slide-16
SLIDE 16

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-17
SLIDE 17

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-18
SLIDE 18

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-19
SLIDE 19

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-20
SLIDE 20

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-21
SLIDE 21

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-22
SLIDE 22

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

A C D B E F

slide-23
SLIDE 23

Modified based on Slides by Prof. David Hsu, University of Singapore

Breadth-first search

Input: qinit, qgoal, visibility graph G Output: a path between qinit and qgoal 1: Q = new queue; 2: Q.enqueue(qinit); 3: mark qinit as visited; 4: while Q is not empty 5: curr = Q.dequeue(); 6: if curr == qgoal then 7: return curr; 8: for each w adjacent to curr 10: if w is not visited 11: w.parent = curr; 12: Q.enqueue(w) 13: mark w as visited A C D B E F

slide-24
SLIDE 24

Modified based on Slides by Prof. David Hsu, University of Singapore

Other graph search algorithms

 Depth-first

 Explore newly-discovered nodes first  Guaranteed to generate shortest path in the graph?

 Dijkstra’s Search

 Find shortest paths to the goal node in the graph from the start

 A*

 Heuristically-guided search  Guaranteed to find shortest path

No

slide-25
SLIDE 25

Modified based on Slides by Prof. David Hsu, University of Singapore

Recap

  • Continuous representation
  • Discretization
  • Visibility graph
  • Graph searching
  • Breadth first search

A C D B E F

slide-26
SLIDE 26

Modified based on Slides by Prof. David Hsu, University of Singapore

Recap

 Running time

 Compute the visibility graph – Naïve method – O(n^3)

 An optimal O(n2) time algorithm exists.

 Space?

 Store graph as adjacency list or adjacency matrix

O(n^2)

slide-27
SLIDE 27

Modified based on Slides by Prof. David Hsu, University of Singapore

Classic path planning approaches

 Roadmap

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

 Cell decomposition

 Decompose the free space into simple cells and represent the

connectivity of the free space by the adjacency graph of these cells  Potential field

 Define a potential function over the free space that has a global minimum

at the goal and follow the steepest descent of the potential function

slide-28
SLIDE 28

Modified based on Slides by Prof. David Hsu, University of Singapore

Roadmap

slide-29
SLIDE 29

Modified based on Slides by Prof. David Hsu, University of Singapore

Roadmaps

 Visibility Graph

 Shakey robot, SRI [Nilsson, 1969]

 Voronoi graph

 Introduced by computational geometry researchers.  Generate paths that maximizes clearance.

slide-30
SLIDE 30

Modified based on Slides by Prof. David Hsu, University of Singapore

Cell decomposition

slide-31
SLIDE 31

Modified based on Slides by Prof. David Hsu, University of Singapore

Cell decomposition

 Exact methods

 2D - Trapezoids, triangles, etc.  Adjacency map

slide-32
SLIDE 32

Modified based on Slides by Prof. David Hsu, University of Singapore

Cell decomposition

 Approximate methods

 Decompose space into cells usually have simple, regular shapes, e.g.,

rectangles, squares.

 Facilitate hierarchical space decomposition

slide-33
SLIDE 33

Modified based on Slides by Prof. David Hsu, University of Singapore

Quadtree decomposition

empty mixed full

slide-34
SLIDE 34

Modified based on Slides by Prof. David Hsu, University of Singapore

Hierarchical Decomposition

 Strategy

 Decompose the free space into cells.  Search for a sequence of mixed or empty cells that connect the initial

and goal positions.

 Further decompose the mixed.  Repeat (2) and (3) until a sequence of empty cells is found.

slide-35
SLIDE 35

Modified based on Slides by Prof. David Hsu, University of Singapore

Octree decomposition

slide-36
SLIDE 36

Modified based on Slides by Prof. David Hsu, University of Singapore

Potential Field

slide-37
SLIDE 37

Modified based on Slides by Prof. David Hsu, University of Singapore

Potential field

37

+

2 goal att att

) ( 2 1 x x k − = φ

     > ≤         − =

2 rep rep

if , if 1 1 2 1 ρ ρ ρ ρ ρ ρ φ k

katt, krep : positive scaling factors x : position of the robot ρ : distance to the obstacle ρ0 : distance of influence

slide-38
SLIDE 38

Modified based on Slides by Prof. David Hsu, University of Singapore

Attractive & repulsive fields

38

) (

goal att att att

x x k F − − = −∇ = φ

     > ≤ ∂ ∂         − = −∇ =

2 rep rep rep

if , if 1 1 1 ρ ρ ρ ρ ρ ρ ρ ρ φ x k F

[Khatib, 1986]

goal robot

goal force

katt, krep : positive scaling factors x : position of the robot ρ : distance to the obstacle ρ0 : distance of influence

repulsion force resulting m otion

slide-39
SLIDE 39

Modified based on Slides by Prof. David Hsu, University of Singapore

Local minima

 How to get out of local minima?

 Back up  Random Walk  Wall following

slide-40
SLIDE 40

Modified based on Slides by Prof. David Hsu, University of Singapore

Note that …

 A potential field is a scalar function over the free space.  To navigate, the robot applies a force proportional to gradient

  • f the potential field, in the opposite direction.

 Ideally potential field function?

 has global minimum at the goal  has no local minima  grows to infinity near obstacles  is smooth

slide-41
SLIDE 41

Modified based on Slides by Prof. David Hsu, University of Singapore

Completeness

 A complete motion planner always returns a solution when

  • ne exists and indicates that no such solution exists otherwise.

 Is the visibility graph algorithm complete?  Is the exact cell decomposition algorithm complete?  Is the approximate cell decomposition algorithm complete?  Is the potential field algorithm complete?

slide-42
SLIDE 42

Homework

 Read Principles CH 3 – Configuration space