在一个研究项目中,我的项目组正在开发一种机器人,该机器人在5x5的地雷上行驶。我们不知道地雷的位置,也不能越过地雷(只允许传感器感知它)。
我们的目标是为起点位于矩阵点(1,5)以下的地雷扫描该矩阵(尽可能快)。我们认为这个矩阵的边缘和起点将是我们TSP问题的顶点,但我们仍然坚持找到一个好的算法,如果这个算法更快,它可以(如果需要的话)多次越过边缘。
我们目前唯一拥有的是41x41矩阵,其中包含从边缘到另一边缘的所有可能方式(如果检测到矿井,可以将其更改为infinte)以及预定义路线的备份计划检测到矿井将其发送到下一个点。
什么是最快的算法可以解决我们的问题,你还可以提供一个示例c代码或想法如何创建它?
答案 0 :(得分:0)
回答一般性问题(如何使用可以多次访问的顶点解决TSP):在运行标准TSP求解器之前运行Floyd-Warshall算法。
回答您的具体问题:由于您不知道游戏开始时地雷的位置,因此每当您发现路线被阻挡时,您都必须重新计算路线。