基于ANFIS预测和成本分析的紧急订单备货模型研究

2020-10-23 07:48王晓光
数字制造科学 2020年3期
关键词:备货订单数量

王晓光,王 俊

(武汉理工大学 机电工程学院,湖北 武汉 430070)

紧急订单是企业面临的一项重要问题,这类订单的出现会对现有的生产产生影响,Ehteshami等[1]指出紧急订单的发生将导致平均加工周期增加,平均周期的增减则会直接导致订单延期产生损失,因此针对紧急订单的研究很有必要。针对紧急订单问题的研究主要在以下几个方面:①选择性接受订单。程志国等[2]针对具有多个工厂企业的紧急订单频发问题,提出了一个紧急订单选择性接收模型,该模型目标函数为利润最大,约束条件为产能和生产资源约束。Lewis[3]以利润最大化为目标,建立了基于动态规划的订单选择模型。Chen[4]提出了基于启发式规则的紧急订单接单模型。②采用备货的方式。杜洪[5]提出了一种库存节点计算方法,通过管理库存节点的方式解决紧急订单生产问题。陈兴华[6]对“插单生产”和“提前备货”的特点进行对比,提出了提前备货策略能更好的解决结构复杂、零件种类繁多、生产周期长的大型产品的紧急订单的观点。③产能预留。Yang等[7]提出了CRMPO(capacity reserved for multi-priority order)方法,根据不同订单属性预留对应的产能来进行紧急订单生产。④插单生产。文献[8-9]针对MTO(make to order)企业多个紧急订单插单问题,采用模糊评价法进行了插单优先级排序。Yu等[10]将预防性维护与紧急订单综合考虑提出了紧急订单解决方案。邓妍妍[11]综合应用顺延插单、退单插单和重排插单3种插单方法对紧急订单引起的插单问题进行分析研究,并提出了3种方法的较好应用场景。严浩云等[12]建立了一种紧急订单重排问题的混合整数规划模型, 并采用基于动态规划思想的启发式求解方法进行求解。刘俨后等[13]针对混流装配线上紧急订单插入的情形,总结了混流装配线上在制品工艺顺序的可调整性特点,基于该特点提出了通过对未上线产品队列的重调度以及在制品队列的动态调度方案。

笔者针对紧急订单提出了紧急订单预测和成本分析的提前备货模型,将备货精确到特定的产品,同时考虑了备货最小成本,提高了备货的精确性,降低了生产成本。

1 基于ANFIS的紧急订单产品类型预测

1.1 ANFIS预测基本原理

ANFIS(adaptive network based fuzzy inference system)将神经网络和模糊推理的优点相结合,能够在样本需求小的情况下仍具有以任意精度逼近任意线性及非线性函数能力,且其收敛速度快,推广性强,因此该方法很适合用于紧急订单预测。ANFIS是基于模糊推理系统构建的多输入、单输出模型,由输入[x1,x2,…,xn]到输出y的运算过程分为5层。若模型中含有N条if-then模糊规则:

那么模型输出为

式中:x1,x2,…,xI为I个输入;f1,f2,…,fN为N个模糊规则函数输出;Pi,N为第N个模糊规则函数中xi的系数;r1,r2,…,rN为第N个模糊规则函数中的常量;w为隶属度;y为模型总输出。

1.2 基于ANFIS模型的紧急订单预测模型建立

为实现非标冷镦件紧急订单和24 h订单预测,针对加工n类产品的生产过程构建如下模型:

y=f(a,b1,b2,…,bn,c,d)

(1)

式中:a为客户代码,其值为1~m(m为整数,具有m位客户);b1,b2,…,bn为各产品订单量,分别对应n种不同产品的需求数量;c为订单距交付期的时间;d为紧急订单代码,d=1表示该订单为紧急订单,d=0表示该订单为常规规订;y为ANFIS 输出,输出为0表示下一订单为常规订单,否则下一订单是紧急订单,且其值代表了紧急订单产品的类型。紧急订单类型ANFIS模型结构如图1所示。

图1 紧急订单类型ANFIS模型

模型建立过程需要考虑3个步骤,分别为:

(1)确定训练样本和测试样本。笔者收集到HD公司半年内6类长期需求产品订单数据62条,这62个订单按照下单时间先后顺序依次排列,每一条订单数据包括客户名称、产品类型、产品数量,交货期以及该订单紧急订单属性。将这62项数据的前42项数据作为训练数据,后20项作为检验数据。

(2)模糊网络生成方法确定。生成模糊网络结构有两种方法分别为网格分割法和减法聚类法。减法聚类法生成网络结构相对于网格分割法来说,可以减少网络节点数、模糊规则、线性参数和非线性参数,大大减少运算复杂度,因此采用减法聚类生成网络模糊结构。在进行减法聚类生成网络模糊结构时需要对4项参数进行设置,分别为Range of influence、Squash factor、Accept ratio和 Reject ratio,这4个参数默认取值如表1所示[14]。4项指标初始值设置不同,训练结果误差不同,因此为了减少误差,按照表1取值范围,建立了不同参数进行多次训练,最终Range of influence、Squash factor、Accept ratio和 Reject ratio分别取值为0.4、1.2、0.45、0.15时训练效果最佳。在该参数下生成的网络模型如图2所示。

表1 减法聚类参数默认值及取值范围

图2 ANFIS模型结构图

(3)训练方法确定。样本训练方法主要有两种:单一BP(back propagation)网络训练和混合训练方法。单一BP训练法和混合训练法的系统误差曲线对比图如图3所示。由图3可知,采用混合方法训练时,在训练步数为20时,误差曲线已经收敛,误差稳定在0.175 4;采用单一BP训练法在训练步数为100时,误差曲线仍未收敛但有下降趋势,且误差值为35.1656。对比发现单一BP网络训练不仅收敛慢且误差较大,因此采用混合训练方法对网络进行训练。

图3 单一BP网络和混合方法误差对比

综合上述3项分析,在建立紧急订单预测模型时,以按照订单到达时间顺序收集到的62条HD公司半年内6类长期需求产品订单数据中的前42项数据作为训练数据,后20项作为检验数据,并采用减法聚类方法生成模糊网络结构和混合训练方法对生成的网络进行训练。最后得到仿真结果与实际值对比图如图4和图5所示。

图4 产品类型预测训练结果

图5 产品类型预测测试结果

从图4和图5可知,预测得出的紧急订单产品类型与实际产品类型基本吻合,误差较小,ANFIS模型紧急订单预测有很好的适用性。在确定了该模型后,只需将近期产品订单信息输入即可预测得出下一紧急订单产品类型信息。

2 紧急订单备货产品数量确定模型

得出紧急订单类型预测信息后,要确定合适的备货数量,因此首先要针对该类型产品订单进行需求特点分析。通过对往期历史数据的收集,利用统计分析软件对产品需求进行拟合分析,以确定提前备货产品的需求特点。

备货的目的是满足客户紧急订单的需求,但同时又要考虑备货所产生的成本问题。若备货数量过多,大于客户需求,那么多于需求的产品便会持续产生库存成本直到下一相同产品订单下达后再出库,而备货数量不满足客户需求,那么必须在客户订单下达后立即调用当前资源进行数量不足部分产品的紧急加工,从而产生对应的加班成本。因此考虑以库存成本和加班成本之和最小为目标建立应对该部分订单的提前备货数量模型。

确定提前备货数量所涉及的成本包括:

(1)过剩成本C0。即备货数量大于需求造成的损失,备货数量大于需求数量的部分产品留待下一订单再出售,因此过剩成本即为产品库存成本。设下单平均周期为H,单位库存成本为cs,则过剩成本即为产品库存成本。

C0=cs·H

(2)

(2)缺货成本C1。即备货数量小于需求造成的损失。数量不足时,通常采取计划外的紧急加班来补足所缺产品数量,加班过程涉及的成本包括设备运行成本cer和人员加班成本cme,则缺货成本C1为:

C1=cer+cme

(3)

根据成本分析建立提前备货数量成本函数:

G(Q,D)=C0max(0,Q-D)+C1max(0,D-Q)

式中:C0为过剩成本;C1为缺货成本;Q为备货数量;D为需求产数量。

假设通过统计软件对需求特点进行分析后得出需求D的累积分布函数为F(Q),概率分布函数为f(x)。那么对成本函数求期望值,则有

(4)

对函数求最小值,即为最优提前备货数量。

对式(4)求一阶导数则有:

(5)

对式(4)求二阶导数则有:

(6)

在式(6)中因为C0、C1均为正数,为产品需求特点的分布,为非负数。因此式(6)即二阶导数非负,故成本函数为凸函数。

因为F(0)=0,则有:

在Q=0处,成本函数G(Q)是递减的,由此可以得到成本函数G(Q)的大致函数曲线如图6所示。

图6 提前备货的期望成本函数

由图6可知,在G(Q)的一阶导数为0时,可以求得最小期望成本,即

对上式进行简化就可得到:

(7)

因为F(Q0)总是介于0~1之间,所以对于任意产品需求分布,成本函数总有解,且取得最优解时Q=Q0。

3 案例验证

以HD公司生产实际数据为案例对本文提出的备货方法进行验证。

3.1 ANFIS预测模型的应用

根据前述方法,训练得到ANFIS预测模型后,对当前生产计划制定的上两个计划期内的长期需求产品订单信息进行统计,将统计信息整理成ANFIS输入的数列形式。

将输入数据导入,利用MATLAB软件进行ANFIS预测,模型运行后输出结果为0、0、0、1、0、0、1、0、0、0、3、0、0、1、0、5、0、0、6。输出数据代表的是当前订单的下一个订单是否为紧急订单,以及紧急订单产品类型。将模型输出数据与实际数据进行对比,对比图如图7所示。

图7 输出结果与实际数据对比图

由图7可知,预测数据与实际数据在第4项准确预测了紧急订单但订单产品类型预测出现错误,第14项紧急订单和产品类型都出现了错误,因此在所有订单预测过程中,紧急订单预测准确率为94.4%,紧急订单和产品类型综合预测准确率为89%,误差率在15%以内。且在该预测模型下得到当前计划期下一订单为紧急订单,且订单产品类型为6。

3.2 产品需求特点分析

在确定备货产品类型为产品6后,搜集该产品相关历史数据,通过SPSS软件进行分布拟合,确定产品需求特点。在进行数据拟合仿真时对常用的分布形式进行仿真,通过拟合结果的显著度与分布曲线来确定需求特点。数据拟合显著性检验结果如表2所示。

表2 产品6需求分布拟合仿真检验

由仿真初步结果显示,正态分布的渐进显著性最大,且在置信水平为95%的情况下正态分布拟合的显著性R>0.05,KS>0.2,因此初步认为产品6需求特点服从正态分布,为了进一步确定需求服从正态分布,作出了需求特点直方图和正态分布拟合的概率图如图8和图9所示。

图8 产品6需求数量直方图

图9 产品6需求正态分布拟合概率图

由图8可知,需求分布直方图与正态分布曲线相似,由图9可知,正态分布拟合点基本分布在95%置信带之间,拟合效果较好。因此可以确认产品6需求服从均值为43 120,标准差为26 434.38的正态分布。

3.3 备货数量模型应用

为了确定产品6备货数量,必须明确其生产工艺及企业生产运营相关参数。单位产品6的冷镦、车削、包装所用工时分别为1 s、5 s和0.1 s。冷镦、车削、搓牙、包装工序加班成本分别为48.6元/h、13.53元/h、24.546元/h和28.74元/h。公司产品库存成本为每万个9.2元/周。

通过上述数据可以计算得出产品6加班生产成本为0.033 1元/个,产品6平均下单周期为3周,将数据代入式(2)和式(3)可得:过剩成本C0=2.76×10-3,缺货成本C1=0.033 1。

将C0、C1值代入式(7)可得

最优值Q0对应需求分布的第92.3百分位值,查找正态分布概率表得到标准化值为z=1.43,此时可求得最优备货数量为:

Q0=σ·z+μ=1.43×26 434.38+43 120≈80 921

当备货数量为Q0时,能够在满足客户需求概率为92.3%的情况下使备货成本最小。

4 结论

紧急订单是按订单生产模式企业不得不面对的一个难题,针对紧急订单,笔者提出了一种基于预测和成本分析的备货模型,并详细分析了ANFIS预测模型和备货数量模型的建立方法和原理。最后通过HD公司实际生产数据制定了备货方案,验证了备货模型的可行性。

猜你喜欢
备货订单数量
春节期间“订单蔬菜”走俏
订单农业打开广阔市场
鱼粉:外盘持续高位成交积极,节前终端备货现货坚挺上涨
外贸出口操作流程梳理
错过了这次大备货,可能明年春天才能用上RTX30显卡
水产料优惠10%!江苏好润饲料逆“市”推出饲料优惠政策,备货抓紧
统一数量再比较
“最确切”的幸福观感——我们的致富订单
角:开启位置与数量关系的探索
头发的数量