京东降本实践:供应链超级自动化探索与应用
导读 本文的主题是供应链超级自动化探索与应用,超级自动化指的是从整体视角去考虑供应链的各个环节来实现供应链整体的自动化和最优化。为什么要做超级自动化,首先,供应链的节点非常多而复杂,单纯靠人的能力很难站在全局的视角决策,但是机器能够很好地利用机器学习、运筹学等做出自动化智能化的决策;另外,机器也能够更好地沉淀和复用,解放人的精力去做更重要的事情。
分享嘉宾|张建申 京东 算法科学家
编辑整理|王丽燕 中国农业大学
出品社区|DataFun
01 京东供应链业务背景介绍
1. 目标
京东智能供应链坚持以用户价值为导向,从服务对象来看,分三大块:一是京东的自营业务;二是京东的 POP 业务,是在京东平台上进行商品售卖的商家;三是产品的saas服务,是把京东的供应链解决方案能能力提供给大的 KA(重点客户)和品牌商,去助力其降本提效。目标是按照更准更稳更快的要求,通过优化采购效率,降低库存周转,减少履约成本去更好地服务客户。
本文主要围绕在京东自营业务上探索的一些成果和技术来展开分享和讨论。
2. 京东供应链面临的挑战
京东自营业务有近 6 个亿的活跃用户,覆盖的商品规模大,全品类共有 1000多万 sku 数。不同品类商品有很多差异,比如生鲜,手机 3C 家电等,差异包括仓储费用、配送要求、在生鲜品类上商品的保质期差异等,所以履约网络上有六大类网络去匹配不同大类的商品去保证整个供应链的流程运转得更好,六大网络包括中小件网络、生鲜网络、图书网络等,这六大网络下有 1400 多个仓库去支持全国各区县货品的运转,1000 多万的货品是由上游供应商提供给我们,最后再送达消费者手中;京东和供应商的合作模式分好几种:自营模式,厂直模式,FCS 等多种合作方式。
目前零售业态也在加快分化,场景非常多,比如同城零售、线下全渠道等多场景,京东的自营业务也在相应地快速拓展不同场景。
3. 京东供应链的技术
为了更好地支持京东自营业务正常地运转, 我们把供应链的环节进行划分 ,从商品的创意设计到最终售后,我们的技术能力主要聚焦在从规划到履约这几个环节:
- 第一个环节是规划,主要是从宏观上整体上看未来商品的销售趋势,哪些品类的增速会比较快,我们需要提前做哪些布局,哪些品类会出现下降趋势,需要做哪些对应的调整;仓网规划是考虑要把商品放在几个仓、哪些仓更合理,来做到时效和成本最优;
- 第二个环节采购,主要是从供应商采购到京东的仓库,这块涉及的是补货能力;
- 第三个库存环节,是这个货品已经在京东仓,在内部仓库怎么流转的问题,涉及到智能调拨和智能清滞能力;
- 第四个营销环节,我们拿到货之后是要面对消费者的,我们怎么以最低的价格推送给消费者,在做秒杀或者总价促销或者其他营销活动时,怎么把合适的商品曝光给消费者,这是营销环节重点关注的两个能力:天天低价和频道排期能力;
- 最终是履约环节,如何把货送到消费者手里,可以有不同的决策,可以从京东的大仓里直接履约给消费者,也可以借助京东门店能力从门店里以小时级别颗粒度给到消费者,这里面核心的决策逻辑是用户的诉求和成本。
上述的几个环节更多的是业务上的能力,这里面包含的核心技术能力有商品匹配、智能诊断、实时计算、大规模运筹优化和供应链仿真。这些能力大部分是通用的能力,比如商品匹配会服务于趋势洞察、天天低价、频道排期等;大规模运筹优化能力在上述环节里基本上或多或少会涉及到;还有供应链仿真,从成本和效果的角度上来看,仿真是很重要的工具和关键的一环。
4. 供应链采购关键业务
接下来给大家介绍一些词的概念,下面要说的网络是指我们要用怎样的拓扑结构能从供应商发货送到消费者手里的拓扑网络。
图中所举的例子是中小件网络,这个网络分为两层,第一层是把供应商的货采到区域仓,这一层称为补货或者采购,第二层是从一级仓(区域仓 RDC)发到二级仓(FDC 和 TDC),这个称为调拨;对应的也有逆向的过程:逆配。其中,“清滞”属于逆配的一种形式,因为很难保证所有商品都能很好地卖掉,肯定会有某些商品补得不够好,所以就可能逆向配送到大仓或者供应商或者其他方式出清掉。从仓储成本上来看,有些商品不需要在每个仓都放,这个时候就需要决策到哪些仓需要放什么商品,以上整体布局就是仓网规划的能力。
02 探索与应用
1. 需求预测自动化
需求管理是整个供应链管理中的核心和基石,需求是整个供应链的发端,有了需求,才有供应链的供给。需求管理分为两部分,一是以需求为驱动的智能预测,二是库存计划。在京东的自营体系下,每个品类都有各自的销售计划,每年要卖多少销售额,再到每个月的要达到的销售额目标,这种是比较粗粒度的计划;而智能预测是比较细粒度的计划,比如这个商品在这个区域在这天能卖多少。总之,库存计划和智能预测是需求管理的两大核心。
直观感觉智能预测环节的自动化容易实现,因为它在供应链领域是一个偏纯技术的问题。但是在实际的实践过程中,也会存在一些问题和挑战:
- 一是实际落地场景非常复杂,怎么保证每个商品找到最好的预测模型;
- 二是在预测时会遇到信息的不对称问题,所谓信息不对称是指实际场景中一些所需要的信息拿不到,比如手机在未来一周能卖多少,我们能拿到手机销售历史数据和促销数据,但是因为商业信息的复杂性、保密性和策略上的原因,我们很难获取到其未来一周的营销计划,再者是其计划信息能不能有效传递过来;
- 三是消费者的需求在加速分化,线上、线下、ToB 等业务的发展,使得过去解决预测问题的模式变得不再那么实用,所以在预测的自动化环节需要解决模型优化的问题。
下面针对上述三个问题和挑战展开:
(1)自动化最佳模型匹配问题
目前京东销售场域分为 5 大类:线上零售、线下零售、B2S、企业业务和 To B,我们之前主要关注京东的主营业务线上零售,销售场域的拓展会让整个的预测问题变得复杂,我们会发现有些商品在线上和线下完全是两套需求模式,比如有些干货礼品在线上的销售高峰会发生在节假日开始之前,但是线下的零售产品销售高峰通常会发生在节假日期间,这是一个比较典型的差异;具体到其他场域,又会有很大的不同,这就导致了预测问题的挑战加大。我们还会对商品做分层,把商品分为新品、常规品、季节品、间歇品和服饰品。
我们通过三大手段来解决:
- 一是业务约束 ,有些问题是由于业务引起的,模型没办法学到的,这时候就需要借助业务的能力去解决,比如清滞问题,当商品卖不动的时候,销售会采用促销手段将商品快速清理出去,这时候会造成商品销量快速上涨,那这时候预测模型不能跟着销量增长,因为预测销量上涨的话那么好不容易货清完了又被补进来了,所以这时候就通过业务约束来解决;
- 二是路由模型 ,有很大的上百种的基础模型池,通过机器学习的技术给每个区域每个销售场域的商品匹配最佳的模型;
- 三是采用强化学习 ,它不仅可以考虑预测的偏差,还能将一些关注的指标比如库存周转等纳入到奖励函数中,能更好地保证预测效果和预测稳定性。
通过这三种方式我们能得到最佳的匹配模型,然后通过追踪监控从而持续迭代模型。
(2)信息不对称问题
第一个例子是营销信息的不对称,上述提到因为很多原因导致营销信息很难拿到,而营销在零售场景中销量占比是很高的,这部分对库存管理至关重要,解决手段是依赖算法能力,通过搭建营销指标体系,去预测营销未来发生的概率,假设这天会发生营销,那么最佳的营销会是什么,通过预估出的最佳的营销,去预测哪些商品会成为爆品,通过这种方式去提高商品的预测准确度。
第二个例子是计划信息的不对称,业务那边给算法提供未来的品类、品牌维度的销售金额计划,算法就能通过销售计划去推演商品未来的折扣,流量增幅和总销量,进而得到分层时序预测模型,提升预测模型效果。但是实际中业务可能不会或者不乐意提供,或者提供得不准确,因此可以通过算法对未来销售计划进行预估,来解决信息不对称问题。不管是营销信息还是计划信息的不对称,都对预测算法有容错性的要求,预测不可能 100% 准确,在预测有一定偏差的情况下,模型还能够很好地利用信息去做决策,才能够实现自动化的问题。
(3)算法优化问题
由于不同销售场域上存在的差异,C 端的预测模型很难复制到 B 端,一是 B 端的订单量会相对小,但是一旦有订单,销量会很大,因此 B 端的不稳定程度有有别于 C 端;二是 B 端关注的点不一样,C 端对于每天的预测准确度的关注的程度是一样的,但在 B 端场景上是不一样的,它对于大单的关注程度和对日常非大单的关注程度不一样;B 端在供应链上的难度远远大于 C 端,在 B 端上供应链的难题解决依赖预测、网络布局,库存模式以及和供应商的合作。
我们把 B 端销售需求的时序分为基线时序和峰值时序,分别采用深度学习的网络结构去学习,最终输出 B 端需求的预测;在一定的适用范围内,此方案的预测效果此方案非常有效。
上述就是预测自动化场景上面临的三个核心问题和解决方案。
2. 采购自动化
预测之后的下一个环节是补货,补货是库存计划环节里最难的,一是它会依赖上游的预测,众所周知上游的预测很难做到 100% 准确,大多数是不准确的,因此补货需要解决上游预测带来的不准确性问题;二是补货和业务强耦合,有很多的业务约束条件,比如不同商品的配送费、供应商产能、保质期等许多业务因素影响。
我们利用运筹优化和机器学习算法,构建很多补货模型 ,如:TIBPA 模型、端到端模型等;也对场景做了下切分:常规补货,大促补货、季节品备货等;我们关注的关键指标有周转、现货率、补货的合理性。主要是权衡考虑成本和销售之间的关系。
采购的自动化正向流程涉及到预测和补货联动,就是上游的业务环境(比如预测准确度)发生变化时,补货策略也应该做相应调整,这里用到了一个关键技术:参数推荐,就是运用整数规划去设计目标函数去保证整体的收益率最大,成本最低,去找到合适的补货参数。自动化还包括负向流程,针对此次补货的效果(补货时机,补货量合理性),会去分析补货不好产生的原因,看是供应商的送货稳定性、预测不准还是其他促销等原因导致,有这样一个自动化负向反馈流程。
3. 智能调拨
智能调拨是指我们希望能把商品搬运到更靠近用户的地方,保证更好的用户体验和时效,但是因此货品会更分散,仓储成本和资金占用成本会对应有所上升。具体业务模式分为 R-F,R-R,F-R。R-F 是货品从京东的一级仓到二级仓,其核心目标是保障客单时效,提升用户体验;R-R 是京东的全国 8 个一级仓之间的调拨,目标是全国库存平衡和缺货紧急支援;F-R 是二级仓调到一级仓,目标是考虑区域的库存平衡和低效库存清理。
(1)R-F 涉及到调拨选品和模型计算 。调拨选品是因为仓储和库存成本的原因不会把所有的商品都投放二级仓,所以需要做选品,使客户体验达到最优同时成本最低;同时还需要考虑产能的稳定性,比如从 A 到 B,每天都稳定调用 N 件货品,相比今天调 3N 件,明天 0 件,后天 0 件来说,后者的不稳定性对物流来说是不友好的,因此需要保证产能的稳定性;模型计算一是要保证下游 FDC 的需求充分被满足,二是要保证 RDC 的货没有被调空。
(2)R-R 需要考虑被调入仓的需求 ,成本和履约时效, 能否通过调拨的方式满足,综合决策得到最优方案。
(3)F-R 包括长库龄的场景逆配、滞慢销场景逆配和库存平衡场景逆配 。
4. 清滞自动化
由于前面的预测、补货、调拨等决策环节都存在很大的不确定性,很难保证最终每个 sku 的决策都是合理的,会存在一些货品滞留在仓库里卖不出去的情况。因此就有了清滞自动化, 包括 4 个流程 : 一是识别定义 ,去识别定义哪些是需要关注处理的不健康的库存; 二是诊断归因 ,诊断不健康库存产生的原因; 三是决策建议 ;四是执行跟踪。
决策建议部分会把场景分为日常、大促和特殊场景(临期、季节品、新品、低产低效、囤货), 解决手段有三种 :一是 促销 ,通过促销快速处理商品;二是 F2R ,就是大区内部调拨,可能有些商品是局部滞销,在其他区域能卖的好,那就要把货品调拨到卖得好的区域去;三是 R2R ,类似 F2R,这是在大区间调拨的方式。这些解决手段都是基于收益最大化的目标通过运筹优化技术去做决策。
5. 综合一体化自动化决策
上述讲到的预测、补货、调拨、清滞四个环节,每个环节都有各自的决策目标去达到各自模块局部最优,目标不一致,要实现这些链路的自动化不能简单把他们连接起来,这就相当于我们要找局部最优解还是全局最优解的问题。
采配退促智能一体化需要综合考虑各个因素得到全局最优解 ,第一种情况是库存平衡一体化决策,当现状库存低于理想库存,那就可能通过采购或者调拨的方式去达到理想库存状态;第二种情况是当现状库存高于理想库存,这时候需要清理库存,那就可能通过逆配到仓库的方式,或者退给供应商,或者通过促销手段卖出去。
单个商品来看这个问题比较简单,但是全国网络的所有商品来综合考虑就使得这个问题的复杂度和难度上升,需要持续去突破这个问题的解决方案。
03 未来展望
供应链的超级自动化之路分为 4 个层级,一是辅助决策自动化,系统提供选品、采购、仓网等辅助建议,但是人需要进行决策执行;二是实现单流程自动化,选品、采购等部分单流程自动化;三是跨流程的自动化,把流程直接串联起来,形成多流程的综合决策;四是最终要实现的超级自动化,保证整体的流程的决策是最优的。但是要最终实现超级自动化,不管是解决业务问题还是技术问题都还有很多挑战,还有很长一段路要走。
04 问答环节
Q1:预测是怎么拆分到 sku 粒度的?
A1:会根据未来的商品销售额计划,去预估商品的折扣,再根据历史销售金额和流量的关系,得到预计的流量增幅,并且建立销售额和总销量之间的关系,最终用这三个作为输入去预测销量,提高模型预测准确性。
Q2:如何做的参数推荐?
A2:这是一个运筹优化问题,实际业务中会有期望目标,设定适当的目标函数,然后会有一些业务上的约束条件,现货率,周转、产能、排期等,然后去求解这个优化问题,得到参数。