1
Summary Introduction to Mobile Robotics
Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello
Introduction to Mobile Robotics Summary Wolfram Burgard, Maren - - PowerPoint PPT Presentation
Introduction to Mobile Robotics Summary Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello 1 Probabilistic Robotics 2 Probabilistic Robotics Key idea: Explicit representation of uncertainty (using the calculus of
1
Summary Introduction to Mobile Robotics
Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello
2
3
Probabilistic Robotics
Key idea: Explicit representation of uncertainty
(using the calculus of probability theory)
4
Bayes Formula evidence prior likelihood ) ( ) ( ) | ( ) ( ) ( ) | ( ) ( ) | ( ) , ( y P x P x y P y x P x P x y P y P y x P y x P
5
Simple Example of State Estimation
6
Causal vs. Diagnostic Reasoning
knowledge:
) ( ) ( ) | ( ) | ( z P
P
z P z
P
count frequencies!
7
1 1 1
) ( ) , | ( ) | (
t t t t t t t
dx x Bel x u x P x z P
Bayes Filters
) , , , | ( ) , , , , | (
1 1 1 1 t t t t t
u z u x P u z u x z P
Bayes z = observation u = action x = state
) , , , | ( ) (
1 1 t t t t
z u z u x P x Bel
Markov
) , , , | ( ) | (
1 1 t t t t
u z u x P x z P
Markov
1 1 1 1 1
) , , , | ( ) , | ( ) | (
t t t t t t t t
dx u z u x P x u x P x z P
1 1 1 1 1 1 1
) , , , | ( ) , , , , | ( ) | (
t t t t t t t t
dx u z u x P x u z u x P x z P
Total prob. Markov
1 1 1 1 1 1
) , , , | ( ) , | ( ) | (
t t t t t t t t
dx z z u x P x u x P x z P
8
Bayes Filters are Familiar!
1 1 1
) ( ) , | ( ) | ( ) (
t t t t t t t t
dx x Bel x u x P x z P x Bel
9
) , | ( m x z P ) , ' | ( u x x P
10
Motion Models
11
Probabilistic Motion Models
need the transition model p(x | x’, u).
probability, that action u carries the robot from x’ to x.
12
Typical Motion Models
motion models:
systems are equipped with wheel encoders.
when no wheel encoders are given.
velocities and the time elapsed.
13
Odometry Model
2 2
) ' ( ) ' ( y y x x
trans
) ' , ' ( atan2
1
x x y y
rot 1 2
'
rot rot
, , y x ' , ' , ' y x
trans rot rot
u , ,
2 1 trans 1 rot 2 rot
, , y x ' , ' , ' y x
14
Sensors for Mobile Robots
15
Beam-based Sensor Model
given the robot position.
} ,..., , {
2 1 K
z z z z
K k k
m x z P m x z P
1
) , | ( ) , | (
16
Beam-based Proximity Model
Measurement noise
zexp zmax
b z z hit
e b m x z P
2 exp)
( 2 1
2 1 ) , | (
z z m x z P
z
e ) , | (
exp unexp
Unexpected obstacles
zexp zmax
17
Beam-based Proximity Model
Random measurement Max range
max
1 ) , | ( z m x z P
rand small
z m x z P 1 ) , | (
max
zexp zmax zexp zmax
18
Resulting Mixture Density
) , | ( ) , | ( ) , | ( ) , | ( ) , | (
rand max unexp hit rand max unexp hit
m x z P m x z P m x z P m x z P m x z P
T
How can we determine the model parameters?
19
20
Bayes Filters in Action
21
Discrete Filter
histogram / grid representation
input and to carry out the normalization one has to iterate over all cells of the grid
22
Piecewise Constant
23
Kalman Filter
dimensionality k and state dimensionality n: O(k2.376 + n2)
Kalman Filter Algorithm
1. Algorithm Kalman_filter( t-1,
t-1, ut, zt):
2. Prediction: 3. 4. 5. Correction: 6. 7. 8. 9. Return
t, t
mt = Atmt-1 + Btut St = AtSt-1At
T + Qt
Kt = StCt
T(CtStCt T + Rt)-1
mt = mt + Kt(zt -Ctmt) St = (I -KtCt)St
25
Extended Kalman Filter
assumptions are violated!
Particle Filter
represent non-Gaussian distribution
26
Mathematical Description
27
State hypothesis Importance weight
28
Particle Filter Algorithm in Brief
using the proposal distribution
weight = target distribution / proposal distribution
more likely ones”
29
generate samples from f
account for the “differences between g and f ”
target
proposal
f(x)>0 g(x)>0
Importance Sampling Principle
31
draw xit 1 from Bel(xt 1) draw xit from p(xt | xit 1,ut 1) Importance factor for xit:
) | ( ) ( ) , | ( ) ( ) , | ( ) | (
distributi proposal
distributi target
1 1 1 1 1 1 t t t t t t t t t t t t i t
x z p x Bel u x x p x Bel u x x p x z p w
1 1 1 1
) ( ) , | ( ) | ( ) (
t t t t t t t t
dx x Bel u x x p x z p x Bel
Particle Filter Algorithm
32
w2 w3 w1 wn Wn-1
Resampling
w2 w3 w1 wn Wn-1
33
MCL Example
34
Why Mapping?
problems in mobile robotics
their tasks, allow localization …
localization, path planning, activity planning etc
35
Occupancy Grid Maps
spaced cells
the corresponding area is occupied by an obstacle
conditionally independent
mapping is easy
36
37
Updating Occupancy Grid Maps
sensor model
1 ] [ 1 ] [ 1 ] [ ] [ 1 ] [ 1 ] [ ] [
1 1 , | 1 , | 1 1
xy t xy t xy t xy t t t xy t t t xy t xy t
m Bel m Bel m P m P u z m P u z m P m Bel
1 ] [ ] [
, | log
t t xy t xy t
u z m
m B ) ( log :
] [ ] [ xy t xy t
m
m B x P x P x
1 : ) (
] [
log
xy t
m
] [ 1 xy t
m B
38
Reflection Probability Maps
ended at <x,y>
beam passed through <x,y> ) , misses( ) , hits( ) , hits( ) (
] [
y x y x y x m Bel
xy
39
40
Given:
Estimate:
The SLAM Problem
A robot is exploring an unknown, static environment.
Chicken-or-Egg
in robotics
the SLAM problem have been presented
41
42
SLAM:
Simultaneous Localization and Mapping
Integrations typically done one at a time
) , | , (
: 1 : 1 : 1 t t t
u z m x p
1 2 1 : 1 : 1 : 1 : 1 : 1
... ) , | , ( ) , | , (
t t t t t t t
dx dx dx u z m x p u z m x p
Estimates most recent pose and map! Estimates entire path and map!
43
Why is SLAM a hard problem?
catastrophic consequences
Robot pose uncertainty
44
÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ø ö ç ç ç ç ç ç ç ç ç ç è æ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ø ö ç ç ç ç ç ç ç ç ç è æ =
2 2 2 2 2 2 2 1
2 1 2 2 2 1 2 2 2 1 2 1 1 1 1 1 2 1 2 1 2 1
, ) , (
N N N N N N N N N N N
l l l l l l yl xl l l l l l l yl xl l l l l l l yl xl l l l y x yl yl yl y y xy xl xl xl x xy x N t t
l l l y x m x Bel s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s q
q q q q q q q q q q q
Gaussian
(E)KF-SLAM
45
EKF-SLAM
Map Correlation matrix
46
EKF-SLAM
Map Correlation matrix
47
EKF-SLAM
Map Correlation matrix
48
FastSLAM
the robot’s trajectory from the one of the map of the environment
factorization in the SLAM posterior
49
Rao-Blackwellization
SLAM posterior Robot path posterior Mapping with known poses
Factorization first introduced by Murphy in 1999
poses map
50
Rao-Blackwellized Mapping
trajectory of the robot
poses”
proportional to the likelihood of the
51
FastSLAM
landmarks
Extended Kalman Filter (EKF)
Landmark 1 Landmark 2 Landmark M … x, y, Landmark 1 Landmark 2 Landmark M … x, y,
Particle #1
Landmark 1 Landmark 2 Landmark M … x, y,
Particle #2 Particle N
…
52
Grid-based FastSLAM
computable, informed proposal distribution is needed
model dominates the motion model (given an accurate sensor)
53
Proposal Distribution
Approximate this equation by a Gaussian:
Sampled points around the maximum maximum reported by a scan matcher Gaussian approximation Draw next generation of samples
54
Typical Results
55
56
Robot Motion Planning
Latombe (1991): “…eminently necessary since, by definition, a robot accomplishes tasks by moving in the real world.”
Goals:
fast as possible.
57
Two Challenges
potential uncertainties in the actions into account
unforeseen objects
58
Classic Two-layered Architecture
Planning Collision Avoidance
sensor data map robot low frequency high frequency sub-goal motion command
62
Information Gain-based Exploration
consumes incoming sensor data
cover the environment with its sensors
Acting under pose and map uncertainty
account when selecting an action
Mutual Information
reduction of entropy in the belief action to be carried
“uncertainty of the filter” – “uncertainty of the filter after carrying out action a”
Integrating Over Observations
to integrate over potential observations potential observation sequences
67
Summary on Information Gain- based Exploration
exploration in the context of RBPF-SLAM
the Rao-Blackwellization to efficiently calculate the expected information gain
along the path of the robot
revisiting actions
68
The Exam is Approaching…
most important topics addressed in this course
basic formulas (e.g., Bayes filter, MCL eqs., Rao-Blackwellization, entropy, …)