APP下载

基于BP神经网络辨识模型的PEMFC系统建模

2020-03-20柯超甘屹王俊朱荣杰陈伟

软件工程 2020年3期
关键词:BP神经网络

柯超 甘屹 王俊 朱荣杰 陈伟

摘  要:为分析燃料电池系统特性,采用BP神经网络结构辨识质子交换膜燃料电池系统模型,模型输入为系统实际输入,模型输出为电堆输出电压和电堆工作温度。由于PEMFC系统是一个时变非线性系统,采用一种串-并联前向神经网络辨识结构模型,将模型前几个时刻输出作为模型输入,使得静态网络结构具有动态特性。BP网络模型通过PEMFC系统所得到的实验数据进辨识。训练完成后BP网络模型输出与实际系统输出基本一致,结果表明BP网络模型能够有效反映质子交换膜燃料电池系统输出电压和电堆温度特性。

关键词:质子交换膜燃料电池;BP神经网络;非线性系统建模;模型辨识

中图分类号:TP183     文献标识码:A

Abstract:In order to analyze the characteristics of the fuel cell system,BP neural network structure is used to identify the PEMFC system model.The model input is the actual input of the system,and the model output is the output voltage and working temperature of the stack.Since the PEMFC system is a time-varying nonlinear system,a series parallel forward neural network is used to identify the structural model.Meanwhile,the output of the first few moments of the model is taken as the following model input,so the static network structure has dynamic characteristics.BP network model conducts identification with the experimental data of PEMFC system.After training,the output of BP network model is basically the same as that of the actual system.The results show that BP network model can effectively reflect the output voltage and the stack temperature characteristics of PEMFC system.

Keywords:PEMFC;BP neural network;nonlinear system modeling;model identification

1   引言(Introduction)

數学模型是研究燃料电池稳态和静态响应、设计电池和控制策略中必不可少的工具,有助于减少研究所需实验测试次数。

近年来,国内外众多研究人员对质子交换膜燃料电池(Proton Exchange Membrane Fuel Cell,PEMFC)数学模型进行深入研究,文献[1]—文献[2]建立了PEMFC三维电化学模型,并对模型仿真结果和实验结果进行对比。文献[3]—文献6]以等效电路模型为基础模型,结合动态气体压力模型和动态热传输模型建立集总参数模型。

由于PEMFC发电过程涉及多学科、各个变量之间相互耦合和自身的非线性和时变性,建立的数学模型难免会出现大量微分和复杂代数方程,且存在大量假设。由于神经网络算法具有对任意非线性映射关系任意逼近的能力,而燃料电池是一个非常复杂的非线性时变系统,因此本文采用神经网络[7]建立PEMFC系统模型。

2   BP神经网络建模(BP Neural Network modeling)

质子交换膜燃料电池系统输入与输出之间是一个非常复杂的非线性时变的映射关系,其输出电压和电堆温度是关于负载电流、阳极氢气压力、空压机电压、散热风扇电压、室温和电堆初始化温度的函数。

2.1   BP网络确定

根据实验可测量和控制条件,选择系统模型的输入量为负载电流、阳极氢气压力、空压机电压、散热风扇电压;模型输出为电堆电压、电堆温度。

由于PEMFC系统输出既与当前时刻有关也和以前系统状态有关,为体现网络时间功能,一般通过两种方式来构建网络。第一种通过在网络输入中加延时输入单元;第二种采用局部递归神经网络,神经网络中引入动态环节。本文将采用第一种方法对PEMFC系统进行辨识。

基于前向神经网络加入延时作用输入单元的典型系统表现形式如下:

2.2   学习样本确定

为得到泛化能力强的模型,需确定能够全面、准确反映出待辨识系统的特征的学习样本。学习样本应该具有:致密性、遍历性和相容性这三种特性,致密性是指为了能够准确反映实际的系统模型结构,必须提供相应的数据;遍历性是指全局的概念,为提高模型的泛化能力,覆盖全局的数据范围是必要条件,覆盖的数据范围越广泛,所得到的模型泛化能力就会相对提高;相容性指不同样本的输入空间存在交叠区域时对网络学习的影响。

对实验数据进行相应处理,去除启动状态时候清扫电堆内部空气的部分数据,去除明显不和实际的数据等。最后整理得到的数据为4763组。为验证最后得到模型的准确性,将数据分为三组,分别为训练集、验证集和测试集;训练集用作网络输入训练;验证集用于验证模型,测试集用于测试模型泛化能力。

2.3   归一化处理

BP神经网络的输入层可以有各种变量,适用于各种模型,但每一个模型的输入变量的单位和数量级的差别可能非常大,如燃料电池输入变量之间单位不一、数据大小数量级也差别很大。为了使得所有的输入变量都处于同等的地位,必须对输入数据进行处理:

根据上式对样本处理完之后所得到的网络输入均归一化至0—1。对于网络模型的输出,其输出结果对应反归一化处理。

2.4   BP网络的实现

根据学习样本的数据,选择网络输入神经元个数为六个,输出神经元为两个,这样满足系统的最少输入输出要求的同时,降低模型的复杂度,能够加快模型的收敛时间和使模型具有较小计算复杂度。

根据前向反馈型BP神经网络的特性,理论上来讲,三层的网络能够以任意精度来逼近任意复杂的函数,为了降低模型的复杂度,设定初始的网络模型的层数为三层,分别为输入层、输出层和隐含层。

采用MATLAB神经网络工具箱函数 构建网络结构。其函数代码如下:

其中,用于创建一个BP网络;表示输入数据的最小值和最大值;表示第层神经元的个数,;为传输函数,默认值为;、和分别为网络训练函数,权值或阈值学习函数和性能函数。根据网络大小不同选择的学习算法也不同,对于大型网络首选RPROP(弹性)算法,内存需求最小,对于中型网络可选用贝叶斯正则化算法或者选用内存需求大,但收敛速度最快的Levenberg-Marquardt算法。可选基于梯度下降的学习函数或者梯度下降的动量学习函数;可选为均方误差函数MSE等可微函数。

3  仿真与实验验证 (Simulation and experimenal verification)

根据BP网络特点和燃料电池系统输出特性确定所建立的网络模型隐含层输出传递函数为transig函数,输出层采用purelin线性函数,性能函数为MSE均方误差函数,本文采用开放式空冷电堆系统得到的4763组样本数据来训练该网络,网络的初始学习率选择0.01,学习率应该设置较小值,因为当设定的学习率过大虽能加快收敛速度,但接近临界点的时候会产生动荡,使模型无法收敛。

使用MATLAB软件进行训练网络,首先设定模型的隐含层数量为15层,模型的最大训练次数为1000次。模型在93次训练结束之后得到最小误差为0.0046549,且后6次迭代过程中均未出现更低误差,因此在99次学习时结束训练,BP神经网络模型的误差学习曲线如图2所示,样本数据的60%为训练数据,20%为验证数据集,最后20%用于测试模型泛化能力。

样本数据的60%为训练数据,用于训练模型,样本数据的20%用于验证集,防止网络模型过拟合,最后的20%用于测试训练好的模型。将20%的数据同样进行归一化处理之后输入训练完成网络,得到误差回归系数R接近于1,最后总误差回归系数为0.9926。

当隐含层层数为15的时候,BP网络模型输入输出与实际电堆实验数据基本吻合。为了得到更好的模型辨识结果,可通过选择不同的中间隐含层的神经元个数来对比现在15个神经元的隐含层结构。设定隐含层数分别为10和20,使用相同的训练集、验证集和测试集分别进行学习,所得到的BP神经网络模型的误差学习曲线如图3和图4所示。

当隐含层数为10时,其最小误差为0.01613大于当隐含层数为15时的0.00465,因此表明降低隱含层数的同时,模型精度会降低;当隐含层书为20的时候,其最小误差为0.00167小于大于当隐含层数为15的0.00465,但其训练集和测试集最小误差均大于验证集的误差,表明模型在训练集、验证集和测试集的差异较大,即其泛化能力较弱,因此最后确定模型的隐含层数位15层。

BP神经网络模型在负载电流突变时电压输出与实际电堆输出比较如图5所示,Vstack为实验电堆输出电压,Vbp为神经网络模型输出电压,Istack为负载电流。随着负载电流的增大,模型电压和实际燃料电池输出电压下降。当电堆输出电流突变情况下,电堆输出电压线下降后上上升,然后到达稳定值,这是因为在电流发生突变的时候,氢气和空气需求的量就会发生变化,控制器控制辅助部件提供对应的流量和压力会存在一定的滞后,因此在电堆内部反应的时候收到燃料和氧化剂流动延迟的影响。BP网络模型的I-V曲线基本体现出了这种动态特性,因此认为BP网络辨识的模型结构能够有效体现出燃料电池系统的特性。

BP神经网络模型在负载电流突变时电堆温度输出与实际电堆输出比较如图6所示,Tstack为实验电堆输出电压,Tbp为神经网络模型输出电压,Istack为负载电流为在对应电流下达到电堆设定温度,当电流发生突变时,控制器需输出PWM来控制散热风扇电压,保证电堆温度变化不会超过设定的温度。BP网络模型输出的电堆温度与实际电流变化时电堆温度基本一致,能够准确反映电流变化时风扇控制电堆温度的变化曲线。

4   结论(Conclusion)

本文利用BP神经网络来辨识PEMFC系统模型。由于实际PEMFC系统的输出与当前时刻系统的输入和以前的系统状态均有关,因此在BP网络模型上加上延时输入单元,然后利用实验PEMFC系统所得到的输入输出数据来辨识网络模型。所得到的训练好的网络模型输出与实际系统输出基本吻合,表明所建立模型能够准确反映该空冷型燃料电池系统特性。

参考文献(References)

[1] Carton J G,Olabi A G.Three-dimensional proton exchange membrane fuel cell model:comparison of double channel and open pore cellular foam flow plates[J].Energy,2017(136):185-195.

[2] Shamardina O,Kondratenko M S,Chertovich A V,et al.A simple transient model for a high temperature PEM fuel cell impedance[J].International journal of hydrogen energy,2014,39(5):2224-2235.

[3] Chavan S L,Talange D B.Modeling and simulation of effect of double layer capacitance on PEM fuel cell performance[C].2017 7th International Conference on Power Systems (ICPS).IEEE,2017:259-264.

[4] Chavan S L,Talange D B.Modeling and performance evaluation of PEM fuel cell by controlling its input parameters[J].Energy,2017(138):437-445.

[5] 肖燕,常英杰,張伟,等.启动工况下质子交换膜燃料电池动态性能仿真分析[J].电化学,2018,24(02):166-173.

[6] 吕学勤,王龙田.基于可拓控制的质子交换膜燃料电池动态特性研究[J].可再生能源,2016,34(04):583-587.

[7] 雷宇飞,林玉梅.基于PSO-BP神经网络的入侵检测技术优化算法的研究[J].软件工程,2017,20(09):49-51.

作者简介:

柯  超(1995-),男,硕士生.研究领域:嵌入式软件开发,燃料电池.

甘  屹(1974-),男,博士,教授.研究领域:先进制造技术,智能制造技术,现代设计理论与方法.

王    俊(1994-),男,硕士生.研究领域:软件开发.

朱荣杰(1987-),男,硕士,高级工程师.研究领域:燃料电池.

陈  伟(1992-),男,硕士,工程师.研究领域:嵌入式开发,燃料电池.

猜你喜欢

BP神经网络
基于神经网络的北京市房价预测研究
一种基于OpenCV的车牌识别方法
基于遗传算法—BP神经网络的乳腺肿瘤辅助诊断模型
一种基于改进BP神经网络预测T/R组件温度的方法
基于BP神经网络的光通信系统故障诊断
提高BP神经网络学习速率的算法研究
就bp神经网络银行选址模型的相关研究
基于DEA—GA—BP的建设工程评标方法研究
复杂背景下的手势识别方法
BP神经网络在软件质量评价中的应用研究 