Вы находитесь на странице: 1из 58

Particle Filters Title Page

Introduction
Dynamic System
Bayesian Filters
an overview Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
Summary
Matthias Muhlich Page 1 of 45
JJ II
Institut fur Angewandte Physik J I
J.W.Goethe-Universitat Frankfurt
muehlich@iap.uni-frankfurt.de
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Particle Filters Title Page
Introduction
Dynamic System
Bayesian Filters
a tutorial Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
Summary
Matthias Muhlich Page 2 of 45
JJ II
Institut fur Angewandte Physik J I
J.W.Goethe-Universitat Frankfurt
muehlich@iap.uni-frankfurt.de
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
1 Introduction
An increasing number of researchers is using a family of
Title Page
techniques and algorithms called Introduction
Dynamic System
condensation algorithms Bayesian Filters
Kalman Filter
bootstrap filtering Grid-Based Filter

particle filters Particle Filter


Experiments
interacting particle approximations Summary

sequential Monte Carlo methods Page 3 of 45


SIS, SIR, ASIR, RPF, . . . JJ II
J I
Time scale: last 10 years [e.g. Isard & Blake 1996; Kita-
gawa 1996; Gordon, Salmond & Smith 1993] - ,
Full Screen

Search
The question of this talk is: What is behind all that?
Close
Filter-Workshop
Bucuresti 2003
General Classification of Filter Strategies
Gaussian models:
Title Page

Kalman filter Introduction


Dynamic System
Bayesian Filters
extended Kalman filter Kalman Filter
Grid-Based Filter

linear-update filter / linear regression filter / Particle Filter


Experiments
statistical linearization filter Summary

Page 4 of 45
unscented filter JJ II
central difference filter J I
divided difference filter - ,
assumed density filter / moment matching Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Mixture of Gaussian models:

assumed density filter / pseudo-Bayes


Title Page
Gaussian-sum filter Introduction
Dynamic System
Bayesian Filters
Kalman Filter
Grid-Based Filter
Nonparametric models: Particle Filter
Experiments
Summary
particle filter class
Page 5 of 45

histogram filter JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Some Basic Remarks
various applications: computer vision (i.e. tracking),
control theory, econometrics (stock markets, mone- Title Page
Introduction
tary flow, interest rates), . . . Dynamic System
Bayesian Filters
we deal with discrete time systems only Kalman Filter
Grid-Based Filter

no out-of-sequence measurements Particle Filter


Experiments
Summary
we are mainly interested in estimating the state at Page 6 of 45
time k from measurements up to time k0 = k (op- JJ II
posite: smoothing (k0 > k) and prediction (k0 < k);
J I
furthermore k0 need not be fixed. . . )
- ,
no restrictions to linear processes or Gaussian noise! Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Overview of this Talk
The Dynamic System Model
Title Page
Bayesian Filter Approach Introduction
Dynamic System

Optimal and Suboptimal Solutions Bayesian Filters


Kalman Filter
Grid-Based Filter
The Particle Filter Particle Filter
Experiments

Experiments and Summary Summary

Page 7a of 45
JJ II
states of a system and state transition equation J I
measurement equation - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Overview of this Talk
The Dynamic System Model
Title Page
Bayesian Filter Approach Introduction
Dynamic System

Optimal and Suboptimal Solutions Bayesian Filters


Kalman Filter
Grid-Based Filter
The Particle Filter Particle Filter
Experiments

Experiments and Summary Summary

Page 7b of 45
JJ II
estimation of the state J I
probabilistic modelling - ,
Full Screen
Bayesian filter
Search

Close
Filter-Workshop
Bucuresti 2003
Overview of this Talk
The Dynamic System Model
Title Page
Bayesian Filter Approach Introduction
Dynamic System

Optimal and Suboptimal Solutions Bayesian Filters


Kalman Filter
Grid-Based Filter
The Particle Filter Particle Filter
Experiments

Experiments and Summary Summary

Page 7c of 45
JJ II
filtered pdf can be written down easily, but it is not J I
always tractable ( ugly integrals . . . ) - ,
conditions under which optimal solutions exist: Kalman Full Screen
filter and grid-based filter Search

what can be done in other cases: suboptimal approaches Close


Filter-Workshop
Bucuresti 2003
Overview of this Talk
The Dynamic System Model
Title Page
Bayesian Filter Approach Introduction
Dynamic System

Optimal and Suboptimal Solutions Bayesian Filters


Kalman Filter
Grid-Based Filter
The Particle Filter Particle Filter
Experiments

Experiments and Summary Summary

Page 7d of 45
JJ II
standard particle filter J I
various improved versions - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Overview of this Talk
The Dynamic System Model
Title Page
Bayesian Filter Approach Introduction
Dynamic System

Optimal and Suboptimal Solutions Bayesian Filters


Kalman Filter
Grid-Based Filter
The Particle Filter Particle Filter
Experiments

Experiments and Summary Summary

Page 7e of 45
JJ II
some experimental data and conclusion J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
2 Dynamic System
A dynamic system can be modelled with two equations:
Title Page
Introduction
Dynamic System
State Transition or Evolution Equation Bayesian Filters
Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
xk = fk (xk1 , uk1 , vk1 ) Summary

Page 8 of 45
f (, , ): evolution function (possible non-linear) JJ II
xk , xk1 IRnx : current and previous state
J I
vk1 IRnv : state noise (usually not Gaussian)
uk1 IRnu : known input - ,
Full Screen

Note: state only depends on previous state, i.e. first order Search

Markov process Close


Filter-Workshop
Bucuresti 2003
Measurement Equation

zk = hk (xk , uk , nk ) Title Page


Introduction
Dynamic System

h(, , ): measurement function (possible non-linear) Bayesian Filters


Kalman Filter
zk IRnz : measurement Grid-Based Filter

xk IRnx : state Particle Filter


Experiments
nk IRnn : measurement noise (usually not Gaussian) Summary

uk IRnu : known input Page 9 of 45


JJ II
(dimensionality of state, measurement, input, state noise, J I
and measurement noise can all be different!)
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

measurements Title Page


(observed) Introduction
Dynamic System
Bayesian Filters
Kalman Filter
states Grid-Based Filter
x k-1 (cannot be observed and Particle Filter
have to be estimated) Experiments
Summary

Page 10a of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

z k-1
measurements Title Page
measurement (observed) Introduction
process Dynamic System
Bayesian Filters
Kalman Filter
states Grid-Based Filter
x k-1 (cannot be observed and Particle Filter
have to be estimated) Experiments
Summary

Page 10b of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

z k-1
measurements Title Page
(observed) Introduction
Dynamic System
Bayesian Filters
Kalman Filter
states Grid-Based Filter
x k-1 xk (cannot be observed and Particle Filter
have to be estimated) Experiments

state transition Summary

Page 10c of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

z k-1 zk
measurements Title Page
(observed) Introduction
Dynamic System
Bayesian Filters
Kalman Filter
states Grid-Based Filter
x k-1 xk (cannot be observed and Particle Filter
have to be estimated) Experiments
Summary

Page 10d of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

z k-1 zk z k+1
measurements Title Page
(observed) Introduction
Dynamic System
Bayesian Filters
Kalman Filter
states Grid-Based Filter
x k-1 xk x k+1 (cannot be observed and Particle Filter
have to be estimated) Experiments
Summary

Page 10e of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
k-1 k k+1 time

z k-1 zk z k+1
measurements Title Page
(observed) Introduction
p(z k |x k )
Dynamic System
(measurements
only depend on Bayesian Filters
state Kalman Filter
states Grid-Based Filter
x k-1 xk x k+1 (cannot be observed and Particle Filter
have to be estimated)
p(x k |x k-1) Experiments
(first order Markov process) Summary

Page 10f of 45

Assumptions: JJ II
The observations are conditionally independent given the J I
state: p(zk |xk ). - ,
Full Screen
Hidden Markov Model (HMM):
p(x0 ) given and p(xk |xk1 ) defines state transition prob- Search
ability for k 1. Close
Filter-Workshop
Bucuresti 2003
3 Bayesian Filters
Estimating the Posterior Title Page
Introduction
Bayesian approach: We attempt to construct the posterior Dynamic System
Bayesian Filters
pdf of the state given all measurements. Kalman Filter
Grid-Based Filter
can be termed a complete solution to the estimation Particle Filter
problem because all available information is used; from Experiments
Summary
the pdf, an optimal estimate can theoretically be found
Page 11 of 45
for any criterion.
JJ II
in detail: We seek estimates of xk based on all available
J I
measurements up to time k (abbreviated as z1:k ) by con-
structing the posterior p(xk |z1:k ). - ,
Full Screen
Assumption: initial state pdf (prior) p(x0 ) is given
Search

Close
Filter-Workshop
Bucuresti 2003
The Use of Knowing the Posterior
Let fk : IR(k+1)nx IR be any arbitrary (integrable) func-
tion that can depend Title Page
Introduction
Dynamic System
on all components of the state x Bayesian Filters
Kalman Filter

on the whole trajectory in state-space Grid-Based Filter


Particle Filter
Experiments
Examples: This function can be an estimator for the cur- Summary

rent state or for future observations. Page 12 of 45

Then we can compute its expectation using JJ II


Z J I
E [ fk (x0:k )] = f (x0:k )p(x0:k |z1:k )dx0:k - ,
Full Screen

MMSE estimate of state: x = E [xk ]. Other estimates that Search


can be computed: median, modes, confidence intervals, Close
kurtosis, . . . Filter-Workshop
Bucuresti 2003
Recursive Filters
recursive filters (i.e. sequential update of previous esti-
mate) batch processing (computation with all data in Title Page
Introduction
one step) Dynamic System
Bayesian Filters
not only faster: allow on-line processing of data (lower Kalman Filter
storage costs, rapid adaption to changing signals charac- Grid-Based Filter
Particle Filter
teristics) Experiments
Summary
essentially consist of two steps:
Page 13 of 45

prediction step: p(xk1 |z1:k1 ) p(xk |z1:k1 ) JJ II


(usually deforms / translates / spreads state pdf due J I
to noise) - ,
Full Screen
update step: p(xk |z1:k1 ), zk p(xk |z1:k )
(combines likelihood of current measurement with Search
predicted state; usually concentrates state pdf) Close
Filter-Workshop
Bucuresti 2003
General Prediction-Update Framework
Assume that pdf p(xk1 |z1:k1 ) is available at time k 1.
Title Page
Prediction step: (using Chapman-Kolmogoroff equation) Introduction

Z Dynamic System
Bayesian Filters
p(xk |z1:k1 ) = p(xk |xk1 )p(xk1 |z1:k1 )dxk1 (1) Kalman Filter
Grid-Based Filter
Particle Filter
This is the prior of the state xk at time k without knowl- Experiments
Summary
edge of the measurement zk , i.e. the probability given only
Page 14 of 45
previous measurements.
JJ II
Update step: (compute posterior pdf from predicted prior
pdf and new measurement) J I
- ,
p(zk |xk )p(xk |z1:k1 ) Full Screen
p(xk |z1:k ) = (2)
p(zk |z1:k1 ) Search

Close
Filter-Workshop
Bucuresti 2003
Let us prove formula (2) (just in order to train calculations
with joint and conditional probabilities. . . )

p(xk |z1:k ) Title Page


Introduction
p(z1:k |xk )p(xk ) Dynamic System
= Bayesian Filters
p(z1:k ) Kalman Filter
Grid-Based Filter
(Bayes rule) Particle Filter
Experiments
Summary

Page 15a of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Let us prove formula (2) (just in order to train calculations
with joint and conditional probabilities. . . )

p(xk |z1:k ) Title Page


Introduction
p(z1:k |xk )p(xk ) Dynamic System
= Bayesian Filters
p(z1:k ) Kalman Filter

p(zk , z1:k1 |xk )p(xk ) Grid-Based Filter


= Particle Filter
p(zk , z1:k1 ) Experiments
Summary

(separate p(z1:k ) into p(zk , z1:k1 )) Page 15b of 45


JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Let us prove formula (2) (just in order to train calculations
with joint and conditional probabilities. . . )

p(xk |z1:k ) Title Page


Introduction
p(z1:k |xk )p(xk ) Dynamic System
= Bayesian Filters
p(z1:k ) Kalman Filter

p(zk , z1:k1 |xk )p(xk ) Grid-Based Filter


= Particle Filter
p(zk , z1:k1 ) Experiments
Summary
p(zk |z1:k1 , xk )p(z1:k1 |xk )p(xk )
= Page 15c of 45
p(zk |z1:k1 )p(z1:k1 )
JJ II
(factorize joint probability: p(a, b|c) = p(a|b, c) p(b|c) and J I
p(a, b) = p(a|b) p(b)) - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Let us prove formula (2) (just in order to train calculations
with joint and conditional probabilities. . . )

p(xk |z1:k ) Title Page


Introduction
p(z1:k |xk )p(xk ) Dynamic System
= Bayesian Filters
p(z1:k ) Kalman Filter

p(zk , z1:k1 |xk )p(xk ) Grid-Based Filter


= Particle Filter
p(zk , z1:k1 ) Experiments
Summary
p(zk |z1:k1 , xk )p(z1:k1 |xk )p(xk )
= Page 15d of 45
p(zk |z1:k1 )p(z1:(k1 ))
JJ II
p(zk |z1:k1 , xk )p(xk |z1:k1 )p(z1:k1 )p(xk ) J I
=
p(zk |z1:k1 )p(z1:k1 )p(xk )
- ,
(Bayes rule) Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Let us prove formula (2) (just in order to train calculations
with joint and conditional probabilities. . . )

p(xk |z1:k ) Title Page


Introduction
p(z1:k |xk )p(xk ) Dynamic System
= Bayesian Filters
p(z1:k ) Kalman Filter

p(zk , z1:k1 |xk )p(xk ) Grid-Based Filter


= Particle Filter
p(zk , z1:k1 ) Experiments
Summary
p(zk |z1:k1 , xk )p(z1:k1 |xk )p(xk )
= Page 15e of 45
p(zk |z1:k1 )p(z1:(k1 ))
JJ II
p(zk |z1:k1 , xk )p(xk |z1:k1 )p(z1:k1 )p(xk ) J I
=
p(zk |z1:k1 )p(z1:k1 )p(xk )
p(zk |xk )p(xk |z1:k1 )
- ,
= Full Screen
p(zk |z1:k1 )
Search

(independence of observations; cancelling out terms) Close


Filter-Workshop
Bucuresti 2003
The Structure of the Update Equation

p(zk |xk ) p(xk |z1:k1 ) Title Page


p(xk |z1:k ) =
p(zk |z1:k1 ) Introduction
Dynamic System
Bayesian Filters
likelihood prior Kalman Filter
posterior = Grid-Based Filter
evidence Particle Filter
Experiments

prior: given by prediction equation Summary

Page 16 of 45
likelihood: given by observation model
JJ II
evidence: the normalizing constant in the denominator J I
- ,
Z
p(zk |z1:k1 ) = p(zk |xk )p(xk |z1:k1 )dxk
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
This theoretically allows an optimal Bayesian solution (in
the sense of computing the posterior pdf).

Title Page
Introduction
Problem: only a conceptual solution; integrals are Dynamic System
not tractable. Bayesian Filters
Kalman Filter
Grid-Based Filter
Particle Filter
But: in some restricted cases, an optimal solution is pos- Experiments
Summary
sible. Two optimal solutions (under restrictive assump-
Page 17 of 45
tions):
JJ II
(standard) Kalman filter J I

grid-based filter - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
4 Kalman Filter
Introduction Title Page
Introduction
Assumptions: Dynamic System
Bayesian Filters
Kalman Filter
posterior at time k 1, i.e. p(xk1 |zk1 ), is Gaussian Grid-Based Filter
Particle Filter

dynamic system characterized by Experiments


Summary

Page 18 of 45
xk = Fk xk1 + Gk vk1
JJ II
zk = Hk xk + Jk nk
J I

both noise vectors Gaussian (covariance matrices are - ,


Full Screen
Qk1 and Rk )
Search
Then new posterior p(xk |zk ) is Gaussian, too, and can be Close
computed using simple linear equations. Filter-Workshop
Bucuresti 2003
optimal solution, but highly restrictive assumptions must
hold

Title Page

Prediction Equation Introduction


Dynamic System
Bayesian Filters
At time k 1: p(xk1 |z1:k1 ) = N (mk1|k1 , Pk1|k1 ) Kalman Filter
Grid-Based Filter
Inserting into (1) yields Particle Filter
Experiments
Summary
p(xk |z1:k1 ) = N (mk|k1 , Pk|k1 ) Page 19 of 45

with JJ II
mk|k1 = Fk mk1|k1 J I
and - ,
Pk|k1 = Gk Qk1 GTk + Fk Pk1|k1 FTk Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Update Equation
Inserting into (2) yields
Title Page

p(xk |z1:k ) = N (mk|k , Pk|k ) Introduction


Dynamic System
Bayesian Filters
with Kalman Filter
Grid-Based Filter
mk|k = mk|k1 + Kk (zk Hk mk|k1 ) Particle Filter
| {z } Experiments
estimated z k Summary

Page 20 of 45
and
Pk|k = Pk|k1 Kk Hk Pk|k1 JJ II
J I
Kalman Gain:
- ,
Kk = Pk|k1 HTk (Hk Pk|k1 HTk + Jk Rk JTk )1 Full Screen
| {z }
Search
Cov [zk ]
Close
Filter-Workshop
Bucuresti 2003
5 Grid-Based Filter
Introduction
Title Page
Introduction
Assumptions: Dynamic System
Bayesian Filters
state space is discrete Kalman Filter
Grid-Based Filter

number of different states (Ns ) is limited Particle Filter


Experiments
(Note: implicitly includes discreteness) Summary

Page 21 of 45
Suppose at time k 1 we have states xi with i = 1, . . . , Ns .
JJ II
Conditional probability of these states:
J I
Pr(xk1 = xi |z1:k1 ) = wik1|k1
- ,
Then the (old) posterior at time k 1 is given by: Full Screen
Ns Search
p(xk1 |z1:k1 ) = wik1|k1 (xk1 xi )
Close
i=1
Filter-Workshop
Bucuresti 2003
Results (Summary)
Both the (new) prior and the (new) posterior have the
same structure: a sum of weighted Dirac peaks: Title Page
Introduction
Dynamic System
Ns Bayesian Filters

p(xk |z1:k1 ) = wik|k1 (xk1 xi ) Kalman Filter


Grid-Based Filter
i=1 Particle Filter
Experiments
Ns Summary
p(xk |z1:k ) = wik|k (xk1 xi ) Page 22 of 45
i=1
JJ II
Note: extension to different sets of states for each time J I
step
- ,
i Full Screen
{x } : i = 1, . . . , Ns {xik } : i = 1, . . . , Ns,k
Search
with time-varying index k is easily possible; the allowed Close
states need not be constant. Filter-Workshop
Bucuresti 2003
Prediction Equation (in Detail)
Inserting into (1) yields
Title Page
Ns Ns Introduction

p(xk |z1:k1 ) = wk1|k1 p(xi |x j )(xk1 xi )


j Dynamic System
Bayesian Filters
i=1 j=1 Kalman Filter
Ns Grid-Based Filter

= wik|k1 (xk1 xi ) Particle Filter


Experiments
i=1 Summary

Page 23 of 45
j
where wik|k1 = Nj=1
s
wk1|k1 p(xi |x j ) JJ II
J I
- ,
(new) prior weights = old posterior weights, Full Screen

reweighted using state transition probabilities Search

Close
Filter-Workshop
Bucuresti 2003
Update Equation (in Detail)
Inserting into (2) yields
Title Page
Ns Introduction

p(xk |z1:k ) = wik|k (xk1 xi ) Dynamic System


Bayesian Filters
i Kalman Filter
Grid-Based Filter
wik|k1 p(zk |xi ) Particle Filter
where wik|k = N j . Experiments
j s wk|k1 p(zk |x j ) Summary

Note: denominator only needed for normalization Page 24 of 45


JJ II
J I

posterior weights = prior weights, reweighted using - ,


likelihoods Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
6 Particle Filter
Suboptimal Approximations Title Page
Introduction
If we want to preserve Kalman filter principle. . . Dynamic System
Bayesian Filters
Kalman Filter
Extended Kalman Filter (EKF) Grid-Based Filter
Particle Filter

Unscented Kalman Filter (UKF) Experiments


Summary

Page 25 of 45
...we get better results, JJ II
J I
BUT: we cannot get rid off Gaussian approximations - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
EKF / UKF:

All these approaches fail if we have Title Page


Introduction

bimodal / multimodal pdfs Dynamic System


Bayesian Filters
Kalman Filter
heavily skewed pdfs Grid-Based Filter
Particle Filter
Experiments
Summary

We need a more general scheme to tackle these problems. Page 26 of 45


JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Particle Filter General Concept
Many different names (do you remember the introduc-
tion?) but the general concept is rather simple: Title Page
Introduction
Dynamic System
Bayesian Filters

PARTICLE FILTER: Kalman Filter


Grid-Based Filter
If we cannot solve the integrals required for a Particle Filter

Bayesian recursive filter analytically . . . we represent Experiments


Summary
the posterior probabilities by a set of randomly cho- Page 27 of 45
sen weighted samples.
JJ II
J I
Note: randomly chosen Monte Carlo - ,
(we are playing roulette / throwing the dice) Full Screen
Increasing number of samples (almost sure) conver- Search
gence to true pdf Close
Filter-Workshop
Bucuresti 2003
Sequential Importance Sampling (SIS)
SIS is the basic framework for most particle filter algo-
rithms. Let Title Page
Introduction
Dynamic System
{xi0:k } : set of support points (samples, particles) Bayesian Filters
Kalman Filter
i = 1, . . . , Ns Grid-Based Filter
Particle Filter
(whole trajectory for each particle!) Experiments

wik : associated weights, normalized to i wik = 1 Summary

Page 28 of 45
Then: JJ II
Ns
p(xk |z1:k ) wik (x0:k xi0:k ) J I
i=1 - ,
(discrete weighted approximation to the true posterior) Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
SIS (continued)
Usually we cannot draw samples xik from p() directly. As-
sume we sample directly from a (different) importance Title Page
Introduction
function q(). Our approximation is still correct (up to Dynamic System
normalization) if Bayesian Filters
Kalman Filter

p(xi0:k |z1:k ) Grid-Based Filter

wik Particle Filter


q(xi0:k |z1:k ) Experiments
Summary

Page 29 of 45
The trick: we can choose q() freely! JJ II
J I
If the importance function is chosen to factorize such that - ,
Full Screen
q(x0:k |z1:k ) = q(xk |x0:k1 , z1:k ) q(x0:k1 |z1:k1 )
Search
then one can augment old particles xi0:k1 by xk
Close
q(xk |x0:k1 , z1:k ) to get new particles xi0:k . Filter-Workshop
Bucuresti 2003
SIS (continued)
Weight update (after some lengthy computations. . . ):
Title Page

p(zk |xik ) p(xik |xik1 ) Introduction

wik = wik1 (3) Dynamic System


q(xik |xi0:k1 , z1:k ) Bayesian Filters
Kalman Filter
Grid-Based Filter
Furthermore, if q(xk |x0:k1 , z1:k ) = q(xk |xk1 , z1:k ) Particle Filter
Experiments
(only dependent on last state and observations): Summary

Ns Page 30 of 45

p(x|z1:k ) wik (xk xik ) JJ II


i=1 J I
(and we need not preserve trajectories xi0:k1 and history - ,
of observations z1:k1 ) Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
SIS Algorithm Pseudo Code

Ns
[{xik , wik }i=1 ] = SIS({xik1 , wik1 }Ni=1s
, zk ) Title Page
Introduction
FOR i = 1 : Ns Dynamic System
draw xik q(xk |xik1 , zk ) Bayesian Filters
Kalman Filter
update weights according to (3)
Grid-Based Filter
END FOR Particle Filter
N
normalize weights to i=1
s
wik = 1 Experiments
Summary

Page 31 of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
PROBLEM: Degeneracy Problem
Problem with SIS approach: after a few iterations, most
particles have negligible weight (the weight is concentrated Title Page
Introduction
on a few particles only) Dynamic System
Bayesian Filters
Counter measures: Kalman Filter
Grid-Based Filter

brute force: many, many samples Ns Particle Filter


Experiments
Summary
good choice of importance density Page 32 of 45

resampling JJ II
J I
Note: amount of degeneracy can be estimated based on - ,
variance of weights [Liu 1996]. Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Optimal Impotance Density:
It can be shown that the optimal importance density is
given by Title Page
Introduction
Dynamic System
q(xk |xk1 , zk )opt = p(xk |xk1 , zk ) Bayesian Filters
Kalman Filter
Grid-Based Filter
Then Z Particle Filter

wik = wik1 p(zk |x0k )p(x0k |xik1 )dx0k Experiments


Summary

Page 33 of 45
Two major drawbacks: usually neither sampling from qo pt
nor solving the integral in wik is possible. . . (but in some JJ II
special cases, it works) J I
Other alternative which is often convenient: - ,
q() = p(xk |xk1 ) (prior). Easy to implement, but does not Full Screen
take measurements into account. Search

Close
Filter-Workshop
Bucuresti 2003
Resampling Approaches
Basic idea of resampling:
Title Page
Introduction
Dynamic System
Whenever degeneracy rises above threshold: replace Bayesian Filters
old set of samples (+ weights) with new set of sam- Kalman Filter
Grid-Based Filter
ples (+ weights), such that sample density better Particle Filter
reflects posterior pdf. Experiments
Summary

Page 34 of 45
This eliminates particles with low weight and chooses more JJ II
particles in more probable regions. J I
Complexity: possible in O(Ns ) operations - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
The resampling Particle
principle: Filters

Title Page
Introduction
Dynamic System
Bayesian Filters
Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
Summary

Page 35 of 45
JJ II
J I
- ,
Full Screen

Search

Close
(graphics taken from Van der Merwe et al.) Filter-Workshop
Bucuresti 2003
General Particle Filter Pseudo Code

Ns Ns
[{xik , wik }i=1 ] = PF({xik1 , wik1 }i=1 , zk ) Title Page
FOR i = 1 : Ns Introduction

draw xik q(xk |xik1 , zk )


Dynamic System
Bayesian Filters
update weights according to (3) Kalman Filter
Grid-Based Filter
END FOR Particle Filter
Ns
normalize weights to i=1 wik =1 Experiments
Summary
IF degeneracy too high
Ns Page 36 of 45
resample {xik , wik }i=1
END IF JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
PROBLEM: Loss of Diversity
No degeneracy problem but new problem arises:
Title Page
Introduction
Dynamic System
Particles with high weight are selected more and Bayesian Filters
more often, others die out slowly Kalman Filter
Grid-Based Filter
loss of diversity or sample impoverishment Particle Filter
Experiments
Summary

For small process noise, all particles can collapse into a Page 37 of 45
single point within a few iterations. JJ II
Other problem: resampling limits the ability to parallelize J I
algorithm. - ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Other Particle Filter Variants
Methods to counteract loss of diversity and degeneracy
problem: Title Page
Introduction

resample-move algorithm Dynamic System


Bayesian Filters

regularization
Kalman Filter
Grid-Based Filter
Particle Filter
Rao-Blackwellisation Experiments
Summary
multiple Monte-Carlo Page 38 of 45

Other particle filter variants found in the literature: JJ II


J I
sampling importance resampling (SIR)
- ,
auxiliary sampling importance resampling (ASIR) Full Screen

regularized particle filter (RPF) Search

Close
... Filter-Workshop
Bucuresti 2003
7 Experiments
see videos...
Title Page
Introduction
Dynamic System
Bayesian Filters
Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
Summary

Page 39 of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
8 Summary
First of all: what I did not talk about. . .
Title Page
Introduction
speed of convergence Dynamic System
Bayesian Filters

number of samples needed Kalman Filter


Grid-Based Filter
Particle Filter
complexity issues / tricks for speed-up of algorithms Experiments
Summary

advanced particle filter variants in detail Page 40 of 45


JJ II
refer to the literature if you want to know more J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Advantages of particle filters (PFs):

can deal with non-linearities


Title Page
can deal with non-Gaussian noise Introduction
Dynamic System
Bayesian Filters
can be implemented in O(Ns ) Kalman Filter
Grid-Based Filter
mostly parallelizable Particle Filter
Experiments
Summary
easy to implement
Page 41 of 45

in contrast to HMM filters (state-space discretized JJ II


to N fixed states) : PFs focus adaptively on probable J I
regions of state-space
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
Thesis:

If you want to solve a filtering problem, then particle Title Page


filters are the best filters you can use, much better Introduction
Dynamic System
than e.g. Kalman filters. Bayesian Filters
Kalman Filter
Grid-Based Filter
Particle Filter
Right or wrong? Experiments
Summary

Page 42 of 45
JJ II
J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
WRONG!
Particle filters include a random element; they only conver-
gence to the true posterior pdf (almost surely) if Ns .
Title Page
Therefore: If the assumptions for Kalman filters or grid- Introduction
Dynamic System
based filters are valid, no PF can outperform them! Bayesian Filters
Kalman Filter
Additionally: depending on the dynamic model, Gaussian Grid-Based Filter
sum filters, unscented Kalman filters or extended Kalman Particle Filter
Experiments
filters may produce satisfactory results at lower computa- Summary
tional cost. Page 43 of 45

(But you should at least try a PF; it is usually better than JJ II


other suboptimal methods!) J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003
PF approaches proved their usefulness in a variety of ap-
plications.
But:
Title Page
Introduction
choice of importance function q() is crucial in PF Dynamic System
Bayesian Filters
design Kalman Filter
Grid-Based Filter
large sample number Ns increases computational ef- Particle Filter
Experiments
fort Summary

Page 44 of 45
potential problems: degeneracy and loss of diversity
JJ II
J I
If these points are taken into account, then particle
filters are an extremely powerful tool for filtering /
- ,
Full Screen
estimation.
Search

Close
(black box usage vs know what youre doing!) Filter-Workshop
Bucuresti 2003
Title Page
Introduction
Dynamic System
Bayesian Filters

Thank you!
Kalman Filter
Grid-Based Filter
Particle Filter
Experiments
Summary

Page 45 of 45
JJ II
This presentation was made with LATEX.
(try to write Bucuresti in Powerpoint. . . ) J I
- ,
Full Screen

Search

Close
Filter-Workshop
Bucuresti 2003

Вам также может понравиться