Here is a brief list of the features of particles:

  • state-space models may be defined as python objects, in a basic form of probabilistic programming.
  • Bootstrap filter, guided filter, auxiliary particle filter.
  • exact filtering/smoothing algorithms: Kalman (linear Gaussian models), and forward-backward (finite hidden Markov models).
  • Several resampling schemes are implemented.
  • Sequential quasi-Monte Carlo (and related tools: Hilbert ordering, RQMC sampling).
  • smoothing: on-line and off-line, O(N^2) and O(N) versions of standard algorithms (FFBS, two-filter)
  • SMC samplers: IBIS (data-tempering) and SMC tempering. Static models may be defined as Python objects.
  • Bayesian inference for state-space models: several PMCMC (particle MCMC algorithms are implemented), such as PMMH and Particle Gibbs. Also SMC^2.
  • genealogy-based variance estimators (Chan & Lai, 2013; Lee & Whiteley, 2018; Olsson & Douc, 2019).
  • a Pima indian example is included.