13 #ifndef __defined_libdai_mr_h
14 #define __defined_libdai_mr_h
25 #include <boost/dynamic_bitset.hpp>
43 std::vector<std::vector<Real> >
tJ;
48 std::vector<std::vector<Real> >
M;
50 std::vector<std::vector<std::vector<Real> > >
cors;
53 typedef boost::dynamic_bitset<>
sub_nb;
56 std::vector<Real>
Mag;
80 DAI_ENUM(InitType,RESPPROP,CLAMPING,EXACT);
97 MR() :
DAIAlgFG(),
supported(),
G(),
tJ(),
theta(),
M(),
cors(),
Mag(),
_maxdiff(),
_iters(), props() {}
112 virtual std::string
name()
const {
return "MR"; }
116 virtual std::vector<Factor>
beliefs()
const;
117 virtual Real logZ()
const { DAI_THROW(NOT_IMPLEMENTED);
return 0.0; }
119 virtual void init(
const VarSet & ) { DAI_THROW(NOT_IMPLEMENTED); }
145 Real Omega(
size_t i,
size_t _j,
size_t _l);
154 Real T(
size_t i,
size_t _j);
157 Real Gamma(
size_t i,
size_t _j,
size_t _l1,
size_t _l2);
160 Real Gamma(
size_t i,
size_t _l1,
size_t _l2);