笔记 / Timefold Solver / 调优与扩展
01 / 06 / 04

大规模排程建模策略

状态
持续整理
来源
Obsidian
创建
2026/05/14
公开整理
2026/07/31

30 秒速览#

大规模排程不能只靠调 Solver 参数。真正有效的策略往往是业务分解 + 模型瘦身 + 约束优化 + 热启动。

典型问题#

  • 订单数多。
  • 候选产线多。
  • 时间窗口长。
  • 换型矩阵复杂。
  • 动态插单频繁。
  • 硬约束多,初始可行解难找。

五类策略#

策略含义
时间窗口只排近期或滚动周期
资源分组按产线组、工艺组拆分
固定已发布计划只重排可变部分
候选值裁剪去掉永远非法或明显无意义候选
分层求解先粗排,再细排

分解原则#

能拆的前提是:拆分后不会破坏关键约束。比如不同产线组之间如果共享模具,就不能简单独立求解,除非先处理共享资源。

热启动#

大规模场景下不要每次从空解开始:

  • 日常排程:用昨天/上一版方案作为初始解。
  • 插单:只解冻受影响窗口。
  • 异常处理:保留稳定部分,局部修复。

生产排程建议#

  1. 先定义冻结区、可变区、探索区。
  2. 冻结区不动。
  3. 可变区参与求解。
  4. 探索区可提供候选任务填补空档。
  5. 用软约束控制计划稳定性。

易错点#

  • 盲目全量重排。
  • 拆分后遗漏跨分区资源约束。
  • 只优化 Solver,不优化输入数据。
  • 忽略计划稳定性,导致结果业务不可接受。

关联笔记#