基于神经网络的核反应堆堆芯热功率预测
2021-11-19张奥鑫杨韬燃
张奥鑫,滕 婧,琚 贇,杨韬燃
(华北电力大学控制与计算机工程学院,北京 102206)
1 引言
1.1 核反应堆堆芯热功率预测
核电站运行期间,反应堆堆芯热功率分布是十分重要的状态参数,堆芯热功率分布正常是保证反应堆安全、经济运行的基础。如果堆芯热功率高于一定值,反应堆将超负荷运行,甚至烧坏,进而引发事故,危及人身安全;反之,如果堆芯热功率低于一定值,则无法达到其额定运行条件,反应堆发电量将会降低,影响机组的经济性。因此,实时监控和预测反应堆堆芯热功率分布,对提高反应堆的安全性、经济性以及运行灵活性都有十分重要的意义。然而,基于核反应机理的物理模型和实验模型的传统分析方法难以对堆芯功率分布进行准确、全面的预测。反应堆热功率测量的常用方法是中子通量密度法[1],即通过测量反应堆中子通量密度来推测反应堆堆芯热功率的分布。但是,反应堆的中子通量密度不仅与堆芯热功率相关,还和燃料的消耗程度(燃耗)有关,且燃耗变化会引起堆外中子通量密度变化,因此该方法测量结果存在较大误差。针对该问题,文献[1]使用谐波合成法和燃耗分组法,分析了燃耗特性与堆芯热功率分布的关系。宋世葭[2]等人提出了热平衡的方法,利用能量平衡原理计算反应堆堆芯热功率分布。文献[3]提出了使用堆芯外探测器监测堆内功率分布,通过分析堆芯外探测器的探测参数,建立相应的空间响应函数,进而确定堆内功率分布。然而,探测器的灵敏度和探测结果的不确定性都将影响堆内功率分布估计的精度,文献[4]针对这一问题,开发了NECP-ONLINE在线分析系统,定量分析了功率分布与探测器信号的相对灵敏度系数之间的关系。姜頔[5]等人提出了一种基于字典序列优化的核反应堆堆芯热功率预测控制方法,将功率控制问题转化为具有不同目标优先级的字典序列优化问题,在一定程度上提高了预测的精度。此外,影响反应堆堆芯热功率的因素还包括,时间平均燃耗、硼浓度、换料引起的反应性增益、卸料燃耗等。然而,对这些参数的测量往往存在误差,难以利用它们得到精确的堆芯热功率分布估计。
1.2 人工神经网络在核动力领域的应用
由于核能的特殊性和复杂性,核电生产过程中的安全性和可靠性一直是核电工程的重要研究课题,神经网络的提出为解决这类问题提供了一个良好的思路。由于核反应过程涉及大量非线性和不确定性问题,这些问题很难通过确定的数学或物理表达进行描述和建模,而人工神经网络在处理此类问题方面拥有明显的优势。人工神经网络[7][6]作为对人脑神经结构和功能的模拟,能学习和存储输入-输出模式的复杂映射关系。首先构建网络结构初步建立输入与输出数据之间的映射,再根据当前网络输出和实际输出数据之间的误差,通过梯度下降等方式调整网络参数,不断进行优化,最终实现收敛,储存各神经元权值参数。由于神经网络建模不需基于严格的物理反应过程描述,因此在核能领域已经开展了许多应用,如基于BP神经网络和RBF神经网络解决故障诊断问题[7];在核燃料堆反应参数预测中,Hakim Mazrou[8]等人利用人工神经网络预测核反应堆的安全参数,如倍增系数、燃料功率峰值等;文献[9]利用递归神经网络进行非线性建模,实现了对核反应堆堆芯参数的预测;Seixas等人针对核燃料棒破损问题,采用超声波检测和神经网络识别方法,成功完成了对破损燃料棒的探测[10]。鉴于神经网络在核电领域的成功应用,本文基于深度学习框架Tensorflow[11],采用人工神经网络技术,结合仪器探测到的核反应堆参数,包括堆芯运行状态和通道运行状态等历史数据,构建深度神经网络模型,完成对核反应堆堆芯热功率分布的预测。
本文随后将介绍相关数据特征,然后从以下几部分分别进行阐述:第2节介绍本文所采用的神经网络模型,并针对堆内功率分布估计问题进行模型结构优化;第3节为仿真实验和结果分析;第4节进行总结和展望。
1.3 核功率预测特征介绍
本文基于某重水堆(CUDA)核电站机组的真实数据,原始数据集包含65维特征和321480条数据,其特征情况参见表1。
表1 某重水堆核电站可探测数据特征
从表1可以看出,满功率日是其中最为特殊的特征,在不同满功率日条件下,核电机组功率相关数据由于控制棒的变化会进行调整,从而维护核反应堆内部的能量平衡。所以可以将同一满功率日条件下的数据看做一个时刻的状态进行处理。该数据集中每一个满功率日包含380条通道监测数据,在后续处理中,将380条数据作为一组输入数据。其他输入数据特征主要分为两大类,即通道运行状态和堆芯运行状态,具体介绍如下:
1)通道运行状态
核反应堆中每一个燃料组件都封装在一个单独的压力管内,称作“燃料通道”或技术通道,在CANDU重水堆核电站中,每个通道装载12个燃料棒束。在反应进行过程中,燃料成分的损耗,即燃耗,将引起堆芯反应状态的变化,可以在一定程度上反映当前堆芯热功率的分布状况。同时,通过监测和分析通道运行的数据,如棒束燃耗分布、棒束功率分布、卸料燃耗等,可以判断通道的运行状态。此外,其他通道监测参数,如轴向功率倾斜、通道超功率因子等参数亦可以用来分析堆芯的热功率分布。
2)堆芯运行状态
堆芯运行监测[12]通过连续监测和分析反应堆中的区域功率、冷却剂重水纯度、区域初始液位、硼浓度等参数,实时监控堆芯内反应情况和堆芯热功率分布状态。为确保反应堆在稳定功率下运行,必须不断补偿由于燃耗而损失的反应性,实际操作中主要通过改变溶于冷却剂中的硼浓度进行调节。此外,随着反应的进行,回路中冷却剂的液位和重水纯度同样会发生变化,这些数据也可以用来分析堆芯反应过程中热功率分布情况。由于探测到的数据存在偏差,在进行建模分析时同样需考虑探测器最大偏差值。
2 堆芯热功率分布神经网络预测模型
本文构建了基于满功率日时间序列的长短期记忆(LSTM)循环神经网络和基于特征再提取的卷积神经网络(CNN)对堆芯热功率分布进行预测。由于CNN的卷积和池化操作本身具有特征提取和降维的功能,其输入使用表1中提到的所有64维特征(满功率日特征被用来进行数据分组)。对于LSTM循环神经网络,我们基于特征工程方法首先对数据进行了特征筛选,然后再结合反应堆反应机理和专家经验选择了16个对堆芯热功率影响较大的状态特征,分别是:满功率日、通道驻留时间、时间平均燃耗,平均出口卸料燃耗、换料引起的反应性增益、最大棒束功率、最大通道功率、轴向功率倾斜、通道超功率因子、初始平均液位、区域初始最大液位偏差、计算出的硼浓度、通道卸料燃耗、冷却剂重水纯度、慢化剂重水纯度、探测器最大偏差。
2.1 基于满功率日时间序列的LSTM循环神经网络
循环神经网络与BP神经网络最大的不同为是否引入隐藏层节点间的内连接,隐藏层节点的计算不仅依赖于当前输入层的输入值,还依赖于上一时刻该隐藏层各节点的输出值。因此,循环神经网络被广泛用于处理基于时间序列的问题。本研究中,同一通道的数据是是按满功率日作为时间特征有序排列的,核反应堆堆芯热功率预测也可以看做一个基于时间序列数据的回归问题,使用循环神经网络求解。而传统的循环神经网络容易出现梯度消失问题,且难以发现序列中时间间隔较大的时刻之间的联系,LSTM网络作为一种特殊的循环神经网络可以有效解决这一问题,LSTM在隐藏层加入控制状态更新的遗忘门、输入门、更新门和输出门,来选择性的保留和遗忘部分之前时刻的信息,使网络对之前的输入有了记忆能力[14]。
如图1为LSTM隐藏层结构示意图。首先,遗忘门决定状态中需要丢弃的信息,通过计算遗忘门系数ft来实现,公式为
图1 LSTM隐藏层结构图
ft=δ(Wf*[ht-1,xt]+bf)
(1)
it=δ(Wi*[ht-1,xt]+bi)
(2)
(3)
(4)
最后,输出门根据ht-1,xt,Ct计算输出门系数Ot和当前时刻的输出值ht
Ot=δ(Wo*[ht-1,xt]+bO)
(5)
ht=Ot*tanh(Ct)
(6)
在上述公式中,Wf、Wi、WC、WO分别对应ft、it、Ct、Ot的权值矩阵,bf、bi、bC、bO为相应的偏置矩阵,ht、ht-1为t时刻和t-1时刻隐藏层的输出向量,xt为当前时刻输入值。δ为sigmoid激活函数,它可以将数据映射在0~1之间,数值越大表示其对结果的影响程度越大;而另一个激活函数tanh 则用在状态更新和输出上。当序列第t时刻数据输入到网络中时,LSTM隐藏层的输入包括当前时刻的输入xt和上一时刻的输出ht-1,以及隐藏层的状态Ct-1。隐藏层的任务就是计算并输出ht,并更新状态Ct。
2.2 基于特征再提取的卷积神经网络
BP神经网络每两层间均采用全连接,而卷积神经网络在卷积层和池化层采用局部连接的形式,通过卷积和池化操作对数据进行特征提取,同时也可以对数据进行降维[14],自行抽取局部特征,保留主要信息,挖掘局部数据的相关性。
同一满功率日下的380个通道的特征矩阵可被看做一张图片,由于使用的数据只有二维,即长度(样本数)和宽度(特征数),在输入层,可以将它看作灰度图像,即只有一个颜色通道,对于深度一维设置为1。使用卷积神经网络进行特征提取,减少了特征工程的工作量,其独有的局部视野感受能力为数据集在局部特征分析上提供了新的思路。因此,可以采用基于卷积神经网络的预测方法。
一般的卷积神经网络包含两部分:特征提取层和特征映射层。特征提取层也即是卷积层和池化层,该层每个神经元与前一层的局部接受域相连,并提取该局部特征。进行卷积操作时,感受视野的大小不同同样会影响到局部特征的提取,本文尝试了3*3和5*5的感受视野大小,实验表明,3*3的感受视野预测效果更好,池化窗口大小选择2*2大小。网络通常由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。
如图2所示,本文建立包含两个卷积层和两个池化层的卷积神经网络结构,下面对各个层的操作进行介绍:
图2 包含两个卷积层的卷积神经网络模型
在卷积层,卷积神经网络采用局部过滤器,进行卷积操作,取输入项的局部矩阵进行局部过滤,即与卷积核进行内积运算,其计算过程可表示为
(7)
图3 BP神经网络的损失函数变化
池化层,通常被称作下采样层,跟随在一个卷积层后,可进一步缩小矩阵维数、同时排除异常数据的影响。在池化层,前一个卷积层的输出作为该层的输入特征。首先设置窗口大小,然后通过窗口滑动的方式,用窗口区域最大值来表示该窗口的特征值,组合这些特征值得到降维后的特征值矩阵,池化过程可表示为
(8)
经过两轮卷积层和池化层处理后得到降维后的特征值矩阵,然后通过最后一层全连接层将其与输出层相连接,全连接层到输出层的计算公式是
xl=f(Klxl-1+bl)
(9)
3 实验与仿真分析
3.1 数据预处理
3.1.1 数据归一化
3.1.2 缺失值处理
在数据采集过程中,由于人为操作不当、设备老化等因素,会有一部分数据存在缺失,从而影响模型的性能和训练准确度。因此,在对原始数据进行处理时,对于缺失值较多的特征直接弃用,对于缺失值较少的特征进行了数据补充,本文采用的补充方法是在缺失值处补充该特征的平均值,以降低缺失数据对模型预测结果的的影响。
3.2 网络结构优化
基于Tensorflow神经网络框架,分别搭建包含两个隐藏层的BP神经网络、三层LSTM神经网络和包含两个卷积层和两个池化层的卷积神经网络。BP神经网络中输入层节点为16个,第一隐藏层有10个节点,第二隐藏层有6个节点,该数目是根据实验在经验值附近选择的最佳值,输出层为1个节点;LSTM隐藏层包含LSTM神经网络单元,输入层为16个输入节点,隐藏层有32个输出节点,输出层为1个节点;对于CNN网络模型,第一卷积层设置4个卷积核进行卷积,生成4个特征矩阵,第二卷积层设置2个卷积核,分别对4个特征矩阵进行再卷积,生成8个特征矩阵。在选择卷积核和池化窗口大小时,经过多次尝试,选取了3*3的卷积核大小,步长是(1,1),池化层的池化窗口大小为2*2,步长为(2,1),这样经过两轮卷积层和池化层的操作,将原始数据的380*64*1维输入特征矩阵转化为380*16*8的降维后的特征矩阵,最后以两个全连接层作为输出层,完成功率分布预测。误差函数均采用最小均方误差函数,输出层激活函数均为Sigmoid函数。
3.3 实验分析
3.3.1 小批量训练网络
通过对样本数据的观察和分析,由于数据集较大,一次性把所有数据代入模型会使网络训练速度慢、效率低。针对该问题,神经网络训练过程中通常采用Mini_Batching方法进行处理,该方法的思想是每次选取数据集的一个子集代入模型训练,把所有批次数据全部代入模型后,求所有批次训练数据损失函数的平均值,然后对该损失函数进行优化。该方法大大提高了网络的学习速率,同时,也会使网络的梯度更准确,避免陷入局部最优,有助于找到全局最优解。本文模型训练过程中,每次训练选择一个满功率日下的380个通道的样本数据进行训练,即Batch_size值取380。
3.3.2 分析损失函数
为了对模型进行性能分析,需要设定相应的评价指标。在模型训练过程中,通常采用损失函数作为模型预测准确性的指标[15]。在基于神经网络的堆芯热功率预测模型中,常用的损失函数有两种:均方误差损失函数(MSE)和平均绝对误差损失函数(MAE),通过多次试验证明:作为训练过程中的优化目标,MSE相比于MAE拥有更好的性能,因此MAE可以作为模型的评价指标。模型训练的准则就是使损失函数值尽可能小,采用自适应矩估计梯度下降法对损失函数进行优化。以下是对三种神经网络模型的均方差损失函数的分析。
由图3、图4和图5可以看出,模型在训练200次时,Loss值达到0.01并基本趋于稳定,此时可以停止训练。LSTM模型在训练过程中收敛速度更快,在前100次下降明显,很快就到达了稳定点,而BP神经网络和CNN达到稳定点需要更多的训练次数。
图4 CNN的损失函数变化
图5 LSTM的损失函数变化
3.3.3 特征选择对模型的影响
由于原始数据特征维度过大,而训练数据维度过大时往往会使得模型过于复杂,神经网络学习到有用信息的难度也大大增加,导致模型出现过拟合现象,即在训练集上表现良好,但在测试集上表现却很差。本文在模型训练前基于现有研究对数据进行了特征筛选,在前文中已经介绍。
为评价特征筛选后模型的表现,使用筛选前的原始数据集和筛选后的数据集,分别与BP神经网络和LSTM网络模型的训练结果进行了对比,对比结果如图6和图7。
图6 使用不同数据时的模型拟合曲线
图7 使用不同数据时的模型拟合曲线和误差曲线
如图6和图7所示,通过模型在测试集上的表现可以看出,进行特征选择提高了神经网络的性能,在同样迭代200次的情况下,损失函数数值下降明显;BP神经网络和LSTM神经网络的模型拟合效果得到了显著提高,预测误差显著下降,模型泛化性能显著增强。
对于卷积神经网络,由于CNN本身可以通过卷积和池化操作进行降维,从而提取数据的主要信息,研究选择较多的64个特征进行训练,同样可将数据集进行降维,且能达到较高的训练精度。
3.3.4 三种模型的预测效果分析
经过数据预处理和对网络结构进行优化,实验最终得到了各个网络模型在测试集上的表现。
由图8、图9和图10可知,通过拟合曲线图可以看出,三种神经网络模型都具有良好的拟合效果,预测误差基本都保持在在±100MW以内,且绝大部分样本的误差在±50MW以内。从中可以看出三种网络模型均能通过训练学习到特征值与目标值之间的内在关系,在核反应堆堆芯热功率预测中表现了良好的性能,在测试集上有着十分可靠的预测效果。
图8 BP神经网络预测误差曲线
图9 卷积神经网络预测误差曲线
图10 循环神经网络预测误差曲线
同时,采用了两种评价指标对三种神经网络模型预测效果的绝对误差和相对误差进行了分析。绝对误差(AE)即某一预测值对于其真实值的误差的绝对值,平均绝对误差(MAE)指所有样本绝对误差的平均值。相对误差(RE)是预测误差绝对值与原真实值的比值。通过分析绝对误差和相对误差,来评价模型的单样本和整体预测性能。以一个满功率日的380组数据为例,统计结果如下。
从表2可以看出,相对于BP神经网络,LSTM神经网络和卷积神经网络的预测结果中绝对误差小于50MW的数据的所占比例分别达到97.63%和96.31%,平均绝对误差分别为17.49MW、22.19MW,性能得到很大提升。绝对误差超过150MW的数据只占很小的比例,不超过样本总数的0.78%。
表2 预测结果绝对误差分析表
从表3可以看出,相比较于BP神经网络,LSTM神经网络和卷积神经网络预测结果中相对误差小于5%的数据所占比例分别到达97.11%和95.53%,相对误差高于10%的数据比例分别为1.05%和1.32%。通过实验结果可以看出:相比较于BP神经网络和CNN模型,由于数据集是基于时间序列来构建的,不同时刻的反应堆状态数据存在较大的关联,所以LSTM网络具有更好的预测性能。综上所述,基于神经网络的预测方法,能够很好的满足核反应堆堆芯热功率预测的需求。
表3 预测结果相对误差分析表
4 结论
本文分别使用基于LSTM循环神经网络模型和特征再提取的CNN模型对满功率日时间序列的反应堆堆芯热功率分布进行了预测,并针对实际问题,将数据处理为时序数据和图片像素矩阵数据,以方便模型的使用,并对现有神经网络模型进行了结构优化。本文针对不同模型的预测效果进行分析,经过特殊结构设计的两种神经网络模型,均可以实现对预测数据的适应,并具有良好的预测性能,且与传统BP神经网络模型相比,具有特征提取的LSTM和CNN模型预测效果得到显著提高。神经网络方法不仅方便、快捷,同时具有良好的预测效果,大大提高了核反应堆堆芯预测效率。神经网络具有强大的自我学习能力,不同的网络模型对堆芯热功率预测均有良好的预测效果和稳定性,对今后核反应堆堆芯参数预测研究具有一定的应用价值。