![]() |
aGrUM
0.16.0
|
#include <agrum/FMDP/planning/FunctionGraph/imddi.h>
Public Member Functions | |
void | insertSetOfVars (MultiDimFunctionGraph< double > *ret) const |
Size | size () |
Constructor & destructor. | |
IMDDI (MultiDimFunctionGraph< double > *target, double attributeSelectionThreshold, double pairSelectionThreshold, Set< const DiscreteVariable * > attributeListe, const DiscreteVariable *learnedValue) | |
Variable Learner constructor. More... | |
IMDDI (MultiDimFunctionGraph< double > *target, double attributeSelectionThreshold, double pairSelectionThreshold, Set< const DiscreteVariable * > attributeListe) | |
Reward Learner constructor. More... | |
~IMDDI () | |
Default destructor. More... | |
Visit Methods | |
NodeId | root () const |
bool | isTerminal (NodeId ni) const |
const DiscreteVariable * | nodeVar (NodeId ni) const |
NodeId | nodeSon (NodeId ni, Idx modality) const |
Idx | nodeNbObservation (NodeId ni) const |
Protected Attributes | |
MultiDimFunctionGraph< double > * | _target |
The final diagram we're building. More... | |
Set< const DiscreteVariable *> | _setOfVars |
const DiscreteVariable * | _value |
Sequence< ValueType > | _valueAssumed |
bool | _needUpdate |
Model handling datastructures | |
NodeGraphPart | _model |
The source of nodeId. More... | |
NodeId | _root |
The root of the ordered tree. More... | |
HashTable< NodeId, const DiscreteVariable *> | _nodeVarMap |
Gives for any node its associated variable. More... | |
HashTable< NodeId, NodeId *> | _nodeSonsMap |
A table giving for any node a table mapping to its son idx is the modality of associated variable. More... | |
HashTable< const DiscreteVariable *, LinkedList< NodeId > *> | _var2Node |
Associates to any variable the list of all nodes associated to this variable. More... | |
HashTable< NodeId, NodeDatabase< AttributeSelection, isScalar > *> | _nodeId2Database |
This hashtable binds every node to an associated NodeDatabase which handles every observation that concerns that node. More... | |
HashTable< NodeId, Set< const Observation *> *> | _leafDatabase |
This hashtable binds to every leaf an associated set of all hte observations compatible with it. More... | |
Incrementals methods | |
void | addObservation (const Observation *) |
Adds a new observation to the structure. More... | |
void | updateGraph () |
Updates the tree after a new observation has been added. More... | |
void | _updateNodeWithObservation (const Observation *newObs, NodeId currentNodeId) |
Adds a new observation to the structure. More... | |
NodeId | _insertLeafNode (NodeDatabase< AttributeSelection, isScalar > *nDB, const DiscreteVariable *boundVar, Set< const Observation * > *sonsMap) |
Adds a new observation to the structure. More... | |
void | _chgNodeBoundVar (NodeId chgedNodeId, const DiscreteVariable *desiredVar) |
Adds a new observation to the structure. More... | |
void | _removeNode (NodeId removedNodeId) |
Adds a new observation to the structure. More... | |
void | __addLeaf (NodeId) |
Adds a new observation to the structure. More... | |
void | __removeLeaf (NodeId) |
Adds a new observation to the structure. More... | |
Updating private methods | |
void | updateFunctionGraph () |
Computes the score of the given variables for the given node. More... | |
void | __updateScore (const DiscreteVariable *, NodeId, VariableSelector &vs) |
Computes the score of the given variables for the given node. More... | |
void | __downdateScore (const DiscreteVariable *, NodeId, VariableSelector &vs) |
Computes the score of the given variables for the given node. More... | |
void | __updateNodeSet (Set< NodeId > &, const DiscreteVariable *, VariableSelector &) |
For each node in the given set, this methods checks whether or not we should installed the given variable as a test. If so, the node is updated. More... | |
void | __rebuildFunctionGraph () |
Computes the score of the given variables for the given node. More... | |
NodeId | __insertLeafInFunctionGraph (AbstractLeaf *, Int2Type< true >) |
Computes the score of the given variables for the given node. More... | |
NodeId | __insertLeafInFunctionGraph (AbstractLeaf *, Int2Type< false >) |
Computes the score of the given variables for the given node. More... | |
Graph Structure update methods | |
virtual void | updateVar (const DiscreteVariable *) |
If a new modality appears to exists for given variable, call this method to turn every associated node to this variable into leaf. Graph has then indeed to be revised. More... | |
void | _updateNode (NodeId nody, Set< const DiscreteVariable * > &bestVars) |
From the given sets of node, selects randomly one and installs it on given node. More... | |
virtual void | _convertNode2Leaf (NodeId) |
Turns the given node into a leaf if not already so. More... | |
virtual void | _transpose (NodeId, const DiscreteVariable *) |
Installs given variable to the given node, ensuring that the variable is not present in its subtree. More... | |
virtual NodeId | _insertNode (NodeDatabase< AttributeSelection, isScalar > *nDB, const DiscreteVariable *boundVar) |
inserts a new node in internal graph More... | |
virtual NodeId | _insertInternalNode (NodeDatabase< AttributeSelection, isScalar > *nDB, const DiscreteVariable *boundVar, NodeId *sonsMap) |
inserts a new internal node in internal graph More... | |
gum::IMDDI< AttributeSelection, isScalar >::IMDDI | ( | MultiDimFunctionGraph< double > * | target, |
double | attributeSelectionThreshold, | ||
double | pairSelectionThreshold, | ||
Set< const DiscreteVariable * > | attributeListe, | ||
const DiscreteVariable * | learnedValue | ||
) |
Variable Learner constructor.
Definition at line 51 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_root.
gum::IMDDI< AttributeSelection, isScalar >::IMDDI | ( | MultiDimFunctionGraph< double > * | target, |
double | attributeSelectionThreshold, | ||
double | pairSelectionThreshold, | ||
Set< const DiscreteVariable * > | attributeListe | ||
) |
Reward Learner constructor.
Definition at line 69 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_root.
gum::IMDDI< AttributeSelection, isScalar >::~IMDDI | ( | ) |
Default destructor.
Definition at line 86 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__leafMap.
|
private |
Adds a new observation to the structure.
Definition at line 290 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__leafMap, gum::IMDDI< AttributeSelection, isScalar >::__lg, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_valueAssumed, and gum::LeafAggregator::addLeaf().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IMDDI< AttributeSelection, isScalar >::_insertLeafNode(), and gum::IMDDI< AttributeSelection, isScalar >::IMDDI().
|
private |
Computes the score of the given variables for the given node.
Definition at line 183 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__nbTotalObservation, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, and gum::VariableSelector::downdateScore().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet().
|
private |
Computes the score of the given variables for the given node.
Definition at line 391 of file imddi_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_target, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_valueAssumed, gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::addTerminalNode(), gum::AbstractLeaf::effectif(), gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::manager(), gum::AbstractLeaf::nbModa(), and gum::AbstractLeaf::total().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph().
|
private |
Computes the score of the given variables for the given node.
Definition at line 406 of file imddi_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_target, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value, gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::addInternalNode(), gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::addTerminalNode(), gum::DiscreteVariable::domainSize(), gum::AbstractLeaf::effectif(), gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::manager(), SOA_ALLOCATE, and gum::AbstractLeaf::total().
|
private |
Computes the score of the given variables for the given node.
Definition at line 328 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__insertLeafInFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::__lg, gum::IMDDI< AttributeSelection, isScalar >::__varOrder, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_root, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_target, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_var2Node, gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::add(), gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::addInternalNode(), gum::HashTable< Key, Val, Alloc >::cbeginSafe(), gum::HashTable< Key, Val, Alloc >::cendSafe(), gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::clean(), gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::clear(), gum::HashTable< Key, Val, Alloc >::exists(), gum::HashTable< Key, Val, Alloc >::insert(), gum::LeafAggregator::leavesMap(), gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::manager(), gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >::setRootNode(), SOA_ALLOCATE, and gum::LeafAggregator::update().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::updateFunctionGraph().
|
private |
Adds a new observation to the structure.
Definition at line 304 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__leafMap, gum::IMDDI< AttributeSelection, isScalar >::__lg, and gum::LeafAggregator::removeLeaf().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::_chgNodeBoundVar(), and gum::IMDDI< AttributeSelection, isScalar >::_removeNode().
|
private |
For each node in the given set, this methods checks whether or not we should installed the given variable as a test. If so, the node is updated.
Definition at line 201 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__attributeSelectionThreshold, gum::IMDDI< AttributeSelection, isScalar >::__downdateScore(), gum::IMDDI< AttributeSelection, isScalar >::__updateScore(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::VariableSelector::begin(), gum::Set< Key, Alloc >::beginSafe(), gum::Set< Key, Alloc >::clear(), gum::VariableSelector::current(), gum::Set< Key, Alloc >::endSafe(), gum::VariableSelector::hasNext(), and gum::VariableSelector::next().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::updateGraph().
|
private |
Computes the score of the given variables for the given node.
Definition at line 172 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__nbTotalObservation, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, and gum::VariableSelector::updateScore().
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), and gum::IMDDI< AttributeSelection, isScalar >::updateGraph().
|
protectedvirtual |
Adds a new observation to the structure.
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 262 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), gum::IMDDI< AttributeSelection, isScalar >::__removeLeaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value.
|
protectedvirtualinherited |
Turns the given node into a leaf if not already so.
Definition at line 211 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_leafDatabase, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value, gum::HashTable< Key, Val, Alloc >::erase(), and SOA_DEALLOCATE.
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation(), gum::IMDDI< AttributeSelection, isScalar >::updateGraph(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::updateVar().
|
protectedvirtualinherited |
inserts a new internal node in internal graph
nDB | : the associated database |
boundVar | : the associated variable |
sonsMap | : a table giving node's sons node |
Definition at line 383 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, and gum::HashTable< Key, Val, Alloc >::insert().
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation().
|
protectedvirtual |
Adds a new observation to the structure.
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 244 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertLeafNode().
|
protectedvirtualinherited |
inserts a new node in internal graph
nDB | : the associated database |
boundVar | : the associated variable |
Reimplemented in gum::ITI< AttributeSelection, isScalar >.
Definition at line 358 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_model, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_needUpdate, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_var2Node, and gum::NodeGraphPart::addNode().
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertInternalNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertLeafNode(), gum::ITI< AttributeSelection, isScalar >::_insertNode(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation().
|
protectedvirtual |
Adds a new observation to the structure.
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 278 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__removeLeaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value.
|
protectedvirtualinherited |
Installs given variable to the given node, ensuring that the variable is not present in its subtree.
Definition at line 240 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::__branchObs(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertInternalNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertLeafNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_leafDatabase, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_setOfVars, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value, gum::NodeDatabase< AttributeSelection, isScalar >::addObservation(), gum::DiscreteVariable::domainSize(), gum::Set< Key, Alloc >::insert(), gum::HashTable< Key, Val, Alloc >::insert(), SOA_ALLOCATE, and SOA_DEALLOCATE.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNode(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation().
|
protectedinherited |
From the given sets of node, selects randomly one and installs it on given node.
Chechks of course if node's current variable is not in that set first.
nody | : the node we update |
bestVars | : the set of interessting vars to be installed here |
Chechks of course if node's current variable is not in that set first.
nody | : the node we update |
bestVar | : the set of interessting vars to be installed here |
Definition at line 180 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::Set< Key, Alloc >::cbeginSafe(), gum::Set< Key, Alloc >::cendSafe(), gum::Set< Key, Alloc >::empty(), gum::Set< Key, Alloc >::exists(), and gum::Set< Key, Alloc >::size().
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation(), and gum::ITI< AttributeSelection, isScalar >::updateGraph().
|
protectedvirtual |
Adds a new observation to the structure.
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 108 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__leafMap, gum::IMDDI< AttributeSelection, isScalar >::__lg, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_value, and gum::LeafAggregator::updateLeaf().
|
virtual |
Adds a new observation to the structure.
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 101 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__nbTotalObservation, and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::addObservation().
|
inlinevirtual |
Reimplemented from gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 159 of file imddi.h.
References gum::IMDDI< AttributeSelection, isScalar >::__varOrder, and gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >::add().
|
inlinevirtualinherited |
Implements gum::IVisitableGraphLearner.
Definition at line 318 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap, and gum::HashTable< Key, Val, Alloc >::exists().
|
inlinevirtualinherited |
Implements gum::IVisitableGraphLearner.
Definition at line 337 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeId2Database.
|
inlinevirtualinherited |
Implements gum::IVisitableGraphLearner.
Definition at line 330 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeSonsMap.
|
inlinevirtualinherited |
Implements gum::IVisitableGraphLearner.
Definition at line 323 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap.
|
inlinevirtualinherited |
Implements gum::IVisitableGraphLearner.
Definition at line 313 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_root.
|
inlineinherited |
Definition at line 302 of file incrementalGraphLearner.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_nodeVarMap.
|
virtual |
Computes the score of the given variables for the given node.
Implements gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 316 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_needUpdate.
|
virtual |
Updates the tree after a new observation has been added.
Implements gum::IncrementalGraphLearner< AttributeSelection, isScalar >.
Definition at line 122 of file imddi_tpl.h.
References gum::IMDDI< AttributeSelection, isScalar >::__lg, gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), gum::IMDDI< AttributeSelection, isScalar >::__updateScore(), gum::IMDDI< AttributeSelection, isScalar >::__varOrder, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_root, gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_setOfVars, gum::VariableSelector::begin(), gum::Set< Key, Alloc >::beginSafe(), gum::VariableSelector::current(), gum::Set< Key, Alloc >::endSafe(), gum::VariableSelector::hasNext(), gum::Set< Key, Alloc >::insert(), gum::VariableSelector::isEmpty(), gum::LeafAggregator::needsUpdate(), gum::VariableSelector::next(), gum::VariableSelector::select(), and gum::LeafAggregator::update().
|
virtualinherited |
If a new modality appears to exists for given variable, call this method to turn every associated node to this variable into leaf. Graph has then indeed to be revised.
Definition at line 158 of file incrementalGraphLearner_tpl.h.
References gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_var2Node, gum::Link< T >::element(), and gum::Link< T >::nextLink().
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation().
|
private |
The threshold above which we consider variables to be dependant.
Definition at line 178 of file imddi.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet().
|
private |
Definition at line 172 of file imddi.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), gum::IMDDI< AttributeSelection, isScalar >::__removeLeaf(), gum::IMDDI< AttributeSelection, isScalar >::_updateNodeWithObservation(), and gum::IMDDI< AttributeSelection, isScalar >::~IMDDI().
|
private |
Definition at line 170 of file imddi.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::__removeLeaf(), gum::IMDDI< AttributeSelection, isScalar >::_updateNodeWithObservation(), and gum::IMDDI< AttributeSelection, isScalar >::updateGraph().
|
private |
The total number of observation added to this tree.
Definition at line 175 of file imddi.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__downdateScore(), gum::IMDDI< AttributeSelection, isScalar >::__updateScore(), and gum::IMDDI< AttributeSelection, isScalar >::addObservation().
|
private |
Definition at line 168 of file imddi.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::insertSetOfVars(), and gum::IMDDI< AttributeSelection, isScalar >::updateGraph().
|
protectedinherited |
This hashtable binds to every leaf an associated set of all hte observations compatible with it.
Definition at line 399 of file incrementalGraphLearner.h.
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertLeafNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::addObservation(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::~IncrementalGraphLearner().
|
protectedinherited |
The source of nodeId.
Definition at line 364 of file incrementalGraphLearner.h.
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::IncrementalGraphLearner().
|
protectedinherited |
Definition at line 412 of file incrementalGraphLearner.h.
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), and gum::IMDDI< AttributeSelection, isScalar >::updateFunctionGraph().
|
protectedinherited |
This hashtable binds every node to an associated NodeDatabase which handles every observation that concerns that node.
Definition at line 393 of file incrementalGraphLearner.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__addLeaf(), gum::IMDDI< AttributeSelection, isScalar >::__downdateScore(), gum::ITI< AttributeSelection, isScalar >::__insertTerminalNode(), gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), gum::IMDDI< AttributeSelection, isScalar >::__updateScore(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNodeWithObservation(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::nodeNbObservation(), gum::ITI< AttributeSelection, isScalar >::updateGraph(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::~IncrementalGraphLearner().
|
protectedinherited |
A table giving for any node a table mapping to its son idx is the modality of associated variable.
Definition at line 380 of file incrementalGraphLearner.h.
Referenced by gum::ITI< AttributeSelection, isScalar >::__insertNodeInFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertInternalNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::addObservation(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::isTerminal(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::nodeSon(), gum::ITI< AttributeSelection, isScalar >::updateGraph(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::~IncrementalGraphLearner().
|
protectedinherited |
Gives for any node its associated variable.
Definition at line 374 of file incrementalGraphLearner.h.
Referenced by gum::ITI< AttributeSelection, isScalar >::__insertNodeInFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::__updateNodeSet(), gum::IMDDI< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::ITI< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IMDDI< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_updateNode(), gum::IMDDI< AttributeSelection, isScalar >::_updateNodeWithObservation(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::addObservation(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::nodeVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::size(), gum::ITI< AttributeSelection, isScalar >::updateGraph(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::~IncrementalGraphLearner().
|
protectedinherited |
The root of the ordered tree.
Definition at line 369 of file incrementalGraphLearner.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::addObservation(), gum::IMDDI< AttributeSelection, isScalar >::IMDDI(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::IncrementalGraphLearner(), gum::ITI< AttributeSelection, isScalar >::ITI(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::root(), gum::ITI< AttributeSelection, isScalar >::updateFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::updateGraph(), and gum::ITI< AttributeSelection, isScalar >::updateGraph().
|
protectedinherited |
Definition at line 407 of file incrementalGraphLearner.h.
Referenced by gum::ITI< AttributeSelection, isScalar >::_insertSetOfVars(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::IncrementalGraphLearner(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::insertSetOfVars(), gum::IMDDI< AttributeSelection, isScalar >::updateGraph(), and gum::ITI< AttributeSelection, isScalar >::updateGraph().
|
protectedinherited |
The final diagram we're building.
Definition at line 405 of file incrementalGraphLearner.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__insertLeafInFunctionGraph(), gum::ITI< AttributeSelection, isScalar >::__insertNodeInFunctionGraph(), gum::ITI< AttributeSelection, isScalar >::__insertTerminalNode(), gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), and gum::ITI< AttributeSelection, isScalar >::updateFunctionGraph().
|
protectedinherited |
Definition at line 409 of file incrementalGraphLearner.h.
Referenced by gum::IncrementalGraphLearner< AttributeSelection, isScalar >::__assumeValue(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::__clearValue(), gum::IMDDI< AttributeSelection, isScalar >::__insertLeafInFunctionGraph(), gum::ITI< AttributeSelection, isScalar >::__insertNodeInFunctionGraph(), gum::ITI< AttributeSelection, isScalar >::__insertTerminalNode(), gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IMDDI< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_convertNode2Leaf(), gum::IMDDI< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_transpose(), gum::IMDDI< AttributeSelection, isScalar >::_updateNodeWithObservation(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::IncrementalGraphLearner(), and gum::ITI< AttributeSelection, isScalar >::updateGraph().
|
protectedinherited |
|
protectedinherited |
Associates to any variable the list of all nodes associated to this variable.
Definition at line 386 of file incrementalGraphLearner.h.
Referenced by gum::IMDDI< AttributeSelection, isScalar >::__rebuildFunctionGraph(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_chgNodeBoundVar(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_insertNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::_removeNode(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::IncrementalGraphLearner(), gum::IncrementalGraphLearner< AttributeSelection, isScalar >::updateVar(), and gum::IncrementalGraphLearner< AttributeSelection, isScalar >::~IncrementalGraphLearner().