ParticleFilter Class Template Reference

Inheritance diagram for ParticleFilter:

Inheritance graph
[legend]

List of all members.


Detailed Description

template<class T = unsigned int>
class indii::ml::filter::ParticleFilter< T >

Particle filter.

Author:
Lawrence Murray <lawrence@indii.org>
Version:
Rev
Date:
Date
Parameters:
T The type of time.
ParticleFilter is suitable for systems with nonlinear transition and measurement functions, approximating state and noise with indii::ml::aux::DiracMixturePdf distributions.

See also:
indii::ml::filter for general usage guidelines.

Definition at line 32 of file ParticleFilter.hpp.


Public Member Functions

 ParticleFilter (ParticleFilterModel< T > *model, indii::ml::aux::DiracMixturePdf &p_x0)
 Create new particle filter.
virtual ~ParticleFilter ()
 Destructor.
virtual
ParticleFilterModel
< T > * 
getModel ()
 Get the model being estimated.
virtual void filter (const T tnp1)
 Advance system.
virtual void filter (const indii::ml::aux::vector &ytn)
 Update with measurement.
virtual void filter (const T tnp1, const indii::ml::aux::vector &ytnp1)
 Advance system to time of next measurement.
virtual
indii::ml::aux::DiracMixturePdf 
measure ()
 Apply the measurement function to the current filtered state to obtain an estimated measurement.
void resample (ParticleResampler *resampler)
 Resample the filtered state.

Constructor & Destructor Documentation

ParticleFilter ( ParticleFilterModel< T > *  model,
indii::ml::aux::DiracMixturePdf p_x0 
) [inline]

Create new particle filter.

Parameters:
model Model to estimate.
p_x0 $p(\mathbf{x}_0)$; prior over the initial state $\mathbf{x}_0$.

Definition at line 107 of file ParticleFilter.hpp.

~ParticleFilter (  )  [inline, virtual]

Destructor.

Definition at line 115 of file ParticleFilter.hpp.


Member Function Documentation

indii::ml::filter::ParticleFilterModel< T > * getModel (  )  [inline, virtual]

Get the model being estimated.

Returns:
The model being estimated.

Definition at line 121 of file ParticleFilter.hpp.

void filter ( const T  tnp1  )  [inline, virtual]

Advance system.

Parameters:
tnp1 $t_{n+1}$; the time to which to advance the system. This must be greater than the current time $t_n$.

Definition at line 126 of file ParticleFilter.hpp.

void filter ( const indii::ml::aux::vector ytn  )  [inline, virtual]

Update with measurement.

Parameters:
ytn $\mathbf{y}(t_n)$; measurement at the current time.

Definition at line 152 of file ParticleFilter.hpp.

void filter ( const T  tnp1,
const indii::ml::aux::vector ytnp1 
) [inline, virtual]

Advance system to time of next measurement.

Parameters:
tnp1 $t_{n+1}$; the time to which to advance the system. This must be greater than the current time $t_n$.
ytnp1 $\mathbf{y}_{n+1}$; measurement at time $t_{n+1}$.

Implements Filter< T, indii::ml::aux::DiracMixturePdf >.

Definition at line 168 of file ParticleFilter.hpp.

indii::ml::aux::DiracMixturePdf measure (  )  [inline, virtual]

Apply the measurement function to the current filtered state to obtain an estimated measurement.

Returns:
The estimated measurement.

Implements Filter< T, indii::ml::aux::DiracMixturePdf >.

Definition at line 196 of file ParticleFilter.hpp.

void resample ( ParticleResampler resampler  )  [inline]

Resample the filtered state.

Parameters:
resampler A particle resampler.
Resamples the filtered state using the given ParticleResampler. Zero or more resample() calls may be made between each call of filter() to resample the filtered state as desired.

Calling this method and passing in the resampler (visitor pattern) is preferred to separate calls to getFilteredState(), ParticleResampler::resample() and setFilteredState().

Definition at line 213 of file ParticleFilter.hpp.


Generated on Wed Dec 17 15:11:58 2008 for dysii Dynamical Systems Library by  doxygen 1.5.3