基于XGBoost的民航飞机发动机性能参数预测模型

2023-07-06 12:41樊智勇王振良刘哲旭
计算机测量与控制 2023年6期
关键词:飞行数据性能参数模糊化

樊智勇,王振良,刘哲旭

(1.中国民航大学 工程技术训练中心,天津 300300;2.中国民航大学 电子信息与自动化学院,天津 300300)

0 引言

航空发动机是飞机的“心脏”,是保障大型民用航空飞机飞行安全的核心部件,目前航空发动机的健康监测方法大都采用航后诊断的方法,主要对航空发动机的气路参数、振动参数和油液参数,通过异常的参数找到飞机发动机潜在的风险状态数据,进而判断发动机中与气路有关的单元体和子系统状态是否存在异常作为故障诊断的依据[1]。对于航后飞机发动机的故障诊断存在延迟性,若能根据飞机发动机的性能参数变化趋势,预判航空发动机的超限状态,可防患于未然,提高民航运行的安全性。航空发动机性能参数的预测在发动机健康管理、视情维修、设计研发、建模仿真等领域起到关键性作用[2-5],对航空发动机寿命预测有助于提高飞机发动机安全性,降低航空公司的维护成本[6]。

发动机性能参数预测是指通过一定的技术手段对表征发动机工况的主要性能参数,如N2(高压转子转速)、N1(风扇转速)、FF(燃油流量)、EGT(排气温度)进行监测,并根据实际监测数据建模分析,以获取各部件工作状态在不同外界环境下的变化趋势。航空发动机的性能参数变化趋势能够客观反映航空发动机的性能衰退状况[7]。由于航空发动机工作过程复杂,工作环境多变,且核心部件长期处于高速旋转、高温状态下,其性能参数呈现非线性、非平稳性、波动性等特点,给发动机的性能趋势预测带来较大困难。传统的预测方法如多元线性回归[8]、自回归滑动平均模型[9],其预测精度不高,且鲁棒性不强。随着机器学习的快速发展,人工神经网络和支持向量回归(SVM,support vector regression)广泛应用于民航飞机发动机性能参数预测。文献[10]采用改进量子粒子群优化支持向量回归对V2500发动机的排气温度进行预测;文献[11]建立了基于支持过程向量机的航空发动机排气温度预测模型;文献[12]利用模糊信息粒化方法对性能参数进行粒化处理,并采用优化的SVM 对发动机N2参数进行了预测验证;文献[13]利用堆叠降噪自动编码器构建了燃油流量的预测模型,并使用真实飞行数据进行训练和验证;文献[14]从提高训练样本集的质量角度,提出一种基于样条函数拟合和相空间重构的训练集构造方法,并结合过程神经网络,对发动机的性能参数进行预测,取得了不错的效果。但是,支持向量回归存在核函数选取的困难,需要根据经验和反复试验确定,存在较大的随机性。使用神经网络预测存在收敛速度慢、训练时间长、需要大量训练数据样本、容易陷入局部最优等问题。XGBoost(eXtreme gradient boosting)算法是在GBRT(gradient boosting regression tree)的基础上对boosting算法的一种改进,Chen[15]等详细说明了XGBoost算法的原理并且证明了XGBoost计算速度优于传统的GBRT 算法。除此之外,很多学者使用XGBoost与传统的SVM、ANN 方法等进行比较皆得出XGBoost预测准确性更高,可以在相对较少的调参时间下,得到较高预测准确率[16],且对异常值的鲁棒性较强,不需要对原始数据进行标准化处理,是目前机器学习领域求解预测问题的常用模型之一。

对民航飞机发动机性能参数的预测,本文采用快速存取记录器(QAR,quick access recorder)记录的真实飞行数据作为训练样本集,QAR 数据记录的是整个飞行过程的各项飞行参数,包含各个飞行阶段。为提高预测模型的泛化能力,在构建发动机性能参数训练集时,采用模糊推理按照飞机的垂直飞行状态进行划分,进而构建训练集,消除人为划分数据集的主观影响。最后,基于XGBoost建立适用不同飞行阶段的发动机性能参数预测模型,对不同飞行状态下的发动机工作状况进行模拟。

1 建模基础

1.1 总体性能分析

民航飞机发动机是一个集热力学、机械、控制等多学科技术于一身的复杂系统,航空发动机是一个复杂的非线性系统,为了与之发动机的性能参数变化趋势采用总体法对其进行性能分析即不对发动机内部的物理过程进行详细地数学描述,而是将整台发动机看作一个 “黑盒”模型。模型的输入量包括发动机控制输入及飞机自身状态、外界环境等影响因素,输出量主要包括表征发动机推力和工作状况的性能参数。输入量与输出量之间的映射关系即为发动机的总体性能模型[17]。通过对航空发动机工作原理的分析,选取油门杆位置(TLA)作为控制输入;根据民航飞机的性能手册,确定影响发动机性能的因素主要包括马赫数(Mach)、外界大气总温(TAT)、飞机总重(GW)、飞行高度(ALT)。另外,考虑到当前大型民航客机均装有自动推力系统,例如波音737系列、空客A320系列飞机,当飞机处于不同的飞行阶段时,自动推力系统采用不同的推力控制模式,其推力控制律会发生变化。因而,发动机的性能参数的变化规律会随着飞行阶段的改变有所不同,故将飞行阶段同样作为影响因素。图1为航空发动机总体性能模型结构图。

图1 发动机总体性能模型结构

据上述分析,在构建XGBoost发动机性能参数预测模型时,选取油门杆位置、气压高度、大气总温、飞机总重以及马赫数作为输入特征变量,以所要预测的性能参数为状态变量,对模型进行训练。

1.2 飞行数据预处理

QAR 是飞行数据记录系统的设备之一,记录数据量大,可靠性高。相比 “黑匣子”记录的飞行数据,QAR 数据存取方便可靠,读取速度快,具有更高的数据获取效率,更便于维护人员存取。本文的试验和验证数据来自某航空公司波音737-800客机,发动机型号为CFM56-7B。

QAR 记录的飞行数据,其部分起飞爬升阶段的数据如表1所示。

表1 737-800型飞机部分起飞爬升阶段的数据

表1包含飞机飞行高度、大气温度、飞行马赫数、发动机转速、排气管温度等基本参数。利用数据译码软件从机载记录器中获取QAR 数据中的高度、总温、马赫数等所需参数。QAR 记录的飞行数据由于飞行环境的复杂多变,其中存在众多野值或频繁抖动,直接使用原始数据会包含野值这会影响发动机性能参数的预测精度,故在训练XGBoost预测模型前先需要对飞行数据进行预处理,通过降噪滤波的方法将众多野值过滤进而排除野值对模型预测效果的影响。平稳小波变换和系数相关性原理相结合的方法处理飞行数据能较好地去除杂波[18-19]。

小波阈值去噪是一种非线性的去噪方法,在最小均方误差意义下达到近似最有,可获得较好的去噪效果,小波阈值算法对飞行数据滤波平滑处理的基本原理为:QAR 数据经过小波变换分解后,得到一组小波分解系数,信号经过小波变换后的小波系数在各个尺度上有较强的相关性,而噪声数据经过小波变换后的小波系数相关性不强,得出信号的小波分解系数要大于噪声的小波分解系数,通过选取合适的阈值,将大于阈值的小波系数认为是信号产生的,予以保留,小于阈值的小波系数认为是噪声产生的,将其置零,最后将处理后的系数重构信号即可完成信号去噪。

1.3 飞行状态识别

民航飞机对其发动机的推力要求会根据当前飞行状态的不同发生改变。根据不同的飞行状态,民航涡扇发动机通常具备5种额定推力模式:起飞/复飞推力、最大连续推力、灵活起飞推力、最大爬升推力以及慢车推力。此外,现代大型民航客机均装有自动推力系统或者自动油门系统,在自动推力接通条件下,根据不同飞行状态,发动机推力的控制律也会发生相应的改变。因此,在不同的飞行状态下,民航发动机具有不同的运转状态和工作负荷,使得其主要的性能参数具有不同的变化规律或函数关系。故在根据真实飞行数据对发动机进行性能参数辨识过程时,需要对飞行数据进行飞行状态的识别,进而按照不同飞行状态进行建模分析。

民航飞机在爬升、下降飞行阶段中采用阶梯爬升和阶梯下降的方式,并不是连续地爬升及持续下降到目标高度。若仅从飞行阶段的定义上去简单地划分飞行数据,简单的将其分为起飞段、爬升段、巡航段、下降阶段以及处于地面滑行阶段,会造成辨识结果存在较大误差的问题。因此,需要将爬升和下降阶段中的阶梯平飞阶段单独进行考虑,同理若在飞机巡航阶段出现飞行高度改变时,需要将其中的爬升段和下降段单独考虑,若将该部分发动机性能数据视作巡航状态,会造成辨识结果具有较大误差。由于飞行阶段对飞机飞行状态的识别没有明确的界限,因此本文采用模糊推理[20]的方式进行飞行阶段的识别。

1.3.1 输入、输出量的模糊化

如图2所示,模糊计算的过程可分为4个模块:模糊规则库、模糊化、推理方法和去模糊化。模糊规则库是专家提供的模糊规则包括数据库和规则库。输入参数是根据选定的QAR 参数设定论域进行模糊化,模糊化是根据隶属度函数从具体的输入得到对模糊集隶属度的过程,根据模糊规则进行模糊推理,经过模糊推理得到模糊结论,在进行去模糊化完成飞行状态的识别,去模糊化也称解模糊化是将模糊结论转化为具体的、精确的输出过程。

图2 模糊计算的过程图

QAR记录数据的频率为1Hz,每条记录包含数百个飞行参数在某一时刻的值。从QAR 数据中选取标准气压高度、垂直速度、空速为特征参量用于判断该条记录数据属于哪个飞行状态。飞行状态的模糊推理模型的输入主要有:标准气压高度、垂直速度、空速,将其进行模糊化,隶属度取值为[0,1]。通过隶属度函数将垂直速度分为负(NV)、零(ZV)、正(PV)三个模糊集合,其论域取值范围为[-5 000,5 000]ft/min;采用“Z”形、“S”形及三角形隶属度函数对气压高度、垂直速度、空速参量进行处理。其中,垂直速度的隶属度函数如图3所示。

图3 垂直速度的模糊隶属度函数

同理,将标准气压高度分为低(LH)、中(MH)、高(HH)三个模糊集合,其论域取值范围为[-2 000,40 000]ft;将空速分为低(LV)、中(MV)、高(HV)三个模糊集合,其论域取值范围为[0,400]knots。以飞行阶段为输出,将其划分为滑行/停止(T/S)状态、起飞爬升(CLB)状态、阶梯平飞(LEV)状态、巡航(CRU)状态以及下降(DES)状态,其论域取值范围为[0,5]。

1.3.2 模糊推理

根据每个飞行阶段飞机高度、垂直速度、空速参量的特点,采用“if-then”形式制定模糊规则,用于推导每条数据属于那个飞行阶段。具体的模糊规则见表2。根据模糊规则库,采用Mamdani模糊推理法计算每条记录数据的总输出隶属度函数。

表2 模糊推理规则表

1.3.3 去模糊化

去模糊化就是将模糊结论转化为具体的、精确的输出过程。采用最大隶属度法进行去模糊化,以得到该记录数据所处的飞行阶段。由于模糊集合通常是由多个模糊子集的并集构成的,它的隶属度曲线中可能有多处的隶属度都取最大值,故在最大隶属度的基础上,采取最大值法选择模糊集合代表点。

通过模糊推理的方式来进行飞行阶段的划分,可以很好地解决真实飞行数据中飞行阶段界限不明确的问题,并且排除以往人工划分飞行阶段对预测结果的主观影响。

2 基于XGBoost的民航发动机性能参数建模

2.1 XGBoost原理

XGBoost是一种Boosting 集成学习算法,它通过不断迭代,生成新的树来拟合前一棵树的残差,与其他算法相比XGBoost不仅使用一阶导数,而且还使用二阶导数,损失更精确[21]。从本质上来看,XGBoost是由多个弱分类器组合而成的学习器:

对损失函数进行二阶泰勒展开得:

将式(9)代入式(8)即可得到目标函数最小值,其值越小,树的结构越好,此时即为目标函数的最优解:

2.2 建模流程

采用XGBoost建立发动机主要性能参数的流程如图4所示,具体步骤如下:

图4 XGBoost发动机性能参数建模流程

1)通过总体性能分析,从真实飞行数据中选取油门杆的位置、标准气压高度、空速、大气总温及飞机总重作为输入;

2)采用小波变换和系数相关性原理相结合的方法对原始数据进行滤波处理以剔除其中的野值,并实现数据平滑;

3)采用模糊推理对预处理后的数据进行状态划分,并对其进行标准化,然后分别构建爬升阶段数据集、巡航阶段数据集、阶梯平飞阶段数据集、下降阶段数据集;

4)对每一飞行阶段的数据集,按照7:3:2的比例来随机构建训练集、验证集和测试集;

5)使用训练集数据训练模型得到一个XGBoost模型,并采用交叉验证的方式,使用验证集对该XGBoost模型进行评估,最后得到一个近似最优的XGBoost模型;

6)最后,将测试集数据输入到步骤5)得到的模型,检验其拟合精度。若模型精度不满足误差要求,则重返第4)步,重新划分数据集进行训练。

3 实验与分析

3.1 模型建立

由于构建不同飞行阶段的发动机性能参数模型时的区别在于数据集的不同,其所采用的建模方法是一致的。因此,以爬升阶段、下降阶段为例详细阐述建模流程。试验数据选取120个航班的飞行数据,用于构建发动机主要性能参数的XGBoost模型,其中70个航班数据用作模型的训练集,30个航班数据用作模型的验证集,20个航班数据用作模型的测试集。飞机通常装有两套相同的发动机引气系统,本文选用的数据均是在两套引气系统正常工作的情况下记录的。在确定的引气状态下,对发动机工作状况的影响因素可以归结为如下几个特征变量,如式(11)所示。采用XGBoost建模的目标就是构建一个拟合函数关系,如式(12)所示,用于仿真飞机在爬升阶段,随着外界条件改变其发动机性能参数的变化规律。

对于不同的数据集样本,各类回归预测算法的表现不同。为验证XGBoost算法在发动机性能参数预测方面具有的优势,本文分别构建爬升和下降阶段发动机性能参数的数据集,并进行对比试验,以说明该算法的有效性。分别采取线性回归(LR,liner regression)、BP神经网络以及支持向量回归对该样本集进行建模,并在验证集上进行测试,得到了各自最优的训练模型。

采用决定系数R2、平均绝对误差(MAE,mean absolute error,)及均方误差(MSE,mean square error)为衡量标准,来评估模型输出的预测值与真实值之间的偏差,如公式(13)所示:

3.2 爬升阶段预测结果分析

选取真实飞机从15 000ft高度爬升到30 000ft高度的一段真实爬升数据,该数据未用作模型训练,对所建立的XGBoost发动机性能参数预测模型进行检验。真实飞机影响发动机性能参数的状态变量变化,如图5所示。将其作为输入,对所建立的模型进行检验。

图5 爬升阶段飞机状态参数变化趋势

将如图5所示数据,输入到所建立的性能参数辨识模型中,在民航飞机从15 000ft爬升到30 000ft高度过程中,发动机N1、燃油流量参数的预测结果与真实记录的数据对比,如图6~7所示,观测值即为真实数据,图中用不带标记的实线表示,支持向量回归(SVM)预测模型曲线在图中用附带实心小黑圆的实线表示、XGBoost算法的预测曲线在图中用附带实心的黑五角星的实线表示、线性回归模型(LR)预测曲线在图中用附带实心黑三角的实线表示、BP神经网络预测曲线在图中用附带实心小黑矩形的实线表示。

图6 爬升阶段发动机N1参数预测结果对比

通过对比分析图6和图7可知飞机爬升阶段对发动机N1、燃油流量参数预测结果,对比四种预测算法和观测值曲线的跟随性可得出:XGBoost模型预测曲线、SVM 模型预测曲线、BP 模型预测曲线、LR 模型预测曲线中XGBoost模型预测曲线更接近观测值,预测结果更好。

图7 爬升阶段发动机燃油流量参数预测结果对比

其中:R2取值范围为[0,1],其值越靠近于1,则说明模型的解释性越强;MAE、MSE的值越小,表示模型预测效果越好。从表3结果中可以看出,XGBoost对该数据集的预测效果,相比线性回归、SVM、BP 神经网络,其R2最接近于1,MAE和MSE的值最小,则说明XGBoost预测模型对爬升阶段N1参数的预测精度较高。

表3 爬升阶段各模型对N1的预测结果评估

3.3 下降阶段预测结果分析

选取飞机从30 000ft高度下降到3 000ft高度的一段真实下降数据,对所建立的下降阶段XGBoost模型进行检验。该过程中飞机的马赫数、油门杆输入、外界大气总温以及飞机自身重量的变化,如图8所示。各种预测模型对该过程中发动机N1、燃油流量的预测效果如图9、图10所示。

图8 下降阶段飞机状态参数变化趋势

图9 下降阶段发动机N1参数预测结果对比

图10 下降阶段发动机燃油流量参数预测结果对比

观测值即为真实数据,图中用不带标记的实线表示,支持向量回归(SVM)预测模型曲线在图中用附带实心小黑圆的实线表示、XGBoost算法的预测曲线在图中用附带实心的黑五角星的实线表示、线性回归模型(LR)预测曲线在图中用附带实心黑三角的实线表示、BP神经网络预测曲线在图中用附带实心小黑矩形的实线表示。

通过对比分析图9和图10可知飞机下降阶段对发动机N1、燃油流量参数预测结果,比较四种预测算法和观测值曲线的跟随性可得出:XGBoost模型预测曲线、SVM 模型预测曲线、BP 模型预测曲线、LR 模型预测曲线中XGBoost模型预测曲线更接近观测值,预测结果更好。

从表4结果中可以看出,XGBoost对下降阶段数据集同样具有较好的预测效果,相比线性回归、SVM、BP神经网络,其R2最接近于1,MAE和MSE值最小,说明XGBoost预测模型对爬升阶段N1参数的预测精度较高。

表4 下降阶段各模型对N1的预测结果评估

4 结束语

航空发动机性能参数预测是故障预判和视情维修的决策前提,本文将集成学习算法中的XGBoost用于发动机性能参数预测模型的构建,在构建模型训练数据集时,考虑了飞行阶段对预测精度的影响,提出一种基于模糊推理和XGBoost算法的发动机性能参数预测方法。

利用真实民航飞行数据对预测模型进行验证,并将其与传统的BP 神经网络算法、支持向量回归、线性回归模型在预测精度上进行了比较。实验结果表明,基于XGBoost的发动机性能参数模型的精度较高,同时不需要对数据进行缩放。本文对航空大飞机航空发动机性能参数的研究对通用航空机载信息网络数据共享技术中数据处理和飞行阶段划分有借鉴意义。

猜你喜欢
飞行数据性能参数模糊化
([0,1],[0,1])-模糊拟阵的基和秩函数
餐饮娱乐空间的“边界模糊化”态势探讨——餐饮娱乐空间设计专辑
三角模糊数去模糊化对VIKOR妥协解的影响研究
GARMIN1000系统维修平台搭建预研究
浅谈飞行数据集中处理流程管理
时间数字转换器性能参数及误差分析
天线电性能参数的测量
基于广域信息管理的飞行数据服务设计与实现
气动铆钉机性能参数测试系统的研制
改善高空台试验中发动机性能参数不确定度的方法探讨