opengm::Inference< GM, ACC > Class Template Reference

Inference algorithm interface. More...

#include <inference.hxx>

Inheritance diagram for opengm::Inference< GM, ACC >:
Inheritance graph
[legend]

List of all members.

Public Types

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

virtual ~Inference ()
virtual std::string name () const =0
virtual const GraphicalModelTypegraphicalModel () const =0
virtual InferenceTermination infer ()=0
virtual void setStartingPoint (typename std::vector< LabelType >::const_iterator)
 set initial labeling
virtual InferenceTermination arg (std::vector< LabelType > &, const size_t=1) const
 output a solution
virtual InferenceTermination args (std::vector< std::vector< LabelType > > &) const
virtual InferenceTermination marginal (const size_t, IndependentFactorType &) const
 output a solution for a marginal for a specific variable
virtual InferenceTermination factorMarginal (const size_t, IndependentFactorType &) const
 output a solution for a marginal for all variables connected to a factor
virtual ValueType bound () const
 return a bound on the solution
virtual ValueType value () const
 return the solution (value)
InferenceTermination constrainedOptimum (std::vector< IndexType > &, std::vector< LabelType > &, std::vector< LabelType > &) const
InferenceTermination modeFromMarginal (std::vector< LabelType > &) const
InferenceTermination modeFromFactorMarginal (std::vector< LabelType > &) const

Detailed Description

template<class GM, class ACC>
class opengm::Inference< GM, ACC >

Inference algorithm interface.

Definition at line 34 of file inference.hxx.


Member Typedef Documentation

template<class GM, class ACC>
typedef ACC opengm::Inference< GM, ACC >::AccumulationType
template<class GM, class ACC>
typedef GraphicalModelType::FactorType opengm::Inference< GM, ACC >::FactorType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 43 of file inference.hxx.

template<class GM, class ACC>
typedef GraphicalModelType::FunctionIdentifier opengm::Inference< GM, ACC >::FunctionIdentifier

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 45 of file inference.hxx.

template<class GM, class ACC>
typedef GM opengm::Inference< GM, ACC >::GraphicalModelType
template<class GM, class ACC>
typedef GraphicalModelType::IndependentFactorType opengm::Inference< GM, ACC >::IndependentFactorType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 44 of file inference.hxx.

template<class GM, class ACC>
typedef GraphicalModelType::IndexType opengm::Inference< GM, ACC >::IndexType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 40 of file inference.hxx.

template<class GM, class ACC>
typedef GraphicalModelType::LabelType opengm::Inference< GM, ACC >::LabelType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 39 of file inference.hxx.

template<class GM, class ACC>
typedef GraphicalModelType::OperatorType opengm::Inference< GM, ACC >::OperatorType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 42 of file inference.hxx.

template<class GM, class ACC>
typedef GraphicalModelType::ValueType opengm::Inference< GM, ACC >::ValueType

Reimplemented in opengm::Bruteforce< GM, ACC >, and opengm::SwendsenWang< GM, ACC >.

Definition at line 41 of file inference.hxx.


Constructor & Destructor Documentation

template<class GM, class ACC>
virtual opengm::Inference< GM, ACC >::~Inference (  )  [inline, virtual]

Definition at line 47 of file inference.hxx.


Member Function Documentation

template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::arg ( std::vector< LabelType > &  arg,
const size_t  argIndex = 1 
) const [inline, virtual]
template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::args ( std::vector< std::vector< LabelType > > &  out  )  const [inline, virtual]

Reimplemented in opengm::AStar< GM, ACC >, and opengm::LPCplex< GM, ACC >.

Definition at line 93 of file inference.hxx.

template<class GM , class ACC >
GM::ValueType opengm::Inference< GM, ACC >::bound (  )  const [inline, virtual]
template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::constrainedOptimum ( std::vector< IndexType > &  variableIndices,
std::vector< LabelType > &  givenLabels,
std::vector< LabelType > &  conf 
) const [inline]

Definition at line 128 of file inference.hxx.

Here is the call graph for this function:

Here is the caller graph for this function:

template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::factorMarginal ( const size_t  factorIndex,
IndependentFactorType out 
) const [inline, virtual]

output a solution for a marginal for all variables connected to a factor

Parameters:
factorIndex index of the factor
[out] out the marginal

Reimplemented in opengm::AStar< GM, ACC >, and opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >.

Definition at line 118 of file inference.hxx.

Here is the caller graph for this function:

template<class GM, class ACC>
virtual const GraphicalModelType& opengm::Inference< GM, ACC >::graphicalModel (  )  const [pure virtual]
template<class GM, class ACC>
virtual InferenceTermination opengm::Inference< GM, ACC >::infer (  )  [pure virtual]
template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::marginal ( const size_t  variableIndex,
IndependentFactorType out 
) const [inline, virtual]

output a solution for a marginal for a specific variable

Parameters:
variableIndex index of the variable
[out] out the marginal

Reimplemented in opengm::AStar< GM, ACC >, and opengm::MessagePassing< GM, ACC, UPDATE_RULES, DIST >.

Definition at line 105 of file inference.hxx.

Here is the caller graph for this function:

template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::modeFromFactorMarginal ( std::vector< LabelType > &  conf  )  const [inline]

Definition at line 251 of file inference.hxx.

Here is the call graph for this function:

template<class GM , class ACC >
InferenceTermination opengm::Inference< GM, ACC >::modeFromMarginal ( std::vector< LabelType > &  conf  )  const [inline]

Definition at line 222 of file inference.hxx.

Here is the call graph for this function:

template<class GM, class ACC>
virtual std::string opengm::Inference< GM, ACC >::name (  )  const [pure virtual]
template<class GM , class ACC >
void opengm::Inference< GM, ACC >::setStartingPoint ( typename std::vector< LabelType >::const_iterator  begin  )  [inline, virtual]
template<class GM , class ACC >
GM::ValueType opengm::Inference< GM, ACC >::value (  )  const [inline, virtual]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Mon Jun 17 16:31:12 2013 for OpenGM by  doxygen 1.6.3