解惑 | 百度地图智能调度算路引擎如何做到又快又准?

385 阅读3分钟

百度地图智能调度以覆盖全国的物流地图为数字化基础,依托云计算、大数据、人工智能等技术构建强大的算法能力,通过灵活配置约束条件以及支持大规模计算的优势,为不同行业物流场景下的客户提供优质解决方案。很多小伙伴可能会比较好奇,为什么百度地图智能调度可以做到为企业提供效率高、成本低的运输或配送方案呢? 接下来,我们将对此进行解答。
百度地图智能调度通过自研的算路引擎为企业提供智能、高效的运输或配送方案。当算法引擎运行时,会基于订单和车辆两个维度进行对应关系以及配送顺序的海量规模的排列组合。随后,算法引擎通过结合订单目的地址距离、配送时间、导航方式等内容计算出每个组合对应的成本,最终筛选出履约率更高、成本更低、更可执行的计划方案。所谓“更可执行”,就是要将出发地与所有订单目的地结合结网,并基于任意两点组成货车导航路线的复杂拓扑矩阵关系,这样计算出的道路货车才具备可通行性。因此在整个过程中,智能调度路网矩阵计算系统对整体方案的排单排线计算速度起到了决定性作用。

image.png

路网矩阵通常是基于客货车导航的批量算路接口来计算的,当我们传入M个起点N个终点进行计算时,批量算路内部实际上是将其拆分为M*N个请求并行的分发到后端不同的导航引擎实例上进行计算。那么整体的计算速度取决于客户所购买的批量算路的并发额度,即耗时 = M * N / qps,单位为秒。这种方式在订单地址的数量规模较大时,耗时会呈指数级增长。如500个订单地址,在qps为100的情况下,需要计算(500 * 500) / 100 =2500秒(约42分钟),耗时较长。
在这种情况下,当企业面对大规模订单地址计算场景时,通常需要提前创建路网矩阵,且需要相关人员进行较为复杂的路网创建、更新等维护操作,不仅消耗人力还极易出错。尤其遇到变化较频繁的动态地址时,无疑为企业业务开展带来诸多不便。

image.png

为了解决上述问题,百度地图智能调度充分发挥地图优势,打造出全新的高性能路网矩阵计算系统。 该系统采用了为调度场景量身定制的多点对离线算路引擎,能够在一个引擎实例上直接完成M*N个请求的批量计算,更好地满足大规模订单地址场景的计算需求,还可灵活且快速地完成路网矩阵创建以及排单排线计算工作,满足电商、快消、冷链等行业物流场景的配送需求。经过优化后,500个订单地址只需要约30秒即可完成计算,性能提升80倍+。此外,该系统还能更好的结合多种类客车、货车车型的物理限制(限高/限宽/限重/限轴重)、交规限行、路况等制约条件,使得算法计算结果更能满足企业实际业务使用,大幅降低企业人力成本,提升配送效率。

image.png

image.png