Merged mf.* from SVN head (which implements damping)...
[libdai.git] / ChangeLog
index 3db77fc..3cb88ac 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,7 @@ libDAI-0.2.2 (2008-??-??)
 * Now compiles also under Visual C++.
 * Added Exceptions framework.
 * Replaced ENUM2,ENUM3,ENUM4,ENUM5,ENUM6 by single DAI_ENUM macro.
+* Removed utils/remove_short_loops and matlab/remove_short_loops.
 * Added more features to utils/createfg for creating factor graphs.
 * Pervasive change of BipartiteGraph implementation (based on an idea by
   Giuseppe Passino). BipartiteGraph no longer stores the node properties 
@@ -19,7 +20,9 @@ libDAI-0.2.2 (2008-??-??)
   - Replaced multind by Permute
   - Added MultiFor
   - Added State
+* Improved factor.h (merged from SVN head): mainly new functionality
 * Moved everything into namespace "dai"
+* Added ExactInf class for brute force exact inference
 * Renamed DEBUG to DAI_DEBUG to avoid conflicts
 * Added conditional compilation of inference methods
 * Contributions by Peter Gober:
@@ -50,6 +53,14 @@ libDAI-0.2.2 (2008-??-??)
   std::set<Var>, which yields a significant speed improvement.
 * Improved MaxSpanningTreePrims algorithm (uses boost::graph)
 * Small optimization in Diffs
+* Replaced Complex with real numbers (negative potentials is just not
+  used enough to warrant the additional "complexity" :))
+* Moved Properties and MaxDiff frameworks from InfAlg to each individual
+  inference algorithm, because the Properties framework was not as 
+  convenient as I hoped, and not every inference algorithm needs a maxdiff
+  variable. Also, replaced some FactorGraph functionality in InfAlg by a
+  function that returns the FactorGraph. The result is cleaner (less 
+  entangled) code.
 * Improved ClusterGraph implementation, yielding significant speedups
   for the JunctionTree algorithm on large factorgraphs.
 * Improved documetation
@@ -70,21 +81,34 @@ libDAI-0.2.2 (2008-??-??)
       removed MakeFactorCavity(size_t)
       removed ExactMarginal(const VarSet &)
       removed ExactlogZ()
-      moved isConnected() to BipartiteGraph
+      removed updatedFactor(size_t)
+      removed _normtype and NormType()
+      removed hasShortLoops(...) and removeShortLoops(...)
+      WriteToDotFile(const char *filename) -> printDot( std::ostream& os )
+      undoProb(size_t) -> restoreFactor(size_t)
+      saveProb(size_t) -> backupFactor(size_t)
+      undoProbs(const VarSet &) -> restoreFactors(const VarSet &)
+      saveProbs(const VarSet &) -> backupFactors(const VarSet &)
+      ReadFromFile(const char*) returns void (throws on error)
+      WriteToFile(const char*) returns void (throws on error)
+      removed hasNegatives()
   - RegionGraph::
       nr_ORs() -> nrORs()
       nr_IRs() -> nrIRs()
       ORs() -> ORs
       IRs() -> IRs
-  - *::Regenerate() -> *::create()
+  - *::Regenerate() -> *::construct()
   - Renamed Index -> IndexFor
   - Diffs:
       max() -> maxDiff()
       max_size() -> maxSize()
   - Prob::max() -> Prob::maxVal()
-  - Factor::max() -> Factor::maxVal()
+  - Factor::
+      max() -> maxVal()
+      part_sum() -> partSum()
   - toc() in util.h now returns seconds as a double
   - VarSet::operator&&
+  - Properties -> PropertySet
 
 
 libDAI-0.2.1 (2008-05-26)