滴滴 KDD 2018 论文详解:基于强化学习技术的智能派单模型

国际数据挖掘领域的顶级会议 KDD 2018 在伦敦举行,今年 KDD 吸引了全球范围内共 1480 篇论文投递,共收录 293 篇,录取率不足 20%。其中滴滴共有四篇论文入选 KDD 2018,涵盖 ETA 预测 (预估到达时间) 、智能派单、大规模车流管理等多个研究领域。

四篇论文分别是(文末附论文打包下载地址)


  • Efficient Large-Scale Fleet Management via Multi-Agent Deep Reinforcement Learning

    Kaixiang Lin (Michigan State University); Renyu Zhao (AI Labs, Didi Chuxing); Zhe Xu (AI Labs, Didi Chuxing); Jiayu Zhou (Michigan State University)

  • Multi-task Representation Learning for Travel Time Estimation

Yaguang Li (University of Southern California); Kun Fu (DiDi AI Labs); Zheng Wang (DiDi AI Labs); Cyrus Shahabi (University of Southern California); Jieping Ye (DiDi AI Labs); Yan Liu (University of Southern California)


  • Large-Scale Order Dispatch in On-Demand Ride-Sharing Platforms: A Learning and Planning Approach

    Zhe Xu (AI Labs, Didi Chuxing); Zhixin Li (AI Labs, Didi Chuxing); Qingwen Guan (AI Labs, Didi Chuxing); Dingshui Zhang (AI Labs, Didi Chuxing); Qiang Li (AI Labs, Didi Chuxing); Junxiao Nan (AI Labs, Didi Chuxing); Chunyang Liu (AI Labs, Didi Chuxing); Wei Bian (AI Labs, Didi Chuxing); Jieping Ye (AI Labs, Didi Chuxing)

  • Learning to Estimate the Travel Time

Zheng Wang (Didi Chuxing); Kun Fu (Didi Chuxing); Jieping Ye (Didi Chuxing)


本文是对滴滴 KDD 2018 Oral 论文《Large‑Scale Order Dispatch in On‑Demand Ride‑Hailing Platforms: A Learning and Planning Approach》的详细解读。

在这篇文章中,滴滴技术团队在其 KDD 2017 论文《A Taxi Order Dispatch Model based On Combinatorial Optimization》的基础上,新设计了一种基于马尔可夫决策过程 (MDP) 的智能派单方法,通过将派单建模成为一个序列决策 (Sequential Decision Making) 问题,结合了强化学习和组合优化,能在即时完成派单决策的条件下,基于对全天供需、出行行为的预测和归纳,达到优化一天之内司机整体效率的效果,能在确保乘客出行体验的同时明显提升司机的收入。

640?wx_fmt=jpeg

研究背景

移动出行的本质是在乘客和司机之间建立连接。在滴滴,平台日订单达 3000 万,高峰期每分钟接收超过 6 万乘车需求,如何设计一个更高效的匹配算法来进行司机和乘客的撮合也成为非常核心的问题。

当下滴滴的专车、快车等业务线已经在普遍使用智能派单模式,即从全局视角出发,由算法综合考虑接驾距离、服务分、拥堵情况等因素,自动将订单匹配给最合适的司机接单。论文所述的算法也是在这一派单模式下的改进。

然而实际上,出行场景下的司乘匹配非常复杂。一方面,高峰期出行平台每分钟会接到大量出行需求,一方面车辆会在路上不停地移动,可能几秒后这个司机就通过了一个路口,或是行驶上了高速路;不仅如此,每一次派单的决定也都在影响未来的司机分布。

这些都对算法提出更高的要求: 不仅需要足够高效,能快速地对司机和乘客进行动态、实时的匹配,秒级做出决策,同时还要能基于未来情况的预测,考虑匹配算法的长期收益。此外还要在考虑司机收入的同时保障用户体验,全局优化总体交通运输效率。

方法简述

为了解决上述问题,滴滴技术团队创新性地提出了一个融合强化学习和组合优化的框架。算法的主要思路如下:

1) 平台下发派单决策需要在秒级做出,同时每次决策的优化目标均为提升长期收益。由于该问题自然形成了序列决策 (Sequential Decision Making) 的定义,使用马尔可夫决策过程 (MDP) 进行建模,并用强化学习求解;

2) 针对司乘间多对多的匹配,建模成一个组合优化问题,以获得全局最优。

通过将二者结合,即将组合优化中的司机和乘客的匹配价值,用强化学习得到的价值函数 (Value Function) 来表示,即得到了所述的算法,其流程如下图所示。

640?wx_fmt=jpeg

模型定义

这一定义的马尔可夫决策过程由以下模块组成:


智能体 (agent):定义每个司机为一个智能体。虽然此定义会使问题变为一个多智能体学习 (multi-agent) 求解问题,但单司机作为智能体的方式可大大减少状态和动作空间,使得求解变得可能;


状态 (state):状态 s 定义了司机所处的周边信息。为简化起见,论文定义司机所处的时间和空间为其状态,并将时空进行量化为 10 分钟的时间段和固定大小的区域。这样,一个完整的 episode(记为一天)由 144 个时间片组成,每个城市包含着数千至数万的区域单位。

动作 (action):动作 a 定义了司机的完成订单或空闲操作。对完成订单而言,司机会经过前往接乘客、等待乘客和送乘客到目的地等过程。

状态转移 (state transition) 与奖励函数 (rewards):完成订单的动作会自动使司机发生时空状态的转移,其同时会带来奖励,我们定义奖励 r 为订单的金额。

在定义了 MDP 的基本元素之后,下一步即选定一个最优的策略,使其最大化累积期望收益。

匹配策略

在此 MDP 的定义下,平台派单的过程即针对每一次分单的轮次(2 秒),平台会取得每个待分配司机的状态 s,并将所有待分配订单设为司机可执行的动作之一。该问题的优化目标是 在确保用户体验的基础上最大化所有司机的收益总和。论文将其建模为二分图匹配问题,使用 KM((Kuhn-Munkres) 算法进行求解。

640?wx_fmt=jpeg

在二分图建图的过程中,某司机和某订单的边权实际上表示了司机在状态 s 下,执行完成订单的动作 a 下的预期收益,即强化学习中的动作价值函数 (Action-State Value Function) Q(s,a)。该函数表示了司机完成某订单后,可获得的预期收益,其包含了两部分:订单的即时收益 r,以及司机完成订单后新状态下的预期收益期望。

价值函数

如何评估司机出现在某个特定时间/空间时的价值也成为一个核心问题。在强化学习中的价值函数表示了智能体 (Agent) 在某状态下的预期累积收益的期望。而在滴滴这一场景中,司机处在某状态下的价值函数,则对应了在常态状态下司机出现在某时空位置下的预期流水收入。

通过将时间和空间进行量化,再基于滴滴平台上海量的历史数据资源,滴滴使用动态规划 (Dynamic Programming) 的方法求解出了每个时空状态下司机的预期收益,即价值函数。价值函数实际上代表了滴滴出行平台上供需状况的一种浓缩。下图显示了某城市晚高峰和平峰的价值函数示意。

价值函数和匹配策略相结合

将价值函数和组合优化的目标函数结合在一起,即形成了完整的派单方法。算法流程包括:

离线部分

白话解读

离线learning部分

本质上是将任意时刻任意空间位置离散化为时空网格,根据派单记录(含参加调度但无单的司机)计算该时空网格到当天结束时刻的预期收入。

关键问题:怎么计算预期收入?

动态规划思路:假设总共有时刻区间为[0, T);先计算T-1时刻的所有网格的预期收入(此时未来收入为0,只有当前收入),其本质就是计算当前收入的均值;然后计算T-2时刻的所有网格的预期收入;...;以此类推

这样的话,就可以计算出每个时空网格到当天结束时刻的预期收入。

clipboard.png

clipboard.png

重点:为什么按照这个方式得到的值函数是合理的?

The resultant value function captures spatiotemporal patterns of both the demand side and the supply side. To make it clearer, asa special case, when using no discount and an episode-length of a day, the state-value function in fact corresponds to the expected revenue that this driver will earn on average from the current time until the end of the day.

在线planning部分

使用以下公式描述订单和司机之间的匹配度:

clipboard.png

  • 价格越高,匹配度越高
  • 当前位置价值越大,匹配度越低
  • 未来位置价值越大,匹配度越高
  • 接驾里程,隐形表达,越大则预计送达时间越大,衰减系数越小,匹配度越低

使用KM算法求解匹配结果

评估方案

AB-test方案

we adopted a customized A/B testing design thatsplits tra c according to large time slices (three or six hours). Forexample, a three-hour split sets the rst three hours in Day 1 to runvariant A and the next three hours for variant B. The order is thenreversed for Day 2. Such experiments will last for two weeks toeliminate the daily di erence. We select large time slices to observelong-term impacts generated by order dispatch approaches.

实际收益

the performance improvementbrought by the MDP method is consistent in all cities, with gains inglobal GMV and completion rate ranging from 0.5% to 5%. Consis-tent to the previous discoveries, the MDP method achieved its bestperformance gain in cities with high order-driver ratios. Meanwhile,the averaged dispatch time was nearly identical to the baselinemethod, indicating little sacrifice in user experience

Value function可视化效果

clipboard.png

如何包装为强化学习

将时空网格定义为state;将派单和不派单定义为action;将state的预期收入定义为状态值函数。

强化学习的目的是求解最优策略,也等价于求解最优值函数。派单场景的独特的地方是,建模的时候agent是每个司机,做决策的时候是平台决策,所以司机其实是没有策略的,或者说,通过派单机制,司机的策略被统一化为使平台的期望收入最大。因此在强化学习的框架下,可以将离线learning和在线planning认为是policy iteration的两个步骤,learning是更新value function,planning是policy update。然而,其实细想起来,还是有些勉强。

            </div>

步骤 1.1 收集历史数据中的订单信息,表示为强化学习中的四元组形式;

步骤 1.2 使用动态规划求解价值函数。将价值函数以查找表 (lookup table) 形式保存以供线上使用。

640?wx_fmt=jpeg

线上部分

步骤 2.1 收集待分配的司机和订单列表;

步骤 2.2 计算每个司乘匹配对应的动作价值数 (State-Action Function),并以此为权重建立二分图;

步骤 2.3 将上述匹配权值作为权重嵌入 KM 算法,充分考虑接驾距离、服务分等因素,求解最优匹配,进入最终派单环节。

迭代部分

步骤 3 迭代重复进行 1 和 2,即根据新积累的数据离线更新价值函数,和使用更新后的价值函数指导派单的过程。

线上使用

640?wx_fmt=jpeg

滴滴团队进行了大量的离线实验和在线 AB 测试,结果均显示,这种基于强化学习和组合优化的派单算法能在确保乘客出行体验的同时明显提升司机的收入。目前该算法已成功部署在滴滴平台二十多个核心城市,承接广大用户的出行需求。


结论和下一步计划


滴滴团队指出,与传统的「只考虑当下」的策略不同,这一全新的基于强化学习和组合优化的派单算法能能考虑到每一次派单的决定会对未来的司机分布发生影响,面向长期收益。后续将在深度 Q 学习 (DQN) 算法求解和不同城市间进行迁移学习等方面持续优化,并将持续拓展算法在其他应用场景中的应用。

(论文地址:Large‑Scale Order Dispatch in On‑Demand Ride‑Hailing Platforms: A Learning and Planning Approach

http://delivery.acm.org/10.1145/3220000/3219824/p905-xu.pdf?ip=183.240.196.144&id=3219824&acc=OPENTOC&key=4D4702B0C3E38B35.4D4702B0C3E38B35.4D4702B0C3E38B35.054E54E275136550&acm=1534949330_cd114e6e3a392b6b3eeabeafae021d77)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480749.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Keyword-BERT——问答系统中语义匹配的杀手锏

引子 问&答 是人和人之间非常重要的沟通方式&#xff0c;其关键在于&#xff1a;我们要理解对方的问题&#xff0c;并给出他想要的答案。设想这样一个场景&#xff0c;当你的女朋友or老婆大人在七夕前一晚&#xff0c;含情脉脉地跟你说 亲爱的&#xff0c;七夕快到了&…

阿里P8架构师谈:Docker简介、组成架构、使用步骤、以及生态产品

Docker简介 Docker是DotCloud开源的、可以将任何应用包装在Linux container中运行的工具。 Docker基于Go语言开发&#xff0c;代码托管在Github上&#xff0c;目前超过10000次commit。 基于Docker的沙箱环境可以实现轻型隔离&#xff0c;多个容器间不会相互影响&#xff1b;D…

研讨会 | 知识图谱前沿技术课程暨学术研讨会(武汉大学站)

知识图谱作为大数据时代重要的知识表示方式之一&#xff0c;已经成为人工智能领域的一个重要支撑。4月28日&#xff0c;“武汉大学信息集成与应用实验室”与“复旦大学知识工场实验室”联合举办“知识图谱前沿技术课程暨学术研讨会”&#xff0c;将结合知识图谱学界研究与业界应…

LayerNorm是Transformer的最优解吗?

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

观点 | 滴滴 AI Labs 负责人叶杰平教授:深度强化学习在滴滴的探索与实践+关于滴滴智能调度的分析和思考+滴滴派单和Uber派单对比

AI 科技评论按&#xff1a;7 月 29 日&#xff0c;YOCSEF TDS《深度强化学习的理论、算法与应用》专题探索报告会于中科院自动化所成功举办&#xff0c;本文为报告会第一场演讲&#xff0c;讲者为滴滴副总裁、AI Labs 负责人叶杰平教授&#xff0c;演讲题为「深度强化学习在滴滴…

消息中间件系列(二):Kafka的原理、基础架构、以及使用场景

一&#xff1a;Kafka简介 Apache Kafka是分布式发布-订阅消息系统&#xff0c;在 kafka官网上对 kafka 的定义&#xff1a;一个分布式发布-订阅消息传递系统。 它最初由LinkedIn公司开发&#xff0c;Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。Kafka是一种快速、…

丁力 | cnSchema:中⽂知识图谱的普通话

本文转载自公众号&#xff1a;大数据创新学习中心。3月10日下午&#xff0c;复旦大学知识工场联手北京理工大学大数据创新学习中心举办的“知识图谱前沿技术课程暨学术研讨会”上&#xff0c;OpenKG联合发起⼈、海知智能CTO丁力博士分享了以“cnSchema&#xff1a;中⽂知识图谱…

详解ERNIE-Baidu进化史及应用场景

一只小狐狸带你解锁 炼丹术&NLP 秘籍Ernie 1.0ERNIE: Enhanced Representation through Knowledge Integration 是百度在2019年4月的时候&#xff0c;基于BERT模型&#xff0c;做的进一步的优化&#xff0c;在中文的NLP任务上得到了state-of-the-art的结果。它主要的改进是…

解读 | 滴滴主题研究计划:机器学习专题+

解读 | 滴滴主题研究计划&#xff1a;机器学习专题&#xff08;上篇&#xff09; 解读 | 滴滴主题研究计划&#xff1a;机器学习专题&#xff08;上篇&#xff09; 2018年7月31日 管理员 微信分享 复制页面地址复制成功滴滴主题研究计划 滴滴希望通过开放业务场景&#xff0c;与…

笔记:seafile 7.x 安装和部署摘要

文章目录1. 安装1.1. 注意事项1.2. 企业微信集成并支持自建第三方应用配置1.3. 内置 Office 文件预览配置1.3.1. 安装 Libreoffice 和 UNO 库2. 主要功能2.1. 服务器个性化配置2.2. 管理员面板2.3. seafile 命令行使用教程2.3.1. ubuntu安装2.3.2. init 初始化seafile配置文件夹…

文章合集

Hi 大家好&#xff0c;我是陈睿|mikechen,这是优知学院的所有文章集合&#xff0c;专门整理这个页面&#xff0c;希望会对大家在浏览感兴趣文章的时候&#xff0c;能有更好的帮助&#xff01; 这些文章的呈现&#xff0c;并不是按照时间轴来排序&#xff0c;无论是新旧文章&…

领域应用 | 阿里发布藏经阁计划,打造 AI 落地最强知识引擎

如果没有知识引擎&#xff0c;人工智能将会怎样&#xff1f;知识引擎可以把数据加工成信息&#xff0c;信息和现有的知识通过推理能够获得新的知识&#xff0c;从而形成庞大的知识网络&#xff0c;像大脑一样支持各种决策。你与智能音箱进行对话&#xff0c;背后就是基于知识引…

ACL2020 | FastBERT:放飞BERT的推理速度

FastBERT 自从BERT问世以来&#xff0c;大多数NLP任务的效果都有了一次质的飞跃。BERT Large在GLUE test上甚至提升了7个点之多。但BERT同时也开启了模型的“做大做深”之路&#xff0c;普通玩家根本训不起&#xff0c;高端玩家虽然训得起但也不一定用得起。 所以BERT之后的发展…

2017年双十一最全面的大数据分析报告在此!+2018年双十一已经开始,厚昌竞价托管教你如何应对流量流失?+2019年双十一大战一触即发:阿里、京东都有哪些套路和玩法

首先说一个众所周知的数据&#xff1a;2017年双十一天猫成交额1682亿。 所以今天&#xff0c;从三个角度带你一起去探索1682亿背后的秘密&#xff1a; 1、全网热度分析&#xff1a;双十一活动在全网的热度变化趋势、关注来源、媒体来源以及关联词分析。 2、各平台对比分析&…

阿里P8架构师谈:大数据架构设计(文章合集)

架构师进阶有一块很重要的内容&#xff0c;就是需要掌握大数据的架构设计&#xff0c;主要涵括&#xff1a; MySQL等关系式数据库&#xff0c;需要掌握数据库的索引、慢SQL、以及长事务的优化等。 需要掌握非关系式数据库&#xff08;NoSQL&#xff09;的选型&#xff0c;以及…

论文浅尝 | 利用 RNN 和 CNN 构建基于 FreeBase 的问答系统

Qu Y,Liu J, Kang L, et al. Question Answering over Freebase via Attentive RNN withSimilarity Matrix based CNN[J]. arXiv preprint arXiv:1804.03317, 2018.概述随着近年来知识库的快速发展&#xff0c;基于知识库的问答系统&#xff08;KBQA &#xff09;吸引了业界的广…

positional encoding位置编码详解:绝对位置与相对位置编码对比

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

## 作为多目标优化的多任务学习:寻找帕累托最优解+组合在线学习:实时反馈玩转组合优化-微软研究院+用于组合优化的强化学习:学习策略解决复杂的优化问题

NIPS 2018&#xff1a;作为多目标优化的多任务学习&#xff1a;寻找帕累托最优解多任务学习本质上是一个多目标问题&#xff0c;因为不同任务之间可能产生冲突&#xff0c;需要对其进行取舍。本文明确将多任务学习视为多目标优化问题&#xff0c;以寻求帕累托最优解。而经过实验…

手把手教你求职进入BAT

“ 最近利用部分的时间&#xff0c;帮助了好几位读者朋友进入了自己心仪的公司&#xff0c;以下我会谈到&#xff0c;求职简历方面给到他们的建议。 如果你本身具备很强的实力&#xff0c;不要因为对求职简历细节不重视&#xff0c;反而痛失良机。 求职加薪&#xff0c;除了…

one-hot(独热)、bag of word(词袋)、word-Embedding(词嵌入)浅析

目录 词袋模型 one-hot word-embedding 我们知道&#xff0c;传统的数据挖掘任务面向的是结构化数据。结构化数据很好理解&#xff0c;就是很有结构的数据嘛。 比如下面这张银行客户数据库中的表格&#xff1a; 编号 姓名 年龄 年收入 职业 有无欠贷 01 夕小瑶 16(…