bdm::MPF< BM_T > Class Template Reference

Marginalized Particle filter. More...

#include <particles.h>

List of all members.

Classes

class  mpfepdf
 internal class for MPDF providing composition of eEmp with external components

Public Member Functions

 MPF ()
 Default constructor.
void set_parameters (mpdf *par0, mpdf *obs0, int n0, RESAMPLING_METHOD rm=SYSTEMATIC)
void set_statistics (epdf *epdf0, const BM_T *BMcond0)
void bayes (const vec &dt)
 Incremental Bayes rule.
const epdfposterior () const
const epdf_e () const
void set_options (const string &opt)
 Set postrior of rvc to samples from epdf0. Statistics of BMs are not re-computed! Use only for initialization!
BM_BM (int i)
 Access function.
vec * __w ()
 access function
virtual string to_string ()
 This method returns a basic info about the current instance.
virtual void from_setting (const Setting &set)
 This method arrange instance properties according the data stored in the Setting structure.
virtual void to_setting (Setting &set) const
 This method save all the instance properties into the Setting structure.
virtual void validate ()
 This method TODO.
Constructors
void set_statistics (const vec w0, epdf *epdf0)
Constructors
virtual BM_copy_ () const
Mathematical operations
virtual void bayesB (const mat &Dt)
 Batch Bayes rule (columns of Dt are observations).
virtual double logpred (const vec &dt) const
vec logpred_m (const mat &dt) const
 Matrix version of logpred.
virtual epdfepredictor () const
 Constructs a predictive density $ f(d_{t+1} |d_{t}, \ldots d_{0}) $.
virtual mpdfpredictor () const
 Constructs a conditional density 1-step ahead predictor.
Access to attributes
const RV_drv () const
void set_drv (const RV &rv)
void set_rv (const RV &rv)
double _ll () const
void set_evalll (bool evl0)

Protected Attributes

int n
 number of particles;
eEmp est
 posterior density
vec & _w
 pointer into eEmp
Array< vec > & _samples
 pointer into eEmp
mpdfpar
 Parameter evolution model.
mpdfobs
 Observation model.
RESAMPLING_METHOD resmethod
 which resampling method will be used
RV drv
 Random variable of the data (optional).
double ll
 Logarithm of marginalized data likelihood.
bool evalll
 If true, the filter will compute likelihood of the data record and store it in ll . Set to false if you want to save computational time.
Options
bool opt_L_smp
 Log all samples.
bool opt_L_wei
 Log all samples.

Extension to conditional BM

This extension is useful e.g. in Marginalized Particle Filter (bdm::MPF). Alternatively, it can be used for automated connection to DS when the condition is observed

const RV_rvc () const
 access function
virtual void condition (const vec &val)
 Substitute val for rvc.
RV rvc
 Name of extension variable.

Logging of results

virtual void log_add (logger &L, const string &name="")
 Add all logged variables to a logger.
virtual void logit (logger &L)
ivec LIDs
 IDs of storages in loggers 4:[1=mean,2=lb,3=ub,4=ll].
ivec LFlags
 Flags for logging - same size as LIDs, each entry correspond to the same in LIDs.


Detailed Description

template<class BM_T>
class bdm::MPF< BM_T >

Marginalized Particle filter.

Trivial version: proposal = parameter evolution, observation model is not used. (it is assumed to be part of BM).


Member Function Documentation

virtual BM* bdm::BM::_copy_ (  )  const [inline, virtual, inherited]

Copy function required in vectors, Arrays of BM etc. Have to be DELETED manually! Prototype:

 BM* _copy_() const {return new BM(*this);} 

Reimplemented in bdm::ARX, bdm::KalmanCh, bdm::EKF< sq_T >, bdm::EKFCh, and bdm::BMEF.

template<class BM_T >
void bdm::MPF< BM_T >::bayes ( const vec &  dt  )  [inline, virtual]

Incremental Bayes rule.

Parameters:
dt vector of input data

Reimplemented from bdm::PF.

References bdm::mpdf::_e(), bdm::PF::_samples, bdm::PF::_w, bdm::PF::est, bdm::epdf::evallog(), bdm::PF::par, bdm::eEmp::resample(), bdm::PF::resmethod, and bdm::mpdf::samplecond().

virtual double bdm::BM::logpred ( const vec &  dt  )  const [inline, virtual, inherited]

Evaluates predictive log-likelihood of the given data record I.e. marginal likelihood of the data with the posterior integrated out.

Reimplemented in bdm::ARX, bdm::MixEF, and bdm::multiBM.

Referenced by bdm::BM::logpred_m().


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

Generated on Wed Jul 1 13:05:57 2009 for mixpp by  doxygen 1.5.8