3. 优先级与排程的核心概念体系

在生产订单排程的工程实践中,最容易被混淆的不是算法本身,而是术语。很多排程方案失败,并非因为求解器不够强,而是因为“优先级”“权重”“排序”“排程”“调度”“派工”被当成同义词使用,导致需求、模型、执行三层之间语义断裂。本节把这些术语还原为可计算、可落地、可验证的工程定义,并说明它们之间的输入输出关系。

一、优先级:订单在竞争资源时的相对次序

优先级(Priority)回答的是“谁先被考虑”。它是一个相对量,只有在同一资源、同一时间窗内存在竞争时才有意义。工程上,优先级通常由多个业务维度合成,例如交期紧迫度、客户等级、订单金额、物料齐套状态、下游停机风险等。常见做法是加权求和后映射为离散等级:

priority_score = w_due * due_urgency
               + w_customer * customer_level
               + w_material * material_readiness
               + w_downstream * downstream_risk

# 示例参数(假设值,仅用于说明计算方式)
w_due=0.45, w_customer=0.20, w_material=0.20, w_downstream=0.15
订单A: due_urgency=0.9, customer_level=0.8, material_readiness=1.0, downstream_risk=0.6
priority_score_A = 0.45*0.9 + 0.20*0.8 + 0.20*1.0 + 0.15*0.6 = 0.855

需要强调:优先级是决策输入,不是排程结果。它不保证订单一定先开工,因为还要受物料、模具、换型时间等约束。优先级只决定“在可行解中更倾向谁”。

二、权重:优先级背后的可调系数

权重(Weight)是优先级函数中的系数,决定各业务维度对最终排序的影响强度。权重的工程意义在于可调、可审计、可版本化。同一组订单,权重从“交期优先”切换为“客户优先”,排序结果可能完全不同。因此权重必须与业务目标绑定,并记录变更原因。权重不是拍脑袋的数字,通常通过历史交付数据回归、AHP层次分析或业务访谈确定,并定期复核。

三、排序:把订单排成一条有序队列

排序(Sequencing)是在给定资源、给定时间窗内,按照优先级或特定规则把订单排成一个线性次序。排序关注的是顺序,不关注具体开始时刻。典型规则包括EDD(最早交期优先)、SPT(最短加工时间优先)、CR(临界比)、WSPT(加权最短加工时间)等。排序是排程的前置步骤,输出的是一个有序列表,而不是时间表。

四、排程与调度:从顺序到时间轴

排程(Scheduling)是在排序基础上,为每个订单分配具体的开始时间、结束时间和资源,形成可执行的时间表。调度(Dispatching)则更偏向实时或近实时的决策:当设备空闲、订单到达或异常发生时,从待选队列中选出下一个执行对象。可以这样理解:排程是“提前把未来排好”,调度是“当下决定下一步做什么”。两者共享优先级和排序结果,但时间粒度和触发方式不同。

五、派工:把调度决策落到工位

派工(Dispatching)在车间执行层,是把调度结果转化为工位可执行的指令,包括工单号、工序、设备、物料、工装、数量、开始时间等。派工单是排程与执行之间的接口。如果派工信息缺失或与现场状态不一致,再好的排程也无法落地。因此派工必须与MES/工位终端联动,并支持异常回传。

六、节拍与瓶颈:决定产能上限的两个关键量

节拍(Takt Time)是满足客户需求所需的单位产出节奏,计算方式为:可用生产时间 ÷ 客户需求量。它回答“应该多快”。瓶颈(Bottleneck)是产能最低、限制整体产出的工序或资源,回答“最多能多快”。排程必须识别瓶颈并围绕瓶颈做保护性排程,否则非瓶颈的优化只会增加在制品。节拍用于对齐需求,瓶颈用于约束排程,两者共同决定排程的可行边界。

优先级与排程核心概念关系图 从业务输入到工位执行的语义链 业务维度 交期 / 客户 / 物料 / 风险 权重 可调系数 · 版本化 优先级 相对次序 · 决策输入 排序 有序队列 排程 Scheduling 开始/结束时间 · 资源分配 提前规划 · 时间表 调度 Dispatching 实时决策 · 选下一个 事件触发 · 近实时 共享优先级 派工 Dispatching 工单 · 工序 · 设备 · 物料 工位可执行指令 节拍 Takt 可用时间 ÷ 需求量 应该多快 瓶颈 Bottleneck 产能最低工序 · 最多多快 约束边界 语义链:业务维度 + 权重 → 优先级 → 排序 → 排程/调度 → 派工 → 工位执行 约束边界:节拍对齐需求节奏,瓶颈限制整体产出,二者共同决定排程可行域

七、术语之间的工程关系

把上述概念串起来,可以得到一条清晰的语义链:业务维度 + 权重 → 优先级 → 排序 → 排程/调度 → 派工 → 工位执行。其中,优先级和排序属于决策层,排程和调度属于计划层,派工属于执行层。节拍和瓶颈则作为约束边界,贯穿始终。任何一层定义不清,都会导致上下游信息失真。

术语 回答的问题 输出物 时间粒度
优先级 谁先被考虑 优先级分值/等级 决策时点
权重 各维度影响多大 系数集合 版本级
排序 按什么顺序 有序订单队列 批次/班次
排程 何时开始、何时结束 时间表 天/班次
调度 下一步做什么 实时决策 分钟/事件
派工 谁在哪个工位做 派工单 工位级
节拍 应该多快 目标节奏 需求周期
瓶颈 最多能多快 约束资源 产能周期
在实际项目中,建议把优先级计算逻辑、权重版本、排序规则、排程约束、派工模板分别文档化,并建立术语对照表。当业务方说“这个订单优先级高”时,能立刻定位到是哪个维度、哪个权重、哪个版本在起作用,避免口头优先级与系统优先级不一致。
常见误区:把优先级直接当作排程结果,认为“优先级高就一定先做”。实际上,优先级只影响选择倾向,最终排程还要受物料齐套、设备可用、换型时间、瓶颈产能等硬约束。忽略约束的优先级排序,往往在现场无法执行。

理解这些术语的工程定义,是后续建立排程规则、设计优先级模型、配置调度策略的基础。只有语义一致,模型才能被正确实现,排程结果才能被现场信任和执行。