![]() |
aGrUM
0.16.0
|
<agrum/ID/inference/influenceDiagramInference.h> More...
#include <influenceDiagramInference.h>
Public Member Functions | |
const InfluenceDiagram< GUM_SCALAR > & | influenceDiagram () const |
Returns a constant reference over the InfluenceDiagram on which this class work. More... | |
Constructor & destructor | |
InfluenceDiagramInference (const InfluenceDiagram< GUM_SCALAR > &infDiag) | |
Default constructor. More... | |
virtual | ~InfluenceDiagramInference () |
Destructor. More... | |
Inference | |
virtual void | makeInference () |
GUM_SCALAR | getMEU () |
Idx | getBestDecisionChoice (NodeId decisionId) |
std::string | displayResult () |
displays the result of an inference More... | |
Evidence management | |
virtual void | insertEvidence (const List< const Potential< GUM_SCALAR > * > &evidenceList) |
virtual void | eraseEvidence (const Potential< GUM_SCALAR > *evidence) |
virtual void | eraseAllEvidence () |
Getters & setters | |
Triangulation & | getTriangulation () |
Returns the Triangulation used by this class. More... | |
void | displayStrongJunctionTree (std::ostream &stream=std::cout) |
Displays on terminal the result of strong junction tree computation for test purpose only. More... | |
Protected Attributes | |
const InfluenceDiagram< GUM_SCALAR > & | __infDiag |
The Bayes net we wish to perform inference on. More... | |
<agrum/ID/inference/influenceDiagramInference.h>
This class implements an algorithm for inference in influence diagrams based upon Shaffer-Shenoy's one for bayes net inferences
The class used for the triangulation is partialOrderedTriangulation.
Definition at line 64 of file influenceDiagramInference.h.
|
explicit |
Default constructor.
infDiag | the influence diagram we want to perform inference upon |
|
virtual |
Destructor.
|
private |
Performs the operation of absorption of a clique by another.
|
private |
Cleans Up remaining stuff due to inference.
|
private |
collect child clique for inferences
|
private |
|
private |
|
private |
Returns true if observed node is eliminated after current node.
|
private |
Builds the cliques tables Uses __getCliquesTable to initialize the cliques table, and multiply the tables with the adequate CPT.
|
private |
Returns a pointer over a "dummy" potential, which is a CPT filled with one MultiDimSparse filled with 1. This is used by empty cliques.
cliqueId | The NodeId of the cliqueId for which we build a dummy potential. |
|
private |
Returns a pointer over a "dummy" utility, which is a utility table filled with one MultiDimSparse filled with 0. This is used by empty cliques.
cliqueId | The NodeId of the cliqueId for which we build a dummy utility. |
|
private |
Makes a strong junction tree that make easier elimination.
|
private |
Reduces a clique down to her separator from another clique elements.
std::string gum::InfluenceDiagramInference< GUM_SCALAR >::displayResult | ( | ) |
displays the result of an inference
void gum::InfluenceDiagramInference< GUM_SCALAR >::displayStrongJunctionTree | ( | std::ostream & | stream = std::cout | ) |
Displays on terminal the result of strong junction tree computation for test purpose only.
|
virtual |
|
virtual |
|
virtual |
Implements gum::IInfluenceDiagramInference< GUM_SCALAR >.
|
virtual |
Implements gum::IInfluenceDiagramInference< GUM_SCALAR >.
Triangulation& gum::InfluenceDiagramInference< GUM_SCALAR >::getTriangulation | ( | ) |
Returns the Triangulation used by this class.
|
inherited |
Returns a constant reference over the InfluenceDiagram on which this class work.
|
virtual |
|
virtual |
|
private |
Mapping of the nodes with the clique used to put their CPT.
Definition at line 164 of file influenceDiagramInference.h.
|
private |
Mapping of the nodes with the clique used to put their CPT.
Definition at line 162 of file influenceDiagramInference.h.
|
protectedinherited |
The Bayes net we wish to perform inference on.
Definition at line 111 of file IInfluenceDiagramInference.h.
|
private |
Mapping of the nodes with the clique used to put their CPT.
Definition at line 168 of file influenceDiagramInference.h.
|
private |
The resulting potential from inference.
Definition at line 148 of file influenceDiagramInference.h.
|
private |
The resulting utility from inference.
Definition at line 151 of file influenceDiagramInference.h.
|
private |
Mapping of the nodes with the clique used to put their CPT.
Definition at line 160 of file influenceDiagramInference.h.
|
private |
The set of dummies sparse potential matrix created.
Definition at line 142 of file influenceDiagramInference.h.
|
private |
The triangulation algorithm.
Definition at line 139 of file influenceDiagramInference.h.
|
private |
Mapping of the nodes with the clique used to put their CPT.
Definition at line 166 of file influenceDiagramInference.h.
|
private |
The set of dummies sparse utilities matrix created.
Definition at line 145 of file influenceDiagramInference.h.