EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
Loading...
Searching...
No Matches
Emrys::CategoricalPredictedJoint< Space, Scalar > Struct Template Reference

One prediction of a HiddenMarkovFilter as a smoother needs it: the distribution the step started from, the prediction, and the matrix that moved one to the other. More...

#include <EmrysFilter/Filters/HiddenMarkovFilter.h>

Public Types

using MatrixType = typename MarkovChain<Space, Scalar>::MatrixType
 the transitions' type

Public Attributes

CategoricalParams< Space, Scalar > filtered
 \( p(x_k \mid z_{1:k}) \), the state before the step
CategoricalParams< Space, Scalar > predicted
 the state after it, before the next update
MatrixType transitions
 \( K \), with predicted \( = K^T \) filtered

Detailed Description

template<DiscreteSpace Space, RealScalar Scalar>
struct Emrys::CategoricalPredictedJoint< Space, Scalar >

One prediction of a HiddenMarkovFilter as a smoother needs it: the distribution the step started from, the prediction, and the matrix that moved one to the other.

The discrete counterpart of PredictedJoint (decisions.md [smoothing]): with \( K \) the transitions, \( \mathrm{predicted} = K^T \mathrm{filtered} \) exactly, so the joint of the values before and after the step is \( \mathrm{filtered}_i K_{ij} \). For a MarkovChain \( K \) is \( \Pi \); for a ContinuousTimeMarkovChain over \( \Delta t \) it is \( e^{Q \Delta t} \); and for an ArrivalInterval it is the step \( e^{(Q - \Lambda) \Delta t} [\Lambda] \) divided by its total, which is no longer stochastic, since the step observed something. CategoricalHistory records them.

Template Parameters
Spacethe discrete space
Scalarscalar type of the probabilities

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