——写给那些刚刚戒掉“平均值”,又准备把P90塞进系统的供应链经理人
上一篇文章里,我们聊了一个供应链计划中很常见、也很隐蔽的问题:
不要再只用平均交期排计划。
因为在真实供应链里,交期往往不是一个规规矩矩的正态分布,而是右偏、长尾、多峰,甚至还带一点“命运的随机性”。
很多朋友看完之后可能会说:
“好,我懂了。平均值不靠谱,那我以后不用Mean了,我直接用P90,够稳健吧?”
听起来很专业。
也确实比拍脑袋强。
但今天这篇文章想补上一句:
P90不是万能药。用错了,它也会变成库存放大器。
尤其是在进口海运物料上。
一、海运提前期为什么特别容易长尾?
先讲一个所有做进口物料的人都懂的场景。
德国工厂发货,物料准备得差不多了,物流同事也在盯船期。只要赶上这班船,后面节奏就比较顺:装船、海运、到港、清关、内陆运输。
但如果晚了一天,错过了截关或集港时间呢?
抱歉,它不是晚一天到。
它可能要等下一班船。
如果船是一周一班,那就是多等7天。
如果船是两周一班,那就是多等14天。
这就是海运物流里非常典型的“班轮效应”:
赶上船,就快;
赶不上船,就不是晚一天,而是晚一班。
这件事听起来像物流细节,但放到供应链统计分析里,它会直接改变提前期分布的形状。
海运提前期的KDE图,通常会有两个非常鲜明的特征。
第一个特征,是左侧有“物理硬边界”。
比如从欧洲海运到中国,海上航行时间、港口操作、清关、内陆运输加在一起,总有一个最快也绕不过去的时间。你不可能今天德国发货,10天后上海工厂收货。
所以它的左边不是无限延展的,而像撞到一堵墙。
第二个特征,是右侧会不断被拉长。
因为只要错过一班船,提前期就不是连续地多1天、多2天,而是跳跃式地多7天、14天,甚至更久。
于是你会看到一个很有意思的分布形态:
前面有一个主峰,代表大多数正常赶上船的订单;
后面每隔一段时间,又出现一些小峰,代表错过一班、两班,或者遇到查验、塞港、单证问题的订单。
如果把这些点用KDE平滑一下,就会形成一条非常典型的右偏长尾曲线。
这时候,平均值又开始“不老实”了。
它会被少数特别慢的订单向右拖拽,看起来比真实的“典型交期”要长。
所以,上一篇文章里讲过的那个问题,在海运场景里不仅存在,而且更加明显:
你管理的不是一个固定提前期,而是一条被班轮节奏拉扯出来的概率曲线。
二、那我用P90,不就稳了吗?
很多供应链团队会自然走向下一步:
既然平均值会被误导,那我们用P90。
P90是什么意思?
简单说,就是历史上90%的订单都能在这个时间内完成。
听起来非常稳健。
比如,一批进口件正常赶上船时,实际到货可能是45天左右。但考虑到错过船期、海关查验、港口拥堵等情况,统计出来的P90可能是75天。
于是,计划员说:
“那我就在SAP里把采购提前期维护成75天。这样总安全了吧?”
看上去很有道理。
但问题来了。
对于那10%真正发生异常的物料,75天可能刚刚好。
它们终于没有拖累生产,大家松了一口气。
但对于那大多数正常赶上船的物料呢?
它们实际45天就到了。
系统却提前75天下单。
结果是什么?
提前30天到货。
也就是说,你为了防范那10%的长尾风险,把另外大多数正常物料都提前推到了仓库里。
这就像一个人怕迟到,于是每天提前两个小时出门。
迟到是不会迟到了。
但人生也基本贡献给了楼下咖啡馆。
在一个进口物料占比较高的制造企业案例中,我们看到过类似现象:某工厂从欧洲内部供应商采购的物料,提前交货比例高达58.3%,平均提前天数约31天。
这不是偶然。
这背后很可能就是一个典型机制:
为了防范海运不确定性,计划端在系统参数里放入了过大的时间缓冲。
结果,断料风险是被压住了一部分,但库存也被系统性推高了。
三、P90排计划的“高级陷阱”:它让库存看起来很合理
平均值排计划的问题,是“看起来合理,但执行起来经常崩”。
P90排计划的问题,则更隐蔽:
它看起来更专业,执行起来也更安全,但财务结果可能很难看。
因为所有动作都可以被解释。
为什么提前下单?
为了保障交付。
为什么仓库里货多?
为了防范海运风险。
为什么库存周转慢?
因为进口件周期长。
为什么提前一个月到货?
因为不提前就可能赶不上生产。
每句话单独看,都没错。
但合在一起,就会变成一个供应链系统性问题:
少数异常订单决定了系统参数,
系统参数又让多数正常订单提前到货,
最后库存替所有不确定性买单。
这也是很多制造企业很熟悉的状态:
库存金额很高,管理层要求降库存;
计划员不敢降,因为一降就怕缺料;
采购也不敢压,因为进口件一旦错过船期就很麻烦;
生产说你别跟我讲库存,我只关心开工时料齐不齐;
财务说你们都很有道理,但钱到底是谁占着的?
最后大家达成一种微妙的共识:
谁也不满意,但谁也不敢动。
这就是P90被错误使用后的典型后果。
它不是让供应链更精益,而是把不确定性“固化”进了系统参数。
四、真正的问题:Lead Time不该承担所有风险
很多企业在设置系统参数时,有一个隐含假设:
Lead Time越长,越安全。
但供应链计划里有一句话值得认真琢磨:
采购提前期不是保险箱。
Lead Time的主要作用,是描述正常节奏下,从触发采购到物料可用的时间。
它应该尽量反映供应链的常规运行节拍。
如果你把所有异常风险都塞进Lead Time,表面上系统更稳了,实际上你只是把风险变成了库存。
更准确地说,你是在用库存和现金流,替系统参数的粗糙买单。
对于海运物料,尤其不能简单地说:
“那就按P90维护提前期。”
因为海运的长尾,并不是每天随机发生一点点,而是带有明显的里程碑特征。
是否赶上截关?
是否完成订舱?
是否按时开船?
是否正常到港?
是否清关顺利?
这些信息在过程早期就能被识别。
也就是说,很多海运风险不是等到最后一天才突然爆炸,而是在途中早就露出苗头。
既然风险可以被过程识别,就不应该全部提前固化到Lead Time里。
五、怎么破局?别把所有风险都塞进一个参数
对于供应链职业经理人来说,真正有价值的不是争论“到底用均值还是P90”,而是要把不同类型的风险拆开管理。
1. 把“正常节拍”和“异常风险”分开
系统里的采购提前期,建议更接近正常供应节拍。
对于海运进口件,可以参考中位数、众数,或者正常赶上船时的典型周期。
这样,大多数正常订单不会被系统过度提前。
至于那部分错过班轮、查验、塞港造成的长尾风险,应该通过安全库存、安全时间、关键物料监控池、项目风险预警等方式管理,而不是简单粗暴地把Lead Time拉长。
一句话:
Lead Time管节拍,安全机制管波动。
不要让Lead Time一个人扛下所有不确定性。
它扛不住。
扛住了,仓库也扛不住。
2. 从“静态提前期”转向“动态里程碑管理”
海运不是黑箱。
一票货有没有赶上船,其实在开船节点就知道了。
既然知道了,就应该及时更新ETA,并联动后续计划。
对进口物料来说,建议至少建立几个关键里程碑:
供应商预计完工日期;
订舱确认日期;
截关日期;
实际开船日期;
预计到港日期;
实际到港日期;
清关完成日期;
入库可用日期。
这些节点不是物流部门自己看的流水账,而应该变成计划系统的输入。
一旦发现没赶上船,就不要等到生产缺料那天才开会。
系统应该尽快刷新ETA,MRP应该重新评估影响,计划员应该知道哪些生产订单、客户订单、项目节点会被波及。
这才叫供应链协同。
否则,所谓“可视化物流跟踪”,最后就会变成一个好看的网页链接。
3. 对少数长尾物料,要敢于“切尾巴”
对于极少数已经明显进入长尾区间的关键物料,要不要继续等船?
不一定。
如果某个关键件已经错过两班船,继续等会造成整机延误、项目罚款、客户投诉,甚至影响收入确认,那么空运就不一定是浪费。
很多企业一听空运就皱眉:
“太贵了。”
但真正的问题不是空运贵不贵,而是你有没有算过:
所有物料提前30天入库的库存持有成本,和少数关键物料应急空运的成本,到底哪个更贵?
如果为了防范极少数异常情况,让几乎所有进口物料普遍提前一个月到货,那么看似节省了空运费,实际上可能多花了库存资金占用、仓储成本、呆滞风险和减值损失。
这笔账,不能只让物流经理算运费。
财务、计划、采购、生产都应该一起算。
有些尾巴,应该用应急机制切掉,而不是让全部物料陪它一起提前到货。
六、给管理者的一张判断表
如果你们企业也有大量进口海运物料,可以用下面这张表做个自查。
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
这张表的核心不是让大家多做几张报表。
而是帮助管理者问一个更准确的问题:
我们到底是在管理供应链风险,还是在用库存掩盖供应链风险?
七、写在最后:不要从“平均值迷信”跳到“P90迷信”
上一篇文章我们说:
不要迷信平均值。
这篇文章想补充一句:
也不要迷信P90。
P90是好工具,但不能被简单塞进Lead Time参数里一劳永逸。
供应链管理最怕的,不是工具不够先进,而是把一个好工具用成了新形式的拍脑袋。
平均值的问题,是忽略了长尾。
P90的问题,是可能把长尾成本转嫁给所有正常订单。
真正成熟的供应链团队,不是简单问:
“这个物料提前期到底是多少天?”
而是会继续追问:
这个提前期的正常节拍是多少?
异常长尾来自哪里?
哪些风险可以提前识别?
哪些风险需要安全库存?
哪些风险应该用应急物流切断?
哪些物料值得保守,哪些物料不应该提前?
说到底,供应链不是把所有风险塞进一个参数里。
供应链是把风险拆开、看清、分类,然后用最合适的机制去管理。
最后送给供应链经理人一句话:
平均值会骗你,P90也可能坑你。
真正决定库存水平的,不是你选了哪个数字,
而是你有没有把“正常节拍”和“异常风险”分开管理。
互动问题
你们公司进口物料的Lead Time,是按平均值、经验值、P90,还是多年没人敢动的“祖传参数”?
有没有遇到过这种情况:
明明进口件总是提前到货,但一到关键项目,还是缺那一个最不该缺的件?
欢迎留言聊聊。
供应链人的痛,很多时候不是没有数据,而是数据终于说真话的时候,大家都沉默了。

