基于 ga-rbf 神经网络辨识的 sofc 电堆的建模

26
基基 GA-RBF 基基基基基基基 SOFC 基基 基基基 Modeling a SOFC stack based on GA-RBF neural networks identification

Upload: barton

Post on 15-Jan-2016

154 views

Category:

Documents


0 download

DESCRIPTION

基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模. Modeling a SOFC stack based on GA-RBF neural networks identification. 摘要. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

基于 GA-RBF 神经网络辨识的SOFC 电堆的建模

Modeling a SOFC stack based on GA-RBF neural networks

identification

Page 2: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

摘要 • 本文对固体氧化物燃料电池( SOFC )进行了离

线非线性建模,应用了径向基函数( RBF )神经网络与遗传算法。在建模过程中, GA 是用于对RBF 神经网络的参数进行优化,优化的值作为 RBF 神经网络参数的初始值。我们还用梯度下降学习算法来调整参数,通过仿真验证了模型的有效性和正确性。通过与 BP 神经网络算法进行比较,仿真结果证明在预测堆电压与不同温度时 GA-RBF 算法优于传统 BP 神经网络。因此用 GA-RBF神经网络辨识算法对 SOFC 建模是可行的。

• 关键字:固体氧化物燃料电池( SOFCs )、径向基函数( RBF )、神经网络、遗传算法、辨识

Page 3: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

1. 介绍• 与其它的燃料电池不同的是,固体氧化物燃料电池( SO

FC )的组成部分全是固体而没有液体,并且它是工作在一个复杂高温( 600-1000 度)的环境下。由于它比传统热能系统和其它类型的燃料电池具有更高效的能量转换,因此 SOFC 在将来是一种有前景的能量转换系统。

• 在最近几十年,关于 SOFC 堆的建模已经取得了较大的成果。然而,大多数现有的模型都是集中在对 SOFC 的设计而不是应用上。对于大多数 SOFC 用户来说,他们更关注的不是内部的细节,而是在不同操作条件下它的工作性能。他们需要的是行为模型,这样才能用来预测在不同操作条件下 SOFC 的行为。

Page 4: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 正是在这种需求的激励下,我们决定应用径向径函数( RBF )神经网络和遗传算法( GA )对 SOFC 系统的建模进行研究。神经网络是一种根据输入输出数据建立动态系统的数学关系, RBF 神经网络是一种前馈神经网络,只有一层隐含层,并且能以任意精度逼近任何连续函数 [1] 。但是,应用 RBF 神经网络有一个关键问题,即如何选择合适初始值,这些初始值包括:输出权值、中心点及隐层单元的个数。如果这些值的选取不合适,那么 RBF 神经网络建模方法的有效性和精确度会大大下降。为了保证 RBF 神经网络算法在对 SOFC 建模时的最优效果,我们应用遗传算法来对 RBF 神经网络参数进行优化研究。遗传算法是一种自适应的具有全局搜索能力的优化算法,它是基于自然选择和遗传机制而提出的 [2] 。与传统优化算法不同的是,遗传算法是基于群体的,在群体中个体并行进化,最终的结果包含在了最后一次进化的群体中。

Page 5: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

2. 现有的 SOFC 模型• 在本节中,我们简要回顾了各种现有的 SOFC 模型,讨论了他们的优

缺点, SOFC 是一个相互连接的结构,由两层陶瓷电解质、阳极和阴极组成的,电解质层将阳阴两极分开。在燃料中,氧离子通过具有导电作用的固体陶瓷电解质由阴极向阳极转移,在电解液层,它们与氢和燃料中的一氧化碳进行反应,生成水和二氧化碳,释放出电子,电子再向阴极移动,在电解液层就会形成一个电流回路 [3] 。单个电池会形成一个 1伏电压的开环电流电压回路,因此将许多电池串联在一起就组成了一个燃料堆。

• 在文献 [4] 中提出了一种简化的零阶模型,在文献 [5]-[8] 中提出了一种一阶模型,在文献 [9-12] 中提出了一种二阶模型,文献 [13,14] 中提出了一种复杂的三阶模型。尽管这些模型能够分析和优化 SOFC ,但他们都存在着局限性。大多数模型是基于能量守恒定律的基础上的,因此他们的表达式都是非常的复杂而不适合在工程上的应用。

Page 6: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 大多数 SOFC 研究者会用经验建模方法,因为这更实际,这样可以不用知道内部反应的原理就能推导出 SOFC 电堆的响应。为了满足这种要求,一些研究者们尝试着建立一种新型的 SOFC 模型。文献 [15] 中 Arriagad就是利用人工神经网络( ANN )方法来建立 SOFC 模型。尽管这个模型比较高效,但在实际设计时却遇到了许多障碍,如容易陷入局部极值、隐层单元个数的选择较难等。在文献 [16] 中提出了一种最小二乘支持向量机( LS-SVM )的方法来建立 SOFC 电堆的模型。 LS-SVM 是一种改进的 SVM方法,具有许多优势。但在本文中由于只考虑燃料的利用率,只考虑电池电压的影响,而不考虑其它的因素。

• 本文的工作主要是利用基于遗传算法的 RBF 神经网络来辨识 SOFC 的黑盒模型,在下面的章节中将具体描述 GA-RBF 建模的算法。

Page 7: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

3.GA-RBF 神经网络的非线性系统建模

• RBF 神经网络含有一个输入层,一个非线性隐含层和一个线性输出层。每层的神经元都与前面一层的所有神经元相连。输入变量作为入输层的输入,并直接与隐含层相连,且无权值。隐含层是 RBF 神经元,通过计算中心点和入输神经元的欧式距离,然后再将结果作为非线性函数的输入 [17] 。输出神经元与 RBF 隐层神经元之间为带权线性连接。图 1 为 RBF 神经网络的结构,含有 n 个输入,一个输出, q 个隐层神经元。

Page 8: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

输入为:

权值为:

Ui 为非线性函数,在本文选用高斯函数作为激活函数:

ci 为第 i 个 RBF 隐层神经元的中心

bi 为第 i 个 RBF 神经元的基宽向量

第 i 个 RBF 神经元的输出表示为 q 个线性带权和的函数

Page 9: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

令 y ( k )表示 k 时刻网络的目标值,则 k 时刻网络的误差定义为:

网络的代价函数则为目标与预测值之间的误差的平方,如下式所示

学习算法的目的是利用梯度下降法使误差的平方达到最小,因此,可以得到输出权值 , 中心点 , 和基宽的表达式如下:

Page 10: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

当我们在编程实现 RBF 算法时,如何利用方程( 5 ) ~ ( 7 )适当地选择这些参数就变得非常重要了。如果选择不当,那么 RBF 神经网络的建模的能力和精度就会大大下降。因此本文选用遗传算法来确定 RBF 网络参数的初始值。遗传算法是一个交互反应的处理过程,包含了一组编码,而这些编码又是由候选解组成的 [18] 。在每一代中,当代群体中通过进化,产生新的含有侯选解的新的群体,进化的操作包括选择、交叉、变异。在遗传算法的问题中有四个步骤需要确定,即编码、适应度函数、操作算子及终止条件。

Page 11: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4 利用 GA-RBF 对 SOFC 建模• 对于一个给定的 SOFC 电堆,终端电压 U 与电流密度 I之间的关系受到许多因素的影响,如电池的温度,氢气的压力等 [19] 。由于存在这些复杂因素的影响,大多数模型无法适应所有这些因素的影响,但是我们的 GA-RBF 模型就能够做到这点。温度是其中影响最明显的一点,为了分析不同温度下输出电压 U 与电流密度 I 的影响,我们将电池温度 T也作为其中的一个研究变量。

• 一般来说,非线性系统可以用非线性自回归滑动平均模型( NARX )[20] 。本文的 SOFC 非线性系统可以用一个含有两个输入一个输出的差分方程表示:

Page 12: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

图中 TDL 为时间延迟阵列。我们研究的目的是找出符合方程( 11 )中的GA-RBF 模型,这就需要三个步骤:准备训练样本、通过训练获得 GA-RBF 模型、通过得到的模型来预测新的输入值。

Page 13: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.1 准备训练样本• 在本文中,选用两组数据作为训练样本,即温度

为 800 和 1000 时的电流密度和电池电压,每组均 701 对数据。 SOFC 的主要影响参数的范围是不同的,如温度在( 600-1000 ),而电堆电流密度为 (0-700mAcm-2) 。在大多数情况下,都要对训练样本进行规一化到 [0,1]或 [-1,1] 。表一为电流密度归一化的结果。归一化处理能提高训练速率,有助于 GA-RBF 搜索参数。在本文中将电压、电流密度与温度通过式( 12 )归一化到 [0,1]

Page 14: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模
Page 15: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.2 GA-RBF 参数的选择• 为了减小参数的数量、加快程序运行的速

度,将 RBF 网络的隐层神经元个数设为 3 ,两个输入(电流密度 I 和电池温度 T ),一个输出(电压 U ),因此 RBF 的网络结构为 2-3-1 。

Page 16: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.2.1 编码• 编码的目的是建立遗传算法中问题与个体之间的关系,如果将问题用编码表示,这些编码就称为个体或染色体。一个群体中包括了许多个体。一般来说,群体的大小 n一般选为 30到 100 ,为了节约运行时间,本文选用 30 。每个个体表示一个问题或一部分问题。在本文中 RBF 网络的参数是由GA 来优化的,因此这些个体表示基宽、高斯函数的中心点以及输出权值,个体的表示如下所示:

Page 17: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 每个个体含有 12 个参数,基宽 3 个,中心点为 6 个,权值为 3 个。个体中每个参数的编码采用 10位二制数编码。

• RBF 隐层的基宽范围选择在 [0.1,3] ,中心点的范围在 [-3,3] ,权值的范围在 [-1,1] 。

Page 18: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.2.2 适应度函数• 每代中的所有个体都用进行适应度评价。当用遗传算法来

解决一个问题时,问题用编码表示并用评价函数定义。评价函数是用编码作为参数来评价问题的结果。每个编码通过评价函数评价,新的个体则是由遗传操作产生的。在这里, RBF 网络是一个 SOFC 电堆的模型,目标函数是越小精度则越高,为了得到一个高的回归精度,目标函数定义如下:

Page 19: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 式中 e ( i )为试验输出与模型输出的误差,一般来说,适应度函数定义为评价函数的倒数,因此我们可以得到如下适应度函数:

Page 20: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.2.3 遗传操作• 选择、交叉、变异是三个主要的遗传操作,这些

操作对遗传算法的性能有着非常重要的影响。在本文中,我们用轮盘选择法进行选择。每个个体的适应度值用 pi表示( i=1 , 2 ,。。。 N )。根据 pi 将轮盘分成 N 个部分,在本节中,当在转动轮盘时,如果轮盘的指针指向第 i段,则选择第i 个个体。很明显段的区域越宽,那么被选中的可能性就越大。这就显示了个体的适应值越高,就越容易被选中。基于适应度值从群体中选择个体,然后被选择的个体就会被遗传到下一代而不发生改变。

Page 21: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 选择的方向是朝着现有个体中最优的方向进行的,而不是创造新的个体。在自然界中,父代与子代的基因都是同时存在的。因此对父代的操作主要是交叉算子。交叉算子是对被选择的个体以交叉概率 pc 进行的,本文中设为 0.8 。在一个新的群体中,有个 (Pc*n) 个体需要进行交叉操作。 N 为群体大小。在交叉操作中,我们要保持每组染色体的数量相等,交叉后,个体中的不好的性能被性能好的子代所代替。

Page 22: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

• 所管选择和交叉会产生新的编码,但他们并没有加入任何新的信息。变异就是随机改变染色体的某位基因。通过变异就会将新基因引入群体中,在每一个新的群体中,有个 (Pm*n*L) 个体需要变异, pm 为变异概率, n 为群体规模, L 为编码长度。根据上面的分析,我们可以知道每 ¸每个体由 12 个参数组成,每个个体中的参数用一个 10位的二进制编码表示,因此 L 为 120 。在本文中,变异根据为 0.003-[1:1:size]*0.003/size 。这就说明个体的适应度值越小,就更有机会变异。

Page 23: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.2.4 终止条件• 常用的终止条件有两种。第一个是预先规定的最大进化代数,另一个

是连续多代后解的适应值没有明显改进。在这里我们选用第一个作为终止条件,进化代数选为 100 。

• 经过 100代的进化后,参数的初始值如表 2所示。方程( 14 )的目标函数 J 的优化过程如图 3所示, J 的终值为 121.3089

• 在得到三个参数的初始值的最优值后,我们利用梯度下降学习算法来调整参数,如式( 5 ) - ( 10 )所示。通过调整,动量因子选为 0.6 ,而学习速率为 0.53

Page 24: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

4.3 GA-RBF 模型的预测• 通过训练得到 GA-RBF 模型之后,再利用新的输入值来获得预测值。在本文中,在 T为 900 时电流密度从 0到 700 内变化来预测电压。通过比较预测值与试验值来评价模型的精度,如图 4所示。同时,也对 BP神经网络模型也进行了预测。利用 matlab工具箱,预测结果如图 5所示。通过比较图 4 和 5 ,我们可以看出精度得到了很大的提高。这就说明 GA-RBF 在对 SOFC 建模方面具有更高的可行性和精度。

Page 25: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模
Page 26: 基于 GA-RBF 神经网络辨识的 SOFC 电堆的建模

5. 结论• 本文提出了一种基于遗传算法的 RBF 神经网络辨识技术,

建立了一个 SOFC 电堆的电特性模型。同时将该辨识方法与参数初始值随机取值的 RBF 神经网络辨识方法相对比,仿真结果证明该建模精度更高,说明基于 GA-RBF 模型实现 SOFC 电堆这类复杂非线性系统的建模是完全可行的。另外由于该模型以免了复杂的解析建模和用复杂的非线性微分方程组来描述电堆,使得非线性系统的输入输出特性能够较快的计算得到,从而为实现 SOFC 系统的控制特别是在线控制创造了条件。 SOFC 的 GA-RBF 辨识模型还需进一步完善,建立影响因素比较全面的性能模型,并应用于 SOFC 系统的在线控制。