Tags give the ability to mark specific points in history as being important
  • 0.18.0
    Release 0.18.0
    • aGrUM

      • MarkovNet'model, UAI file format and inference (incremental ShaferShenoy)
      • Bug fix in MIIC learning algorithm
      • Bug fix in gum::GammaLog2 approximations for very small values
      • Updating and enhancing gum::GraphicalBNComparator
      • Enhancing API for gum::MixedGraph (build a MixedGraph from other graphs)
      • API changes for gum::MultiDimAggregator (consistant behavior without parent)
      • new gum::MultidimmAggegator : Sum
      • Minor API changes for gum::Potential (normalizeAsCPT,minNonZero,maxNonOne)
      • Minor API changes for graphical models (gum::DAGModel and gum::UGModels)
      • [internal] adopting more classical convention for naming pr{otected|ivate} methods and attributes
      • [internal] Updating sources for MVSC 2019
    • pyAgrum

      • MarkovNet'model, UAI file format and inference (incremental ShaferShenoy)
      • Bug fix in MIIC learning algorithm
      • Updating and enhancing pyAgrum.GraphicalBNComparator
      • Enhancing API for pyAgrum.MixedGraph (build a MixedGraph from other graphs)
      • API changes for pyAgrum::MultiDimAggregator (consistant behavior without parent)
      • new pyAgrum::MultidimmAggegator : Sum
      • Minor API changes for pyAgrum::Potential (normalizeAsCPT,minNonZero,maxNonOne)
      • In gum.lib.bn2roc : bugfix for ROC, access to significant_digit for predict, add Precision-Recall graph.
  • 0.17.3
    Release 0.17.3
    • aGrUM

      • improved version of MIIC's learning algorithm.
      • add access to pseudo count with gum::BNLearner::pseudoCount
      • fix a bug in inference with gum::InfluenceDiagram
      • improved API for Influence Diagram : accessor with variable names (instead of only NodeId)
      • VS2019's compiler is now supported by act/CMakeLists.txt
      • reorganizing ressources for testsuite
    • pyAgrum

      • improved version of MIIC's learning algorithm.
      • add access to pseudo count with gum.BNLearner.pseudoCount
      • fix a bug in inference with gum.InfluenceDiagram
      • improved API for Influence Diagram : accessor with variable names (instead of only NodeId)
  • 0.17.2
    f89b9818 · before tagging 0.17.2 ·
    Release 0.17.2
    • aGrUM

      • fix a bug in graphChangeGeneratorOnSubDiGraph (thanks @yurivict for the issue)
      • fix a bug in LazyPropagation due to a (rare) improper optimization
      • improve projection and combination codes for MultiDim hierarchy
      • reorganization of source codes and internal structure
      • refreshing a bit the c++ examples
      • preliminary works on undirected graphical models
    • pyAgrum

      • forgotten description for pip packages
      • typo for special char (':' for instance) with pydotplus
  • 0.17.1
    Release 0.17.1
    • aGrUM

      • O3PRMBNReader can now read a BN from an o3prm file with a unique class even it the name of the class is not the name of the file
    • pyAgrum

      • internal changes for wheel generations
      • updating description for packages
      • optimizing loops and inference for ROC and classifiers
      • minor improvements for pyAgrum's tests (logging and restrictions for python2)
  • 0.17.0
    Release 0.17.0
    • pyAgrum

      • Update requirements
      • Improve classifier.py
      • Documentation improvements
      • Remove '?' from names in some resources files concerning Asia
      • Updating API for pyAgrum.Instantiation (accessor using name of variables)
      • Important internal updates for the relation between numpy.array and pyAgrum.Potential (with a significant speed-up)
      • Add operators between pyAgrum.Potential and numbers
      • Fix a bug when using pydotplus with size=None
      • Fix minor bugs in pyAgrum.fastBN and in pyAgrum.O3prmBNWriter/Reader
      • Add pyAgrum.Potential.log2() method and pyAgrum.log2(pyAgrum.Potential) function
      • Add pyAgrum.BayesNet.clear() method
    • aGrUM

      • Updating API for gum::Instantiation (accessor using name of variables)
      • Add operators between gum::Potential<GUM_SCALAR> and GUM_SCALAR
      • Fix minor bugs in gum::fastPrototype and in gum::O3prmBNWriter/Reader
      • Add gum::multiDimDecorator::erase(std::string& name) (mainly used as gum::Potential::erase(std::string& name))
      • Add gum::BayesNet<GUM_SCALAR>::clear() method
  • 0.16.4
    676cfe58 · Update CHANGELOG.md ·
    Release 0.16.4
    • pyAgrum

      • first version of gum.lib.classifier providing a class gum.BNClassifier wrapping a BN as a classifier with a scikitlearn-like API.
      • Fix bug in gum.lib.notebook.showPotential with explicit digit param
      • Add a gum.Potential.loopIn() to iterate inside a Potential
      • Enhanced API for gum.InfluenceDiagram
      • Documentation improvements
      • remove package for python 3.4 and 3.5 (following NEP29). But 2.7 is still maintained.
      • add package for python 3.8
    • aGrUM

      • still working on CI
      • Enhanced API for gum::InfluenceDiagram
  • 0.16.3
    Release 0.16.3
    • pyAgrum
      • wrapper for the class gum::BayesNetFragment
      • typos in dot methods for Influence Diagrams and Causal Models (reported by Mike Morgan)
  • 0.16.2
    Release 0.16.2
    • pyAgrum
      • remove the use of 'f-strings' in pyAgrum.lib.notebook.py
  • 0.16.1
    Release 0.16.1
    • aGrUM

      • improve the syntax for BN specification using gum::fastPrototype
      • improve several CMakeFiles.txt and doxygen documentation
      • add CI for python 2.7
      • refresh gum::BayesNet::toString()
      • API change : gum::MarkovBlanket()::{mb()->gum::MarkovBlanket::dag()}
    • pyAgrum

      • pyAgrum.config object for customization (see notebook 08-configForPyAgrum)
      • improving the syntax for BN specification using pyAgrum.fastBN
      • improving pyAgrum's documentation
      • add pyAgrum.causal.counterfactual and pyAgrum.causal.counterfactualModel (see notebook 55-Causality_Counterfactual)
      • improve plots for histograms (particularly : now svg image by default)
      • add pyAgrum.Potential.fullWithFunction()
      • add pyAgrum.{any graph-like}.connectedComponents()
      • add pyAgrum.BayesNet.parents() and pyAgrum.BayesNet.children() with the name of node.
      • pyAgrum.MarkovBlanket(bn,var,level) build now a level-th order Markov Blanket (by default level=1)
      • add access to constants pyAgrum.VarType_{Discretized|Labelized|Range} when testing pyAgrmu.{any discrete variable}.varType()
      • API change : pyAgrum.MarkovBlanket().{mb()->dag()}
      • add pyAgrum.lib.bn_vs_bn.GraphicalBNComparator.hamming()
  • 0.16.0
    Release 0.16.0
    • aGrUM

      • bug fixed in gum::BNLearner::learnParameters() in some cases with ML estimation (without priors). Better bootstrap for EM.
      • bug fixed for variables order in the gum::Potential generated by gum::BayesNet::reverseArc()
      • new gum::DiGraph::hasDirectedCycle
      • new methods in gum::Potential for random generations and pertubations
    • pyAgrum

      • improvements in pyAgrum.lib.causality (direct access to backdoor and frontdoor, typos in doCalculus, etc.)
      • pyAgrum.lib.notebook's visualisations of graph can be adapted for dark or light themes (in jupyterlab for instance) with forDarkTheme()and forLightTheme()
      • gum.lib.notebook.{show|get}Inference() can now have colored arcs (see 06-colouringBNs.ipynb in the notebooks)
      • improvements on the documentation framework (w.r.t. readthdocs)
      • bug fixed for variables order in the pyAgrum.Potential generated by pyAgrum.BayesNet.reverseArc()
      • new pyAgrum.DiGraph.hasDirectedCycle
      • new methods in pyAgrum.Potential for random generations and pertubations
      • better error messages when adding arcs in a Bayesian Network
      • API change for joint targets in exact inference : only as set of node ids or names of variable
  • 0.15.2
    7a1c7ce5 · before tag 0.15.2 ·
    Release 0.15.2
    • aGrUM
      • fix a (rare) bug in counters for contingency tables for chi2 and G2 (bug found by Bastien Chassagnol)
    • pyAgrum
      • fix fscore in gumlib/bn_vs_bn.py
      • API : Wherever a list of strings is the type for an argument, a single string "x" can be used instead of ["x"]
      • workaround for weird bug when displaying matplotlib-generated svg in notebooks (for gnb.showInference)
      • fix AUC computation in gumlib/bn2roc.py
  • 0.15.1
    Release 0.15.1
    • aGrUM
      • add forgotten addPossibleEdge constraint for LocalSearchWithTabuList learning algorithm in BNLearner.
      • bug fix in exact inference leading to an erroneous exception.
      • Better iterated random test for sampling inference
    • pyAgrum
      • update path for new notebooks location for CI and documentation
      • nightly build with pip : use now pip install pyAgrum-nightly
      • API change in gum.lib.dynamicBN : plotFollowUnrolled(lovars, dbn, T, evs)
      • add forgotten addPossibleEdge constraint for LocalSearchWithTabuList learning algorithm in BNLearner.
      • bug fix in exact inference leading to an erroneous exception.
    • internal
      • new values for act -j option (number of jobs for compilation) : all, except1, half, halfexcept1.
      • several bugfixes in CI
  • 0.15.0
    7df29be4 · Update CHANGELOG.md ·
    Release 0.15.0
    • LGPLV3 new LGPL3 licence for aGrUM/pyAgrum
    • aGrUM
      • bug fix with openMP in BNLearner::setDatabaseWeight
      • new BNLearner::recordWeight() and BNLearner::databaseWeight()
      • new BNLearner::setRecordWeight()
    • pyAgrum
      • nightly builds with pip : pip install pyAgrum-nightly
      • bug fix with openMP in BNLearner::setDatabaseWeight
      • new BNLearner.recordWeight() and BNLearner.databaseWeight()
      • new BNLearner.setRecordWeight()
      • bug fix and minor API changes in gum.causality
  • 0.14.3
    Release 0.14.3
    • aGrUM
      • new constraint for structural learning : possibleEdge forces the tested edges to be taken from the sets of possibleEdges
      • new methods BNLearner::addPossibleEdge(const gum::Edge&) and BNLearner::setPossibleSkeleton(const gum::UndiGraph&)
      • Fix a bug in gum::IndepTestG2
      • Access to scores from BNLearner : BNLearner::G2()
    • pyAgrum
      • new methods BNLearner.addPossibleEdge(x,y) and BNLearner.setPossibleSkeleton(undigraph)
      • fix a bug in causality's identification algorithm
      • Access to scores from BNLearner : BNLearner.G2()
      • add tests and fix typos in notebooks
  • 0.14.2
    Release 0.14.2
    • aGrUM
      • bug fixes in learning (3off2/miic and learnMixedGraph)
      • removing redundant gum::BNLearner::setAprioriWeight
    • pyAgrum
      • pyAgrum.lib.notebook.showInference can now use svg format
      • use of the svg format by default for graphs and drawings in pyAgrum.lib.notebook
      • refreshing notebooks
      • removing redundant pyAgrum.BNLearner.setAprioriWeight
      • adding forgotten wrapper for pyAgrum.BNLearner.useAprioriBDeu
      • changing the representation of causal model (special node for latent variable)
      • extending documentation
  • 0.14.1
    Release 0.14.1
    • aGrUM
      • chaintool for compilation with microsfot visual C++ 17 (act --msvc17 and act --msvc17_32)
    • pyAgrum
      • fixing a missing importation of the pyAgrum.causal module in pypi packages
      • updating sphynx version for pyAgrum's ReadTheDoc
  • 0.14.0
    Release 0.14.0
    • aGrUM
      • support for mingw64 + bugfix for mingw
      • Access to scores from BNLearner : BNLearner::Chi2 and BNLearner::logLikelihood
      • bug fix in KL[...]::bhattacharya
      • add KL[...]::jsd (Jensen-Shannon divergence)
      • renaming gum::[...]]KL classes into gum::[...]distance because they provide acces to KL but also to Hellinger, Bhattacharya distances and Jensen-Shanon divergence.
    • pyAgrum
      • gum.causality (do-calculus and causal identification !)
      • JunctionTreeGenerator (formerly JTGenerator) can now expose the eliminationOrder and can drive the triangulation with a partial order of the nodes.
      • Access to scores from BNLearner : BNLearner::Chi2 and BNLearner::logLikelihood
      • bug fix in pyAgrum.lib.notebook
      • bug fix in KL[...]::bhattacharya
      • add KL[...]::jsd (Jensen-Shannon divergence)
      • renaming gum::[...]]KL classes into gum::[...]distance because they provide acces to KL but also to Hellinger, Bhattacharya distances and Jensen-Shanon divergence.
      • fix some scratches in pyAgrum documentation
  • 0.13.6
    Release 0.13.6
    • aGrUM
      • Compilation issue for clang4 fixed
      • remove all pre-compiled float instanciations of aGrUM's templates (and significantly reduce the size of all libraries)
      • add the configuration files needed for interactive notebooks on mybinder.org
    • pyAgrum
      • minor changes in notebooks
  • 0.13.5
    Release 0.13.5
    • aGrUM
      • fix errors for gcc 4.8.2
      • fix issue #23
      • fix act error for python<3.6
  • 0.13.4
    Release 0.13.4
    • pyAgrum
    • aGrUM
      • parametric EM !!
      • several internal improvements
      • learning: major update of the scores, independence tests and record counters: They can now be used on subsets of databases (e.g., for cross validation), the ids of the nodes need not correspond to in dices of columns in the database. The interfaces of these classes have been simplified.
      • learning: all the scores have been speeded-up
      • learning: new score fNML has been introduced
      • learning: Dirichlet apriori has been improved: the variables in its database need not be in the same order as those of th e learning database
      • learning: all the score-related testunits have been improved
      • learning: the documentations of the scores have been improved
      • learning: the corrected mutual information of 3off2 has been improved
      • BNLearner: now supports cross validation
      • New method : JointTargetedInference::jointMutualInformation for any set of variables in the BN