OUTPUT-005 · SELF-OWNED · CALCULATED
插单不是“多干两小时”。
300 盒进来,必然有 60 分钟落在车次之后。
一条鲜切果切线,08:00 开班,两个车次:14:00 和 19:00。当天已排 8 单,最优顺序也要做到 18:40。这时业务抱来一张 300 盒的急单——它需要 80 分钟,而线上只剩 20 分钟。
01 真正的卡点:车间怕的不是多干活,是“有一段活落在车之后”
接单的人和排产的人吵的从来不是同一件事。业务说“不就多干一个多小时”;车间心里算的是另一笔账:这单插进来,无论怎么排,都会有一段活落在车次之后。落在线后,就意味着有人要错过车、有客户要缺货、有一笔损失要人认。
这句话以前没人替他们在接单前算出来。所以吵到最后只剩情绪。这个算例只做一件事:把这句“感觉”变成四个数——今天还剩多少分钟、这单要多少分钟、会跨过车次多少分钟、跨过去要花多少钱。
本页是 LeanEdge 自有算例:订单、加工时长、换型时长、车次、缺货损失全部是假定值,用来演示口径。不是任何客户的真实数据,也不构成产能或收益承诺。
02 先把口径定死:四个参数
排产之争多半不是算错,而是口径没写清。把下面四行写出来,讨论就从“我觉得”变成“按这个口径算”。
| 口径 | 本算例取值 | 真实项目里该怎么取 |
|---|---|---|
| 工序与线速 | 单机单工序,4 盒/分钟 | 多线的要按瓶颈工序算,不能拿总产能平均 |
| 换型 | 同族换规格 5 min;跨族清洗消毒换刀 25 min | 按实际 SMED 记录,取中位数而不是最好的一次 |
| 车次 | 08:00 开班,14:00 / 19:00 两班车(360 / 660 min) | 按实际发车时刻,装车提前量单独扣 |
| 错过车次的代价 | 按订单缺货损失,735—2,205 元不等;加班 7 元/分钟;等车 380 元;加车 780 元;外协 5.6 元/盒 | 损失必须和销售、客户一起定,不能排产员自己拍 |
03 基线:8 个单、640 分钟,只剩 20 分钟余量
| 单号 | 客户 | 品族 | 加工 | 车次 | 错过损失 |
|---|---|---|---|---|---|
| S1 | 连锁超市门店 | A | 70 min | 14:00 | 1,850 元 |
| S2 | 餐饮连锁中央厨房 | B | 65 min | 14:00 | 1,200 元 |
| S3 | 学校团餐配送商 | A | 60 min | 14:00 | 900 元 |
| S4 | 商超门店 | C | 75 min | 19:00 | 1,435 元 |
| S5 | 机场贵宾厅 | C | 85 min | 19:00 | 2,205 元 |
| S6 | 电商云仓 | B | 65 min | 19:00 | 1,120 元 |
| S7 | 便利店加盟 | D | 70 min | 19:00 | 1,015 元 |
| S8 | 酒店宴会 | D | 55 min | 19:00 | 735 元 |
最优顺序是 S1→S3→S2→S6→S4→S5→S7→S8:加工 545 分钟 + 换型 95 分钟 = 640 分钟,18:40 收工。离 19:00 车次(660 分钟)只剩 20 分钟。
这里有个容易被忽略的细节:最优顺序不是按交期先后排的。S3(学校团餐)排在 S2(餐饮中央厨房)前面,因为 S3 与 S1 同族,连排省下 20 分钟换型——这 20 分钟比“谁的交期早半小时”更值钱。8 个单 40,320 种排列全部枚举过,上面这个是真最优,不是拍脑袋。
04 插单要的不是 75 分钟,是 80 分钟
急单来了:某连锁超市临时促销,300 盒。线速 4 盒/分钟,加工 75 分钟;插在瓜类后面,同族换规格 5 分钟。合计 80 分钟。
加进去之后:9 个单加工 620 分钟 + 换型 100 分钟 = 720 分钟;车次 660 分钟;超 60 分钟。
关键结论只有一句:插单之后,无论怎么排,都必然有 60 分钟的活落在 19:00 之后。这不是效率问题,是减法。
加班救不了。加班只是让人干到 20:00,但车 19:00 就走了。产能是算术约束,车次是物理约束,两者不是一回事——很多厂吵了几年,其实是没分清这两样东西:把“人还能干”当成了“货还能走”。
05 免费容量:60 盒。第 61 盒开始,代价是阶跃的
把急单量逐档缩下来,每档都重新枚举最优顺序(不是等比缩放):
| 急单量 | 加工 | 含换型收工 | 现金代价 |
|---|---|---|---|
| 20 盒 | 5 min | 18:50 | 0 |
| 40 盒 | 10 min | 18:55 | 0 |
| 60 盒 | 15 min | 19:00(刚好) | 0 |
| 80 盒 | 20 min | 19:05 | 770 元 |
| 100 盒 | 25 min | 19:10 | 805 元 |
| 120 盒 | 30 min | 19:15 | 840 元 |
今天这条线的免费插单容量 = 15 分钟 = 60 盒。从第 61 盒开始,代价不是线性增长,而是阶跃:一步跳到“最便宜那张单错过车次”的 735 元,再叠加加班费。
车间为什么一听插单就炸?因为他们的经验就是这条曲线——不是“多 15 分钟”,是“过线了”。
再补一个反直觉的点:如果这张急单是全新品族(要多一次 25 分钟清洗消毒),免费容量直接归零。545 分钟加工 + 最少 125 分钟换型 = 670 分钟,还没加工就已经超过 660。连 20 盒都塞不进去。插单能不能接,先看品族,再看数量。
06 同一个插单,五种接法,五个价签
这才是本页最想给的东西。插单从来不是“接”或“不接”两个答案,而是五个:
| 接法 | 现金代价 | 代价落在谁身上 |
|---|---|---|
| 让损失最低的单次日 | 735 元 | S8 酒店宴会(735 元缺货损失) |
| 让 19:00 车等 60 分钟 | 800 元 | 等车费 380 + 加班 420 |
| 加开 20:30 急车 | 1,200 元 | 车费 780 + 加班 420 |
| 急单外协 300 盒 | 1,680 元 | 5.6 元/盒 × 300 盒 |
| 拒单 | 3,360 元 | 客户端缺货,本厂不出现金 |
最贵 3,360 和最便宜 735,差 4.6 倍。但真正该盯的是另外两个数:735 和 800,只差 65 元。
735 的接法,是把损失推给客户——酒店宴会明天没有第二次机会,“次日送”等于这单白做,还搭上关系。800 的接法,是多花 65 元让车等一小时,所有人的货都到。
65 元换一个客户的信任,这道题没有第二种答案。所以:账面最优解和经营最优解,经常不是同一个。算法给你一张价签,不是判决书。
07 把它折算成“每盒多少钱”:插单税 2.45 元
735 元 ÷ 300 盒 = 2.45 元/盒。这就是这张急单的“插单税”,它有两个直接用处:
- 报价时:如果这单每盒毛利不到 2.45 元,接它等于白干;超过 2.45 元,就大方接,然后花 800 让车等一小时——你赚的是差价,不是省下来的加班费。
- 和业务对话时:别说“车间忙不过来”,说“这单的插单成本是 2.45 元/盒,你报的价里含了没有”。一句话,把对抗变成核算。
可以直接抄走的三件事
1)报数,不报情绪。接单前只回三句话:今天剩余产能多少分钟、这单要多少分钟、跨过车次多少分钟。三个数一摆,业务自己会掂量。
2)把“接不接”换成“怎么接”。别问车间“能不能插”,把上面那张五选一的价签推过去让他们挑。人被问“能不能”时只能拒绝,被问“选哪个”时才会动脑。
3)把免费容量写在墙上。今天 60 盒免费,第 61 盒开始算钱。边界不透明,才会天天在 17:55 打遭遇战。
可直接复制的输入格式(交给排产员或任何模型都行):
线体:单机单工序,线速 __ 盒/分钟;开班 08:00;车次 __:__ / __:__(分钟计)。
换型:同族换规格 __ 分钟;跨族清洗换刀 __ 分钟;开班时线上已装的是 __ 族。
已排订单:单号 / 客户 / 品族 / 加工分钟 / 车次 / 错过车次的缺货损失(元)。
急单:数量(盒)/ 品族 / 期望车次。
费用口径:加班 __ 元/分钟;让车等待 __ 元;加开急车 __ 元;外协 __ 元/盒。
要求:① 穷举出最优顺序与收工分钟;② 算出插单量每档(20/40/60/80/100/120 盒)
的收工时间与现金代价;③ 给出让单/等车/加车/外协/拒单五种接法的价签;
④ 指出免费插单容量是几盒,以及换成全新品族时是否归零。
08 怎么复核:这份数是独立复算过的
排产算例最容易出的错,是“顺序换了但换型忘了跟着变”,总数照样算得出来、看起来还很合理。所以这份算例做了独立复核:
- 用另一套实现(分数精确运算,不复用主脚本的任何函数)重写全部计算;
- 既校验基线 640 分钟、也校验插单后 720 分钟与越线 60 分钟;
- 逐档校验 20—120 盒的收工分钟与现金代价(770 / 805 / 840);
- 校验五种接法的价签、735 与 800 的差额、外协 1,680,以及 2.45 元/盒的门槛。
共 28 个检查点,28/28 通过。主脚本与复核脚本分别运行、分别输出,数字不一致就不过。
09 边界:这个数不能当承诺
- 订单、加工时长、换型时长、车次、损失全部是假定值,不是任何客户的真实数据;
- 本例是单机单工序。真实车间有切配、包装、清洗多条线,要扩成流水车间模型,结论可能变;
- “错过车次的损失”735—2,205 元是按缺货口径给的示例,你的数必须和销售、客户一起定;
- 不含设备故障、人员缺勤、原料到货延迟这些现实扰动;
- 急单可拆批时结论会变:拆成“今天 60 盒走 19:00、明天早班 240 盒”,代价可能为 0——这是最常被忽略、也最省钱的一招,前提是客户接受分两批到货;
- 不要把 2.45 元/盒做成罚款考核。数字用来对话,用来扣钱,车间就会藏问题,你连真实产能都看不见。
换成你的订单表,先算一次“必然越线多少分钟”
把这几项发我:单号 / 品族 / 加工分钟 / 车次 / 错过损失,以及换型分钟和加班、等车、外协的价。按同一口径免费算一次,回你三个数:今天剩多少分钟、这单要多少、越线多少,外加五种接法的价签。
在知乎私信我,发订单表 ↗ 看其他实际输出案例 ↗