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

testForwardMessagingWorksForFiltering() private method

private testForwardMessagingWorksForFiltering ( ) : void
return void
        public void testForwardMessagingWorksForFiltering()
        {
            RandomVariable afterOneStep = robotHmm.forward(robotHmm.prior(),
                    HmmConstants.DO_NOTHING, HmmConstants.SEE_DOOR_OPEN);
            Assert.AreEqual(0.75, afterOneStep
                    .getProbabilityOf(HmmConstants.DOOR_OPEN), TOLERANCE);
            Assert.AreEqual(0.25, afterOneStep
                    .getProbabilityOf(HmmConstants.DOOR_CLOSED), TOLERANCE);

            RandomVariable afterTwoSteps = robotHmm.forward(afterOneStep,
                    HmmConstants.PUSH_DOOR, HmmConstants.SEE_DOOR_OPEN);
            Assert.AreEqual(0.983, afterTwoSteps
                    .getProbabilityOf(HmmConstants.DOOR_OPEN), TOLERANCE);
            Assert.AreEqual(0.017, afterTwoSteps
                    .getProbabilityOf(HmmConstants.DOOR_CLOSED), TOLERANCE);
        }