Claudio Lima, Christian Wojek, Sebastian Nowozin, Stefano Pellegrini, Ofer Meshi,
Dan Preston, Peter Gober, Jiuxiang Hu, Peter Rockett, Dhruv Batra, Alexander Schwing,
Alejandro Lage, Matt Dunham, Laurens van der Maaten, Jerome Maye, Priya, Hynek Urban,
-Avneesh Saluja, Thomas Mensink.
+Avneesh Saluja, Thomas Mensink, Julien Rebetez, Kyle Ellrott.
Part of this work was part of the Interactive Collaborative Information Systems (ICIS)
project, supported by the Dutch Ministry of Economic Affairs, grant BSIK03024. The
-git HEAD
---------
-* Disabled debugging output in src/cobwebgraph.cpp to fix compilation issue under OSX
-* [Lee C Baker] patch in include/dai/enum.h to fix compilation issues on OSX related to std::wistream and std::wostream (another workaround would be to specify -std=c++11)
+libDAI-0.3.2 (2015-07-17)
+-------------------------
+
+Miscellaneous improvements:
* [Charles Vaske] Various improvements to EM code, including interface changes
-* Fixed regression in SWIG interface caused by new build system (thanks to Benjamin Mumm for reporting this)
* Added 'inclusive' argument to DAG::ancestors() and DAG::descendants()
* [Julien Rebetez] added FactorGraph::printDot() to SWIG interface
+* Extended SWIG python interface (inspired by Kyle Ellrott): inference is possible in Python now!
+* Added toString() formatting functions to the classes that had an output streaming operator<<
+* Merged Generalized Loop Correction code kindly provided by Siamak Ravanbakhsh
+
+Build system improvements:
* Build system: optional compilation targets are now set in include/dai/dai_config.h instead of Makefile.ALL
+
+Bug fixes:
+* Disabled debugging output in src/cobwebgraph.cpp to fix compilation issue under OSX
+* [Lee C Baker] patch in include/dai/enum.h to fix compilation issues on OSX related to std::wistream and std::wostream (another workaround would be to specify -std=c++11)
+* Fixed regression in SWIG interface caused by new build system (thanks to Benjamin Mumm for reporting this)
* Workaround for bug in Boost Graph Library version 1.54 ("The graph may not contain an edge with negative weight") by not using Prim's minimum spanning tree algorithm anymore
* Removed conversion script FastInf->libDAI because it is buggy (uses wrong permutation of factor entries)
-* Extended SWIG python interface (inspired by Kyle Ellrott): inference is possible in Python now!
-* Added toString() formatting functions to the classes that had an output streaming operator<<
* Replaced all occurrences of std::size_t by size_t to avoid SWIG problems
* Fixed division-by-zero issue in pow() which caused problems for GLC+ with sparse factors
* Fixed bugs in unit test prob_test.cpp: replaced all occurences of
BOOST_CHECK_CLOSE(...,(Real)0.0,tol) with BOOST_CHECK_SMALL(...,tol)
-* Merged Generalized Loop Correction code kindly provided by Siamak Ravanbakhsh
libDAI-0.3.1 (2012-09-17)
-------------------------------------------------------------------------------
-Version: git HEAD
-Date: September 17, 2012 - or later
+Version: 0.3.2
+Date: July 17, 2015
See also: http://www.libdai.org
-------------------------------------------------------------------------------
If you write a scientific paper describing research that made substantive use
of this library, please cite the following paper describing libDAI:
-
Joris M. Mooij;
-libDAI: A free & open source C++ library for Discrete Approximate Inference in graphical models;
+libDAI: A free & open source C++ library for Discrete Approximate Inference in
+graphical models;
Journal of Machine Learning Research, 11(Aug):2169-2173, 2010.
-
In BiBTeX format (for your convenience):
@article{Mooij_libDAI_10,
* Download the latest boost libraries from http://www.boost.org
* Build the required boost libraries using:
- ./bootstrap.sh –with-libraries=program_options,math,graph,test –prefix=/boost_root/
- ./bjam
+ ./bootstrap.sh --with-libraries=program_options,math,graph,test --prefix=/boost_root/
+ ./bjam
* In order to use dynamic linking, the boost .dll's should be somewhere in
the path. This can be achieved by a command like:
- export PATH=$PATH:/boost_root/stage/lib
+ export PATH=$PATH:/boost_root/stage/lib
Building libDAI
or the more extensive test program:
- tests/testdai –aliases tests/aliases.conf –filename tests/alarm.fg –methods JTREE_HUGIN BP_SEQMAX
+ tests/testdai --aliases tests/aliases.conf --filename tests/alarm.fg --methods JTREE_HUGIN BP_SEQMAX
-------------------------------------------------------------------------------
* The following command builds the boost libraries that are relevant for
libDAI:
- bjam –with-graph –with-math –with-program_options –with-test link=static runtime-link=shared
+ bjam --with-graph --with-math --with-program_options --with-test link=static runtime-link=shared
Building GMP or MPIR under Windows
or the more extensive test program:
- tests\testdai –aliases tests\aliases.conf –filename tests\alarm.fg –methods JTREE_HUGIN BP_SEQMAX
+ tests\testdai --aliases tests\aliases.conf --filename tests\alarm.fg --methods JTREE_HUGIN BP_SEQMAX
-------------------------------------------------------------------------------
algorithm and approximate inference by belief propagation on the ALARM network:
cd path_to_libdai/matlab
- [psi] = dai_readfg ('../tests/alarm.fg');
- [logZ,q,md,qv,qf] = dai (psi, 'JTREE', '[updates=HUGIN,verbose=0]')
- [logZ,q,md,qv,qf] = dai (psi, 'BP', '[updates=SEQMAX,tol=1e-9,maxiter=10000,logdomain=0]')
+[psi] = dai_readfg ('../tests/alarm.fg');
+[logZ,q,md,qv,qf] = dai (psi, 'JTREE', '[updates=HUGIN,verbose=0]')
+[logZ,q,md,qv,qf] = dai (psi, 'BP', '[updates=SEQMAX,tol=1e-9,maxiter=10000,logdomain=0]')
where "path_to_libdai" has to be replaced with the directory in which libDAI
was installed. For other algorithms and some default parameters, see the file