Theory and Implementation of Particle Filters

Slides:



Advertisements
Similar presentations
Spring Process Control Spring Outline 1.Optimization 2.Statistical Process Control 3.In-Process Control.
Advertisements

Dynamic Spatial Mixture Modelling and its Application in Cell Tracking - Work in Progress - Chunlin Ji & Mike West Department of Statistical Sciences,
17 May Multiple Sites. 17 May Multiple Sites This presentation assumes you are already familiar with Doors and all its standard commands It.
An Advanced Shell Theory Based Tire Model by D. Bozdog, W. W. Olson Department of Mechanical, Industrial and Manufacturing Engineering The 23 rd Annual.
Interaction of Particles with Matter
Jose-Luis Blanco, Javier González, Juan-Antonio Fernández-Madrigal University of Málaga (Spain) Dpt. of System Engineering and Automation May Pasadena,
8 April Doors TM Set System Options. 8 April Set System Options Allows you to set certain standard Doors operating parameters and enable certain.
Probabilistic Reasoning over Time
CSCE643: Computer Vision Bayesian Tracking & Particle Filtering Jinxiang Chai Some slides from Stephen Roth.
1 Approximated tracking of multiple non-rigid objects using adaptive quantization and resampling techniques. J. M. Sotoca 1, F.J. Ferri 1, J. Gutierrez.
Visual Object Tracking Using Particle Filters : A Survey Satarupa Mukherjee Department of Computing Science, University of Alberta, Edmonton, Canada
Introduction to Sampling based inference and MCMC Ata Kaban School of Computer Science The University of Birmingham.
Probabilistic Robotics Bayes Filter Implementations Particle filters.
Artificial Learning Approaches for Multi-target Tracking Jesse McCrosky Nikki Hu.
Particle Filters.
Particle Filters Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics TexPoint fonts used in EMF. Read.
A brief Introduction to Particle Filters
Sérgio Pequito Phd Student
Nonlinear and Non-Gaussian Estimation with A Focus on Particle Filters Prasanth Jeevan Mary Knox May 12, 2006.
Particle filters (continued…). Recall Particle filters –Track state sequence x i given the measurements ( y 0, y 1, …., y i ) –Non-linear dynamics –Non-linear.
Particle Filters for Mobile Robot Localization 11/24/2006 Aliakbar Gorji Roborics Instructor: Dr. Shiri Amirkabir University of Technology.
A Probabilistic Approach to Collaborative Multi-robot Localization Dieter Fox, Wolfram Burgard, Hannes Kruppa, Sebastin Thrun Presented by Rajkumar Parthasarathy.
Today Introduction to MCMC Particle filters and MCMC
Comparative survey on non linear filtering methods : the quantization and the particle filtering approaches Afef SELLAMI Chang Young Kim.
End of Chapter 8 Neil Weisenfeld March 28, 2005.
Probabilistic Robotics Bayes Filter Implementations Particle filters.
Darryl MorrellStochastic Modeling Seminar1 Particle Filtering.
Particle Filtering for Non- Linear/Non-Gaussian System Bohyung Han
Sampling Methods for Estimation: An Introduction
Novel approach to nonlinear/non- Gaussian Bayesian state estimation N.J Gordon, D.J. Salmond and A.F.M. Smith Presenter: Tri Tran
Bayesian Filtering for Location Estimation D. Fox, J. Hightower, L. Liao, D. Schulz, and G. Borriello Presented by: Honggang Zhang.
An introduction to Particle filtering
HCI / CprE / ComS 575: Computational Perception
Bayesian Filtering for Robot Localization
Muhammad Moeen YaqoobPage 1 Moment-Matching Trackers for Difficult Targets Muhammad Moeen Yaqoob Supervisor: Professor Richard Vinter.
Mobile Robot controlled by Kalman Filter
Particle Filtering in Network Tomography
1 Miodrag Bolic ARCHITECTURES FOR EFFICIENT IMPLEMENTATION OF PARTICLE FILTERS Department of Electrical and Computer Engineering Stony Brook University.
Markov Localization & Bayes Filtering
Object Tracking using Particle Filter
From Bayesian Filtering to Particle Filters Dieter Fox University of Washington Joint work with W. Burgard, F. Dellaert, C. Kwok, S. Thrun.
SIS Sequential Importance Sampling Advanced Methods In Simulation Winter 2009 Presented by: Chen Bukay, Ella Pemov, Amit Dvash.
Particle Filtering (Sequential Monte Carlo)
Probabilistic Robotics: Monte Carlo Localization
Jamal Saboune - CRV10 Tutorial Day 1 Bayesian state estimation and application to tracking Jamal Saboune VIVA Lab - SITE - University.
Probabilistic Robotics Bayes Filter Implementations.
Particle Filters for Shape Correspondence Presenter: Jingting Zeng.
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Deterministic vs. Random Maximum A Posteriori Maximum Likelihood Minimum.
Computer Science, Software Engineering & Robotics Workshop, FGCU, April 27-28, 2012 Fault Prediction with Particle Filters by David Hatfield mentors: Dr.
Overview Particle filtering is a sequential Monte Carlo methodology in which the relevant probability distributions are iteratively estimated using the.
Particle Filters.
Mixture Models, Monte Carlo, Bayesian Updating and Dynamic Models Mike West Computing Science and Statistics, Vol. 24, pp , 1993.
Forward-Scan Sonar Tomographic Reconstruction PHD Filter Multiple Target Tracking Bayesian Multiple Target Tracking in Forward Scan Sonar.
-Arnaud Doucet, Nando de Freitas et al, UAI
Mobile Robot Localization (ch. 7)
Maximum a posteriori sequence estimation using Monte Carlo particle filters S. J. Godsill, A. Doucet, and M. West Annals of the Institute of Statistical.
Boosted Particle Filter: Multitarget Detection and Tracking Fayin Li.
Sequential Monte-Carlo Method -Introduction, implementation and application Fan, Xin
Mixture Kalman Filters by Rong Chen & Jun Liu Presented by Yusong Miao Dec. 10, 2003.
CSE-473 Project 2 Monte Carlo Localization. Localization as state estimation.
Short Introduction to Particle Filtering by Arthur Pece [ follows my Introduction to Kalman filtering ]
SLAM Tutorial (Part I) Marios Xanthidis.
Nonlinear State Estimation
Introduction to Sampling Methods Qi Zhao Oct.27,2004.
The Unscented Particle Filter 2000/09/29 이 시은. Introduction Filtering –estimate the states(parameters or hidden variable) as a set of observations becomes.
Rao-Blackwellised Particle Filtering for Dynamic Bayesian Network Arnaud Doucet Nando de Freitas Kevin Murphy Stuart Russell.
CS Statistical Machine learning Lecture 25 Yuan (Alan) Qi Purdue CS Nov
Introduction to Sampling based inference and MCMC
Probabilistic Robotics
Filtering and State Estimation: Basic Concepts
Presentation transcript:

Theory and Implementation of Particle Filters Miodrag Bolic Assistant Professor School of Information Technology and Engineering University of Ottawa mbolic@site.uottawa.ca 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Big picture Observed signal 1 t Particle Filter Estimation sensor Observed signal 2 t t Goal: Estimate a stochastic process given some noisy observations Concepts: Bayesian filtering Monte Carlo sampling 12 Nov 2004

Particle filtering operations Particle filter is a technique for implementing recursive Bayesian filter by Monte Carlo sampling The idea: represent the posterior density by a set of random particles with associated weights. Compute estimates based on these samples and weights Posterior density Particle filters are based on recursive generation of random measures that approximate the distributions of the unknowns. Random measures: particles and importance weights. As new observations become available, the particles and the weights are propagated by exploiting Bayes theorem. Sample space 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Motivation The trend of addressing complex problems continues Large number of applications require evaluation of integrals Non-linear models Non-Gaussian noise 12 Nov 2004

Sequential Monte Carlo Techniques Bootstrap filtering The condensation algorithm Particle filtering Interacting particle approximations Survival of the fittest 12 Nov 2004

History First attempts – simulations of growing polymers M. N. Rosenbluth and A.W. Rosenbluth, “Monte Carlo calculation of the average extension of molecular chains,” Journal of Chemical Physics, vol. 23, no. 2, pp. 356–359, 1956. First application in signal processing - 1993 N. J. Gordon, D. J. Salmond, and A. F. M. Smith, “Novel approach to nonlinear/non-Gaussian Bayesian state estimation,” IEE Proceedings-F, vol. 140, no. 2, pp. 107–113, 1993. Books A. Doucet, N. de Freitas, and N. Gordon, Eds., Sequential Monte Carlo Methods in Practice, Springer, 2001. B. Ristic, S. Arulampalam, N. Gordon, Beyond the Kalman Filter: Particle Filters for Tracking Applications, Artech House Publishers, 2004. Tutorials M. S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, “A tutorial on particle filters for online nonlinear/non-gaussian Bayesian tracking,” IEEE Transactions on Signal Processing, vol. 50, no. 2, pp. 174–188, 2002. 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Applications Signal processing Communications Other applications1) Image processing and segmentation Model selection Tracking and navigation Communications Channel estimation Blind equalization Positioning in wireless networks Other applications1) Biology & Biochemistry Chemistry Economics & Business Geosciences Immunology Materials Science Pharmacology & Toxicology Psychiatry/Psychology Social Sciences A. Doucet, S.J. Godsill, C. Andrieu, "On Sequential Monte Carlo Sampling Methods for Bayesian Filtering", Statistics and Computing, vol. 10, no. 3, pp. 197-208, 2000 12 Nov 2004

Bearings-only tracking The aim is to find the position and velocity of the tracked object. The measurements taken by the sensor are the bearings or angles with respect to the sensor. Initial position and velocity are approximately known. System and observation noises are Gaussian. Usually used with a passive sonar. 12 Nov 2004

Bearings-only tracking States: position and velocity xk=[xk, Vxk, yk, Vyk]T Observations: angle zk Observation equation: zk=atan(yk/ xk)+vk State equation: xk=Fxk-1+ Guk 12 Nov 2004

Bearings-only tracking Blue – True trajectory Red – Estimates 12 Nov 2004

Car positioning Observations are the velocity and turn information1) A car is equipped with an electronic roadmap The initial position of a car is available with 1km accuracy In the beginning, the particles are spread evenly on the roads As the car is moving the particles concentrate at one place 1) Gustafsson et al., “Particle Filters for Positioning, Navigation, and Tracking,” IEEE Transactions on SP, 2002 12 Nov 2004

Detection over flat-fading channels Detection of data transmitted over unknown Rayleigh fading channel The temporal correlation in the channel is modeled using AR(r) process At any instant of time t, the unknowns are , and , and our main objective is to detect the transmitted symbol sequentially g(t) s(t) y(t) h(t) Channel v(t) st yt Sampling 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Fundamental concepts State space representation Bayesian filtering Monte-Carlo sampling Importance sampling State space model Solution Problem Estimate posterior Integrals are not tractable Monte Carlo Sampling Difficult to draw samples Importance Sampling 12 Nov 2004

Representation of dynamic systems The state sequence is a Markov random process State equation: xk=fx(xk-1, uk) xk state vector at time instant k fx state transition function uk process noise with known distribution Observation equation: zk=fz(xk, vk) zk observations at time instant k fx observation function vk observation noise with known distribution 12 Nov 2004

Representation of dynamic systems The alternative representation of dynamic system is by densities. State equation: p(xk|xk-1) Observation equation: p(zk|xk) The form of densities depends on: Functions fx(·) and fz(·) Densities of uk and vk 12 Nov 2004

Bayesian Filtering The objective is to estimate unknown state xk, based on a sequence of observations zk, k=0,1,… . Objective in Bayesian approach ↓ Find posterior distribution p(x0:k|z1:k) By knowing posterior distribution all kinds of estimates can be computed: 12 Nov 2004

Update and propagate steps k=0 Bayes theorem Filtering density: Predictive density: z0 z1 z2 p(x0) Update Propagate Update Propagate Update Propagate … p(x0|z0) p(x1|z0) p(x1|z1) p(x2|z1) p(xk|zk-1) p(xk|zk) p(xk+1|zk) 12 Nov 2004

Update and propagate steps k>0 Derivation is based on Bayes theorem and Markov property Filtering density: Predictive density: 12 Nov 2004

Meaning of the densities Bearings-only tracking problem p(xk|z1:k) posterior What is the probability that the object is at the location xk for all possible locations xk if the history of measurements is z1:k? p(xk|xk-1) prior The motion model – where will the object be at time instant k given that it was previously at xk-1? p(zk|xk) likelihood The likelihood of making the observation zk given that the object is at the location xk. 12 Nov 2004

Bayesian filtering - problems Optimal solution in the sense of computing posterior The solution is conceptual because integrals are not tractable Closed form solutions are possible in a small number of situations Gaussian noise process and linear state space model ↓ Optimal estimation using the Kalman filter Idea: use Monte Carlo techniques 12 Nov 2004

Monte Carlo method Example: Estimate the variance of a zero mean Gaussian process Monte Carlo approach: Simulate M random variables from a Gaussian distribution Compute the average 12 Nov 2004

Importance sampling Classical Monte Carlo integration – Difficult to draw samples from the desired distribution Importance sampling solution: Draw samples from another (proposal) distribution Weight them according to how they fit the original distribution Free to choose the proposal density Important: It should be easy to sample from the proposal density Proposal density should resemble the original density as closely as possible 12 Nov 2004

Importance sampling Evaluation of integrals Monte Carlo approach: Simulate M random variables from proposal density (x) Compute the average 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Sequential importance sampling Idea: Update filtering density using Bayesian filtering Compute integrals using importance sampling The filtering density p(xk|z1:k) is represented using particles and their weights Compute weights using: Posterior x 12 Nov 2004

Sequential importance sampling Let the proposal density be equal to the prior Particle filtering steps for m=1,…,M: 1. Particle generation 2a. Weight computation 2b. Weight normalization 3. Estimate computation 12 Nov 2004

Resampling Problems: Weight Degeneration Wastage of computational resources Solution  RESAMPLING Replicate particles in proportion to their weights Done again by random sampling Resampling eliminates particles with small weights and replicates the ones with large weights Number of replications – proportional to the weight 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Resampling x 12 Nov 2004

Particle filtering algorithm Initialize particles New observation Particle generation 1 2 . . . M 1 2 . . . M Weigth computation Normalize weights Output Output estimates Resampling More observations? yes no Exit 12 Nov 2004

Bearings-only tracking example MODEL States: xk=[xk, Vxk, yk, Vyk]T Observations: zk Noise State equation: xk=Fxk-1+ Guk Observation equation: zk=atan(yk/ xk)+vk ALGORITHM Particle generation Generate M random numbers Particle computation Weight computation Weight normalization Resampling Computation of the estimates 12 Nov 2004

Bearings-Only Tracking Example 12 Nov 2004

Bearings-Only Tracking Example 12 Nov 2004

Bearings-Only Tracking Example Filtering marginal distribuution p(xy(k)|y(1:k)) 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

General particle filter If the proposal is a prior density, then there can be a poor overlap between the prior and posterior Idea: include the observations into the proposal density This proposal density minimize 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Advantages of particle filters Ability to represent arbitrary densities Adaptive focusing on probable regions of state-space Dealing with non-Gaussian noise The framework allows for including multiple models (tracking maneuvering targets) 12 Nov 2004

Disadvantages of particle filters High computational complexity It is difficult to determine optimal number of particles Number of particles increase with increasing model dimension Potential problems: degeneracy and loss of diversity The choice of importance density is crucial 12 Nov 2004

Variations Rao-Blackwellization: Some components of the model may have linear dynamics and can be well estimated using a conventional Kalman filter. The Kalman filter is combined with a particle filter to reduce the number of particles needed to obtain a given level of performance. 12 Nov 2004

Variations Gaussian particle filters Approximate the predictive and filtering density with Gaussians Moments of these densities are computed from the particles Advantage: there is no need for resampling Restriction: filtering and predictive densities are unimodal 12 Nov 2004

Outline Motivation Applications Fundamental concepts Sample importance resampling Advantages and disadvantages Implementation of particle filters in hardware 12 Nov 2004

Challenges and results Reducing computational complexity Randomness – difficult to exploit regular structures in VLSI Exploiting temporal and spatial concurrency Results New resampling algorithms suitable for hardware implementation Fast particle filtering algorithms that do not use memories First distributed algorithms and architectures for particle filters 12 Nov 2004

Complexity Complexity Bearings-only tracking problem Initialize particles New observation Particle generation 4M random number generations 1 2 . . . M 1 2 . . . M M exponential and arctangent functions Weigth computation Normalize weights Output estimates Resampling Propagation of the particles More observations? yes Bearings-only tracking problem Number of particles M=1000 no Exit 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Mapping to the parallel architecture Start New observation Particle generation Processing Element 1 Processing Element 2 1 1 2 . . . M M Central Unit 1 1 2 . . . M M Weight computation Processing Element 3 Processing Element 4 Resampling Why resampling? Propagation of particles Processing elements (PE) Particle generation Weight Calculation Central Unit Algorithm for particle propagation Resampling Exit 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Particles after resampling Propagation of particles p PE 2 PE 1 PE 3 PE 4 Particles after resampling Disadvantages of the particle propagation step Random communication pattern Decision about connections is not known before the run time Requires dynamic type of a network Speed-up is significantly affected Processing Element 1 Processing Element 2 Central Unit Processing Element 3 Processing Element 4 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Parallel resampling 1 2 3 4 1 2 1 2 3 4 3 4 Solution Advantages Result The way in which Monte Carlo sampling is performed is modified Advantages Propagation is only local Propagation is controlled in advance by a designer Performances are the same as in the sequential applications Result Speed-up is almost equal to the number of PEs (up to 8 PEs) 12 Nov 2004

Architectures for parallel resampling Controlled particle propagation after resampling Architecture that allows adaptive connection among the processing elements PE1 PE3 Central Unit PE2 PE4 12 Nov 2004

Limit: Available memory Space exploration Hardware platform is Xilinx Virtex-II Pro Clock period is 10ns PFs are applied to the bearings-only tracking problem Limit: Available memory Limit: Logic blocks 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004

Summary Very powerful framework for estimating parameters of non-linear and non-Gaussian models Main research directions Finding new applications for particle filters Developing variations of particle filters which have reduced complexity Finding the optimal parameters of the algorithms (number of particles, divergence tests) Challenge Popularize the particle filter so that it becomes a standard tool for solving many problems in industry Finding applicactions: applying them to the new applications or increasing complexity and accuracy of the models that are used. 12 Nov 2004 SPOT presentation, University of Ottawa, 12 Nov 2004