47 template <
typename GUM_SCALAR,
49 class COMBINEOPERATOR,
51 class PROJECTOPERATOR,
52 template <
typename >
class TerminalNodePolicy =
53 ExactTerminalNodePolicy >
67 const GUM_SCALAR neutral);
139 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 147 #endif // GUM_REGRESS_H const PROJECTOPERATOR< GUM_SCALAR > __project
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * __rd
The resulting function graph.
HashTable< NodeId, short int *> __DG2InstantiationNeeded
const DiscreteVariable * __targetVar
The variable we work on to eleminate.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
const GUM_SCALAR __neutral
The function to be performed on the leaves.
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * compute()
Computes and builds the Function Graph that is the result of the operation.
const COMBINEOPERATOR< GUM_SCALAR > __combine
The functions to be performed on the leaves.
HashTable< NodeId, short int *> __DG1InstantiationNeeded
Table uses to know if a given node of given function graph has retrograde variables.
Base class for discrete random variable.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * __DG2
The other one.
Representation of a setA Set is a structure that contains arbitrary elements.
Regress(const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *vfunction, const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *probDist, const Set< const DiscreteVariable * > *primedVars, const DiscreteVariable *targetVar, const GUM_SCALAR neutral)
Default constructor.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
void __establishVarOrder()
Computes an order for the final Decision graph that will minimize the number of re exploration...
Class implementingting a function graph.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
void __findRetrogradeVariables(const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *dg, HashTable< NodeId, short int * > &dgInstNeed)
Establish for each node in both function graph if it has retrograde variables beneath it...
NodeId __compute(O4DGContext ¤tSituation, Idx lastInstVarPos)
The main recursion function.
Idx __nbVar
The total number of variable implied in the operation.
Class used to perform Function Graph Operations in the FMDP Framework.
const Set< const DiscreteVariable *> * __primedVars
The set of variables we want to keep at the end.
HashTable< double, NodeId > __explorationTable
The hashtable used to know if two pair of nodes have already been visited.
Size Idx
Type for indexes.
short int * __default
Just a computationnal trick.
Class used to manipulate context during Function Graph Operations.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * __DG1
One of the two function graphs used for the operation.
Size NodeId
Type for node ids.
~Regress()
Default destructor.