我正在寻找一种能够连接大量地理坐标(100-1000)的算法,在它们之间创建最短的路径,从任何地方开始并在其他任何地方完成。我正在使用Python。
我已经研究了可用的算法,我的问题类似于旅行推销员,但它需要我定义一个起点,并在最后回到同一点。我将把优步带到任何起点,从任何其他终点回到主场。我想要的是尽可能少地走路时覆盖所有点。我不在乎它的开始或结束。
Prim和Kruskal的算法似乎找到了很好的起点和终点,但它们创造了一棵树,而不是像TSP那样优化的步行路线。
Prim的算法:
Kruskal的算法:
基于Prim / Kruskal的期望结果,但使用TSP逻辑(手动绘制的示例,未优化):