外卖配送系统涉及到的不仅仅是一个算法的问题,它背后还涉及到社会问题和伦理道德问题。例如:大数据杀熟的问题,例如骑手被困在系统中的问题,例如订单分配的公平性问题,例如配送费用的定价问题等等。本文尝试在科普最基本的配送模型的基础上,讨论本次算法公开所带来的一些社会效应。
几天前美团公布了外卖派单算法的基本框架,原文如下链接:
https://mp.weixin.qq.com/s/qyegF_r_SPGnkEdZqkVjxA
外卖派单算法的基本框架图如下所示:
可以看到本次美团公布的算法框架,也确实就是一个框架而已。显然此次主要的受众是骑手,商家和普通用户。对于运筹学/机器学习的相关研究者来说,看到这个框架也只是了解一个大概,我们更希望看到背后运行的数学模型和算法原理,甚至是代码。当然这部分对于企业来说本身就是安身立命之本,不可能完全公开。本期小编就站在运筹学/机器学习的相关研究者的角度来解读本次美团配送算法背后的原理,以及公布算法所带来的一些社会效应。
这里边涉及到两个问题:1是需要对骑手到达时间进行一个预测(这本质上是一个预测问题,可以采用机器学习方法来进行预测);2是基于之前预测出的到达时间将订单分配给骑手(这本质上一个决策问题,可以采用运筹学的方法来解决)。
配送系统输出的就是一个配送的方案,就是每个订单由哪个骑手去配送。这个在我们专业术语中被称为决策变量,可以由如下表达式确定:
在订单配送中有一些规则是绝对不能违反的,在运筹学中是通过约束来描述这些规则的。那么在订单配送中主要就是2个约束,这2个约束也是很显而易见的,如下所示:
这个很好理解我就不多解释了,如下式所示:
其中为所有订单的集合,为所有骑手的集合
我们不能一下子给骑手安排太多的订单,因此我们用一个常数,来描述骑手能接订单数量的上限。另外每个订单的工作量是不一样的,有的订单距离远工作量就大,有的订单距离近工作量就小,所以我们还需要用 来描述每个订单的工作量,相当于给每个订单做了一个加权。由此我们可以给出骑手配送能力上限约束:
目标函数:所有订单的延误时间之和最小
:为订单 实际配送到用户的时间。
:为订单 计划配送到用户的时间。点过美团外卖的都知道,在我们刚下单的时候系统里马上就有一个订单预计到达时间,这个时间就是 。
为订单实际配送到用户的时间。
为订单计划配送到用户的时间。点过美团外卖的都知道,在我们刚下单的时候系统里马上就有一个订单预计到达时间,这个时间就是。
我们做配送算法的根本目的是什么?就是要让所有订单配送的延误时间最小。所以我们的目标就是希望 实际配送到用户的时间和计划配送到用户的时间尽量接近,所以有如下目标函数:
不难发现这里边难点在于实际配送到用户的时间不太好确定,它和订单本身有关(订单距离的远近,订单商家出餐快慢),还和路况有关(路上有没有堵车),还和天气有关,还和订单所处每天的时间段有关(例如中午饭点餐厅很忙,路上送餐的人也非常多)还和骑手有关(熟练的骑手和不熟练的骑手肯定配送有差异),还和订单配送的客户有关(例如客户不在家,客户手机无人接听等等)。
所以是一个随机变量,严谨点的话 我们应该将上式改写为 期望的形式:
可以看到影响 的因素非常多,这些因素背后的机理也是多种多样的,很多因素也是事先很难确定出来的。
所以从纯学术问题的探讨来看,上面给出的订单配送问题是运筹学中的广义指派问题。广义指派问题是NP-hard,因此想要精确地求解广义指派问题也是比较困难的。目前来说求解大规模的广义指派问题的算法已经有很多了,这类组合优化问题的算法已经比较成熟了。
为了方便科普,这里我们给出的仅仅是一个简化后的配送模型,本模型主要来自于参考文献【1】,想要了解更多细节的内容可以自行查阅参考文献。
可能很多骑手会说“我不懂什么算法,我也不关心什么公开算法流程和数据,我就关心你们得出的结果。”可能很多点餐用户又会说“我不懂什么算法,我也不关心什么公开算法流程和数据,我就关心我能不能付出较低的配送费用按时按点吃上外卖。”
OK,我觉得这个说法没有问题。公开意味着有了监督,你不懂算法过程,自然有人能懂。例如马航MH370出事的原因就是在于信息的不公开。在马航MH370出事之后,各国都强制在民航飞机上安装 ADS-B系统(一种主动雷达系统可以实时向空中广播飞机的当前位置 高度 速度等信息,任何人借助一些设备都可以收听这个广播)。对于大多数普通人来说你不会闲着没事去收听每个航班的ADS-B信号,但是公开本身就意味着总有人能收听,这就意味着有人能监督,出了事情也会很快找到是谁的责任,而不会重蹈马航MH370的覆辙。
另外一方面对于我们这些研究者来说,除了可以监督之外,也可以利用这些数据和算法来自己研究配送算法,乃至于改进配送算法,实现整个配送效率的提升。
最后是我个人的一点碎碎念,外卖配送问题,快递配送问题,库存管理等等这些背后所用到的算法都是运筹学。而普通人对运筹学没有什么概念,但实际上运筹学已经深入到我们生活的方方面面了,只是更多的时候它是在背后悄悄地发挥作用普通人看不到,也了解不到。希望借助这次美团公开外卖订单分配算法的契机,能够更多的科普运筹学,提升普通人对运筹学的认识。我坚信科技能改变我们的生活,运筹学能提升我们的生活质量,但科技并不能解决我们目前面对得所有问题。
美团在做的,其实就是算法的透明化。说实话,很多形形色色的算法与我们密切相关,我们却不知道背后的算法是什么。买东西不一样的人不一样的手机,价格不同。打车同一个地点,换个手机价格不同。拼多多砍一刀就更不用说了。
常说你困在信息的茧房里,但是我们想知道的算法机制都被隐藏了,信息又有什么开放性可言呢?我觉得之前骑手,平台,商家和用户之间出现矛盾,而且矛盾无法解决的原因就是因为信息不透明。哪怕是出现问题之后,我们甚至都分辨不出到底是谁的责任。
至少现在一切都在阳光下了,而一旦到了阳光下,事情就必然会向好的方向发展。
无独有偶,古巴比伦王颁布了汉谟拉比法典,刻在玄武岩上至今已经三千七百多年了。三千七百多年过去了,我们今天重新审视汉谟拉比法典,它完美吗?它不完美。
我们看看这几条:
1 入室偷窃者死;2 修女喝酒开酒店会被处死;3 奴隶忤逆主人,死刑。
从现代的眼光来看,这份法典包含了奴隶社会的残余,它依然包含了对民众的压迫。但是汉谟拉比法典的意思是什么,是成文。一旦成文,双方各有监督。即使存在不公平,这种不公平在透明公开之后也将被法律条文限制在一定的程度之内而不是毫无限制的肆意妄为。这本质上是古巴比伦贵族在向平民让渡对法律的知情权和对法律的部分解释权。
可以想象在没有公开透明的成文法之前,法律的本质就是贵族说啥就是啥,平民没有和贵族讨论的余地。至少在面对规则的时候是平等的,后续只需要慢慢改良规则本身就好了。
回过头来我们再看美团的算法。美团的这个算法完美吗?不完美。
至少目前来看骑手和消费者的矛盾不能解决:骑手希望安全并且多赚钱,消费者希望配送费少并且送得快。算法目前解决不了这样的矛盾,不可能让每一方都满意,但这并不能说明美团公开算法流程湿没有用的。相反,就跟汉谟拉比法典一样,算法透明化之后,本质上是美团把算法的知情权和解释权给到了用户和骑手。只有这样骑手和用户才能在与平台的对话关系上形成对等。有矛盾有争议就会有了迭代的方向,整个行业才会进步。
参考文献
【1】Liu, S., He, L., & Max Shen, Z. J. (2020). On-Time Last-Mile Delivery: Order Assignment with Travel-Time Predictors. Management Science.
小米25届校招供应链类、物流类岗位,11.30截止
8387 阅读特斯拉实习生招聘物流类岗位
5187 阅读中国物流集团社招仓管员、物流专员、进出口单证员、物流费用结算员、销售业务员
5129 阅读招贤纳新丨美通招聘这些岗位人才
4325 阅读宁德时代2025届校招供应链类岗位
4307 阅读陕西铁路物流集团校园招聘2023-2025届毕业生
3795 阅读【央企】宝武资源2025届校园招聘物流等专业
3705 阅读喜百年供应链集团社招分公司城市负责人;物流销售总监;国际物流销售专员/经理;物流销售;大客户销售经理;JAVA后端开发工程师
3452 阅读华域汽车2025校园招聘供应链类岗位
3285 阅读顺丰社招SME客户经理;储备网点负责人;(医药)产品管理专员;业务支持专员(大同城业务);(大件/重货)产品运营专员等
3026 阅读