Frames No Frames Cognitoware API v2009512
Cognitoware.Robotics.dll

Class ConditionalMap<X, Y>
X: The type predicated by the distribution.
Y: The type on which the predictions depend.

System.Object
Cognitoware.Mathematics.Probability.RandomConditional<X>
Cognitoware.Mathematics.Probability.ConditionalMap<X, Y>

Summary

A conditional distribution that maps distributions over X to distinct values of Y.

Constructor Summary

Create an empty distribution.

Method Summary

BayesianInference(X, RandomDistribution<Y>)
Inherited from Cognitoware.Mathematics.Probability.RandomConditional
ConditionalProbabilityOf(X, Y)
Calculates the conditional probability for a value of X given a known value of Y.
ConditionBy(Y)
Creates a probability distribution of X conditioned on a specific value of Y.
Equals(Object)
Inherited from System.Object
Finalize()
Inherited from System.Object
GetHashCode()
Inherited from System.Object
GetType()
Inherited from System.Object
LikelihoodOf(X)
Creates a function describing the likelihood of all values of Y being observed given the fact that result is observed.
Marginalize(RandomDistribution<Y>)
Creates a probability distribution of X given a random distribution across Y.
MemberwiseClone()
Inherited from System.Object
Set(Y, RandomDistribution<X>)
Maps a distribution over X to a value in Y.
ToString()
Inherited from System.Object

Details

ConditionalMap contains a dictionary that maps discrete values of Y to distributions of X. Y is required to be discrete. X may be continuous or discrete.

Constructor Details

public ConditionalMap()
Create an empty distribution.

Method Details

public override Double ConditionalProbabilityOf(X x, Y y)
This method returns the probability of result being observed given the fact that you know range is observed. It simply looks up the distribution associated with range and asks it for the probability of result. An exception will be thrown if no distribution is found mapped to range. This method implements the abstract declaration in RandomConditional.

Parameters:

`x` - The value in X.
`y` - The conditional value in Y.

Returns:

The probability of result conditioned on range.

public override RandomDistribution<X> ConditionBy(Y y)
Creates a probability distribution of X given a known y. Returns the random distribution mapped to the value of y. If no distribution is mapped to y, an exception is thrown.

Parameters:

`y` - The value of Y over which the conditional distribution.

Returns:

The probability of X given the specific value of Y.

public override RandomDistribution<Y> LikelihoodOf(X x)
Builds a DistributionValueMap across all values of Y for the specified value of X.

Parameters:

`x` - A fixed value in X.

Returns:

A likelihood function as a RandomDistribution. Because the returned value is not normalized, it is a likelihood function and not a distribution.

public override RandomDistribution<X> Marginalize(RandomDistribution<Y> y)
Creates a probability distribution of X given a random distribution across Y. The probability of a value of X in this distribution is equal to the average conditional probability of X given Y (defined by this distribution) weighted by the probability of each corresponding value Y in the parameter distribution. This average is built using a MixedDistribution.

Parameters:

`y` - The distribuiton across Y that is used to weight the probability distributions of X.

Returns:

The expectation of X given the probable values of Y.

public void Set(Y y, RandomDistribution<X> x)
Maps a distribution over X to a value in Y. If a distribution is already mapped to the value of Y, then it is replaced by the new distribution.

Parameters:

`y` - The conditional value in Y.
`x` - The distribution over X.

Questions, Comments and Licensing