当前位置: 首页 > ai >正文

配送算法16 A Deep Reinforcement Learning Approach for the Meal Delivery Problem

A Deep Reinforcement Learning Approach for the Meal Delivery Problem


       本文将动态外卖配送建模为马尔可夫决策过程,利用深度强化学习在有限骑手条件下联合优化实时派单、智能拒单与骑手重定位,实验表明该策略在合成与真实数据上均较基线显著提升期望总奖励、缩短平均送达时间,并给出不同订单频率下的最优骑手配置与鲁棒性验证。

       本文构建了一个融合拒单、多单合并与骑手重定位的 MDP 外卖模型,用八类 DQN 算法求解,在合成与真实数据上证明其可同时提升平台利润、缩短送达时间,并首次给出小时级“最优骑手数”配置方案。

感觉问题规模有点小,方法在真实场景不是很适用

研究目标

在骑手数量有限的前提下,最大化平台利润,同时:
最小化期望延迟;
允许拒接低收益/远距离订单;
动态指派多单合并配送;
给出“每时段最优骑手数量”。

方法亮点

首次提出针对外卖场景的完整 MDP 模型:
– 状态:骑手位置、订单分布、餐厅/顾客/仓库地理信息。
– 动作:接单/拒单、路径选择、多单合并、空驶重定位(可去热门餐厅而非直接回仓)。
– 奖励:完成时效、利润、未来潜在收益的综合。
求解:系统比较 8 种 DQN 变体,并在合成 + 真实运营数据集上调参验证。
实验输出:
– 不同订单量下的小时级“最优骑手数”;
– 骑手利用率热力图,揭示工作负荷分布。

建模假设

地图离散化为 500 m×500 m 网格,一步≈1 分钟。
订单到达服从指数分布,全天速率 λt 随小时波动。
餐食制备 5–15 min;平台承诺 25 min、容忍上限 45 min。
骑手完成一单后可直接去热门餐厅“预置”,而非一定回仓。
多端下单被拆成多个独立订单处理。

MDP 要素

状态 S:对每一骑手 c 与订单 o,仅存
– 期望送达时长 τoc(含取餐距离、制备、骑手当前任务余量)
– 骑手距仓库距离 Δc
– 骑手距各餐厅距离 Δec

动作 A:
– 接单/拒单 xoc、xo
– 空闲时可去某餐厅 ec 或回仓 c

奖励 r(s,a):
– 接单:45–τoc(τoc≤45)
– 拒单:-15
– 空驶:-10
状态-动作空间大幅缩减,便于深度网络学习。
在这里插入图片描述

在这里插入图片描述

深度 RL 算法

比较 8 种 DQN 变体:
– 标准 DQN(Experience Replay + Target Net)
– Double DQN(DDQN)
– Prioritized Experience Replay(PER)
– Dueling DDQN(D3QN)
– 软/硬更新、超参:γ=0.9,网络 64-128-128-64,批大小 128,记忆池 20k。

基准策略

P45:超时 45 min 拒单,空闲即回仓。
P60:超时 60 min 拒单,其余同 P45。

数据集

合成:10×10 网格,7 家餐厅,仓库居中。
真实:Getir 伊斯坦布尔 3 区域
– Hisarustu(低密度)
– Üsküdar(中密度)
– Bomonti(高密度)
→ 均已网格化(500 m),含餐厅/顾客/仓库坐标、2019.10–2020.4 订单。
→ 全天两高峰:12–15h、17–21h,区域间峰值形态略有差异。
在这里插入图片描述
在这里插入图片描述

实验结果

算法选型

  • 在合成 10×10 网格、日均 163 单、5 骑手场景下,比较 8 种 DQN 扩展(DQN/DDQN/DDQN+PER/D3QN,每种再分硬/软更新)。
  • 指标:100 天测试的平均累计奖励、拒单率、配送时间。
  • 结果:DDQN + PER + Hard Update(DDQN+H)综合最优,奖励最高且拒单少;所有深度算法均明显优于 P45/P60 两条规则基线。
    在这里插入图片描述

在这里插入图片描述

单骑手 vs 多骑手训练

  • 单骑手策略训练快(≈4 h),可零成本泛化到任意数量骑手;多骑手策略需按“实际骑手数”重训(6–10 h)。
  • 在骑手≤3 人时,单骑手策略奖励更高;骑手≥4 人时,多骑手策略因能捕捉骑手间交互而反超。
  • 结论:后续实验采用“单骑手训练+共享策略”作为近似,兼顾效率与效果。
    在这里插入图片描述

超参数调优

  • 对 DDQN+H 在 16 组超参(M∈{20k,30k}, γ∈{0.9,0.1}, B∈{64,128}, U∈{100,200})中做网格搜索。
  • 最优配置:M=20 k, γ=0.9, B=128, U=100(硬更新),累计奖励 2795.7;γ=0.1 导致奖励腰斩、拒单/延迟激增。

在这里插入图片描述

Getir 真实数据测试

  • 用 DDQN+H 训练 1000 天,测试 100 天。
  • 三区域日均单量:Hisarustu 141、Üsküdar 172、Bomonti 220。
  • 结果
    – 奖励:DDQN+H 全面 > P45 > P60;3–4 骑手时差距最大(>3 倍)。
    – 拒单:DDQN+H 随骑手增加迅速下降,5 骑手后几乎为 0;P60 在 7 骑手仍有 0–3% 拒单。
    – 配送时间:骑手≤4 人时,DDQN+H 中位数比基线缩短 5–15 min;骑手≥5 人时差距缩小。
    – 边际收益:≥5 骑手后,每增 1 人奖励提升 <2%,成本可能高于收益。
    – 利用率:≤4 骑手时所有骑手利用率≥70%;≥5 骑手后部分骑手闲置,分布不均。
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

敏感性分析

  • 在 Bomonti 4 骑手场景下,做 RP(目标送达阈值 30/45/60 min)× N(日单量 120/170/220)双因素实验。
  • RP=30:拒单率 15–37%,奖励低;RP=60:延迟高、奖励略降。RP=45 被视为收益与客户体验的最佳折中。
  • 日单量 N 越大,拒单率越高,但奖励仍上升。

在这里插入图片描述

复杂度与收敛

  • 状态-动作空间上界:O((n²+n)cf)(n×n 网格,c 骑手,r 餐厅,f 并发单)。
  • Q-learning/SARSA 在小规模都难收敛;DQN 类 15 天(≈2300 回合)后奖励趋于稳定。
  • 引入 Dueling/PER 增加 66% 训练时间,但对收敛无显著影响;骑手数或网格越大,波动越大。

结论

本文用 DDQN+H 把外卖配送建模为实时 MDP,在合成与伊斯坦布尔三区真实数据上验证其显著优于两条规则基线;给出“≈5 骑手即收益拐点、利用率≥70%”的实操建议,并指出未来可引入动态定价、骑手异质性与公平分单、硬约束 CMDP 等改进方向。

http://www.xdnf.cn/news/18800.html

相关文章:

  • 【Linux】用户与用户组管理
  • 【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day14
  • 蓝桥杯算法之基础知识(3)——Python的idle的快捷键设置(idle改键)
  • OpenCV实战1.信用卡数字识别
  • 极简风格PDF格式转换解决方案
  • 人工智能安全地图:将人工智能漏洞与现实世界的影响联系起来
  • Linux 系统核心调优:CPU、磁盘 I/O、网络与内核参数实战
  • Java全栈开发面试实录:从基础到实战的深度探索
  • 【AI算力平台】算力高效调度策略——GPU调度
  • Rust 登堂 之 函数式编程(三)
  • vagrant怎么在宿主机管理虚拟机镜像box(先搁置)
  • PyTorch生成式人工智能——PatchGAN详解与实现
  • LeetCode 438. 找到字符串中所有的字母异位词
  • 功能强大的PDF工具箱-- PDF补丁丁,v1.1.0.4657新版本,免费无广告,开箱即用版~
  • flutter专栏--dart基础知识
  • Android系统学习2——Android.Utils.Log模块讨论
  • [Maven 基础课程]Maven 是什么
  • Java微服务AI集成指南:LangChain4j vs SpringAI
  • imx6ull-驱动开发篇43——I.MX6U 的 I2C 驱动分析
  • 软件开发技术栈
  • 集成电路学习:什么是ResNet深度残差网络
  • LeetCode 2140. 解决智力问题
  • JavaScript常用的算法详解
  • 8.26网络编程——Modbus TCP
  • 【跨国数仓迁移最佳实践7】基于MaxCompute多租的大数据平台架构
  • 发力低空经济领域,移动云为前沿产业加速崛起注入云端动能
  • Tomcat下载历史版本
  • 前沿技术趋势与应用:探索数字世界的下一个十年
  • 【第三章】软件测试缺陷管理:从判断到回归的全流程实践指南​
  • 支持向量机学习