20
1 9/23/2014 S. Joo ([email protected]) 1 CS 4649/7649 Robot Intelligence: Planning Sungmoon Joo School of Interactive Computing College of Computing Georgia Institute of Technology Motion Planning: Introduction & Reactive Strategies *Slides based in part on Dr. Mike Stilman & Howie Choset’s lecture slides 9/23/2014 S. Joo ([email protected]) 2 Course Info. • TA - Saul • HW#1 due next week - Trouble with group matching? - Need a repo.? - Trouble with install & running open-source planners? - Late policy • Final Project Topic?

Motion Planning: Introduction & Reactive Strategies · •Motion planning is the ability for a robot to compute its own ... “Bug 2” Algorithm (following m-line) * *Usually toward

  • Upload
    ledieu

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

1

9/23/2014S. Joo ([email protected]) 1

CS 4649/7649Robot Intelligence: Planning

Sungmoon Joo

School of Interactive Computing

College of Computing

Georgia Institute of Technology

Motion Planning: Introduction & Reactive Strategies

*Slides based in part on Dr. Mike Stilman & Howie Choset’s lecture slides

9/23/2014S. Joo ([email protected]) 2

Course Info.

• TA - Saul

• HW#1 due next week

- Trouble with group matching?

- Need a repo.?

- Trouble with install & running open-source planners?

- Late policy

• Final Project Topic?

2

9/23/2014S. Joo ([email protected]) 3

Motion Planning: Goal

• Motion planning is the ability for a robot to compute its own

‘motions’ in order to achieve certain goals.

(i) To compute ‘motion strategies’

- geometric path

- time-parameterized trajectories

- sequence of sensor-based motion commands

- …

(ii) To achieve high-level goals

- go to A without colliding with obstacles

- pick up the mug

- …

• All (autonomous) robots should eventually have this ability

9/23/2014S. Joo ([email protected]) 4

Motion Planning: Sealing Process

Figure from “Planning Algorithms” by Steven M. LaValle

3

9/23/2014S. Joo ([email protected]) 5

Motion Planning: Piano Mover

Figure from “Planning Algorithms” by Steven M. LaValle

9/23/2014S. Joo ([email protected]) 6

Motion Planning: Parking

Figure from “Planning Algorithms” by Steven M. LaValle

4

9/23/2014S. Joo ([email protected]) 7

Motion Planning: Goal

9/23/2014S. Joo ([email protected]) 8

Basic Path Planning Example

Free Space

World

Robot*

Workspace

*Point robot

5

9/23/2014S. Joo ([email protected]) 9

Motion Planning Statement

“Compute a continuous sequence of collision-free robot configurations connecting

the initial and goal configurations.”

• q: the robot’s configuration, a complete specification of the position of every point in the system (a set of parameters that define the robot

geometry in the world)

• W : the robot’s workspace, the points the robot can possibly reach

• Woi : the i’th obstacle,

• Wfree : the robot’s freespace, Wfree = W - ( ∪ WOi )

• a path c ∈ C0 , c : [0,1] Wfree where c(0) is qinit and c(1) is qgoal

Notations/Definitions

*Class C0 : all continuous functions

9/23/2014S. Joo ([email protected]) 10

Completeness

6

9/23/2014S. Joo ([email protected]) 11

Optimality

9/23/2014S. Joo ([email protected]) 12

Bug Algorithms (Lumelsky & Stepanov ’87)

• Bug behaviors (insect-inspired)– Follow a wall (right or left)– Move in a straight line toward goal

7

9/23/2014S. Joo ([email protected]) 13

Bug Algorithms (Lumelsky & Stepanov ’87)

9/23/2014S. Joo ([email protected]) 14

Bug Algorithms

Assumptions- 2D World. Point robot. Finite # of Obstacles. Obstacles have bounded perimeters

- Robot has not prior knowledge of locations, shapes of the obstacles

- Robot can senses its position with perfect accuracy. Goal is known.

- Robot can measure the distance btw two points. Robot can measure its traveled distance

- Robot can perfectly detect contact with an obstacle

8

9/23/2014S. Joo ([email protected]) 15

“Bug 0” Algorithm

Hit point

Leave point

Right turn assumption

9/23/2014S. Joo ([email protected]) 16

Goal

Init

“Bug 0” Algorithm

H1

L1

H2

L2

9

9/23/2014S. Joo ([email protected]) 17

“Bug 0” Algorithm

Goal

Init

H1

L1

H2

L2

9/23/2014S. Joo ([email protected]) 18

“Bug 0” Algorithm

10

9/23/2014S. Joo ([email protected]) 19

“Bug 0” Algorithm

9/23/2014S. Joo ([email protected]) 20

“Bug 0” Algorithm

11

9/23/2014S. Joo ([email protected]) 21

“Bug 1” Algorithm

*By following the shortest path along the object boundary

circumnavigate

*

Li

L1

L2

9/23/2014S. Joo ([email protected]) 22

“Bug 1” Algorithm

Goal

Init

H1

L1

H2

L2

12

9/23/2014S. Joo ([email protected]) 23

“Bug 1” Algorithm

(Lower bound)

(Upper bound)

9/23/2014S. Joo ([email protected]) 24

“Bug 1” Algorithm

Leave point

Why?

13

9/23/2014S. Joo ([email protected]) 25

“Bug 1” Algorithm

How Can “Bug 1” Recognize that the goal is not reachable?

Goal

Li

If the direction from Li toward the goal points into the obstacle,then the goal can’t be reached.

9/23/2014S. Joo ([email protected]) 26

Improvements?

14

9/23/2014S. Joo ([email protected]) 27

Improvements?

m-line: The straight line from the initial configuration to the goal configuration

9/23/2014S. Joo ([email protected]) 28

“Bug 2” Algorithm

(following m-line)

*

*Usually toward the left

H1

L1

H2

L2

15

9/23/2014S. Joo ([email protected]) 29

“Bug 2” Algorithm

Goal

Init

H1

L1

H2

L2

9/23/2014S. Joo ([email protected]) 30

“Bug 2” Algorithm

H1

L1

H2

L2

16

9/23/2014S. Joo ([email protected]) 31

“Bug 2” Algorithm

D + 𝒊𝒏𝒊𝟐𝑷𝒊

ni = # of intersections of the ith obstacle with m-line

D

9/23/2014S. Joo ([email protected]) 32

Comparison of Bug 1 & Bug 2

17

9/23/2014S. Joo ([email protected]) 33

Comparison of Bug 1 & Bug 2

9/23/2014S. Joo ([email protected]) 34

Bug Algorithms Summary

18

35

Bug Algorithms Summary

36

Bug Algorithms Summary

Algorithm Bug 0 Bug 1 Bug 2

Completeness X 0, Exhaustive 0, Greedy

Characteristic - Safe, ReliableBetter in some cases. But

worse in other cases

*None of them is optimal

19

37

Planning Requires Models

• Bug algorithms don’t plan ahead.

• They are not really motion planners, but “reactive motion strategies”

• To plan its actions, a robot needs a (possibly imperfect) predictive model of

the effects of its actions, so that it can choose among several possible

combinations of actions

38

A Useful Notion: Competitive Ratio (CR)

• Bug algorithms are examples of online algorithms where a robot discovers its environment while moving

• Competitive Ratio: To evaluate algorithms that utilize different information

- An on-line algorithm vs an algorithm that receives more information

- The competitive ratio of an online algorithm A is the maximum over all possible environments of the ratio of the length of the path computed by A by the length of the path computed by an optimal offline algorithm B that is given a model of the environment

20

39

A Useful Notion: Competitive Ratio (CR)

(a)If the cow is told that the gate is exactly distance 1unit awayCR?

(b)If the cow is told only that the gate is at least distance 1unit awayCR?

Lost Cow Problem

a short-sighted cow is following along an infinite fence and wants to find the gate

Figure from “Planning Algorithms” by Steven M. LaValle