2012-11-21 53 views
2

我为慈善基金会工作,为芝加哥各地的家庭提供500次感恩节晚餐。自动集群地址

我需要给100个司机5个家庭交付明年。我的梦想是将地址自动分组成5s,彼此最接近。有关如何做到这一点的任何想法?

谢谢 巴蒂尔

照片管理 https://www.facebook.com/media/set/?set=a.383650448381849.91573.143955182351378&type=1&l=f0e10e779c

+1

这样做是非常不平凡的问题。只需获得5美元的街道地图,绘制地址,然后使用标记将它们分组即可。 –

+0

这不仅仅是微不足道的,因为您还需要考虑交通方向,河流桥梁等。两个地址可能会在一条直线上关闭,但在距离最近的桥最近的一条河流的两侧。搜索“旅行推销员问题”或TSP,例如:http://gebweb.net/optimap/ – Marcelo

+0

Marcelo您推荐的网站非常好,谢谢!询问他们是否可以将地址限制增加到500+。 – shane1800

回答

0

简单的解决办法,以将它们沿着空间填充曲线分组。空间填充曲线会减小尺寸并重新排序点。它还将飞机细分,并在何时它也保留一些空间信息。它在绘图应用中被广泛使用。特别是希尔伯特曲线可以有很大的帮助。我写了一个可以解决你的问题的PHP类。当你想了解更多信息时,给我写一封电子邮件。基本上你也可以使用mysql的空间扩展和排序查询。