Expand description

Sampling Importance Resampleing estimation. Also know as a weighted Booststrap.

References [1] “Novel approach to nonlinear-non-Gaussian Bayesian state estimation” NJ Gordon, DJ Salmond, AFM Smith IEE Proceeding-F Vol.140 No.2 April 1993 [2] Building Robust Simulation-based Filter for Evolving Data Sets“ J Carpenter, P Clifford, P Fearnhead Technical Report University of Oxford

A variety of resampling algorithms can be used for SIR. There are implementations for two algorithms: standard_resample: Standard resample algorithm from [1] systematic_resample: A Simple stratified resampler from [2]

NOTES: SIR algorithms is sensitive to the PRNG properties. In particular we require that the uniform random number range be [0..1) NOT [0..1]. Quantisation generated random number must not approach the sample size. This will result in quantisation of the resampling. For example if random identically equal to 0 becomes highly probable due to quantisation this will result in the first sample being selectively draw whatever its likelihood.

Numerics: Resampling requires comparisons of normalised likelihoods. These may become insignificant if likelihoods have a large range. Resampling becomes ill conditioned for these samples.

Structs

Functions

  • Update ‘s’ by selectively copying resamples. Uses a in-place copying algorithm: First copy the live samples (those resampled) to end of s. Replicate live sample in-place start an the begining of s.
  • Generate as sampling function for normally distributed noise.
  • Generate as sampling function for normally distributed coupled noise.
  • Roughen sample state using min max roughening of the samples.
  • Couple noise roughening.
  • Standard resampler from [1]. Algorithm: A sample is chosen once for each time its cumulative likelihood intersects with a uniform random draw. Complexity is that of Vec::sort, O(n * log(n)) worst-case. This complexity is required to sort the uniform random draws made, this allows comparing of the two ordered lists w(cumulative) and ur (the sorted random draws).
  • Systematic resample algorithm from [2]. Algorithm: A particle is chosen once for each time its cumulative likelihood intersects with an equidistant grid. A uniform random draw is chosen to position the grid within the cumulative likelihoods. Complexity O(n)

Type Aliases