Project details for OpenGM

Logo OpenGM 1.0 -- Optimization Library for Higher Order Graphical Models

by andres - November 12, 2010, 17:00:50 CET [ Project Homepage BibTeX BibTeX for corresponding Paper Download ]

view ( today), download ( today ), 0 subscriptions


OpenGM is a free C++ template library, a command line tool and a set of MATLAB functions for optimization in higher order graphical models. Graphical models of any order and structure can be built either in C++ or in MATLAB, using simple and intuitive commands. These models can be stored in HDF5 files and optimized using state-of-the-art algorithms and the OpenGM command line optimizer. All library functions can also be called directly from C++ code. OpenGM realizes the Inference Algorithm Interface (IAI), a concept that makes it easy for programmers to use their own algorithms and factor classes with OpenGM.

  • Factor Graph Models (Kschischang et al. 2001)

    • Graphs of any order and structure, from regular grid graphs to irregular graphical models with higher order factors.
    • Flexible number of labels (different variables can have differently many labels).
  • Optimization Algorithms

    • Loopy Belief Propagation (Pearl 1988, Yedidia et al. 2000) with message damping (Wainwright 2008), including Min-Sum and Max-Product message passing.
    • Tree-reweighted Belief Propagation (TRBP) (Wainwright et al. 2005) with message damping.
    • A-star branch-and-bound search (Bergtholdt et al. 2009).
    • Sub-Gradient Descent (Dual Decomposition) coming soon! (Kappes et al. 2010).
      • Automated decomposition of arbitrary factor graphs
    • Iterated conditional modes (ICM) (Besag 1986).
    • Lazy Flipper (Andres et al. 2010). Binary variables only.
    • Graph Cut (Boycov et al. 2001). Push-Relabel (Goldberg and Tarjan 1986), Edmonds-Karp (Edmonds and Karp 1972), Kolmogorov (Boykov and Kolmogorov 2004]). Binary variables, 2nd order models and submodular functions only.
  • Command Line Optimizer

    • Built-in protocol mode for runtime and convergence analyses.
  • MATLAB Interface

    • Build your graphical models conveniently in MATLAB.
    • HDF5 Import/Export
  • High Performance Computing

    • Optimization of graphical models that consist of 10^7 factors and more.
    • Optimized class templates for binary variables (contributed by Thorben Kroeger).
  • Extendibility

    • Add and contribute your own optimization algorithms and factor classes.
Changes to previous version:

Initial Announcement on

BibTeX Entry: Download
Corresponding Paper BibTeX Entry: Download
Supported Operating Systems: Platform Independent
Data Formats: Hdf
Tags: Bayesian Networks, Factor Graphs, Graphical Models, Markov Random Fields, Belief Propagation, Discrete Optimization, Higher Order Cliques, Higher Order Factors, Inference
Archive: download here


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.