我有一个路线图,表示从一个交汇点到另一个交汇点的交汇点和链接的有向图,每个链接都用它自己的遍历时间(穿过链接所需的时间)加权,我要求找到一个算法来获取结点A到结点B并从结点B返回到结点A,这样总路径成本(时间)所花费的时间不会超过最优路径成本(即A *算法返回的路径成本)的10%时间重叠到B的路径和从B到最小的路径,也就是说,如果t(x,y)表示交叉链接的时间(x,y),我需要将t的总和降到最小(x, y)t(y,x)表示重叠的链接 . 该算法应该是针对手头问题和完成的最佳算法(它也应该是高效的)并且可能使用A *的一些变体,如A * epsilon等...

有没有人知道如何解决这个问题?我正在考虑将此问题的状态表示为(junction,flag),其中flag指示当前节点是否是已经通过结点B且目标状态为(A,True)然后使用A * epsilon的路径的一部分在这...但我不知道如何考虑时间重叠问题..我猜我的建议不是我打算解决这个问题的方式 . 任何帮助将不胜感激 :)