Particle Filters
Importance Sampling
Importance Sampling where Unfortunately it is often not possible to sample directly from the posterior distribution, but we can use importance sampling. Let p(x) be a pdf from which it is difficult to draw samples. Let xi ~ q(x), i=1, …, N, be samples that are easily generated from a proposal pdf q, which is called an importance density. Then approximation to the density p is given by where
Bayesian Importance Sampling By drawing samples from a known easy to sample proposal distribution we obtain: where are normalized weights.
Sensor Information: Importance Sampling
Sequential Importance Sampling (I) Factorizing the proposal distribution: and remembering that the state evolution is modeled as a Markov process we obtain a recursive estimate of the importance weights: Factorizing is obtained by recursively applying
Sequential Importance Sampling (SIS) Particle Filter SIS Particle Filter Algorithm for i=1:N Draw a particle Assign a weight end (k is index over time and i is the particle index)
Rejection Sampling
Rejection Sampling Let us assume that f(x)<1 for all x Sample x from a uniform distribution Sample c from [0,1] if f(x) > c keep the sample otherwise reject the sample f(x’) c c’ OK f(x) x x’
Importance Sampling with Resampling: Landmark Detection Example
Distributions
Distributions Wanted: samples distributed according to p(x| z1, z2, z3)
This is Easy! We can draw samples from p(x|zl) by adding noise to the detection parameters.
Importance sampling with Resampling After Resampling
Particle Filter Algorithm
weight = target distribution / proposal distribution
Particle Filter Algorithm Importance factor for xit: draw xit from p(xt | xit-1,ut-1) draw xit-1 from Bel(xt-1)
Particle Filter Algorithm Algorithm particle_filter( St-1, ut-1 zt): For Generate new samples Sample index j(i) from the discrete distribution given by wt-1 Sample from using and Compute importance weight Update normalization factor Insert For Normalize weights
Particle Filter Algorithm
Particle Filter for Localization
Particle Filter in Matlab
Matlab code: truex is a vector of 100 positions to be tracked.
Application: Particle Filter for Localization (Known Map)
Resampling
Resampling
Resampling
Resampling Algorithm Initialize threshold Algorithm systematic_resampling(S,n): For Generate cdf Initialize threshold For Draw samples … While ( ) Skip until next threshold reached Insert Increment threshold Return S’ Also called stochastic universal sampling
Low Variance Resampling
SIS weights
Derivation of SIS weights (I) The main idea is Factorizing : and Our goal is to expand p and q in time t
Derivation of SIS weights (II)
Derivation of SIS weights (II) and under Markov assumptions
SIS Particle Filter Foundation At each time step k Random samples are drawn from the proposal distribution for i=1, …, N They represent posterior distribution using a set of samples or particles Since the weights are given by and q factorizes as
Sequential Importance Sampling (II) Choice of the proposal distribution: Choose proposal function to minimize variance of (Doucet et al. 1999): Although common choice is the prior distribution: We obtain then
Sequential Importance Sampling (III) Illustration of SIS: Degeneracy problems: variance of importance ratios increases stochastically over time (Kong et al. 1994; Doucet et al. 1999). In most cases then after a few iterations, all but one particle will have negligible weight
Sequential Importance Sampling (IV) Illustration of degeneracy:
SIS - why variance increase Suppose we want to sample from the posterior choose a proposal density to be very close to the posterior density Then and So we expect the variance to be close to 0 to obtain reasonable estimates thus a variance increase has a harmful effect on accuracy
Sampling - Importance Resampling
Sampling-Importance Resampling SIS suffers from degeneracy problems so we don’t want to do that! Introduce a selection (resampling) step to eliminate samples with low importance ratios and multiply samples with high importance ratios. Resampling maps the weighted random measure on to the equally weighted random measure by sampling uniformly with replacement from with probabilities Scheme generates children such that and satisfies:
Basic SIR Particle Filter - Schematic Initialisation measurement Resampling step Importance sampling step Extract estimate,
Basic SIR Particle Filter algorithm (I) Initialisation For sample and set Importance Sampling step For sample For compute the importance weights wik Normalise the importance weights, and set
Basic SIR Particle Filter algorithm (II) Resampling step Resample with replacement particles: from the set: according to the normalised importance weights, Set proceed to the Importance Sampling step, as the next measurement arrives.
Resampling x
Generic SIR Particle Filter algorithm M. S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, “A tutorial on particle filters …,” IEEE Trans. on Signal Processing, 50( 2), 2002.
Improvements to SIR (I) Variety of resampling schemes with varying performance in terms of the variance of the particles : Residual sampling (Liu & Chen, 1998). Systematic sampling (Carpenter et al., 1999). Mixture of SIS and SIR, only resample when necessary (Liu & Chen, 1995; Doucet et al., 1999). Degeneracy may still be a problem: During resampling a sample with high importance weight may be duplicated many times. Samples may eventually collapse to a single point.
Improvements to SIR (II) To alleviate numerical degeneracy problems, sample smoothing methods may be adopted. Roughening (Gordon et al., 1993). Adds an independent jitter to the resampled particles Prior boosting (Gordon et al., 1993). Increase the number of samples from the proposal distribution to M>N, but in the resampling stage only draw N particles.
Improvements to SIR (III) Local Monte Carlo methods for alleviating degeneracy: Local linearisation - using an EKF (Doucet, 1999; Pitt & Shephard, 1999) or UKF (Doucet et al, 2000) to estimate the importance distribution. Rejection methods (Müller, 1991; Doucet, 1999; Pitt & Shephard, 1999). Auxiliary particle filters (Pitt & Shephard, 1999) Kernel smoothing (Gordon, 1994; Hürzeler & Künsch, 1998; Liu & West, 2000; Musso et al., 2000). MCMC methods (Müller, 1992; Gordon & Whitby, 1995; Berzuini et al., 1997; Gilks & Berzuini, 1998; Andrieu et al., 1999).
Improvements to SIR (IV) Illustration of SIR with sample smoothing:
Ingredients for SMC Importance sampling function Redistribution scheme Gordon et al Optimal UKF pdf from UKF at Redistribution scheme Gordon et al SIR Liu & Chen Residual Carpenter et al Systematic Liu & Chen, Doucet et al Resample when necessary Careful initialisation procedure (for efficiency)
Sources Longin Jan Latecki Keith Copsey Paul E. Rybski Cyrill Stachniss Sebastian Thrun Alex Teichman Michael Pfeiffer J. Hightower L. Liao D. Schulz G. Borriello Honggang Zhang Wolfram Burgard Dieter Fox Giorgio Grisetti Maren Bennewitz Christian Plagemann Dirk Haehnel Mike Montemerlo Nick Roy Kai Arras Patrick Pfaff Miodrag Bolic Haris Baltzakis