T
- class type of the multi-states' discrete variablespublic class MultiStateDistributionIndepGaussians<T extends Copyable<?>> extends Object implements EvaluatableDistribution<AbstractMultiState<T>>, IndependentlyEvaluatableDistribution<AbstractMultiState<T>>, SamplingDistribution<AbstractMultiState<T>>, IndependentSamplingDistribution<AbstractMultiState<T>>, FirstOrderMoment<AbstractMultiState<T>>, SecondOrderCentralMoment<Vector<Jama.Matrix>>, Copyable<MultiStateDistributionIndepGaussians<T>>
Modifier and Type | Field and Description |
---|---|
protected Vector<Jama.Matrix> |
covs |
protected Vector<GaussianDistribution> |
gaussians |
protected AbstractMultiState<T> |
mean |
protected Random |
rand |
Modifier | Constructor and Description |
---|---|
|
MultiStateDistributionIndepGaussians(AbstractMultiState<T> mean,
Jama.Matrix covariance,
Random rand)
Constructor with identical covariance matrices for all states
|
|
MultiStateDistributionIndepGaussians(AbstractMultiState<T> mean,
Vector<Jama.Matrix> covariance,
Random rand)
Constructor with different covariance matrix for each state
|
protected |
MultiStateDistributionIndepGaussians(int numOfIndepGaussians) |
Modifier and Type | Method and Description |
---|---|
int |
addIndepGaussian(GaussianDistribution stateCont,
T stateDiscr)
Add an independent Gaussian state distribution
|
MultiStateDistributionIndepGaussians<T> |
copy() |
AbstractMultiState<T> |
drawSample()
Generate a new sample from this density.
|
AbstractMultiState<T> |
drawSample(int i,
AbstractMultiState<T> X)
Generate a new sample from this density by drawing only one independent variable for a given realization x.
|
Vector<Jama.Matrix> |
getCovariance() |
AbstractMultiState<T> |
getMean() |
double |
p(AbstractMultiState<T> X)
Evaluate p(X) at location x.
|
double |
p(AbstractMultiState<T> X,
int i)
Evaluate p_i(X) at x_i
|
void |
predict(LinearTransformGaussNoise predictor) |
void |
predictIndep(int i,
LinearTransformGaussNoise predictor) |
int |
removeIndepGaussian(int i)
Remove independent Gaussian state distribution (at index i)
|
void |
update(LinearTransformGaussNoise projector,
AbstractMultiState<T> observations) |
void |
updateIndep(int i,
int j,
LinearTransformGaussNoise projector,
AbstractMultiState<T> observations)
Update i-th Gaussian component with j-th observation
|
void |
updateIndep(int i,
LinearTransformGaussNoise projector,
AbstractMultiState<T> observations) |
protected AbstractMultiState<T extends Copyable<?>> mean
protected Vector<Jama.Matrix> covs
protected Vector<GaussianDistribution> gaussians
protected Random rand
protected MultiStateDistributionIndepGaussians(int numOfIndepGaussians)
public MultiStateDistributionIndepGaussians(AbstractMultiState<T> mean, Jama.Matrix covariance, Random rand)
public MultiStateDistributionIndepGaussians(AbstractMultiState<T> mean, Vector<Jama.Matrix> covariance, Random rand)
public int addIndepGaussian(GaussianDistribution stateCont, T stateDiscr)
public int removeIndepGaussian(int i)
public double p(AbstractMultiState<T> X)
EvaluatableDistribution
p
in interface EvaluatableDistribution<AbstractMultiState<T extends Copyable<?>>>
X
- realization of random variable Xpublic double p(AbstractMultiState<T> X, int i)
IndependentlyEvaluatableDistribution
p
in interface IndependentlyEvaluatableDistribution<AbstractMultiState<T extends Copyable<?>>>
X
- realization of random variable Xi
- i-th element in xpublic AbstractMultiState<T> drawSample()
SamplingDistribution
drawSample
in interface SamplingDistribution<AbstractMultiState<T extends Copyable<?>>>
public AbstractMultiState<T> drawSample(int i, AbstractMultiState<T> X)
IndependentSamplingDistribution
drawSample
in interface IndependentSamplingDistribution<AbstractMultiState<T extends Copyable<?>>>
i
- sample a new realization of the i-th element in xX
- realization of a random vector or finite setpublic AbstractMultiState<T> getMean()
getMean
in interface FirstOrderMoment<AbstractMultiState<T extends Copyable<?>>>
public Vector<Jama.Matrix> getCovariance()
getCovariance
in interface SecondOrderCentralMoment<Vector<Jama.Matrix>>
public void predict(LinearTransformGaussNoise predictor)
public void predictIndep(int i, LinearTransformGaussNoise predictor)
public void update(LinearTransformGaussNoise projector, AbstractMultiState<T> observations)
public void updateIndep(int i, LinearTransformGaussNoise projector, AbstractMultiState<T> observations)
public void updateIndep(int i, int j, LinearTransformGaussNoise projector, AbstractMultiState<T> observations)
i
- j
- projector
- observations
- public MultiStateDistributionIndepGaussians<T> copy()
copy
in interface Copyable<MultiStateDistributionIndepGaussians<T extends Copyable<?>>>
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.