4. 任务编排与调度基本策略
在 WCS 的任务编排层,调度策略决定了“哪一个任务先被下发、走哪条路径、由哪台设备承接”。输送分拣场景与普通仓储拣选最大的不同在于:任务一旦进入输送线,就与物理路径、道口容量、设备节拍强绑定,调度策略选错,往往不是“慢一点”,而是造成堵包、错分甚至设备过载。本节围绕四种基本策略——先到先服务(FCFS)、优先级调度、最短路径、负载均衡——分析它们在输送分拣场景中的适用条件与失效边界。
四种策略的本质差异
先到先服务按任务到达顺序排队,实现简单、公平性好,天然避免“饥饿”,但它对任务紧急度和设备负载完全不感知。在输送分拣中,FCFS 适合任务同质、流量平稳、道口能力充足的场景,例如单一品类的匀速补货输送;一旦出现急件插单或某道口拥堵,FCFS 会让急件排在长队之后,且无法主动绕开拥堵段。
优先级调度为每个任务赋予优先级权重,高优先级任务优先占用输送资源和分拣道口。它解决的是“谁更重要”的问题,适合电商大促中的时效订单、医药冷链中的温控时限件、产线中的齐套件。但优先级不能无限叠加,否则低优先级任务可能长期得不到执行,需要设置老化机制或配额上限。
最短路径以任务从入口到目标道口的路径长度(或预计通行时间)最小为目标。在输送网络中,它通常表现为选择最少转向、最少合流点的路由。最短路径能降低单任务通行时间,但所有任务都挤向同一条“最优路径”时,会形成热点拥堵,反而拖慢整体吞吐。
负载均衡关注的是设备与路径上的任务分布,通过把任务分配到相对空闲的输送段、分拣口或提升机,避免局部过载。它优化的是系统级吞吐和稳定性,而不是单个任务的最短时间。四者的目标函数不同,适用性必须结合场景判断。
适用性分析:从场景特征反推策略
判断策略是否适用,关键看三个场景特征:任务是否同质、时效要求是否分层、网络是否存在可替代路径。
当任务同质且流量平稳时,FCFS 是合理基线。例如某输送线每小时稳定通过 600 件、分拣道口能力为 800 件/小时,此时 FCFS 的排队延迟可控,且实现成本最低。但如果道口能力只有 650 件/小时,FCFS 会让队列持续增长,此时必须引入负载均衡或限流。
当任务时效分层明显时,优先级调度不可替代。典型做法是设置 3~5 个优先级:P0 为限时急件,P1 为当日达,P2 为普通订单,P3 为补货。调度器在每个决策周期先扫描高优先级队列,再按 FCFS 处理同级任务。为防止 P3 长期饥饿,可设置“等待超过 120 秒自动升一级”的老化规则。
最短路径适合网络存在多条可达路径、且各路径负载差异不大的场景。例如从入口到道口 3 有两条路径:路径一经过合流点 A,长度 42 米;路径二经过合流点 B,长度 55 米。最短路径会选路径一。但如果路径一当前排队 18 件、路径二只有 3 件,按“预计通行时间 = 长度/线速 + 排队等待”计算,路径一预计 42/0.5 + 18×0.8 = 84 + 14.4 = 98.4 秒,路径二预计 55/0.5 + 3×0.8 = 110 + 2.4 = 112.4 秒,此时最短路径仍略优;若路径一排队增至 30 件,则路径一预计 108 秒,路径二 112.4 秒,差距缩小,负载均衡策略会倾向路径二。
负载均衡适合多道口、多提升机、多合流点的复杂网络。它的核心是维护每个设备或路径段的实时负载指标,例如队列长度、占用率、平均等待时间,并在分配时选择负载最低的可用资源。负载均衡不追求单任务最快,而是让系统整体吞吐最大化、拥堵最小化。
组合策略与工程落地建议
实际 WCS 中很少只用一种策略,常见组合是“优先级 + 负载均衡 + 最短路径兜底”:先按优先级排序,再在同优先级内按负载均衡选路,若负载指标接近则用最短路径决胜。这样既保证急件优先,又避免热点拥堵,同时兼顾单任务效率。
落地时需要明确几个参数:决策周期(如 200 毫秒)、负载采样窗口(如最近 10 秒)、优先级老化阈值(如 120 秒)、路径代价公式(长度/线速 + 队列长度×单件节拍)。这些参数应写入调度配置文件,并在试运行阶段通过日志观察队列长度、道口利用率和任务平均完成时间,再逐步调优。
| 策略 | 核心目标 | 适用场景 | 主要风险 | 关键参数 |
|---|---|---|---|---|
| 先到先服务 | 公平、简单 | 任务同质、流量平稳 | 急件被延误 | 队列长度、到达率 |
| 优先级调度 | 时效分层保障 | 急件、时效件、齐套件 | 低优先级饥饿 | 优先级级数、老化阈值 |
| 最短路径 | 单任务通行最快 | 多路径、负载均衡 | 热点拥堵 | 路径长度、线速、转向数 |
| 负载均衡 | 系统吞吐最大 | 多道口、多设备网络 | 单任务绕行 | 负载采样窗口、决策周期 |
综上,四种策略没有绝对优劣,只有与场景是否匹配。FCFS 是基线,优先级解决时效分层,最短路径解决单任务效率,负载均衡解决系统稳定性。工程上应根据任务特征、网络结构和时效要求,选择主策略并辅以兜底规则,通过参数调优和运行观察持续验证适用性。