安徽工业大学毕业设计(论文)说明书1基于BP神经网络的燃烧控制系统4.1神经网络4.1.1神经网络简介神经网络(ArtificialNeuralNetworks,简称NN)是模仿人脑工作方式而设计的一种机器,它可用电子元件实现,也可用软件在计算机上实现。NN也可以说是一种具有大量连接的并行分布式处理器,由处理单元和有向连接组成,通过对输入施加作用获取输出。神经网络具有通过学习获取知识并解决问题的能力,其知识存储在连接权中。神经网络自1943年被提出以后大致经历了四个发展阶段。从1943年到60年代,在这一阶段提出了多种网络模型和相关算法;60年代末至70年代,由于电子线路交叉极限的困难难以克服,使神经元的数量受到限制,导致神经网络的发展进入低潮,相关研究工作进展缓慢。80年代到90年代初期,由于Hopfield神经网络模型的提出,以及能量函数和稳定性等概念的产生使神经网络又获得了新的发展,相关的模型、算法和应用问题被提出。90年代以后,神经网络在经历了80年代末到90年代初的高潮后,硬件技术、应用范围与理论水平都有了很大的进展,开始进入了稳健发展时期。4.1.2神经网络模型神经网络是由大量神经元按一定的结构连接而成,来完成不同信息(包括智能信息)处理任务的非线性系统。不同神经元之间通过各自的突触权值来表示不同的连接关系。在学习的过程中不断调整突触权值,使网络实际输出不断逼近期望输出。图4-1是基本的神经元模型,其中X1...Xn是神经元的输入,W1…Wn是输入连接权值,T是神经元的阈值(也称偏执量)。神经元由三个基本要素构成:安徽工业大学毕业设计(论文)说明书2x1xixn...∑Tf(·)w1jwijwnj...y图4-1神经元模型(1)连接权,用来表示连接强度,权值为正表示激励,为负表示抑制;(2)求和单元,用于求取输入变量的加权和;(3)非线性激励函数,也称活化函数,用来实现函数映射并限制神经元输出幅度。活化函数可以是线性也可以是非线性,不同的活化函数可以构成不同的模型。常用的活化函数类型有线性函数(比例函数)、硬限函数、饱和线性函数(分段函数)、S形函数等。以上作用关系可以用数学表达式表达如下:1nijiiSwxT(4-1)若把阈值T表示为输入X0,即X0=T,W0=-1,则神经元接收的信息总和为0nTTijiiSwxXWWX(4-2)输出为sfy(4-3)式中,yf为转移函数。几种转移函数简述如下:(1)单极性阈值型转移函数(如图4-2(a)所示)1,0()0,0xfxx(4-4)具有这一作用方式的神经元称为阈值型神经元,这是神经元中最简单的一种,经典的M—P模型就属于这一类。(2)双极性阈值型转移函数(如图4-2(b)所示)1,0sgn()1,0xxx(4-5)安徽工业大学毕业设计(论文)说明书3这是神经元中最常用的一种,许多处理离散信号的神经网络采用符号函数作为转移函数。(3)单极性Sigmoid型转移函数,简称单极性S型函数(如图4-2(c)所示)1()1xfxe(4-6)(4)双极性Sigmoid型转移函数,简称双极性S型函数(如图4-2(d)所示)21()111xxxefxee(4-7)单极性和双极性S型函数特点是函数本身及其导数都是连续的,因而在处理上十分方便。(5)分段线性转移函数(如图4-2(e)所示)0,0(),01,ccxfxcxxxxx(4-8)该函数的特点是神经元的输入与输出在一定区间内满足线性关系,实现上比较简单,也称伪线性函数。(6)概率型转移函数采用概率型转移函数的神经元模型其输入与输出之间的关系是不确定的,需用一个随机函数来描述其输出状态为1或为0的概率。设神经元输出为1的概率为:/111xTPe(4-9)式中,T称为温度参数。由于采用该转移函数的神经元输出状态分布于热力学中的波尔兹曼分布类似,因此这种神经元模型也称为热力学模型。f(x)1.00xf(x)1.00x-1.0(a)(b)安徽工业大学毕业设计(论文)说明书40.50xf(x)1.0(c)-1.0xf(x)1.00(d)安徽工业大学毕业设计(论文)说明书5xf(x)1.00xc(e)a)单极性阈值型转移函数;b)双极性阈值型转移函数;c)单极性Sigmoid型转移函数;d)双极性Sigmoid型转移函数;e)分段线性转移函数图4-2转移函数图形4.1.3神经网络结构和工作方式从网络的连接方式上看,神经网络有两种拓扑结构。1、前馈型神经网络神经元接受前层神经元的输出并输入到下一层,神经元之间的连接只存在输入层—隐含层、隐含层—隐含层、隐含层—输出层之间,同一层神经元不存在互连,每层神经元的输入仅来自于前一层神经元的输出,即层间的信号流是单向的。节点分为三类:输入节点、输出节点和隐含节点,分别位于输入层、输出层和隐含层,输入层和输出层与外界相连,中间层称为隐含层。前馈型网络结构如图4-3所示。输入层隐含层输出层图4-3一层隐含层的前馈型网络2、反馈型神经网络安徽工业大学毕业设计(论文)说明书6反馈型网络模型是具有反馈功能的递归网络结构,网络中的任何两个神经元均有可能互连,信号流可以是双向且反复往返传输,直到输入—输出信息趋于平衡。整个网络中至少存在一个闭环回路。图4-4所示为一个完全连接的反馈型网络。图4-4单层全连接反馈型网络神经网络的工作过程分为两个阶段:学习期和工作期。网络在学习期通过学习完成网络连接权值的调整,学习完成后进入工作期,依据固定的连接权值计算某个输入作用下对应的输出。根据作用效果,前馈网络是函数映射,用于模式识别和函数逼近。反馈网络按照对能量函数极小点的利用情况分为两类,一类是所有极小点都起作用,多用于各种联想存储器,另一类是只有全局极小值起作用,多用于网络寻优。4.1.4神经网络学习方法向环境学习获取知识以改变自身性能是神经网络的重要特征。一般情况下,神经网络按照某种方式逐步调整自身参数来改善网络性能。按环境提供信息量的多少区分,学习方式有三种。1、监督学习(有导师学习)这种学习方式采用的是纠错规则,在学习训练过程中需要系统存在一个导师,它可以对一组给定的输入提供期望的输出,这组已知的输入—输出样本对称之为训练样本集,即“教师信号”。其学习过程为基于适当的学习算法,将神经网络的实际输出与期望输出进行比较,当网络输出与期望的教师信号不符时,根据差错的方向和大小按一定的规则来调整网络参数,使网络的实际输出值逼近期望输出值。当网络对于各种给定的输入均能产生所期望的输出时,即认为网络已经在导师的训练下“学会”了训练数据集中包含的知识和规则,可以用来进行工作了。监督学习方式如图4-5所示。安徽工业大学毕业设计(论文)说明书7环境学习系统导师误差信号实际输出期望输出+—图4-5监督学习2、非监督学习(无导师学习)如图4-6,非监督学习是指在没有外部导师指导下针对不同输入模式而进行的学习,学习系统按照环境提供的数据的某些统计规律来调节网络的参数或结构,以反映出输入的某种固有特性。3、再励学习再励学习是一种仿人心理的学习方式,如图4-7所示。其学习思想是这样,如果对系统施加的某个行为能够带来一个满意的效果,相似的行为下采取相同的行为的趋势就加强,所以这种学习也叫加强学习或强化学习,再励学习与监督学习的不同之处在于再励学习的依据是评判信号的“好”与“不好”,而监督学习的依据是导师信号。环境学习系统输入图4-6非监督学习环境学习系统输出评价输入图4-7再励学习目前常用的网络多为前向网络,而前向网络中又以BP网络和RBF网络最为常见。本文将采用BP网络来对冶金石灰窑燃烧系统进行研究。安徽工业大学毕业设计(论文)说明书84.2燃烧系统BP神经网络建模与优化石灰窑燃烧系统是工业生产中极为重要的系统。石灰窑的工作效率和其污染物排放量的多少与石灰窑燃烧工况息息相关。因此,为石灰窑燃烧系统建立精确的模型有利于很好的研究其高热效率的运行策略,保证其经济运行。石灰窑的燃烧过程具有强耦合、非线性等特征,对于这些复杂的过程,难以用机理模型来描述。由于神经网络具有非常强的非线性映射能力,对复杂系统的描述具有较好的效果,因此利用神经网络建立石灰窑燃烧控制系统的优化模型是比较合适的。4.2.1BP网络结构BP(BackPropagation)神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入—输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。多层前向BP网络是目前应用最多的一种神经网络形式。多层前向BP网络实质上实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题;而且能通过学习正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力;不仅如此,BP神经网络还具有一定的推广、概括能力。因而被广泛地运用于模式识别、函数逼近和图像处理等各个领域.然而BP网络存在着收敛速率慢、易陷入局部极小、隐层结构难以确定等不足,针对这些不足所提出的诸多改进虽一定程度上得到改善,但仍在存储空间、算法简洁等方面难以均衡。多层感知器(MLP)是一种重要的前馈网络,其算法用的最多的是BP算法。由于BP算法影响巨大,人们习惯上把采用BP算法训练的MLP称为BP网络,但事实上BP只是MLP的一种常用算法。本文中沿用了BP网络这种习惯用法。BP网络是一个完全连接的前馈网络。由输入层、隐含层和输出层组成,其中隐含层可以有多层,每层包含多个神经元,其中输入层神经元个数是n0,后面各层的神经元个数分别为n1,,n2...。输入层的神经元仅起信息传递作用,其转移函数是恒等函数,输出等于输入。隐含层和输出层是完全连接的,其转移函数多采用S形函数,最常用的是Sigmoid函数1()1syfse(4-10)输出层的转移函数可以采用多种形式,最常用的是线性函数和Sigmoid函数,对于一般函数逼近问题常采用线性函数。安徽工业大学毕业设计(论文)说明书94.2.2BP算法BP算法全称是误差反向传播,最初由PauWerbos在1974年的博士论文中提出,1986被由D.E.Rumelhart领导的PDP小组重新提出,对当时低迷的神经网络研究起到了极大的推动作用。BP算法的基本思想是最小二乘法,采用梯度搜索方法,以期使网络的实际输出值与期望输出值的误差均方根最小。BP算法的学习过程包括正向传播和反向传播。输入信号从输入层经过隐含层到输出层,每层神经元的状态只影响下一层神经元的状态。这个过程称作正向传播过程。如果实际输出与期望输出误差太大,则将误差信号沿反向逐层返回,并根据误差逐层修改各权值,使得误差最小。设一个三层BP网络有m个输入节点,l个输出节点,q个隐含神经元。1jiw表示输入层第j个神经元到隐含层第i个神经元之间的连接权值,2jiw表示隐含层第j个神经元到输出层第i个神经元之间的连接权值。隐含层的输入和输出层的输入是前一层神经元的输出的加权和,输入为ix,i=1,2,…m;输出为jy,j=1,2,…l;BP算法训练过程如下:(1)初始化所有权值;(2)准备训练样本,即输入—输出样本对;(3)计算隐含层和输出层各神经元的输出;(4)计算实际输出与期望输出间的偏差;(5)计算权值修正量2jiw和1jiw;(6)返回至(2)重复计算,直到单个样本输出误差E满足要求。目前在实际应用中有两种权值调整方法。从以上步骤可以看出,在标准BP算法中,每输入一个样本,都要回传误差并调整权值,这种对每个样本轮训的权值调整方法又称为单样本训练。由于单样本训练遵循的是只顾眼前的“本位主义”原则,只针对每个样本产生的误差进行调整,难免顾此失彼,使整个网络训练次数增加,导致收敛速度过慢。另一种方法是在所有样本输入之后,计算网络的总误差,然后根据总