|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
Smoothing a HiddenMarkovFilter [emissions]: CategoricalHistory, the record of its forward pass, whose smooth() runs the backward pass over it, fixed-interval or fixed-lag; its smoothStep() and transitionPosterior(); and mostProbableSequence(), the Viterbi path over the same record, with the ValueSequence it returns (decisions.md [smoothing]). More...
#include <cstddef>#include <iterator>#include <list>#include <optional>#include <utility>#include <EmrysFilter/Core/Allocation.h>#include <EmrysFilter/Core/Macros.h>#include <EmrysFilter/Core/Math.h>#include <EmrysFilter/Core/Multiply.h>#include <EmrysFilter/Core/Weights.h>#include <EmrysFilter/Distributions/Categorical.h>#include <EmrysFilter/Filters/HiddenMarkovFilter.h>#include <EmrysFilter/Smoothers/Lag.h>#include <EmrysFilter/Spaces/Discrete.h>#include <EmrysFilter/Spaces/Space.h>Go to the source code of this file.
Classes | |
| class | Emrys::CategoricalHistory< Space_, Scalar_, Allocator_ > |
| The record of a HiddenMarkovFilter's forward pass that a smoother runs backward over: one CategoricalPredictedJoint per prediction, each with room for its smoothed distribution. More... | |
| struct | Emrys::CategoricalHistory< Space_, Scalar_, Allocator_ >::Step |
| One recorded prediction and its smoothed distribution. More... | |
| struct | Emrys::ValueSequence< Space, Scalar, Allocator > |
| The most probable sequence of values over a CategoricalHistory, and its posterior probability, from mostProbableSequence(). More... | |
Functions | |
| template<typename Space, typename Scalar> | |
| CategoricalParams< Space, Scalar > | Emrys::smoothStep (CategoricalPredictedJoint< Space, Scalar > const &joint, CategoricalParams< Space, Scalar > const &smoothedNext) |
| template<typename Space, typename Scalar> | |
| CategoricalPredictedJoint< Space, Scalar >::MatrixType | Emrys::transitionPosterior (CategoricalPredictedJoint< Space, Scalar > const &joint, CategoricalParams< Space, Scalar > const &smoothedNext) |
| template<typename Space, typename Scalar, typename Allocator> | |
| ValueSequence< Space, Scalar, Allocator > | Emrys::mostProbableSequence (CategoricalHistory< Space, Scalar, Allocator > const &history, CategoricalParams< Space, Scalar > const &latest) |
Smoothing a HiddenMarkovFilter [emissions]: CategoricalHistory, the record of its forward pass, whose smooth() runs the backward pass over it, fixed-interval or fixed-lag; its smoothStep() and transitionPosterior(); and mostProbableSequence(), the Viterbi path over the same record, with the ValueSequence it returns (decisions.md [smoothing]).
The filter is unchanged but for predictJoint() (see CategoricalPredictedJoint in HiddenMarkovFilter.h). Read HiddenMarkovFilter.h first; the design review is docs/guide/smoothing.md.