宽度优先在迷宫中搜索,我如何计算状态?

时间:2016-11-28 22:41:07

标签: algorithm artificial-intelligence

我很困惑,为迷宫编程BFS算法,

我知道我需要一个队列,但我的问题是如何生成状态?

例如,迷宫包含一个机器人和一个洞,并阻止

让以下是初始状态:

R BBB
   H 
   H 

  B G 

空间是空单元格(机器人可以穿过) B是块,H是孔,

我的问题是,要使用BFS,我需要一个图表(或相应的树)

但我不知道如何生成这些状态?

清除我的问题,让上面的初始状态为状态A

我怎样才能找到状态B,C,D ......等?

应用BFS算法

我希望问题很明确,

谢谢大家

1 个答案:

答案 0 :(得分:0)

如果迷宫是网格,则状态是一对两个数字:行索引和列索引。 (r,c)的邻居是(r-1,c),(r,c-1),(r,c + 1),(r + 1,c)。您可以维护一对对的队列,以便在迷宫中运行广度优先搜索。