给定一组带有来源和目的地的车辆,我需要找到所有车辆的最短行驶时间,还有一些充电站,这对于车辆在任何一个充电站进行1次充电都是必要的
我有以下输入内容:
1。)车辆来源和目的地对([(1,15),(16,25),(6,5)])
2。)充电站[12、8、13、18]
充电站编号的图像12
充电站编号的图像18
在图像 $ node_i $ 中表示车辆的来源,开始是从来源到达充电站的时间,充电是在该充电站充电的时间,目的地是从充电站到达其各自目的地的时间,总计是所有时间的总和。
我需要找到充电站的车辆分配,以使总时间最短。
如果某辆汽车正在充电站充电,而其他任何车辆同时到达,则需要等到充电站空闲为止。
我尝试了一种贪婪的方法,在这种方法中,我将值写入矩阵。
充电站表中的总时间的贪婪矩阵。
在此行中,充电站为列,粗体为每行的最小值,因此我选择它们,但车辆 1,6 被分配给充电站 8 ,这意味着在检查它们的启动和充电时间后可能会有一些等待时间,这是形成的新矩阵。
更新的贪婪矩阵
您可以看到,车辆 1 的值已从 1.21 更新为 1.63 ,现在最好分配 1 到充电站 13 ,因为它有最短的时间,但现在可能又要等待,因为充电站 13 已经分配了 16 。< / p>
解决此类问题的方法是什么?