是否有一种算法可以对旅行商问题进行近似最优划分,从而创建需要同时完成的路线?

问题描述

我有一个问题要解决。我需要开车去7962个地方。车辆以 10 公里/小时的速度行驶,每次我访问一个地方,我都会在那里停留 1 分钟。我想将这 7962 个地方分成子集,这最多需要 8 个小时。因此,假设 200 个地方需要 8 个小时,我访问它们并在第二天回来访问另外 250 个地方(200 个地方子集将需要更远的旅行距离)。对于距离,我只关心欧几里得距离,无需考虑通过道路网络的距离。 A map of the 7962 places

到目前为止我所做的是使用 k 均值聚类算法来获得足够好的子集,然后使用 Lin Kernighan 启发式(协和程序)来找到距离。然后计算时间。但我的结果从 4 小时变为 12 小时。有什么想法可以让它变得更好吗?或者一起完成整个任务的代码。提出任何建议,但我不是程序员,我只是偶尔使用 Python。 坐标集: http://www.filedropper.com/wholesetofcoordinates

坐标子集(40 个簇使用 k 均值算法生成): http://www.filedropper.com/kmeans40clusters

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)