CS 403 - Path Planning Roderic A. Grupen 4/2/19 Robotics 1 - - PowerPoint PPT Presentation

cs 403 path planning
SMART_READER_LITE
LIVE PREVIEW

CS 403 - Path Planning Roderic A. Grupen 4/2/19 Robotics 1 - - PowerPoint PPT Presentation

Why Motion Planning? CS 403 - Path Planning Roderic A. Grupen 4/2/19 Robotics 1 4/2/19 Robotics 2 Why Motion Planning? Summary GE Control Virtual Prototyping Character Animation Kinematics Structural Molecular Biology


slide-1
SLIDE 1

Robotics 4/2/19 1

CS 403 - Path Planning

Roderic A. Grupen

Robotics 4/2/19 2

Why Motion Planning?

Robotics 4/2/19 3

Why Motion Planning?

Virtual Prototyping Character Animation Structural Molecular Biology Autonomous Control

GE

Robotics 4/2/19 4

Summary

  • Control
  • Kinematics
  • Dynamics

… but there is more … now you understand and can program any robot

slide-2
SLIDE 2

Robotics 4/2/19 5

C-Space Construction for n DOF

  • 6 revolute degrees of freedom (e.g. Puma)
  • 2p range of motion per joint
  • 2 x 1015 configurations
  • 1 million checks per second
  • 69 years of computation

naïve grid method is impossible

Robotics 4/2/19 6

Origins of Motion Planning

  • T. Lozano-Pérez and M.A. Wesley:


“An Algorithm for Planning Collision-Free Paths Among Polyhedral Obstacles,” 1979.

  • introduced the notion of configuration space (c-space) to

robotics

  • many approaches have been devised since then in

configuration space

Robotics 4/2/19 7

Completeness of Planning Algorithms

a complete planner finds a path if one exists resolution complete – complete to the model resolution probabilistically complete

Robotics

Representation

…given a moving object, A, initially in an unoccupied region of freespace, s, a set of stationary objects, Bi , at known locations, and a goal position, g, …

4/2/19 8

find a sequence of collision-free motions that take A from s to g

slide-3
SLIDE 3

9

Computing C-Space: Growing Obstacles

10

Sliding Along the Boundary

Workspace Configuration Space

How about changing θ ?

11

Translational Case (fixed orientation)

Robot Obstacle Reference Point C-Space Obstacle

Robotics 4/2/19 12

Obstacles in 3D (x,y,q)

Jean-Claude Latombe

slide-4
SLIDE 4

Robotics 4/2/19 13

Exact Cell Decomposition

Jean-Claude Latombe

Robotics 4/2/19 14

Exact Cell Decomposition

Robotics 4/2/19 15

Exact Cell Decomposition

Jean-Claude Latombe

Robotics

Representation – Simplicial Decomposition

4/2/19 16

Schwartz and Sharir Lozano-Perez Canny

slide-5
SLIDE 5

Robotics 4/2/19 17

Approximate Methods: 2n-Tree

Robotics 4/2/19 18

Approximate Cell Decomposition

Jean-Claude Latombe

again…build a graph and search it to find a path

Robotics

Representation – Roadmaps

4/2/19 19

Visibility diagrams: unsmooth sensitive to error

Robotics 4/2/19 20

Roadmap Representations

Jean-Claude Latombe

Voronoi diagrams a “retraction” …the continuous freespace is represented as a network of curves…

slide-6
SLIDE 6

Robotics 4/2/19 21

Summary

  • Exact Cell Decomposition
  • Approximate Cell Decomposition
  • graph search
  • next: potential field methods
  • Roadmap Methods
  • visibility graphs
  • Voronoi diagrams
  • next: probabilistic road maps (PRM)

22

Attractive Potential Fields

+

  • 23

Repulsive Potentials

+

  • 24

Electrostatic (or Gravitational) Field

depends on direction

slide-7
SLIDE 7

25

Attractive Potential

F

att(q) = −∇φatt(q)

= −k (q− qref )

φatt(q) = 1 2 k (q−qref )T(q− qref )

26

A Repulsive Potential

F

rep(q) = 1

x

F

rep(q) = 1

x − 1 δ0

Robotics 4/2/19 27

Repulsive Potential

Frep(q) = −∇φ(q) = −k 1 (q− qobs) − 1 δ0 ⎛ ⎝ ⎜ ⎜ ⎞ ⎠ ⎟ ⎟ if ((q− qobs) < δ0

  • therwise

⎧ ⎨ ⎪ ⎩ ⎪ ⎫ ⎬ ⎪ ⎭ ⎪

φrep(q) = k 1 (q− qobst) − 1 δ0 ⎛ ⎝ ⎜ ⎜ ⎞ ⎠ ⎟ ⎟

2

if ((q− qobs) < δ0 = 0

  • therwise

28

Sum Attractive and Repulsive Fields

slide-8
SLIDE 8

29

Artificial Potential Function

+ =

F

total(q) = −∇φtotal

φatt(q) + φrep(q) = φtotal(q)

Robotics 4/2/19 30

Potential Fields

  • Goal: avoid local minima
  • Problem: requires global information
  • Solution: Navigation Function

Robot Obstacle Goal

Fatt Frep Fatt Frep

Robotics

Navigation Functions

Analyticity – navigation functions are analytic because they are infinitely differentiable and their Taylor series converge to φ(q0) as q approaches q0 Polar – gradients (streamlines) of navigation functions terminate at a unique minima

4/2/19 31 Robotics

Navigation Functions

4/2/19 32

Morse - Critical points are places where the gradient of φ vanishes, i.e. minima, saddle points, or maxima are called critical values. Navigation functions have no degenerate critical points where the robot can get stuck short of attaining the goal. Admissibility - practical potential fields must always generate bounded torques

slide-9
SLIDE 9

Robotics

The Hessian

multivariable control function, f(q0,q1,...,qn)

4/2/19 33

if the Hessian is positive semi-definite over the domain Q, then the function f is convex over Q

Robotics

Harmonic Functions

4/2/19 34

if the trace of the Hessian (the Laplacian) is 0 then function f is a harmonic function laminar fluid flow, steady state temperature distribution, electromagnetic fields, current flow in conductive media

Robotics

Properties of Harmonic Functions

4/2/19 35

Min-Max Property - ...in any compact neighborhood of freespace, the minimum and maximum of the function must occur on the boundary.

Robotics

Properties of Harmonic Functions

4/2/19 36

Mean-Value - up to truncation error, the value of the harmonic potential at a point in a lattice is the average of the values of its 2n Manhattan neighbors.

¼ ¼ ¼ ¼

analog & numerical methods

slide-10
SLIDE 10

Robotics

Numerical Relaxation

4/2/19 37

Jacobi iteration

Robotics 4/2/19 38

Harmonic Relaxation: Numerical Methods

Gauss-Seidel Successive Over Relaxation

Robotics

Properties of Harmonic Functions

4/2/19 39

Hitting Probabilities - if we denote p(x) at state x as the probability that starting from x, a random walk process will reach an obstacle before it reaches a goal—p(x) is known as the hitting probability greedy descent on the harmonic function minimizes the hitting probability.

Robotics

Minima in Harmonic Functions

4/2/19 40

for some i, if ∂2φ/∂xi2 > 0 (concave upward), then there must exist another dimension, j, where ∂2φ/∂xj2 < 0 to satisfy Laplace’s constraint. therefore, if you’re not at a goal, there is always a way downhill... ...there are no local minima...

slide-11
SLIDE 11

Robotics

Configuration Space

4/2/19 41 Robotics

Harmonic Functions for Path Planning

4/2/19 42 Robotics

Harmonic Functions for Path Planning

4/2/19 43 Robotics

Harmonic Functions for Path Planning

4/2/19 44

slide-12
SLIDE 12

Robotics

Reactive Admittance Control

4/2/19 45 Robotics 4/2/19 46

  • k, back to graphical methods…

Robotics 4/2/19 47

Probabilistic Roadmaps (PRM)

  • Construction
  • Generate random configurations
  • Eliminate if they are in collision
  • Use local planner to connect configurations
  • Expansion
  • Identify connected components
  • Resample gaps
  • Try to connect components
  • Query
  • Connect initial and final configuration to roadmap
  • Perform graph search

Robotics 4/2/19 48

Probabilistic Roadmaps (PRM)

slide-13
SLIDE 13

Robotics 4/2/19 49

Complexity of Collision Detection

  • n objects have O(n2) interactions
  • each object has perhaps thousands of features
  • robot with l links and k obstacles has O(l k)

very costly

Robotics 4/2/19 50

Sampling Phase

  • Construction

– R = (V,E) – repeat n times:

– generate random configuration – add to V if collision free – attempt to connect to neighbors using local planner, unless in same connected component of R

Robotics 4/2/19 51

Path Extraction

  • Connect start and goal configuration to roadmap using local

planner

  • Perform graph search on roadmap
  • Computational cost of querying negligible compared to

construction of roadmap

Robotics 4/2/19 52

Local Planner

q1 q2

tests up to a specified resolution δ! δ

slide-14
SLIDE 14

Robotics 4/2/19 53

Another Local Planner

perform random walk of predetermined length; choose new direction randomly after hitting obstacle; attempt to connect to roadmap after random walk

Robotics 4/2/19 54

Another Look at the Sampling Phase

  • Construction

– R = (V,E) – repeat n times:

– generate random configuration – add to V if collision free – attempt to connect to neighbors using local planner, unless in same connected component of R

  • Expansion

– repeat k times:

– select difficult node – attempt to connect to neighbors using another local planner

Robotics 4/2/19 55

Difficult

  • Possible measures for difficulty of a

configuration (vertex in R):

  • 1/(# of nodes within given distance)
  • 1/distance to closest connected components
  • # of failures of local planner to connect to

neighbors

Robotics 4/2/19 56

Summary: PRM

  • Algorithmically very simple
  • Surprisingly efficient even in high-dimensional C-

spaces

  • Capable of addressing a wide variety of motion

planning problems

  • One of the hottest areas of research
  • Allows probabilistic performance guarantees
slide-15
SLIDE 15

Robotics 4/2/19 57

Variations of the PRM

  • Lazy PRMs
  • Rapidly-exploring Random Trees

Robotics 4/2/19 58

Lazy PRM

  • bservation: pre-computation of roadmap takes a long

time and does not respond well in dynamic environments

Robotics 4/2/19 59

Lazy PRM

Robotics 4/2/19 60

Lazy PRM

  • Incremental roadmap computation
  • Individual query slower than query with PRM
  • pre-computation eliminated
  • minimize number of distance computations
  • controllable computational expense
slide-16
SLIDE 16

Robotics 4/2/19 61

Rapidly-Exploring Random Trees (RRT)

Robotics 4/2/19 62

Rapidly-Exploring Random Trees (RRT)

Steven LaValle

Robotics 4/2/19 63

Motion Constraints

  • So far:
  • Robot with 2/3 DOF
  • Translating freely
  • Rotation and translation independent
  • But:
  • Oftentimes motion of robots has constraints
  • Kinematic: car
  • Dynamic: actuation limitations, traction

Robotics 4/2/19 64

Nonholonomic Motion: Car-like Robot

Jean-Claude Latombe