我的大学项目已经走到了尽头,我无法找到解决方法。问题是:
给定半径为r的圆形机器人(绿色圆圈) 我需要找到一个路径(任何路径不是最好的)到终点,即蓝点。
图片
障碍物是红色多边形,周围是青色线 代表Minkowski总和。
黑点代表voronoi图。
首先,我应该找到起点(机器人)的较近点和voronoi图点的终点。这些点显示在图像中(青色点)。
然后我想着像A *这样的算法之王来搜索上面沿着voronoi点找到的青色点的路径,这样我就会找到最安全的路径。
问题是我没有办法知道voronoi图中每个点的邻居是哪个。因为正如您在图表的某些部分所看到的那样,存在很大差距。
那你有什么建议?
感谢您的时间。
答案 0 :(得分:1)
答案 1 :(得分:0)
问题在于我无法知道Voronoi图中每个点的邻居是哪个。因为正如您在图表的某些部分所看到的那样,存在很大差距。
可能有更好的解决方案,但这是一个你可以尝试的简单算法:
查找(或手动设置)“连接”点之间的最长距离D.
制作一张Voronoi图中每对点之间的距离表,其中该距离小于或等于D.
以较短距离开始连接所有点,除非它们之间已存在比D短的路径(以避免不必要的小环和切角)。
找到距机器人最近的点和距离目的地最近的点。
在您在步骤3中构建的图表上运行最短路径算法。