基于BP神经网络模型的发电燃料供应预测方法
摘要:电网公司和电力调度机构对发电燃料供应的掌握严重不足,迫切需要开展发电燃料供应影响因素及预测方法的研究工作。本文提出一种基于BP神经网络的发电燃料供应量预测方法,利用神经网络原理,通过数据收集、数据修正和神经网络结构选择建立起基于BP神经网络的发电燃料供应预测模型。通过MATLAB实际仿真,证明该预测方法预测较准确,并具有灵活的适应性。
关键词:发电燃料;供应预测;BP神经网络;预测方法
中图分类号:TM 762 文献标示码:A
0 引言
发电燃料的供应受到能源政策、供需形势、资源分布、供应价格、交通运输、市场博弈等多种复杂因素的影响,长期以来缺乏合理有效的供应预测方法和技术手段,尤其是厂网分离后鲜见相关的研究工作。
文献1《辽宁火电厂燃料管理信息系统的开发与研制》开发和研制了覆盖辽宁全体直属电厂燃料公司并同东电局进行广域网数据交换,同时能进行审核管理和业务信息方便传输的燃料综合管理信息系统。
文献2《电力系统燃料MIS系统开发研究》探讨了燃料管理信息系统的组成、功能、结构及开发应用,为综述性理论研究。
以上文献均未对发电燃料供应提供较有效的预测方法。本文提出一种基于BP神经网络的发电燃料供应量预测方法,利用神经网络原理,通过数据收集、数据修正和神经网络结构选择建立起基于BP神经网络的发电燃料供应预测模型。通过MATLAB实际仿真,证明该预测方法预测较准确,并具有灵活的适应性。
基金项目:中国南方电网有限责任公司科技项目(K-ZD2013-005)
1 预测方法
按预测方法的性质不同,预测可分为定性预测和定量预测。常用的定性预测方法有主观概率法、调查预测法、德尔菲法、类比法、相关因素分析法等。定量方法又可以分为因果分析法和时间序列分析法等,因果分析法也叫结构关系分析法。它是通过分析变化的原因,找出原因与结果之间的联系方式,建立预测模型,并据此预测未来的发展变化趋势及可能水平。时间序列分析法也叫历史延伸法。它是以历史的时间序列数据为基础,运用一定的数学方法寻找数据变动规律向外延伸,预测未来的发展变化趋势。由于时间序列模型无法引入对负荷影响的其它变量,所以,单纯应用时间序列模型进行供应预测精度难以提高。
运用人工神经网络技术进行预测,其优点是可以模仿人脑的智能化处理过程,对大量非结构性、非精确性规律具有自适应功能,具有信息记忆、自主学习、知识推理和优化计算的特点,特别是其自学习和自适应功能是常规算法和专家系统所不具备的,因此,预测是人工神经网络的最有潜力的应用领域之一,有非常广泛的前途。
2 BP神经网络模型
2.1 人工神经网络概述
人工神经网络是由神经元以一定的拓扑结构和连接关系组成的信息表现、储存和变换系统,是模仿人脑结构的一种信息系统,可较好地模拟人的形象思维能力。它是对自然界中生物体神经系统进行抽象和改造,并模拟生物体神经系统功能的产物。神经网络的重要特点是具有记忆和学习能力,经过一定训练之后,能够对给定的输入做出相应处理。
人工神经网络适用于处理实际中不确定性、精确性不高等引起的系统难以控制的问题,映射输入输出关系。人工神经网络优于传统方法在于:
1)实现了非线性关系的隐式表达,不需要建立复杂系统的显示关系式;
2)容错性强,可以处理信息不完全的预测问题,而信息不完全的情况在实际中经常遇到;
3)由于神经网络具有一致逼进效果,训练后的神经网络在样本上输出期望值,在非样本点上表现出网络的联想记忆功能;
4)由于大规模并行机制,故预测速度快;
5)动态自适应能力强,可适应外界新的学习样❥木,使网络知识不断更新。
图1是一个人工神经元的典型结构图。
图1 神经元典型结构图
它相当于一个多输入单输出的非线性阈值器件。,表示该神经元的输入向量;为权值向量;θ为神经元的阈值,如果神经元输入向量加权和大于0,则神经元被激活;f表示神经元的输入输出关系函数,即传输函数。因此,神经元的输出可以表示为:
其中传输函数是神经元以及网络的核心。网络解决问题的能力与功效除了与网络结构有关,在很大程度上取决于网络所采用的传输函数。
几种常见的传输函数如图2所示:
(1)为阈值型,将任意输入转化为0或1输出,其输入/输出关系为:
(2)为线性型,其输入/输出关系为:
(3)、
(4)为S型,它将任意输入值压缩到(0,1)的范围内,此类传递函数常用对数(logsig)或双曲正切( ヅtansig)等一类S形状的曲线来表示,如对数S型传递函数的关系为:
而双曲正切S型曲线的输入/输出函数关系是:
(3)
(4)
图2 常见的传递函数图形
2.2 BP神经网络概述
神经网络的魅力在于它超强的映射能力,单层感知器可实现性分类,多层前向网络则可以逼近任何非线性函数。可以将BP网络视为从输入到输出的高度非线性映射,而有关定理证明BP神经网络通过对简单的非线性函数进行数次复合,可以近似任何复杂的函数。
在人工神经网络的实际应用中,80%-90%的人工神经网络模型是采用BP网络和它的变化形式,它也是前向网络的核心,体现了人工神经网络最精华的部分。在人们掌握反向传播网络的设计之前,感知器和自适应线性元件都只能适用于对单层网络模型的训练,只是后来才得到进一步拓展。
BP神经网络主要应用有:
(3)分类:把输入矢量以所定义的合适方式进行分类。
(4)数据压缩:减少输出矢量维数以便于传输或存储。
2.3 误差反向传播算法原理
BP神经网络是一种多层前馈神经网络,名字源于网络权值的调整规则,采用的是误差反向传播算法(Error Back-Propagation Training Algorithm)即BP算法。BP神经网络是单向传播的多层前向神经网络。除输入输出节点之外,有一层或多层的隐藏节点,同层节点之间无任何连接。典型的BP网络是三层前馈阶层网络,即:输入层、隐含层(中间层)和输出层,各层之间实行全连接。BP神经网络结构如图3所示:
图3 BP神经网络结构示意图
BP网络学习过程包括误差正向传播和反向传播两个过程。在正向传播过程中,输入样本从输入层传入,经各隐含逐层处理后,传向输出层,每一层神经元的状态只影响下一层神经元的状态。若输出层的实际输出与期望的输出不符,♀则转入误差的反向传播阶段。误差反传是将输出误差的某种形式通过隐含层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各神经元之间权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络学习训练的过程。此过程一直进行到网络输出的误差减小到可接受的程度,或进行到预先设定的学习次数为止。
BP神经元与其他神经元类似,不同的是,由于BP神经元的传递函数必须是处处可微的,它不能采用二值型{0,1}或符号函数{-1,1},所以其传递函数为非线性函数,最常用的函数S型函数,有时也采用线性函数。本文采用S型(Sigmoid)函数作为激发函数:
式中,为网络单元的状态:
则单元输出为:
其中,为单元的阀值。在这种激发函数下,有:
故对输出层单元:
对隐层单元:
权值调节为:
在实际学习过程中,学习速率对学习过程的影响很大。是按梯度搜索的步长。越大,权值的变化越剧烈。实际应用中,通常是以不导致振荡的前提下取尽量大的值。为了使学习速度足够快而不易产生振荡,往往在规则中再加一个“势态项”,即:
式中,是一个常数,它决定过去权重的变化对目前权值变化的影响程度。
图4为BP算法流程图。
图4 BP算法流程图
3 发电燃料供应预测BP神经网络模型建立
3.1 数据的收集与整理
发电燃料供应是一个庞大的系统,其中的数据资料纷繁复杂。在进行模型的搭建之前,需要进行历史资料的整理,提取出所需的数据。本模型中,选取与燃料供应有关的数据作为影响因素,如电厂发电量、能源政策、能源供需形势、交通运输状况、燃料价格和机组能耗等。
3.2 数据的修正
如果在数据采集与传输时受到一定干扰,就会出现资料出错或数据丢失的情况,此时都会产生影响预测效果的坏数据,这些坏数据将会掩盖实际模型的规律,直接影响模型的效果与精度。据此,需对样本数据进行预处理,以确保在建模和预测过程中所运用的历史数据具有真实性、正确性和同规律性。一般样本数据预处理方法主要有经验修正法、曲线置换法、插值法、20%修正法、数据横向纵向对比法、小波分析去噪法等。对于简单问题,采用数据的横向纵向对比即可实现坏数据的剔除。
3.3 BP神经网络的结构选择
理论证明,3层前向式神经网络能够以任意精度实现任意函数,所以,本模型中采用3层前向网络。同时,当有N个影响时, 3层BP神经网络的输入层节点数为N个,隐含层节点数一般为2N ~ 4N,最佳取值可根据实际问题试凑得,输出层为1个节点, 因此可以取其平均结构为N - 3N - 1型, 输入层激发函数为线性函数, 中间层和输出层的激发函数为S型函数。
3.4 BP神经网络模型建立
对于实际的燃料供应模型,数据的选择要有针对性,结构要合适,这在预测过程中是重中之重。为便于模型选择、结果对比,可同时采用几种不同的数学模型进行预测。在完成对恰当的预测模型的选择后,利用提取自历史资料的训练数据对建立好的预测数学模型进行参数训练。当模型的参数训练好以后,即可利用此模型进行预测。
具体操作步骤如下:
(1)对训练样本与预测样本进行归一化预处理,公式表示如式
(1)。
(1)
其中表示经过归一化后的值,表示实际值,,分别是训练集中数据的最大值和最小值,k表示输入向量的维数,i表示有作用因素的个数。
(2)对预测的数据样本进行提取,并分别列出训练与测试的样本集合。
(3)对BP神经网络的输入层、隐含层、输出层的节点进行定义,对网络的权重、阈值进行初始赋值。
(4)利用训练样本对BP神经网络进行训유练,建立符合实际问题的模型。
(5)利用事先预备的测试样本对训练好的网络进行测试,若效果不佳,则重新训练,若效果好则继续下一步。
(6)利用预测样本及训练好的模型进行预测。
具体流程图如图5所示:
图5 模型建立流程图
4 基于BP神经网络模型的发电燃料供应预测
(1)样本数据的选择
以各类影响耗煤的因素作为输入 。
(2)进行归一化处理
避免量纲对模型的影响。同时,降低数据的数量级,可以提高BP网络的训练的速度,避免饱和。
(3)确定BP神经网络的结构
3层BP神经网络的输入层节点为1个(可根据实际情况调整),对应于输入样本,隐含层节点为15,输出层节点为1,对应于输出样本。网络初始连接权及神经元初始阈值采用随机赋值方式。神经元的激发函数为S函数,最大迭代次数为400,学习步长为0.001,学习误差为0.00001。
(4)利用训练样本进行网络的训练
(5)利用测试样本进行模型的测试
人为选定5%相对误差为模型训练好坏的判别标准。若测试样本的测试结果的相对误差在5%以内,则进行下一步,否则重新训练。
(6)利用预测样本和已训练好的模型进行预测
南方电网全网发电燃料供应量预测结果值与实际值的对比如图6所示:
图6 南网全网发电燃料供应预测值与实际值对比图
5 结论
随着厂网分离的实施,电网公司和电力调度机构对发电燃料供应的掌握严重不足,已经不能满足电力供应工作的要求,尤其是在来水偏枯、电力供应紧张的时期,发电燃料供应的预测对缓解电力供需矛盾、有序做好发用电管理起着举足轻重的作用,因此,迫切需要开展发电燃料供应影响因素及预测方法的研究工作。
本文在收集☪、掌握发电燃料供应来源、价格、运输等情况的基础上,基于BP神经网络研究建立发电燃料供应量的预测模型和预测方法。通过MATLAB仿真预测,对预测结果值和实际值进行了对标分析,证明该预测方法预测较准确,并具有灵活的适应性。本文的研究有利于提升发电燃料的管理水平和掌控力度,为合理有序做好电力供应工作提供有力支持。