Abstract
Resampling is a well-known statistical algorithm that is commonly applied in the context of Particle Filters (PFs) in order to perform state estimation for non-linear non-Gaussian dynamic models. As the models become more complex and accurate, the run-time of PF applications becomes increasingly slow. Parallel computing can help to address this. However, resampling (and, hence, PFs as well) necessarily involves a bottleneck, the redistribution step, which is notoriously challenging to parallelize if using textbook parallel computing techniques. A state-of-the-art redistribution takes O((log2N)2) computations on Distributed Memory (DM) architectures, which most supercomputers adopt, whereas redistribution can be performed in O(log2N) on Shared Memory (SM) architectures, such as GPU or mainstream CPUs. In this paper, we propose a novel parallel redistribution for DM that achieves an O(log2N) time complexity. We also present empirical results that indicate that our novel approach outperforms the O((log2N)2) approach.
Highlights
Since we focus on proposing a novel fully-balanced redistribution, to perform the first step, we focus on using systematic resampling [31], which is known as Minimum Variance Resampling (MVR) [7,25,26,30]
In the experiment for redistribution, we compare Rotational Nearly Sort and Split (RoSS), the novel fully-balanced algorithm presented in this paper, with Nearly-Sort-Based Redistribution (N-R) and Based Redistribution (B-R), two fully-balanced redistributions that take O((log2 N )2 ) steps
We present RoSS, a novel fully-balanced redistribution for global resampling in Sequential Importance Resampling (SIR) Particle Filters (PFs) on distributed memory environments
Summary
It is often necessary to estimate the state of a system, given a mathematical model for the system and a stream of noisy observations. A resampling algorithm is applied to correct for degeneracy by replacing the particles that are diverging from the true state with copies of the particles that are not doing so [1] This sampling–resampling approach is highly flexible, such that PFs find application in a wide range of fields, ranging from machine learning [2] to medical research [3], fault prediction [4], weather forecasting [5], tracking [6] or, broadly speaking, any domain involving decision making in response to streaming data. Modern efforts of making models more detailed have translated to an increasing demand in making PFs more accurate This demand can be satisfied in several ways, ranging from applying better proposal distributions [10] to collecting more measurements [11]. Parallel computing becomes necessary in order to compensate for this side-effect
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.