Algorithmic and Architectural Optimizations for Computationally Efficient Particle Filtering

In this paper, we analyze the computational challenges in implementing particle filtering, especially to video sequences. Particle filtering is a technique used for filtering nonlinear dynamical systems driven by non-Gaussian noise processes. It has found widespread applications in detection, navigation, and tracking problems. Although, in general, particle filtering methods yield improved results, it is difficult to achieve real time performance. In this paper, we analyze the computational drawbacks of traditional particle filtering algorithms, and present a method for implementing the particle filter using the Independent Metropolis Hastings sampler, that is highly amenable to pipelined implementations and parallelization. We analyze the implementations of the proposed algorithm, and, in particular, concentrate on implementations that have minimum processing times. It is shown that the design parameters for the fastest implementation can be chosen by solving a set of convex programs. The proposed computational methodology was verified using a cluster of PCs for the application of visual tracking. We demonstrate a linear speedup of the algorithm using the methodology proposed in the paper.

[1]  Rong Chen,et al.  A Theoretical Framework for Sequential Importance Sampling with Resampling , 2001, Sequential Monte Carlo Methods in Practice.

[2]  W. K. Hastings,et al.  Monte Carlo Sampling Methods Using Markov Chains and Their Applications , 1970 .

[3]  H. Tjelmeland,et al.  Using all Metropolis-Hastings proposals to estimate mean values , 2004 .

[4]  Anthony Skjellum,et al.  A High-Performance, Portable Implementation of the MPI Message Passing Interface Standard , 1996, Parallel Comput..

[5]  Frank Dellaert,et al.  MCMC-based particle filtering for tracking a variable number of interacting targets , 2005, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[6]  Petar M. Djuric,et al.  Architectures for efficient implementation of particle filters , 2004 .

[7]  Hoon Kim,et al.  Monte Carlo Statistical Methods , 2000, Technometrics.

[8]  Petar M. Djuric,et al.  Resampling algorithms and architectures for distributed particle filters , 2005, IEEE Transactions on Signal Processing.

[9]  Petar M. Djuric,et al.  Resampling Algorithms for Particle Filters: A Computational Complexity Perspective , 2004, EURASIP J. Adv. Signal Process..

[10]  N. Gordon,et al.  Novel approach to nonlinear/non-Gaussian Bayesian state estimation , 1993 .

[11]  William Gropp,et al.  Users guide for mpich, a portable implementation of MPI , 1996 .

[12]  Ankur Srivastava,et al.  Algorithmic and architectural design methodology for particle filters in hardware , 2005, 2005 International Conference on Computer Design.

[13]  Petar M. Djuric,et al.  Generic Hardware Architectures for Sampling and Resampling in Particle Filters , 2005, EURASIP J. Adv. Signal Process..

[14]  T. Başar,et al.  A New Approach to Linear Filtering and Prediction Problems , 2001 .

[15]  Donald Geman,et al.  Stochastic Relaxation, Gibbs Distributions, and the Bayesian Restoration of Images , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[16]  Michael Isard,et al.  Contour Tracking by Stochastic Propagation of Conditional Density , 1996, ECCV.

[17]  Stephen P. Boyd,et al.  Convex Optimization , 2004, Algorithms and Theory of Computation Handbook.

[18]  Rama Chellappa,et al.  Visual tracking and recognition using appearance-adaptive models in particle filters , 2004, IEEE Transactions on Image Processing.

[19]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[20]  Hans-Hellmut Nagel,et al.  Towards Active Machine-Vision-Based Driver Assistance for Urban Areas , 2002, International Journal of Computer Vision.

[21]  Simon J. Godsill,et al.  On sequential simulation-based methods for Bayesian filtering , 1998 .

[22]  R. Tweedie,et al.  Rates of convergence of the Hastings and Metropolis algorithms , 1996 .

[23]  Simon J. Godsill,et al.  On sequential Monte Carlo sampling methods for Bayesian filtering , 2000, Stat. Comput..

[24]  Rama Chellappa,et al.  Structure from Motion Using Sequential Monte Carlo Methods , 2004, International Journal of Computer Vision.

[25]  M. Pitt,et al.  Filtering via Simulation: Auxiliary Particle Filters , 1999 .

[26]  Timothy J. Robinson,et al.  Sequential Monte Carlo Methods in Practice , 2003 .

[27]  Jun S. Liu,et al.  Sequential Monte Carlo methods for dynamic systems , 1997 .

[28]  S. Chib,et al.  Understanding the Metropolis-Hastings Algorithm , 1995 .