riso.belief_nets.BeliefNetwork rcs
{
% theta is a continuous root variable, with a uniform
% distribution as its prior.
riso.belief_nets.Variable theta
{
type continuous
distribution riso.distributions.Uniform { a 0 b 6.28318 }
}
% T is a discrete root variable, with a uniform prior.
riso.belief_nets.Variable T
{
type discrete
distribution riso.distributions.Discrete
{
dimensions { 3 } % number of elements in list on next line
probabilities { 0.3333 0.3333 0.3334 }
}
}
% RCS is a continuous child variable.
riso.belief_nets.Variable RCS
{
type continuous
parents { theta T }
% The conditional distribution of RCS has one continuous and one
% discrete parent -- the discrete one act as an index for
% conditional distributions which take the continuous variable
% as a parent.
distribution riso.distributions.IndexedDistribution
{
% Next line shows T is an index or selector for the
% three functions which characterize RCS.
index-variables { T }
% Here is the list of the three functions indexed by T.
% Each component takes theta as a parent.
components
{
riso.distributions.RegressionDensity
{
% ``RadarCrossSection'' is a non-standard distribution
% type devised for this problem. It is described by
% the parameters A, B, and C. The RadarCrossSection
% code knows how to parse this description.
regression-model riso.regression.RadarCrossSection
{ A 30 B 2 C 0 }
noise-model riso.distributions.Gaussian { mean 0 std-deviation 1 }
}
riso.distributions.RegressionDensity
{
regression-model riso.regression.RadarCrossSection
{ A 30 B 10 C 20 }
noise-model riso.distributions.Gaussian { mean 0 std-deviation 1 }
}
riso.distributions.RegressionDensity
{
regression-model riso.regression.RadarCrossSection
{ A 20 B 1.5 C 10 }
noise-model riso.distributions.Gaussian { mean 0 std-deviation 1 }
}
}
}
}
}