AFramework for Multi-stage Bonus Allocation in meal delivery Platform


       本文针对美团每日数十万单因无人接单而被取消的痛点,提出“多阶段动态奖金分配”框架:先用半黑盒模型预估奖金—接单概率关系,再用拉格朗日对偶动态规划离线算出阶段乘子,最后在线实时为每一单分配合适奖金;离线与线上 A/B 测试均表明,该方案可在预算内将订单取消率降低 25% 以上。

问题场景

平台每天约 16.5 万单因无人接单而被取消(NA-canceled)。
一笔订单从推送到司机端开始,最多可以经历 |T| 次奖金调整(阶段)。
每阶段:
– 若司机接单,则订单成功;
– 若顾客取消,则订单失败;
– 若二者均未发生,则进入下一阶段继续等待。
平台需在月度总奖金预算 B 之内,为每单在每个阶段实时决定奖金 c_i,t,以最大化最终被接单的期望订单量。

在这里插入图片描述

在这里插入图片描述

状态转移与概率拆解

接受概率 p_i,t(c_i,t)

采用 Logistic 形式:
在这里插入图片描述

其中:
α_i,t<0(奖金越高,概率越大);
α_i,t、β_i,t 由神经网络同时学习,但使用不同隐藏层:
– α_i,t 仅用“有奖金样本”更新;
– β_i,t 仅用“无奖金样本”更新,以避免样本不平衡。
输入特征:
c_i,t:阶段 t 分配的奖金;
x_i,t:订单上下文(距离、ETA、供需、天气、司机密度等)。

取消概率 q_i,t

用 XGBoost 对已进入阶段 t 的订单建模;
将预测概率按 0.05 区间分桶,统计桶内正样本比例作为最终 q_i,t。

阶段转移概率

订单能进入阶段 t 的概率:
Π_{k=1}^{t-1}(1-p_i,k-q_i,k)。
因此在阶段 t 被接单的联合概率:
[Π_{k=1}^{t-1}(1-p_i,k-q_i,k)] · p_i,t。

在这里插入图片描述

在这里插入图片描述

数学规划模型

在这里插入图片描述

关键建模假设

阶段独立:阶段 t 的接受概率仅受该阶段奖金 c_i,t 影响,不受其他阶段奖金或其他订单奖金影响(经 0–3.5 元区间 A/B 验证,司机在前 10 分钟内行为无显著差异,假设成立)。
奖金只在订单被最终接单时才实际支付,因此约束采用“期望成本”而非“实际成本”。

在这里插入图片描述

模型特色

同时刻画“接单-取消-继续等待”三重随机事件;
利用 Logistic + XGBoost 的半黑盒结构兼顾解释性与精度;
训练时针对奖金/非奖金样本分别更新不同网络层,解决极端样本不平衡。

总体思路

把原非凸多阶段问题拆成两步:
(1) 阶段间预算切分:用离散动态规划(DP)离线决定“每一阶段最多花多少钱”;
(2) 阶段内订单级奖金:用拉格朗日对偶理论在线实时决定“给每一单多少奖金”。
通过一维降维(把高维概率向量压缩成平均概率)和凸等价变换,将 DP 状态转移公式化成 O(B·|T|) 的递推;再用二分法求单阶段最优乘子 λ_t(·)。
在线阶段直接代入离线求得的 λ_t*,把整体问题拆成 |N_t| 个独立的一维枚举,复杂度 O(1)/单,可并行。

离线算法流程

在这里插入图片描述

单阶段子问题 BA(N_t, B̃):

决策变量:概率向量 p_i,t,c_i,t(p_i,t) 为凸函数。
目标:max Σ p_i,t
约束:Σ p_i,t·c_i,t(p_i,t) ≤ B̃
通过凸对偶(零对偶间隙)与二分法(Algorithm 2)求最优 λ_t(B̃) 与最优值 g_t(B̃)。

DP 递推:

G_t(B̃)=max_{k=0…B̃} {g_t(k)+(|N_{t+1}|/|N_t|)·G_{t+1}(⌊|N_t|/|N_{t+1}|·(B̃-k)⌋)}
其中 |N_{t+1}|=|N_t|−g_t(k)−Q_t 反映剩余订单量。
复杂度:O(B·|T|) 存储 + O(B·|T|·|N_t|) 计算,B 为离散预算级数。

在线算法

代入离线 λ_t*,把原问题拆成 |N_t| 个独立一维问题:
min_{0≤c_i,t≤C_i^u} [λ_t*·p_i,t(c_i,t)·c_i,t − p_i,t(c_i,t)]
枚举有限候选奖金(0…C_i^u)即可得最优 c_i,t*,复杂度 O(1)/单,可并行。

在这里插入图片描述

预算滚动修正(Periodic Control)

每日离线重算:用“上月同日”数据训练,预算=剩余预算/预计剩余单量×过去 30 天单量。
实时微调:支出>110%预算时按比例下调奖金,<90%时上调,确保月度不超支。

离线实验设计

数据集

• 4 座典型城市:兰州(46 978 单)、南昌(71 427 单)、威海(120 017 单)、成都(258 612 单),覆盖一周内全部订单。
• 预算口径:统一折算为“每单平均可用奖金”,保证不同城市可比。
• 订单生命周期:0–50 min,8 个阶段,每阶段约 6 min 可调一次奖金。

核心指标

• NA-canceled 订单量(无人接单导致顾客取消)。
• 总奖金消耗曲线。

在这里插入图片描述

在这里插入图片描述

结果对比

• 无奖金:NA-canceled 为基线 100%。
• 统一奖金(每单固定额度):NA-canceled 降幅 ≈30%。
• 单阶段奖金(只在第 1 阶段一次性加价):NA-canceled 降幅 ≈45%。
• MSBA 多阶段动态:NA-canceled 降幅 >60%;与单阶段相比再降 ≈20%,与统一奖金相比再降 ≈40%。
• 订单量越大的城市,MSBA 优势越显著。

在这里插入图片描述

奖金-阶段分布

• 第 1 阶段奖金占比低:高接受概率的“订单 A”立即被接,无需补贴。
• 第 2–4 阶段奖金占比高:大量“订单 B”需激励。
• 第 5 阶段后奖金递减:剩余订单减少,边际收益下降。

预算敏感性

• 低预算(<0.15 元/单):MSBA 仍可将 NA-canceled 降至单阶段/统一奖金的 50% 以下。
• 高预算(>0.3 元/单):三种方法趋同,但 MSBA 仍保持 5–8% 的额外优势。

阶段数敏感性

• 阶段数从 2 增至 10,接受订单量单调上升;>10 后增益趋缓且司机体验下降(奖金调整过频)。
• 推荐:8–10 阶段为最佳折中。

结论

针对外卖平台“无人接单”导致的巨额取消单量,本文提出 MSBA 框架:用半黑盒模型刻画接单概率,离线 LDDP 算法求阶段乘子,在线 O(1) 实时为每单定价;离线与线上 A/B 均验证其可在 0.2 元/单预算内将取消单量再降 25% 以上,现已全量部署于国内最大外卖平台。

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

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

相关文章

Python DELL Logo

写在前面 Python绘制Android Studio标志的完整代码。 系列文章 序号文章目录直达链接炫酷系列1无法拒绝的表白界面https://want595.blog.csdn.net/article/details/1347448942满屏飘字表白代码https://want595.blog.csdn.net/article/details/1350373883无限弹窗表白代码http…

【架构师干货】软件工程

1. 软件工程概述 软件工程基本原理 软件工程基本原理&#xff1a;通过划分生命周期阶段的方式严格管理、坚持进行阶段评审、实现严格的产品控制、采用现代程序设计技术、结果应能清楚地审查、开发小组的人员应少而精、承认不断改进软件工程实践的必要性。 软件开发生命周期 软件…

3.渗透-.IP地址-详解

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;易锦网校 上一个内容&#xff1a;2.渗透-.WEB运行原理-ZBlog安装&#xff08;进一步理解数据库&#xff09; ip地址是互联网中的门牌号…

【数字投影】简单介绍数字展厅内投影融合技术的原理

投影融合技术 https://www.bmcyzs.com/ 是一种将多台投影机的画面无缝拼接成一个完整、统一的高分辨率大画面的技术。它的核心原理在于通过几何校正与边缘羽化等处理&#xff0c;消除设备间的物理缝隙与亮度差异&#xff0c;从而实现视觉上的完美一体化。这一过程高度依赖于专业…

UML状态图中entry/do/exit动作的深入解析与C/C++实现

<摘要> 本文将深入探讨UML状态图中entry、do和exit动作的概念、作用及实现方式&#xff0c;通过astah工具展示如何专业地建模这些元素&#xff0c;并提供完整的C/C代码实现解析。文章包含具体案例和最佳实践&#xff0c;帮助开发者掌握状态机设计的精髓。 <解析> U…

Vue3 Pinia 中 store.$dispose()的用法说明

在 Vue 3 的 Pinia 中&#xff0c;store.$dispose()方法用于手动销毁一个 store 实例&#xff0c;它会重置该 store 的状态并移除所有订阅&#xff08;如通过 $subscribe或 $onAction添加的监听器&#xff09;。如果你发现调用 store.$dispose()后没有达到预期效果&#xff0c;…

Java自定义程序使用Ollama实现本地ai调用

Ollama 提供 两套核心接口、三种常见输入风格、两种输出模式&#xff0c;你可以按需组合。 一、两套核心接口 /api/generate • 一问一答&#xff0c;无对话历史。 • 输入&#xff1a;单次 prompt&#xff0c;可选参数&#xff08;temperature、top_p、max_tokens …&#xff…

操作系统中的死锁是什么意思

问题操作系统中的死锁是什么意思我的回答死锁是指在操作系统中&#xff0c;两个或多个进程互相等待对方释放资源&#xff0c;导致这些进程都无法继续执行的一种状态。简单来说&#xff0c;就像两个人相互礼让过马路&#xff0c;结果谁也不肯先走&#xff0c;最后都卡在那里一样…

DA14531(Cortex-M0+)之Wake-up Interrupt Controller (WIC)

Wake-up Interrupt Controller (WIC) to allow the processor to be powered down during sleep, while interrupt sources are still allowed to wake up the system. 唤醒中断中断器&#xff0c;允许处理器休眠时关闭电源和时钟&#xff0c;但中断源可以唤醒系统。具备独立的…

实战演练(一):从零构建一个功能完备的Todo List应用

实战演练&#xff08;一&#xff09;&#xff1a;从零构建一个功能完备的Todo List应用 作者&#xff1a;码力无边各位React探险家&#xff0c;欢迎集结&#xff01;我是你们的向导码力无边&#xff0c;这里是《React奇妙之旅》的第六站&#xff0c;也是我们基础阶段的“毕业大…

GitHub 宕机自救指南:确保开发工作不间断

1.1 GitHub 宕机事件回顾 在 2025 年 8 月&#xff0c;GitHub 经历了一次全球性的重大故障事件&#xff0c;此次宕机持续了数小时&#xff0c;对全球范围内依赖 GitHub 进行代码托管、协作开发的团队和个人造成了严重影响。众多开源项目的代码提交陷入停滞&#xff0c;企业级开…

RK3588 android12 DDR开发指南相关记录

一&#xff0c;DDR打印信息 DDR 打印信息包括 loader 中的打印和 kernel 中的打印&#xff0c;loader 中打印的解析如下&#xff1a;DDR Version 1.05 20170712// DDR 初始化代码的版本信息&#xff0c;用于核对版本。从这行开始&#xff0c;已经进入DDR初始化代码 In SRX // 有…

Docker 部署 GitLab 并开启 SSH 使用详解

在日常使用 GitLab 时&#xff0c;很多人习惯通过 SSH 协议 而不是 HTTPS 来拉取与推送代码。但是在使用 Docker 部署 GitLab 的过程中&#xff0c;经常遇到 SSH 端口未开放、只能本地访问、客户端无法连接 等问题。本文将从零开始&#xff0c;详细讲解如何在 Docker 中正确开启…

C/C++---前缀和(Prefix Sum)

在C算法与数据结构领域&#xff0c;前缀和是一种时间复杂度优化利器&#xff0c;尤其适用于频繁查询数组区间和的场景。它通过预先计算“前缀累积和”&#xff0c;将原本O(n)时间的区间和查询压缩至O(1)&#xff0c;是面试、竞赛及工程开发中高频使用的基础技巧。 一、前缀和的…

[n8n] 全文检索(FTS)集成 | Mermaid图表生成

第5章&#xff1a;全文检索(FTS)集成 在前一章中&#xff0c;我们构建了REST API服务作为数据访问入口。 本章将介绍全文检索(FTS)集成&#xff0c;它如同智能搜索引擎&#xff0c;为工作流系统提供高效灵活的检索能力。 核心架构 前文传送&#xff1a; 技术选型 SQLite …

用户模式与内核模式:操作系统的“权限双轨制”

要理解用户模式与内核模式&#xff0c;首先需要明确一个核心概念——进程&#xff08;Process&#xff09;。我们日常用C语言编译生成的.exe文件&#xff0c;本质是“存储在磁盘上的静态程序”&#xff1b;当它被加载到内存并开始运行时&#xff0c;就转化为“动态活动的进程”…

探索 Vertex AI 与 Elasticsearch

作者&#xff1a;来自 Elastic Jhon Guzmn 了解如何将 Vertex AI 与 Elasticsearch 集成来创建 RAG 应用。按照本教程配置一个 Gemini 模型并在 Kibana 的 Playground 中使用它。 更多阅读&#xff1a; Elasticsearch&#xff1a;在 Elastic 中玩转 DeepSeek R1 来实现 RAG …

[新启航]白光干涉仪在微透镜阵列微观 3D 轮廓测量中的应用解析

引言微透镜阵列作为由数百至数千个微米级透镜单元组成的光学元件&#xff0c;在成像系统、光通信、传感器等领域应用广泛&#xff0c;其表面微观 3D 轮廓参数&#xff08;如曲率半径、面型误差、中心厚度等&#xff09;直接影响光学性能。白光干涉仪凭借非接触、高精度、三维成…

MTK Linux DRM分析(十四)- Mediatek KMS实现mtk_drm_drv.c(Part.2)

一、MTK KMS分析 mtk_drm_kms_init 函数分析 mtk_drm_kms_init 是 MediaTek DRM 驱动程序中的一个静态函数(static int mtk_drm_kms_init(struct drm_device *drm)),位于 mtk_drm_drv.c 文件中。该函数的主要作用是初始化 DRM 设备的 Kernel Mode Setting (KMS) 子系统,包…

大模型RAG(Retrieval-Augmented Generation)

RAG检索增强生成 一种结合了检索与生成能力的人工智能技术&#xff0c;主要用于增强大型语言模型在特定任务中的表现。 含义 RAG 将检索系统与生成模型相结合&#xff0c;当接收到一个查询或问题时&#xff0c;模型首先通过检索模块从大规模知识库中寻找与查询相关的信息片段&a…