李 炜,艾学轶
(武汉科技大学 管理学院,湖北 武汉 430070)
库存是供应链管理的重要环节,制造商往往有成千上万种库存,如何快速准确预测库存需求是提升库存管理能力的关键。党的二十大报告指出“推动制造业高端化、智能化发展”,鼓励企业走出去,“坚持经济全球化正确方向”。面对复杂多变的全球化供应链模式,需要使用先进的机器学习技术为传统的库存需求预测赋能,提升供应链的敏捷性,增强企业经营效率,使企业在残酷竞争中获得优势。
库存需求预测是一项困难的任务,由于订单具有随机性,库存需求数据具有显著的非线性、非平稳性和波动性特征,这给准确地预测带来很大的困难。因此,许多学者对此领域进行了深入的研究。库存需求预测研究使用的方法不同,分为基于统计模型、基于机器学习模型和基于组合预测模型。常用的统计模型有回归分析、指数平滑法、移动平均法等。Babai 等[1]基于差分整合移动平均自回归模型对制造商和零售商两阶段供应链模型库存需求进行预测。刘文慧和王少然[2]采用专家评审法,分析了四类与生鲜产品需求有关的因素,并进行多元回归分析。这些方法成熟,易于预测,但是模型的灵活度低,难以应对非线性、高波动数据。于是,很多学者将研究重点转向机器学习模型。机器学习模型十分丰富,具有代表性的方法有BP 神经网络(Back Propagation Neural Network,BPNN)、深度学习模型卷积神经网络和循环神经网络等。荆园园和李红娟[3]建立泊松分布的汽车制造物料需求时间序列模型,并利用遗传算法优化BP 神经网络的权值和阈值。白朝阳等[4]使用最小二乘回归支持向量机对企业物料需求预测,并运用经验模态分解数据,粒子群算法优化参数。单一的机器学习模型对训练数据需求量较大,体现出数据驱动的特点[5]。然而,也存在过拟合和预测不稳定的问题。组合预测模型[6-8]是使用机器学习与统计模型结合的方法,吴庚奇等[9]结合卷积神经网络获取深度特征和长短期记忆神经网络对制造企业的产品需求预测。靖可等[10]使用自回归移动平均模型和BP 神经网络分别预测智能制造企业的线性需求和剩余的非线性需求。组合模型已经越来越受到学者的重视,单一方法的模型在精度和适应能力方面已经不能满足需求预测要求,组合模型规避了单一方法的缺陷,针对目标问题进行模型设计和组合,达到取长补短的效果。
回声状态网络[11](Echo State Network,ESN)是循环神经网络(Recurrent Neural Network,RNN)的一个分支,它继承了RNN 对时间序列的处理能力,同时使用一个储备池代替RNN 的循环结构,减少训练难度,缩短了训练时间。其具有对非线性、非平稳和波动性高的数据处理能力,尤其对短期波动拥有记忆能力,被广泛应用在风速预测[12]、光伏功率预测[13]等领域。ESN 网络在库存需求预测中具有很大的潜力,本文将ESN 网络引入库存需求预测中。奇异谱分析(Singular Spectrum Analysis,SSA)和变分模态分解(Variational Mode Decomposition,VMD)是两种信号分解方法,仅使用ESN 网络不足以完全解决库存需求数据高波动性的问题。引入信号分解的特征工程有助于ESN 网络对需求精准预测。
基于此,本文综合已有的研究成果,提出一种基于SSA-VMD-ESN 的制造商库存需求预测模型。对非线性、非平稳和高波动性的时间序列库存需求数据完成特征工程,使用SSA 和VMD 组合信号分解,分离趋势和不同频率的信号,并与原始数据同时作为ESN 网络的输入。最后,使用Kaggle 网站真实的制造商仓库订单需求数据进行实验,验证了所提出模型的有效性。
针对库存需求数据非线性、非平稳性和高波动性的特征,运用奇异谱分析(SSA)和变分模态分解(VMD)分别对数据进行信号分解,将原始数据分解为趋势信号和不同周期的其他信号。将这些信号与原始数据同时作为ESN 的输入,从而建立SSA-VMD-ESN 模型,模型框架如图1 所示。
图1 SSA-VMD-ESN 模型框架图
1.1.1 奇异谱分析(SSA)
奇异谱分析是一种分解信号的方式,常被用于信号去噪,其步骤如下:
步骤1:待分解数据长度为T,建立轨迹矩阵Y:
其中:窗口长度L(L≤T/2),D=T-L+1。
步骤2:获得轨迹矩阵的特征值λ-λ1,…,λL和特征向量U=U1,…,UL并按特征值降序排列。
步骤3:使用公式(2)计算对角平均向量Ml=[m1,m2,…,mT]T,组成重构成分R=[M1,M2,…,ML],主成分表示为P=YU。
其中:zdl(d=1,2,…,D),(l=1,2,…,L)为逆序排列后的元素。
步骤4:计算不同频率的信号,本文将其分为趋势信号Rm和两个不同频率的信号Rf1和Rf2。
研究设定L=4,j=1,h=2。
1.1.2 变分模态分解(VMD)
变分模态分解[14](VMD)是一种将非平稳信号分解为K 个本征模态函数(Intrinsic Mode Function,IMF)的信号分解方法。其步骤如下:
步骤1:构造变分约束问题:
其中:f 为原始信号,∂t为梯度运算,δ(t)为单位脉冲,j 为虚数单位,{uk}为K 个IMF,{ωk}为各模态分量的中心频率。步骤2:引入惩罚因子α,拉格朗日算子λ,构造增广拉格朗日表达式L,求解该问题:
步骤3:IMF 和中心频率的迭代公式为式(8)和式(9):
研究设定原始数据经VMD 分解后模态个数K=2。
回声状态网络(ESN)是循环神经网络(RNN)的一种,使用一个巨大的、固定的、随机的动态储备池代替RNN 的循环结构,具有较强的短期记忆能力,储备池由t 时刻的输入和t-1 时刻的储备池共同决定,这样的更新方式保留了RNN 对时间序列建模的优势。同时,避免RNN 存在的梯度消失、梯度爆炸和训练时间长的缺点,ESN 只训练输出矩阵,大大减少了连接权值的训练,ESN 网络结构如图2 所示。
图2 ESN 结构图
ESN 的结构分为三层:输入层u 包含S 个神经元、储备池x 包含N 个神经元和输出层y 包含H 个神经元。连接输入层和储备池的权值矩阵为Win( N*S),储备池的内部连接矩阵为W(N* N),连接储备池和输出层的输出权值矩阵为Wout(H*(N+S)),研究设定S=6,H=1。
储备池的状态更新公式为式(11),输出信号的更新公式为式(12):
ESN 训练步骤为:首先,使用公式(11)更新储备池状态。其次,将这些储备池状态以时间序列依次排列为J,其大小为(T-T0+1)*N。将目标信号以时间序列依次排列为E,其大小为(T-T0+1)*H,时刻T0之前的储备池状态被舍弃,不包括在J 和E 中。最后,输出矩阵Wout由公式训练所得:
ESN 在训练集训练之后,得到输出权值矩阵Wout,将测试集数据使用公式(11)输入到ESN 网络,使用公式(12)得出预测结果。
为验证SSA-VMD-ESN 模型的有效性,本文使用Kaggle 平台真实的制造商库存需求订单数据进行实验(数据来源https://www.kaggle.com/datasets/felixzhao/productdemproductdemandf)。数据集包含一家全球化制造商的历史产品需求,该公司拥有数千种产品和四个中央仓库。由于产品在全球生产,将产品海运到中央仓库通常需要一个多月的时间,对不同仓库的每种产品下个月需求合理准确地预测可以帮助企业提高库存管理效率,增强交付能力,数据集采集了2012 年到2016 年共60 个月的需求数据,研究将相同产品需求根据月度聚合,将实验的每种产品历史数据分割为训练集和测试集,分别占比70%和30%,并且将数据进行最大最小值归一化处理。
为进一步证明本文所提出库存需求预测模型的有效性,选取了6 种模型进行对比:(1)基线性能模型(Persistence Model):该模型使用t 期的数据作为t+1 期的预测值,具有简易、快速、可重复的特点,具有标准化的特征,适合作为对比模型的基准。(2)BP 神经网络:该模型是经典的神经网络算法,适合作为对比模型。(3)自回归移动平均模型(Autoregressive Integrated Moving Average Model,ARIMA):该模型是经典的统计模型,常被用于需求预测。(4)ESN:本文模型的基础,作为对比,比较模型改进的效果。(5)SSA-ESN:单一数据分解的模型,比较模型改进的效果。(6)VMD-ESN:单一数据分解的模型,比较模型改进的效果。
本文的预测实验分为两个部分,一部分为单个产品的多种模型预测结果对比,验证模型的预测提升效果;另一部分为将本文所提出SSA-VMD-ESN 模型应用到多个产品中,验证模型的应用拓展能力。利用制造商2012年到2016 年的月度库存需求数据,单一产品共计60 个样本,前42 个样本作为训练集,后18 个样本作为测试集。设置ESN、SSA-ESN、VMD-ESN 相同的ESN 参数,使用Matlab2018a 进行实验,实验平台为Intel(R)Core(TM)i5-8265U,RAM 为8GB,均方根误差(Root Mean Squared Error,RMSE)精确到小数点个位,平均绝对百分比误差(Mean Absolute Percentage Error,MAPE)、对称平均绝对百分比误差(Symmetric Mean Absolute Percentage Error,SMAPE)、判定系数(Coefficient of Determination,R2)精确到小数点后四位。第一部分的实验结果如图3 所示,误差如表1 所示。
表1 模型对比实验结果误差统计表
图3 制造商单产品库存需求预测结果对比
如图3 和表1 所示,以基线性能模型为比较基准,不同模型的RMSE、MAPE、SMAPE、R2都不同程度优于基准。ARIMA模型和BPNN 模型拟合度R2相近,在其他三项指标中BPNN 优于ARIMA。ESN 模型与ARIMA 模型预测误差相近,但拟合度R2不及ARIMA。SSA-ESN、VMD-ESN、SSA-VMD-ESN 模型,预测误差都优于BPNN,三者对比中,两次数据分解模型SSA-VMD-ESN 预测误差优于单次数据分解模型。并且,对比原始ESN 模型,预测精度都有很大的提高,SSA-VMD-ESN 各项指标均为最优,验证了模型的预测效果。
为验证所提出模型在多种产品中的预测效果,本文使用制造商9 种不同的产品进行实验,预测结果如图4 所示,误差统计如表2 所示。9 种产品的SSA-VMD-ESN 模型的对比实验中,除产品6 和产品8 之外,其余7 种产品的MAPE 都控制在0.3 以内,所有产品拟合度R2大于0.7,产品2 到产品5、产品7 和产品9 拟合度R2更加接近1,表明模型在多种产品的制造商库存需求预测中表现良好,证明模型的广泛应用能力。
表2 9 种产品实验结果误差统计表
图4 9 种制造商产品库存需求预测结果
针对制造商库存需求的非线性、非平稳性和高波动性的特点,将奇异谱分析、变分模态分解和回声状态网络结合,提出一种基于SSA-VMD-ESN 模型的制造商库存需求预测模型。为降低回声状态网络拟合难度,使用奇异谱分析将原始数据分解为趋势信号和两个不同周期的信号;单一的信号分解还不足以分离原始信号的不同特征,同时使用变分模态分解,综合不同信号分解方法的优势,将这些分解信号同时作为回声状态网络的输入,提高预测的准确度。最后,将模型应用到真实的制造商库存需求预测实验中,结果表明:所提出模型不仅优于传统的BP 神经网络和统计模型,而且优于SSA-ESN 和VMD-ESN 模型;在9种产品的库存需求预测中都有良好的表现。
本文所提出模型丰富了库存需求预测领域的短期预测方法,提供了多种信号分解并保留原始信号的特征工程思路。除此之外,研究为制造商库存管理提供准确的需求预测工具,给企业的敏捷供应链管理提供数据支持,使制造商更好地面对全球化竞争挑战。研究还存在许多不足之处,仅实现了单步进预测,在不同产品预测中表现具有差异性。下一步考虑:(1)结合集成学习的思想,拓展模型的预测框架;(2)针对库存需求的间歇性,构造包含分类功能的预测模型;(3)建立多步进库存需求预测模型,实现需求的滚动预测。