![]() |
aGrUM
0.20.3
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 55 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 63 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 329 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 214 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 121 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 238 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 89 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::nbCall | ( | ) |
Definition at line 533 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::nbVarRetro | ( | ) |
Definition at line 543 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
INLINE Idx gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >::sizeVarRetroDomain | ( | ) |
Definition at line 553 of file multiDimFunctionGraphOperator_tpl.h.
References gum::Set< Key, Alloc >::emplace().
|
private |
Just a comptuationnal trick.
Definition at line 144 of file multiDimFunctionGraphOperator.h.
|
private |
One of the two function graphs used for the operation.
Definition at line 117 of file multiDimFunctionGraphOperator.h.
|
private |
Table uses to know if a given node of first function graph has retrograde vrariables.
Definition at line 137 of file multiDimFunctionGraphOperator.h.
|
private |
The other one.
Definition at line 120 of file multiDimFunctionGraphOperator.h.
|
private |
Table uses to know if a given node of second function graph has retrograde vrariables.
Definition at line 141 of file multiDimFunctionGraphOperator.h.
|
private |
The hashtable used to know if two pair of nodes have already been visited.
Definition at line 133 of file multiDimFunctionGraphOperator.h.
|
private |
The function to be performed on the leaves.
Definition at line 129 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 93 of file multiDimFunctionGraphOperator.h.
|
private |
The total number of variable implied in the operation.
Definition at line 126 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 94 of file multiDimFunctionGraphOperator.h.
|
private |
The resulting function graph.
Definition at line 123 of file multiDimFunctionGraphOperator.h.
|
private |
Definition at line 95 of file multiDimFunctionGraphOperator.h.