我正在建立一个基于在一组位置找到“方便的会面点”的应用程序。
目前我将“方便”定义为“最小化总行程距离”。这是寻找质心的另一个问题,如下例所示(为方便起见,使用笛卡尔坐标而不是纬度和经度):
这些点的最小总行程位置为(0,0),总行程距离为12;质心位于(0,4),总行程距离为16(4 + 4 + 8)。
如果位置仅限于其中一个点,则问题似乎变得更简单,但这不是我想要的约束(例如,this otherwise similar question)。
我似乎无法做到的是提出任何解决此问题的算法 - 欢迎提出建议!
答案 0 :(得分:11)
这是一个解决方案,找到地理中点,然后迭代探索附近的位置,以调整到最小的总距离点。
http://www.geomidpoint.com/calculation.html
这个问题也与
非常相似Minimum Sum of All Travel Times
以下是维基百科关于您要解决的一般问题的文章:
答案 1 :(得分:3)
在某种程度上,您所寻找的是三角形的质心,顶点的权重相等。这将指向重心坐标。
当超越三角形时,存在广义重心坐标的解,您可以通过修改顶点的权重来为人们提供优先级。还没有考虑到的是真实地图上的距离(不能直接向任何方向行进)但它可能是一个开始?