业界 | 每天1800万单,1小时送到,美团外卖如何优化配送模型?

简介: 在4月13号刚结束的O'Reilly和Intel AI Conference上,美团点评的配送算法策略架构师郝井华博士详细介绍了美团外卖即时配送业务的重难点,让我们来看看大数据文摘整理的演讲精华。 郝井华,美团点评研究 美团外卖是全球最大的外卖平台,以及全球最大的即时配送平台。

在4月13号刚结束的O'Reilly和Intel AI Conference上,美团点评的配送算法策略架构师郝井华博士详细介绍了美团外卖即时配送业务的重难点,让我们来看看大数据文摘整理的演讲精华。

e3461b29403ec0b345452bd8d16e66dc4eb86966

郝井华,美团点评研究

美团外卖是全球最大的外卖平台,以及全球最大的即时配送平台。其共有骑手60万,签约商家150万,每天配送外卖1800万单。

196fc888c85ec061803556ed75fa2e0762a9016e

美团要做的是即时配送,也就是在一个小时之内把订单送到客户手中。那么配送模式是如何配置的呢?60万骑手如何能够高效率低成本地工作?

优化配送模式

后台是把一个城市是划不同的区域,用户只有处在特定的区域内打开App才能看到这个区域内的商家,才能点这个商家的订单。每一个区域都有特定的骑手为区域内的商家服务。每个区域每天都有大量的订单,如何高效地提升资源的配置效率,是美团外卖想要解决的痛点。

c6f757ccae653566f71db7e7b7fe49e1fb967bd1

60万的骑手,每个月光薪资就会有几十亿的人民币支出。如何控制成本,提高效率呢?可以从两个方面入手,第一,对骑手进行专业的培训;第二,对配送模式进行效率优化,例如根据区域的实际情况制定合理的配送费,以及合理的配送人数。

在实施层面做出实时的匹配,也就是,用户下单的时候涉及的配送费的动态设定,订单的指派,以及骑手的执行。举一些例子,比如说商家配送范围的规划,一些有争议的小区需要划到哪个区域,划分到各个区域产生的成本如何,收益又如何?加价机制其实是比较难确定的,加多少,往哪些方向上加?这些都是需要考虑的。

1b77ce2c1e2c4c892eba29b4dae2d7b93da3a4fa

这类决策其实是多目标优化问题,用户的满意度,成本收益的情况,都需要考虑。以往这些问题都是用人工的方式解决。

然而人工的方式又会带来许多的问题,比如说在上万个区域中每个区域都会有一个调度员进行订单分配,调度员显然考虑配送模式的时候或多或少会出现低效率问题。还有一个其实也是比较大的问题,人数太多,就会出现或多或少的腐败问题。比如说,有权力的调度员往往会把订单给和他关系比较好的人。

在早期的时候,规模比较小,这些问题还不突出。但是当达到现在美团的体量的时候,这些问题就会变得很严重。因此就需要采用新的、基于大数据、人工智能的解决方案。

15dd5627ecf8d6f6349d115e1609bbba1c63847a

人工智能的发展,大致可以分为3个阶段,第一个阶段是Descriptive,做一些检索和精确的计算(比如说加减乘除),第二个阶段Predictive,其实是用算法发现一些规律,这一工作最早可以追溯到最小二乘等线性拟合算法,复杂一些的就是用语音识别,人脸识别发现一些规律。目前大部分成功的AI应用都是在第二个阶段。第三个阶段Prescriptive是基于这些规律进行最优的决策,比如说机票的动态定价,物流的订单分配。

拥有一个好的模型只是第一步,如何把模型进一步执行、优化,其实是需要花费许多功夫的。

fbf6b40190f6ac60e66c4c61d118ad0fb132af06

来看一个简单的流程,用户下单,商家备餐,骑手在接到单的时候取货,取货完之后进行配送。在美团APP中,你会看到有35分钟、40分钟等时间的送达时间的预测,这个时间的预测要结合一个简单的策略。然后是动态调价,并不是说基于什么样的规则,我们是要对总体的成本和收益进行权衡之后给出定价。

当骑手到店之后,因为店里现有的用户会选择打包或者堂食,所以商家影响外卖出餐的时间是多因素的。另外商家的位置也是会影响配送时间的,在马路边上的商家,骑手到店方便,那么就会缩短取餐时间,如果商家是在高楼层,相对来说时间就会长一些。

对这一简单的流程进行优化,不可能进行一个商家一个商家地决策,需要用到AI技术。

69b399d059fb98151f4c591a73571cc91a6d08a3

通过机器学习开发出的智能助手需要考虑多重因素:如何进行单量预测,如何进行动态的定价,如何选择骑手到店的路径。当骑手取到餐后何时通知用户下来取餐等等。

一些线下的流程也需要算法进行优化,例如我们需要增加新的商家,那些商家能够签约,哪些商家又能够优先签约,签约之后给他制定多少的配送费等等。

提高骑手效率

在基础建设方面,要有一个大数据平台,要保持业务层面和机制的整体运行,在这个基础之上,还需要机器学习的平台,在这之上有许多机器学习的模型,方便对数据进行训练学习。在这两个基础之上还有大量业务的架构。

订单分给谁需要考虑用户体验,骑手的体验,商家体验,平台的配送成本等等。现在面临的主要难点是在考虑用户体验的情况下,如何让骑手的效率最高

11f3b1bd7c4cea91d29da57962abfd261e29da1e

中关村的午高峰大约有200个左右的骑手,如何进行订单分配?最表层的理解是考虑多目标优化。在午高峰的时候每分钟大约有50个左右的新订单进来,每个骑手身上可能都有待配送的订单。

将订单分配给某个骑手,需要考虑他是不是顺路,他是不是交通比较熟,是不是效率能够保证。还有一些质量要求,例如用户点了面条,就要及时的送到,否则就会影响口感。其实留给智能助手考虑的时间不是很多,骑手的位置是不断在变化的,可能上一秒他还适合配送这一单,但是在这一秒就不适合了

在一些工业场景,在用算法解决一些问题的时候,并不是算法为王。需要设计一个整体的方案,需要了解企业场景,业务场景。因此算法的改进优化需要多场景的兼顾。这些不可能一下全面覆盖,需要一个点一个点的去涉及。在没有摸清问题的边界的情况下,最好不要对算法进行优化。

技术上来说主要是两类,一方面是机器学习的方法技术,另一方面是运输优化。机器学习解决一些数据的统计和数据的规律分析。当模型的边界比较清晰的时候,就需要运输优化来解决一些问题。

数据工作是第一步,需要提升所有的数据的精度,提升数据覆盖的层面。一些简单的数据经过统计就可以知道。另一些数据获取则更复杂,比如商户的位置,这些位置是人上报的,这就可能存在因为线下利益关系而上报错误的位置。这时候我们就需要利用骑手的一些行为,利用聚类的方法,掌握商家的真实位置。更复杂的场景,比如上文提到的预估出餐时间,需要一些弱监督学习的方法,根据骑手的反馈,进行统计分析。

ETR问题也是需要考虑的,其实就是怎么样去估计一个路径上每一个点的时间。比如说骑手从一个地方出发,给他规划一个线路,他应该在最少的时间内配送最多的订单且路程最短。需要给每一个节点规划出什么时间可以完成。这个问题意义很大,因为在做订单分配的时候,要考虑是不是能准时送达,准时与否非常影响用户的体验。

7d21d1bcd3bf420c8a73152f022cb875f26067b1

利用优化算法,建立一个基本的关系,骑手从取到送的过程中分配很多的节点。建立参数优化模型,能够将误差控制在4分钟之内。

ae27bb7413530fe5748b822c9d79f99de4c98fb3

在优化的基础上,还要做一些执行的工作。比如开发一个智能助手,能够和骑手进行语音交互,使其不用看手机也能够知道他接到了多少单,他应该接下来做些什么等等操作。还有为骑手导航、进行长期激励等等。

未来要做的是通过多维度协同,实现全局最优化。需要考虑业务维度,空间维度,时间维度。业务维度指送达时间设定、动态定价、运力融合。空间维度指跨区调度、柔性边界、全城优化。时间维度指动态压单、最优指派、配送引导。

12c1b6f147ac50b3a9a1b524533507ea179a48c2


原文发布时间为:2018-04-15
本文作者:文摘菌
本文来自云栖社区合作伙伴“ 大数据文摘”,了解相关信息可以关注“ 大数据文摘”。
相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
6月前
|
Java API 微服务
2025 年 Java 核心技术全面升级与实战应用详解
这份Java校招实操内容结合了最新技术趋势,涵盖核心技术、微服务架构、响应式编程、DevOps及前沿技术等六大模块。从函数式编程到Spring Cloud微服务,再到容器化与Kubernetes部署,帮助你掌握企业级开发技能。同时,提供AI集成、区块链实践和面试技巧,包括高频算法题与系统设计案例。通过学习这些内容,可应对90%以上的Java校招技术面试,并快速上手实际项目开发。资源链接:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
799 41
|
5月前
|
人工智能 数据可视化 开发工具
开发效率提升5倍!聚AI的LangFlow可视化全栈指南
LangFlow 是一个强大的可视化流程开发工具,支持全平台部署与多模型集成。通过 Docker 快速启动、本地开发或云服务部署,用户可灵活配置环境。其核心功能包括四大对象管理、可视化编程、自定义组件开发及与 LangChain 的深度整合,适用于客户服务、金融、医疗等多领域自动化流程构建。结合性能优化与版本管理,助力开发者高效实现企业级 AI 应用。
693 4
|
11月前
|
人工智能 文字识别 自然语言处理
多模态数据信息提取解决方案测评报告
《多模态数据信息提取解决方案测评报告》概述了该方案在部署、操作界面、文档、函数模板及官方示例等方面的表现。其功能强大,涵盖OCR、NLP、物体检测等五大核心能力,适用于多种应用场景。系统运行稳定,尤其在图像识别方面表现出色,但在处理长篇文档和低质量音视频时有改进空间。尽管存在一些小问题,如配置复杂性和依赖库兼容性,整体用户体验良好,推荐给企业和开发者使用。
201 9
|
数据采集 机器学习/深度学习 Python
深度学习中的高效数据预处理技巧
【7月更文第29天】在构建深度学习模型时,数据预处理是至关重要的步骤之一。高质量的数据预处理可以显著提高模型的性能并加速训练过程。本文将探讨几种有效的数据预处理技巧,包括数据清洗、特征归一化和数据增强,并通过实际的Python代码示例进行说明。
1310 5
|
安全 Apache Windows
【zookeeper】在Windows上启动zookeeper
【zookeeper】在Windows上启动zookeeper
|
前端开发
什么是 Mock 测试?
Mock 是在前后端分离开发中,用于模拟后端数据的工具,让前端能提前开发而无需等待真实接口。它的重要性在于加速协同开发,避免因数据延迟导致的阻塞。通过工具如 Apifox,可以创建请求,设定 Mock 参数和测试脚本,进行 Mock 测试以确保数据符合预期。了解 Mock.js 语法有助于更好地进行 Mock 测试。
614 1
|
Java Nacos 数据格式
Spring Cloud Nacos 详解:服务注册与发现及配置管理平台
Spring Cloud Nacos 详解:服务注册与发现及配置管理平台
743 3
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
427 6
|
搜索推荐 JavaScript 小程序
外卖推荐|基于SSM+vue的外卖推荐系统的设计与实现(源码+数据库+文档)
外卖推荐|基于SSM+vue的外卖推荐系统的设计与实现(源码+数据库+文档)
199 1
|
JavaScript Java 关系型数据库
租房管理|基于SprinBoot+vue的租房管理系统(源码+数据库+文档)
租房管理|基于SprinBoot+vue的租房管理系统(源码+数据库+文档)
256 0