3、八数码问题,初始状态和目标状态分别如下所示
2 1 7
8 6 3 4 5
1 8 7 2 6 3 4 5 初始状态 目标状态
规则:(1)从空格左边开始顺时针旋转;(2)不许斜向移动;(3)也不许移回先辈节点。
假设代价函数为f(n)?d(n)?w(n),其中d(n)表示当前节点所在层的深度,w(n)表示“不在位”数字的个数, 试利用A算法求取初始状态到目标状态的路径,并在相应的节点旁标注节点扩展的顺序。
2 1 7 8 6 3 4 5
S(4) S(4) S(5) S(5)
2 7 8 1 6 3 4 5 2 1 7 8 6 3 4 5 2 1 7 8 4 6 3 5 2 1 7 8 6 3 4 5
S(6) S(5) S(4) S(6)
2 7
8 1 6 3 4 5 2 7 8 1 6 3 4 5 1 7 2 8 6 3 4 5 2 1 7 3 8 6 4 5 S(4) 1 2 3 8 4 7 6 5 S(6) 1 2 3 7 8 4 6 5 S(4) 1 2 3 8 4 7 6 5