摘要:在工业APS领域,概率性生成的LLM(如72B参数模型)为何频频翻车?本文深度复盘摩杰斯(Moges)从“启发式加权”到“混合整数规划(MIP)”的架构演进。我们将揭秘如何通过“端侧小模型语义解析 + 约束求解器全局最优”的混动架构,完美解决机加工场景中刚性外协动态产能溢出的时空约束难题。附核心建模逻辑与性能压测数据。


0x01 背景:当“搜索引擎逻辑”遇上“组合爆炸”

早期,我们的APS引擎采用经典的多目标加权评分机制(MCDM)。这本质上是一个类似PageRank的排序算法:

1# 伪代码:旧版启发式评分逻辑
2def calculate_score(order):
3    score = 0
4    score += order.customer_level * 10      # 优质客户加分
5    score += (1 / order.remaining_days) * 20 # 交期紧迫加分
6    score -= order.external_process_count * 5 # 外协多减分(惩罚)
7    # ... 更多规则
8    return score
9
10# 策略:贪心算法 (Greedy Strategy)
11schedule = sorted(orders, key=calculate_score, reverse=True)

痛点:这种 O(n log n) 的贪心策略在低复杂度场景下尚可,但一旦面对机加工车间的 NP-Hard问题(如:五轴机床互斥、刀具寿命约束、外协物流时间窗),它极易陷入局部最优(Local Optima),甚至产生资源死锁(Deadlock)

为了解决这个问题,我们曾尝试引入 72B参数的大语言模型 进行端到端排程。结果?惨败。

  • 幻觉(Hallucination):LLM编造不存在的空闲时间窗。
  • 非确定性:同样的输入,三次推理得出三个不同的计划,工厂无法执行。
  • 延迟(Latency):推理耗时分钟级,无法应对车间秒级插单。

结论:工业排程是确定性约束求解问题,绝不是概率性文本生成问题。用LLM做排程,就像用蒙特卡洛模拟去控制伺服电机——理论很性感,工程很骨感。


0x02 架构重构:Hybrid Architecture(混动范式)

我们最终确立了 "Symbolic AI (OR-Tools) + Sub-symbolic AI (Quantized LLM)" 的双引擎架构。

2.1 交互层:端侧量化小模型 (Edge LLM)

  • 选型Qwen-2.5B-Int4 (知识蒸馏 + 量化)。
  • 部署:单卡 RTX 3060 即可跑满,推理延迟 <200ms
  • 职责:仅做 NLU (自然语言理解) 和 Intent Recognition (意图识别)。将人类模糊指令转化为结构化JSON约束。

Input (User):

“把那个急单插进去,如果内部五轴忙不过来,就发外协,但要算上物流时间。”

Output (LLM -> JSON):

1{
2  "action": "reschedule",
3  "priority_order_id": "MO-2026-089",
4  "constraints": {
5    "force_outsourcing_if_busy": true,
6    "machine_type": "5AXIS",
7    "include_logistics_time": true
8  },
9  "optimization_goal": "min_makespan"
10}

0x03 核心层:基于OR-Tools的混合整数规划 (MIP)

这是系统的“心脏”。我们将业务规则转化为严格的数学约束,利用 CP-SAT Solver 进行全局搜索。

3.1 外协约束的深度建模 (The Outsourcing Model)

机加工最痛的是外协。我们将其建模为二元分类时空折叠

A. 工艺强制外协 (Hard Constraint)

对于热处理、电镀等内部无法完成的工序,定义为固定外部节点:
Route_node ∈ { Internal_Machine, External_Vendor }
若 ProcessType == 'HeatTreatment',则 ResourceGroup 强制锁定为 VendorPool

B. 动态产能溢出 (Binary Decision Variable)

当内部负荷 Load > 100% 或无对应设备时,触发决策变量 x_ij
min Z = Σ (Cost_internal * x_int + Cost_external * x_ext + Penalty_delay)
求解器会自动权衡:是内部加班划算,还是外协+物流划算?

C. 外协物流时空折叠 (Spatio-Temporal Folding)

拒绝简单的 +3天 估算。我们构建了全链路时间模型:

T_total = T_out_trans + T_queue_vendor + T_process + T_in_trans + T_qc

  • T_queue_vendor:动态读取供应商产能负荷(通过SRM接口或经验曲线)。
  • TimeWindow:严格计算发车与回厂时间窗,避免“料到了,人下班了”或“车到了,产线停了”。

3.2 求解流程

  1. Constraint Propagation:传播硬约束(如:刀具互斥、工序先后)。
  2. Branch and Bound:分支定界法搜索解空间。
  3. Global Optimization:找到满足所有约束且目标函数(工期最短/成本最低)最优的解。
  4. Result:输出100%可执行的工单序列,零幻觉

0x04 性能压测与实战数据

在某精密零部件工厂(200+台CNC,日均500+工序)的实测对比:

表格

指标 旧版加权系统 72B LLM方案 摩杰斯混动架构
求解算法 Greedy Heuristic Probabilistic Gen CP-SAT (MIP)
外协逻辑 静态固定天数 逻辑缺失/幻觉 动态时空链建模
平均响应时间 2.5s 120s+ 0.4s
计划可行率 82% (需人工调) <50% 100%
硬件成本 Low High (Multi-A100) Low (Single GPU)

Dev视角的亮点:

  • 可解释性:当计划员问“为什么外协?”时,系统能回溯到具体的约束冲突(如:Machine_05 Load > 1.2),而不是LLM的胡言乱语。
  • 扩展性:新增约束(如“周五下午不排外协发货”)只需修改一行Python约束代码,无需重新训练模型。

0x05 总结

工业软件的核心壁垒不是模型参数量,而是对业务场景的数学抽象能力

摩杰斯选择了一条更难但更正确的路:用小模型做交互,用数学求解器做决策。这不仅解决了“幻觉”问题,更将外协、物流等复杂变量纳入了全局最优解的计算范畴。

作者:昆山摩杰斯技术团队 | 标签:#APS #运筹优化 #OR-Tools #LLM #工业4.0 #混合整数规划

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐