Public Member Functions | Protected Member Functions
BFL::Optimalimportancefilter< StateVar, MeasVar > Class Template Reference

Particular particle filter: Proposal PDF = Optimal Importance function. More...

#include <optimalimportancefilter.h>

Inheritance diagram for BFL::Optimalimportancefilter< StateVar, MeasVar >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 OptimalImportanceFilter (MCPdf< StateVar > *prior, int resampleperiod=0, double resamplethreshold=0, int resamplescheme=DEFAULT_RS)
 Constructor.
 OptimalImportanceFilter (const OptimalImportanceFilter< StateVar, MeasVar > &filt)
 Copy constructor.
virtual void Update (SystemModel< StateVar > *const sysmodel, const StateVar &u, MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z, const StateVar &s)
virtual void Update (SystemModel< StateVar > *const sysmodel, MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z, const StateVar &s)
virtual void Update (SystemModel< StateVar > *const sysmodel, MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z)
virtual void Update (SystemModel< StateVar > *const sysmodel, const StateVar &u, MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z)
virtual void Update (SystemModel< StateVar > *const sysmodel, const StateVar &u)
 Only sysupdate.
virtual void Update (SystemModel< StateVar > *const sysmodel)
virtual void Update (MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z, const StateVar &s)
 Only measupdate.
virtual void Update (MeasurementModel< MeasVar, StateVar > *const measmodel, const MeasVar &z)
virtual ~OptimalImportanceFilter ()
 Destructor.

Protected Member Functions

virtual void ConstructProposal (SystemModel< StateVar > *const sysmodel, MeasurementModel< MeasVar, StateVar > *const measmodel)
 Construct Optimal importance density from a sys and meas. model.

Detailed Description

template<typename StateVar, typename MeasVar>
class BFL::Optimalimportancefilter< StateVar, MeasVar >

Particular particle filter: Proposal PDF = Optimal Importance function.

This is one (simple) particular implementation of a particle filter, in which the proposal density is equal to the pdf $ P(x_k | x_{k-1}, z_k) $. Note that this pdf can only be easily (analytically) determined for a limited class of models! The current implementation focusses on systems with a linear measurement model.

See also:
    @Article{         doucet98bis,
    author =       {Doucet, Arnaud and Godsill, Simon and Andrieu, Christophe},
    title =        {On Sequential Monte Carlo Sampling Methods for
                    Bayesian Filtering},
    journal =      {Statistics and Computing},
    year =         {2000},
    volume =       {10},
    number =       {3},
    pages =        {197--208},
    }
    

for a more thorough discussion about all these issues and the possible suboptimal alternatives in case one is not able to sample from the optimal importance function.

Definition at line 67 of file optimalimportancefilter.h.


Constructor & Destructor Documentation

template<typename StateVar , typename MeasVar >
virtual BFL::Optimalimportancefilter< StateVar, MeasVar >::~OptimalImportanceFilter ( ) [virtual]

Destructor.


Member Function Documentation

template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::ConstructProposal ( SystemModel< StateVar > *const  sysmodel,
MeasurementModel< MeasVar, StateVar > *const  measmodel 
) [protected, virtual]

Construct Optimal importance density from a sys and meas. model.

Parameters:
sysmodelsystem model to use
measmodelmeasurement model to use for proposal construction
template<typename StateVar , typename MeasVar >
BFL::Optimalimportancefilter< StateVar, MeasVar >::OptimalImportanceFilter ( MCPdf< StateVar > *  prior,
int  resampleperiod = 0,
double  resamplethreshold = 0,
int  resamplescheme = DEFAULT_RS 
)

Constructor.

Precondition:
you created the necessary models and the prior
Parameters:
priorpointer to the Monte Carlo Pdf prior density
resampleperiodfixed resampling period (if desired)
resamplethresholdthreshold used when dynamic resampling
resampleschemeresampling scheme, see header file for different defines and their meaning
template<typename StateVar , typename MeasVar >
BFL::Optimalimportancefilter< StateVar, MeasVar >::OptimalImportanceFilter ( const OptimalImportanceFilter< StateVar, MeasVar > &  filt)

Copy constructor.

template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel,
const StateVar u,
MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z,
const StateVar s 
) [virtual]
template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel,
MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z,
const StateVar s 
) [virtual]
template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel,
MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z 
) [virtual]
template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel,
const StateVar u,
MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z 
) [virtual]
template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel,
const StateVar u 
) [virtual]

Only sysupdate.

template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( SystemModel< StateVar > *const  sysmodel) [virtual]
template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z,
const StateVar s 
) [virtual]

Only measupdate.

template<typename StateVar , typename MeasVar >
virtual void BFL::Optimalimportancefilter< StateVar, MeasVar >::Update ( MeasurementModel< MeasVar, StateVar > *const  measmodel,
const MeasVar z 
) [virtual]

The documentation for this class was generated from the following file:


bfl
Author(s): Klaas Gadeyne, Wim Meeussen, Tinne Delaet and many others. See web page for a full contributor list. ROS package maintained by Wim Meeussen.
autogenerated on Fri Aug 28 2015 10:10:22