Improved Parallel Resampling Methods for Particle Filtering

Particle filter techniques are common methods used to estimate the evolving state of nonlinear, non-Gaussian time-variant systems by utilizing a periodic sequence of noisy measurements. The accuracy of particle filter methods has often been shown to be superior to other state estimation techniques, such as the extended Kalman filter (EKF), for many applications. Unfortunately, the high computational cost and highly nondeterministic runtime behavior of particle filters often preclude their use in hard, real-time environments, where filter response must meet the strict timing requirements of the application. Particle filter algorithms are composed of three main stages: prediction, update, and resampling. General purpose graphics processing units (GPGPUs) have been successfully employed in previous research to accelerate the computation of both the prediction and update stages by exploiting their natural fine-grain parallelism. This research focuses on accelerating the resampling stage for (GPGPU) execution, which has been much more difficult to parallelize due to it’s apparent inherent sequentially. This paper introduces a novel GPGPU implementation of the systematic and stratified resampling algorithms that exploit the monotonically increasing nature of the prefix-sum and the evolutionary nature of the particle weighting process to allow the re-indexing portion of the algorithms to occur in a two-phase, multi-threaded manner. This resulting measured factor of performance improvement for the systematic and stratified algorithms was 15 $\times$ and 32 $\times$ , respectively, over the serial implementations.

[1]  A. Doucet,et al.  A Tutorial on Particle Filtering and Smoothing: Fifteen years later , 2008 .

[2]  Thomas B. Schön,et al.  Marginalized particle filters for mixed linear/nonlinear state-space models , 2005, IEEE Transactions on Signal Processing.

[3]  Evaluation Of The Performance Of GPU Global Memory Coalescing , 2017 .

[4]  Mübeccel Demirekler,et al.  Memory Coalescing Implementation of Metropolis Resampling on Graphics Processing Unit , 2018, J. Signal Process. Syst..

[5]  N. Gordon,et al.  Performance Issues in Non-Gaussian Filtering Problems , 2006, 2006 IEEE Nonlinear Statistical Signal Processing Workshop.

[6]  Nando de Freitas,et al.  An Introduction to Sequential Monte Carlo Methods , 2001, Sequential Monte Carlo Methods in Practice.

[7]  P. Fearnhead,et al.  Improved particle filter for nonlinear problems , 1999 .

[8]  Anthony Lee,et al.  Parallel Resampling in the Particle Filter , 2013, 1301.4019.

[9]  Neil J. Gordon,et al.  A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking , 2002, IEEE Trans. Signal Process..

[10]  Petar M. Djuric,et al.  Resampling Methods for Particle Filtering: Classification, implementation, and strategies , 2015, IEEE Signal Processing Magazine.

[11]  P. Djurić,et al.  A fast-weighted Bayesian bootstrap filter for nonlinear model state estimation , 1997, IEEE Transactions on Aerospace and Electronic Systems.

[12]  Juan M. Corchado,et al.  Fight sample degeneracy and impoverishment in particle filters: A review of intelligent approaches , 2013, Expert Syst. Appl..

[13]  J. Zuo Dynamic resampling for alleviating sample impoverishment of particle filter , 2013 .

[14]  Fredrik Gustafsson,et al.  A New Formulation of the Rao-Blackwellized Particle Filter , 2007, 2007 IEEE/SP 14th Workshop on Statistical Signal Processing.

[15]  Jun S. Liu,et al.  Sequential Imputations and Bayesian Missing Data Problems , 1994 .

[16]  An-Yeu Wu,et al.  Efficient parallelized particle filter design on CUDA , 2010, 2010 IEEE Workshop On Signal Processing Systems.

[17]  Simon Maskell,et al.  A Single Instruction Multiple Data Particle Filter , 2006, 2006 IEEE Nonlinear Statistical Signal Processing Workshop.

[18]  Jörg Conradt,et al.  Event-based particle filtering for robot self-localization , 2012, 2012 IEEE International Conference on Robotics and Biomimetics (ROBIO).

[19]  Lawrence M. Murray,et al.  GPU Acceleration of Runge-Kutta Integrators , 2012, IEEE Transactions on Parallel and Distributed Systems.

[20]  Pierre E. Jacob,et al.  Sequential Bayesian inference for implicit hidden Markov models and current limitations , 2015, 1505.04321.

[21]  Marcin Grzegorzek,et al.  Recovering from sample impoverishment in context of indoor localisation , 2017, 2017 International Conference on Indoor Positioning and Indoor Navigation (IPIN).

[22]  N. Shephard,et al.  BAYESIAN INFERENCE BASED ONLY ON SIMULATED LIKELIHOOD: PARTICLE FILTER ANALYSIS OF DYNAMIC ECONOMIC MODELS , 2011, Econometric Theory.

[23]  Luc Van Gool,et al.  An adaptive color-based particle filter , 2003, Image Vis. Comput..

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

[25]  J. Geweke,et al.  BAYESIAN INFERENCE IN ECONOMETRIC MODELS USING , 1989 .

[26]  Fredrik Gustafsson,et al.  Particle Filtering: The Need for Speed , 2010, EURASIP J. Adv. Signal Process..

[27]  Carles Ferrer,et al.  Particle filters and resampling techniques: Importance in computational complexity analysis , 2013, 2013 Conference on Design and Architectures for Signal and Image Processing.

[28]  G. Kitagawa Monte Carlo Filter and Smoother for Non-Gaussian Nonlinear State Space Models , 1996 .

[29]  W. Gilks,et al.  Following a moving target—Monte Carlo inference for dynamic Bayesian models , 2001 .

[30]  Yuksel Ozan Basciftci,et al.  A Parallel Resampling Algorithm for Particle Filtering on Shared-Memory Architectures , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.