使用Astar(A星)算法解决八数码问题(Python代码)
Astar算法本质上是一种图搜索算法。图搜索算法就是将问题空间看作一个有向图空间,这个图空间由一个个图节点构成,问题的求解就转化为在问题空间中从初始节点出发,寻找一条通向目标节点的路径。在八数码问题中,棋局的每一个不同的状态都是一个节点,节点之间的转换是通过移动空格实现的。这样,通过选定初始节点和确定图转换规则(本问题中就是移动空格),我们就可以生成一个状态图,如:既然问题已经转化为图搜索问题了,那么我们可以确定一下搜索策略了。
原创
2022-10-11 23:34:12 ·
4969 阅读 ·
7 评论