核心结论
一、业务问题:两阶段排产循环
医疗器械厂家(X光设备)的排产是一个月度两阶段循环,资源三要素是机房(测试设备)、机型、人(组装与调试工人):
上车前买票
基于销售的机型预测订单量 + 预计交期,把订单排进机房,并安排对应的组装/调试工人。
- 输入:预测数据(soft demand)
- 输出:机房占用 + 人员分配
- 本质:产能预订 / Reservation
实际订单上车
实际订单进来后,用真实订单填充预排产的框架。当实际与预测不一致时,需要调整。
- 输入:实际订单(firm orders)+ 预排产计划
- 输出:可执行的排产计划
- 本质:滚动重排 / Re-scheduling
正式排产时的两种典型缺口场景:
资源约束的两条硬规则:
机房:通用 vs 专用
部分机房可测试多种机型(共用),部分机房只能测试特定机型(专用)。→ 机型-机房兼容矩阵。
人员:一人多能 vs 专机资质
组装/调试工人有资质要求:有的持多机型资质,有的只专职一个机型。→ 人员-机型技能矩阵。
二、问题形式化:它其实是个经典问题
把业务语言翻译成学界术语,可以直接站在几十年的研究积累上:
| 业务说法 | 学术 / 工业术语 |
|---|---|
| 预排产(月中,预测订单+交期) | Master Production Scheduling (MPS) / Rolling Horizon Planning |
| 正式排产(月初,实际订单填充) | Firm Order Release / Re-scheduling(重排产) |
| 情况a:排了但订单没来 | Demand gap → 产能释放(slot release) |
| 情况b:排得不够 | Capacity gap → 追加排产 + 溢出 |
| 机房通用/专用、人员资质 | Flexible Job Shop 的 alternate resources + skill matrix 约束 |
| 整个问题 | 有限能力排产(Finite Capacity Scheduling),典型 HMLV(高混低量)场景 |
机房(部分通用/部分专用)+ 人员(一人多能/专机资质)+ 机型 = 带资质矩阵的柔性作业车间调度问题(FJSP with skill matrix)。OR-Tools CP-SAT 有现成解法和工业级案例——GitHub 上有 14 台设备 + 26 名操作员 + 技能约束 + 换型时间的完整开源原型,可直接参考。
三、AI Agent 的正确架构:四层
┌─────────────────────────────────────────┐ │ L4 交互层(LLM/Agent) │ │ · 理解排产经理的自然语言意图 │ │ · "把3号机房下个月的A机型换给B机型" │ → 翻译成结构化约束修改 │ │ · 解释排产结果为什么长这样(可解释性) │ │ · 差异分析:预测 vs 实际的缺口报告 │ ├─────────────────────────────────────────┤ │ L3 编排层(Agent Workflow) │ │ · 月中触发预排产 / 月初触发重排 │ │ · 调用求解器 → 校验 → 不行则调参重跑 │ │ · 生成调整建议清单供经理审批 │ ├─────────────────────────────────────────┤ │ L2 求解层(确定性,非LLM) │ │ · OR-Tools CP-SAT 精确求解 │ · 硬约束:机房兼容/人员资质/机房不冲突 │ │ · 软目标:交期偏差最小/换型最少/人员利用率 │ ├─────────────────────────────────────────┤ │ L1 数据层(PG数据库) │ │ · 机房-机型兼容矩阵、人员资质矩阵、 │ │ 历史订单、节拍时间、预测数据 │ └─────────────────────────────────────────┘
关键设计:最小扰动重排(minimal disruption re-scheduling)。重排产不是从零排——目标函数里加入「与预排产计划的偏差惩罚项」,求解器自然倾向于少动。这正是排产经理手动做的事,但 agent 能在分钟级穷举人想不到的组合。
四、AI 的真正增值点
| 痛点 | AI Agent 方案 | 增值 |
|---|---|---|
| 预测 vs 实际差异,手动调整费时 | 月初自动跑差异分析 → 生成 2–3 套调整方案(保守/激进/均衡)供经理选 | 数小时人肉调表 → 分钟级多方案 |
| 机房/人员组合复杂,靠老经验 | 兼容矩阵 + 资质矩阵数字化进求解器 | 经验显性化,不怕人员退休 |
| 调整方案好不好说不清 | 求解器输出可解释报告:哪个约束导致、影响哪几单 | 决策可审计(医疗器械行业加分项) |
| 预排产本身拍脑袋 | 预测准确率反馈闭环:历史预测 vs 实际订单的偏差统计,反过来校准销售预测 | 数据闭环,越用越准 |
| What-if 问答 | 经理直接问「C机型订单多来5台,哪些机房能接住?」→ agent 改约束重求解 | 自然语言交互门槛最低 |
五、商业方案 vs 自研
| 路线 | 代表 | 优势 | 劣势 |
|---|---|---|---|
| 商业 APS | Siemens Opcenter APS(前身 Preactor)、SAP PP/DS | 成熟、GxP 合规生态、医疗器械案例多 | 贵、定制难、无自然语言交互层 |
| 自研 Agent + 求解器 | Dify/工作流 + OR-Tools + PostgreSQL | 完全贴合两阶段流程、可控、复用既有基建 | 需自己养,求解器调优有学习曲线 |
| 混合(推荐起步) | 先自研 PoC 验证价值 → 再评估商业 APS | 低风险、拿数据说话 | — |
学界最新方向(A4PS 2026、SMARTAPS 等)正是「LLM 辅助修改/更新 APS 计划」——即使上了商业 APS,上面再套一层 Agent 也是前沿趋势。自研交互 + 编排能力不会白费。
六、落地路线图
| 阶段 | 内容 | 周期 | 验证物 |
|---|---|---|---|
| P0 数据摸底 | 拿一个月历史预排产 + 实际订单,还原差异场景 | 1–2 周 | 差异分析报告 |
| P1 求解器 PoC | 真实数据建 CP-SAT 模型,对历史月份「重考」:agent 排的 vs 经理实际排的,比交期达成率/人员利用率 | 2–4 周 | 对比基准(backtest) |
| P2 Agent 壳 | Dify 工作流 + 自然语言调整 + 多方案推荐 | 2–3 周 | 经理可用的 demo |
| P3 试点 | 下一个排产周期并行运行:agent 出建议,经理审批执行 | 1 个月 | 采纳率 + 实际指标 |
七、开会要带回来的信息
- 数据现状:现在排产用什么工具(Excel?SAP?)?机房-机型兼容、人员资质有没有结构化数据,还是在老师傅脑子里?
- 规模:几个机房、几种机型、多少组装/调试人员、月订单量级?规模决定求解器秒级还是分钟级——百台以内对 CP-SAT 都是小儿科。
- 约束优先级:交期、换型时间、人员利用率,哪个最重要?这是目标函数权重,必须业务定。
- 调整的隐含规则:经理手动调整时有哪些不成文偏好(优先保大客户、某机房尽量不动)?
- 预测数据质量:销售预测历史准确率多少?有没有存历史版本?这决定预排产的初始质量上限。
- 系统边界:SAP 订单数据能否自动获取(API/导出)?排产结果要不要回写系统?
参考来源
- Formalize, Don't Optimize: The Heuristic Trap in LLM-Generated Combinatorial Solvers(arXiv 2605.12421,2026)——LLM 生成求解器代码时,委托 OR-Tools 的符号化路线在所有模型上正确率最高。
- SDDL: Improving NL Combinatorial-Optimization Accuracy(arXiv 2608.18409,2026)——自然语言调度问题 → 求解器对齐表示的神经符号框架。
- GenOR-Twin(2026)——LLM 语义中间件:把调度员的口语日志翻译成求解器约束,符号验证器拦截全部有害错误。
- A4PS: Agentic AI-assisted APS with LLMs for smart manufacturing(ScienceDirect,2026-01)。
- Feasibility Study on Interactive AI Scheduling with LLM for Human-Centric Industry 5.0(APMS 2025)。
- Google OR-Tools — Flexible Job Shop with CP-SAT(官方示例与工业原型实践)。