Robot Motion Planning George Konidaris gdk@cs.brown.edu Fall 2019 - - PowerPoint PPT Presentation

robot motion planning
SMART_READER_LITE
LIVE PREVIEW

Robot Motion Planning George Konidaris gdk@cs.brown.edu Fall 2019 - - PowerPoint PPT Presentation

Robot Motion Planning George Konidaris gdk@cs.brown.edu Fall 2019 The Planning Problem Finding a sequence of actions to achieve some goal. Classical Planning (define (problem pb3) (:domain blocksworld) (:objects a b c) (:init (on-table a)


slide-1
SLIDE 1

Robot Motion Planning

George Konidaris gdk@cs.brown.edu

Fall 2019

slide-2
SLIDE 2

The Planning Problem

Finding a sequence of actions to achieve some goal.

slide-3
SLIDE 3

Classical Planning

(define (problem pb3) (:domain blocksworld) (:objects a b c) (:init (on-table a) (on-table b) (on-table c) (clear a) (clear b) (clear c) (arm-empty)) (:goal (and (on a b) (on b c))))

B A C B A C

slide-4
SLIDE 4

Robot Motion Planning

slide-5
SLIDE 5

Motion Planning

slide-6
SLIDE 6

Motion Planning

slide-7
SLIDE 7

Motion Planning

slide-8
SLIDE 8

Motion Planning

start pose goal ??

slide-9
SLIDE 9

Configuration Space

Robot has a configuration space (C-space):

  • Values for each joint
  • Overall pose of reference frame
slide-10
SLIDE 10

Configuration Spaces

Each joint is a dimension of the configuration space. Let’s say we have a robot with a movable base, and an arm with two revolute joints.

slide-11
SLIDE 11

Configuration Spaces

Each joint is a dimension of the configuration space. Let’s say we have a robot with an arm with two revolute joints. Configuration space:

  • x, y, theta of base frame
  • angle of first joint
  • angle of second joint

A configuration is a setting of values to these 5 variables. Configuration space is the space of all such settings.

slide-12
SLIDE 12

Configuration Space

(images from Wikipedia)

Obstacles are no-go regions

  • f configuration space.
slide-13
SLIDE 13

Configuration Space

(images from Wikipedia)

Obstacles are no-go regions

  • f configuration space.
slide-14
SLIDE 14

Configuration Space

[via JC LaTombe]

slide-15
SLIDE 15

Problem Definition

Given:

  • Configuration space
  • Start point in C-space
  • Goal region in C-space
  • Set of obstacles
  • Dense regions of 3D-space
  • (Also regions of C-space)

Find: feasible, obstacle-free (possibly cost-minimizing) path through C-space from start to a point in goal.

slide-16
SLIDE 16

Planning

We wish to find a path through configuration space such that:

  • Path feasible
  • No collisions
  • Minimize cost

a path in free space q0 G

  • bstacle
  • bstacle
slide-17
SLIDE 17

Paths

Simple definition of a path:

  • Sequence of points p = {p1, …, pn}
  • “Easy” to go between pi and pi+1.
  • Additive cost C(pi, pi+1)

Solution - path such that:

  • p1 = start
  • pn inside goal
  • No collision between any pi and pi+1.

  • a path in free space

q0 G

  • bstacle
  • bstacle

min

n−1

X

i=1

C(pi, pi+1)

slide-18
SLIDE 18

Local Controller

What does “easy to go between pi and pi+1” mean? It means you can control the robot directly from point pi to point pi+1, without considering obstacles. There may also be constraints on motions (e.g., maximum speed or jerk, maximum rate of angular acceleration).

slide-19
SLIDE 19

Collision Detection

What does collision-free mean?

position 1 position 2 swept volume

Must test: collision between obstacle and swept volume. This can be done in 3-space.

slide-20
SLIDE 20

Visibility Graphs

Initial approaches: geometric.

slide-21
SLIDE 21

Convex Regions

Convex region: the line connecting any two points inside the region lies itself wholly within the region.

slide-22
SLIDE 22

Visibility Graphs

  • 1. Break C-space up into convex regions.
  • 2. Build a graph: each node convex region, edge when they

share a face.

  • 3. Do search on the graph.
slide-23
SLIDE 23

Visibility Graphs

slide-24
SLIDE 24

Optimality

Issue: these paths may not be optimal. Why?

slide-25
SLIDE 25

Optimality

Go a bit further: break into triangles, each vertex lies on an

  • bstacle vertex.
slide-26
SLIDE 26

Video

https://www.youtube.com/watch?v=9YCx5YeSLmo credit: Ulf Biallas

slide-27
SLIDE 27

Issues

These are hard to use:

  • Convex region numbers grow exponentially with

dimension.

  • Need analytical model of each obstacle in C-space.
  • Need analytical model of C-space!

This is a lot of work. Consequently, these methods only used for very low-d problems.

slide-28
SLIDE 28

Complexity

Issue: motion planning is P-SPACE complete (Reif, 1979).

slide-29
SLIDE 29

Randomization

Alternative solution:

  • Rely on randomized algorithms.
  • Expensive but probabilistic guarantees.
  • Typically very simple to code.
slide-30
SLIDE 30

Randomized Algorithms

Two major types:

Graphs (multi-query) Trees (single-query)

slide-31
SLIDE 31

Probabilistic Roadmaps

[Leven and Hutchinson 2002]

slide-32
SLIDE 32

PRMs

[Leven and Hutchinson 2002]

slide-33
SLIDE 33

PRMs

[Leven and Hutchinson 2002]

slide-34
SLIDE 34

Pros and Cons

Pros

  • Initial computation of PRM can be slow
  • Reused in many scenarios
  • Very simple algorithm

Cons

  • Must precompute PRM!
  • Collision: 99% of compute time [Bialkowski et al. 2011]
  • Just as fast (or faster) to recompute
slide-35
SLIDE 35

RRTs

Don’t build a graph in advance - build a tree at query time! Rapidly Exploring Random Trees

  • Build a tree starting from the start state.
  • Sample in C-space at random
  • Try to connect sample to tree
  • Stop when you hit the goal
slide-36
SLIDE 36

RRTs

known start state

slide-37
SLIDE 37

RRTs

slide-38
SLIDE 38

RRT

Property: the tree rapidly expands to fill free space. Why?

slide-39
SLIDE 39

RRT: Voronoi Bias

Property: the tree rapidly expands to fill free space.

slide-40
SLIDE 40
slide-41
SLIDE 41

(via Steve LaValle)

slide-42
SLIDE 42

More Videos

https://www.youtube.com/watch?v=E_MC7vWb62A credit: Dhiraj Gandhi

slide-43
SLIDE 43

More Videos

https://www.youtube.com/watch?v=mEAr2FBUJEI credit: Nico Nostheide

slide-44
SLIDE 44

Robot Motion Planning

Critical for robots in semi/un-structured environments. But:

  • Fundamentally hard.
  • Very well studied (30 years)
  • No real-time solutions.

watch this space

slide-45
SLIDE 45

Autonomous Cars

slide-46
SLIDE 46

Autonomous Cars

(via Steve LaValle)

slide-47
SLIDE 47

Video

https://www.youtube.com/watch?v=AmyweePd1HU Chen, Rickert, and Knoll IROS 2015