aGrUM  0.16.0
maxInducedWidthMCBayesNetGenerator.h
Go to the documentation of this file.
1 
30 #ifndef GUM_MAX_INDUCED_WIDTH_MC_BAYES_NET_GENERATOR
31 #define GUM_MAX_INDUCED_WIDTH_MC_BAYES_NET_GENERATOR
32 
33 #include <agrum/agrum.h>
34 
35 #include <fstream>
36 #include <iostream>
37 #include <set>
38 #include <vector>
39 
40 #include <sstream>
41 
42 #ifdef HAVE_DIRENT_H
43 # include <dirent.h>
44 #else
45 # include <agrum/core/mvsc/dirent.h>
46 #endif
47 
48 #include <agrum/BN/BayesNet.h>
53 
54 namespace gum {
73  template < typename GUM_SCALAR,
74  template < typename > class ICPTGenerator = SimpleCPTGenerator,
75  template < typename > class ICPTDisturber = SimpleCPTDisturber >
77  : public MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber > {
78  public:
79  // ############################################################################
81  // ############################################################################
83 
105  Size maxArcs,
106  Size maxModality = 2,
107  Size maxInducedWidth = 3,
108  Idx iteration = 5000,
109  Idx p = 30,
110  Idx q = 40);
111 
132  Size maxInducedWidth = 3,
133  Idx iteration = 5000,
134  Idx p = 30,
135  Idx q = 40);
136 
141 
143 
144  // ############################################################################
146  // ############################################################################
149 
155  Size maxlog10InducedWidth() const;
156 
158 
162  void setMaxlog10InducedWidth(Size maxlog10InducedWidth);
164 
165  protected:
167 
168  private:
174  bool __checkConditions() final;
175  };
176 
177 
178 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
179  extern template class MaxInducedWidthMCBayesNetGenerator< double >;
180 #endif
181 
182 } /*namespace gum*/
183 
185 #endif // MCBAYESNETGENERATOR
Class representing a Bayesian Network.
Definition: BayesNet.h:78
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Idx q() const
Return a constant reference to the probabilité imposed on the Markov Chain BayesNetGenerator.
<agrum/BN/generator/MCayesNetGenerator.h>
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.
Size nbrNodes() const
Return a constant reference to the number of nodes imposed on the IBayesNetGenerator.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Definition: agrum.h:25
Size maxArcs() const
Return a constant reference to the maximum number of arcs imposed on the IBayesNetGenerator.
void setMaxlog10InducedWidth(Size maxlog10InducedWidth)
Modifies the value of the number of maximum parents imposed on the BayesNetGenerator.
Size maxlog10InducedWidth() const
Return a constant reference to the number of maximum parents imposed on the Markov Chain BayesNetGene...
Size Idx
Type for indexes.
Definition: types.h:53
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.
Definition: types.h:48
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
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 maxModality() const
Return a constant reference to the maximum modality imposed on the IBayesNetGenerator.
bool __checkConditions() final
function to holding the the specification wanted for the Bayesian markov.