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)));
}
}