确定MongoDB 2dsphere点之间的路由

确定MongoDB 2dsphere点之间的路由,mongodb,algorithm,optimization,distance,2dsphere,Mongodb,Algorithm,Optimization,Distance,2dsphere,我有一个算法,目前从我的数据库中提取几个2Dsphere点(不超过6个),它们彼此之间都在一定半径内。拉取这些点后,我希望以有效的路线对它们进行排序,并按此顺序返回(目前,当我返回它们时,用户可以从一个点发送到离它最远的点,即使途中有点在中间)。使用MongoDB 2Dsphere点是否有一种有效的方法?我试验过的蛮力法不是很有效:我找到离起点A最近的点B,然后找到离点B最近的点C,依此类推。这就是旅行推销员的问题。尽管有一些算法能够很好地逼近有效路径,但暴力攻击在计算上非常昂贵 这篇维基文章

我有一个算法,目前从我的数据库中提取几个2Dsphere点(不超过6个),它们彼此之间都在一定半径内。拉取这些点后,我希望以有效的路线对它们进行排序,并按此顺序返回(目前,当我返回它们时,用户可以从一个点发送到离它最远的点,即使途中有点在中间)。使用MongoDB 2Dsphere点是否有一种有效的方法?我试验过的蛮力法不是很有效:我找到离起点A最近的点B,然后找到离点B最近的点C,依此类推。

这就是旅行推销员的问题。尽管有一些算法能够很好地逼近有效路径,但暴力攻击在计算上非常昂贵

这篇维基文章有一些很好的近似算法,可以让你开始谷歌搜索


有关使用MongoDB地理空间查询实现此目的的示例,请参阅:blog post。