Skip to main content
Article thumbnail
Location of Repository

SMCTC : sequential Monte Carlo in C++

By Adam M. Johansen


Sequential Monte Carlo methods are a very general class of Monte Carlo methods for sampling from sequences of distributions. Simple examples of these algorithms are used very widely in the tracking and signal processing literature. Recent developments illustrate that these techniques have much more general applicability, and can be applied very effectively to statistical inference problems. Unfortunately, these methods are often perceived as being computationally expensive and difficult to implement. This article seeks to address both of these problems. A C++ template class library for the efficient and convenient implementation of very general Sequential Monte Carlo algorithms is presented. Two example applications are provided: a simple particle filter for illustrative purposes and a state-of-the-art algorithm for rare event estimation

Topics: HA, QA76
Publisher: University of California, Los Angeles
Year: 2009
OAI identifier:

Suggested articles


  1. (2006). A
  2. (2002). A Sequential Particle Filter Method for Static Models." doi
  3. (1999). An Improved Particle Filter for Non-Linear Problems."
  4. (2000). An Open Graph Visualization System and Its Applications to Software Engineering." Software: Practice and Experience, doi
  5. (2001). Annealed Importance Sampling."
  6. (1953). Equation of State Calculations by Fast Computing Machines." doi
  7. (2001). Following a Moving Target { Monte Carlo Inference for Dynamic Bayesian Models." doi
  8. (2005). Genealogical Particle Analysis of Rare Events." doi
  9. (2008). Generalized Linear Mixed Model Analysis Via Sequential Monte Carlo Sampling." doi
  10. (2006). GNU Scienti Library Reference Manual. Revised 2nd edition. Network Theory Limited.
  11. Jasra A (2006a). \Sequential Monte Carlo Methods for Bayesian Computation." In Bayesian Statistics 8. doi
  12. Jasra A (2006b). \Sequential Monte Carlo Samplers." doi
  13. (2008). Kaehler A doi
  14. Meng XL (1998).\Simulating Normalizing Constants: From Importance Sampling to Bridge Sampling to Path Sampling." doi
  15. (1996). Monte Carlo Filter and Smoother for Non-Gaussian Nonlinear State Space Models." doi
  16. (1970). Monte Carlo Sampling Methods Using Markov Chains and Their Applications." doi
  17. (2001). Monte Carlo Strategies in Scienti Computing.
  18. (1993). Novel Approach to Nonlinear/Non-Gaussian Bayesian State Estimation." Radar and Signal Processing, doi
  19. (2009). Particle Markov Chain Monte Carlo." doi
  20. (2008). Particle Methods for Maximum Likelihood Parameter Estimation in Latent Variable Models." doi
  21. (2007). PFlib: An Object Oriented MATLAB Toolbox for Particle Filtering." doi
  22. (2004). Population Monte Carlo."
  23. (1998). Sequential Monte Carlo Methods for Dynamic Systems." doi
  24. (2001). Sequential Monte Carlo Methods in Practice. doi
  25. (2007). Software Foundation
  26. Statistics for Engineering and Information Science. doi
  27. (1991). The C++ Programming Language. 2nd edition.
  28. (2000). The Unscented Particle Filter."
  29. Tira-Thompson EJ (2007). Exploring Tekkotsu Programming on Mobile Robots. Carnegie Mellon University, draft version (incomplete) edition.
  30. (2005). Topics In Sequential Monte Carlo Samplers.
  31. (2008). Using the MATLAB pro (The MathWorks, Inc.

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.