|
OpenGM
2.3.x
Discrete Graphical Model Library
|
A framework for message passing algorithms
Cf. F. R. Kschischang, B. J. Frey and H.-A. Loeliger, "Factor Graphs and the Sum-Product Algorithm", IEEE Transactions on Information Theory 47:498-519, 2001.
More...
#include <messagepassing.hxx>
Inheritance diagram for opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >:
Collaboration diagram for opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >:Classes | |
| struct | Parameter |
Public Types | |
| typedef GM | GraphicalModelType |
| typedef ACC | Accumulation |
| typedef ACC | AccumulatorType |
| typedef DIST | Distance |
| typedef UPDATE_RULES::FactorHullType | FactorHullType |
| typedef UPDATE_RULES::VariableHullType | VariableHullType |
| typedef visitors::VerboseVisitor< MessagePassing< GM, ACC, UPDATE_RULES, DIST > > | VerboseVisitorType |
| Visitor. More... | |
| typedef visitors::TimingVisitor< MessagePassing< GM, ACC, UPDATE_RULES, DIST > > | TimingVisitorType |
| Visitor. More... | |
| typedef visitors::EmptyVisitor< MessagePassing< GM, ACC, UPDATE_RULES, DIST > > | EmptyVisitorType |
| Visitor. More... | |
Public Types inherited from opengm::Inference< GM, ACC > | |
| typedef GM | GraphicalModelType |
| typedef ACC | AccumulationType |
| typedef GraphicalModelType::LabelType | LabelType |
| typedef GraphicalModelType::IndexType | IndexType |
| typedef GraphicalModelType::ValueType | ValueType |
| typedef GraphicalModelType::OperatorType | OperatorType |
| typedef GraphicalModelType::FactorType | FactorType |
| typedef GraphicalModelType::IndependentFactorType | IndependentFactorType |
| typedef GraphicalModelType::FunctionIdentifier | FunctionIdentifier |
Public Member Functions | |
| MessagePassing (const GraphicalModelType &, const Parameter &=Parameter()) | |
| std::string | name () const |
| const GraphicalModelType & | graphicalModel () const |
| InferenceTermination | marginal (const size_t, IndependentFactorType &out) const |
| output a solution for a marginal for a specific variable More... | |
| InferenceTermination | factorMarginal (const size_t, IndependentFactorType &out) const |
| output a solution for a marginal for all variables connected to a factor More... | |
| ValueType | convergenceXF () const |
| cumulative distance between all pairs of messages from variables to factors (between the previous and the current interation) More... | |
| ValueType | convergenceFX () const |
| cumulative distance between all pairs of messages from factors to variables (between the previous and the current interation) More... | |
| ValueType | convergence () const |
| cumulative distance between all pairs of messages (between the previous and the current interation) More... | |
| virtual void | reset () |
| InferenceTermination | infer () |
| template<class VisitorType > | |
| InferenceTermination | infer (VisitorType &) |
| void | propagate (const ValueType &=0) |
| invoke one iteration of message passing More... | |
| InferenceTermination | arg (std::vector< LabelType > &, const size_t=1) const |
| output a solution More... | |
| void | setMaxSteps (size_t maxSteps) |
Public Member Functions inherited from opengm::Inference< GM, ACC > | |
| virtual | ~Inference () |
| virtual void | setStartingPoint (typename std::vector< LabelType >::const_iterator) |
| set initial labeling More... | |
| virtual InferenceTermination | args (std::vector< std::vector< LabelType > > &) const |
| virtual ValueType | bound () const |
| return a bound on the solution More... | |
| virtual ValueType | value () const |
| return the solution (value) More... | |
| InferenceTermination | constrainedOptimum (std::vector< IndexType > &, std::vector< LabelType > &, std::vector< LabelType > &) const |
| InferenceTermination | modeFromMarginal (std::vector< LabelType > &) const |
| InferenceTermination | modeFromFactorMarginal (std::vector< LabelType > &) const |
Public Attributes | |
| OPENGM_GM_TYPE_TYPEDEFS | |
A framework for message passing algorithms
Cf. F. R. Kschischang, B. J. Frey and H.-A. Loeliger, "Factor Graphs and the Sum-Product Algorithm", IEEE Transactions on Information Theory 47:498-519, 2001.
Definition at line 50 of file messagepassing.hxx.
| typedef ACC opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::Accumulation |
Definition at line 53 of file messagepassing.hxx.
| typedef ACC opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::AccumulatorType |
Definition at line 54 of file messagepassing.hxx.
| typedef DIST opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::Distance |
Definition at line 56 of file messagepassing.hxx.
| typedef visitors::EmptyVisitor<MessagePassing<GM, ACC, UPDATE_RULES, DIST> > opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::EmptyVisitorType |
Visitor.
Definition at line 65 of file messagepassing.hxx.
| typedef UPDATE_RULES::FactorHullType opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::FactorHullType |
Definition at line 57 of file messagepassing.hxx.
| typedef GM opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::GraphicalModelType |
Definition at line 52 of file messagepassing.hxx.
| typedef visitors::TimingVisitor<MessagePassing<GM, ACC, UPDATE_RULES, DIST> > opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::TimingVisitorType |
Visitor.
Definition at line 63 of file messagepassing.hxx.
| typedef UPDATE_RULES::VariableHullType opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::VariableHullType |
Definition at line 58 of file messagepassing.hxx.
| typedef visitors::VerboseVisitor<MessagePassing<GM, ACC, UPDATE_RULES, DIST> > opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::VerboseVisitorType |
Visitor.
Definition at line 61 of file messagepassing.hxx.
| opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::MessagePassing | ( | const GraphicalModelType & | , |
| const Parameter & | = Parameter() |
||
| ) |
Definition at line 150 of file messagepassing.hxx.
|
inlinevirtual |
output a solution
| [out] | arg | labeling |
| argIndex | solution index (1=best, 2=second best, etc.) |
Reimplemented from opengm::Inference< GM, ACC >.
Definition at line 592 of file messagepassing.hxx.
|
inline |
cumulative distance between all pairs of messages (between the previous and the current interation)
Definition at line 585 of file messagepassing.hxx.
|
inline |
cumulative distance between all pairs of messages from factors to variables (between the previous and the current interation)
Definition at line 569 of file messagepassing.hxx.
|
inline |
cumulative distance between all pairs of messages from variables to factors (between the previous and the current interation)
Definition at line 553 of file messagepassing.hxx.
|
inlinevirtual |
output a solution for a marginal for all variables connected to a factor
| factorIndex | index of the factor | |
| [out] | out | the marginal |
Reimplemented from opengm::Inference< GM, ACC >.
Definition at line 539 of file messagepassing.hxx.
|
inlinevirtual |
Implements opengm::Inference< GM, ACC >.
Definition at line 208 of file messagepassing.hxx.
|
inlinevirtual |
Implements opengm::Inference< GM, ACC >.
Definition at line 214 of file messagepassing.hxx.
|
inline |
Definition at line 223 of file messagepassing.hxx.
|
inlinevirtual |
output a solution for a marginal for a specific variable
| variableIndex | index of the variable | |
| [out] | out | the marginal |
Reimplemented from opengm::Inference< GM, ACC >.
Definition at line 527 of file messagepassing.hxx.
|
inlinevirtual |
Implements opengm::Inference< GM, ACC >.
Definition at line 202 of file messagepassing.hxx.
|
inline |
invoke one iteration of message passing
Definition at line 364 of file messagepassing.hxx.
|
virtual |
Definition at line 179 of file messagepassing.hxx.
|
inline |
Definition at line 127 of file messagepassing.hxx.
| opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >::OPENGM_GM_TYPE_TYPEDEFS |
Definition at line 55 of file messagepassing.hxx.
1.8.9.1