opengm::PrimalLPBound< GM, ACC > Class Template Reference
[Inference Algorithms]

[class primallpbound] PrimalLPBound - estimating primal local polytope bound and feasible primal solution for the local polytope relaxation of the MRF energy minimization problem Based on the paper: B. Savchynskyy, S. Schmidt Getting Feasible Variable Estimates From Infeasible Ones: MRF Local Polytope Study. arXiv:1210.4081 Submitted Oct. 2012 More...

#include <primal_lpbound.hxx>

Collaboration diagram for opengm::PrimalLPBound< GM, ACC >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef
TransportSolver::TransportationSolver
< ACC, FactorWrapper< typename
GM::FactorType > > 
Solver
typedef Solver::floatType ValueType
typedef std::vector< ValueTypeUnaryFactor
typedef GM::IndexType IndexType
typedef GM::LabelType LabelType
typedef
PrimalLPBound_Parameter
< ValueType
Parameter

Public Member Functions

 PrimalLPBound (const GM &gm, const Parameter &param=Parameter(Solver::floatTypeEps, Solver::defaultMaxIterationNumber))
template<class ValueIterator >
void setVariable (IndexType var, ValueIterator inputBegin)
template<class ValueIterator >
void getVariable (IndexType var, ValueIterator outputBegin)
ValueType getTotalValue ()
ValueType getFactorValue (IndexType factorId)
ValueType getVariableValue (IndexType varId)
template<class Matrix >
ValueType getFactorVariable (IndexType factorId, Matrix &matrix)
void ResetBuffer ()
bool IsValueBuffered (IndexType factorId) const
bool IsFactorVariableBuffered (IndexType factorId) const
template<class Iterator >
void setVariable (IndexType var, Iterator inputBegin)
template<class Iterator >
void getVariable (IndexType var, Iterator outputBegin)

Static Public Member Functions

static void CheckDuplicateUnaryFactors (const GM &gm)

Static Public Attributes

static const IndexType InvalidIndex = std::numeric_limits<IndexType>::max()
static const ValueType ValueTypeNan = std::numeric_limits<ValueType>::max()

Detailed Description

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

[class primallpbound] PrimalLPBound - estimating primal local polytope bound and feasible primal solution for the local polytope relaxation of the MRF energy minimization problem Based on the paper: B. Savchynskyy, S. Schmidt Getting Feasible Variable Estimates From Infeasible Ones: MRF Local Polytope Study. arXiv:1210.4081 Submitted Oct. 2012

it provides: * primal relaxed solution and bound for the local polytope relaxation of the MRF energy minimization problem

Corresponding author: Bogdan Savchynskyy

Definition at line 62 of file primal_lpbound.hxx.


Member Typedef Documentation

template<class GM, class ACC>
typedef GM::IndexType opengm::PrimalLPBound< GM, ACC >::IndexType

Definition at line 68 of file primal_lpbound.hxx.

template<class GM, class ACC>
typedef GM::LabelType opengm::PrimalLPBound< GM, ACC >::LabelType

Definition at line 69 of file primal_lpbound.hxx.

template<class GM, class ACC>
typedef PrimalLPBound_Parameter<ValueType> opengm::PrimalLPBound< GM, ACC >::Parameter

Definition at line 74 of file primal_lpbound.hxx.

template<class GM, class ACC>
typedef TransportSolver::TransportationSolver<ACC,FactorWrapper<typename GM::FactorType> > opengm::PrimalLPBound< GM, ACC >::Solver

Definition at line 65 of file primal_lpbound.hxx.

template<class GM, class ACC>
typedef std::vector<ValueType> opengm::PrimalLPBound< GM, ACC >::UnaryFactor

Definition at line 67 of file primal_lpbound.hxx.

template<class GM, class ACC>
typedef Solver::floatType opengm::PrimalLPBound< GM, ACC >::ValueType

Definition at line 66 of file primal_lpbound.hxx.


Constructor & Destructor Documentation

template<class GM, class ACC >
opengm::PrimalLPBound< GM, ACC >::PrimalLPBound ( const GM &  gm,
const Parameter param = Parameter(Solver::floatTypeEps,Solver::defaultMaxIterationNumber) 
) [inline]

Definition at line 129 of file primal_lpbound.hxx.

Here is the call graph for this function:


Member Function Documentation

template<class GM, class ACC >
void opengm::PrimalLPBound< GM, ACC >::CheckDuplicateUnaryFactors ( const GM &  gm  )  [inline, static]

Definition at line 106 of file primal_lpbound.hxx.

Here is the caller graph for this function:

template<class GM , class ACC >
PrimalLPBound< GM, ACC >::ValueType opengm::PrimalLPBound< GM, ACC >::getFactorValue ( IndexType  factorId  )  [inline]

Definition at line 183 of file primal_lpbound.hxx.

Here is the call graph for this function:

Here is the caller graph for this function:

template<class GM , class ACC >
template<class Matrix >
PrimalLPBound< GM, ACC >::ValueType opengm::PrimalLPBound< GM, ACC >::getFactorVariable ( IndexType  factorId,
Matrix &  matrix 
) [inline]

Definition at line 202 of file primal_lpbound.hxx.

Here is the call graph for this function:

template<class GM , class ACC >
PrimalLPBound< GM, ACC >::ValueType opengm::PrimalLPBound< GM, ACC >::getTotalValue (  )  [inline]

Definition at line 238 of file primal_lpbound.hxx.

Here is the call graph for this function:

template<class GM, class ACC>
template<class Iterator >
void opengm::PrimalLPBound< GM, ACC >::getVariable ( IndexType  var,
Iterator  outputBegin 
) [inline]

Definition at line 168 of file primal_lpbound.hxx.

template<class GM, class ACC>
template<class ValueIterator >
void opengm::PrimalLPBound< GM, ACC >::getVariable ( IndexType  var,
ValueIterator  outputBegin 
) [inline]
template<class GM , class ACC >
PrimalLPBound< GM, ACC >::ValueType opengm::PrimalLPBound< GM, ACC >::getVariableValue ( IndexType  varId  )  [inline]

Definition at line 213 of file primal_lpbound.hxx.

Here is the caller graph for this function:

template<class GM, class ACC>
bool opengm::PrimalLPBound< GM, ACC >::IsFactorVariableBuffered ( IndexType  factorId  )  const [inline]

Definition at line 91 of file primal_lpbound.hxx.

template<class GM, class ACC>
bool opengm::PrimalLPBound< GM, ACC >::IsValueBuffered ( IndexType  factorId  )  const [inline]

Definition at line 90 of file primal_lpbound.hxx.

template<class GM, class ACC>
void opengm::PrimalLPBound< GM, ACC >::ResetBuffer (  )  [inline]

Definition at line 89 of file primal_lpbound.hxx.

template<class GM, class ACC>
template<class Iterator >
void opengm::PrimalLPBound< GM, ACC >::setVariable ( IndexType  var,
Iterator  inputBegin 
) [inline]

Definition at line 150 of file primal_lpbound.hxx.

template<class GM, class ACC>
template<class ValueIterator >
void opengm::PrimalLPBound< GM, ACC >::setVariable ( IndexType  var,
ValueIterator  inputBegin 
) [inline]

Member Data Documentation

template<class GM, class ACC>
const PrimalLPBound< GM, ACC >::IndexType opengm::PrimalLPBound< GM, ACC >::InvalidIndex = std::numeric_limits<IndexType>::max() [inline, static]

Definition at line 71 of file primal_lpbound.hxx.

template<class GM, class ACC>
const PrimalLPBound< GM, ACC >::ValueType opengm::PrimalLPBound< GM, ACC >::ValueTypeNan = std::numeric_limits<ValueType>::max() [inline, static]

Definition at line 72 of file primal_lpbound.hxx.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Mon Jun 17 16:31:11 2013 for OpenGM by  doxygen 1.6.3