基于Online-RBFNN 的航空发动机动态模型研究

2022-05-18 06:27王志浩魏民祥叶志锋杨佳伟
关键词:中心点聚类精度

王志浩,魏民祥,叶志锋,吴 昊,杨佳伟

(南京航空航天大学 能源与动力学院,南京 210016)

0 引言

航空发动机是航空装备的动力来源,对其进行精准、可靠的控制是保证航空装备使用安全的关键。许多发动机控制方法,如文献[1-2]中提到的智能容错控制方法、文献[3-4]中涉及的发动机故障诊断方法等,都以发动机非线性映射模型为基础,在发动机运行过程中将模型输出结果与发动机状态参数进行对比,从而制定相应的控制策略。对于诸如此类的模型基控制技术而言,发动机模型精度将直接影响控制效果。

目前,发动机建模主要有两大研究方向:机理模型和数据驱动模型[5]。机理模型具有明确的物理意义,模型适应性强,但随着发动机结构变得越来越复杂,其数学表达式的确定也越来越困难。区别于机理建模,数据驱动建模方式只需考虑系统的输入和输出,无需考虑系统的内部原理,能极大地降低建模复杂度[6]。随着机器学习、人工智能等技术的飞速发展,数据驱动模型也成为研究热点。

刘渊等[7]以CFM56-7B 发动机飞行数据为样本,建立了航空发动机排气温度支持向量回归模型,并利用堆叠降噪自编码器网络对输入数据进行降噪和特征提取处理,提高了排气温度基线模型的精度。Lin 等[8]在航空发动机气路性能预测的研究中,将长短期记忆神经网络(long short-term memory neural network,LSTMNN)与决策树相结合,消除了样本差异对预测的影响,并采用某航空发动机真实运行数据验证了模型的准确性和稳定性。与Lin 等所做工作相似,Zhou 等[9]引入残差反向传播神经网络(residual-back propagation neural network,Res-BPNN),建立了航空发动机气路回归模型,提高了小样本数据下的模型精度。

上述研究尽管表现出诸多优点,却忽略了重要的一点:建模数据一般来自发动机各传感器的历史观测值,采取离线方式进行训练;然而发动机长期工作在恶劣环境中,会出现不可避免的性能退化现象,所采集数据的分布也会因此变化,导致采用历史数据离线训练出来的发动机模型“过时”[10],模型精度随之下降。显然,利用该模型设计的发动机控制方案存在未知风险,影响发动机性能表现。

有学者针对这种模型精度下降的问题进行了研究。Wang 等[11]将多输入多输出递归简约最小二乘支持向量回归机用于涡轴发动机的自适应建模,提高了模型精度和泛化能力,但该建模方法受模型超参数的影响大,寻找最优参数比较耗时。Zheng 等[12]提出了一种最小批量梯度下降神经网络(min-batch gradient descent neural network,MGDNN)涡扇发动机自适应建模方法,该方法可一定程度上缓解模型精度下降问题,但由于没有更新模型参数,所以只能起到抑制作用,不能从根本上解决模型精度下降的问题;之后,Zheng 等[13]又提出了一种采用参数在线反馈修正的航空发动机动态建模方法,当工况发生变化时,模型误差可保持不变,但研究没有考虑发动机性能退化时的情况。Kakati 等[14]利用粒子滤波算法对LSTMNN 进行在线更新,使模型参数时刻与发动机状态相匹配,采用该模型进行发动机剩余有用寿命预测具有良好的效果,但LSTMNN 模型的记忆长度是有限的,所以模型精度会出现一定程度的下降。

综上所述,本文中提出一种Online-RBFNN 的航空发动机动态模型,旨在解决模型精度随发动机性能退化而下降的问题。模型采用在线学习的方式,能在发动机运行过程中不断更新参数,与发动机实时匹配,最大程度地保证模型精度。

1 动态模型框架的构建

从本质上来说,动态模型属于在线学习范畴,在线学习(online learning)是指在工程应用中训练样本随着时间的推移逐条到来,每来一条训练样本就立即更新模型参数,达到实时学习的效果[15]。为构建Online-RBFNN 动态模型,对典型RBFNN 进行改进:采用连续K-Means 算法对其网络中心等参数进行优化,再利用FTRL 在线学习算法对权重等参数进行更新,使模型具备在线学习功能。

1.1 模型原始结构

Online-RBFNN 由典型RBFNN 改进而来,模型的原始结构就是典型RBFNN。典型RBFNN 包括输入层、隐含层和输出层3 层结构,图1 为其结构示意图。它的中心思想是把径向基函数作为激励函数,利用其强大的非线性能力,将输入层数据映射到隐含层,再经过简单的线性运算,从输出层输出。

图1 典型RBFNN 结构示意图

通常选用高斯函数作为典型RBFNN 的激励函数[16]。对于输入样本矩阵x,隐含层输出值为

式中:x=[x1,…,xt,…,xN]T,xt是在离散时间或步骤t 上输入的单个样本向量;c 为网络中心;γ 为扩展系数。

隐含层与输出层之间通过权值连接,是简单的线性计算,所以隐含层的输出值为

式中:y=[y1,…,yt,…,yN]T,yt是xt对应的输出值,w 为连接权值。

理论上,典型RBFNN 能以任意精度逼近任意函数[17],并且具有较快的学习速度,但完成训练后,其参数就不再改变,一旦测试样本的分布发生变化,其精度就会下降。

显然,典型RBFNN 不具备动态性,这也是认为其“原始”的原因,故后文将把典型RBFNN 改进成为Online-RBFNN,使模型参数能实时更新,具备在线学习的能力。

1.2 模型参数c 和γ 的优化

径向基函数神经网络的准确率主要取决于数据中心的选择[18]。本文中采用连续K-Means 聚类算法对动态模型的中心点c 和扩展系数γ 进行优化。

连续K-Means 聚类算法和K-Means 聚类算法是有所区别的。K-Means 算法常用于典型RBFNN中心点c 的选取,一般通过式(3)所示的目标函数来实现聚类优化[19]:

式中:E 为目标函数值;k 为聚类总数;C 为聚类中的簇;x 为同一簇中的样本;c 为簇的中心。

K-Means 聚类算法将样本与簇中心点的欧式距离作为聚类标准,按照最小距离原则进行聚类。一次聚类结束后,判断目标函数值E 是否符合要求,若不符合要求,则将同簇中所有样本的质心作为该簇的新中心点,经过数次迭代,直至E 满足要求或达到最大迭代次数。此时,k 个簇中心c1,c2,…,ck即可作为典型RBFNN 的网络中心。虽然KMeans 算法结构简单、收敛速度快、精度高,但聚类完成后的中心固定不变,无法根据新样本做出中心调整。

作为优化,连续K-Means 聚类(sequential KMeans clustering)算法能有效解决网络中心不能改变的问题,其方法是在初步选出的中心c1,c2,…,ck的基础上,每接收1 个样本(xt,yt),就将最接近xt的中心点更新1 次,新中心点为

式中:a 为0~1 范围的常数;cnear,t为最接近样本xt的中心点。

扩展系数γt也随中心点的变化而更新,假设中心点两两之间的最大距离为dmax,t,那么接收新样本(xt,yt)后,扩展系数为:

式中:μ 为可调参数。

通过上述方法在线更新动态模型原始结构的中心点和扩展系数,每次只更新1 个中心点,计算复杂度低,计算速度快。

1.3 模型参数w 的优化

动态模型采用FTRL 在线学习算法对原始结构的权重w 进行优化。FTRL 算法综合了向前向后切(forward backward splitting,FOBOS)算法和正则对偶平均(regularized dual averaging,RDA)算法的优点,具有更好的稀疏性和泛化能力,被广泛用于工程实践中。

对于典型RBFNN 的权重w,在FTRL 框架下的更新公式[20]为:

对式(6)做以下解释:

1)λ1是L1 正则化系数,其值越大越能产生稀疏解,λ2是L2 正则化系数,其值越大越能防止过拟合。

2)g1:t=,g 是损失函数L(w)对权重w的梯度,采用平方损失作为模型的损失函数,即

对w 求偏导,得

3)σ 是学习率η 的函数,两者关系可表示为

为了保证充分学习样本特征,避免对样本的某一维特征产生依赖,将学习率η 与梯度g 建立联系,使η 在每个维度上都是不同的,有

式中:α 为初始学习率,β 为常数,通常取1。所以式(9)可改写为:

进一步地,将式(6)展开并求最优解[20-22]得:

式中:zt-1=,运算关系σs◦ws表示矩阵σs与矩阵ws对应位置的元素相乘。

可以看出,式(6)就转化成了g 的函数,所以在t 时刻,只需要计算出gt的值,然后按式(12)即可对权重wt进行更新。

1.4 模型整体架构

Online-RBFNN 由典型RBFNN 改进而来,是动态模型的核心,图2 为其结构框图。1 个实时样本(xt,yt)从输入层进入Online-RBFNN 后,首先,连续K-Means 算法根据式(4)和式(5)更新中心点ct和扩展系数γt;然后,FTRL 算法根据式(12)更新权重wt;最后,隐含层的输出Gt与权重wt进行矩阵乘法运算,得到模型估计值并从输出层输出。

图2 Online-RBFNN 结构框图

图3 是动态模型的整体架构,根据任务的不同,将动态模型分为初始学习、成长学习和成熟学习3 个阶段,其中初始学习属于离线学习,成长学习和成熟学习属于在线学习。图3 中Online-RBFNN 框代表图2 的Online-RBFNN 结构。

为了建立航空发动机Online-RBFNN 动态模型,主要经历3 个步骤:

步骤1初始学习阶段。使用少量发动机运行数据,根据典型K-Means 算法对输入样本聚类,为Online-RBFNN 架构中连续K-Means 算法提供初始中心点c0和扩展系数γ0。

步骤2成长学习阶段,这是模型的缓冲阶段。因为在线学习过程早期学习时长较短,模型精度还达不到要求,因此在这一阶段模型实时接收新样本,利用Online-RBFNN 更新模型参数,当模型精度满足Acc>δ 时才能进入下一过程。本文中,用校正决定系数表示模型精度Acc,将在第2.3节中进行详细描述。

步骤3成熟学习阶段。这一阶段的模型精度满足要求,模型继续接收实时样本,利用Online-RBFNN 实时更新模型参数,并输出结果。

2 建模基础

2.1 数据集的选取

科学的数据是确保有效研究的前提,本文中采用某型涡扇发动机的运行数据[23]。数据集包含了同型号但不同飞行包线区域和不同退化形式的几组涡扇发动机从正常运行到最终故障时的数据。值得说明的是,该数据集通常用于飞机剩余使用寿命预测或故障检测,但本文中只使用发动机正常退化部分的数据来建立发动机动态模型,并对动态模型做相关分析和研究。

数据集通过调节发动机不同转子部件流量或效率的健康系数θ(θ≤0)来模拟退化效应,θ 值越小退化越严重。以其中的1 个发动机为例,其退化形式为风扇流量和效率的退化。图4 是风扇流量健康系数fan_Eff_θ 和风扇效率健康系数fan_Flow_θ 随时间变化的曲线。

图4 健康系数曲线

图4 中,横坐标为发动机运行时间,单位为cycles,即周期,飞机每执行1 次飞行任务记为1 个周期。对此发动机而言,1 周期约为5 h。从图4中可以看出,fan_Eff_θ 和fan_Flow_θ 随时间逐渐下降,所以周期数越大发动机退化越严重。在30周期以前,健康系数θ 下降比较缓慢,可以认为是发动机性能的正常退化,所以选取30 周期之前的共451 843 条样本用于后续建模研究,并按表1 划分为训练集、验证集和测试集。为了避免模型对样本分布产生依赖,将第1 周期中的样本做随机乱序处理,然后按照4∶1 的比例划分为训练集和验证集,测试集保持时间序列不变,以模拟数据的实时采集。

表1 数据集划分

为方便表述,将表1 的数据称为数据1,用于3.1 节中模型精度与实时性的验证。为了在3.2节中验证模型的自适应能力,提供另外2 组数据,与数据1 有所区别,分别称为数据2 和数据3。3组数据的对比情况如表2 所示,以数据1 为比较标准,说明3 组数据的异同:产生3 组数据的发动机同型号;产生数据1 和数据2 的发动机具有相同的退化形式,但2 个发动机运行在不同的飞行包线区域上;产生数据1 和数据3 的发动机运行在相同飞行包线区域上,但2 个发动机具有不同的退化形式。

表2 3 组数据的比较情况

2.2 模型实例的选择

对涡扇发动机各截面温度的监视是航空发动机状态监控的主要内容,建立相应的截面温度模型对发动机控制具有重要意义,所以本文以发动机低压涡轮机(LPT)出口截面为例,建立LPT 出口总温度Online-RBFNN 动态模型。

影响LPT 出口总温度T50的主要参数有:飞行高度H、马赫数Ma、风机进口总温度T2、低压转子转速Nf和高压转子转速Nc,所以模型输入层有5个神经元,输出层只有1 个神经元。LPT 出口总温度Online-RBFNN 动态模型的输入输出满足:

式中:xt为t 时刻输入动态模型的样本向量;ct、γt和wt分别为t 时刻模型中心点、扩展系数和权重,它们处于实时变化之中;为t 时刻对应的模型输出值,即模型对T50的估计值;f 表征xt与之间的函数关系。

2.3 模型评价指标

利用多种评价指标量化模型精度是比较模型优劣的常用手段,多种评价指标比单一指标更能体现模型的优劣。本文中使用以下3 种多元回归模型常用的评价指标来对比各模型的质量。

1)平均绝对误差MAE:

2)均方根误差RMSE:

在式(14)—(17)中,N 为总样本数量,yt为第t 个样本的观测值,为所有样本观测值的平均值,R2为决定系数,p 为样本特征数量。

MAE 与RMSE 都能反映样本估计值与观测值的误差,值越小时模型精度越高;反映的是估计值对观测值的解释程度,值越接近1 则模型精度越高。与决定系数R2相比,校正决定系数还考虑样本数量和样本特征数量对结果的影响,比单一的决定系数描述更准确。

3 动态模型验证与分析

3.1 模型精度与实时性验证

为了综合比较所提出的Online-RBFNN 动态模型的精度和稳定性,提供其他几种模型进行对比,分别是典型RBFNN 模型、最小批量梯度下降反向传播神经网络(min-batch gradient descent back propagation neural network,MGD-BPNN)模型和LSTMNN 模型。在数据1 上,利用网格交叉验证[7]的方法,为模型的每个优化参数选取一个合理区间和搜索步长,计算不同参数组合下模型的精度,从而获得1 组最佳参数组合。由式(4)、式(5)和式(12)得知,影响Online-RBFNN 动态模型精度的参数包括常数a、μ,初始学习率α,正则化系数λ1和λ2,另外还有隐含层神经元个数。各模型最佳参数组合如表3 所示,表3 中H_size 为隐含层神经元个数,Batch 为每批次输入样本的数量,Lr 为学习率,Layers 为LSTMNN 堆叠的层数。

表3 各模型最佳参数组合

利用各模型最佳参数组合得到的最终建模结果如图5 所示。由于测试集数据量较大,模型输出结果展现在1 张图中比较拥挤,所以这里只列出了其中4 个周期的输出比较,以解释模型在发动机不同退化程度(周期数越大,退化程度越大)下的精度。

从图5 中可以看出,Online-RBFNN 动态模型除了在第2 周期刚开始时输出结果与观测值有较大误差外,其他情况下都能很好地与观测值拟合。实际上,第2 周期是在线学习的开始,Online-RBFNN 动态模型正处于成长学习阶段,在训练了8 000 个左右的样本后模型才达到精度要求,进入成熟学习阶段。而其他模型虽然在第2 周期与观测值的误差较小,但随着发动机性能退化程度的增加,模型输出结果逐渐偏离观测值,在第30 周期上表现明显。特别是RBFNN 模型,它完全依赖历史数据,在发动机运行过程中不会更新模型参数,发动机运行周期数越大,RBFNN 模型输出结果误差越大。MGD-BPNN 模型将前几次的样本作为输入,模型精度比RBFNN 模型高,但同样没有对模型参数进行更新,输出结果误差也在逐渐变大。虽然LSTMNN 模型有记忆功能,但其记忆长度是有限的,也出现了误差变大的问题。

图5 不同模型的输出结果

图6 是各模型不同评价指标的计算结果,可以更直观地看出各模型的优劣。在第2 周期后,Online-RBFNN 动态模型精度迅速提高,MAE 值稳定在0.59 左右,RMSE 值在1.7 左右,同样值稳定在0.997 8 左右。而其他模型随着时间的增加,MAE 值和RMSE 值都有不同程度的增加,值也在逐渐下降。

图6 不同评价指标的计算结果

本次仿真对各模型的训练速度进行比较,Online-RBFNN 动态模型、典型RBFNN 模型、MGDBPNN 模型和LSTMNN 模型完成训练所用时间分别为22、34、93 和127 s。严格意义上来说,Online-RBFNN 模型没有“完成训练用时”的概念,因为它一直持续地在线训练并更新模型参数,所以这里Online-RBFNN 模型完成训练的时间是指初始学习阶段和成长学习阶段所用时间。虽然Online-RBFNN 模型和RBFNN 模型都需要寻找最佳中心点,但前者需要的隐含层神经元个数(即中心点个数)更少,所以前者用时更少。MGD-BPNN 模型输入参数多,且需要迭代优化,而LSTMNN 模型结构复杂,两模型用时较Online-RBFNN 模型更多。另外,在成熟学习阶段,Online-RBFNN 模型每更新1次参数所用时间小于1 ms,实时性较好。

由此可见,Online-RBFNN 动态模型能够在发动机出现不同程度的退化时保证更高、更稳定的模型精度,并且具有良好的实时性。

3.2 模型自适应能力验证

模型自适应能力是指同初始化参数的模型机载在不同运行状态的飞机上,能够调整自身参数,保证模型精度的能力。为了验证所提出的动态模型的自适应能力,依然以建立发动机LPT 出口总温度Online-RBFNN 动态模型为例,讨论2 种仿真情况,动态模型在各学习阶段使用的数据如表4所示。

表4 模型在各学习阶段使用的数据

为了保证2 个仿真中的模型具有相同的初始化参数,首先使用数据1 的训练集线下初始化动态模型,然后将初始化后的模型分别用不同数据进行在线学习。仿真1 中,动态模型在成长学习阶段和成熟学习阶段使用的是数据2,以模拟动态模型机载在不同飞行包线区域飞机上的情况。同理,仿真2 模拟动态模型机载在不同退化形式飞机上的情况。由于2 个仿真中的动态模型在初始化学习阶段是一样的,所以后文只对成长学习阶段和成熟学习阶段的动态模型表现做对比和评价。仿真1 的相关结果见图7 和图8。仿真2 的相关结果见图9 和图10。

仿真1、仿真2 中模型输出值与观测值的比较如图7、图9 所示。训练前期,2 个仿真中的模型均处于成长学习阶段,模型输出结果与观测值的差距均比较大,但随着训练的继续,模型输出结果与观测值的差距在迅速减小,2 个仿真中的模型分别训练了2 600 和3 000 个左右的样本后进入成熟学习阶段。从局部放大图中可以看出,在成熟学习阶段,模型输出值与观测值基本一致。仿真1、仿真2 中模型输出结果误差如图8、图10 所示,从图8 和图10 中也能得到相同的结论,训练开始时模型输出结果误差较大,但模型输出结果误差迅速减小并稳定下来,2 种仿真中模型输出结果误差基本稳定在[-9,8]K 和[-10,9]K 范围内。

图7 仿真1 中模型输出值与观测值

图8 仿真1 中模型输出结果误差

图9 仿真2 中模型输出值与观测值

图10 仿真2 中模型输出结果误差

由此可见,在2 种仿真中,模型输出结果误差均较小且相对稳定,验证了所提出的动态模型机载在不同飞行包线区域和不同退化形式飞机上良好的自适应能力。因此,对于同型号发动机而言,可机载初始化参数相同的动态模型,省去繁琐的模型线下训练过程,从而提高工作效率。

4 结论

1)与典型RBFNN 模型、MGD-BPNN 模型和LSTMNN 模型相比,Online-RBFNN 动态模型在发动机发生不同程度退化时具有更高的、更稳定的精度,MAE 值为0.59、RMSE 值为1.7、值为0.997 8;同时,Online-RBFNN 动态模型完成训练用时为22 s,并且每更新1 次样本用时小于1 ms,实时性好。

2)在不同飞行包线区域的数据上,动态模型输出结果误差可基本控制在[-9,8]K 范围内;在不同退化形式的数据上,误差可基本控制在[-10,9]K 范围内,验证了Online-RBFNN 动态模型机载在不同飞行包线区域和不同退化形式飞机上良好的自适应能力。

猜你喜欢
中心点聚类精度
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
基于数据降维与聚类的车联网数据分析应用
Scratch 3.9更新了什么?
基于模糊聚类和支持向量回归的成绩预测
如何设置造型中心点?
磨课,一段痛苦与快乐交织的过程
近似边界精度信息熵的属性约简
寻找视觉中心点
浅谈ProENGINEER精度设置及应用