![]() |
aGrUM
0.16.0
|
<agrum/BN/generator/simpleBayesNetGenerator.h> More...
#include <simpleBayesNetGenerator.h>
Public Member Functions | |
Constructors / Destructor | |
SimpleBayesNetGenerator (Size nbrNodes, Size maxArcs, Size maxModality=2) | |
Constructor. More... | |
~SimpleBayesNetGenerator () override | |
Destructor. More... | |
BN generation methods | |
void | generateBN (BayesNet< GUM_SCALAR > &bayesNet) override |
function that generates a bayesian networks. More... | |
BN generation methods | |
void | fillCPT () |
function that insert random values in the CPT of each nodes according to the CPTGenerator. More... | |
Getters | |
Size | nbrNodes () const |
Return a constant reference to the number of nodes imposed on the IBayesNetGenerator. More... | |
Size | maxArcs () const |
Return a constant reference to the maximum number of arcs imposed on the IBayesNetGenerator. More... | |
Size | maxModality () const |
Return a constant reference to the maximum modality imposed on the IBayesNetGenerator. More... | |
Setters | |
void | setNbrNodes (Size nbrNodes) |
Modifies the value of the number of nodes imposed on the BayesGenerator. More... | |
void | setMaxArcs (Size maxArcs) |
Modifies the value of the number of nodes imposed on the BayesGenerator. More... | |
void | setMaxModality (Size maxModality) |
Modifies the value of the number of nodes imposed on the BayesGenerator. More... | |
Protected Attributes | |
Size | _nbrNodes |
Size | _maxArcs |
Size | _maxModality |
BayesNet< GUM_SCALAR > | _bayesNet |
<agrum/BN/generator/simpleBayesNetGenerator.h>
Class for generating bayesian networks.
This class randomly generates a bayesian network given three parameters: the number of nodes and the max number of arcs and the number of maximum modality for each nodes.
Definition at line 59 of file simpleBayesNetGenerator.h.
INLINE gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::SimpleBayesNetGenerator | ( | Size | nbrNodes, |
Size | maxArcs, | ||
Size | maxModality = 2 |
||
) |
Constructor.
Use by default the SimpleCPTGenerator for generating the BNs CPT.
nbrNodes | The number of nodes imposed on the generator. |
maxArcs | The number of maximum arcs imposed on the generator. |
maxModality | Each DRV has from 2 to maxModality modalities |
Definition at line 43 of file simpleBayesNetGenerator_tpl.h.
|
override |
Destructor.
Definition at line 64 of file simpleBayesNetGenerator_tpl.h.
|
inherited |
function that insert random values in the CPT of each nodes according to the CPTGenerator.
Definition at line 64 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_bayesNet.
Referenced by gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::generateBN(), and gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::generateBN().
|
overridevirtual |
function that generates a bayesian networks.
bayesNet | Bayesian Network to be completed after initialisation |
Implements gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >.
Definition at line 74 of file simpleBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_bayesNet, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxArcs, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxModality, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_nbrNodes, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::fillCPT(), gum::HashTable< Key, Val, Alloc >::insert(), gum::randomProba(), and gum::randomValue().
|
inherited |
Return a constant reference to the maximum number of arcs imposed on the IBayesNetGenerator.
Definition at line 82 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxArcs.
Referenced by gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setMaxArcs().
|
inherited |
Return a constant reference to the maximum modality imposed on the IBayesNetGenerator.
Definition at line 72 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxModality.
Referenced by gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setMaxModality().
|
inherited |
Return a constant reference to the number of nodes imposed on the IBayesNetGenerator.
Definition at line 77 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_nbrNodes.
Referenced by gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setNbrNodes().
|
inherited |
Modifies the value of the number of nodes imposed on the BayesGenerator.
Definition at line 106 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxArcs, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_nbrNodes, GUM_ERROR, and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::maxArcs().
|
inherited |
Modifies the value of the number of nodes imposed on the BayesGenerator.
Definition at line 87 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxModality, GUM_ERROR, and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::maxModality().
|
inherited |
Modifies the value of the number of nodes imposed on the BayesGenerator.
Definition at line 97 of file IBayesNetGenerator_tpl.h.
References gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_maxArcs, gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::_nbrNodes, GUM_ERROR, and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::nbrNodes().
|
protectedinherited |
Definition at line 167 of file IBayesNetGenerator.h.
Referenced by gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__AorR(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__AR(), gum::MaxInducedWidthMCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__checkConditions(), gum::MaxParentsMCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__checkConditions(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__checkConditions(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__chooseCloseNodes(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__chooseNodes(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__connect(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__createPartTree(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__createTree(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__directedPath(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__eraseArc(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__insertArc(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__isPolytree(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__jump_multi(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__jump_poly(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__PMMx_multi(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__PMMx_poly(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__transformPoly(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::disturbBN(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::fillCPT(), gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::generateBN(), and gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::generateBN().
|
protectedinherited |
Definition at line 165 of file IBayesNetGenerator.h.
Referenced by gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__checkConditions(), gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::generateBN(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::maxArcs(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setMaxArcs(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setNbrNodes().
|
protectedinherited |
Definition at line 166 of file IBayesNetGenerator.h.
Referenced by gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__createPartTree(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::__createTree(), gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::generateBN(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::maxModality(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setMaxModality().
|
protectedinherited |
Definition at line 164 of file IBayesNetGenerator.h.
Referenced by gum::SimpleBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::generateBN(), gum::MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::generateBN(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::IBayesNetGenerator(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::nbrNodes(), gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setMaxArcs(), and gum::IBayesNetGenerator< GUM_SCALAR, ICPTGenerator >::setNbrNodes().