基于BP神经网络的电网物资需求预测研究

2019-06-14 07:29丁红卫王文果
计算机技术与发展 2019年6期
关键词:需求预测物资神经网络

丁红卫,王文果,万 良,罗 剑

(1.贵州大学 计算机科学与技术学院,贵州 贵阳 550025;2.贵州电网有限责任公司物流服务中心,贵州 贵阳 550025)

1 概 述

随着南方电网公司信息化、智能化管理水平的不断提高,给各省电网公司的物资管理提出了更高的要求。通过调研后发现,各级的电网部门普遍存在物资需求上报准确率、物资浪费严重等问题,因此,如何使各级电力部门合理上报物资需求计划是省级电网公司亟待解决的问题。目前,各级电力部门上报物资需求计划时并没有统一的标准,主要根据项目初期计划或者需求计划编制人员的项目经验来完成需求的上报。但是,由于需求编制人员的经验参差不齐、项目初期的计划内容不完整甚至存在错误等原因,导致需求计划制定时存在错报、漏报等情况。如何能够提高物资需求计划的准确率,减少物资浪费,是各省级电网公司急需解决的问题。因此,研究电网物资需求的供应模式、预测电网物资的供应需求对于省级电网公司统筹安排采购计划具有重要意义。

国外智能化物资管理起步较早,许多学者使用了不同方法对物资需求预测问题进行了研究。Heinecke G提出了间断需求的Croston模型,用于物资仓储和物资规划问题[1]。Elragal H提出一种基于模糊遗传算法的神经网络模型,使用该模型对间歇性物资供应问题进行了研究,并使用了真实数据对模型效果进行了验证,证明模型效果良好[2]。Behera R等基于遗传算法构建了一种电力系统物资需求预测模型,对未来较长一段时间的物资需求情况进行预测,并且与其他几种方法进行了对比,证明该模型预测效果较好[3]。

国内对物资需求预测问题的研究虽然起步较晚,但是近年来国内学者也对其做了大量研究。杨超等提出了一种预分类方法的备件需求预测模型,首先对备件进行预分类,基于分类的结果构建多元线性回归方程,以预测最优的备件采购量[4]。张冬等基于BP神经网络设计了一种备件需求的预测模型,根据备件历史数据的时间序列对未来需求量进行预测[5]。董蒙等通过研究后发现,根据经验的预测准确度较低,因此设计了基于主成分分析-BP神经网络的模型预测备件需求情况[6]。赵一鹏等提出了一种BP神经网络误差修正的电力物资时间序列预测方法,该方法在ARIMA对电力物资需求预测的基础上,融合BP网络进行误差修正,以全面提取物资序列中的复合特征,有效提高了电力物资预测精度[7]。牛庆松等以物资需求特性为基础,建立了NPCA-SOFM的电力物资分类模型,实验结果表明该算法可为电力物资运营决策提供有效的参考依据[8]。宋斌等提出了一种基于人工鱼群算法的电网物资需求预测,通过支持向量机和人工鱼群的混合算法构建了物资需求预测模型,有效解决了电网项目物资需求预测的问题[9]。Yang等对电力企业的物资消耗情况进行了分析,认为电力物资需求数据存在不均衡和训练样本数量少的问题,因此提出了结合改进的AdaBoost和SVM的方法来解决该问题,在实际应用中取得了较好的效果[10]。Pan等针对电力系统在突发情况下物资的需求问题进行了研究,并提出了一种RVM模型,该模型可以利用少量的历史数据进行训练,并且对突发情况下电力物资的需求预测较为准确,为电力系统抢修提供了可靠依据,具有很强的实用意义[11]。

通过上述国内外学者的研究成果可以看出,电网系统的物资需求预测工作已经取得了丰硕的成果,但是物资预测主要集中在备件需求和间歇性物资需求两方面,对于整体项目物资需求预测问题的研究较少。研究整体项目物资需求预测可以在项目规划阶段对物资的需求情况进行预测,从而指导物资申报,减少物资浪费。因此,研究并建立电网物资需求的预测模型十分必要。

2 电网物资需求研究

2.1 电网物资需求分析

电网物资是指在电网建设过程中所需要的直接物资、间接物资及各种辅助物资的总和。根据国家电网公司制定的物资分类标准,电网物资总共分为20个大类,253个中类和2 921个小类。电网物资种类繁多,根据项目种类的不同,对物资的需求也各不相同。文中通过研究国家电网的物资分类标准,按照物资的用途大致将物资的需求归纳为两类:项目类物资和非项目类物资,其中项目类物资又可划分为:基建项目物资、大修项目物资和技改项目物资;非项目类物资可以划分为:运输物资、应急物资和低值易耗品物资。

2.2 基建项目需求预测分析

基建项目是指国家电网公司根据用电需求、用电规划以及用电安全而展开的一系列基础建设项目。基建项目工程包括:变电站、开关站、输配电线路工程以及配网工程项目等部分,基建项目工程具有施工周期长、投资大、项目独立性高、易受地势环境因素影响的特点。项目施工部门通常需要在项目的规划设计阶段对物资的需求进行预测和申报,通过实地调研国家电网公司项目物资管理现状后发现,基建类项目是电网项目中物资需求量最大的项目,也是物资申报过程中误差最大的部分,因为物资申报误差造成的资源浪费问题十分严重。研究基建项目物资需求问题具有十分重要的现实意义,准确的预测结果可以指导施工部门合理上报物资需求,从而减少资源浪费,节约项目成本。因此,文中就基建项目的物资需求问题展开研究。

基建类项目的项目类别主要依据电力系统的电压等级来分类,国内电力系统电压等级主要包括交流1 100 kV、750 kV、500 kV、330 kV、220 kV、110 kV、63 kV、35 kV、10 kV以及直流±1 100 kV、±800 kV、±660 kV、±500 kV等。根据用电需求的不同,往往需要建立不同电压等级的电网系统,如:农村、城市等的工业、生活区域需要建设63 kV、35 kV、10 kV的配电网络,发电站之间需要建设220 kV、110 kV的配电网络,跨省、跨国家的大型输电系统需要建设交流1 100 kV、750 kV、500 kV、330 kV、直流±1 100 kV、±800 kV、±660 kV的配电网络。

由于用电需求不同,各个级别基建项目的物资需求也不尽相同,使用一种模型对所有项目的物资需求展开预测显然不合理,因此需要寻找合适的项目展开预测研究。通过统计国家电网公司ERP系统中项目建设情况后发现,110 kV基建项目是电网公司的主要建设项目,累积了较多的历史数据。且110 kV基建项目主要集中在省内,省内的地理环境因素差异较小,物资需求的相似程度较高,可以通过挖掘不同项目中物资的数量关系寻找物资需求规律,因此,研究110 kV基建项目物资需求预测问题具有较高的可行性。

3 基于BP神经网络的电网物资预测模型

3.1 BP神经网络

BP神经网络是通过模拟人脑的神经系统结构提出的一种智能化算法,是目前最成熟的算法之一[12]。BP神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,BP算法分为向前传播和向后传播两个过程。在向前传播过程中,输入信息从输入层经过逐层的计算,传向输出层,得到实际输出值,如果实际输出值与期望值之间的误差没有满足期望的要求,就转入反向传播过程。反向传播过程,就是从输出层通过误差逐层修改网络权值和阈值向输入层传播的过程,然后再通过更新的权值和阈值进行正向传播。通过循环的正向和反向传播训练得到最优的权值和阈值就是神经网络的学习过程。图1所示是一个典型的三层BP神经网络。

图1 三层BP神经网络结构

图1是一个三层BP神经网络结构,其中x1,…,xi,…,xn为输入层的输入,w1j,…,wij,…,wnj为输入层节点与隐藏层的第j个节点之间的网络权重。BP神经网络算法步骤如下:

(1)初始化权重和阈值:随机初始化-1到1之间,每个单元有一个阈值。

(2)由输入层向前传播。

隐含层输入计算公式为:

(1)

其中,θj为隐藏层第j个神经元的阈值。

隐藏层的实际输出计算公式为:

(2)

其中,f为激励函数。

同样的方法可以得到输出层的输出值。

(3)根据误差反向传播。

输出层的实际值和预测值之间的误差公式为:

Errk=Ok(1-Ok)(Tk-Ok)

(3)

其中,Ok为预测值;Tk为真实值。

隐藏层的误差可以通过式4进行计算。

(4)

其中,Oj为隐藏层的输出值;Errk为输出层的误差;Wjk为隐藏层神经元与输出层神经元之间的权重。

权重和阈值通过式5和6进行更新。

Wij=Wij+ΔWij=Wij+(L)ErrjOj

(5)

θj=θj+Δθj=θj+(L)Errj

(6)

其中,L为学习率,0

(4)重复步骤2和步骤3。

(5)达到期望的误差或最大迭代次数,则算法结束。

3.2 BP神经网络优化

3.2.1 优化算法选择

在传统BP神经网络中,为了求解代价函数,需要使用优化算法,如梯度下降法、共轭梯度法、LBGFS等。目前最常用的优化算法是梯度下降算法,该算法的核心是最小化目标函数,在每次迭代中,对每个变量按照目标函数在该变量梯度的相反方向更新对应的参数值。虽然梯度学习算法在深度学习中取得了很不错的成绩,但也存在诸多待解决的问题:

(1)选择恰当的初始学习率很困难。

(2)学习率的调整策略受限于预先指定的调整规则。

(3)相同的学习率被应用于各个参数。

(4)高度非凸的误差函数的优化过程,如何避免陷入大量的局部次优解或鞍点。

针对简单的梯度下降算法存在的问题,John Duchi等发布了AdaGrad[13]优化算法(adaptive gradient,自适应梯度),能够对不同的参数调整不同的学习率,对于频繁变化的参数以更小的步长进行更新,而稀疏的参数以更大的步长进行更新。Geoffrey Hinton教授提出了RMSProp算法,结合梯度平方的指数移动平均数来调节学习率的变化。能够在不稳定(non-stationary)的目标函数情况下进行很好的收敛。

Adam[14]优化器是Kingma和Lei Ba两位学者提出的优化算法,结合了AdaGrad和RMSProp两种优化算法的优点。Adam算法对梯度的一阶矩估计(first moment estimation,即梯度的均值)和二阶矩估计(second moment estimation,即梯度的未中心化的方差)进行综合考虑,计算出更新步长。Adam优化器主要包含以下几个显著的优点:

(1)实现简单,计算高效,对内存需求少。

(2)参数的更新不受梯度的伸缩变换影响。

(3)能够自然地实现步长退火过程(自动调整学习率)。

(4)适用于解决包含很高噪声或稀疏梯度的问题。

综合来说,Adam在很多情况下都是比较优秀的优化器。因此,文中也将使用Adam作为实验优化器来代替传统的随机梯度下降算法。

3.2.2 防止过度拟合

BP神经网络的训练过程主要是通过对历史的物资需求数据进行训练,然后将训练完成的模型用于对未来物资数据的预测。但是,当训练数据不足或过度训练时会导致过度拟合现象的发生。由于电网物资历史数据较难获取,因此很难得到充足的训练样本,所以为了防止因样本过少而导致的过拟合现象,文中采用L2正则化方法防止BP神经网络的过拟合。L2正则化是在代价函数后加上一个正则化项,公式为:

(7)

其中,C0为原始的代价函数;λ为正则项系数,用来权衡正则项与原始的代价函数的比重;n为训练样本集的大小。

3.3 电网物资预测模型

文中基于改进的BP算法建立了电网物资预测模型,其预测过程如图2所示。

图2 物资分类预测过程

Setp1:数据预处理。

原始数据并不能直接用于模型的输入,首先要通过属性映射将字符型数据转换为数值型,然后进行归一化处理,最后得到标准化数据。

Step2:数据分离。

将数据预处理之后的数据进行数据分离。将预处理之后的标准数据集分成训练数据和测试数据。

Step3:模型训练。

(1)使用训练数据进行BP神经网训练。

(2)观察BP神经网络的训练效果,待BP神经训练完成,根据训练结果调整BP神经网络的参数,直到模型达到最优。

(3)得到一个最优BP神经网络模型。

Step4:需求预测。

将需要测试的数据输入训练完成的BP神经网络模型,从而可得出每条数据的预测结果。

4 实 验

4.1 数据集

文中采集了国家电网公司某分公司ERP系统的物资使用记录,筛选了其中110 kV基建项目的物资使用清单作为研究对象。通过统计分析后发现,110 kV基建项目共涉及了68种物资,但是由于受到地形、地势和项目施工需求等因素的影响,并非所有项目都用到了这68种物资,某些物资使用频率较低,累积的数据量较少,无法对其进行有效的预测。因此,选取了其中使用频率较高的10种物资,物资种类如表1所示。

表1 110 kV基建项目物资种类

由于不同物资使用量的量纲有差别,需要先对数据进行归一化处理,方法为:

(8)

由于神经网络受到激活函数的限制,无法处理数值较大的数据,通过归一化方法使数据都分布在(0,1)之间,方便神经网络运算,且归一化后的数据具有相同的量纲,消除了不同量纲对运算结果造成的影响。

项目物资的用量会受到地形的影响,在电网项目中,地形大致分为5种,分别为:平地、泥沼、丘陵、山地和高山,文中对这五种地形进行了赋值,作为模型的输入变量。

除了地形因素,物资的使用情况还会受到其他因素的影响,如线路长度、线路回数等,文中将这些变量作为模型输入,模型输出为各种物资的使用量。

4.2 预测结果分析

文中使用改进的BP神经网络算法设计电网物资预测模型,使用110 kV基建项目的历史数据作为数据集,从数据集中划分出20条项目数据作为测试集,其余为训练集,模型的预测误差结果对比如图3和图4所示,结果统计见表2。

图3 训练误差对比

图4 测试误差对比 表2 预测结果统计

物资类别原始BP神经网络改进BP模型平均训练误差/%平均测试误差/%平均训练误差/%平均测试误差/%钢芯铝绞线7.28.16.76.3铁塔5.87.54.34.7接续金具-钢芯钢铝绞线接续管8.46.15.45.8交流避雷器5.27.75.66.5联结金具-联板11.414.28.710.5联结金具-直角挂板13.611.811.410.6联结金具-U型挂环17.215.915.314.2联结金具-碗头挂板10.18.98.97.3联结金具-球头挂环19.516.716.414.9钢管杆(桩)18.617.817.317.5

从表2的预测结果可以看出,钢芯铝绞线、铁塔、接续金具-钢芯钢铝绞线接续管和交流避雷器的预测精度较高,误差在10%以内,其余物资的预测精度虽然较低一些,但是比起传统的根据经验的预测方法,预测精度还是有较大的提升,对项目物资申报具有一定的指导意义。从算法角度来看,改进BP神经网络模型的精度整体要高于原始BP神经网络的精度,说明改进算法有效。

5 结束语

提出了使用改进的BP神经网络作为电网物资需求预测的算法模型。原始的BP神经网络模型易于陷入局部最优解且易发生过度拟合,从而使模型的训练效果不佳,最终导致电网物资需求预测的误差较大。基于此,文中使用Adam优化算法代替传统的随机梯度下降算法,有效克服了模型容易陷入局部最优的缺点,并加入L2正则化方法来防止BP神经网络的过度拟合。将改进后的BP神经网络模型用于电网物资预测,通过实验证明,该模型相比较原始的BP神经网络在预测的误差方面有了更好的提升效果。

猜你喜欢
需求预测物资神经网络
基于递归模糊神经网络的风电平滑控制策略
募集52万件物资驰援东华大学
浅谈需求预测在企业中的应用
基于BP神经网络的济南市物流需求预测
基于灰色模型对上海市电力需求预测分析研究
ГОРОДА-ПОБРАТИМЫ ПОМОГАЮТ ХАРБИНУ В БЕДЕ俄友好城市向哈尔滨捐赠医疗物资
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
基于Q-Learning算法和神经网络的飞艇控制
救援物资