AIMA.Test.Core.Unit.Probability.Reasoning.HMMTest.testOneStepFixedLagSmoothingOnRainManHmm C# (CSharp) Method

testOneStepFixedLagSmoothingOnRainManHmm() private method

private testOneStepFixedLagSmoothingOnRainManHmm ( ) : void
return void
        public void testOneStepFixedLagSmoothingOnRainManHmm()
        {
            FixedLagSmoothing fls = new FixedLagSmoothing(rainmanHmm, 1);

            RandomVariable smoothedDayZero = fls.smooth(HmmConstants.SEE_UMBRELLA); // see
            // umbrella on day one
            Assert.AreEqual(0.627, smoothedDayZero
                    .getProbabilityOf(HmmConstants.RAINING), TOLERANCE);

            RandomVariable smoothedDayOne = fls.smooth(HmmConstants.SEE_UMBRELLA); // see
            // umbrella on day two
            Assert.AreEqual(0.883, smoothedDayOne
                    .getProbabilityOf(HmmConstants.RAINING), TOLERANCE);
            Assert.AreEqual(0.117, smoothedDayOne
                    .getProbabilityOf(HmmConstants.NOT_RAINING), TOLERANCE);

            RandomVariable smoothedDayTwo = fls
                    .smooth(HmmConstants.SEE_NO_UMBRELLA); // see no umbrella on
            // day three
            Assert.AreEqual(0.799, smoothedDayTwo
                    .getProbabilityOf(HmmConstants.RAINING), TOLERANCE);
            Assert.AreEqual(0.201, smoothedDayTwo
                    .getProbabilityOf(HmmConstants.NOT_RAINING), TOLERANCE);
        }