算法问题在统一成本解决方案中

时间:2010-07-22 04:06:17

标签: python algorithm search uniform

我正在使用unifrom成本搜索算法。我的解决方案比实际大一点。扩展节点的数量将大于实际数量。

我使用了这个算法:

获取初始节点并将其放入优先级队列.P.queue本身将根据成本排列其中的节点。低成本节点将首先出现。

使用while循环,直到队列为空。

从队列中删除节点并检查它是否是目标状态。如果没有,检查它是否在访问列表中。访问列表是一个包含已经扩展的所有节点的集合。如果没有出现在访问列表中,请获取其继承者以及成本和行动。

计算此节点的成本。

如果成功者的成本大于父节点的成本,请将其添加到队列中并检查此后继者是否在父目录中。如果没有,请让他成为一个pparent,以便我们可以回溯路径。

我的算法是对的还是我需要检查别的东西:

1 个答案:

答案 0 :(得分:2)

您似乎正在实施具有优先级队列的Dijkstra。但由于成本是统一的,BFS就足够了。