about summary refs log tree commit diff
path: root/sourcecodes/bnt-master/BNT/inference/online/@smoother_engine/smoother_engine.m
blob: adf7ede8183e55afcdf7c95af5fd2370892a3eca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
function engine = smoother_engine(tbn_engine)
% SMOOTHER_ENGINE Create an engine which does offline (fixed-interval) smoothing in O(T) space/time
% function engine = smoother_engine(tbn_engine)
%
% tbn_engine is any 2TBN inference engine which supports the following methods:
% fwd, fwd1, back, backT, back, marginal_nodes and marginal_family.

engine.tbn_engine = tbn_engine;
engine.b = []; % space to store smoothed messages
engine = class(engine, 'smoother_engine');
%engine = class(engine, 'smoother_engine', inf_engine(bnet_from_engine(tbn_engine)));