+ All Categories
Home > Documents > The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City...

The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City...

Date post: 22-Dec-2015
Category:
View: 218 times
Download: 1 times
Share this document with a friend
Popular Tags:
43
The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York [email protected] Mobile Robot Mapping Introduction to ROBOTICS
Transcript
Page 1: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

1

Dr. John (Jizhong) Xiao

Department of Electrical Engineering

City College of New York

[email protected]

Mobile Robot Mapping

Introduction to ROBOTICS

Page 2: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

2

Topics• Brief Review: Motion Planning

• Mobile Robot Mapping– Using sonar to create maps– Bayes Rule– Evidence Grids

Page 3: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

3

Review: Motion Planning

– Configuration Space

– Motion Planning Methods• Roadmap Approaches• Cell Decomposition• Potential Fields• Bug Algorithms

Motion Planning: Find a path connecting an initial configuration to goal configuration without collision with obstacles

Page 4: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

4

Review: Motion Planning• Motion Planning Methodololgies – Roadmap – Cell Decomposition – Potential Field

• Roadmap – From Cfree a graph is defined (Roadmap) – Ways to obtain the Roadmap

• Visibility graph• Voronoi diagram

• Cell Decomposition – The robot free space (Cfree) is decomposed into simple regions (cells) – The path in between two poses of a cell can be easily generated• Potential Field – The robot is treated as a particle acting under the influence of a potential field U, where: • the attraction to the goal is modeled by an additive field • obstacles are avoided by acting with a repulsive force that yields a negative field

Global methods

Local methods

Page 5: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

5

Full-knowledge motion planning

approximate free space

represented via a quadtree

Cell decompositionsRoadmaps

exact free space

represented via convex polygons

visibility graph

voronoi diagram

Page 6: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

6

Potential field Method• Usually assumes some knowledge at the global level

The goal is known; the obstacles sensed

Each contributes forces, and the robot follows the resulting gradient.

Page 7: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

7

Mobot System Overview

Abstraction level

Motor Modeling: what voltage should I set now ?

Control (PID): what voltage should I set over time ?

Kinematics: if I move this motor somehow, what happens in other coordinate systems ?

Motion Planning: Given a known world and a cooperative mechanism, how do I get there from here ?

Bug Algorithms: Given an unknowable world but a known goal and local

sensing, how can I get there from here?

Mapping: Given sensors, how do I create a useful map?

low-level

high-level

Localization: Given sensors and a map, where am I ?Vision: If my sensors are eyes, what do I do?

Page 8: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

8

Mobile Robot Mapping

• Answering robotics’ big questions– How to get a map of an environment with

imperfect sensors (Mapping)– How a robot can tell where it is on a map

(localization)– Getting from place to place under uncertain

conditions– Using vision effectively

Page 9: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

9

Sonar sensing

Why is sonar sensing limited to between ~12 in.

and ~25 feet ?

“The sponge”

Polaroid sonar emitter/receivers

sonar timeline

0

a “chirp” is emitted into the environment

75s

typically when reverberations from the initial chirp have stopped

.5sthe transducer goes into “receiving” mode and awaits a signal...

after a short time, the signal will be too weak to be detected

Sonar (sound navigation and ranging): range sensing using acoustic (i.e., sound) signal

Blanking time Attenuation

Page 10: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

10

Sonar effects

resolution: time / space

(d) Specular reflections cause walls to disappear

(e) Open corners produce a weak spherical wavefront

(f) Closed corners measure to the corner itself because of multiple reflections --> sonar ray tracing

(a) Sonar providing an accurate range measurement

(b-c) Lateral resolution is not very precise; the closest object in the beam’s cone provides the response

Page 11: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

11

Sonar modelinginitial time response

spatial response

Sonar amplitude profile: 3-D cone with side lobes

blanking time

accumulated responses

cone width

Page 12: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

12

Sonar Modelingresponse model (Kuc &

Siegel)

sonar reading

obstacle

c = speed of sound

a = diameter of sonar element (transducer)

t = time

z = orthogonal distance

= angle of environment surface

• Models the response, hR,with

• Then, add noise to the model to obtain a probability:

p( S | o )

chance that the sonar reading is S, given an obstacle at

location o

z =

S

o

Page 13: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

13

Using sonar to create maps

What should we conclude if this sonar reads 10 feet?

10 feet

what would a local map look like?

Page 14: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

14

Using sonar to create maps

What should we conclude if this sonar reads 10 feet?

10 feet

there is something somewhere around here

there isn’t something here

Local Map

unoccupied

occupied

Page 15: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

15

Using sonar to create maps

What should we conclude if this sonar reads 10 feet?

10 feet

there is something somewhere around here

there isn’t something here

Local Mapunoccupied

occupied

or ...

no information

Page 16: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

16

Using sonar to create maps

What should we conclude if this sonar reads 10 feet...

10 feet

and how do we add the information that the next sonar reading (as the robot moves) reads 10 feet, too?

10 feet

Page 17: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

17

Combining sensor readings

• The key to making accurate maps is combining lots of data.

• But combining these numbers means we have to know what they are !

What should our map contain ?

• small cells

• each represents a bit of the robot’s environment

• larger values => obstacle

• smaller values => free

what is in each cell of this sonar model / map ?

Page 18: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

18

What is it a map of?

Several answers to this question have been tried:

It’s a map of occupied cells. oxy oxy cell (x,y) is occupied

cell (x,y) is unoccupied

Each cell is either occupied or unoccupied -- this was the approach taken by the Stanford Cart.

pre ‘83

What information should this map contain, given that it is created with sonar ?

Page 19: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

19

Several answers to this question have been tried:

It’s a map of occupied cells.

It’s a map of probabilities: p( o | S1..i )

p( o | S1..i )

The certainty that a cell is occupied, given the sensor readings S1, S2, …, Si

The certainty that a cell is unoccupied, given the sensor readings S1, S2, …, Si

oxy oxy cell (x,y) is occupied

cell (x,y) is unoccupied

• maintaining related values separately

• initialize all certainty values to zero

‘83 - ‘88

pre ‘83

What is it a map of ?

• contradictory information will lead to both values near 1 • combining them takes some work...

Page 20: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

20

Several answers to this question have been tried:

It’s a map of occupied cells.

It’s a map of probabilities: p( o | S1..i )

p( o | S1..i )

It’s a map of odds.

The certainty that a cell is occupied, given the sensor readings S1, S2, …, Si

The certainty that a cell is unoccupied, given the sensor readings S1, S2, …, Si

The odds of an event are expressed relative to the complement of that event.

odds( o | S1..i ) = p( o | S1..i )p( o | S1..i )

The odds that a cell is occupied, given the sensor readings S1, S2, …,

Si

oxy oxy cell (x,y) is occupied

cell (x,y) is unoccupied

‘83 - ‘88

pre ‘83

What is it a map of ?

probabilities

evidence = log2(odds)

Page 21: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

21

An example map

units: feetEvidence grid of a tree-lined outdoor path

lighter areas: lower odds of obstacles being present

darker areas: higher odds of obstacles being presenthow to combine them?

Page 22: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

22

Combining probabilities

How to combine two sets of probabilities into a single map ?

Page 23: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

23

Conditional probability

Some intuition...

p( o | S ) = The probability of event o, given event S .The probability that a certain cell o is occupied, given that the robot sees the sensor reading S .

p( S | o ) = The probability of event S, given event o .The probability that the robot sees the sensor reading S , given that a certain cell o is occupied.

• What is really meant by conditional probability ?

• How are these two probabilities related?

p( o | S ) = p(S | o) ??

Page 24: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

24

Bayes Rule

p( o S ) = p( o | S ) p( S )

- Joint probabilities/Conditional probabilities

Page 25: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

25

Bayes Rule

- Bayes rule relates conditional probabilities

p( o | S ) = p( S | o ) p( o )

p( S )Bayes rule

p( o S ) = p( o | S ) p( S )

- Joint probabilities/Conditional probabilities

Page 26: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

26

Bayes Rule

- Bayes rule relates conditional probabilities

p( o | S ) = p( S | o ) p( o )

- So, what does this say about

p( S )Bayes rule

odds( o | S2 S1 ) ?

p( o S ) = p( o | S ) p( S )

- Joint probabilities/Conditional probabilities

Can we update easily ?

Page 27: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

27

Combining evidence

So, how do we combine evidence to create a map?

What we want --

odds( o | S2 S1) the new value of a cell in the map after the sonar reading S2

What we know --

odds( o | S1) the old value of a cell in the map (before sonar reading S2)

p( Si | o ) & p( Si | o ) the probabilities that a certain obstacle causes the sonar reading Si

Page 28: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

28

Combining evidence

odds( o | S2 S1) = p( o | S2 S1 )

p( o | S2 S1 )

Page 29: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

29

Combining evidence

odds( o | S2 S1) = p( o | S2 S1 )

p( o | S2 S1 )

. = p( S2 S1 | o ) p(o)

p( S2 S1 | o ) p(o)

def’n of odds

Page 30: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

30

p( S2 | o ) p( S1 | o ) p(o)

Combining evidence

odds( o | S2 S1) = p( o | S2 S1 )

p( o | S2 S1 )

. =

. =

p( S2 S1 | o ) p(o)

p( S2 S1 | o ) p(o)

p( S2 | o ) p( S1 | o ) p(o)

def’n of odds

Bayes’ rule (+)

Page 31: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

31

p( S2 | o ) p( S1 | o ) p(o)

Combining evidence

odds( o | S2 S1) = p( o | S2 S1 )

p( o | S2 S1 )

. =

. =

. =

p( S2 S1 | o ) p(o)

p( S2 S1 | o ) p(o)

p( S2 | o ) p( S1 | o ) p(o)

def’n of odds

Bayes’ rule (+)

conditional independence of S1 and

S2

p( S2 | o ) p( o | S1 )p( S2 | o ) p( o | S1 ) Bayes’ rule

(+)

Page 32: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

32

p( S2 | o ) p( S1 | o ) p(o)

Combining evidence

odds( o | S2 S1) = p( o | S2 S1 )

p( o | S2 S1 )

. =

. =

. =

p( S2 S1 | o ) p(o)

p( S2 S1 | o ) p(o)

p( S2 | o ) p( S1 | o ) p(o)

Update step = multiplying the previous odds by a precomputed weight.

def’n of odds

Bayes’ rule (+)

conditional independence of S1 and

S2

p( S2 | o ) p( o | S1 )p( S2 | o ) p( o | S1 ) Bayes’ rule

(+)

previous oddsprecomputed valuesthe sensor model

Page 33: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

33

Evidence Grids...

Mapping Using Evidence grids

Page 34: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

34

represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle

Lab environment

not surelikely obstacle

likely free space

Evidence Grids...

evidence = log2(odds)

Mapping Using Evidence grids

lighter areas: lower odds of obstacles being present

darker areas: higher odds of obstacles being present

Page 35: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

35

represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle

Lab environment

not surelikely obstacle

likely free space

• The relative locations of the robot within the map are assumed known.• It is important that the robot odometry is correct

Evidence Grids...

Mapping Using Evidence grids

Page 36: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

36

hallway with some open doors

known map and estimated evidence grid

lab spaceCMU -- Hans

Moravec

Mapping Using Evidence grids

Page 37: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

37

Motion Planning in Evidence Grids

Reduces to a search problem within the graph of cells, and the graph is created on the fly.

Search for a minimum-cost path, depending on

•length

•probability of collision

Page 38: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

38

Path Planning in Evidence Grids

Reduces to a search problem within the graph of cells, and the graph is created on the fly.

Search for a minimum-cost path, depending on

cost = K stepij + collision penalty

•length

•probability of collision

(i,j) path (i,j) path

stepij = length of traversing cell (i,j)

What should this be?

Page 39: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

39

Path Planning in Evidence Grids

Reduces to a search problem within the graph of cells, and the graph is created on the fly.

Search for a minimum-cost path, depending on

cost = K stepij + -log( 1-p )

•length

•probability of collision

(i,j) path (i,j) path

Suppose p is the chance of colliding with an obstacle in cell (i,j).

stepij = length of traversing cell (i,j)

Page 40: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

40

Robot Mapping

represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle

Lab environment

not surelikely obstacle

likely free space

• The relative locations of the robot within the map are assumed known.• It is important that the robot odometry is correct

• Equally plausible to consider the converse problem...

Evidence Grids...

Given a map of the environment, how do I determine where I am?

“Robot localization problem”

Page 41: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

41

Localization via mapping

Key idea: use what we already know how to do -- mapping

• Map the area around the robot

• Match the result to the known map of the world

Page 42: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

42

Localization via mapping

Key idea: use what we already know how to do -- mapping

• Map the area around the robot

• Match the result to the known map of the world

Page 43: The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu Mobile Robot Mapping.

The City College of New York

43

Thank you!Homework 9 posted on the web

Next class: Localization


Recommended