我有位置列表及其坐标,当前位置为lat long。 现在,我想根据我的位置列表(lat-longs)找到最短的路线
我需要根据路线明智地对位置进行排序。
任何帮助将不胜感激。
答案 0 :(得分:3)
只是一点背景知识。 看来你正试图解决旅行推销员"问题。即。推销员访问所有客户(或前往所有地点)的最佳途径是什么。
最着名的算法称为Djikstra's algorithm 它本质上是在图中找到所有节点之间的最短路径的算法。
如果您能够在图形数据结构中表示您的位置,您可能可以使用Djikstras算法来解决您的问题。
然而,还有另一个问题,即如果图表中的节点太多(位置太多),那么您将无法使用此算法来获得最短距离。这是因为算法非常复杂,图中的节点越多,计算答案所需的时间就越长。如果是这种情况,则需要使用其他算法来近似最短路径。这不太可能给你实际的最短路径,但它应该给你一个很好的路径。这种方法的算法是Simulated annealing,因为你需要为每个应用程序微调某些变量,所以它涉及的内容要多得多。