【发布时间】:2016-07-18 17:18:34
【问题描述】:
我正在实现一个能够解决任何迷宫的机器人(机器人只有前置传感器,但我让它扫描周围环境),我能够让它把迷宫变成一个地图,其中 0代表墙壁,1 代表道路,可能有倾斜的道路。现在,机器人转弯速度不快,但沿直线移动的速度相当快。因此,通过稍微倾斜的走廊的正常最短路径算法会很慢,尽管路径足够宽。
例如,我们发现
0001111111000
0011111110000
0111111100000
1111111000000
1111110000000
作为可能的地图。我希望机器人能够识别出它可以对角行走,甚至可以直接向上然后再向右走,而不是每次都以正常的最短路径算法转弯。
有什么想法吗?此外,也欢迎完整的算法更改 - 我对此很陌生。
【问题讨论】:
-
你一次得到所有的地图?
-
你能告诉我直线移动和转弯之间的时间差吗?这里的最短路径应该计算到达目标的最短时间?
-
您可以使用 2D 网格图 A* 来实现这一点……转动和移动的单元格值增加不同。你也可以对齐墙壁还是只做 90 度转弯?单元格中的机器人宽度是多少......这也是最快的路径而不是最短的
标签: algorithm