3. 优先级体系设计基础
优先级体系不是一张“谁先谁后”的简单清单,而是一套把业务目标翻译成排程可执行信号的规则系统。它要回答三个层次的问题:用什么维度衡量一张工单的紧迫与重要程度;这些维度如何合成一个可比较的优先级值;当规则之间冲突时,谁让位于谁。只有把这三层说清楚,排程算法才能稳定地产出符合业务意图的顺序,而不是每次插单都靠调度员临场判断。
一、优先级维度:从业务目标中提取可量化字段
维度是优先级的“原料”。设计时先不要急着定权重,而要把业务目标拆成可落到工单字段上的量。常见的维度包括:
- 交期紧迫度:以承诺交期(Due Date)与当前时间的差值衡量,差值越小越紧迫。可细分为“已逾期”“今日到期”“三日内到期”等区间。
- 客户重要度:按客户等级、合同类型、战略合作状态赋值,例如 A 类客户 5 分、B 类 3 分、C 类 1 分。
- 订单金额或毛利贡献:金额越大、毛利越高,越倾向于优先保障,但需防止大单长期压制小单。
- 工艺相似性与换型成本:与当前在制产品工艺接近的工单,插单后换型时间短,可给予适度加权。
- 物料齐套状态:齐套的工单可立即开工,缺料工单即使优先级高也无法执行,需作为约束而非单纯加分项。
- 下游联动影响:某工单延迟会导致总装停线或客户罚款时,应单独提升其优先级。
维度选择的原则是“可采集、可比较、可解释”。如果某个维度无法从 ERP、MES 或订单系统中稳定取数,就不应进入正式优先级公式,否则规则会因数据缺失而失效。
二、权重与合成:把多维度压成一个可排序的值
权重决定各维度在最终优先级中的话语权。最常用的合成方式是加权求和:
优先级得分 = w1×交期紧迫度 + w2×客户重要度 + w3×金额贡献
+ w4×换型友好度 + w5×下游影响 − w6×缺料惩罚
其中权重之和通常归一化到 1,便于横向比较。举例(示例参数,非实测):某车间设定 w1=0.40、w2=0.20、w3=0.15、w4=0.10、w5=0.10、w6=0.05。一张工单交期紧迫度 0.9、客户重要度 0.6、金额贡献 0.5、换型友好度 0.8、下游影响 0.7、缺料惩罚 0,则得分为 0.40×0.9+0.20×0.6+0.15×0.5+0.10×0.8+0.10×0.7−0.05×0 = 0.36+0.12+0.075+0.08+0.07 = 0.705。另一张工单若缺料惩罚为 1,则会被扣 0.05,得分相应下降。权重不是永久固定的,旺季可提高交期权重,淡季可提高换型友好度权重,但调整必须记录版本,避免同一批工单在不同时间得到不可复现的顺序。
三、规则类型:从“打分”到“硬约束”
仅有加权得分还不够,因为有些业务要求是“必须满足”而非“尽量满足”。因此优先级体系通常混合三类规则:
- 硬约束规则:不可违反,如客户合同约定的最晚交期、设备安全上限、物料未齐套不得开工。硬约束在排程中表现为过滤条件,不参与打分。
- 软偏好规则:用于在可行解之间择优,如“同客户订单尽量连续生产”“换型次数尽量少”。它们以权重或惩罚项形式进入目标函数。
- 插单准入规则:规定什么条件下允许插单,例如“仅当插单后原计划交期延误不超过 4 小时”或“插单工单优先级得分高于当前队列均值 20% 以上”。
三类规则的关系是:硬约束先筛掉不可行方案,软偏好再在剩余方案中排序,插单准入则控制新工单进入队列的时机与幅度。缺少任何一层,优先级体系都会在异常场景下失稳。
四、优先级与排程的关系
优先级是排程的输入信号,排程是优先级的兑现过程。优先级回答“谁更重要”,排程回答“在设备、物料、人力约束下,谁先做、做多久、何时完成”。两者之间不是简单的“按优先级从高到低排”,而是:优先级提供排序倾向,排程在可行域内尽量逼近这个倾向,同时输出实际开工时间、完工时间和交期达成情况。如果排程结果与优先级意图偏差过大,说明约束过紧或权重设置不合理,需要回到维度与权重层调整,而不是反复手工拖动甘特图。
五、设计时的关键取舍
第一,维度不宜过多。超过六到七个维度后,权重分配会变得难以解释,调度员也无法判断某张工单为何排在前面。第二,硬约束与软偏好必须分开管理,硬约束写进排程过滤条件,软偏好写进目标函数,否则会出现“为了满足偏好而违反安全上限”的严重问题。第三,权重调整要有版本和生效时间,避免同一批工单在不同班次得到不同顺序。第四,优先级得分只解决“排序倾向”,不解决“何时开工”,后者必须由排程结合设备可用时间和物料到位时间计算。
综上,优先级体系的设计顺序应是:先从业务目标提取可量化维度,再确定权重与合成方式,然后划分硬约束、软偏好和插单准入三类规则,最后把优先级作为排程引擎的输入信号,通过排程结果反查体系是否兑现了业务意图。优先级与排程不是替代关系,而是“意图”与“可行解”之间的迭代关系。