APP下载

基于GRU神经网络的燃煤电站NOx排放预测模型

2020-03-11王文广赵文杰

关键词:锅炉建模神经网络

王文广, 赵文杰

(华北电力大学 控制与计算机工程学院,河北 保定 071003)

0 引 言

随着世界能源需求的增加,火力发电占总发电量的比重在未来一段时间内仍然会不断上升[1]。为了解决火力发电带来的污染,烟气处理是目前最为有效的解决方案。氮氧化物(NOx)作为燃煤电站排放气体中的主要污染物之一,对空气质量有着严重的影响[2]。如今,选择性催化还原法(SCR)被大量采用来控制烟气中的NOx的含量。这种烟气处理方法的效率极大程度上都依赖于NOx浓度测量的准确性与可靠性。大多数燃煤电厂采用了连续排放监测系统(CEMS)来测量NOx排放。CEMS是直接抽取法测量,抽取和分析过程会使得测量滞后严重。而且烟气中粉尘等的影响,导致CEMS需要频繁的离线进行维护[3]。这使得采用CEMS的SCR脱硝控制系统难以满足日益严格的大气污染物排放要求。因此,建立一个具有良好精度的NOx排放预测软测量模型显得尤为重要。

研究者对燃煤锅炉燃烧过程中NOx生成过程已经做了不少研究,已有部分建立了NOx排放的机理模型。机理建模就是对系统的内部有足够的了解后,根据基本的物理、化学定律建立相应的数学模型。Zhao等人通过使用计算流体动力学(CFD)-化学动力学建模方法,建立了燃煤烧炉NOx形成和还原的模型[4]。Zhang等人对实际的锅炉进行简化,建立了炉膛的几何模型和稳态三维湍流反应模型,完成了对NOx排放的数值模拟[5]。文献[6]通过对循环硫化床锅炉密相区焦炭性NOx的生成机理进行试验研究,考察密相区传质和传热特性对NOx生成的影响,建立了锅炉氮氧化物的排放模型。事实上,NOx排放受众多因素的影响,由于燃烧过程的复杂性、不确定性、强耦合和非线性[7],使用机理建模都对建模对象有着一定的假设和简化。所以,通过机理建模得到的模型很难达到满足工业需求的准确性和可靠性。

数据存储技术的成熟和人工智能技术的发展,使得基于数据驱动的建模方法变得越来越普遍。相对于机理模型,数据模型是一种黑箱模型。它不需要关注系统内部的结构,可以用来解决具有复杂甚至是未知机理的建模问题。人工智能技术因其对非线性函数良好的拟合能力,现在已经被大量使用在过程建模之中。Zhou等人使用人工神经网络(ANN)建立了大容量煤粉燃烧锅炉的NOx排放模型[8]。相较于机理模型,ANN模型更加方便直观,并且在各种情况下都取得了较好的预测效果。Iliyas等人使用径向基函数(RBF)神经网络用于NOx预测,证实RBF神经网络在训练速度和准确性方面都优于传统的多层感知器(MLP)神经网络[9]。Wei等人提出了基于传统遗传算法(CGA)的支持向量回归(SVR)模型,并表明SVR模型比ANN模型的准确性更好[10]。支持向量机(SVM) 是建立在统计学习理论的VC维理论和结构风险最小原理基础上的一种学习算法,它在泛化能力上比传统的ANN具有一定的优势。Suykens & Vandewalle 提出的最小二乘支持向量机(LSSVM)将SVM中的不等式约束变为等式约束[11],简化了SVM的求解难度。Ahmed等人构建了LSSVM的实时NOx预测模型,并且该模型在较长时间内具有较高的准确性,鲁棒性强[12]。可以发现,过去很长的一段时间中,研究者们的研究重点都放在了提升算法的性能。随着计算机技术的不断发展,计算设备计算能力的提升以及ANN与SVM结构的不断改善,如今涌现了一大批性能良好的人工智能算法。

工业过程建模往往都不是静态的一一对应关系。动态模型是指描述系统各量之间随时间变化而变化的规律的数学表达式。动态过程中,这一时刻的输出可能与之前很多时刻的输入之间都有联系。为了能够实现动态建模,往往都需要为ANN与SVM输入大量不同时间的数据,这毫无疑问增加了输入模型数据的复杂程度。冗余信息的输入,对模型的精度和泛化能力的影响是十分严重的。Shakil等人使用主成分分析(PCA)减少输入数据维度,遗传算法(GA)估计系统的时间延迟,建立了NOx动态预测模型[13]。Yang等人使用反向传播(BP)来选择变量以简化模型,建立了基于BP-LSSVM的脱硝模型[14]。文献[15]通过互信息变量选择方法剔除冗余变量确定模型的输入变量,并使用粒子群算法(PSO)实现输入变量阶次的寻优,建立了燃烧系统的动态模型。但是,动态建模中时间延迟的确定和冗余信息的消除仍然没有形成一种通用的解决方案。一旦研究的对象发生变化,原有的研究结果就不再适用。

循环神经网络(RNN)是一种特殊结构的神经网络,它通过内部状态的传递在自然语言处理、机器翻译和时序预测中取得了很好的效果。RNN可以使用内部存储器单元来处理任意输入序列,从而保证学习时间序列的能力,捕捉系统时间和空间的演变[16]。传统的RNN普遍存在梯度消失的现象,使其无法捕捉输入序列中的长时间依赖性。所以使用RNN训练具有长时间延迟的模型十分困难。Li等人使用长短期记忆(LSTM)神经网络从历史数据中自动提取有用的特征,得到了空气污染物浓度预测模型[17]。并将其与其他传统模型比较,得到了更好的结果。LSTM极大程度上避免了梯度消失的发生,保证了信息能够长时间在神经网络中传播。Cho等人在LSTM的基础上,简化了LSTM的结构,所提出的门控循环单元(GRU)成为了目前最为流行的RNN结构之一[18]。Chung等人通过比较不同类型递归单元的RNN发现,GRU的性能与LSTM相当,但是都比传统的单元更好[19]。GRU具有比LSTM更加简单的结构,保证其拥有更快的训练速度。而几乎相同的性能使得GRU更加适合用于动态过程建模。由于GRU结构较为新颖,尚未大量应用于工业过程预测建模领域。本文将使用GRU循环神经网络建立燃煤电站NOx排放预测模型。

本文的贡献如下:

(1)提出了一种基于数据驱动的工业过程动力学系统建模方法,该方法可以避免普通建模过程中难以提取工业运行数据的时间特征的问题,使得人工智能建模过程更加普适。

(2)使用GRU作为RNN的神经网络单元,解决了在时序建模中RNN梯度消失的问题,使得RNN能够分析长时间的时间序列问题。

(3)使用现场中风量、煤量和氧量等数据,建立了精度和泛化性良好的燃煤电站NOx排放的预测模型。

1 动态系统预测模型

1.1 动力学系统描述

动力学系统是指系统状态随时间而变化的系统或者按确定性规律随时间演化的系统。对于任意一个动力学系统,通常都可以用NARX模型结构来描述。NARX模型结构如公式(1)所示[20]:

(1)

式中:f(·)为任意一个线性、非线性函数;y(t-i)为t-i时刻系统输出的观测值,i=0,1,2,…,m;x(t-j)为t-j时刻系统输入的观测值,j=0,1,2,…,n;e(t)为t时刻的白噪声。在过去的数据建模中,都是使用ANN或SVM来近似拟合f(·)。可以看出系统输入变量集非常复杂,简单选取一个输入变量阶次往往会导致系统中引入大量无关的冗余变量,使得建立模型的精度和泛化能力变差。

动力学系统的状态也可以使用状态输出模型来描述系统。离散化的状态输出模型如式(2)所示:

(2)

式中:f(·)、g(·)分别为任意一个线性、非线性函数;h(t)为t时刻系统隐藏状态的观测值;y(t)为t时刻系统输出的观测值;x(t)为t时刻系统输入的观测值。可以看出,利用动力学系统的状态空间表达式可以有效解决NARX模型结构中输入变量集十分复杂的问题。但是,工业过程的隐藏状态往往是无法完全通过测量得到的。而通过使用输入输出数据观测系统的所有状态的过程是十分困难的,所以很难使用该方法去简化传统人工智能建模方法的模型输入变量集。

1.2 GRU神经网络

GRU神经网络是一种使用门控单元的RNN。RNN会对输入神经网络中的信息进行记忆,并应用于当前输出的计算中。RNN隐藏层之间的节点是相互连接的,并且隐藏层的输入不仅包含输入层的输出,还包括上一时刻隐藏层的状态。将一个RNN单元按时间展开,其结构如图1所示。

图1 时间展开的RNN单元Fig.1 Time-expanded RNN unit

式中:h和x分别为RNN单元的输出以及输入,单元输出又重新做为状态参与下一次输出的计算。

整体的RNN的前向运算过程如公式(3)所示:

(3)

在使用式(3)所示RNN建立式(2)的模型前,现做出以下证明:

引理1:

万有逼近定理:如果一个隐含层包含足够多的神经元,多层前馈神经网络能以任意精度逼近从一个有限维空间到另一个有限维的空间的Borel可测函数。

对于式(2)所示状态输出模型,现提出以下两点假设:

假设1:

系统稳定,即输入有界,输出必有界的系统。即,对于x∈Ωm⊂Rm,其中Ωm为m维闭集,必定存在一个确定的e1,且e1>0,使得max‖h(t)‖+max‖y(t)‖

假设2:

f(·)与g(·)连续,且满足Lipschitz条件。即,在假设一成立得条件下,对于∀(h1,x),(h2,x),必定存在一个正数l,使得式(4)成立。

(4)

(5)

(6)

(7)

将式(6)代入式(7)可得式(8)。

(8)

显然,∃ef、eg使得对于∀e>0,均有式(9)成立。

(9)

(10)

由以上证明可知,满足假设1和假设2的状态输出过程,可以被一个隐含层包含足够多的神经元的多层递归神经网络以任意精度逼近。

工业过程对象的结构一般情况下也不会随时间的变化而变化,这保证了RNN可以用于工业过程动力学建模。同时,RNN通过在不同时间尺度中使用相同的神经元来处理对应时刻的模型输入,与传统模型通过扩充历史数据作为模型输入相比,简化了描述系统所需要的神经网络的复杂度。但是,RNN并没有大量应用于动力学系统建模中,其主要原因是RNN训练过程中随时间反向传递(BPTT)过程中不可避免的会出现梯度消失的问题[21]。设定单个RNN神经元输出的误差为如式(11)所示:

(11)

(12)

式中:net(i)为i时刻RNN单元激活函数输入值。当式(7)中σ′(net(i))<1时,梯度就会出现指数下降的现象,即梯度消失。

LSTM和GRU通过使用一种“门”的结构,极大的避免了梯度消失的问题,可以更有效的分析长期依赖关系。并且GRU在LSTM上减少了单元中门的个数,化简了单元复杂度[22]。一个GRU是由更新门,重置门和输出门三部分组成,其内部结构如图2所示。

图2 GRU内部结构图Fig.2 Internal structure of GRU

重置门通过计算输出0~1之间的数,控制前一时刻的隐藏状态进入输出门的比例。更新门通过计算输出0~1之间的数,控制隐藏状态的更新。输出门计算候选隐藏状态的值。一般情况下,重置门与更新门都采用sigmoid函数作为激励函数,输出门则选取tanh函数。但是为了更好的避免梯度消失的发生,输出门将使用ReLU函数。具体计算过程如式(13)~(16)所示:

r(t)=sigmoid(Urh(t-1)+Wrx(t))

(13)

z(t)=sigmoid(Uzh(t-1)+Wzx(t))

(14)

(15)

(16)

式中:U和W分别为各个门的隐藏状态权重和输入变量权重;⊙为Hadamard积。

将同时刻系统的输入数据作为GRU神经网络的输入张量。按照时间顺序,依次将输入数据送入神经网络中,与GRU层提取出的神经网络隐藏状态一起计算生成神经网络预测输出。整个预测模型结构如图3所示。

图3 预测模型结构Fig.3 Prediction model structure

图中,x1(i)~xn(i)分别是第i时刻的系统n个不同的输入变量的观测值,y(i)是第i时刻模型输出的观测值。

GRU神经网络的输入张量。按照时间顺序,将历史数据依次通过多层GRU全连接层,并在接下来通过完全连接层合并特征,生成预测当前时刻之后m个采样周期的输出。将GRU神经网络的预测值与真实值之间的平均平方差定义为损失函数,随时间反向传播。整个预测模型结构如图3所示。

2 模型测试

取标准例子如式(17)所示:

(17)

可以看出,这是一个y关于x1和x2的动态非线性模型。现使用0~1之间的白噪声生成x1和x2,计算y的值。从中选取1 000个连续的数据集作为训练数据集,500个连续的数据集作为测试数据集。

分别建立4个模型,对比传统神经网络建模与GRU神经网络建模之间的区别。模型1~3是传统的神经网络模型,它们都采用了相同的全连接BP神经网络结构,但是它们的输入变量集不同。模型1的输入变量集为{x1(t);x2(t)};模型2的输入变量集为{x1(t-1);x1(t-3);x1(t-5);x2(t);x2(t-1);x2(t-2)};模型3的输入变量集为{x1(t-i);x2(t-i)},其中i=0,1,… 5。模型4为GRU神经网络,它的输入变量集为{x1(t);x2(t)}。为了保证神经网络拟合能力大致相同,所有模型都拥有2个隐含层,每层神经元个数都为10个,并且拥有相同的训练次数和学习速率,分别为5 000,0.001。最终得到模型对测试数据集和训练数据集的拟合情况如表1所示。

表1 模型比较结果

由表1可知,模型2与模型4都取得了很好的效果,可以看出输入变量集选择正确对传统建模的影响极为重要。当输入变量集选择过少时,模型无法表达出输出的所有信息。当输入变量集选择过多时,冗余的信息会增加模型训练的难度,降低模型的泛化能力和精确度。GRU神经网络模型虽然选择了较少的输入变量集,但是由于隐藏状态的传递,完成了模型的建立。由此可以看出,合理训练后的GRU模型,可以通过输入输出数据间的关系,从输入数据集中提取出合理的隐藏状态,简化模型的输入变量集的选择过程,增加了模型的适用程度。

3 燃煤锅炉NOx预测模型

3.1 锅炉介绍及输入数据选择

实验锅炉是法国阿尔斯通公司制造的某电厂2#1099.3T/H强制循环锅炉。该锅炉采用中间储仓式热风制粉系统,燃煤为松藻无烟煤,燃烧器为直流缝隙式燃烧器。锅炉结构如图4所示。

图4 锅炉结构Fig.4 Boiler structure

电站锅炉燃烧过程中产生的NOx按照其生成来源主要分为三种类型,即燃料型、热力型以及快速型。燃料型NOx是由燃料中的氮化合物在燃烧过程中受热分解氧化生成,约占总NOx含量的70%~80%,主要受煤种特性和运行工况的影响。热力型NOx是在高温条件下氮气被氧气氧化生成,约占总NOx含量的10%~20%,主要受炉内温度和风煤比的影响。快速型NOx是由燃料挥发分与氮气氧气反应生成,占总NOx含量的5%以下,一般不做考虑。总的来说,影响燃煤锅炉NOx排放的主要因素为煤质特性、空气含量等。

基于以上分析,选取给煤量、一次风量、二次风量、燃尽风(OFA)量、分离燃尽风(SOFA)量和烟气含氧量作为输入变量。NOx排放量作为模型输出变量。现从DCS系统中取得采样周期为10 s的运行数据,共1 330个记录。

3.2 模型建立

为了评估所提出的方法的有效性,将使用两个指标评估系统对于训练数据集和测试数据集的拟合效果,分别是均方根误差(RMSE)和平均绝对百分误差(MAPE)。具体指标计算公式如式(18)、(19)所示:

(18)

(19)

选所取数据的前70%作为训练数据集对模型进行训练,取后30%数据作为测试数据集进行模型测试,建立燃煤电站NOx排放模型。得到结果如图5所示。

图5 实验数据集拟合曲线Fig.5 Fitted curves from experimental data set

此时模型对于训练数据和测试数据的MAPE分别为2.0%和4.1%,均在5%以内,满足控制系统的精度需求并且具有较好的泛化能力。然后,将验证模型对NOx排放的预测能力。表2展示了在预测时间不断增加的情况下,模型对于训练数据和测试数据的拟合精度。可以发现,在160 s以内模型都具有较好的预测效果,训练数据和测试数据的MAPE都保持在5%以内。超过160 s之后,模型对训练数据集和测试数据集的拟合能力都大幅下降。而现场CEMS仪表测量延迟大约为60~120 s之间。该模型的预测能力和精确度都可以满足现有的燃煤锅炉SCR控制系统。

表2 不同预测步数下的预测精度

Tab.2 Prediction accuracy under different prediction steps

预测/s训练集测试集RMSE /(mg/m3)MAPE /(%)RMSE /(mg/m3)MAPE /(%)07.12.013.14.1408.12.212.94.0809.22.413.54.01209.42.713.63.716010.12.813.94.020011.82.916.95.124015.14.017.15.5

为了验证所提出的GRU神经网络在工业过程建模中的优势,每个模型都拥有2个隐含层,每层结点数为10个,训练数据集和测试数据集与NOx预测模型采用数据相同,将其与LSTM神经网络与RNN进行了比较。在保证三种模型使用相同的训练数据集和测试数据集的前提条件下,同时也保证了神经网络层数与每层神经网络节点数也相同。得到预测模型对训练数据和测试数据的拟合精度如表3所示。

表3 不同模型结构的预测精度

Tab.3 Prediction accuracy in different model structures

模型训练集测试集RMSE/ (mg/m3)MAPE/ (%)RMSE /(mg/m3)MAPE /(%)训练时间/sRNN7.52.121.15.8262LSTM7.92.315.94.1618GRU7.12.013.14.1533

由表可知GRU与LSTM都得到了较好的结果,但是由于GRU是LSTM的一种简化结构,拥有更快的训练速度。RNN虽然训练速度很快,但是由于会出现梯度消失的原因,导致信息难以长时间传递,使得其精度不能满足要求。

4 结 论

本文提出了一种基于历史数据驱动的工业过程动力学建模的GRU循环神经网络模型。GRU神经网络模型能够从多时间尺度上的时间序列中自动确定最佳时间,并解决了工业过程建模中输入特征集冗余信息过多的问题。为了验证GRU循环神经网络模型性能,使用火力发电站NOx排放相关历史数据,分别建立了GRU神经网络、LSTM神经网络和普通RNN三种模型。实验表明,所提出的GRU神经网络在性能上要优于其他模型,在模型精度和泛化能力以及训练速度上有着一定优势。通过研究发现,深度学习循环神经网络模型在过程建模中具有良好的预测性能,并且这种方法更加普适,化简了建模难度,能够实现对燃煤电站锅炉NOx排放的准确预测。

猜你喜欢

锅炉建模神经网络
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
对干熄焦余热锅炉运行爆管的几点探讨
神经网络抑制无线通信干扰探究
12CrlMoV锅炉吊杆用钢的开发生产实践
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
关于锅炉检验的探讨
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定