APP下载

基于遗传算法的大推力氢氧补燃发动机故障检测

2022-08-26李宁宁武小平徐志强

计算机测量与控制 2022年8期
关键词:遗传算法液体神经网络

李宁宁,武小平,薛 薇,胡 慧,徐志强

(北京航天动力研究所,北京 100076)

0 引言

随着航天技术的快速发展,使得液体火箭推进系统作为主要动力装置的运载火箭变得更加复杂。运载火箭由一系列弹道导弹而衍生,并随着大国间的军备竞争而独立发展,运载火箭的发动机性能和技术水平直接决定运载火箭的效能,影响一个国家进出、探索、利用和开发空间的能力和水平,“航天发展,动力先行”是航天发展的健康保障,是国家安全和大国地位的重要战略保障。但是,运载火箭的发动机技术复杂度高、难度大,同时要求满足大推力、高比冲、高推重比、高可靠、低成本等相互矛盾的指标,在恶劣空间环境长时间运行、承受较大的振动和冲击载荷等特点[1],使其成为运载火箭系统故障的敏感多发部位[2-4]。1957—2007年全球火箭失利统计显示,发动机故障约占51%。航天器动力系统即使发生轻微的故障,都有可能迅速扩大,轻则造成航天任务的失败和国家财产的损失,重则导致箭毁人亡的灾难性危害。目前运载火箭发动机特征主要是无毒化、高性能基础基大推力的特点,液氧液氢发动机性能高,目前被广泛应用到我国的YF-77、YF-75、YF-75D,日本LE-9,欧洲的Vulcain-2、Viking V,美国的J-2(Saturb-5)、RL-10(Saturn-111B)、SSME、RS-68等典型型号。

为了保证运载火箭发射及成功的可靠性标准要求,提高运载火箭的安全性和经济型,不仅要在研制及生产过程中对部件级产品和整台发动机可靠性的严格控制、监测和试验验证外,而且在运载火箭的试车过程中很大程度地依靠故障诊断与健康管理技术。一些航天强国对运载火箭故障诊断与健康管理技术开展了相关的理论研究,对发动机运行情况进行了故障检测、隔离和控制,并根据不同类型的发动机建立了相应的健康管理系统[5-7]。例如美国基于A-1试验台和J-2X航天运载火箭发动机为研究目标,主要研究液体火箭发动机试验中故障诊断与健康管理技术的内容,并根据研究内容相应提出了发动机的集成系统健康管理的概念[8]。同时,基于BlockⅡ型航天飞机主发动机(SSME, space shuttle main engine),美国的研发团队将健康监测系统多次搭载发动机试车试验进行验证和系统的改进,成功地开发了先进的健康管理系统[9], 对该系统运用到SSME的历次发射任务进行了统计,结果显示航天运载火箭的任务与之前相比失败率降低了四分之一,使得航天运载任务的成功完成率升高了三倍[10]。

针对液体火箭发动机的健康管理技术主要由3个部分组成,分别是故障检测、故障诊断以及故障控制。故障检测对任何一个实际系统而言是绝对要完成任务,是根据发动机试车过程中,通过传感器采集能够反映发动机试车过程状态的有效数据,同时将数据经过一定的处理后,根据正常发动机试车的有效数据阈值,判断发动机工作是否异常做出判断。针对液体火箭发动机故障检测的性能、可靠性和可实现性等问题,还需要考虑其检测率、及时性和实时性等主要指标。

遗传算法(GA,genetic algorithm)是应用达尔文的自然进化论中的选择和变异的原理,仿照自然生物进化过程进行模拟建立的计算机模型,同时是一种根据计算机模拟的自然进化历程来实现对最优解的进行寻找的方法,也是对某一范围内散点分布搜寻的较优方式,具有较好的全局寻优能力[11]。但是,针对问题在局部搜索最优解中遗传算法的寻优能力较弱,直接使得神经网络在模型的训练能力上达不到比较高的计算精度,这一缺陷需要借助神经网络弥补这一缺陷[12]。

目前国内针对液体火箭发动机健康管理技术的应用和研究均处于初始阶段,主要利用以关键参数为基础的红线阈值关机系统,这种系统的故障覆盖面有限,实际应用中偶尔会出现故障的虚警或漏警现象[13]。基于时间序列分析方法,设计了ARMA模型的实时故障仿真系统,对液体火箭发动机典型故障进行了仿真测试[14],促进了液体火箭发动机健康管理系统正朝着自动化、智能化、综合化程度不断提高的方向演变和发展。本文基于某型号发动机试车试验获取的样本数据,建立遗传算法和神经网络相融合的故障检测模型,通过两种算法的相互优化有效提高诊断的准确率,提高故障诊断系统的鲁棒性,为液体火箭发动机的故障检测提供技术方法。

1 GA-BP优化模型

1.1 遗传算法

遗传算法是一种经典的启发式算法,是一种通过模拟自然进化过程搜索最优解的方法,是将问题的求解表示成“染色体”进化的过程。遗传算法的搜索最优解是从研究目标可能潜在的解集的一个种群开始,而研究的种群是根据二进制编码组成一定数量的基因组成,其中遗传算法求解的特定集合称为“种群”,根据建立的群体映射到目标问题的“环境“,在群体中依据每个个体(染色体)的优劣由适应度函数决定是否进行复制,即再生,然后通过交叉、个体变异等操作方式,生成新的一代更适应环境的群体,每一代群体经过一定次数的循环进化,最终该算法能够收敛到一个最适应环境的个体上,该个体就是问题所需要的最优解。本质就是一个在解空间中不断进行随机搜索的算法,在搜索过程中不断地产生新的解,并保留更优的解。

遗传算法经过个体的编码、初始群体的设定、适应度函数的设计、算法控制参数的设定和约束条件的处理等几个操作,对算法的主要参数进行优化。

1)个体的编码:在研究过程中常使用经典的二进制编码方式对遗传算法个体进行初始化,个体的二进制编码符号是用二进制符号0和1组成。

2)操作选择:在遗传算法中对个体进行操作选择的操作又称为个体的复制。遗传算法对群体中的个体选择是由每个个体的适应度值进行判断,如果所选择的个体计算的适应度值较大,则该个体被遗传到新的一代群体中有较大的机会;否则,改个体被遗传到新一代群体的机会较小。

3)选择交叉:选择交叉的目的是交换个体间的基因,从而在群体中产生新的个体或物种,使的算法在寻优过程中避免陷入局部最优解的局面。

4)变异算子:变异算子的目的是为了增加群体中个体之间的多样性,避免算法在寻优过程中较早的收敛,没有搜索到最优解。

群体中变异算子的操作在遗传算法中是一种随机操作,同时在算法中与操作选择和选择交叉算子相结合,可以防止由于选择和交叉运算而造成的个体的某些信息丢失,从而能够确保遗传算法的有效性。运用遗传算法对问题进行寻优过程的关键主要包括全局搜索和局部搜索。其中交叉选择产生种群的新个体,进而影响算法的全局搜索能力;而变异算子能够辅助生成新的个体方法,进而影响算法的局部搜索能力。

5)适应度函数:遗传算法中的适应度函数的选取好坏能够影响该算法的进化过程,直接影响着问题最终寻优结果侧优良程度。适应度函数值的大小用来度量个体在优化计算中能达到或接近于或有助于找到最优解的优良程度。

6)遗传算法参数设置:遗传算法参数的设置对该算法的寻优性能和搜索效率有直接的影响。主要控制参数如下:

(1) 个体中基因编码长度:群体中的各个个体使用二进制进行编码时,对个体的编码长度与问题在“环境”中寻优的精度有关。

(2) 种群的个体总量:若对群体中的个体数量较大,在寻优过程中能够增加大量的模式,防止成熟前收敛;然而,较多的群体数量增加了算法在寻优过程的计算量,使得算法的收敛速度放缓。

(3) 交叉概率:选择交叉操作概率较多可以加速群体中产生新的个体,但使拥有高适应度值的个体不能被留存,而交叉操作概率较低使得整个搜索过程放缓。因此,本文在选择交叉概率的取值范围为0.4~0.99。

(4) 变异概率:遗传算法中变异概率的选择直接影响着基因变异的频率。如果设置较大,该算法的寻优过程变为随机搜索;如果设置较小,该算法中的群体申城新个体和抑制早熟现象的能力将会变差,一般的取值范围是 0.000 1~0.1。

(5) 终止代数:遗传算法寻优过程达到终止代数后将停止搜索“环境”中的最优解,同时把当前群体中的最优个体作为所求问题的最优解输出。一般的取值范围是 100~1 000。

1.2 BP算法

BP神经网络是基于梯度下降的误差函数优化,分别有3种不同的网络层结构组成,BP网络拓扑结构图如图1所示,其中最左边为输入层,最右边是输出层,中间部分为隐含层,隐含层可以有多个。有数量不同的神经元构成每层的结构,同时不同层的神经元相互连接,经过一个激活函数形成本层输出,但同层的神经元之间相互独立,通过这种输到输出模式映射关系构建的网络结构,能够学习和存储大量的信息。

图1 BP神经网络结构

BP神经网络在正向传播输入信息,实现分类功能。输入层节点数据通过设定的学习函数之后,在隐含层中逐层传播信号,同时不同层神经元状态由前一层神经元作用而变化,同时构建的模型得到的结果与期望值相互比较,获得之间的差值,若得到的误差精度较大,则该模型进行反向传播,按照预测值与期望值之间的误差修改各层神经元之间的连接权值。对构建的模型经过多次迭代后,得到BP神经网络训练出的结果与期望值比较接近,使其满足设定误差精度后停止迭代。

BP神经网络结构中的输入层和输出层的节点个数是固定的,分别是输入样本的变量个数和输出层的标签个数,但隐含层的节点个数是不固定的,隐含层节点个数的设定对构建的神经网络模型预测的精度也有这比较关键的作用。如果设定的隐含层的节点个数太少,构建的神经网络模型可能达不到设定精度;如果设定的节点个数太多,构建的模型在训练过程中容易导致过拟合。借鉴一些模型训练的经验,选用经验公式(1),设定隐含层节点个数。

l=2n+1

(1)

其中:n为输入层节点数;m为输出层节点数;l为隐含层节点数。在实际确定BP网络拓扑时,一般先采用经验公式估算隐含层节点数大致范围,再通过实验确定最佳的网络拓扑。

BP神经网络在健康管理方面得到了广泛的应用,在液体火箭发动机故障检测与诊断中也取得了一定成就,例如丁伟程等和黄强等基于 BP神经网络对某型号液体火箭发动机的故障检方面做了一些研究成果。但是BP神经网络在某些方面也存在着一些不足:

1) 学习收敛速度太慢;

2) 网络的学习、记忆具有不稳定性;

3) 易陷入局部极小值。BP一般采用梯度下降法实现反馈,不同的起始点可能导致不同的极小值,导致不能寻优至最优解。

2 GA-BP在液体火箭发动机故障检测中的应用

液体火箭发动机是航天运载器故障多发部位,其故障发展迅速,早期特征微弱难检测;故障模式多样,样本小,模拟试验难开展;工况多变,运行测试数据分布差异性大,检测信号强非平稳、强干扰。但是发动机的故障一般都可以通过相关联的参数能够反映[15-18]。液体火箭发动机的工作过程机理复杂,有效预示和控制难度大,其复杂性主要是由于启动器、阀门开启的非线性动态特性以及发动机过渡过程系统冲击震荡、组件多场耦合(燃烧不稳定、流致振动等)等造成的。针对大部分非线性系统可以选用单隐层的三层BP网络实现其映射,本文在对大推力补燃发动机的工作过程进行模型辨识中,采用三层网络结构。

2.1 遗传算法优化BP神经网络

实现遗传算法优化BP神经网络,首先对网络结构进行初始化,然后用遗传算法对BP网络中的连接权值和阈值编码,确定适应度函数以得到误差较小的网络,最后采用选择、交叉和变异等遗传算子进行操作。遗传算法优化BP神经网络,并对液体火箭发动机点火试验数据进行故障检测的操作步骤如图2所示。

图2 遗传算法优化BP神经网络结构图

在GA-BP神经网络训练故障检测模型中,遗传算法的主要步骤为个体的编码、初、制参数的设定和约束条件的处理等。

染色体编码:在GA-BP神经网络故障检测模型中,选择故障模型中待优化BP神经网络的权值和阈值组合组合为群体中相应的个体,并将个体通过二进制进行编码。遗传算法群体中的个体编码长度是按照BP神经网络中各层所含神经元个数决定。因此,假设BP神经网络的输入层神经元个数为S,其中,隐含层神经元个数为P1,输出层神经元个数P2,则编码长度P=S*P1+P1+P1*P2+P2,本文设定输入层神经元数为10,隐含层神经元设定为21,输出层神经元个数为1。

适应度函数的确定:适应度函数是由样本数据对种群个体训练所得的学习误差确定的,学习误差公式如下:

(2)

其中:i为染色体个数,m为输出节点数,n为训练样本数。

BP神经网络的训练要求是实际输出与期望输出的误差平方和最小,遗传算法的适应度函数可以用实际输出值与期望输出值之间的误差平方和的倒数来表示,即:

f(i)=1/E(i)

(3)

2.2 液体火箭发动机系统组成结构及其选取变量参数

大推力液氢液氧补燃发动机主要是由推力室、涡轮泵、预燃室、各种调节阀门,以及机架、导管、支撑件等总体装备要求的直属单元组成[19-22]。图3为某类型液氢液氧发动机的系统简图,在发动机工作过程中执行机构带动5个阀门,分别是氧主阀(MOV)、氢主阀(MFV)、冷却阀、氧预燃氧阀(OPOV)、氢预燃氧阀(FPOV),通过调节燃料的流量,控制发动机的推力大小。

图3 某型号发动机系统简图

为了充分挖掘发动机多源物理信息的因果和映射关系,根据故障诊断系统搭载试验采集的测量参数,从中选取部分特征参数作为训练数据,如表1所示。同时选用同车次不同时间的搭载试验作为测试样本变量数据。

表1 基于GA-BP算法故障诊断模型的变量参数

2.3 样本选取预处理

设定GA-BP模型的训练条件后,若训练样本集较大,则故障检测模型的准确度就越高,训练样本集的选择必须包含液体火箭发动机比较典型的样本,即要求训练样本集的完整性较高。为了提高系统的诊断能力,选择学习样本时,应该选择一些具有代表性的边界样本,这样才有利于训练样本在上下边界之间能够均匀分布,避免训练样本集在上下边界之间出现较大的空缺,即样本不具有完整性,导致训练后的故障检测模型不具备完整的检测能力。

目前,液体火箭发动机故障检测与诊断方法所能利用的信息,大致可以分为两种类型。一种是有传感器直接测量输出的原始信号,主要包括流量、压力、转速等状态参数;振动频率、振型等物理参数;刚度、阻尼等结构参数。另一种类型是在传感器测量输出信号基础上,经过计算处理、加工提炼而形成的导出信号或知识。

2.3.1 数据处理

构建基于遗传算法的大推力氢氧补燃发动机故障检测模型,其中传递函数的选取及训练在故障检测模型中占有比较关键的作用,同时选取的变量参数具有不同评价指标,为了解决数据指标之间的量纲影响,需要对选择的信息数据进行数据标准化处理。因此对发动机的故障检测模型中必须要对原始数据进行标准化处理,使其指标处于同一数量级,对原始变量参数进行预处理的数据被限定在一定范围内。本文使用归一化方法对选取的变量参数数据限定在[0,1],使用公式(4)进行处理:

(4)

其中:xid表示经过归一化后第i个特征参数;xi表示原始第i个特征参数;xmin表示第i个特征参数中的最小值;xmax表示第i个特征参数中的最大值。

2.3.2 训练样本选取

液体火箭发动机系统和结构复杂度高,部件级耦合性强。因此,选取的变量参数数据对液体火箭发动机故障检测模型的构建具有重要的作用。在故障检测模型训练过程中,如果选用的样本变量参数比较合适,则GA-BP构建的网络结构比较优化,使得训练过程运用的时间比较短,得到的故障检测模型具有较好准确定。

选取正常试车数据中比较平稳的第一次搭载试验获作为训练样本来源,取第二次搭载试验包含有故障数据作为检测样本。其中,搭载试验过程中包含起动过程和稳态过程,采样周期为0.005 s。

2.4 仿真结果分析

选取表1中的10个变量参数作为神经网络的输入向量,1个变量参数作为神经网络的输出向量。故障检测的阈值设定为以往历史经验获得。选择第一次搭载试验数据作为训练样本,运用GA-BP神经网络算法对训练数据的实际值与预测值变化曲线如图4所示。

图4 训练样本预测与实际值对比

选择第二次搭载试验数据作为测试样本,其中该试验数据中含有故障数据,运用GA-BP神经网络算法对测试样本数据进行故障检测如图5所示,预测与实际值变换曲线如图6所示。

图5 GA-BP神经网络测试样本故障检测

图6 GA-BP神经网络预测与实际值对比

经传统BP神经网络算法对测试样本数据进行故障检测如图7示。

图7 BP神经网络预测与实际值对比

比较图5、图7可知,未优化的BP神经网络故障检测存在漏检的现象。从图5与图6可知,经遗传算法优化的BP神经网络能够检测出故障,为大推力补燃发动机提供了一种新的故障检测方法。

3 结束语

本文重点针对新一代大推力氢氧补燃循环液体火箭发动机过程过程进行了故障检测算法设计,利用故障诊断系统搭载试验获取的样本数据建立GA-BP神经网络故障检测模型,并通过仿真分析验证了算法的有效性。首先,针对液体火箭发动机系统的非线性特点,确定了BP神经网络的结构,包含输入输出层神经元个数的确定、隐含层数的确定、隐含层神经元个数的确定等关键步骤;其次,设计了针对BP神经网络容易受到局部极小点的缺点,用遗传算法来优化BP网络;最后,根据GA-BP神经网络的故障检测逻辑,设计实现了大推力氢氧补燃循环液体火箭发动机基于遗传算法的故障检测模型,并使用历史试车数据与BP神经网络故障检测模型进行对比,验证并考核了GA-BP神经网络的可靠性和精确性。

猜你喜欢

遗传算法液体神经网络
基于神经网络的船舶电力系统故障诊断方法
基于改进遗传算法的航空集装箱装载优化
液体小“桥”
基于人工智能LSTM循环神经网络的学习成绩预测
MIV-PSO-BP神经网络用户热负荷预测
五颜六色的液体塔
基于遗传算法对广义神经网络的优化
基于遗传算法对广义神经网络的优化
基于遗传算法的临床路径模式提取的应用研究
基于遗传算法的临床路径模式提取的应用研究