34 # define MCBG MCBayesNetGenerator 35 # define IBNG IBayesNetGenerator 37 # define MCBG MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber > 38 # define IBNG IBayesNetGenerator< GUM_SCALAR, ICPTGenerator > 42 template <
typename GUM_SCALAR,
47 INLINE MaxInducedWidthMCBayesNetGenerator<
57 MCBG(nbrNodes, maxArcs, maxModality, iteration, p, q) {
58 if (maxInducedWidth == 0)
60 "maxInducedWidth must be at least equal " 61 "to 1 to have a connexe graph");
67 template <
typename GUM_SCALAR,
80 MCBG(bayesNet, iteration, p, q) {
100 template <
typename GUM_SCALAR,
101 template <
typename >
103 template <
typename >
104 class ICPTDisturber >
113 template <
typename GUM_SCALAR,
114 template <
typename >
116 template <
typename >
117 class ICPTDisturber >
123 for (
auto node : this->
_bayesNet.nodes())
124 __modalitiesMap.
insert(node, this->_bayesNet.variable(node).domainSize());
130 return MCBG::__checkConditions();
133 template <
typename GUM_SCALAR,
134 template <
typename >
136 template <
typename >
137 class ICPTDisturber >
145 template <
typename GUM_SCALAR,
146 template <
typename >
148 template <
typename >
149 class ICPTDisturber >
154 if (maxlog10InducedWidth == 0)
156 "maxInducedWidth must be at least equal " 157 "to 1 to have a connexe graph");
Class representing a Bayesian Network.
Idx q() const
Return a constant reference to the probabilité imposed on the Markov Chain BayesNetGenerator.
double maxLog10CliqueDomainSize()
returns the max of log10DomainSize of the cliques in the junction tree.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
MaxInducedWidthMCBayesNetGenerator(Size nbrNodes, Size maxArcs, Size maxModality=2, Size maxInducedWidth=3, Idx iteration=5000, Idx p=30, Idx q=40)
Constructor.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
The class for generic Hash Tables.
BayesNet< GUM_SCALAR > _bayesNet
void setMaxlog10InducedWidth(Size maxlog10InducedWidth)
Modifies the value of the number of maximum parents imposed on the BayesNetGenerator.
The default triangulation algorithm used by aGrUM.
Size maxlog10InducedWidth() const
Return a constant reference to the number of maximum parents imposed on the Markov Chain BayesNetGene...
Size Idx
Type for indexes.
Size iteration() const
Return a constant reference to the number of iteration imposed on the Markov Chain BayesNetGenerator...
std::size_t Size
In aGrUM, hashed values are unsigned long int.
value_type & insert(const Key &key, const Val &val)
Adds a new element (actually a copy of this element) into the hash table.
Idx p() const
Return a constant reference to the probabilité p imposed on the Markov Chain BayesNetGenerator.
maxInducedWidthMCBayesNetGenerator.h <agrum/BN/generator/SimpleMCayesNetGenerator.h>
Size _maxlog10InducedWidth
#define GUM_ERROR(type, msg)
~MaxInducedWidthMCBayesNetGenerator() final
Destructor.
bool __checkConditions() final
function to holding the the specification wanted for the Bayesian markov.