![]() |
aGrUM
0.20.2
a C++ library for (probabilistic) graphical models
|
Class used to perform Function Graph Operations. More...
#include <agrum/tools/multidim/patterns/multiDimFunctionGraphOperator.h>
Public Member Functions | |
Idx | nbCall () |
Idx | nbVarRetro () |
Idx | sizeVarRetroDomain () |
Constructors / Destructors | |
MultiDimFunctionGraphOperator (const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *DG1, const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *DG2) | |
Default constructor. More... | |
~MultiDimFunctionGraphOperator () | |
Default destructor. More... | |
Main Method | |
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * | compute () |
Computes and builds the Function Graph that is the result of the operation. More... | |
Class used to perform Function Graph Operations.
Definition at line 56 of file multiDimFunctionGraphOperator.h.
gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::MultiDimFunctionGraphOperator | ( | const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * | DG1, |
const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * | DG2 | ||
) |
Default constructor.
Definition at line 41 of file multiDimFunctionGraphOperator_tpl.h.
gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::~MultiDimFunctionGraphOperator | ( | ) |
Default destructor.
Definition at line 65 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::compute | ( | ) |
Computes and builds the Function Graph that is the result of the operation.
Definition at line 92 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
The main recursion function.
Main recursion function, called every time we move on a node to determine what we have to do.
Definition at line 345 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
Heuristic methods to decide which of two retrograde variables should come first.
Definition at line 222 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
Computes an order for the final Decision graph that will minimize the number of re exploration.
Definition at line 124 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
Establish for each node in both function graph if it has retrograde variables beneath it.
Definition at line 247 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::nbCall | ( | ) |
Definition at line 558 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::nbVarRetro | ( | ) |
Definition at line 569 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::sizeVarRetroDomain | ( | ) |
Definition at line 580 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
Just a comptuationnal trick.
Definition at line 145 of file multiDimFunctionGraphOperator.h.
|
private |
One of the two function graphs used for the operation.
Definition at line 118 of file multiDimFunctionGraphOperator.h.
|
private |
Table uses to know if a given node of first function graph has retrograde vrariables.
Definition at line 138 of file multiDimFunctionGraphOperator.h.
|
private |
The other one.
Definition at line 121 of file multiDimFunctionGraphOperator.h.
|
private |
Table uses to know if a given node of second function graph has retrograde vrariables.
Definition at line 142 of file multiDimFunctionGraphOperator.h.
|
private |
The hashtable used to know if two pair of nodes have already been visited.
Definition at line 134 of file multiDimFunctionGraphOperator.h.
|
private |
The function to be performed on the leaves.
Definition at line 130 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 94 of file multiDimFunctionGraphOperator.h.
|
private |
The total number of variable implied in the operation.
Definition at line 127 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 95 of file multiDimFunctionGraphOperator.h.
|
private |
The resulting function graph.
Definition at line 124 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 96 of file multiDimFunctionGraphOperator.h.