Пример #1
0
        public void testPolicyIteration()
        {
            MDPPolicy <CellWorldPosition, String> policy = fourByThreeMDP
                                                           .policyIteration(1);

            // AIMA2e check With Figure 17.2 (a)

            Assert
            .AreEqual("up", policy
                      .getAction(new CellWorldPosition(1, 1)));
            Assert
            .AreEqual("up", policy
                      .getAction(new CellWorldPosition(2, 1)));
            Assert.AreEqual("right", policy.getAction(new CellWorldPosition(3,
                                                                            1)));

            Assert.AreEqual("left", policy
                            .getAction(new CellWorldPosition(1, 2)));
            Assert.AreEqual("right", policy.getAction(new CellWorldPosition(3,
                                                                            2)));

            Assert.AreEqual("left", policy
                            .getAction(new CellWorldPosition(1, 3)));
            Assert
            .AreEqual("up", policy
                      .getAction(new CellWorldPosition(2, 3)));
            Assert.AreEqual("right", policy.getAction(new CellWorldPosition(3,
                                                                            3)));

            Assert.AreEqual("left", policy
                            .getAction(new CellWorldPosition(1, 4)));
        }