(一)中国煤炭资源概述
煤炭是世界上储量最多、分布最广的常规能源。20世纪90年代以来,世界煤炭产量在44亿~48亿吨之间,在世界一次性能源生产和消费总量中约占30%,是世界经济发展的重要动力支柱。中国是煤炭消费大国,煤炭在中国一次能源消费中的比例高达75%以上,高于全球平均水平的1倍以上。根据BP能源数据整理,2006年全球煤炭探明储量排名如表1-1所示,美国以2466亿吨储量稳居第一,俄罗斯以1570亿吨储量列第2位,中国和印度分别为1145亿吨和924亿吨,分别位居第3和第4。作为煤炭资源大国,中国理应把煤炭作为主要的能源之一,以保证国家的能源安全。但是,煤炭资源是有限的一次能源,而且,在现有技术和经济条件下,大量使用煤炭已使中国环境遭受严重污染,因此,从国家能源战略角度考虑,如何使用煤炭资源,怎样促进能源消费结构合理化,是一个重要问题。
表1-1 2006年全球煤炭探明储量排行榜
续表
资料来源:国际能源网。
煤炭资源支撑着我国国民经济的发展,是国家经济发展的命脉。自进入20世纪80年代末期我国国民经济高速增长以来,煤炭在一次能源消费中的比重一直在2/3以上。80%以上的煤炭消费用于国民经济的主体——生产建设。因此可以说,煤炭产业支撑着国民经济的高速发展。煤炭作为中国的基础能源,在中国经济与社会发展中起着重要的作用。随着国民经济的逐步提升,中国能源消费总量也在逐年增加,从1990年的987.03Mtce[1]增加到2006年的2446.82Mtce,年均增长6.42%。其中煤炭消费总量从752.12Mtce增至1627.14Mtce,年均增长20.07%。图1-1显示了1990年以来中国煤炭消费量占能源消费量比重的情况。
图1-1 煤炭消费量占能源消费量的比重
在我国境内,煤炭资源丰富,品种齐全,分布范围广。除上海市外,在其他30个省(区、市)都有探明储量。储量超过1000亿吨的为晋(占27%)、蒙(占21%)、陕(占16%)三省(区),约占总保有储量的64%。储量在100亿~1000亿吨的省(区)依次为新、黔、宁、皖、滇、豫、黑、鲁、冀。上述12省(区)占全国保有储量的95%。
受资源储备与传统能源结构的限制,煤炭历来是中国最主要的能源之一,煤炭产量超过了世界总产量的1/3。自1990年以来,我国煤炭产量一直居世界首位,2006年煤炭产量达23.8亿吨。新中国成立以来,煤炭在一次能源生产结构中一直占70%以上。进入21世纪,中国煤炭消费需求大幅度增长,煤炭产量以年均近2.0亿吨的速度增长[2],煤炭在能源生产和消费结构中的比例有了新的提高。
中国以煤炭为主的能源资源结构决定了国民经济和社会发展现状。在可以预见的未来,煤炭仍将是中国的主体能源。煤炭资源对于中国社会经济持续快速健康发展至关重要。要合理利用煤炭资源,保证中国国民经济的健康发展,煤炭需求的预测是不可缺少的。
(二)能源及煤炭需求预测研究背景及意义
能源是人类赖以生存、社会得以进步的重要物质基础,同时也是国民经济发展和人民生活水平提高的重要物质基础。技术越进步,社会越发展,经济越发达,人类对能源的需求就越大,对能源的依赖就越强。
中国是一个发展中国家,长期以来社会经济保持着持续、稳定、快速的发展。对能源的需求也在不断增加。煤炭是中国的主要能源,在国民经济中占有重要的战略地位,在未来相当长的时间内,煤炭依然是中国的主要能源资源。新中国成立60多年来,煤炭在一次能源生产和消费结构中一直占70%左右,为实现中国经济持续快速发展提供了保障。目前,中国正处在重化工业阶段,国民经济进入了高速发展期,国内能源需求将在一个较长时期内保持快速增长势头。预测能源未来需求有积极意义。
从国际上看,尽管随着石油、天然气和水电等清洁能源消费的快速增长,煤炭在能源生产和消费结构中所占比例将有所下降,但中国煤炭资源丰富,石油和天然气资源相对匮乏且开发利用较晚,对煤炭的需求可能仍将占较大比例。从国内看,尽管石油、天然气、水电和新能源需求和消费会迅速增加,但预计未来煤炭在中国能源消费结构中仍将占据第一。根据国家能源中长期规划,21世纪头20年煤炭在我国能源结构中的主体地位不会改变,估计2020年依然会占到60%以上[3],具有不可替代性。煤炭是不可再生资源,开发必须以既满足当代人的需要,又不损害后代人利益为基本原则,煤炭资源的可持续供应,对全国经济社会长期稳定、健康发展都有举足轻重的影响。
但是,煤炭资源是不可再生的,目前中国煤炭资源现状不容乐观,可以说处于“总量大,可采量少,采出量更少”的尴尬局面。同时中国煤炭能源的发展历经着“供不应求—政策放松—无计划生产—政策限制—供不应求……”的怪圈。长期以来,由于缺乏科学的规划,供需失衡的矛盾一直影响着煤炭工业和国民经济的健康发展。要想充分合理地利用煤炭资源,保证中国或某一地区的经济快速、健康地发展,就必须准确预测其煤炭需求量,以保持煤炭的供需基本平衡。
近些年来,国内一些专家和研究单位曾采用不同的方法对中国的煤炭需求做过大量研究工作,但由于采用的方法和所取的基础数据不同,预测结果差异较大,且预测精度不高。在关于煤炭需求预测的方法选择上,也仍然存在着一定的不足,需要寻找更准确、更科学、更有效的预测方法。
本章在对中国煤炭现状进行分析的基础上,对目前应用较广的BP神经网络预测方法进行改进和优化,并据此分析和界定影响煤炭需求的经济因素,建立煤炭需求的预测模型,对中国未来煤炭需求进行预测。
对中国煤炭资源的需求进行分析及预测,不仅有利于煤炭资源供需矛盾问题的解决,保障国民经济的可持续稳定发展,更有利于保障中国能源的战略安全,具有重大的经济、社会价值。
(三)能源及煤炭需求预测国内外的研究现状
在中国,煤炭资源相对于石油和天然气更丰富,自然资源禀赋的这种特点,决定了中国以煤炭为主的能源消费结构。这种能源消费结构与世界主流是不对称的。半个多世纪以来,世界大多数国家已完成以煤炭为主的消费模式向石油的转化,现在正朝着石油向更优质的天然气,乃至新能源的时代迈进。1950年煤炭在世界一次能源消费结构中占75.7%,1970年下降到30.5%,出于这个原因,国际上直接对煤炭需求研究的文献不多。但可以借鉴对能源需求预测的研究来探讨煤炭需求预测。
国外真正对能源问题进行系统研究,始于20世纪70年代。70年代石油危机后,因机械工业的迅速发展,能源紧缺才日益表现出来,能源在经济系统中的重要作用才被充分关注。国内有关能源消费的理论研究,比国外起步晚了10年左右,始于20世纪80年代。能源需求预测在实际应用中有多种方法,比较常用的有以下几种:
1.弹性系数法
弹性系数法是根据国内生产总值增长速度与能源消费增长之间的关系来预测能源消费总量。
2.回归模型法
建立的回归模型,有一元、二元和多元回归模型。
3.投入产出法
投入产出法是20世纪30年代提出的经济数量分析方法。其主要内容是编制棋盘式的投入产出表和建立相应的线性代数方程体系,构成一个模拟现实的国民经济结构和社会产品再生产的经济数学模型,综合分析和确定国民经济各部门间错综复杂的联系和再生产的重要比例关系。
4.灰色预测模型法
灰色预测模型的概念是中国学者邓聚龙教授于1982年首先提出的,并建立了灰色系统理论。
5.BP神经网络预测法
BP神经网络是目前发展的一种神经网络。它由输入、输出以及一个或多个隐层组成。有关理论已经证明了任何一个非线性映射都可以用一个三层前向网络很好的逼近。
6.MedPro终端能源需求模型法
MedPro终端能源需求模型是由法国专家开发的,它是在MEDEE能源需求模型的基础上开发的,在计算机窗口方式下使用的。
7.分部门能源消费需求预测模型法
该模型是为了直接预测在一定经济发展速度以及一定技术进步条件下的能源需求量而建立的。
国外一些学者还做了关于煤炭等能源方面的其他研究。Seung-Hoon Yoo利用时间序列建模技术研究了韩国煤炭消费和经济增长之间的因果关系,结果发现煤炭消费与经济增长之间存在双向因果关系。Kulshreshtha和Parikh利用向量自回归模型研究了印度四个主要耗能部门煤炭需求与价格和收入变量之间的关系。此外还有一部分文献研究了原油需求或其他能源,如汽油需求与价格之间的关系,其中Cooper在Nerlove部分调整模型的基础上建立了一个多元回归模型,利用该模型对23个国家原油需求的短期和长期价格弹性进行了估计,Baltagi和Griffin研究了OECD国家的汽油需求,Garbacz研究了中国台湾地区的汽油需求。较早时期Ramanathan对印度的研究,Bentzen对丹麦的研究,Eltony和Al-Mutairi对科威特的研究,以及近年来Denisard和Rodrigo对巴西的研究都证实汽油需求与宏观经济变量之间存在长期协整关系。
国内学者对煤炭资源相关问题做了研究,取得了较为丰富的成果。郭云涛分析了中国煤炭消费状况、变化特点和当前煤炭需求增长速度迅猛、供应紧张的原因,用能源消费弹性系数法和主要耗能部门测算法预测了国内煤炭需求,并对全国现有和在建煤矿供应能力做了调查分析。李世祥等人建立了中国煤炭需求函数回归模型,并对煤炭需求进行了预测。王立杰选取对煤炭生产消费有直接影响的指标为变量,运用灰色理论,建立煤炭需求量的灰色预测模型。宁云将复合小波神经网络用于煤炭需求预测。李德波、叶旭东等人采用分部门能源消费需求预测法对2010年和2020年的全国煤炭需求进行了预测。
煤炭需求预测的方法还有季节性(周期)变化法、情景分析法、组合预测法以及系统动力学法等。
综上所述,目前国内外学者对煤炭需求预测已经进行了较深入的研究,对本章有很大的启示与帮助。本章在前人的理论基础上,基于BP神经网络在经济学领域中应用的启发,希望从数学、经济学的角度建立预测模型,从而预测煤炭需求。
(四)人工神经网络的发展及研究现状
神经网络的研究始于20世纪40年代初,至今已有半个多世纪的历史。早在20世纪初,人们就已经发现人脑的工作方式与现在的计算机是不同的。人脑是由大量基本单元(称为神经元)经过复杂的相互连接而形成的一种高度复杂的、非线性的、并行处理的信息处理系统。
人工神经网络方法是建立在现代神经科学研究成果基础上的一种抽象的数学模型,它反映了大脑功能的若干基本特征,但并非逼真的描写,只是某种简化、抽象和模拟。人工神经网络的基本思想就是从仿生学角度模拟人脑神经系统的运作方式,使机器具有人脑那样的感知、学习和推理能力。它将控制系统看成是由输入到输出的一个映射特性,从而完成对系统的建模和控制,它使模型和控制的概念更加一般化。人工神经网络是借鉴人脑的结构和特点,通过大量简单处理单元(神经元或节点)互连组成的大规模并行分布式信息处理和非线性动力学系统。它高度综合了计算机科学、信息科学、生物科学、电子学、物理学、医学、数学等众多学科,具有独特的非线性、非凸性、非局域性、非定常性、自适应性和容错性。它还具有巨量并行性、结构可变性、高度非线性、自学习性和自组织性等特点。因此,它能解决常规信息处理方法难以解决或无法解决的问题。理论上讲基于神经网络的控制系统具有一定的学习能力,能够更好地适应环境和系统特性的变化,非常适合于复杂系统的建模和控制,特别是当系统存在不确定性因素时,更体现了神经网络方法的优越性。
从人脑的生理结构出发来研究人的智能行为,模拟人脑信息处理的过程,即人工神经网络的研究,自20世纪40年代以来,它的发展经历了一条由兴起、萧条和兴盛三个阶段构成的曲折道路。
早在1943年心理学家W.McCulloch与数学家W.Pitts在数学生物物理学会刊Bulletin of Mathematical Biophysics上发表文章,总结了生物神经元的一些基本生理特征,给出了形式神经元的数学描述与结构,提出了形式神经元模型(简称MP模型),从此开创了神经科学理论研究的时代。他们的神经元模型假定遵循一种所谓“有或无”(all-or-none)规则。如果如此简单的神经元数目足够多和适当设置突触连接并且同步操作,McCulloch和Pitts证明这样构成的网络原则上可以计算任何可计算函数。这是一个有重大意义的结论,有了它就标志着神经网络和人工智能学科的诞生。
1949年生理学家D.O.Hebb出版了The Organization of Behavior(行为组织学)一书,他在该书中提出了改变神经元连接强度的Hebb规则,至今仍在各种神经网络模型中起着重要的作用。他认为学习过程是在突触上发生的,突触的联系强度随其前后神经元的活动而变化。根据这一假设提出的学习规则为神经网络的学习算法奠定了基础,使神经网络的研究进入了一个重要的发展阶段。20世纪50年代开始对人工智能网络系统进行的研究,是神经网络研究的第一次高潮。
1954年Minsky在Princeton大学撰写了题目为Theory of Neural-Analog Reinforcement Systems and Its Application to the Brain-Model Problem的“神经网络”博士论文。1961年他又发表了早期关于人工智能(AI)的优秀论文Steps toward Artificial Intelligence,此论文的后半部分包含了当今神经网络的大部分内容。1967年Minsky出版了Computation:Finite and Infinite Machines一书,这是第一本以书的形式扩展了McCulloch和Pitts在1943年的研究结果。
1958年,计算机科学家Frank Rosenblatt定义了一个神经网络结构,称为感知器(Perceptron),首次把神经网络理论付诸工程实践。这是第一个真正的人工神经网络。当时,人们对神经网络的研究过于乐观,认为只要将这种神经元互连成一个网络,就可以解决人脑思维的模型问题。
但是,1969年M.Minsky和S.Papert共同发表的Perceptron(感知器)一书,严格论证了简单线性感知器功能的局限性,一度使神经网络的研究处于低潮。书中利用数学证明了单层感知器所能计算的根本局限,提出感知器的处理能力有限,甚至连XOR(异或)这样的问题也不能解决,并在多层感知器的总结中,论述了单层感知器的所有局限性在多层感知器中是不可能被全部克服的。此时人们降低了对神经网络研究的热情,从而使神经网络研究进入了萧条时期。
但在此期间,一些人工神经网络的先驱仍然致力于这一研究,美国波士顿大学的Stephen Grossberg和Gail Carpenter提出了自适应共振理论(ART网),他们提出了一些概念,包括一个兴奋神经元周围的其他神经元被强烈抑制等,都有一定的价值。后来,他们又发展了ART1和ART2,分别针对二进制输入和连续输入的情况。芬兰的T.Kohonen提出了自组织映射网络模型(SOM),K.Fukushima提出了神经认知网络理论,J.Anderson提出了BSB(盒中脑)模型,P.Werbos提出了BP理论,B.widrow发展了Adaline模型。这些为神经网络的进一步研究与发展奠定了理论基础。
在整个低潮时期,很多研究工作是一些生物学家、生理学家和其他研究者进行的。直到1982年,美国加州州立理工学院物理学家John J.Hopfield博士发表了一篇十分重要的文章,提出Hopfield神经网络模型(HNN模型)。Hopfield网络是神经网络发展历史上的一个重要里程碑。Hopfield神经网络属于反馈神经网络,它采用反馈连接,考虑输出与输入在时间上的传输延迟,所表示的是一个动态过程,需要用差分或微分方程来描述,因而Hopfield网络是一种由非线性元件构成的反馈系统,其稳定状态的分析比前向神经网络要复杂。Hopfield证明了在一定条件下网络可达到的稳定状态,他不仅讨论了离散的输出情况而且还讨论了连续变化时的情况,从而可以解出一些联想记忆问题和计算优化问题。因此,Hopfield博士开创了神经网络用于联想记忆和优化计算的新途径,有力地推动了神经网络的发展,点亮了人工神经网络复兴的火炬,引发了神经网络研究的又一次热潮。
1985年,Hinton和Sejnowsky等人提出了Boltzmann模型,首次采用了多层网络的学习算法,在学习中采用统计热力学模拟退火技术,保证整个系统趋于全局稳定点。1986年Remelhart和Mcllelland等人提出了并行分布处理的理论,同时,Werbos和Parker独立发展了多层网络的BP算法,这是目前最普遍的网络,广泛用于实际问题的求解。
中国学术界大约在20世纪80年代中期才开始关注神经网络领域,有一些科学家起到先导的作用,如中科院生物物理所科学家汪云九、姚国正和齐翔林等人;北京大学非线性研究中心在1988年9月发起举办了研讨会Beijing International Workshop on Neural Networks:Learning and Recognition,a Modern Approaeh.INNS秘书长Szu博士在会议期间作了神经网络的一系列讲座。从这时起,中国有些数学家和计算机科学家开始对这一领域产生兴趣,开展了一定的研究工作。
在此后的十余年中,神经网络的理论研究取得了许多重大进展,提出了不少有效的人工神经网络模型计算理论,主要有以下几种:误差反向传播(Error Back Propagation,BP)模型,它是一种广泛应用的网络,用于检测及自控等;B.Kosko提出了双向联想记忆网络,它是最早用于学习的网络;1988年美国加州大学的蔡少堂等人提出了细胞神经网络模型,与一般神经网络一样,它是一个大规模非线性模拟系统,同时又具有细胞自动机的动力学特性。进入20世纪90年代后,神经网络的研究热潮仍然高涨,各种模型和算法纷纷出台,其中比较著名的是CNN网络,这是L.O.Chua等人在Hopfield网络的基础上发展的局部连接网络,这种网络在视觉初级加工上得到广泛的应用。此外,神经元模拟软件和神经元芯片也不断提出。同时,伴随着神经元网络的发展还出现了一些边缘学科,如计算神经元、信息论和计算机科学等。
神经网络的发展已到了一个新时期,它涉及的范围正在不断扩大,其应用渗透到各个领域。在连接主义模式下,进化与学习结合的思想正在迅速发展,神经计算、进化计算正成为其发展的一个重要方向。1994年廖晓昕对细胞神经网络建立了新的数学理论与基础,得出了一系列结果,如平衡态的全局稳定性、区域稳定性、周期解的存在性和吸引性等,使该领域取得了新的进展。P.Werbos通过混沌、独立子系统的数学技术来理解人的认知过程,建立新的神经信息处理模型和框架。日本学者Amari.S将微分流形和信息集合应用于人工神经网络的研究,探索系统化的新的神经信息处理理论基础,为人工神经网络的理论研究开辟了一条崭新的途径。神经网络理论有极强的数学性质和生物学特征,尤其是在神经科学、心理学和认识科学等方面提出了一些重大问题,是向神经网络理论研究的新挑战,也是它发展的机会。21世纪神经网络理论日益变得更加外向,不断产生具有重要意义的概念和方法,推进神经网络向更高阶段发展。
如今,神经网络的应用已渗透到模式识别、图像处理、非线性优化、语音处理、自然语言理解、自动目标识别、机器人、专家系统等各个领域,并取得了令人瞩目的成果。神经网络理论业已成为涉及神经生理科学、认识科学、数理科学、心理学、信息科学、计算机科学、微电子学、光学、生物电子学等多学科的新兴的、综合性的前沿学科。
从众多应用研究领域取得的丰硕成果来看,人工神经网络的发展具有强大的生命力。当前存在的问题是智能水平还不高,许多应用方面的要求还不能得到很好的满足;网络分析与综合的一些理论性问题(如稳定性、收敛性的分析,网络的结构综合等)还未得到很好的解决。随着人们对大脑信息处理机理认知的深化,以及人工神经网络智能水平的提高,人工神经网络必将在科学技术领域发挥更大的作用。
在神经网络的实际应用中,80%~90%的神经网络模型都采用BP网络及其变化形式。BP网络采用误差反向传播算法(Error-Back-Propagation),是神经网络中最有效、最活跃的一种方法。对于经济类数据进行分析与建模一直是一个比较棘手的问题。由于数据受多方面人为因素、自然因素的影响,导致这些数据具有极大的非规律性与随机性,利用其进行分析与统计往往比较困难,为非常规方法能够解决的问题。通过前人的研究与分析,已初步确定了影响煤炭需求的因素,从中可以发现:各影响因素同样具有以上特点。所以,必须找到一种切实有效而又能准确统计、分析数据,最终能够得到因素之间的相互关系,建立预测模型的算法。而神经网络是一种适宜处理具有残缺结构和能够分析含有错误成分的算法,它能够在信息含糊、不确定、不完整、存在矛盾及假象等复杂环境中处理分析数据;并且神经网络所具有的自学能力,使得传统数学算法应用最为困难的有效数据获取工作,能转换为网络的结构调节过程,从而大大方便了各种不同应用对象的建模与分析,进而可以对一些复杂问题作出合理的判断决策以及有效的预测和估计。BP神经网络是非线性的前馈式网络,具有很好的非线性映射能力。理论已证明,只要有足够的隐含层和隐含层节点数,BP神经网络可以逼近任意的非线性映射关系,且不需要建立数学解析式模型。它主要是根据所提供的原始数据,通过训练和学习,找出输入和输出之间的内在联系,从而求得问题的解答,而不是依靠对问题的先验知识和规则,所以具有很好的适应性。因此本章选用BP神经网络来建立煤炭需求预测模型。
经过近20年的完善与发展,迄今为止,人工神经网络的模型已有数十种之多。其中最常用的网络模型为BP神经网络。BP神经网络采用的是Back-Propagation(反向传播算法),它是为了解决多层前向神经网络的权系数优化而提出来的,所以,BP算法也通常暗示着神经网络的拓扑结构是一种无反馈的多层前向网络。故而,有时也称为无反馈多层前向网络。这一算法是D.Rumelhart等人于1986年在PDP(并行分布处理)理论中提出的。其结构是多层前馈网络,它的算法称为误差反向传播算法,简称BP算法。这种算法可以对网络中各层的权系数进行修正,故适用于多层网络的学习。BP算法是目前应用最广泛的神经网络学习算法之一,是自动控制中最有用的学习算法。
(一)人工神经网络的一般原理
1.神经网络构成的基本原理
(1)人工神经元模式。神经网络是由大量简单处理单元组成,通过可变权值连接而成的并行分布式系统。神经元是人工神经网络的基本处理单元,它是一个多输入—单输出的非线性器件,其结构如图1-2所示。
图1-2 神经元的一般描述
在图1-2中,Xi为输入信号;ωij表示从第i个神经元到第j个神经元的连接权值;θj为第j个神经元的阈值。设sj为外部输入信号,yj为输出信号,在上述模型中第j个神经元的变换可描述为:
这里采用的非线性函数f(x)可以是阶跃函数、分段函数及Sigmoid型函数。
(2)连接权值。人工神经网络的处理单元间相互连接,所有的连接构成一个有向图。每一个连接对应于一个实数,称为连接权值,或称为权重。权值的集合可看做是长期记忆。可以用权矩阵W来表示网络中的连接模式,W中的元素是wij。连接权值的类型一般分为激发和抑制形式,正的权值表示激发连接;相反,负的权值表示抑制连接。权值的连接方式是人工神经网络的特征描述。
(3)神经网络状态。在时刻t,每一个神经元都有一个实数值,称为神经元状态,也叫做神经元的激励值,用Xi表示神经元uj的状态,用X(t)表示神经网络的状态空间。在各种不同的神经网络类型中,状态空间可以作各种不同的假设。状态空间可能是连续的,也可能是离散的;可能是有界的,也可能是无界的;可能在一个实数区间上取值,也可能取有限值;最常见的情形是取二值,即0和1两种状态,或-1和1两种状态,亦或是取连续实数值。
(4)神经网络的输出。对于每一个神经元都有一个输出,并通过连接权值将输出传送给其相连的处理单元,输出信号直接依赖于处理单元的状态或激励值。这种依赖性通过输出变换函数fi对应处理单元uj的作用来表示。假如用Zj(t)来定义t时刻神经元uj的输出,那么:
或写成向量的形式:
这里,Z(t)是神经网络的输出向量,f定义为状态向量与每一个分量的对应函数。一般是在区间(0,1)上的有界函数。
按人工神经网络模型的网络性能分类,可以分成确定性的、随机性的、连续型的和离散型的网络。
2.神经网络结构及工作方式
除单元特性外,网络的拓扑结构也是神经网络(Neural Network)的一个重要特性,按网络的拓扑结构分类,人工神经网络可分成三类:
(1)相互连接的网络。其中任意神经元之间都可能有连接,信息在神经元之间可以反复传递,造成网络状态的不断变化。系统整体从某一初始状态开始,经过不断的变化过程,最后进入某一平衡状态、周期振荡或其他状态。
(2)分层前馈型网络。其神经元分层排列,分为输入层、隐含层和输出层。各神经元接收前一层的输入,并输出给下一层,没有反馈(见图1-3)。节点分为两类:输入单元和计算单元,每一计算单元可有任意多个输入,但只有一个输出(它可以耦合到任意多个其他节点作为其输入)。前馈型网络可分为不同的层,每一层的神经元只接收前一层神经元的输入,输入层接收外界的输入模式。输入模式经过各层神经元的响应处理变为输出层的输出。最常用的前馈神经网络就是BP神经网络(Backpropagation Neural Network)和RBF径向基函数网络(Radial Basis Function Neural Network)。
图1-3 具有一个隐层的前馈型网络
(3)反馈型网络。如图1-4所示,该网络是在分层前馈型网络基础上,将网络的输出反馈到网络的输入,反馈可以将全部输出反馈,也可以将部分输出反馈。
图1-4 单层全连接反馈型网络
所有节点都是计算单元,同时也可接收输入,并向外界输出。最典型的反馈神经网络就是Hopfield神经网络。从作用效果来看,前馈型网络主要是函数映射,可用于模式识别和函数逼近。按对能量函数的所有极小点的利用情况,可将反馈型网络分为两类:一类是能量函数的所有极小点都起作用,主要用做各种联想存储器;另一类只利用全局极小点,它主要用于求解优化问题。
3.神经网络的学习方法
一个神经网络仅仅具有拓扑结构还不能称为具有智能特性,必须有一套完整的学习、工作规则与之配合。人工神经网络的工作过程可分为以下两个阶段:第一个阶段是学习期,此时各计算单元状态不变,各连线上的权值通过学习来修改;第二阶段是工作期,此时各连接权固定,计算单元状态变化以达到某种稳定状态。
BP神经网络中信息处理、传递是由网络结构的连接权实现的,而连接权值的大小则是通过在一定拓扑结构固定的条件下,遵循一定的原则、按照一定的方式、应用一定的学习算法训练得到的。
通过向环境学习获取知识并改进自身性能是神经网络的一个重要特点。在一般情况下,性能的改善是按某种预定的度量通过调节自身参数(如权值)随时间逐步达到的。对神经网络学习算法的研究是神经网络研究中最核心的部分。对于不同结构的神经网络,人们研究出许多的学习算法和它们相对应。
神经网络的学习过程一般来说就是对神经网络权值调整的过程,数据网络能够根据样本模式逐渐调整权值,使得神经网络具有卓越的学习、记忆和处理信息的能力。
神经网络的学习方法有两大类:有导师学习和无导师学习。对于有导师学习,神经网络的输出和希望的输出进行比较,然后根据两者之间的差的函数(如差的平方和)来调整网络的权值,最终使其函数达到最小。对于无导师学习,当输入的样本模式进入神经网络后,网络按照预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。
神经网络学习算法中最著名的是针对BP网络的误差反向传播学习算法,也就是梯度算法。它属于有导师学习,其原理就是从误差平方和对网络权值的梯度方向来修改网络的权值,从而使BP网络较快达到所希望的学习效果。当然,BP网络的梯度算法还存在一些问题,如易陷入局部极小点和收敛速度慢等。因此,人们对梯度算法的改进方案研究也成为热点问题。
4.几种典型的神经网络
神经元的激活函数不同、拓扑结构不同、网络的学习算法、构成神经网络的方式不同,则神经网络对信息处理的方法和能力亦不同。下面介绍几种典型的神经网络。
(1)多层前向神经网络(Multilayer Feedforward Neural Network,MFNN)。这是目前应用较多的一种神经网络结构。它由输入层、若干隐含层、输出层构成,各层神经元之间无连接。神经元以不同的非减函数,如Sig-moid函数、反正切函数、双曲函数等为激活函数。
多层前向神经网络结构如图1-5所示。
图1-5 多层前向神经网络结构图
多层前向神经网络本质上是一种多输入、多输出的非线性映射。Cybenko (1988,1989),Funahashi(1989),Hechet Niesen(1989),Carroll和Dickinson(1989)等学者均对MFNN具有以连续函数的逼近能力予以系统的证明。其结论是,在一个相当宽的范围内,MFNN具有以任意精度逼近任意非线性连续函数的能力。在Funahashi(1989)的证明中,隐节点函数限定为有界单调递增连续函数。Hornik等人(1989)和陈天平发现,有界性是必要的,单调递增的限制条件并非必要。他们对网络的泛化机制和改进措施进行了系统的分析,指出最简单拓扑结构不仅有利于硬件的实现,也有利于网络泛化功能的改善,证明了MFNN仅用一个隐含层就可以逼近任意连续的非线性函数。MFNN的这一特点使其在信号处理、非线性优化及系统辨识、非线性控制等领域具有广泛的应用前景。
(2)径向基函数网络。这是一种特殊的神经网络,它是由Moody和Darken(1988,1989)基于大脑皮层中存在局部、重叠的感受域这一特性提出的。RBFNN网络与MFNN网络在结构上十分相似。RBFNN实际上可以看做只有一个隐层的MFNN,其主要区别是RBFNN的激活函数为径向基函数。
输出的RBFNN网络模型为:
式中:wi为第i个隐节点与输出节点之间的连接权;ci为第i个隐节点的中心;σi为感受域(敏感域)。
同MFNN一样,理论上RBFNN网络也具有广泛的非线性适应能力。
(3)Hopfield神经网络(Hopfield Neural Network,HNN)。这是美国物理学家J.J.Hopfield于1982年首先提出的,它主要用于模拟生物神经网络的记忆机理。Hopfield神经网络是一种全连接型的神经网络,对于每一个神经元来说,自己的输出信号通过其他神经元又反馈到自己,所以它是一种反馈型神经网络。
Hopfield神经网络有离散型(DHNN)和连续型(CHNN)两种。
Hopfield神经网络状态的演变过程是一个非线性动力学系统,可以用一组非线性差分方程(对于DHNN)或微分方程(对于CHNN)来描述。系统的稳定性可用所谓的“能量函数”(即李雅普诺夫或哈密顿函数)进行分析。在满足一定条件下,某种“能量函数”的能量在网络运行过程中不断减小,最后趋于稳定的平衡状态。
目前,人工神经网络常利用渐进稳定点来解决某些问题。如果把系统的稳定点视为一个记忆的话,那么从初态朝这个稳定点的演变过程就是寻找该记忆的过程。初态可以认为是给定的有关该记忆的部分信息,这就是联想记忆的过程。如果把系统的稳定点视为一个能量函数的极小点,而把能量函数视为一个求解该优化问题的过程。由此可见,Hopfield网络的演变过程是一种计算联想记忆或求解优化问题的过程。实际上它的解并不需要真的去计算,而只要构成这种反馈神经网络,适当地设计其连接权和输入就可以达到这个目的。
(4)小波神经网络(Wavelet Neural Network,WNN)。由Zhang等人最先提出的小波神经网络,是以近年来出现的小波分析为理论依据,是小波变换的一种实现方式。小波神经网络实际上是一种局部基函数网络,结构与RBFNN网络相类似,所不同的是它的基函数是由小波函数按分辨尺度伸缩与空间位置平移构成的。所谓小波函数,就是由基函数Ψ∈L2经平移、伸缩形成的一簇函数,表示为:
式中:a、b分别表示伸缩、平移系数。
其输出:
式中:X=(x1,…,xj,…)为输入向量;ai、bi为第i个输入所对应的伸缩、平移参数。
目前,人工神经网络正处于由简单的并行处理模型机制的研究到对其变换能力、变化机理进行深入的和严格意义上的数学理论分析的研究,许多学者正在对神经网络结构的整体能力和限制进行深入的理论分析与探讨。
(二)BP神经网络的基本原理
BP神经网络采用Widrow-Hoff d学习规则(误差校正学习算法),也称最小均方差算法(Least Mean Square,LMS),可用于非线性神经元的学习过程,是一种单向传播的多层前向神经网络,全称为误差反向传播模型。BP神经网络由若干层神经元组成,除了有输入层和输出层外,还有一层或多层隐含层,同层节点间无任何联结,每个节点都是单个神经元,神经元的激活函数通常为Sigmoid型函数。由于同层节点间无任何耦合,因此,每一层的神经元只接收前一层神经元的输入,每一层神经元的输出只影响下一层神经元的输出。
BP神经网路由输入层、隐含层和输出层构成,每层由许多并行运算的简单神经元组成,这些神经元类似于生物神经系统的神经元,网络层与层之间的神经元采用全互联方式,同层神经元之间无相互联结,虽然单个神经元的结构简单,功能有限,但大量神经元构成的网络系统所能实现的功能却是极其丰富的。
BP神经网络的输入节点和输出节点是由问题本身决定的,关键在于隐含层的层数和隐含层节点数的确定。对BP神经网络的优化就包含了隐含层层数和节点数的选择。隐含层处于输入层与输出层之间,作为输入模式的内部表示,即对一类输入模式中所含的区别于其他类别的输入模式的特征进行抽取,并将抽出的特征传递给输出层,由输出层对输入模式的类别作最后的判别。因此,把隐含层称为特征抽取层。这一特征抽取的过程,实际上也就是对输入层与隐含层之间权值进行“自组织化”的过程。在网络的训练过程中,各层之间的权值起着“传递特征”的作用。各权值从初始的随机值逐渐演变,最终达到能够表征输入模式特征的过程,就是“自组织化过程”。
BP神经网络通常是指基于误差反向传播算法(BP算法)的多层前向神经网络,采用有导师训练方式。多层前向神经网络具有如下特点:①能够以任意精度逼近任何非线性映射,给复杂系统的建模带来了一种新的非线性的表达工具;②能够同时处理定量知识和定性知识,能以模式信息表示系统的知识,并以事例为基础进行学习推理;③它可以学习和自适应未知信息,如果系统发生了变化可通过修改网络的联结值而改变控制效果;④分布式信息存储与处理结构具有一定的容错性,因而构造出来的系统可以具有相当好的鲁棒性;⑤多输入多输出的结构模型,可方便地用于多变量控制系统,由于具有分布特性,所以多层神经网络的系统特别适合处理比较复杂的问题。因此BP神经网络是目前应用最广泛的神经网络模型。其基本的运算原理是:通过它的学习规则即通过反向传播(BP)来调整网络的权值和阈值使网络误差的平方和最小,这是通过最速下降法不断调整网络的权值和阈值来实现的。BP神经网络具有强大的非线性映射能力和泛化功能,任一连续函数或映射均可采用三层网络加以实现。
BP网络的学习规则是按照有导师示教的方式进行学习的,即通过P个实际的映照对(X1,Y1),(X2,Y2),…,(Xp,Yp)提供给网络后,神经元的激活值从输入层经隐含层向输出层传播,在输出层的各神经元获得输出值。之后,按减少希望输出与实际输出误差的方向,逆传回去,从输出层经各隐含层逐层修正各连接权值和阈值,最后回到输入层。随着这种误差反向传输修正的不断进行,网络对P个实际的映照对(X1,Y1),(X2,Y2),…,(Xp,Yp)响应的正确率不断上升,直到映照获得成功(即网络的全局误差小于预先给定的允许误差)。训练后得到的连接权,对其他不属于P1=1,2,…,p的子集进行测试,其结果仍能满足正确映射。这就是BP网络可以对未知样本进行预测的原因。
BP神经网络的学习过程可分为两个阶段:第一阶段为前向传播阶段(或称为正向传播过程),即给出输入信息通过输入层经隐含层处理并计算每个单元的实际输出值;第二阶段为误差反向传播阶段(或称为反向传播过程),若在输出层未得到期望的输出值,则逐层递归地计算实际输出与期望输出之间的差值(即误差),以便根据此误差值调节权值,即对每一权重计算出接收单元的误差值与发送单元的激活值的积。BP算法认为,网络中所有单元都对输出误差有着或大或小的“责任”,这种对误差所负的责任由输出层开始经各连接逆向传播,直到输入层为止。在这个过程中,逐层修改各节点(单元)的阈值以及相邻层单元之间的权值。
BP神经网络的结构图如图1-6所示。
BP神经网络不仅有输入层节点,输出层节点,而且有一层或多层隐含节点。对于输入信息,首先向前传播到隐含层的节点上,经过各单元的激活函数(又称作用函数、转换函数)运算后,把隐含节点的输出信息传播到输出节点,最后给出输出结果。
网络的学习过程由正向传播和反向传播两部分组成。在正向传播过程中,每一层神经元的状态只影响下一层神经元网络。如果输出层不能得到期望输出,就是实际输出值与期望输出值之间有误差,那么转向反向传播过程,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次地向输入层传播去进行计算,再经过正向传播过程,这两个过程的反复运用,使得误差信号最小。实际上,误差达到人们所希望的要求时,网络的学习过程就结束了。
图1-6 BP神经网络结构图
为了清楚起见,规定相关的符号及意义见表1-2。
表1-2 符号及含义
(三)标准的BP算法
BP算法的目的是使网络输出层节点的输出与其对应的期望值相等或在一定范围内接近。当网络结构固定后,只能通过调整网络的权值来使网络输出值与期望值的误差减小。BP算法是采用梯度下降法调整权值,其学习过程由正向传播和反向传播组成。在正向传播过程,输入信号从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转入反向传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的连接权值,使得误差信号减小,如此反复,直到达到误差要求。
BP算法的神经元所用的传递函数必须是处处可导的,均采用S型函数,选用S型函数作为BP网络的输出函数,其原因是[4]:S型函数输出曲线两端平坦,中间部分变化激烈。从形式上看具有“柔软性”;从生理学角度看,一个人对远远低于或高于他智力和知识水平的问题,往往很难产生强烈的思维反应;从数学角度看,S型函数具有可微分性。正是因为S型函数更接近于生物神经元的信号输出形式,所以选用S型函数作为BP网络的输出函数。同时BP算法本身也要求网络的输入输出函数是可微分的,S型函数不但具有可微分性,而且具有饱和非线性特征,这又增强了网络的非线性映射能力。S函数的一个重要特征是:其导数可用它的自身来表示。它的导数为:
一般使用Sigmoid函数,包括log-sigmoid函数和tan-sigmoid函数,能将(-∞,+∞)的输入分别映射到区间(0,1)和(-1,+1)中。
传统BP神经网络的log-sigmoid函数和tan-sigmoid函数分别为:
log-sigmoid函数和tan-sigmoid函数的图像分别如图1-7和图1-8所示。
图1-7 log-sigmoid函数
图1-8 tan-sigmoid函数
当Sigmoid函数的输入落在区间(-0.6,0.6)中时,输出的变化率就非常小。具体采用哪一种转换函数,要根据输入/输出关系而定。当输出值不含有负值时,采用log-sigmoid函数;当输出值含有负值时,采用tan-sigmoid函数。这些转换函数反映了单个神经元的响应特性,即输入/输出关系。人工神经网络的非线性映射能力正是来源于此。
在学习过程中,误差函数(在训练过程中称为训练误差)E定义为输出层节点j的期望输出与实际输出的均方误差,即:
式中:Tj为输出层节点j的期望输出;Outj为输出层节点j的实际输出。
在网络训练时,要随时修改节点间的权值,使:
式中:Wji(t)为当前时刻的连接权值;Wji(t-1)为前一时刻的连接权值;ΔWji为权值Wji(t)的修正量,定义为:
式中:En为第n层神经元总的输出误差;参数η是一个小于l的调节系数,称为学习速率(Learning Rate),通过它来控制权值下降的速度。
经推导可得[5]:
式(1.13)就是δ学习规则。其中Outni是当前层节点i的输出信号,它要传送给节点j,在BP算法的反向传播过程中,关键是要解决误差信号δnj的求解问题。误差信号δnj的计算分为两种情况:输出层和隐含层。
对于输出层:
对于隐含层:
将式(1.13)和式(1.14)代入式(1.12)中,得到输出层和隐含层的权修正计算公式为:
对于输出层:
对于隐含层:
从权修正计算公式可以看出权值的变化与传递函数的导数成正比,这说明传递函数的导数越大的节点,其连接权越需要调整。
当传递函数F(·)采用Sigmoid函数时,其导数形式为:
又因为F(Netnj)=Outnj,则有:
由上可知,不同层δ的含义不同,网络第n层的δ可以由第n+1层的δ值求出,将误差信号δ逐层向前传播。误差反向传播算法(BP算法)也正是由此而得名。
标准的BP算法的程序框图如图1-9所示。
图1-9 标准BP算法的程序框图
(四)BP神经网络存在的问题
BP神经网络是一种前馈型网络。它仅提供许多具有简单处理能力的神经元的复合作用,使网络具有复杂的非线性映射能力而没有反馈,因此它不属于一个非线性动力学系统,而只是一个非线性映射。网络是根据Widrow-Hoff规则,使用优化中的最普通的梯度下降算法,对问题的识别具有很强的功能,对于复杂的非线性模型仿真从理论上来说其误差可以达到任意小的程度。由于其理论上的完整性和应用的广泛性,BP神经网络具有重要的意义,但是它仍然存在一些缺点。
(1)传统BP网络既然是一个非线性优化问题,这就不可避免地存在局部极小问题,即不能保证收敛到全局最小点。从数学观点看来,误差反向传播采用梯度下降法,其学习过程是一个非线性优化过程,所以不可避免地会遇到优化过程中最常见的局部极小问题。网络的极值通过沿局部改善的方向一小步一小步进行调整,力图达到使误差函数E最小化的全局解,但实际上常得到的是局部极小值。对于复杂的网络,其误差函数为多维空间的曲面,就像一个碗,其碗底是最小值。但是这个碗的表面是凹凸不平的,因而在对其训练过程中,可能陷入某一小谷区,而这一小谷区产生的是一个局部极小值,由此点向各方向变化均使误差增加,以致使训练无法逃出这一局部极小值,如图1-10所示。
图1-10 局部极小值图
(2)BP算法的收敛速度很慢,可能会浪费大量的时间。有时一个十分简单的问题,往往也要学习几百次甚至上千万次才有可能收敛。在学习过程中,迭代算法次数很多,学习速度慢,易出现一个长时间的误差平坦区,即出现平台。
导致BP算法学习过程收敛速度慢的原因主要有以下两个方面:
①固定的学习率η和惯性因子α。BP算法本质上是优化计算中的梯度下降法,利用误差对权值、阈值的一阶导数信息来指导下一步的权值调节方向,以求达到最终误差最小。BP算法中网络参数每次调节的幅度均以一个与网络误差函数或其对权值导数大小成正比的固定学习率η进行。这样在误差曲面较平坦处,由于这一偏导数值较小,因而权值参数的调节幅度也较小,以致需要经过多次调整才能将误差函数曲面降低;而在误差曲面较高曲率处,偏导数较大,权值参数调节的幅度也较大,以致误差函数最小点附近发生过冲现象,使权值调节路径变为锯齿形,难以收敛到最小点,导致BP算法收敛速度慢。为保证算法的收敛性,学习率必须小于某一上限。这就决定了BP算法的收敛速度不可能很快。而且越接近极小值,由于梯度变化值逐渐趋于零,算法的收敛就越来越慢。
②学习过程中的“假饱和”现象。所谓“假饱和”现象,是指在学习过程中误差在一定的时间范围内,并不随学习次数的增加而减小,而过了这段时间以后,误差才明显下降的现象。学习一旦进入“假饱和”状态,需要较长的时间才能摆脱这种状态。“假饱和”或“平台”现象的产生不仅与神经元的总输入有关,而且与神经元的作用函数直接相关。因为导致“平台”现象的最直接的原因是神经元作用函数的导数值很小,使权值修改量很小。显然,如果能在神经元的总输入偏离阈值较远时,改变神经元作用函数的斜率,使其增大,发生“平台”现象的可能就会大大降低。
(3)用BP算法所得到的网络性能较差,网络结构选择不一。网络过大,在训练中效率不高,而且还会由于过拟合造成网络性能脆弱,容错性下降,浮点溢出,而太小的网络可能根本不收敛。在实际应用中,网络结构人为性较大,缺乏规则指导。
(4)隐含层的层数和隐单元的个数的选取至今尚没有一个统一的规律,在许多实际应用中基本上是采用试凑法和一些经验公式。
(5)BP网络的学习,记忆具有不稳定性。一个训练结束的BP网络,当给它提供新的输入模式时,将破坏已有的用于记忆的连接权矩阵,从而导致已经记忆的学习模式的信息(通过学习已具备的能力)完全消失。这种现象是目前的算法所固有的,是必然的,是无法避免的。此时,必须将原有的学习模式与新加入的学习模式放在一起重新训练网络。
多年来,研究人员针对以上问题提出了大量的算法改进方案,如改进激活函数、改进误差函数、修改一般化误差、动量法、改进的最速下降法(自适应学习算法)、改进的共轭梯度法、随机迭代法、随机搜索算法、模拟退火算法和遗传算法、通过局部极小判别式判断网络是否陷入局部极小值等。
针对BP神经网络存在的问题,需要对其做必要的改进,以加快收敛速度,达到最优化。本章将其放在第四节中,针对具体要解决的煤炭需求预测问题,结合仿真进行阐述。
(一)煤炭资源在中国能源消费结构中的地位
对中国而言,煤炭一直是主要的一次能源。在未来相当长的一段时间内,煤炭作为中国主要的能源消费形式不会改变。中国经济强劲的发展势头以及重工业化、城市化的进程也会进一步拉动煤炭需求的上升,因此,对中国煤炭需求进行预测对整个中国经济来说至关重要,同时,它也能对能源战略的制定、环境质量的评估预测起到参考作用。
煤炭是世界上储量最多、分布最广的常规能源。20世纪90年代以来,世界煤炭产量在44亿~48亿吨,在世界一次性能源生产和消费总量中约占30%,是世界经济发展的重要动力支柱。据统计,当前煤炭衍生物可生产2.5万种工业产品,钢铁、电力、化工及民用工业都离不开煤炭的支持。作为世界上最大的发展中国家,能源问题一直是中国国民经济和社会发展中的热点和难点。
新中国成立60年来,尽管能源消费结构发生了重大变化,但是煤炭始终是中国的主要能源。在一次性能源中,中国目前已经形成了以煤为主,以石油、天然气、一次电力(水电、核电、新能源发电)等多能互补的能源生产体系。从能源系统自身构成要素上看,由不同形式能源的储量、探明状况、开采条件等所决定,在中国能源生产和消费中煤炭都占绝对主导地位。专家预测,在21世纪前30年内,煤炭在中国一次能源构成中仍将占主体地位。煤炭是中国目前最安全、最经济、最可靠的能源。随着高新技术的推广应用,煤炭生产成本正在并将继续降低;洁净煤技术已取得重大突破,这都将使煤炭成为廉价、洁净、可靠的能源。目前,世界石油价格居高不下,煤炭的成本优势更加明显。据预测,到2020年中国石油供需缺口将更大,全靠进口不仅需要动用大笔外汇,而且受制于人,加大能源安全供应的隐患。从这个意义上讲,煤炭在未来中国国民经济中的地位将更为重要。另外,新能源在相当长的时期内还无法成为中国能源的主力军。以太阳能、核能为代表的新能源在能源结构中所占比重还非常低,走向规模化、产业化还需较长时间,目前在很大程度上还属小规模试营。从这个角度讲煤炭作为传统能源在相当长的一段时间内仍将占据能源消费的主流。
20世纪50年代,煤炭在能源结构中所占的比例大于90%;20世纪60年代以后,由于发现和开发新的石油基地,石油在能源消费结构中的比重上升,到1980年达到了20.76%,但是煤炭在能源消费结构中仍然占到72.15%。而其他资源,如石油和天然气等,很多都需要进口,对外依存度很高。
从世界范围内看,煤炭能源的消耗量占总能源消耗的比例近年下降很快,从1950年的57.7%下降到2002年的25.49%。我国1953年为94.33%,到2008年,一次能源消费中,煤炭下降为70.2%,但仍然占着相当大的比例。近20多年来,煤炭在能源消费结构中一直持续在70%左右,具体见表1-3与图1-11。这足以说明煤炭对中国经济的发展有着举足轻重的作用。
表1-3 能源消费总量及构成
续表
图1-11 1978~2007年中国能源消费结构图[6]
煤炭在中国一次能源生产和消费结构中一直占主导地位。1949~2003年生产原煤355亿吨,消费商品煤345亿吨;1980~2003年,生产原煤268亿吨,消费商品煤261亿吨[7],为国民经济持续快速发展提供了保障。从中国一次能源生产、消费结构变化分析,煤炭在能源生产、消费结构中共发生了四次明显的阶段性变化。
第一阶段为1949~1976年的稳定下降阶段。由于中国石油资源的开发取得了突破性进展,尤其是20世纪60年代以后,石油生产和消费比例逐年上升,煤炭所占比例一直处于下降时期,煤炭产量比例由1949年的96.29%,下降到1976年的68.5%,达到历史最低点,消费比例由1953年的94.31%下降到69.9%。同期,石油生产比例由0.72%上升到24.7%,达到历史最高点,消费比例由1953年的3.79%上升到23.0%,仅次于石油消费比例的历史最高点23.8%(2000年)。这期间煤炭与石油在能源生产、消费结构中互为消长关系。
第二阶段为1977~1996年的稳定上升阶段。1996年的煤炭产量与消费量所占比例分别达到75.2%和71.5%,比1976年分别上升了6.7和4.8个百分点;同期,石油产量与消费量所占比例分别为17%和18%,比1976年分别下降了7.7和5个百分点。
第三阶段为1997~2000年的快速下降阶段。2000年煤炭产量与消费量所占比例分别为72.3%和67.3%,下降了2.9和4.2个百分点。同期,石油产量与消费量所占比例分别为18.1%和23.8%,上升了1.1和5.8个百分点。
第四阶段为2001~2008年的快速上升阶段。1998年以来煤炭产量与消费量持续增长,尤其是2001年以来,煤炭产量、消费量快速增长,2006年的煤炭产量比2001年增长了10亿吨左右,煤炭消费量也增长了10亿吨左右。
综上分析,结合中国富煤、少气、贫油的能源资源赋存特点,在未来相当时间内,中国煤炭在一次能源生产和消费结构中仍将居主导地位。
(二)中国煤炭资源的现状特点
1.中国煤炭资源总量丰富但有效供给能力不足,且人均占有量少
中国国土面积为960万km2,含煤面积为55万km2,煤炭资源总储量为5.06万亿吨,其中埋深小于1000米的煤炭地质储量为2.60万亿吨。2000年底,煤炭探明保有储量10077亿吨,其中经济可采储量为1145亿吨,占世界经济可采储量的11.62%,仅次于美国和俄罗斯,位居世界第三(见表1-4)。
表1-4 2000年世界煤炭经济可采储量排名前十位的国家
据统计,2000年以前全国统配煤矿有精查储量保证的仅占总规划能力的47.8%,尚无精查储量保证的为52.2%;2001~2020年有精查储量保证的仅占总规划能力的21.3%,尚无精查储量保证的为78.7%;国营地方煤矿的精查储量保证程度更低,分别为54%和18.3%。如果进一步考虑到矿井生产能力的增长、矿井的合理服务年限要求、储量备用系数及矿井的现实回采率等指标计算,全国统配煤矿的实际服务年限平均为35~38年,地方煤矿仅28~30年。因此可供建井利用的后备精查储量的严重不足,将导致今后一段时间内煤炭增产与矿井接替的紧张状况。
2003年,国土资源部公布了按照与国际惯例接轨的国家标准对中国《煤炭储量表》进行套改的结果。套改后,全国共有煤炭资源矿区6019个,查明全国煤炭资源储量为9970.82亿吨,其中煤炭基础储量3468.80亿吨(含煤炭储量2040.35亿吨),煤炭资源量6505.02亿吨。从以上总量数据看,中国煤炭资源相对丰富,占世界煤炭资源量的11%,居世界第三位。中国人均能源消费和储量大大低于世界人均水平。据统计,1980年,中国人均能源量相当于世界人均水平的30%,1994年上升为46%,而美国1994年人均能源消费量相当于世界人均水平的5.46倍,日本相当于2.69倍,高收入国家相当于3.45倍,中等收入国家在1倍左右。但是,由于中国的人口数量多,中国人均查明的煤炭储量仅为770吨,为世界平均水平的一半。而中国人均原煤储量相当于世界人均水平的45%。所以,中国煤炭资源相对丰富,而人均占有量少。
2.煤炭资源在空间与种类上赋存不平衡
中国煤炭资源在地理分布上表现极不均衡,具有东少西多、南少北多的特点。在中国31个省(市、自治区)中,除了上海市以外,其他地区均有煤炭储量。在全国2220个县中,大约有60%的县有煤炭资源。北方17个省(市、自治区)的煤炭资源储量占到了全国的93.5%,南方的14个省(市、自治区)的煤炭资源储量只占到全国的6.5%;西部煤炭资源储量占全国的43%,东部仅占15%(见表1-5)。
表1-5 中国煤炭资源地区分布 单位:%
中国煤炭资源大部分分布在西北地区,其中晋、陕、蒙三省(区)的预测煤炭资源量为2.18万亿吨,占全国煤炭资源总量的83.9%,是中国煤炭资源最为集中的地区。中国煤炭资源的几个重要的分布区表现为南北、东西分带,昆仑山—秦岭—大别山一线以北的北方地区,已发现煤炭资源占全国的90.3%(包括东北三省和内蒙古东部地区),而北方地区的煤炭资源又主要集中在太行山—贺兰山之间的地区,占北方地区的65%左右,形成了包括山西、陕西、宁夏、河南及内蒙古中南部的富煤地区(华北富煤区的中部和西部)。新疆占北方地区已发现资源的12.4%,为中国又一个重要的富煤地区(西北富煤区的西部),秦岭—大别山一线以南的中国南方地区,已发现资源只占全国的9.6%,而其中的90.4%集中在川、贵、云三省(区),形成以贵州西部、四川南部和云南东部为主的富煤地区(华南富煤区的西部)。在东西分带上,大兴安岭—太行山—雪峰山一线以西地区,已发现资源占全国的89%,而该线以东仅占全国的11%。煤炭种类在数量和分布表现为极不平衡。除褐煤占已发现资源的12.7%以外,在硬煤中,低变质烟煤所占的比例为总量的42.4%,贫煤和无烟煤占17.3%,而中变质烟煤,即传统上称为“炼焦用煤”的数量却较少,只占27.6%,而且大多为气煤,占中变质烟煤的46.9%,肥煤、焦煤和瘦煤则较少,分别占中变质烟煤的13.6%、24.3%和15.1%。(www.xing528.com)
3.煤炭资源回采率、利用率低,资源破坏严重
中国煤炭资源的回采率、利用率均很低,煤矿点多面广,资源破坏严重。全国煤炭平均回采率在30%左右,其中小型煤矿回采率一般为10%~15%,一些大中型矿井资源回采率也不高。某些煤炭企业为了追求企业经济效益,将薄煤层、地质构造比较复杂的煤炭资源弃之不采,特厚煤层仅采一层,是煤炭回采率低的重要原因之一。1949~2002年,中国累计产煤321亿吨,根据有关煤炭资源专家的初步估计,煤炭资源储存量在1000亿吨以上。据统计,2005年中国的能源消费量折合5500万吨标准煤,其中万元GDP能耗为0.81吨标准煤,大概是世界平均水平的2倍多。从能源的产出效率来看,2003年中国每吨标准煤的产出效率仅相当于日本的10.3%、欧盟的16.8%、美国的28.6%。这就相当于用一个较高的煤炭资源消耗来获得一个较低的经济与社会效益。
4.煤炭资源需求及开发利用结构
自20世纪90年代中后期以来,中国的工业化、城镇化明显加快,随着国民经济的发展和人民生活水平的提高,从大自然索取的资源也越来越多,特别是对煤炭的需求,其消费明显呈现上升的势头。煤炭生产因此有了很大发展。1980年全国产煤6.1亿吨。近几年来,中国煤炭的生产量都达到20亿吨左右,2006年煤炭产量达到了23.8亿吨,比2005年煤炭产量22.0亿吨增加了1.8亿吨,增长了8.18%。中国煤炭的主要用户是电力用煤、冶金用煤、建材用煤和化工用煤,它们占全国用煤量的89.3%左右。
目前,中国经济高速发展,能源需求增长过快,造成煤、电、油供应紧张,煤炭资源呈现供不应求局面,2006年环球能源网发布信息称中国能源消费位居世界第二,占世界能源消费总量的15.8%,原煤产量位居世界之首,2006年能源消费总量24.6亿吨标准煤,其中煤炭占69.3%,石油占20.8%,天然气占2.8%,其他再生能源占7.1%(见图1-12)。中国煤炭资源在东部、中部开发利用程度较高;煤炭生产多年来一直占能源供应总量的70%左右,占矿业生产总量的50%,此外煤炭资源大多埋藏较深,开采条件不理想,主要以矿井方式开采,开采深度一般在500~600m,只有东部省份的部分老矿区开采深度达到800~1000m,约60%的统配煤矿实现了机械化采煤,综合机械化采煤只占世界水平的35%。目前矿井的现实回采率平均只有35%~40%,有84%的原煤要经铁路运输,并占铁路货运总量的40%以上,在国内煤炭消费构成中,80%以上用于直接燃烧。东部地区煤炭资源开采外部条件较好、储量丰富的矿井大多已经开发,只有极少数尚待开发,西部地区特别是晋、陕、蒙西地区煤炭资源丰富,煤质优良,煤层埋深浅且稳定,构造简单,开发潜力相对较大。
图1-12 2006年中国能源消费结构图
(三)煤炭资源需求的特点
煤炭资源作为中国的主要能源,其需求具有以下特点:
1.煤炭消费量增长的同时,在能源消费结构中占有的比重下降
1979~2006年,中国煤炭消费总量增长,但是煤炭消费在能源消费结构中的份额却在下降。20世纪50年代煤炭占能源消费的90%以上;60年代后,随着石油产量的增加,石油消费比重迅速上升,煤炭消费比重由1960年的93.9%下降到1980年的72.2%;80年代以后,煤炭消费比重又开始上升,1990年上升到76.2%;进入90年代,中国调整了过去自我平衡的能源政策,积极参与国际能源市场,大量进口石油、天然气等优质能源,鼓励煤炭出口,拉开了中国能源消费结构优化的序幕,煤炭在一次能源消费中的比重明显下降,由1990年的76.2%下降到2003年的68.4%;但是在2004~2006年,煤炭消费量在能源消费中份额出现了上涨,分别为68.0%、68.9%和69.3%。
2.煤炭消费结构发生剧烈变化
国内煤炭消费向电力、建材、冶金和化工4个主要耗煤行业集中,居民生活用煤逐步下降。2003年四大主要耗煤行业累计消费煤炭12.8亿吨,较1985年的3.7亿吨净增9.1亿吨;占全国煤炭消费量的比重也由1985年的45.3%上升到2003年的80.5%,特别是发电及供热用煤增长速度快、幅度大,年均增长8.8%。居民生活用煤量呈下降趋势,占全国煤炭消费量的比重由1980年的18.9%下降到2005年的4.0%。各部门煤炭消费中,工业部门是最重要的部门,工业部门煤炭消费数量比例持续上升,由1980年的71.8%上升到2005年的93.48%(见表1-6),特别是2000年后工业消费总量增长较快。
表1-6 按行业分的煤炭消费量 单位:万吨
续表
3.煤炭使用效率提高
主要表现为万元GDP煤炭消费数量不断下降。1978年万元GDP煤炭消费数量为11.15吨标准煤,2003年为3.13吨标准煤,平均每年下降10.65%。
(四)煤炭资源需求的影响因素
影响煤炭需求的因素是多种多样的,如煤炭价格、消费者习惯、技术革命、产业增长、工业结构、其他能源(如石油、天然气、水电、核能等)的供应与价格等。本书将煤炭需求的影响因素归结为以下几点:
1.经济增长
一般而言,能源需求与经济发展是密切相关的。煤炭作为一种重要的能源,其需求量在很大程度上受国民经济发展水平的影响。随着人均GDP的增长,不仅全社会的能源总量会随之增加,而且能源消费结构也会发生相应的变化。
在过去的20年里,已经有许多研究来考察能源(包括煤炭)需求与经济增长的关系。整体发现表明能源需求与经济增长之间具有强相关。但事实是,这并不能简单地意味着是因果关系,只能说从能源需求到经济增长之间的关系可能会很好,或者从经济增长到能源需求之间的关系很好。目前,有许多文献支持能源消费与经济增长之间的双向或单向因果关系,特别是发现在我国台湾地区从经济增长到煤炭需求之间只存在单向因果关系,但是专门研究煤炭消费与经济增长的因果关系的还是不多。
经济增长是推动能源消费总量增长的首要因素,一般可以用能源消费弹性系数(能源消费弹性系数是指能源消费总量增长速度与国民生产总值增长速度之间的比值)和国民生产总值(GDP)的增长率来表示。所谓能源消费弹性系数,是指能源的增长率与经济增长率之比。如果用ΔY/Y表示经济增长率,用ΔE/E表示能源消费的增长率,则能源消费弹性系数为:
K=(ΔE/E)/(ΔY/Y)(1.20)
能源消费弹性系数定量反映经济增长对能源消费增长的影响。不同国家或同一个国家不同经济发展阶段其能源消费弹性系数差异较大。通常情况下,发展中国家经济发展初期能源消费弹性系数比较大,大于或接近于1。发达国家能源消费弹性系数比较小,小于或接近于0.5。本节中,具体用煤炭消费弹性系数来反映经济增长对煤炭消费增长的影响。
2.能源消费结构
能源消费结构反映了整个能源消费量中各种能源所占的比例关系。中国是世界上极少数几个以煤炭作为主要能源的国家之一,煤炭在一次能源消费结构中的比例高达70%左右,优质能源特别是天然气所占比例明显偏低,仅为世界平均水平的1/10。据测算,煤炭的利用效率要比石油、天然气低得多。如工业锅炉,煤炭的利用效率一般为55%~70%,而石油、天然气的利用效率可以达到50%~85%;联合循环发电机组发电,天然气的热效率要比煤炭的热效率高出10多个百分点。这样,以煤炭为主的能源消费不但造成能源利用率低,能耗指数高,而且环境污染严重。
石油、天然气以及水能、核能和新能源对煤炭具有较强的替代性。根据原地矿部和煤炭部对全国煤炭、石油、天然气和水资源进行预测和评价,认为中国能源资源总量可达40017亿吨,其中煤炭占90%以上。因此,从国内石油、天然气资源的供应能力和国际市场的获取能力以及其他能源的开发技术与进程分析,在可以预见的未来,煤炭较难被有效地替代。
但是,随着经济的不断发展,人民生活的逐步改善,对环境保护的日益重视,优化能源结构、提高优质能源在一次能源消费结构中的比例,是中国未来能源发展的必然趋势。因此,在能源需求预测过程中必须考虑到未来优化能源结构,能耗指数的降低对能源需求的影响。
3.煤炭价格
据经济学理论,对一种物品的需求量大小主要取决于该物品的价格以及该物品与其替代品的比价关系或互补品的价格水平。中国长期以来对煤炭实行价格管制,致使煤炭价格偏低,对煤炭的补贴实际上也以隐蔽的形式转移给了消费者,消费者既能从市场上获得廉价的煤炭,又没有节能的压力和积极性。中国的能源消费中从绝对量上看煤炭的消费数量一直在增长,从相对量上看煤炭的消费比重一直在70%左右,固然与中国的经济增长和能源结构有关,但也不能不说这和中国煤炭价格偏低是有着直接关系。
按照一般的需求理论,价格是影响需求量的不可缺少的因素。煤炭价格与煤炭需求是息息相关的。不管什么原因导致,当煤炭价格上涨时,受利益驱动,用煤企业及个人会增加煤炭替代品的使用量,从而减少煤炭的需求量。同样,当煤炭价格较低时,煤炭需求量会增加。
4.投资
从煤炭消费流向分析中不难发现,进入20世纪90年代以来,生产建设用煤一直占煤炭消费总量的很大比重。这种消费格局表明,煤炭需求属于引致需求。而作为引致需求,其增长显然会随投资的增长而增长,投资的波动引发煤炭需求的波动,而且两者之间呈较为显著的正相关关系。煤炭生产中所说的投资包括煤炭工业固定资产投资额和采掘业总人工费用。其中,总人工费用由采掘业工人总数和采掘业的人均工资决定。
5.煤炭生产量和煤炭消费增长率
煤炭需求量必然与煤炭生产量相关。煤炭生产量多时,煤炭价格较低,煤炭需求量会相对较多;当煤炭生产量少时,煤炭的价格便会较高,煤炭购买者会选择煤炭的替代品,煤炭需求量就会变少。煤炭需求量用煤炭的消费量来表述,煤炭消费增长率反映了煤炭消费量的趋势。把煤炭消费增长率考虑进煤炭需求的影响因素是正确的。
6.其他影响因素
煤炭需求的影响因素是多种多样的,除了以上的影响因素之外,还有很多其他因素。
(1)人口增长与城市化。人口数量、结构变化及城乡分布与社会经济发展密切相关,人口增长与城市化直接影响产业和就业结构、城市化率和能源消费结构等。随着城市人口的不断增长,生活能源消费总量和品种将发生较大变化。
(2)科技进步与节能。自中国改革开放以来,坚持科技创新和科技进步,并制定了相应的节能政策,使煤炭消费强度大幅度下降。近年来依靠技术进步,加强管理,采用新技术、新工艺、新材料、新设备,逐步淘汰高能耗低效设备,取得了较明显的节能效果。根据历年《中国统计年鉴》数据分析,2004年单位GDP能源消耗为1978年的9.13%,万元GDP煤炭消耗由1978年的11.15吨下降到2004年的0.97吨。
(3)经济结构调整。中共十五大已明确提出要对经济结构进行战略性调整,主要包括对产业结构、产品结构、技术结构、企业组织结构和地区布局结构进行整体性和结构升级性调整,并注重经济成长质量的调整,而不仅在于经济总量一时的扩大;着眼于全面提高国民经济整体素质和效益,优化结构,改进技术,改善环境,调整布局,合理配置资源,促进经济良性循环,提高经济运行效率和增长质量。这种调整必然带来对能源结构调整的要求,直接对煤炭的生产和消费发展趋势产生重大影响。
(4)经济体制变革。在计划经济时代,资源完全通过计划来配置,企业不关心经营的好坏,有困难找政府,经济增长是粗放型的;进入市场经济以后,企业成为独立法人,产品有无市场决定着企业的生存,减少消费、降低成本是企业占领市场的普遍规律,因此,在转型期间,能源利用率和节能率会大幅度提高,总的消费量也可能降低,这一点已被实践证明。苏联和东欧等国变为市场经济以后,能源消费量下降了30%~50%。
中国已进入改革的关键时期,经济体制和经济增长方式正在实行根本性的转变,市场机制增强,煤炭消费出现下降也符合一般规律。但由于中国采用了渐进改革的方式,国民经济得到了持续、稳定、快速的发展,国民经济中的市场经济成分已占相当大的份额,目前煤炭消费下降只是挖掘了节能潜力,今后煤炭消费仍将随国民经济的持续增长而保持增长态势。经济体制改革对中国煤炭消费的影响主要表现为产业结构调整、节能降耗和煤炭质量提高。
(5)国际能源贸易。国际能源市场对中国煤炭市场的主要影响表现在大量进口石油和煤炭出口困难两方面。国际能源市场供大于求,石油和煤炭价格虽然在个别时期有所波动,但总的趋势是下降的。利用国外廉价石油和天然气,对于加快中国经济发展十分有利,中国及时调整了能源政策,20世纪90年代开始大量进口石油,并同外资合作,开发国外油田,对于中国的石油市场和煤炭市场都产生了重大影响;同时,世界煤炭过剩,澳大利亚等主要煤炭出口国竞争力很强,对中国的煤炭出口增加了巨大压力。
(6)生态环境保护。加强生态环境保护是中国的一项基本国策,同时又是实施可持续发展战略的中心内容之一。众所周知,全球性的四大公害:大气烟尘、酸雨、温室效应和臭氧层破坏,随着经济快速发展已经严重影响到人类的生存条件。世界环保问题已经引起国际社会的高度重视。由于大气污染与能源生产和利用有着直接的关系,尤其是煤炭的开发利用是烟尘、酸雨和温室效应的主要根源,就是臭氧层的破坏亦和煤炭开采过程中排放的甲烷有很大关系。因此加强环境、生态保护不能不对中国煤炭的生产、利用、消费带来严重挑战,并且是对煤炭消费市场起着持久性制约作用的最重要因素之一。
(7)国家政策方针。政府政策对煤炭需求也有着重要的影响。新中国成立以来,国家对煤炭的方针政策总的来说可分为促使煤炭供应和限制煤炭盲目生产两类。在计划经济时期,由于煤炭供不应求,国家所采取的政策基本上都是鼓励增产,保障煤炭供应;改革开放以来,煤炭供应由紧张转向缓和,进而转向生产过剩,供大于求,国家对煤炭生产总量采取宏观调控措施,限制企业盲目增产。
影响煤炭需求的因素还远不止以上这些。为了经济预测的准确性,只选择其中的主要影响因素,并且这些影响因素可以量化、可在历年的《中国统计年鉴》或其他参考文献中找到切实可靠的数据。所以,最终将煤炭需求的影响因素归纳为:GDP增长率、煤炭消费弹性系数、煤炭占能源消费的比重、燃料购进价格指数、煤炭生产量、煤炭消费增长率、煤炭工业固定资产投资、采掘业工人数量、采掘业工人的工资。这些影响因素的历史数据在建立煤炭资源需求预测模型中将作为输入变量。
BP神经网络的理论和煤炭需求的影响因素都已经清楚,在前三节的基础上,本节将建立基于BP神经网络的煤炭需求预测模型。
由于BP神经网络在函数估计和数值处理方面的优势,因而选择BP神经网络进行煤炭需求预测。但BP神经网络存在一定的缺陷,在第二节中已做了详细表述,本节会针对以前提到的不足,对其进行一定的调整,最终确定出合适的网络结构和网络算法来实现煤炭需求的预测。
本节采用的BP神经网络模型是在MATLAB环境下,采用MATLAB神经网络工具箱中的函数编程求解的。
基于BP神经网络进行的煤炭需求预测其步骤如图1-13所示。
图1-13 BP神经网络进行煤炭需求预测的步骤
(一)MATLAB简介
MATLAB是由美国Mathworks公司于1982年推出的一套高性能的用于数值计算和图形处理的计算系统环境,除了具备卓越的数值计算能力外,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。在学术界和工业界都得到了广泛的应用。MATLAB具有程序可读性强、程序简单等特点,尤其是在编写含矩阵运算的复杂程序时,能给用户提供极大的方便。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C、FORTRAN等语言简捷得多。概括地讲,整个MATLAB系统由两部分组成,即MATLAB内核及辅助工具箱,两者的调用构成了MATLAB的强大功能。MATLAB语言以数组为基本数据单位,包括控制流语句、函数、数据结构,输入输出及面向对象等特点的高级语言,它具有以下主要特点:
(1)运算符和库函数极其丰富,语言简洁,编程效率高。MATLAB除了提供和C语言一样的运算符号外,还提供广泛的矩阵和向量运算符。利用其运算符号和库函数可使其程序相当简短,两三行语句就可实现几十行甚至几百行C或FORTRAN的程序功能。
(2)既具有结构化的控制语句(如for循环、while循环、break语句、if语句和switch语句),又有面向对象的编程特性。
(3)图形功能强大。它既包括对二维和三维数据可视化、图像处理、动画制作等高层次的绘图命令,也包括可以修改图形及编制完整图形界面的、低层次的绘图命令。
(4)功能强大的工具箱。其工具箱可分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实时交互的功能。而学科性工具箱则专业性较强,如优化工具箱、统计工具箱、控制工具箱、小波工具箱、图像处理工具箱、通信工具箱等。
(5)易于扩充。除内部函数外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可修改源文件和加入自己的文件,它们可以与库函数一样被调用。
此外,MATLAB作为国际公认的、最优秀的数学应用软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。其相继推出的工具箱为各领域的研究提供了有力的工具,借助于它们可以直观、方便地进行分析、计算及仿真工作。MATLAB之所以功能强大也是因为它提供的许多工具箱,如信号处理(Signal Processing)、控制系统(Control System)、图像处理(Image Processing)、最优化(Optimization)、神经网络(Neural Network)等工具箱。其中神经网络工具箱以神经网络理论为基础,用MATLAB语言构造出典型神经网络的激活函数,如S形、线性等激活函数,使设计者对所选网络输出的计算变成对激活函数的调用。另外,根据各种典型的修正网络权值的规则,加上网络的训练过程,用MATLAB编写出各种网络设计与训练的子程序,网络的设计者则可以根据自己的需要去调用工具箱中有关神经网络的设计训练程序,使自己从烦琐的编程中解脱出来,提高开发效率。神经网络工具箱为训练神经网络提供了帮助,并且可以利用它提供的函数对网络进行初始化、仿真和训练,并通过变化的图形观察其动态训练过程。同时还可以按照个人的需要建立自己的神经网络模型,应用其工具箱作为参考,更好地发挥神经网络的功效,将其应用到各个领域中去。
(二)样本选取及数据预处理
根据第三节中煤炭需求影响因素的确定,给出建立BP神经网络所需的历史数据,如表1-7所示。
表1-7 1990~2006年煤炭消费量及其影响因素
续表
注:a为GDP增长率;b为燃料购进价格指数;c为煤炭占能源消费的比重;d为煤炭生产量;e为采掘业工人数量;f为采掘业工人的工资;g为煤炭工业固定资产投资;h为煤炭消费增长率;i为煤炭消费弹性系数;j为煤炭消费量。下同。
资料来源:历年《中国统计年鉴》。
BP神经网络需要一个训练集和一个评价其训练结果的测试集,其中训练集用于训练网络、调整网络权值,以使网络误差达到指定的要求,而测试集用来评价训练好的网络性能。
网络训练的样本集应是可信度高的、权威性的评价结果,这里采用1990~2006年的煤炭消费量及其影响因素,数据均来自《中国统计年鉴》。1991~2005年的样本数据作为BP神经网络的训练样本,在网络训练好以后,再以2006年的数据作为测试样本,用来检测程序及网络的准确性。
因为所有收集的数据往往不是在同一个数量级,将所收集的数据映射到[0,1]之间,进行归一化处理。适当的预处理可以提高神经网络对未学习数据的正确应答能力,是提高预测精度所必需的。归一化的具体作用是归纳统一样本的统计分布性。神经网络是以样本在事件中的统计分布率来进行训练(概率计算)和预测的,归一化是统一在0~1的统计概率分布。由于煤炭消费弹性系数和煤炭消费增长率有正有负,所以先将其加100%,再进行归一化处理。本节采用:
归一化有利于提高神经网络的训练速度,保证网络对样本具有足够的输入敏感性和良好的拟合性。
归一化后的数据如表1-8和表1-9所示。其中K、L分别表示GDP每增加1%煤炭消费量是原来的百分之几和煤炭消费是上年的百分之几。
表1-8 输入归一化数据
表1-9 输出归一化数据
(三)网络结构的确定
当网络类型选定之后,首先要解决的问题就是确定网络的拓扑结构,建立合理的网络结构,为解决煤炭需求预测奠定良好的基础。这一问题的实质就是确定网络的层数和各层的节点数。
BP神经网络的输入层和输出层是与外界联系的接口,这两层的神经元个数即节点数一般取决于实际问题,不能自由选取。网络结构中可以改变的只是隐含层的层数和节点数。基于BP神经网络的煤炭需求预测模型,其输入层为煤炭需求的各影响因素,即GDP增长率、燃料购进价格指数、煤炭占能源消费的比重、煤炭生产量、煤炭消费增长率、煤炭工业固定资产投资、煤炭消费弹性系数、采掘业工人数量、采掘业工人的工资,共9维。将其用X1,X2,…,X9表示。模型要解决的问题确定了,即煤炭的需求量为多少,则BP神经网络的输出层节点数也确定了。输出层只有一个神经元,即为煤炭需求预测量。
BP神经网络的输入、输出层已确定,接下来只有BP网络隐含层结构的确定。而网络隐含层结构的选择要从隐含层层数和隐含层节点数两个方面来综合考虑,并且还要与所要解决的实际问题联系起来。
1.隐含层层数的选择
BP网络是通过简单的非线性函数多次复合来实现复杂的函数映射关系,它的信息处理能力也是来自于非线性函数的多次复合。一般来说,网络层数越多,则所实现映射关系越复杂,对复杂的关系就越适应,网络输出的精度就越高,但收敛速度则降低。Kolmogorov定理证明了任意一个连续函数或映射关系可以精确地由一个三层BP神经网络实现。因此,在目前的情况下,最常用的是包含一个隐含层的三层BP神经网络。也有采用包含两个隐含层的四层BP神经网络。隐含层层数的选择,是网络优化必须考虑的一个重要问题。鉴于缺乏详细的理论指导,在本节中采用实验的方法研究隐含层层数、训练误差、估计误差的关系。隐含层层数的确定将与隐含层节点数的确定结合起来在下文中具体分析。
2.隐含层节点数的选择
隐含层节点数目设置成多少为好,在理论上尚无规律可循。从神经网络的原理来说,它的信息处理是在大量神经元中并行而又有层次性地进行的,作为神经网络培训后所记住的知识,就是以权的形式保持在节点与节点之间的联系中。从这个角度上看,似乎节点数越多越好,但在实际应用中并非如此。经过反复的实验和研究,发现隐含层节点数的选择与具体问题有关,与所解决问题的复杂性有关。但是问题的复杂性无法量化,因而也不能有很好的解析式来确定隐含层的节点数。在不同的情况下可能选择不同的隐含层节点数,有时节点数多的网络并不比节点数少的网络效果好。隐含层节点数与实际问题的要求、输入输出节点的多少都有直接关系。一般来说网络隐含层节点数太少,网络将不能建立复杂的映射关系,使网络培训不出来或不能识别以前没有的样本,且容错性差;而节点数过多,又使网络学习时间过长,误差也不一定最小,因此BP网络应有一个最佳隐含层节点数。
下面有几个公式可供参考:
式中:h为隐含层节点数;N为输入层节点数;O为输出层节点数;a为0~10的整数。公式(1.22)当a取从0~10的整数时,确定了隐含层节点数的大致取值范围,公式(1.23)可用来确定隐含层节点数的取值下限。两公式也可适用于多隐含层网络。
一般选取隐含层节点数主要有两种途径:构造法和删除法。构造法是设计神经网络结构的一种常用方法。它是从较小的网络开始,先设置较少的隐含层节点数,如果网络输出误差不满足条件,则逐渐增加其节点数,直至网络输出误差不再有明显地减少。删除法与其相反,是以一个较复杂的网络作为开始,先给网络一个较大的隐含层节点数,如果网络输出误差不满足条件,则逐渐删除隐含层节点,直至合适。
在本节中,N=9,O=1,则以公式(1.22)求得h为4~14的整数,公式(1.23)求得h的最小值为4,与公式(1.22)不矛盾。参考以上,本节对隐含层节点数的选取进行研究。考虑到单隐含层网络的层数较少,相对双隐含层网络来说,其非线性映射能力较弱。所有对于同一个问题,单隐含层网络所需要的隐含层节点就较多,以增加网络的可调参数。同理,双隐含层网络的隐含层节点数就可以少一些。为此,对单隐含层和双隐含层网络的隐含层节点数的选取分别采取不同的策略。对于单隐含层网络,因为其需要较多的隐含层节点数,所以用删除法。先根据公式(1.22)求得h的取值范围,选取h最大值14,对网络进行训练,若网络输出误差不满足要求,则减少节点数,直到误差满足要求为止。对于双隐含层网络,因其所需隐含层节点数较少,所以用构造法,先依据公式(1.23)选取一个较小的节点数,逐渐增加其数值,直到网络输出误差满足要求。如此,得到的隐含层节点数就比较适合,网络的泛化能力也较好。
本节中为了分析的全面性,将隐含层层数(一个或两个隐含层)和隐含层节点数(4~14的整数)的不同组合放在一起,对各个网络进行训练,比较其训练误差和估计误差。
首先用表1-8和表1-9中的样本数据对单隐含层不同隐含层节点数的BP神经网络进行训练,训练次数为5000次,得到各网络的训练误差(即输出层的期望输出与实际输出的均方误差)和估计误差(即输出层2006年的期望输出与实际输出的均方误差)如表1-10所示。
表1-10 单隐含层BP网络不同节点数下的训练误差及估计误差
经训练,发现单隐含层节点数较小时,其训练误差较大。随着节点数的增多,训练误差逐渐变小。当节点数为某一适合的数值时,训练误差最小。此后训练误差又随着节点数的增多变大。
单隐含层不同节点数的BP网络训练误差散点如图1-14所示。从图中可以看出,当隐含层节点数为8时,网络的训练误差最小,为1.40E-5。所以当选择单隐含层BP神经网络时,网络结构为9-8-1。
图1-14 单隐含层不同节点数BP网络的训练误差
下面给出部分网络的训练结果图。
图1-15 单隐含层节点数为5时BP网络的训练误差及步数
图1-16 单隐含层节点数为8时BP网络的训练误差及步数
图1-17 单隐含层节点数为13时BP网络的训练误差及步数
赵正琦[8]指出,对于双隐含层网络:两隐含层节点数相同或接近时,网络的培训效果要比两隐含层节点数相差较大时好。对于双隐含层网络,其两个隐含层的节点数应尽量取得接近。这是因为,两隐含层节点数相差较大时,网络对于各隐含层权值的调整幅度相差太大,容易引起网络培训的震荡,从而使网络培训的效果变差。所以对双隐含层网络节点进行选取的时候,要尽量使其两个隐含层节点数相同或相近。表1-11给出了双隐含层网络不同节点数下的训练误差和估计误差。
表1-11 双隐含层网络不同节点数下的训练误差及估计误差
续表
在训练过程中发现,网络的训练误差与节点数大致呈U形变化。网络的训练误差也是当隐含层节点数选取合适时,达到最小;远离最佳值,网络的训练误差变大。双隐含层的节点数选为(8,8)时,网络的训练效果最好。
同时,由训练可以看出,无论是单隐含层还是双隐含层,当节点数较少时,估计误差都比较大,随着节点数的增多,网络估计误差逐渐减小,当节点数增加到一定数值后,随着节点数的增多,估计误差逐渐变大。如此说明,BP网络存在一个最佳节点数,在此节点数下,网络的估计误差可以达到最小,即网络的泛化能力最强。
将单隐含层和双隐含层网络进行比较,当其均取最佳隐含层节点数时,双隐含层的BP神经网络的训练误差和估计误差均比单隐含层的网络要小。说明双隐含层网络的输出精度和泛化能力要比单隐含层网络好。增加BP神经网络的隐含层层数,网络对复杂的映射关系就更适应,网络的输出精度就更高。但是,隐含层层数的增加伴随着训练时间的增多、训练速度的减慢。所以在选择网络结构的时候,要同时考虑精度和时间。两个网络的训练误差分别为1.40E-5和1.01E-5,相差不大。单隐含层网络完全满足了训练精度的要求。此时,就可以选择单隐含层网络,以求较快的训练速度,同时节约了计算机的内存。
本节中所要解决的实际问题是较简单的非线性映射关系,所以网络的隐含层层数选为单层,节点数结合以上网络训练,选为8。
(四)网络传递函数的选择
BP神经网络的传递函数又称活化函数,神经元的非线性特性正是通过它而得以实现的。在确定了BP神经网络的结构之后,还需要选择和确定网络中隐含层和输出层节点的传递函数。传递函数的选择直接影响网络的映射复杂性和算法的收敛速度及训练误差。
第二节中提到,标准BP网络一般采用S形函数作为传递函数。其表达形式为:
为了调节BP网络的收敛速度,在公式(1.24)中引入参数T,使其表达式变为:
当T取不同的值时,Sigmiod函数的曲线是不同的,当T分别取0.5、1、2、4时,相应的Sigmiod函数曲线如图1-18所示。
图1-18 不同T值下的Sigmiod函数曲线
当神经网络选定Sigmiod传递函数后,就可以得到合适的非线性增益当输入由-∞增加到0时,增益由0增加到最大;当输入由0增加到+∞时,增益由最大降低到0。即当输入为小信号时,正好落在函数到增益区内,其增益较大,信号通过传递函数可以得到较大输出;反之,当输入为大信号时,则落在两边的低增益区内,信号通过传递函数得到较小输入。Sigmiod函数曲线如果越陡峭,其增益将会越大,网络的收敛速度越快。由图1-18可以看出较小的T值对应较陡的曲线,则BP网络的收敛速度也较快。由此可以通过选取较小的T值来增加传递函数F(x)的陡峭性,即增加F′(x)的值。F(x)越陡峭,F′(x)的值就越大,网络的收敛速度越快,就克服了BP神经网络收敛速度慢的缺点。
(五)BP算法的优化及训练函数的确定
标准BP神经网络采用非线性梯度优化算法,不可避免地存在局部极小值问题,而且其迭代算法次数甚多使得学习效率低,需要很长时间才能收敛,因此有必要对其进行优化。
常用BP算法的优化主要有以下几种:
1.附加动量法
标准的BP算法实质上是一种简单的快速下降静态寻优算法,在修正w(k)时,只是按照k时刻负梯度方式进行修正,而没有考虑到以前积累的经验,即以前时刻的梯度方向,从而常常使学习过程发生振荡,收敛缓慢。为此有人提出了改进算法——附加动量法。附加动量法使网络在修正其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,其作用如同一个低通滤波器,它允许忽略网络上微小的变化特性。利用附加动量法可能滑过极小值。该方法是在反向传播的基础上在每个权值的变化上加入一项正比于前次权值变化量的值,并根据反向传播法来产生新的权值变化。带有附加动量因子的权值调节公式为:
式中:k为训练次数;mc为动量因子,一般取0.95。
附加动量法的实质是将最后一次权值变化的影响,通过一个动量因子来传递。当动量因子取值为0时,权值的变化仅根据梯度下降法产生;当动量因子取值为1时,新的权值变化则是设置为最后一次权值的变化,而以梯度下降法产生的变化部分则被忽略掉了。这种方法所加入的动量项实质上相当于阻尼项,它减小了学习过程的振荡趋势,从而改善了收敛性。它降低了网络对误差曲面细节的敏感性,有效地抑制网络陷入局部极小。
2.自适应学习率法
学习速率决定每一次循环中所产生的权值变化量。大的学习速率可能导致系统的不稳定,但小的学习速率将会导致学习时间较长,可能收敛速度很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于最小误差值。所以在一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。学习速率的范围一般选取在0.01~0.7。
对于每一个具体的网络都存在一个合适的学习速率。但对于较复杂的网络,在误差曲面的不同部位可能需要不同的学习速率。为了减少寻找学习速率的训练次数以及训练时间,人们提出自适应学习速率,使网络的训练在不同的阶段自动设置不同学习速率的大小。
自适应学习率法有利于缩短学习时间。标准BP算法收敛速度慢的一个重要原因是学习率选择不当。在标准BP算法中学习率是一个固定的常数,而且它的值将直接影响到网络的训练时间。如果选择得太大,会降低网络的稳定性;如果选择得过小,会导致过多的训练时间。如果学习率在训练的过程中得到适当的变化,又使得它的值不会过大,就可以加快网络的训练速度,而且确保网络的稳定性。自适应调整学习率的改进算法:
该算法是这样实现的,首先计算出网络的输出误差,然后在每次训练后,利用此时的学习率计算出网络的权值和阈值,并且计算出网络此时的输出误差。如果此时的输出误差与前一时刻的输出误差的比值大于预先给定值,那么就减少学习率;反之,就增加学习率。
在MATLAB中,针对BP算法的优化,提供了多种训练函数,如有动量的梯度下降法,有自适应LR(Lagrangian Relaxation:拉格朗日松弛法)的梯度下降法、有动量和自适应LR的梯度下降法、LM(Levenberg-Marquaudt)法等。对于特定的问题,很难确定哪种训练算法最好。这取决于问题的复杂性、训练样本数、网络权值个数以及期望误差等很多因素。
因此,用各训练函数分别对网络进行训练,在综合考虑训练误差、估计误差及训练时间的基础上,最终确定最合适的训练函数。各训练函数下网络的训练结果如表1-12所示。
表1-12 不同训练函数下BP网络的训练结果
由训练结果可以看出,训练函数Trainlm的训练效果最好。由于各训练函数均为BP算法的优化,所以各函数是各有所长。各训练函数下网络的训练误差相差不是很大,但是,LM的估计误差却远远低于其他训练函数。这说明使用LM优化方法的BP网络泛化能力较好。同时LM优化方法仅用了一步就达到了网络的要求,从而使学习时间大大缩短。
本书和前人的研究结果达成一致。一般来说,网络具有几百个权值时,采用LM算法收敛速度最快[9]。对于中型网络,在多数情况下,LM算法是第一选择。
不同训练函数下网络的训练结果如图1-19至图1-23所示。
图1-19 Traingd网络训练结果图
图1-20 Traingdm网络训练结果图
图1-21 Traingda网络训练结果图
图1-22 Traingdx网络训练结果图
图1-23 Trainlm网络训练结果图
至此,整个BP神经网络的结构和函数都确定了。即采用9-8-1的单隐含层BP神经网络,传递函数Sigmiod中引入T参数,BP算法的优化选LM法,训练函数定为Trainlm。
(六)利用训练好的网络进行煤炭需求预测
本节采用单步和多步预测。
单步预测的网络训练,其输入输出分别为表1-8中1990~2004年的输入归一化数据及表1-9中1991~2005年的输出归一化数据。多步预测的网络训练,其输入输出分别为表1-8中1991~2000年的输入归一化数据及表1-9 中1996~2005年的输出归一化数据。单步和多步预测均取2006年的数据作为网络训练完毕后的检验样本。
1.训练网络
网络参数设置如下:网络结构:9-8-1;最大允许误差:0.0001;最大学习次数:5000;传递函数:Logsig,Purelin;训练算法:Levenberg-Marquaudt。
经过训练后,BP神经网络收敛。将训练好的BP神经网络权值及阈值保存,以便进行接下来的需求预测。训练结果如图1-24和图1-25所示。
图1-24 单步网络训练结果图
图1-25 多步网络训练结果图
2.误差分析
采用2006年的煤炭消费量和2006年的预测煤炭需求量进行比较,作单步和多步BP神经网络预测的误差分析。
单步、多步预测的误差分析如表1-13和表1-14所示。
表1-13 单步预测误差分析
表1-14 多步预测误差分析
单步和多步预测的均方误差均小于0.0001,由此说明BP神经网络训练成功,可用于预测。
3.需求预测
用单步BP神经网络对2007年的煤炭需求量进行预测,用多步神经网络对2007~2011年的煤炭需求进行预测,结果见表1-15。
表1-15 预测结果 单位:万吨
4.灵敏度分析
灵敏度分析(Sensitivity Analysis)用于评估一个给定的输入变量对网络输出的影响。在改变该变量的数值,而其他输入变量为某固定值的情况下,检测网络输出的改变。由灵敏度分析可以看出各输入变量与输出变量之间的关系。
本节中BP神经网络共有9个输入,下面对其进行灵敏度分析。
变量的变化值定为0.2、0.25、0.3、0.35、0.4、0.45、0.5、0.55、0.6、0.65。首先令GDP增长率变化,其他输入变量不变,如表1-16所示。
表1-16 GDP增长率的灵敏度分析数据
将数据输入先前训练好的网络,得到新的一组输出值。做出GDP增长率与煤炭需求预测新数值的变化图,如图1-26所示。从图中可以看出,GDP增长率与煤炭需求量总体上呈正相关,这在直观上也是可以理解的。
图1-26 GDP增长率与煤炭需求量的关系图
下面分别对其他8个变量进行灵敏度分析,其过程与GDP增长率的灵敏度分析一样,所以只给出图示。
图1-27 燃料购进价格指数与煤炭需求量的关系图
图1-28 煤炭在能源消费中的比重与煤炭需求量的关系图
图1-29 煤炭生产量与煤炭需求量的关系图
图1-30 采掘业工人人数与煤炭需求量的关系图
图1-31 采掘业工人人均工资与煤炭需求量的关系图
图1-32 煤炭工业固定资产投资与煤炭需求量的关系图
图1-33 煤炭消费弹性系数与煤炭需求量的关系图
图1-34 煤炭消费增长率与煤炭需求量的关系图
从图1-26~图1-34可以直观地看出各变量与煤炭需求量的相关性。但是BP神经网络有一个很难克服的缺点,就是无法说明为什么各变量与煤炭需求量是如此的关系。这有待今后研究的深入进行。
对中国煤炭资源的需求进行分析及预测,不仅有利于煤炭资源供需矛盾问题的解决,保障国民经济的可持续稳定发展,更有利于保障中国能源的战略安全,具有重大的经济、社会价值。预测结果准确与否,直接关系着宏观调控的科学性和合理性,为煤炭资源管理提供基础资料和决策支持。本章在前人研究的基础上,运用MATLAB软件建立了煤炭需求预测的BP神经网络模型。
(1)影响煤炭需求的因素是多方面的,各因素之间存在着复杂的关系,不是线性或简单的非线性关系。因此不能用线性或简单非线性函数来描述。BP神经网络对复杂的非线性问题具有较好的描述能力,应用BP神经网络方法通过样本学习可以掌握煤炭需求量与其影响因素之间复杂的函数关系。这种函数关系与传统的高度简化了的函数关系相比更加接近实际。因此,BP神经网络预测的精度就较高,预测结果的可靠性就较大。
(2)利用神经网络模型对煤炭需求原始数据进行拟合和预测是一种比较新的方法。BP神经网络的隐含层节点数和隐含层层数的确定是一难点。本章通过定性分析与实验方法,针对具体问题,确定出BP神经网络的结构。
(3)本章针对传统BP神经网络训练速度慢、易陷入局部极小值等缺点,在Sigmiod函数中引入T值,并且采用Levenberg-Marquart优化算法进行改进,通过实验证明该方法能够有效提高训练速度和预测精度,收到较好的预测结果,可以作为煤炭需求的定量预测方法在实际中应用,并且可以通过补充新的历史数据,来提高预测精度。
(4)运用MATLAB神经网络工具箱不需要像传统方法那样进行烦琐的编程,它可以高效、准确、快捷地建立BP神经网络对煤炭需求进行预测。
(5)由预测结果可以看出中国煤炭需求量呈逐年上升趋势,但是中国煤炭资源总量大,可采量少,开采成本会越来越高。因此,在开采利用煤炭的同时需要大力开发其他替代能源,提高能源的利用率。只有这样才能保证煤炭能源的供求平衡,实现经济的稳定发展。
[1]Mtce:百万吨煤当量或百万吨标煤。
[2]中国矿业网(www.chinamining.com.cn)。
[3]《国家中长期科学与技术发展规划纲要(2006~2020年)》,《国务院公报》,2006年9月。
[4]王强:《工业产品的计算机视觉识别与检测算法研究》,北京航空航天大学博士学位论文,2000年。
[5]赵正琦:《BP网络优化及其在流体测量中的应用研究》,北京化工大学硕士研究生学位论文,2000年。
[6]《中国统计年鉴》(www.stats.gov.cn/tjsj/ndsj/2008/indexch.htm),2009年6月25日。
[7]中国宏观经济信息网(http://www.macrochina.com.cn/xspd/20061220082875.shtml,2006-12-2)。
[8]赵正琦:《BP网络优化及其在流体测量中的应用研究》,北京化工大学硕士学位论文未发表,2000年。
[9]黄万杰:《基于BP神经网络改进算法的库存控制策略》,重庆大学硕士学位论文未发表,2003年。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。