Cleanup of BP_dual code
[libdai.git] / README
diff --git a/README b/README
index bc283ba..1d5abbf 100644 (file)
--- a/README
+++ b/README
@@ -12,11 +12,13 @@ with contributions from:
 
 Martijn Leisink
 Giuseppe Passino
+Frederik Eaton
+Bastian Wemmenhove
 Christian Wojek
 Claudio Lima
-Bastian Wemmenhove
 Jiuxiang Hu
 Peter Gober
+Patrick Pletscher
 
 
 ----------------------------------------------------------------------------------
@@ -38,14 +40,11 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 ----------------------------------------------------------------------------------
 
 
-SCIENTISTS: please be aware that the fact that this program is released as Free
-Software does not excuse you from scientific propriety, which obligates you to
-give appropriate credit! If you write a scientific paper describing research
-that made substantive use of this program, it is your moral obligation as a
-scientist to (a) mention the fashion in which this software was used, including
-the version number, with a citation to the literature, to allow replication;
-(b) mention this software in the Acknowledgements section.  The appropriate
-citation is: 
+SCIENTISTS: If you write a scientific paper describing research that made 
+substantive use of this program, please (a) mention the fashion in which 
+this software was used, including the version number, with a citation 
+to the literature, to allow replication; (b) mention this software in the 
+Acknowledgements section.  The appropriate citation is: 
 
 J. M. Mooij (2008) "libDAI 0.2.2: A free/open source C++ library for Discrete 
 Approximate Inference methods", http://mloss.org/software/view/77/.
@@ -87,7 +86,8 @@ Currently, libDAI supports the following (approximate) inference methods:
     * Tree Expectation Propagation [MiQ04];
     * Generalized Belief Propagation [YFW05];
     * Double-loop GBP [HAK03];
-    * Various variants of Loop Corrected Belief Propagation [MoK07, MoR05].
+    * Various variants of Loop Corrected Belief Propagation [MoK07, MoR05];
+    * Gibbs sampler.
 
 
 Why C++?
@@ -126,26 +126,45 @@ A description of the factor graph (.fg) file format can be found in the file FIL
 Compatibility
 -------------
 The code has been developed under Debian GNU/Linux with the GCC compiler suite.
-libDAI compiles successfully with g++ versions 4.1, 4.2 and 4.3.
+libDAI compiles successfully with g++ versions 3.4, 4.1, 4.2 and 4.3.
 
 libDAI has also been successfully compiled with MS Visual Studio 2008 under Windows
-(but not all build targets are supported yet).
+(but not all build targets are supported yet) and with Cygwin under Windows.
 
+Finally, libDAI has been compiled successfully on MacOS X.
 
-Quick start (linux/cygwin)
---------------------------
+
+Quick start (linux/cygwin/Mac OS X)
+-----------------------------------
 You need:
 - a recent version of gcc (at least version 3.4)
 - GNU make
 - doxygen
 - graphviz
-- recent boost C++ libraries (at least version 1.34)
+- recent boost C++ libraries (at least version 1.34, or 1.37 for cygwin)
 
 On Debian/Ubuntu, you can easily install all these packages with a single command:
-"apt-get install g++ make doxygen libboost-dev libboost-graph-dev libboost-program-options-dev"
+"apt-get install g++ make doxygen graphviz libboost-dev libboost-graph-dev libboost-program-options-dev"
 (root permissions needed).
 
-To build the source, edit the Makefile and adapt it to your local setup. Then, run
+On Mac OS X (10.4 is known to work), these packages can be installed easily via MacPorts.
+First, install MacPorts according to the instructions at http://www.macports.org/
+Then, a simple "sudo port install gmake boost doxygen graphviz"
+should be enough to install everything that is needed.
+
+On Cygwin, the prebuilt Cygwin package boost-1.33.1-x is known not to work.
+You can however obtain the latest boost version (you need at least 1.37.0)
+from http://www.boost.org/ and compile/install it with:
+
+  ./configure
+  make
+  make install
+
+
+To build the libDAI source, first copy a template Makefile.* to Makefile.conf
+(for example, copy Makefile.LINUX to Makefile.conf if you use GNU/Linux). 
+Then, edit the Makefile.conf template to adapt it to your local setup.
+Especially directories may change from system to system. Finally, run
     
     make
 
@@ -158,15 +177,19 @@ or the more elaborate test program:
     tests/testdai --aliases tests/aliases.conf --filename tests/alarm.fg --methods JTREE_HUGIN BP_SEQMAX
 
 
-Quick start (windows)
+Quick start (Windows)
 ---------------------
 You need:
 - A recent version of MicroSoft Visual Studio (2008 works)
 - recent boost C++ libraries (version 1.34 or higher)
+- GNU make (can be obtained from http://gnuwin32.sourceforge.net)
+For the regression test, you need:
+- GNU diff, GNU sed (can be obtained from http://gnuwin32.sourceforge.net)
 
-To build the source, edit the Makefile and adapt it to your local setup. Then, run (from the command line)
+To build the source, copy Makefile.WINDOWS to Makefile.conf. Then, edit 
+Makefile.conf to adapt it to your local setup. Finally, run (from the command line)
     
-    nmake -f Makefile.win
+    make
 
 If the build was successful, you can test the example program: