我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:香港跑狗图 > 调度程序 >

用深度学习取代人工调度全面解析饿了么方舟(Ark)智能调度系统

归档日期:05-23       文本归类:调度程序      文章编辑:爱尚语录

  演讲会议:1024学院旗下品牌iTechClub主办·华东区第十一届互联网技术精英高峰论坛

  对于大部分企业来讲,业务才是驱动研发的核心因素,而深度学习对业务的支撑,也主要集中在提高效率,降低成本等方面上。

  饿了么是个业务尤其繁重的企业。饿了么拥有的配送员数量接近300w,每一名配送员的日订单数量都可能达到30-40单,而在这样的业务压力面前,饿了么要保证平均29分钟的配送时间非常困难。

  人工调度固然有人工调度的优势,比如人工调度员更熟悉所管辖的配送员,比如人工调度员更熟悉所管辖区域的复杂程度。

  业务精英或许能完成高效分配,但大部分人并不是业务精英,个人水平的参差不齐,严重影响了饿了么的配送效率。

  另外值得注意的一点是,饿了么配送员的收入,是用配送单数来衡量的,这就给调度员和配送员之间的灰色交易创造了土壤。

  更要命的是,为了维持一个如此庞大的人工调度体系,饿了么每年至少需要烧掉5亿元。

  系统主要基于四个开发平台:Spark平台,GPU深度学习平台,特征工程平台,AB测试平台。

  发展出来的业务方向主要有六个:智慧物流,智能调度,智能营销,智能客服,图像视觉,智能硬件。

  但系统开发之初,问题暴露出来的复杂度显然足以让一般的技术人员望而却步,这些困难的问题至少可以分为四大类。

  1.运力饱和甚至不足的配送服务,容灾能力极差。业务红火对于老板来说犹如办喜事,对于程序员来说却像办丧事。一旦遇见雨雪等恶劣天气,或者某家店搞了个开业大促,业务压力就会瞬间暴涨。

  2.单人场景的线下配送,意外无法预估。与顺丰等成体系成规模的配送服务不同,外卖行业的配送服务往往面临很多意外情况。比如配送员的电瓶车突然没电了(这个比较囧……),某些大厦的电梯坏了,商家出餐出慢了,等等。程序里的阻塞可以用多进程解决,但业务员是没有影分身之术的。一次配送任务的阻塞,往往会导致之后的多米诺骨牌效应。

  3,配送员:我就是我,颜色不一样的烟火。要知道负责配送的是人,不是机器人。配送员作为一个独立的个体,行为千奇百怪,根本没有统一的模型。一切机械的安排都只能是纸上谈兵。

  4.高精度地图规划。北上广深的人民深有体会,海淀区的人民能把海淀区绕明白就很厉害了,乍一到朝阳区就跟第一次来北京没啥大区别。对配送员来说,每一栋摩天大厦都是一座超级迷宫,哪个电梯哪个门,走错一次可能订单就要超时。在这类业务上的地图规划,仅仅标出街道是不够的。要像《碟中谍》一样标出大厦层数,电梯位置和逃生出口等要素。

  应该说,有能力的程序员不会怕一道复杂的算法题。因为算法题里的输入输出固定,且几乎可以确定存在最优解。

  但这道题里不存在固定的输入和输出,在一系列固定的解决方案和路径规划里,配送员突然停下来抽根烟或许就能把程序员给气死。

  在这个分配系统的算法里,主要考虑的因素有:1.运单剩余时长。2.骑手已有负载。3.骑手绕路距离。4.运单与骑手已有负载的夹角。

  基于有的没的、合理的不合理的等千奇百怪的原因,配送员往往不按照系统给出的最优路径来配送。有时候可能因为他的电动车要没电了,有时候仅仅因为他觉得走另一条路比较拉风。

  所以这个获取当前订单最优解的方案,虽然卓有成效,但还是满足不了业务需求。

  既然但一个体的独特性,会影响分配算法的效率。那么干脆抛弃掉个体概念,该用一个时间区间的维度来考虑问题。

  在这个版本里,算法主要考虑的是:1、运单特征: 起点, 终点, 路面距离。2、骑手特征: 负载, 能力, 绕路比, 最大夹角。3、生成运单骑手匹配度矩阵。4、基于匹配度矩阵做全局最优匹配。

  然而基于上面提到的困难问题第一类,问题还是没有彻底解决。问题的本质是:饿了么的运力是不足的!配送人员的招聘速度是跟不上的!

  而多级调控是通过算法,建立了一个运单紧急度模型,分为紧急单分配、低相似运单分配等等,保证最紧急的订单最快出单。

  实际线下环境的复杂度远远超乎我们的想象。数据有时候看起来是莫名其妙的,因为生产这个数据的原因可能就是莫名其妙的。

  运单相似度模型,骑手背单能力模型(通过机器学习评估人类员工能力的实例),骑手路径规划模型,骑手行程时间预估模型,骑手楼内时间预估模型。

  理论上,只要模型优化的足够好,支撑业务是没有问题的。但同样,调度结果及其依赖算法模型,如果人工智能成了“人工智障”,下游业务人员就会怨声载道。

  为此,算法工程师专门开赴一线,实地观察配送员的配送行为,对算法模型进行了大量优化。同时也直接催生了第五个版本。

  于是,深度学习在这个系统里承担了几乎所有的预测工作,包括不同骑手在送餐过程中的路径选择,以及未来15、30分钟的负载压力。

  为了增加调度系统的“智能”,算法团队首先为调度场景划分了详细的场景,包括:午高峰,平峰,爆单,大厦,小区等特殊场景,根据场景适配多个模型:效果有限分单、等级优先分单等等……

  接下来主要对训练数据进行了优化,从普通一线配送行为的数据采集,提升到采集“专家级”配送小哥配送数据。

  单一行业的提效降本,往往是硬件和软件两方面决定的,在算法层面紧跟住人工智能、深度学习前沿之后,最大的提升就是配送方式了。

  这点从行业头部企业的主要动向上就可见一斑,阿里也要搞无人家配送,顺丰也要搞无人机配送,亚马逊也要搞无人机配送,你们这是要干啥呀!

本文链接:http://mikephotos.net/diaoduchengxu/410.html