Motivation For continuous spaces: often no analytical formulas for - - PDF document

motivation
SMART_READER_LITE
LIVE PREVIEW

Motivation For continuous spaces: often no analytical formulas for - - PDF document

Particle Filters Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics Motivation For continuous spaces: often no analytical formulas for Bayes filter updates Solution 1: Histogram


slide-1
SLIDE 1

Page 1

Particle Filters

Pieter Abbeel UC Berkeley EECS

Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics

2

§ For continuous spaces: often no analytical formulas for Bayes filter updates § Solution 1: Histogram Filters: (not studied in this lecture) § Partition the state space § Keep track of probability for each partition § Challenges: § What is the dynamics for the partitioned model? § What is the measurement model? § Often very fine resolution required to get reasonable results § Solution 2: Particle Filters: § Represent belief by random samples § Can use actual dynamics and measurement models § Naturally allocates computational resources where required (~ adaptive

resolution)

§ Aka Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter

Motivation

slide-2
SLIDE 2

Page 2

Sample-based Localization (sonar)

n Given a sample-based representation

  • f Bel(xt) = P(xt | z1, …, zt, u1, …, ut)

Find a sample-based representation

  • f Bel(xt+1) = P(xt+1 | z1, …, zt, zt+1 , u1, …, ut+1)

Problem to be Solved

St = {xt

1, xt 2,..., xt N}

St+1 = {xt+1

1 , xt+1 2 ,..., xt+1 N }

slide-3
SLIDE 3

Page 3

n Given a sample-based representation

  • f Bel(xt) = P(xt | z1, …, zt, u1, …, ut)

Find a sample-based representation

  • f P(xt+1 | z1, …, zt, u1, …, ut+1)

n Solution:

n For i=1, 2, …, N

n Sample xi

t+1 from P(Xt+1 | Xt = xi t)

Dynamics Update

St = {xt

1, xt 2,..., xt N}

Sampling Intermezzo

slide-4
SLIDE 4

Page 4

n Given a sample-based representation of

P(xt+1 | z1, …, zt) Find a sample-based representation of P(xt+1 | z1, …, zt, zt+1) = C * P(xt+1 | z1, …, zt) * P(zt+1 | xt+1)

n Solution:

n For i=1, 2, …, N

n w(i)

t+1 = w(i) t* P(zt+1 | Xt+1 = x(i) t+1)

n

the distribution is represented by the weighted set of samples

Observation update

{xt+1

1 , xt+1 2 ,..., xt+1 N }

{< xt+1

1 ,wt+1 1 >,< xt+1 2 ,wt+1 2 >,...,< xt+1 N ,wt+1 N >}

n

Sample x1

1, x2 1, …, xN 1 from P(X1)

n

Set wi

1= 1 for all i=1,…,N

n

For t=1, 2, …

n

Dynamics update:

n For i=1, 2, …, N n Sample xi

t+1 from P(Xt+1 | Xt = xi t)

n

Observation update:

n For i=1, 2, …, N n wi

t+1 = wi t* P(zt+1 | Xt+1 = xi t+1)

n

At any time t, the distribution is represented by the weighted set of samples { <xi

t, wi t> ; i=1,…,N}

Sequential Importance Sampling (SIS) Particle Filter

slide-5
SLIDE 5

Page 5

n The resulting samples are only weighted by the evidence n The samples themselves are never affected by the evidence

à Fails to concentrate particles/computation in the high probability areas of the distribution P(xt | z1, …, zt)

SIS particle filter major issue

n At any time t, the distribution is represented by the weighted

set of samples { <xi

t, wi t> ; i=1,…,N}

à Sample N times from the set of particles à The probability of drawing each particle is given by its

importance weight à More particles/computation focused on the parts of the state space with high probability mass

Sequential Importance Resampling (SIR)

slide-6
SLIDE 6

Page 6

  • 1. Algorithm particle_filter( St-1, ut , zt):

2.

  • 3. For Generate new samples

4. Sample index j(i) from the discrete distribution given by wt-1 5. Sample from using and 6. Compute importance weight 7. Update normalization factor 8. Insert

  • 9. For

10. Normalize weights , = ∅ = η

t

S n i … 1 = } , { > < ∪ =

i t i t t t

w x S S

i t

w + =η η

i t

x p(xt | xt!1,ut)

) ( 1 i j t

x − ) | (

i t t i t

x z p w = n i … 1 = η /

i t i t

w w = ut

Particle Filters

slide-7
SLIDE 7

Page 7 ) | ( ) ( ) ( ) | ( ) ( ) | ( ) ( x z p x Bel x Bel x z p w x Bel x z p x Bel α α α = ← ←

− − −

Sensor Information: Importance Sampling

' d ) ' ( ) ' | ( ) (

,

x x Bel x u x p x Bel

Robot Motion

slide-8
SLIDE 8

Page 8 ) | ( ) ( ) ( ) | ( ) ( ) | ( ) ( x z p x Bel x Bel x z p w x Bel x z p x Bel α α α = ← ←

− − −

Sensor Information: Importance Sampling

Robot Motion

' d ) ' ( ) ' | ( ) (

,

x x Bel x u x p x Bel

slide-9
SLIDE 9

Page 9

20 21

slide-10
SLIDE 10

Page 10

22 23

slide-11
SLIDE 11

Page 11

24 25

slide-12
SLIDE 12

Page 12

26 27

slide-13
SLIDE 13

Page 13

28 29

slide-14
SLIDE 14

Page 14

30 31

slide-15
SLIDE 15

Page 15

32 33

slide-16
SLIDE 16

Page 16

34 35

slide-17
SLIDE 17

Page 17

36 37

slide-18
SLIDE 18

Page 18

42

Summary – Particle Filters

§

Particle filters are an implementation of recursive Bayesian filtering

§

They represent the posterior by a set of weighted samples

§

They can model non-Gaussian distributions

§

Proposal to draw new samples

§

Weight to account for the differences between the proposal and the target

43

Summary – PF Localization

§

In the context of localization, the particles are propagated according to the motion model.

§

They are then weighted according to the likelihood of the

  • bservations.

§

In a re-sampling step, new particles are drawn with a probability proportional to the likelihood of the observation.