class ContinuousChanceNode : public Node

The Continuous chance node

Inheritance:


Public Methods

void addParent(ContinuousChanceNode *parent) throw( HAPI::ExceptionHugin )
Add parent as a new parent of this node
void enterValue(double value) throw( ExceptionHugin )
Specify that this continuous node has the value value
double getCaseValue(long index) throw(HAPI::ExceptionHugin)
Retrieve the value of this node assoociated with case index
virtual Category getCategory() throw()
Return the node category
CGDistribution* getCGDistribution() throw(ExceptionHugin)
Get the CG distribution associated with this node
NodeList getChildren() const throw( HAPI::ExceptionHugin )
Return a NodeList containing references to the children of this node
Table* getDistribution() const throw( ExceptionHugin )
Compute the distribution for this continuous node
double getEnteredValue() throw( ExceptionHugin )
Retrieve the entered value for this node
virtual Kind getKind() throw()
Return the node kind
double getMean() const throw( ExceptionHugin )
Return the mean of the marginal distribution of this node
double getPropagatedValue() const throw( ExceptionHugin )
Retrieve the finding value
double getVariance() const throw( ExceptionHugin )
Return the variance of the marginal distribution of this node
bool isEvidenceEntered()
Return whether or not evidence is entered into this node
bool isEvidencePropagated()
Return whether or not evidence has been propagated from this node
void removeParent(ContinuousChanceNode *parent) throw( HAPI::ExceptionHugin )
Remove the directed link between parent and this node
void removeParent(DiscreteChanceNode *parent) throw( HAPI::ExceptionHugin )
Remove the directed link between parent and this node
void retractValue() throw( ExceptionHugin )
Retract the entered value for this node
void reverseEdge(ContinuousChanceNode *neighbor) throw(ExceptionHugin)
Reverse the edge between this node and the specified neighbor
void setCaseValue(long index, double value) throw(HAPI::ExceptionHugin)
Set the value associate with this node in case index to value
void unsetCase(long index)
Specify that the value of this node for case index is unknown
double getSampledValue()
Returns the value of this ContinuousChanceNode for the configuration generated by the most recent call to Domain

Inherited from Node:

Public Methods

std::string getAttribute(std::string& key) const throw(HAPI::ExceptionHugin)
Domain* getDomain() const throw(HAPI::ExceptionHugin)
JunctionTree* getJunctionTree() const throw(HAPI::ExceptionHugin)
std::string getLabel() const throw(HAPI::ExceptionHugin)
Model* getModel() throw(HAPI::ExceptionHugin)
std::string getName() const throw(HAPI::ExceptionHugin)
NodeList getParents() const throw(HAPI::ExceptionHugin)
std::pair <long, long> getPosition() const throw(HAPI::ExceptionHugin)
void* getUserData() throw(HAPI::ExceptionHugin)
Constraint getEdgeConstraint( Node *bNode )
void setEdgeConstraint( Node *bNode, Constraint C )
void generateTable() throw(HAPI::ExceptionHugin )
std::vector <Attribute*> Node::getAttributes() throw(HAPI::ExceptionHugin )
void setAttribute(std::string& key, std::string& value) throw(HAPI::ExceptionHugin)
void setLabel(char* label) throw(HAPI::ExceptionHugin)
void setLabel(std::string& label) throw(HAPI::ExceptionHugin)
void setName(char *name) throw(HAPI::ExceptionHugin)
void setName(std::string& name) throw(HAPI::ExceptionHugin)
void setPosition(long x, long y) throw(HAPI::ExceptionHugin)
void setPosition(std::pair<long, long> pos) throw(HAPI::ExceptionHugin)
void setUserData(void *) throw(HAPI::ExceptionHugin)
Domain* getHomeDomain() const throw(ExceptionHugin)
Class* getHomeClass() const throw(ExceptionHugin)
void addToInputs() throw(ExceptionHugin)
void addToOutputs() throw(ExceptionHugin)
void removeFromInputs() throw(ExceptionHugin)
void removeFromOutputs() throw(ExceptionHugin)
Node* getInstance() throw(ExceptionHugin)
Node* getMaster() throw(ExceptionHugin)
NodeList getSource() throw(ExceptionHugin)

Documentation

The Continuous chance node. This node epresents continuous chance nodes with (conditional) Gaussian distributions. Continuous chance nodes are also sometimes called CG nodes (CG for conditional Gaussian).
void addParent(ContinuousChanceNode *parent) throw( HAPI::ExceptionHugin )
Add parent as a new parent of this node. That is, add a directed link from parent to this node.

Parameters:
parent - ContinuousChanceNode*

void enterValue(double value) throw( ExceptionHugin )
Specify that this continuous node has the value value.

Parameters:
value - A real number as the finding value.

double getCaseValue(long index) throw(HAPI::ExceptionHugin)
Retrieve the value of this node assoociated with case index.

Parameters:
index - Case index.

virtual Category getCategory() throw()
Return the node category

CGDistribution* getCGDistribution() throw(ExceptionHugin)
Get the CG distribution associated with this node.

Returns:
CGDistribution*

NodeList getChildren() const throw( HAPI::ExceptionHugin )
Return a NodeList containing references to the children of this node. If no children exist, an empty NodeList is returned.

Returns:
NodeList

Table* getDistribution() const throw( ExceptionHugin )
Compute the distribution for this continuous node. The distribution for a CG node is in general a mixture of several Gaussian distributions. ContinuousChanceNode::getDistribution() really computes a joint distribution of this node and a set of discrete nodes. These discrete nodes are chosen such that the computed marginal is a strong marginal, but it is not necessarily minimal.

Returns:
Table* - Pointer to a Table holding a strong marginal of this node and a set of discrete nodes.

double getEnteredValue() throw( ExceptionHugin )
Retrieve the entered value for this node.

Returns:
A double-precision real number expressing the entered value.

virtual Kind getKind() throw()
Return the node kind
Returns:
Kind

double getMean() const throw( ExceptionHugin )
Return the mean of the marginal distribution of this node.

Returns:
A double-precision real number expressing the mean.

double getPropagatedValue() const throw( ExceptionHugin )
Retrieve the finding value. That is, retrieve the finding value incorporated within the current junction tree potentials for state of this node.

Returns:
A double-precision real number expressing the propagated value.

double getVariance() const throw( ExceptionHugin )
Return the variance of the marginal distribution of this node.

Returns:
A double-precision real number expressing the variance.

bool isEvidenceEntered()
Return whether or not evidence is entered into this node.

Returns:
Boolean.

bool isEvidencePropagated()
Return whether or not evidence has been propagated from this node.

Returns:
Boolean.

void removeParent(ContinuousChanceNode *parent) throw( HAPI::ExceptionHugin )
Remove the directed link between parent and this node. The table (if any) will be updated such that the Beta(i)-parameters will be deleted from the table.

Parameters:
parent - Reference to the ContinuousChanceNode that will be removed as parent.

void removeParent(DiscreteChanceNode *parent) throw( HAPI::ExceptionHugin )
Remove the directed link between parent and this node. The table (if any) will be updated such that the Beta(i)-parameters will be deleted from the table.

Parameters:
parent - Reference to the DiscreteChanceNode that will be removed as parent.

void retractValue() throw( ExceptionHugin )
Retract the entered value for this node

void reverseEdge(ContinuousChanceNode *neighbor) throw(ExceptionHugin)
Reverse the edge between this node and the specified neighbor.

Parameters:
neighbor - ContinuousChanceNode*

void setCaseValue(long index, double value) throw(HAPI::ExceptionHugin)
Set the value associate with this node in case index to value

void unsetCase(long index)
Specify that the value of this node for case index is unknown.

Parameters:
index - long.

double getSampledValue()
Returns the value of this ContinuousChanceNode for the configuration generated by the most recent call to Domain.simulate().

Returns:
A double - the value sampled for this during the last invocation of simulate() on the Domain of this.
See Also:
Domain::simulate


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de