首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从相同的地理点画出相等的路径

从相同的地理点画出相等的路径
EN

Stack Overflow用户
提问于 2019-09-11 14:40:22
回答 1查看 155关注 0票数 3

我有10,000个地理点(POS),10个销售员,和一个起点。的目标是避免销售人员之间的歧视,每个人都应该走相同的距离和相同数量的销售点。

要做到这一点,我认为应该适用这些规则:

  1. 用相同数量的地理点(POS)为每个销售员指定从起点开始的路径。
  2. 每条路都应该有相同的距离。

我的解决方案是按距离对GPS坐标点数组进行排序,然后将每个点分配到一个路径,直到循环结束,但怀疑这是否有效。

实现这一目标的最简单算法是什么?

EN

回答 1

Stack Overflow用户

发布于 2019-09-18 05:28:07

你有一个很好的起点,从一开始就按距离排序。现在把10,000点看作1000个同心圆环,每个环10点。我们所要做的就是把每一个戒指上的一个点分配给一个销售员,如下所示:

  • 按当前点的路径长度给销售人员下订单
  • 从拥有最长路径的推销员开始:
    • 让推销员取最近的点(当前环中的10点)。
    • 继续寻找下一位推销员(目前仍有9点)
    • 其他8名销售人员等等

如果你从外到内迭代环,路径长度的差异就会变小(而不是从小环变大)。

你可以从最外面的圆环上给每一个销售员播种每一个点。

对于“最近”的步骤,您只需将最后一个添加点连接到正在考虑添加的当前点。对于每个销售员的点集,路径不会是最短的,但是每个路径都会有相同的无效率,而且总体上路径长度差异将收敛到零。

如果你想改进每个销售员的路径,当你考虑添加一个点时,你可以在候选人的“in set”中找到两个最近的点,然后在它们之间插入,或者如果这个距离小于两个最近点的距离之和,就把它附加到‘结束’点之一。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57891590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档