我有一个TSP问题,我似乎无法以某种方式解决。 它由大约1200个地址组成,其中包括它们之间的所有距离(以秒为单位),频率(每周一次,每周两次,每周3次等)和货物重量。
我研究过TSP解决方案,但它们似乎只提供了计算最短路径的方法,而不是在多条路径上划分地址。
我应该根据频率将这些地址划分为5天。 然后每天我都应该通过2条路线将地址分开,以便用货车开车。
此外还有3个限制因素:
我尝试通过构建一个由greedysearch作为初始路由的TSP算法来解决这个问题,然后继续使用localsearch来找到局部最优。 然后我试图在路线之间交换地址,然后检查总距离是否随之减少。
我可以使用多线程在大约10-20秒内检查一组路线。 正如你现在可能想象的那样,这是非常缓慢的,似乎根本无法解决问题。
到目前为止,我似乎无法找到一个接近目标距离的解决方案(我已经在没有约束的情况下管理了8000,而在约束条件下它应该低于6000)。 这一切都没有实现前面提到的约束(这可能是通过对未满足的约束应用某些惩罚来完成的。)
解决这个问题的智能/好方法是什么?
提前致谢!