文档库 最新最全的文档下载
当前位置:文档库 › MATLAB实现BP神经网络的煤炭需求预测

MATLAB实现BP神经网络的煤炭需求预测

MATLAB实现BP神经网络的煤炭需求预测
MATLAB实现BP神经网络的煤炭需求预测

当前我国煤炭消费量不断增长,给煤炭供应带来较大压力,因此对未来煤炭消费情况的掌握显得尤为重要。本文采集了与煤炭消费相关的指标数据,采用BP神经网络预测方法,在MATLAB上,利用其中神经网络功能,建立合理训练模型,进行数据测试和预测,最后得出2010年中国煤炭消费量的预测结果,并提出相关结论。

一、煤炭消费量及相关指标变化

中国煤炭的消费量随着经济的快速发展逐年增长,根据《中国统计年鉴2006》数据显示,2005年中国煤炭消费量达到153866.8万tce。根据柯布—道格拉斯函数的意义可以知道,生产过程中生产要素主要包括资本、劳动和原材料煤炭等。所以为了在煤炭消费预测中有更充足的数据分析,本文收集了与煤炭相关的价格、生产量、GDP、工人数量、工资和投资额,作为BP神经网络的分析数据(见表1),以达到更好的分析结果。

二、BP神经网络简介

BP网络是一种多层前馈神经网络,是一种具有三层或三层以上的神经网络,包括输入层、中间层和输出层。上下层之间实现全连接,而每层神经元之间无连接。算法机理是:一对学习样本提供给网络,神经元的激活值从输入层经中间层向输出层传播,在输出层的各神经元获得网络的输入响应。然后,按照减少目标输出与实际误差的方向,从输出层经过各中间层逐层修正各连接权值,最后回到输入层。

BP网络设计:

输出层:这里我们的输出层只有1维,就是煤炭消费量。

资源来源:《中国统计年鉴2006》

输入层:输入层的神经元以表1中除消费量以外的其他变量为基准,共5个。

隐层:本文采用三层BP网络,隐层的隐单元定为8~12,最后根据训练结果进行调整。

表1预测数据源

年份

产量

(万tce)

GDP

(亿元)

价格指数

1989年=

100

职工工

资总额

(亿元)

采掘业

人数

(人)

消费量

(万tce)198975314.516992.3100199.084273766.77199077110.1218667.8106.2234.388275211.69199177689.421781.5120.1122262.990578978.86199279691.2126923.5139.4503289.389882641.69199382183.6635333.9194.812337.793286646.77199488571.8348197.9238.0603417.091592052.77199597162.660793.7264.9611516.293297857.3199699727.2371176.6301.2608565.2902103794.2199798115.8178973.0325.3616574.386898801.17199889335.7584402.3314.2993513.972192020.94199991428.8189677.1297.9558494.966792463.82200092864.1699214.6292.2946496.059793869.37200198685.51109655.2311.2938528.256195485.232002103974.6120332.7347.2793593.2558100671.92003123045.3135822.8371.5889655.5568481119658.42004142379.2159878.3430.6715821.185491.1504138173.82005157436183084.8509.05371016.319497.5873153866.8

MATLAB实现BP神经网络的煤炭需求预测

■余良晖贾文龙薛亚洲陈甲斌

理论探索TheoryProbe

34

煤炭经济研究2007年第10期

全国优秀科技期刊中国工业经济类核心期刊

三、预测分析

1.数据源归一化。

为了在MATLAB中计算的方便,需要对数据的大小进行归一化处理,这里根据现有的数据情况,分别对输入和输出量(除煤炭消费量作为输出量以外,其他变量值都作为输入量),进行y=log10(x)/10的算法进行归一化。归一化代码如下。

p为输入变量集合。

p=[75314.516992.3100199842;

77110.1218667.8106.2234.3882;

77689.421781.5120.1122262.9905;

79691.2126923.5139.4503289.3898;

82183.6635333.9194.812337.7932;

88571.8348197.9238.0603417915;

97162.660793.7264.9611516.2932;

99727.2371176.6301.2608565.2902;

98115.8178973325.3616574.3868;

89335.7584402.3314.2993513.9721;

91428.8189677.1297.9558494.9667;

92864.1699214.6292.2946496597;

157436.0183084.8509.05371016.319

497.5873]’;

用循环对输入量进行归一化处理。

fori=1∶5

P(i,∶)=log10(p(i,∶))/10;

end

t为输出量

t=[92052.75;97857.3;103794.2;98801.17;92020.94;92463.82;938693.37;95485.23;100671.9;119658.4;138173.8;153866.8]’;

用循环对输出量进行归一化处理。

fori=1∶1

T(i,∶)=log10(t(i,∶))/10

end

2.BP网络训练。

一般的预测问题都可以通过单隐层的BP网络实现,这里也是单隐层。网络中间层的神经元传递函数采用S型的正切函数tansig,输出层神经元传递函数采用S型对数函数logsig。选择的理由是函数的输出位于区间[0,1]中,正好满足网络输出的要求。并采用trainbfg函数进行训练,从训练结果图中可以看到训练2次后误差达到要求。

MATLAB代码如下:

P=[0.48770.42300.20000.22990.2925;

0.48870.42710.20260.23700.2945;

0.48900.43380.20800.24200.2957;

0.49010.44300.21440.24610.2953;

0.49150.45480.22900.25290.2969;

0.49470.46830.23770.26200.2961;

0.49870.47840.24230.27130.2969;

0.49990.48520.24790.27520.2955;

0.49920.48970.25120.27590.2939;

0.49510.49260.24970.27110.2858;

0.49610.49530.24740.26950.2824]’;T=[0.49640.49910.50160.49950.49640.49660.59730.49800.50030.50780.5140];

threshold=[01;01;01;01;01;];

net=newff(threshold,[11,1],{'tansig’,'logsig’},'trainbfg’);

net.trainParam.epochs=1000;

net.trainParam.goal=0.01;

net=train(net,P,T);

TRAINBFG-srchbac,Epoch0/1000,MSE0.210775/0.01,Gradient0.147396/1e-006

TRAINBFG-srchbac,Epoch2/1000,MSE0.000785357/0.01,Gradient0.00931574/1e-006

TRAINBFG,Performancegoalmet.

3.测试数据和预测。

根据网络训练的结果,并采用2000年的归一化数据进行测试,以验证训练结果的可应用性。根据测试得出测试值y=0.5164,并进行换算与实际值误差仅为0.023,说明网络训练成功,可以用来预测2010年的煤炭需求量。输入相应的输入量,最后得出预测量z=0.5358,经换算后,即预测值为228034.2万tce,结果列入表2。

训练测试及预测代码和结果:

表2BP网络实现结果与误差分析

归一化值

y=log10(x)/10

误差

实际值

x2000年实际值0.5187153815.52000年测试值0.51640.023145881.42010年预测值0.5358228034.2

理论探索

35

COALECONOMICRESEARCH

P_test=[0.49680.49970.24660.26950.2776]’;

y=sim(net,P_test);

Q=[0.51970.52630.27070.30070.2697]’;

训练结果图

z=sim(net,Q);

y=0.5164

z=0.5358

四、结论

1.根据与煤炭消费相关的指标数据,建立了BP神经网络预测模型,克服了一般回归分析的不够精确的局限性,经过反复实验训练确定了最佳的隐层结点个数,合理地确定了最优的网络结构,模型具有较高的应用价值。

2.分析得出的BP神经网络预测模型,可以不断添加历史数据,进一步提高预测能力,提高网络的可信度。

(作者单位:中国国土资源经济研究院)

(责任编辑:邹

琳)

(上接第28页)

理论探索TheoryProbe

全防范主要以入口和边界为重点防范区域。住区在保证交通和消防要求的条件下,尽可能少的设置出入口,每个出入口都需要配备保安人员、门禁系统,实行封闭式管理,以减少社会闲散人员进入。住区周围边界处采用电子边界防越报警系统,住区内的道路采用闭路电视监控和电子巡更系统。第二,住区环境建设还要考虑对意外事故的防范,主要有瓦斯爆炸、火灾等。保证住区建筑物间距满足消防要求,使居民可以逃生,同时住区内要保留足够的避难空间以满足居民在发生意外事故时藏身使用。第三,避免住区饮用水受到污染,保证水质满足饮用水卫生标准。另外住区选址时一定要避开煤矿塌陷区以保证住区基地环境安全。第四,住区所有的活动设施应有标记以说明适合不同的使用人群,设施的耐久性、稳固性必须符合强度标准。户外活动场地、水景、儿童设施安全防护措施齐全,公共场所要考虑无障碍设计。

4.人文环境建设。

在矿区人文社会环境较差的情况下,住区人文环境的创造就更加重要,主要从创造和谐邻里关系和创造煤矿特色文化环境两方面着手。第一,积极营造邻里交往的公共活动空间和设施,为居民提供相互交往和了解的场所。同时住区规划设计时,还要考虑人际公平问题,使每位居民有小区主人的待遇,力求公平、和睦、祥和的邻里关系。第二,住宅区在设计之初就要把文化建设提升到住区文化的层次来考虑,通过各种手段把煤矿文化渗透到住区的各个领域,营造与煤矿文化有关的建筑造型与景观小品,建设各类型的文化娱乐、体育健身场所,传播文学艺术、价值观念、民俗民风等精神财富,形成以煤矿文化为主要特色的住区精神,使住区居民形成爱我住区、爱我煤矿的精神风貌。

住区环境建设是煤矿区建设新型矿区和可持续发展的重要组成部分和目标之一,它关系到煤矿区广大居民的生存健康和煤炭产业能否健康发展问题,煤矿区各级领导和管理部门应该从以下几个方面努力,大力支持住区环境建设。第一,树立以人为本的思想,重视煤矿区生活空间建设。第二,加大煤矿区可持续发展建设,加快矿区生态重建。第三,加大煤矿区污染治理力度和社会环境管理力度。第四,相关部门要从资金、人员等方面大力支持。第五,积极进行煤矿产业调整,帮助居民就业,提高居民收入。只有这样,矿区居民的生活环境才能真正得到改善,它们的健康生活才有保障,才能使煤矿区的发展更人性化、科学化,才能使矿区的社会环境更加和谐。

(作者单位:中国矿业大学建筑工程学院许昌学院城市与环境学院)

(责任编辑:孙驭华)

36

煤炭经济研究2007年第10期

相关文档
相关文档 最新文档