每天早上一封邮件,把昨天的 AI 梳理好订阅邮件

METAL LAB

GenMatch: An End-to-End Generative Matching Framework for Micro-View Order-Dispatching in Ride-Hailing

arXiv:2608.197512026-08-21

滴滴把打车派单从预测-计算-匹配三段式流程改成一次生成完成,线上效果提升明显

GenMatch是滴滴部署在真实网约车业务中的一套系统,它把派单问题从传统的分阶段流程(先预测各种概率,再计算价值,最后做匹配)改成用一个模型直接生成整批订单和司机的分配结果。系统把每批可派单的订单和司机看作一张稀疏的二分图进行编码,从司机应答、乘客取消、司机取消等不同反馈中学出统一的业务价值,并在逐个确定分配对时动态更新剩余可选对象。该系统已经在滴滴国际网约车业务的五个城市做了线上A/B测试,相比现有生产系统持续取得更好效果。

他们做了什么

  1. 传统工业派单系统把预测、价值计算、匹配拆成三个独立阶段优化,导致单独改进某一阶段不一定能提升最终派单效果,论文称之为跨阶段目标不一致问题
  2. GenMatch用三个模块解决这个问题:Context-Aware Bipartite Encoder对订单和司机构成的稀疏二分图做编码,Business-Aware Utility Learner从司机应答、乘客取消、司机取消等不同类型的反馈中学出统一的业务价值,State-Aware Pointer Decoder依次选出配对并在每次选定后动态剔除冲突的候选对象
  3. 在滴滴国际网约车业务五个城市的线上A/B测试中,相比现有基于Kuhn-Munkres算法的生产系统PDPKM,订单完成率根据需求高低提升3.24%到4.12%,乘客应答后取消率最多下降8.26%,司机应答后取消率最多下降7.96%
  4. 离线实验显示,相比PDPKM,应答率、完成率、平台交易总额提升0.11%到1.17%,平均接驾时间缩短0.23%到0.72%,消融实验证明每个模块都对最终效果有贡献
  5. 为了在生产环境中落地,滴滴把原本按订单-司机对独立并行处理的架构改造成新的批级生成式派单引擎,让系统能一次性组装整批订单司机数据进行推理,并设置了出现故障时自动回退到旧系统的机制
Figure 1. Comparison of (a) the end-to-end generative paradigm and (b) the conventional multi-stage paradigm for Micro-View Order-Dispatching.(a) The proposed end-to-end generative dispatch framework, which models each dispatch batch as a whole and directly generates the dispatch result in an autoregressive manner. (b) The conventional multi-stage dispatch paradigm, which performs pair-level prediction, value calculation, and dispatch matching in separate stages.
Figure 1. Comparison of (a) the end-to-end generative paradigm and (b) the conventional multi-stage paradigm for Micro-View Order-Dispatching.(a) The proposed end-to-end generative dispatch framework, which models each dispatch batch as a whole and directly generates the dispatch result in an autoregressive manner. (b) The conventional multi-stage dispatch paradigm, which performs pair-level prediction, value calculation, and dispatch matching in separate stages.
Table 1. Offline performance relative to PDPKM. Values are the mean ± standard deviation of percentage changes over five runs; bold and underline denote the best and second-best results.
VariantCity ICity IICity III
AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑
PDPKM0.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.00
PDPGreedy−1.86 ± 0.05−1.69 ± 0.09−0.24 ± 0.02−0.14 ± 0.01−0.97 ± 0.06−1.26 ± 0.04−0.25 ± 0.01−1.16 ± 0.06−1.92 ± 0.15−2.35 ± 0.18−0.31 ± 0.02−0.19 ± 0.02
PDPGS−0.42 ± 0.02−0.30 ± 0.03−0.06 ± 0.01−0.04 ± 0.00−0.38 ± 0.02−0.54 ± 0.02+0.10 ± 0.01−0.47 ± 0.04−0.79 ± 0.06−0.76 ± 0.07+0.14 ± 0.01−0.27 ± 0.02
D2SN−0.09 ± 0.03+0.18 ± 0.07−0.36 ± 0.02−0.05 ± 0.00−0.03 ± 0.09−0.19 ± 0.11−0.12 ± 0.01−0.47 ± 0.06−0.37 ± 0.12−0.44 ± 0.07−0.03 ± 0.01−0.24 ± 0.04
RLW−0.78 ± 0.04−0.50 ± 0.05+0.42 ± 0.02−0.02 ± 0.00−0.24 ± 0.03−0.48 ± 0.02+0.34 ± 0.03−0.27 ± 0.03−0.68 ± 0.08−0.71 ± 0.08+0.22 ± 0.03−0.16 ± 0.02
V1D3−1.07 ± 0.03−0.81 ± 0.07+0.29 ± 0.01−0.06 ± 0.01−0.39 ± 0.04−0.62 ± 0.03+0.26 ± 0.02−0.57 ± 0.05−0.93 ± 0.10−1.06 ± 0.11+0.18 ± 0.02−0.18 ± 0.02
CoRide−1.51 ± 0.09−1.27 ± 0.14+0.98 ± 0.03−0.13 ± 0.02−0.72 ± 0.08−1.02 ± 0.11+0.67 ± 0.03−0.96 ± 0.06−2.17 ± 0.21−2.54 ± 0.23+0.47 ± 0.04−0.43 ± 0.04
CoopRide−1.13 ± 0.07−0.93 ± 0.11+0.77 ± 0.03−0.10 ± 0.01−0.55 ± 0.06−0.74 ± 0.09+0.58 ± 0.02−0.76 ± 0.05−1.77 ± 0.14−1.33 ± 0.13+0.43 ± 0.04−0.33 ± 0.03
𝐆𝐞𝐧𝐌𝐚𝐭𝐜𝐡Value+0.29 ± 0.02+0.20 ± 0.03−0.76 ± 0.02−0.02 ± 0.00+0.14 ± 0.02−0.09 ± 0.01−0.19 ± 0.01+0.03 ± 0.01+0.46 ± 0.05+0.67 ± 0.06−0.58 ± 0.05+0.24 ± 0.02
GenMatch+0.51 ± 0.03+0.62 ± 0.04−0.72 ± 0.03+0.11 ± 0.01+0.31 ± 0.03+0.23 ± 0.02−0.40 ± 0.03+0.23 ± 0.03+0.83 ± 0.07+1.17 ± 0.12−0.23 ± 0.03+0.55 ± 0.03
Figure 2. GenMatch architecture: (a) Context-Aware Bipartite Encoder, (b) Business-Aware Utility Learner, and (c) State-Aware Pointer Decoder.The GenMatch architecture consists of a Context-Aware Bipartite Encoder, a Business-Aware Utility Learner, and a State-Aware Pointer Decoder. The decoder updates the selected and residual matching states after generating each OD pair.
Figure 2. GenMatch architecture: (a) Context-Aware Bipartite Encoder, (b) Business-Aware Utility Learner, and (c) State-Aware Pointer Decoder.The GenMatch architecture consists of a Context-Aware Bipartite Encoder, a Business-Aware Utility Learner, and a State-Aware Pointer Decoder. The decoder updates the selected and residual matching states after generating each OD pair.
Table 2. Core City III ablations relative to GenMatch (Full), reported as the mean ± standard deviation of percentage changes over five runs. Bold denotes the best result in each column.
ModuleVariantAR↑CR↑APT↓GMV↑
GenMatchFull0.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.00
EncoderA1−2.55 ± 0.12−3.07 ± 0.07+1.16 ± 0.02−2.28 ± 0.15
A2−2.43 ± 0.06−2.69 ± 0.03+1.14 ± 0.01−2.15 ± 0.06
A3−0.39 ± 0.06−0.25 ± 0.03+0.18 ± 0.02−0.40 ± 0.07
LearnerA4−2.76 ± 0.16−3.15 ± 0.08+1.17 ± 0.03−2.32 ± 0.18
A5−2.02 ± 0.08−2.34 ± 0.04+1.53 ± 0.02−1.88 ± 0.09
DecoderA8−1.11 ± 0.04−1.07 ± 0.02+0.86 ± 0.01−1.45 ± 0.05
A9−1.22 ± 0.14−0.96 ± 0.09+0.48 ± 0.04−0.78 ± 0.19
A12−2.46 ± 0.15−3.07 ± 0.20+0.16 ± 0.03−0.91 ± 0.05
Figure 3. Online gains of GenMatch across supply–demand periods (T−C vs. PDPKM).A grouped bar chart comparing low-, moderate-, and peak-demand periods. Completion-ratio gains increase from 3.24 percent to 3.96 percent and 4.12 percent. Passenger cancellation-after-answer ratio decreases by 1.76 percent, 7.71 percent, and 8.26 percent. Driver cancellation-after-answer ratio decreases by 3.48 percent, 4.31 percent, and 7.96 percent.
Figure 3. Online gains of GenMatch across supply–demand periods (T−C vs. PDPKM).A grouped bar chart comparing low-, moderate-, and peak-demand periods. Completion-ratio gains increase from 3.24 percent to 3.96 percent and 4.12 percent. Passenger cancellation-after-answer ratio decreases by 1.76 percent, 7.71 percent, and 8.26 percent. Driver cancellation-after-answer ratio decreases by 3.48 percent, 4.31 percent, and 7.96 percent.
Table 3. Online A/B test improvements over PDPKM (T−C). Overall averages the three cities; ∗ indicates p<0.05.
VariantCity IIICity IVCity VOverall
AR ↑CR ↑APT ↓GMV ↑AR ↑CR ↑APT ↓GMV ↑AR ↑CR ↑APT ↓GMV ↑AR ↑CR ↑APT ↓GMV ↑
𝐆𝐞𝐧𝐌𝐚𝐭𝐜𝐡Value0.88%2.31%∗−7.08%∗2.35%∗0.59%3.06%∗−4.55%∗2.43%∗0.75%∗1.67%∗−4.05%∗1.04%0.77%∗1.93%∗−4.85%∗1.49%∗
GenMatch3.18%∗5.37%∗−2.20%∗4.89%∗1.72%∗4.51%∗−1.68%∗3.93%∗2.01%∗3.26%∗−1.76%∗2.16%∗2.26%∗3.86%∗−1.84%∗2.97%∗
Figure 4. Production architecture of the Batch-Level Generative Dispatch Engine.The production architecture contains a control plane that collects requests, coordinates distributed shards, and assembles dispatch batches, and a compute plane that performs distributed feature extraction, candidate retrieval, and GenMatch inference.
Figure 4. Production architecture of the Batch-Level Generative Dispatch Engine.The production architecture contains a control plane that collects requests, coordinates distributed shards, and assembles dispatch batches, and a compute plane that performs distributed feature extraction, candidate retrieval, and GenMatch inference.
Table 4. Online changes in dispatch effectiveness and experience relative to PDPKM (T−C); ∗ indicates p<0.05.
MetricDelta (T−C)
Dispatch Effectiveness Measures
Broadcast Count−0.17%∗
Answer Count (↑)2.16%∗
Completion Count (↑)3.84%∗
Passenger Experience Measures
Passenger Bad Experience Ratio (PBE) (↓)−15.17%∗
Passenger Cancel Before Answer Ratio (PCBA) (↓)−9.28%∗
Passenger Cancel After Answer Ratio (PCAA) (↓)−7.61%∗
Driver Experience Measures
Driver Income (↑)2.99%∗
Driver Answer Ratio (DA) (↑)13.96%∗
Driver Cancel After Answer Ratio (DCAA) (↓)−6.99%∗
Figure 5. Effect of model capacity relative to the Medium configuration. Error bars denote standard deviations over five runs.Four panels show changes in answer ratio, completion ratio, average pickup time, and gross merchandise volume relative to the Medium configuration across three cities. Six configurations vary encoder depth, decoder depth, and hidden dimension.
Figure 5. Effect of model capacity relative to the Medium configuration. Error bars denote standard deviations over five runs.Four panels show changes in answer ratio, completion ratio, average pickup time, and gross merchandise volume relative to the Medium configuration across three cities. Six configurations vary encoder depth, decoder depth, and hidden dimension.
Table 5. Scale statistics of the five experimental cities.
SplitCityDaily Completed OrdersDaily Online DriversAvg. Trip Distance (m)
OfflineCity I3.04e+030.18e+033.47e+03
City II1.12e+040.55e+034.41e+03
Offline & OnlineCity III5.91e+030.43e+033.99e+03
OnlineCity IV1.73e+030.31e+034.29e+03
City V1.38e+040.68e+034.71e+03
(b) CR (↑)
(b) CR (↑)
Table 6. Complete ablation results relative to GenMatch (Full). Values are the mean ± standard deviation of percentage changes over five runs.
ModuleVariantCity ICity IICity III
AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑AR (%) ↑CR (%) ↑APT (%) ↓GMV (%) ↑
GenMatchFull0.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.00
EncoderA1−2.32 ± 0.04−2.61 ± 0.05+1.74 ± 0.02−0.57 ± 0.04−2.14 ± 0.07−2.55 ± 0.04+1.23 ± 0.04−2.07 ± 0.10−2.55 ± 0.12−3.07 ± 0.07+1.16 ± 0.02−2.28 ± 0.15
A2−2.25 ± 0.02−2.30 ± 0.02+1.61 ± 0.01−0.52 ± 0.02−1.95 ± 0.03−2.36 ± 0.02+1.06 ± 0.02−1.96 ± 0.05−2.43 ± 0.06−2.69 ± 0.03+1.14 ± 0.01−2.15 ± 0.06
A3−0.14 ± 0.02−0.12 ± 0.02+0.13 ± 0.01−0.04 ± 0.01−0.66 ± 0.05−1.04 ± 0.04+0.49 ± 0.03−0.72 ± 0.10−0.39 ± 0.06−0.25 ± 0.03+0.18 ± 0.02−0.40 ± 0.07
LearnerA4−2.47 ± 0.05−2.69 ± 0.06+2.03 ± 0.01−0.59 ± 0.05−2.20 ± 0.09−2.97 ± 0.06+1.28 ± 0.05−2.30 ± 0.15−2.76 ± 0.16−3.15 ± 0.08+1.17 ± 0.03−2.32 ± 0.18
A5−1.83 ± 0.03−1.99 ± 0.03+2.70 ± 0.01−0.45 ± 0.03−1.61 ± 0.05−1.90 ± 0.03+1.44 ± 0.03−1.70 ± 0.08−2.02 ± 0.08−2.34 ± 0.04+1.53 ± 0.02−1.88 ± 0.09
DecoderA6−1.12 ± 0.02−0.49 ± 0.02+0.76 ± 0.01−0.15 ± 0.01−0.98 ± 0.04−0.90 ± 0.02+0.53 ± 0.02−0.52 ± 0.03−1.47 ± 0.07−1.69 ± 0.04+0.63 ± 0.02−0.65 ± 0.04
A7−0.22 ± 0.01−0.18 ± 0.01+0.20 ± 0.00−0.06 ± 0.01−0.11 ± 0.02−0.40 ± 0.01+0.16 ± 0.01−0.24 ± 0.03−0.37 ± 0.05−0.28 ± 0.02+0.17 ± 0.01−0.43 ± 0.04
A8−0.86 ± 0.01−1.55 ± 0.01+1.39 ± 0.00−0.40 ± 0.01−0.67 ± 0.02−1.31 ± 0.01+0.90 ± 0.01−1.37 ± 0.04−1.11 ± 0.04−1.07 ± 0.02+0.86 ± 0.01−1.45 ± 0.05
A9−0.92 ± 0.03−0.63 ± 0.04+0.58 ± 0.02−0.27 ± 0.04−0.52 ± 0.07−1.05 ± 0.05+0.46 ± 0.04−0.69 ± 0.14−1.22 ± 0.14−0.96 ± 0.09+0.48 ± 0.04−0.78 ± 0.19
A10−1.57 ± 0.06−1.31 ± 0.07+1.09 ± 0.02−0.23 ± 0.07−1.35 ± 0.11−1.88 ± 0.07+0.71 ± 0.06−0.82 ± 0.20−1.84 ± 0.20−2.05 ± 0.10+0.73 ± 0.04−0.91 ± 0.24
A11−0.46 ± 0.07−0.85 ± 0.08+0.50 ± 0.03−0.31 ± 0.09−0.29 ± 0.13−1.38 ± 0.08+0.32 ± 0.07−1.12 ± 0.25−0.79 ± 0.24−0.84 ± 0.12+0.42 ± 0.05−1.04 ± 0.30
A12−1.93 ± 0.15−1.79 ± 0.10+0.59 ± 0.03−0.23 ± 0.01−1.08 ± 0.11−1.17 ± 0.14+0.25 ± 0.03−1.09 ± 0.07−2.46 ± 0.15−3.07 ± 0.20+0.16 ± 0.03−0.91 ± 0.05
(c) APT (↓)
(c) APT (↓)
Table 7. Auxiliary prediction AUC relative to PDP, reported as the mean ± standard deviation of percentage changes over five runs.
VariantCity ICity IICity III
𝐀𝐔𝐂DA (%) ↑𝐀𝐔𝐂PCAA (%) ↑𝐀𝐔𝐂DCAA (%) ↑𝐀𝐔𝐂DA (%) ↑𝐀𝐔𝐂PCAA (%) ↑𝐀𝐔𝐂DCAA (%) ↑𝐀𝐔𝐂DA (%) ↑𝐀𝐔𝐂PCAA (%) ↑𝐀𝐔𝐂DCAA (%) ↑
PDP0.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.000.00 ± 0.00
𝐆𝐞𝐧𝐌𝐚𝐭𝐜𝐡MTL+1.62 ± 0.11+0.84 ± 0.04+0.74 ± 0.07+1.79 ± 0.14+0.76 ± 0.05+0.45 ± 0.03+1.74 ± 0.15+0.82 ± 0.05+0.55 ± 0.03
(d) GMV (↑)
(d) GMV (↑)
Table 8. Sensitivity to λmtl relative to the selected value 10. Values are the mean ± standard deviation of percentage changes over five runs. Larger AR, CR, GMV, and AUC and smaller APT are preferred. Bold and underlined values denote the best and second-best results in each column, respectively.
λmtlCity ICity IICity III
AR↑CR↑APT↓GMV↑AR↑CR↑APT↓GMV↑AR↑CR↑APT↓GMV↑
0.01−0.29±0.05−0.44±0.06+0.67±0.01−0.19±0.05−0.27±0.05−0.29±0.06+0.43±0.01−0.57±0.05−0.78±0.05−0.88±0.06+0.22±0.01−0.60±0.05
0.1−0.17±0.02−0.39±0.02+0.37±0.01−0.08±0.02−0.19±0.02−0.22±0.02+0.24±0.01−0.24±0.02−0.49±0.02−0.46±0.02+0.16±0.01−0.35±0.02
1−0.11±0.03−0.07±0.03+0.20±0.01−0.02±0.03−0.08±0.03−0.14±0.03+0.12±0.01−0.18±0.03−0.20±0.03−0.17±0.03+0.05±0.01−0.11±0.03
100.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.000.00±0.00
100+0.21±0.05−0.11±0.06+0.13±0.01+0.05±0.05−0.07±0.05−0.16±0.06−0.13±0.01−0.06±0.05+0.08±0.05−0.33±0.06−0.08±0.01−0.28±0.05
1000−0.30±0.02−0.19±0.02−0.56±0.01−0.05±0.02−0.21±0.02−0.19±0.02−0.36±0.01−0.30±0.02−0.15±0.02−0.39±0.02−0.16±0.01−0.35±0.02
10000−0.67±0.03−0.25±0.03−0.81±0.01−0.17±0.03−0.42±0.03−0.32±0.03−0.47±0.01−0.67±0.03−0.49±0.03−0.44±0.03−0.17±0.01−0.41±0.03
Table 9. Model and training configurations of GenMatch.
ConfigurationSymbolValue
Encoder layersLenc2
Decoder layersLdec2
Hidden dimensiond128
Matching-attention heads4
Competition-attention heads4
Pointer headsPptr4
Feed-forward dimension512
Dropout ratio0.2
Multi-task shared-layer dimensions[256,256]
Multi-task tower dimensions[256,128,64]
DA loss weightλDA1.0
PCAA loss weightλPCAA1.0
DCAA loss weightλDCAA1.0
Multi-task-loss weightλmtl10.0
Maximum orders per batch500
Maximum drivers per batch500
Maximum candidate OD pairs10000
Training epochs50
OptimizerAdam
Learning-rate range×10−5–×10−4
Learning-rate schedulerCosine
Warm-up epochs3
Weight decay10−4
Batch size per GPU16
Global batch size64
Gradient clipping1.0

为什么重要

这是首个被部署到真实网约车生产环境中的端到端生成式派单框架,为把推荐、搜索、广告等领域中常见的分阶段工业系统合并成一个统一训练模型提供了可参考的实践案例。同时论文详细说明了如何在严格延迟限制下把批级生成模型真正落地到大规模线上系统。

本文术语

  • 二分图 · 只在两组节点(这里是订单和司机)之间存在连接的图结构
  • 指针解码器 · 每一步都从当前剩余候选集合中挑出一个元素的生成模型结构
  • Kuhn-Munkres匹配算法 · 一种经典算法,用于在两组对象之间找到总价值最高的一对一配对方案
  • A/B测试 · 把真实用户流量分成两组,分别使用新旧系统来比较效果的实验方法
  • 多任务学习 · 让一个模型同时预测多个相关结果,例如司机是否应答、乘客是否取消等

论文原文摘要(英文)

Micro-View Order-Dispatching assigns available drivers to passenger orders within each dispatch batch and is critical to the service quality and operational efficiency of ride-hailing platforms. Mainstream industrial solutions follow a multi-stage paradigm of model prediction, value calculation, and dispatch matching. Although dispatch quality is determined by the final batch-level assignment, these stages optimize different intermediate objectives. This cross-stage objective inconsistency means that improving a single stage does not necessarily improve the overall dispatch result. We therefore formulate Micro-View Order-Dispatching as a generative matching problem and propose GenMatch, an end-to-end Generative Matching framework and the first such framework deployed in a real-world production environment. Applying generative modeling to this problem introduces three challenges. First, each dispatch batch forms a dynamic sparse bipartite graph, requiring efficient structured batch-level encoding. Second, replacing the hand-crafted value function requires learning unified business utility from heterogeneous feedback. Third, directly generating an assignment requires tracking the evolving matching state because each selected order-driver pair changes the remaining feasible candidates. GenMatch addresses these challenges with a Context-Aware Bipartite Encoder, a Business-Aware Utility Learner, and a State-Aware Pointer Decoder. Extensive offline evaluations and online A/B tests in five cities across DiDi's international ride-hailing markets show consistent improvements over competitive baselines, confirming the effectiveness and practicality of GenMatch for industrial order-dispatching.

作者 · Chuang Liu, Yuxueqing Zhang, Tengfei Lyu, Zirui Yuan, Weiqi Hu, Yanghan Cheng, Ming Wang, Li Ma, Zihao Lu

在 arXiv 阅读

最新论文

全部论文 →

METAL LAB 最新报道

图片来源: Chuang Liu et al., arXiv:2608.19751, arxiv-nonexclusive