【发布时间】:2015-04-15 23:05:49
【问题描述】:
假设我们有一个 8 拼图问题,空的瓷砖用零标记。 目标状态是:
- 1 2 3
- 4 5 6
- 7 8 0
初始状态为:
- 0 1 3
- 8 2 4
- 7 6 5
...我的问题是,A* 树中的孩子是否可以“复制”或与其祖先具有相同的状态?或者“f(n) = g(h) + h(n)” [其中 g(h) = 移动数 ... h(n) = 每个图块的曼哈顿距离之和] 已经使这成为不可能并且因此我不需要担心这个?..例如,从初始状态:
- 0 1 3
- 8 2 4
- 7 6 5
然后发生以下状态,从而在 A* 树中产生更多的子节点
(动作:向上)
- 8 1 3
- 0 2 4
- 7 6 5
动作:左
- 8 1 3
- 2 0 4
- 7 6 5
动作:向下
- 8 0 3
- 2 1 4
- 7 6 5
动作:正确
- 0 8 3
- 2 1 4
- 7 6 5
动作:向上
- 2 8 3
- 0 1 4
- 7 6 5
...然后动作:左,下,右,上,左,下,右发生...因此将状态返回到初始状态:
- 0 1 3
- 8 2 4
- 7 6 5
这在 8 谜题的 A* 搜索中是否可行?还是 f(n) 会解决这个问题?感谢那些愿意回答的人,任何帮助将不胜感激!
【问题讨论】:
标签: java a-star heuristics sliding-tile-puzzle