Probabilistic Robotics

31
SA-1 Probabilistic Robotics Mapping with Known Poses

description

Probabilistic Robotics. Mapping with Known Poses. Why Mapping?. Learning maps is one of the fundamental problems in mobile robotics Maps allow robots to efficiently carry out their tasks, allow localization … - PowerPoint PPT Presentation

Transcript of Probabilistic Robotics

Page 1: Probabilistic Robotics

SA-1

Probabilistic Robotics

Mapping with Known Poses

Page 2: Probabilistic Robotics

2

Why Mapping?

•Learning maps is one of the fundamental problems in mobile robotics

•Maps allow robots to efficiently carry out their tasks, allow localization …

•Successful robot systems rely on maps for localization, path planning, activity planning etc.

Page 3: Probabilistic Robotics

3

The General Problem of Mapping

What does the environment look like?

Page 4: Probabilistic Robotics

4

The General Problem of Mapping•Formally, mapping involves, given the

sensor data,

to calculate the most likely map

},,,,,,{ 2211 nn zuzuzud

)|(maxarg* dmPmm

Page 5: Probabilistic Robotics

5

Mapping as a Chicken and Egg Problem

• So far we learned how to estimate the pose of the vehicle given the data and the map.

• Mapping, however, involves to simultaneously estimate the pose of the vehicle and the map.

• The general problem is therefore denoted as the simultaneous localization and mapping problem (SLAM).

• Throughout this section we will describe how to calculate a map given we know the pose of the vehicle.

Page 6: Probabilistic Robotics

6

Types of SLAM-Problems

•Grid maps or scans

[Lu & Milios, 97; Gutmann, 98: Thrun 98; Burgard, 99; Konolige & Gutmann, 00; Thrun, 00; Arras, 99; Haehnel, 01;…]

•Landmark-based

[Leonard et al., 98; Castelanos et al., 99: Dissanayake et al., 2001; Montemerlo et al., 2002;…

Page 7: Probabilistic Robotics

7

Problems in Mapping

•Sensor interpretation• How do we extract relevant information

from raw sensor data?• How do we represent and integrate this

information over time?

•Robot locations have to be estimated• How can we identify that we are at a

previously visited place?• This problem is the so-called data

association problem.

Page 8: Probabilistic Robotics

8

Occupancy Grid Maps

• Introduced by Moravec and Elfes in 1985

• Represent environment by a grid.

• Estimate the probability that a location is occupied by an obstacle.

• Key assumptions• Occupancy of individual cells (m[xy]) is independent

• Robot positions are known!

yx

xyt

tttt

mBel

zuzumPmBel

,

][

121

)(

),,,|()(

Page 9: Probabilistic Robotics

9

Updating Occupancy Grid Maps

][1

][11

][1

][][][ )(),|()|()( xyt

xytt

xyt

xyt

xytt

xyt dmmBelummpmzpmBel

• Idea: Update each individual cell using a binary Bayes filter.

•Additional assumption: Map is static.)()|()( ][

1][][ xy

txytt

xyt mBelmzpmBel

Page 10: Probabilistic Robotics

10

Updating Occupancy Grid Maps

• Update the map cells using the inverse sensor model

• Or use the log-odds representation

1

][1

][1

][

][

1][

1][

][

1

1

,|1

,|11

xyt

xyt

xyt

xyt

ttxyt

ttxytxy

t mBel

mBel

mP

mP

uzmP

uzmPmBel

1][][ ,|log tt

xyt

xyt uzmoddsmB )(log: ][][ xy

txyt moddsmB

xP

xPxodds

1:)(

][log xytmodds

][1xytmB

Page 11: Probabilistic Robotics

11

Typical Sensor Model for Occupancy Grid Maps

Combination of a linear function and a Gaussian:

Page 12: Probabilistic Robotics

12

Key Parameters of the Model

Page 13: Probabilistic Robotics

13

z+d1 z+d2

z+d3z

z-d1

Occupancy Value Depending on the Measured Distance

Page 14: Probabilistic Robotics

14

Deviation from the Prior Belief(the sphere of influence of the sensors)

Page 15: Probabilistic Robotics

15

Calculating the Occupancy Probability Based on Single Observations

Page 16: Probabilistic Robotics

16

Incremental Updating of Occupancy Grids (Example)

Page 17: Probabilistic Robotics

17

Resulting Map Obtained with Ultrasound Sensors

Page 18: Probabilistic Robotics

18

Resulting Occupancy and Maximum Likelihood Map

The maximum likelihood map is obtained by clipping the occupancy grid map at a threshold of 0.5

Page 19: Probabilistic Robotics

19

Occupancy Grids: From scans to maps

Page 20: Probabilistic Robotics

20

Tech Museum, San Jose

CAD map occupancy grid map

Page 21: Probabilistic Robotics

21

Alternative: Simple Counting

•For every cell count• hits(x,y): number of cases where a beam

ended at <x,y>• misses(x,y): number of cases where a

beam passed through <x,y>

•Value of interest: P(reflects(x,y))

),misses(),hits(

),hits()( ][

yxyx

yxmBel xy

Page 22: Probabilistic Robotics

22

The Measurement Model

1

0,),,(),,(

1

0,),,(

, ,

,

,

0 if)1(

1 if)1(),|(

nt

tntt

nt

t

z

kntknxfznxf

z

kntknxf

tnt

mm

mmxzp

1, nt

1. pose at time t:

2. beam n of scan t:

3. maximum range reading:

4. beam reflected by an object: 0, nt

ntz ,

tx0 n1

),,( ,ntt znxfm

Page 23: Probabilistic Robotics

23

Computing the Most Likely Map

• Compute values for m that maximize

• Assuming a uniform prior probability for p(m), this is equivalent to maximizing (applic. of Bayes rule)

),,,,,|(maxarg 11*

ttm

xxzzmPm

T

ttt

m

T

ttt

m

ttm

xmzP

xmzP

xxmzzPm

1

1

11*

),|(lnmaxarg

),|(maxarg

),,,|,,(maxarg

Page 24: Probabilistic Robotics

24

Computing the Most Likely Map

1

0

,1 1 1

,*

,

)1(ln)),,((

ln)1()),,((maxarg

ntz

kjt

jnt

J

j

T

t

N

nntt

m

mjknxfI

mjznxfIm

Suppose

T

t

N

nntnttj jznxfI

1 1,, )1()),,((

T

t

N

n

z

ktj

nt

jknxfI1 1

1

0

,

)),,((

Page 25: Probabilistic Robotics

25

Meaning of j and j

T

t

N

nntnttj jznxfI

1 1,, )1()),,((

T

t

N

n

z

ktj

nt

jknxfI1 1

1

0

,

)),,((

corresponds to the number of times a beam that is not a maximum range beam ended in cell j (hits(j))

corresponds to the umber of times a beam intercepted cell j without ending in it (misses(j)).

Page 26: Probabilistic Robotics

26

Computing the Most Likely Map

J

jjjjj

mmmm

1

* )1ln(lnmaxarg

We assume that all cells mj are independent:

01

j

j

j

j

j mmm

m

If we set

Computing the most likely map amounts to counting how often a cell has reflected a measurement and how often it was intercepted.

jj

jjm

we obtain

Page 27: Probabilistic Robotics

27

Difference between Occupancy Grid Maps and Counting

•The counting model determines how often a cell reflects a beam.

•The occupancy model represents whether or not a cell is occupied by an object.

•Although a cell might be occupied by an object, the reflection probability of this object might be very small.

Page 28: Probabilistic Robotics

28

Example Occupancy Map

Page 29: Probabilistic Robotics

29

Example Reflection Map

glass panes

Page 30: Probabilistic Robotics

30

Example

• Out of 1000 beams only 60% are reflected from a cell and 40% intercept it without ending in it.

• Accordingly, the reflection probability will be 0.6.

• Suppose p(occ | z) = 0.55 when a beam ends in a cell and p(occ | z) = 0.45 when a cell is intercepted by a beam that does not end in it.

• Accordingly, after n measurements we will have

• Whereas the reflection map yields a value of 0.6, the occupancy grid value converges to 1.

2.0*4.0*6.0*4.0*6.0*

9

11

9

11*

9

11

55.0

45.0*

45.0

55.0nnnnn

Page 31: Probabilistic Robotics

31

Summary

• Occupancy grid maps are a popular approach to represent the environment of a mobile robot given known poses.

• In this approach each cell is considered independently from all others.

• It stores the posterior probability that the corresponding area in the environment is occupied.

• Occupancy grid maps can be learned efficiently using a probabilistic approach.

• Reflection maps are an alternative representation.

• They store in each cell the probability that a beam is reflected by this cell.

• We provided a sensor model for computing the likelihood of measurements and showed that the counting procedure underlying reflection maps yield the optimal map.