OSRM:-/route/v1/driving 中相同(子)路线的不同 distance/duration

OSRM: -different distance/duration for same (sub)route in /route/v1/driving

我正在使用 OSRM 检索 durations/distances 数百万条短途路线。为了有效地做到这一点,我以 'http://localhost:5000/route/v1/driving/longitude_departure1,latitude_departure1;longitude_arrival1,latitude_arrival1;longitude_departure2,latitude_departure2;longitude_arrival2,latitude_arrival2;等等等等?overview=false'

我批处理请求以加快处理速度,然后将 Json 结果分开,每个奇怪的响应分支都是我需要的结果。我们发现如果查询超过 500 个点(对我来说是 250 次骑行),这将出错,所以我将查询限制为 250 次骑行。这本来应该没问题,直到我发现调用个人乘车不会导致与批量请求相同的 duration/distance。

我使用的例子(使用localhost:5000):

单程: http://router.project-osrm.org/route/v1/driving/5.437881482356651,52.129306402910395;5.43154421722558,52.13201994238261?overview=false

3 批游乐设施: http://router.project-osrm.org/route/v1/driving/5.43084097657677,52.14466625721029;5.4286627903353,52.1431390952977;5.437881482356651,52.129306402910395;5.43154421722558,52.13201994238261;5.43154421722558,52.13201994238261;5.4208318605057295,52.1339190601066?overview=false

我本地 OSRM 引擎中的结果:

距离:1583.5

时长:228.7

距离:1651.6

时长:268.3

奇怪的是,网上的结果是一样的,但是和我的线下结果不一样。后者可能是因为设置(我根本没有改变)但我不明白为什么批处理和单次调用不同。

距离:1137.1

时长:350.7

是否有对此行为的有效解释或者这是一个错误?我可以想象 OSRM 不会评估批处理调用中的所有选项以优化请求的速度。

我不确定我是哪个版本 运行,但我已经在今年 5 月 14 日安装了我的路由引擎。我从 geofrabrik

下载了荷兰地图 material

如果有人有同样的问题,我已经找到答案了。事实证明这不是错误,而是lua配置文件中的设置:

continue_straight_at_waypoint  = true,

这条线确保汽车不会在随后的 2 次骑行中掉头,在单次骑行中,OSRM 始终假设汽车面向最佳启动方向,在批量骑行中,这不是必然如此。

因此,我的解决方法是将参数更改为 false。