algorithm - 房屋之间的距离,Google Directions API 查询限制太低,需要更好的算法

标签 algorithm google-app-engine google-maps shortest-path graph-algorithm

我需要租两间房子。我希望他们尽可能靠近。大约有300间房屋可供出租。我希望使用 Google Maps Directions API 来计算任意两个可用房屋之间的步行距离,这样我就可以对列表进行排序并选择两个距离较近的房屋。

一切都很好,除了 Google 设置了每天 2,500 次查询的理论限制(实际上该限制要低得多,每天只有 250 次)。我有 3002/2 - 300 = 44,700 个查询要进行,所以显然这个限制对我来说是不够的。

这将是一次性的事情,关于如何使用 Google Maps API 完成我需要的任何提示?我可以以某种方式运行分发的程序,这样限制只会影响一个实例吗? Google App Engine 有帮助吗?

我也欢迎提出改进算法的建议。如果两所房子相距很远,而另一所房子离其中一所很近,这意味着它不必检查第三所房子和剩下的房子,因为它们可能很远。我也更关心算法的定性性质,而不是确切的距离,所以也许我可以做一个简单的近似值来减少查询。

谢谢,

最佳答案

任何两座房子之间的地理距离,如乌鸦飞翔,将是步行距离的严格下限。因此,我将从 300 个查询开始,以获取每个房屋的长/纬度,将它们插入 Haversine 公式(例如)以获取 45,000 个无序对之间的距离,然后对它们进行排序以获得按地理距离最近的对.然后用 手头有一些可能的候选人,您可以开始通过对 Google API 的另一组调用来检查步行距离。

关于algorithm - 房屋之间的距离,Google Directions API 查询限制太低,需要更好的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5601790/

相关文章:

algorithm - haskell中列表的排列

java - 二叉搜索树相加算法的实现

python - webapp 在模板标签中有 'elseif' 还是 'elif'

google-maps - Google 街景 JavaScript API 禁用键盘缩放

javascript - Google map 、Z 索引和下拉 Javascript 菜单

python - 欧拉计划数 338

python - 组合和的记忆化与非记忆化时间复杂度分析

javascript - 无法查看标题/信息窗口

google-app-engine - Appengine ZigZag Merge Join Algo

node.js - App Engine 中用于本地开发的环境变量