我不是做算法开发的, 但是遇到一个让我很好奇的现象, 希望实际工作中搞过路径规划算法的帮忙解答:
** 故意绕路 **如上三张示例图中的问题, 各种汽车导航软件 (高德, 百度, 滴滴等) 几乎都会遇到.
比如:
即便是没有限行, 禁左禁右, 没有施工等外部因素, 大多数导航软件还是会经常如此规划. 能否从技术和实际角度分析为什么这些导航软件会如此规划行车路线?
1
nii 2022-10-20 01:33:27 +08:00 2
不要绕路要直行
|
2
also24 2022-10-20 01:52:28 +08:00
第一张图,你的目的地在马路的哪一侧? 你给出的两条路线,分别到达的是马路的东侧和西侧。
第二张图,蓝色路线需要经过两次左转,左转是常见的 “更容易耗时” 的路口,有可能是导航内部计算时认为,即使通过拥堵路段,也比两次左转更快。 第三张图,有一定可能性是 “掉头” 默认无需等待,所以优先了大路,另外不太清楚大路右转上小路,以及 “的” 字下方路口的各方向平均等待时长信息。还有就是左侧蓝色路线,有一次左转。 注意,以上只是提出一种可能性,并不是说一定如此,也不是说我觉得这样是正确行为。 具体信息需要结合各方向的车道数、拥堵长度、路口平均等待时长等信息来判断。 |
3
also24 2022-10-20 02:00:32 +08:00
另外补充一些关于默认 “大路优先” 的看法。
之前有段时间天天打车上班,也经常指导司机走几条导航不会推荐的小路,在绝大部分时间里,都是更快的,但是确实也遇到过意外情况。 1 、小路往往只有双车道,但凡出现事故,两边很容易排长龙。 2 、小路也会更经常遇到占道施工等情形。 3 、小路往往缺少出入口,一旦出现上面的情况,要么等、要么原路返回。 4 、小路可能没有车流量信息,或车流量信息不可信。 5 、部分小路存在 “时效性”,大家都一窝蜂的走小路以后,反倒没有大路快了。 注意,以上只是有时会出现的情况,但这是确实存在的 “风险” 。 导航软件由于使用人群庞大,可能会更倾向于默认规避掉这些风险。 另外由于第 5 条的原因,如果导航软件默认走小路,也许小路很快会变得拥堵起来,效率反而降低。 |
4
lambdaq 2022-10-20 04:45:13 +08:00
才开始开车的时候,我也觉得导航软件犯傻了,直到有一次我按照我的想法去开车,走到路口发现禁止左转。。。于是走了更绕的路才到达目的地。。。。。从此如果去陌生的地方,就再也不瞎开了。当然百度和腾讯是真傻。高德偶尔傻。
高德唯一遇到真傻的情况,是我们一条路他丫的有一个像素的漏点,每次导航要绕个大圆圈。。。 |
5
dqzcwxb 2022-10-20 09:11:24 +08:00
堵的路线至少能过,只是慢点
不堵的路线大概率是过不去的要不然不会没人走 |
7
ljspython 2022-10-20 09:39:26 +08:00 1
先说是不是,再说为什么。
很显然,不是 |
8
lakehylia 2022-10-20 09:50:59 +08:00
他已经导了一部分司机走那条路了,剩下的就给你换条路导
|
9
NewYear 2022-10-20 10:49:57 +08:00
用导航的时候,极少数时候会在十字路口走向某个错误方向几公里,又折回来同一个十字路口再走向正确的方向。
有些区域,全部压力都在主干道上,没有次优车道可以疏 不用导航的时候,时不时会走入单行道,有时候对面明明是单行道但是排队车辆却预留了空间给对向车道进来……让我以为可以过去,形成误导,此后基本不再自己决定路线。 有时候比较郁闷是因为规划有问题,道路没有形成可以疏导的次优路线可以走,只能全部挤在主干道上,主干道又是各种红绿灯导致堵死很长的距离…… |