JD 用 LLM 选库存分配公式,Hit Ratio 从 21% 拉到 50%,这思路比直接求解更务实
多仓库库存分配是一个典型的混合整数规划(MIP)问题,但难点在于——没有一套公式能应对所有场景。需求集中度、库存失衡、补货规模、服务约束、预测波动,随便一个变量变了,最优的数学建模方式可能就完全不同。
JD.com 的研究团队最近在 arXiv 上挂了一篇 preprint,做法很有意思:不直接让 LLM 解优化问题,而是让 LLM 当「配方选择器」——给定一批库存分配实例,从候选的 OR 专家库中挑一个最合适的 MIP 公式扔给求解器去算。
这个思路我在之前的物流调度项目里也踩过类似的坑。同一套 MIP model,换一组订单分布,求解时间能差一个数量级,解的质量也不稳定。JD 的做法等于把「该用哪套公式」这件事本身做成了分类问题,交给 LLM 来判。
训练分三个阶段。先从 supervised fine-tuning(SFT)开始,让模型学会理解每个 OR expert 对应的分配逻辑;再做 IPO(identity preference optimization)偏好对齐,让模型知道哪些 formulation 在实际求解中表现更好;最后上 GRPO(group relative policy optimization),通过 solver 反馈的 allocation quality 差距来给采样结果打分。
在 JD 真实的多仓库分配实例上,Hit Ratio@1 从 SFT+IPO 阶段的 21.45% 拉到了 GRPO 之后的 50.42%,Hit Ratio@2 从 70.47% 提高到 82.31%。整体 allocation accuracy 比基线高出 12.57 个百分点,距事后最优的 ex-post oracle 只差 4.85 个百分点。
在多仓调拨这类高频决策里,选错 formulation 意味着浪费运力、挤压库存、或者服务水平超标。每提升十几个百分点的选型准确率,对应的是真金白银的履约成本下降。
这篇工作真正让我觉得有意思的点不是 GRPO 本身——RL 调 LLM 现在已经不稀奇了——而是它找到了一个非常精确的落点:库存分配这类问题的瓶颈不在求解能力,而在问题建模的选择上。把 LLM 架在 OR expert 库和 MIP solver 中间做选型,既利用了 LLM 的模式识别能力,又不把核心运算交给黑盒。
这个实验跑在 JD.com 的数据上,作者单位应该就是 JD 的算法团队。国内电商在供应链侧的 AI 投入,从这篇论文能看出一部分:不追大模型炫技,追的是能让库存周转少踩坑的具体方案。
原文 arXiv 编号是 2607.25956。