有一个迷宫,其中A点是入口,B点是出口。有人找到了从A到B的方法。我的目标是找到一个更短的方法(如果存在)。迷宫太大,无法在所有交叉路口四处乱行。人工智能可以帮助我解决这个问题吗?
如果这是一项适合AI的任务,我应该特别寻找哪种AI?
答案 0 :(得分:1)
您会寻找某种pathfinding
技术。
您要采取的第一步是将迷宫转换为更数学的表示形式,例如graph。为此,您可以在每个开放空间处放置一个vertex,并在所有未被墙壁遮挡的顶点之间添加edges。
完成此操作后,您可以应用任何一种图形遍历算法来找到最有利的路径。
通过迷宫找到最短路径的“传统”方法是使用Dijkstra's algorithm。要通过潜在的大图查找一条路径,使用基于heuristic的搜索算法(例如A*)可能要快得多。
或者,如果迷宫很大但固定,并且点B的位置随时间变化,那么建立迷宫索引并将其用于最短路径的快速查找可能会有所帮助。可以使用bellman-ford algorithm来建立这样的索引。