我需要为Peg solitaire / Senku的游戏编写解算器
已经有一个问题here,但建议的答案是带回溯的强力算法,这不是我正在寻找的解决方案。
我需要找一些启发式来应用A *算法。剩余的钉子不是一个好的启发式,因为每一个动作都会丢弃一个钉子,所以成本总是一致的
有什么想法吗?
答案 0 :(得分:2)
我正在读一篇论文,谈论这个问题link, 他们提出了3个启发式方法:
1 - 下一步可以使用节点数,考虑下一步的步骤更多,节点更好。
2 - 隔离桩的数量 - 节点的隔离桩越少越好。
3 - 更好的节点在电路板上更少的挂钩。
对于这个问题,这可能不是更好的启发式方法,但似乎是一种简单的方法。
答案 1 :(得分:0)
你可以做rossum建议。另一种选择是使用距离中心的距离(或距离的一些其他函数)的总和。或者你可以将两者结合起来。