资源描述:
《成品油价格BP神经模型》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、中国成品油价格影响因素分析为了能够更好的定量的评价外界因素对中国成品油价格影响,更精确的预测中国成品油价格的发展趋势,首先列出了影响中国成品油价格的各个因素,查阅资料[3],归纳出如下主要因素:国际成品油价格、替代能源因素、国家环境保护及能源消费有关政策、燃油附加税、走私贩运成品油、成品油进出口量、国际贸易依存度、政局原油储备体制、成品油市场供给、成品油市场需求、成品油市场竞争。为精简模型且考虑到预测短期中国成品油价格变化,设定外界因素稳定的前提下,本文主要考虑供求关系与人们收入的影响因素。因此,从以上主要因素中筛选出对中国成品油价格影响较大的四大因素:国际成品油价格、国内
2、年平均石油产量、国内年平均石油消费量、人均GDP作为预测中国成品油价格的指标。选取2000年至2012年的各指标的值,如表1所示:表12000年至2012年四大因素指标值将上表2000年至2008年各指标的值作为基值用于BP神经网络模型来预测2009至2012年相应各指标的值。下面进行预测处理:BP神经网络模型1.1预测环节数据的预测应该包括四个环节:1.数据归一化2.建立网络3.训练网络1.网络仿真模拟以及数据还原1.2预测原理[1]:基本BP算法包括两个方面:信号的前向传播和误差的反向传播。即计算实际输出时按从输入到输出的方向进行,而权值和阈值的修正从输出到输入的方向进
3、行。………………输出变量输入变量输入层隐含层输出层图2-1BP网络结构图中:表示输入层第个节点的输入,j=1,…,M;表示隐含层第i个节点到输入层第j个节点之间的权值;表示隐含层第i个节点的阈值;表示隐含层的激励函数;表示输出层第个节点到隐含层第i个节点之间的权值,i=1,…,q;表示输出层第k个节点的阈值,k=1,…,L;表示输出层的激励函数;表示输出层第个节点的输出。(1)信号的前向传播过程隐含层第i个节点的输入neti:(3-1)隐含层第i个节点的输出yi:(3-2)输出层第k个节点的输入netk:(3-3)输出层第k个节点的输出ok:(3-4)(2)误差的反向传播过
4、程误差的反向传播,即首先由输出层开始逐层计算各层神经元的输出误差,然后根据误差梯度下降法来调节各层的权值和阈值,使修改后的网络的最终输出能接近期望值。对于每一个样本p的二次型误差准则函数为Ep:(3-5)系统对P个训练样本的总误差准则函数为:(3-6)根据误差梯度下降法依次修正输出层权值的修正量Δwki,输出层阈值的修正量Δak,隐含层权值的修正量Δwij,隐含层阈值的修正量。;;;(3-7)输出层权值调整公式:(3-8)输出层阈值调整公式:(3-9)隐含层权值调整公式:(3-10)隐含层阈值调整公式:(3-11)又因为:(3-12),,,(3-13)(3-14)(3-15
5、)(3-16)所以最后得到以下公式:(3-17)(3-18)(3-19)(3-20)结束参数初始化:最大训练次数,学习精度,隐节点数,初始权值、阈值,初始学习速率等批量输入学习样本并且对输入和输出量进行归一化处理计算各层的输入和输出值计算输出层误差E(q)E(q)<ε修正权值和阈值YesNYes开始图2-2BP算法程序流程图1.3预测分析:合理的选取影响中国成品油的主控因素,对准确建立神经网络模型起关键性的作用。根据分析,选取国际成品油价格、国内年平均石油产量、国内年平均石油消费量、人均GDP四个影响因素作为神经网络模型的输入,确定出输入端点个数4。对于隐含层节点数即神经元
6、数目的选取并没有通用的理论,只有一些经验公式.Komogorov理论证明:一个具有n个节点输入层,2n+1个节点的隐层和m个输出节点的输出层的3层BP网络,可以精确地表达任一个连续函数.目前大量的研究也表明,当输入节点为n个时,选择隐层节点为2n+1个,所确定的单隐层BP网络能准确反映实际情况,并能保证网络精度.隐含层神经元个数并不是固定的,需要经过实际训练的检验来不断调整[2].根据以上的分析,该模型采用3层BP网络,由于输入神经元有4个,因此,这里为中间层神经元个数设为9,由此确定出BP结构为4-9-1。将4个因素值作为神经网络的输入,以中国成品油价格作为神经网络的输出
7、建立预测建模,即输入参数向量X=(X1,X2,…,Xninputnodes)T中n-inputnodes=6表示输入节点数,输出参数向量中Y=(Y1,Y2,…,Ynoutputnoedes)T中n-outputnoedes=1即中国成品油价格一维变量.在进入人工神经网络训练之前为了消除主控因素不同量纲的数据对网络训练和预测结果的影响,需要对数据进行归一化处理,以提高网络训练的效率和精度.对于数值型的学习样本以及输出数据利用式(1)进行归一化处理,每个节点的输出值为0~1.Xi=(X’i-Xmin)/(Xmax-Xm