基于深度强化学习的尾旋改出技术

2024-04-18 06:13谭健美王君秋
航空兵器 2024年1期
关键词:强化学习深度学习飞机

谭健美 王君秋

摘 要:      本文搭建了飞机仿真环境, 基于近端策略优化(PPO)算法建立了尾旋改出算法测试模型, 设计了基准版单階段、 基准版双阶段、 加深版单阶段、 加深版双阶段四种网络结构, 用于探究网络结构和改出阶段对尾旋改出效果的影响,设置了鲁棒性测试试验, 从时延、 误差和高度等方面进行了算法测试和结果分析。

关键词:     尾旋改出; 深度学习; 强化学习; 近端策略优化; 算法测试; 飞机

中图分类号:      TJ760; V271.4

文献标识码:    A

文章编号:     1673-5048(2024)01-0077-12

DOI: 10.12132/ISSN.1673-5048.2023.0135

0 引  言

现代先进的作战飞机为提高空战效能, 在设计过程中更加注重其机动性和敏捷性, 并要求具有一定的过失速机动能力, 而在完成过失速机动时, 飞机表面流场变化复杂, 流动的分离情况、 涡的不对称性以及破裂位置的激烈变化, 导致作用在飞机上的气动力和力矩随着状态参数的变化呈现强烈的非线性、 非定常的迟滞特性, 出现抖振、 机翼非指令性的摇晃、 机头非指令性的侧偏、 全机非指令性的俯仰摆动或突然抬头、 迎角增加等不期望的危险飞行状态。 此时, 飞机的操纵性明显变差, 有时甚至完全丧失操纵性, 很有可能进入过失速偏离、 尾旋等危险状态, 给飞行安全造成隐患, 严重时可能导致致命事故[1]。

过失速偏离是飞机从可控飞行状态向尾旋等失控状态过渡的一种短暂运动过程, 可能增加飞机进入尾旋的趋势。 偏离过程通常是一种大振幅的、 非指令性的和发散的运动。 一般来说, 过失速偏离运动是不发散的。 但若驾驶员快速向后拉杆或采取顺尾旋的横航向操纵, 则有可能使飞机进入尾旋状态。

尾旋是飞机失速后发生的一种自发的持续偏航运动, 且可能伴有绕飞机俯仰、 滚转和偏航等三轴的振荡运动。 飞机航迹沿半径很小的、 很陡的垂直螺旋线轨迹急剧下降, 因而尾旋也称为“螺旋”。 尾旋的产生与机翼自转有很大关系。 当飞机处于临界迎角范围时, 可能具有一定的滚转角速度。 若飞机发生右滚, 左侧机翼迎角变小、 升力下降, 右侧机翼迎角变大、 升力增加, 从而产生左滚力矩阻止飞机进一步滚转, 起到阻尼作用。 然而, 当飞机处于超临界迎角范围时, 若具有一定的右滚角速率, 则左侧机翼迎角减小, 由于迎角处于超临界范围, 迎角减小可能会使升力增加; 同理, 右侧机翼的迎角增加可能引起升力减小, 二者共同作用会加剧飞机的右滚, 使得滚转角速度不断增大。 即使飞机初始没有滚转角速度, 但气流不对称或其他原因都有可能引起飞机的滚转运动, 并在机翼产生的不对称升力的作用下加速滚转, 从而形成机翼自转。 此外, 尾旋本身复杂的旋转和振荡, 使得惯性交感力矩在尾旋运动中也起到了重要作用。 惯性交感力矩一般起到不稳定力矩的作用, 使飞机迎角有增大的趋势。

研究尾旋特性的手段[2]较多, 如风洞中的旋转天平测量试验和动态试验、 立式风洞试验[3]、 模型飞行试验以及飞机试飞等。 此外, 还可通过数值计算、 在飞行模拟器上进行尾旋运动的半物理仿真试验、 开展尾旋预防与改出训练等方法[4], 掌握并验证飞机尾旋时的运动特性和改出方法。

考虑到飞机尾旋运动的非线性和不确定性较强、 气动特性的迟滞效应较大, 且在尾旋的发展过程中飞机动力学特性随时间变化较大, 常规的研究方法存在一定的局限性。 随着智能技术的发展, 特别是深度学习和强化学习的发展, 计算机在感知过程的数学建模及策略的学习问题等取得了一定的进步。 因此, 本文基于深度学习和强化学习方法, 开展了飞机尾旋改出问题的研究工作。

1 强化学习尾旋改出解决方案

飞机尾旋改出的主要目标是减小迎角并尽快达到安全速度, 同时将高度损失降至最低。 虽然从尾旋中改出的具体技术取决于飞机和尾旋的类型, 但通常通过减少飞机自转角速度、 恢复飞机迎角的策略可以改出大部分尾旋。 采用深度学习和强化学习技术能够在发生尾旋时自动执行改出操作。 经过多年研究, 强化学习发展出多种技术途径。 Tomar D S等 [5]采用强化学习和监督学习技术开展了飞机失速改出技术研究;  Kolb S等[6]开展了飞机深失速实时探测和改出程序研究; Cao H H等[7]采用强化学习技术开展了双阶段飞机尾旋改出策略研究; Kim D等 [8]采用强化学习技术开展了无人机平尾旋最优改出策略研究; Chao H Y等[9]开展了无人机失速/尾旋探测技术的飞行试验研究;  Bunge R A等[10-11]开展了无人机的失速/尾旋探测与飞行试验技术研究。

强化学习通过智能体与环境的交互学习获得好的策略, 在解决飞机尾旋改出具有广阔前景。 强化学习控制方案有可能发展为常规尾旋改出的替代方案, 但强化学习也面临一些问题, 研究侧重于解决相应的问题。 学习算法期望从当前动作中获得累积奖励, 因此它可以避免不希望的轨迹, 例如高迎角、 大角速率和大过载的状态。 强化学习经常被用来控制黑盒系统, 包括不确定性, 它保证了在预定状态空间和动作空间上的最优性。 然而, 在利用强化学习解决尾旋改出问题时, 存在相当具有挑战性的问题。 一个问题是维度爆炸的问题。 随着状态空间和动作空间维度的增加, 相应的计算负载呈指数增长。 另一个问题是函数逼近器的复杂性。 由于学习技术通过使用单个状态操作奖励集进行迭代来更新连续状态上的奖励, 因此需要一个覆盖整个状态空间的函数逼近器。 函数逼近器的复杂性应确定为正确反映目标函数, 而不会出现欠拟合和过拟合。

智能体获得的策略需要满足诸多要求。 强化学习算法应当学习以获得更好的策略, 而更好的策略体现在如下三个方面:

(1) 强化学习获得的策略应当符合安全性的要求。 符合安全性要求的策略应当尽量避免事故的发生。 对于尾旋改出这种从事故中解脱的策略而言, 安全性更是极其重要的方向。

(2) 强化学习获得的策略应具备稳定系统的能力。 在系统控制过程中, 应当能够将系统从不稳定控制转化为稳定控制。 对于尾旋改出策略而言, 控制策略执行后, 飞机应当能够转为平稳飞行, 更要避免二次失速。

(3) 强化学习应当能够完成目标化的探索, 从而避免智能体学习到存在安全隐患的高奖励策略。 强化学习是通过最大化获得奖励获取策略, 如果对奖励的考虑不够充分, 可获得最大奖励的策略。

在利用深度强化学习技术进行飞机尾旋改出的过程中, 需要着重解决强化学习的奖励函数无法兼顾策略安全性与稳定性的问题、 策略的探索与输出难以预测和约束的问题, 以及难以灵活地应对动态的多目标控制问题。

2 算法设计与实现

2.1 问题建模

飞机的两个相邻时刻的飞行状态可近似看成飞机在给定操作下状态之间的转移, 飞机下一时刻的状态仅和当前时刻的状态有关, 与上一时刻的状态无关, 所以在理论层面上, 飞机的飞行状态具有马尔科夫性, 然后将飞机飞行过程在飞行时间的维度上离散化, 可以近似将飞机的飞行过程建模为离散时间的马尔科夫链[12](Discrete-Time Markov Chain, DTMC)。 飞机的尾旋改出过程其本质是通过操作杆对飞机的状态转移加以控制, 使飞机达到某个目标状态, 故飞机的尾旋改出过程就是在飞机飞行过程的马尔科夫链的基础上加入决策控制, 故可将飞机尾旋改出过程建模为马尔科夫决策过程(Markov Decision Process, MDP)。

将飞机的尾旋改出过程建模为马尔科夫决策过程, MDP是一个序贯决策过程, 可以由一个5元组来表示, 具体建模内容规范如下:

飞机的尾旋改出是一个连续控制问题[13], 在MDP决策过程中, 采用强化学习方法去解决尾旋改出连续控制问题。 以飞机进入尾旋后的初始状态作为强化学习网络的环境初始化之后的第一个状态, 然后设计合理的强化学习网络去拟合状态和动作的映射关系, 以强化学习网络的输出值(即动作值)作为飞机控制杆的控制量, 飞机获得新的控制量后对当前状态进行更新并获得新的状态, 此时环境会根据飞机的新状态对这次控制决策给出一个奖励值, 随后以该新状态作为强化学习网络的下一个输入值, 如此每一次循环, 飞机将完成识别当前状态—执行控制指令—到达下一状态—获取奖励值这一完整流程, 强化学习的目的是让每一轮中飞机获得的累计奖励值达到最大, 在合理的奖励函数引导下, 就可以引导网络做出有利于尾旋改出的决策, 直至将飞机改出尾旋状态, 恢复平稳飞行。

在基于值函数的强化学习算法中, 深度神经网络的输出是当前状态s的所有可执行动作的状态-动作价值Q(s, a; θ)所组成的向量, 因此该方法只能处理离散动作空间问题。 而本文的尾旋改出场景是连续动作空间问题, 比如动作设定为飞机操纵杆的幅度值, 基于值函数的强化学习算法不适用。 策略梯度方法利用参数化的深度神经网络来近似策略, 从而可以输出连续的动作策略, 解决尾旋改出问题中涉及的连续动作问题。 策略梯度方法在每次进行策略更新前, 需要采用当前的策略与环境进行交互产生多条轨迹, 计算梯度后对模型进行更新, 得到新的策略。

由此可见, 策略梯度是一种在线策略(On-Policy)的更新方法, 导致该算法对样本的利用率较低。 同时, 由于策略梯度算法输出的是动作的概率分布, 而不是一个确定性的动作, 导致改出算法收敛速度较慢且不稳定, 而基于值函数的强化学习方法可以解决这个问题。

综上, 可以将策略梯度和值函数相结合, 构建一个新的强化学习架构, 即Actor-Critic(AC)架構[14-15]。 本文采用基于AC架构建立的近端策略优化算法[16](Proximal Policy Optimization, PPO)开展尾旋改出试验。 PPO算法是一种新型的在线策略梯度方法, 它综合了“策略梯度方法(PG)”和“置信域策略优化(TRPO)”的优点。

2.2 算法模型

2.2.1 状态空间

在尾旋改出场景中, 强化学习状态空间的变量由飞机的10个飞行状态量构成, 分别为空速、 迎角、 侧滑角、 滚转角、 俯仰角、 偏航角、 滚转角速度、 俯仰角速度、 偏航角速度、 垂直速度。 在强化学习的网络训练过程中, 状态信息被表征为一个10维向量。 表1为强化学习状态空间的变量表。

2.2.2 动作空间

在尾旋改出场景下, 强化学习动作空间的控制变量包含升降舵、 副翼、 方向舵和油门杆等4个操纵面。 表2通过对操纵面进行归一化处理, 给出了每一个控制变量的名称、 含义及其取值范围。

2.2.3 奖励函数

针对飞机尾旋改出场景, 奖励函数的设计目的是引导网络做出最优决策, 从而控制飞机完成改出。 因此, 奖励函数应设计为一系列与状态变量有关的函数。 为了使目标网络更容易收敛, 与各状态变量相关的奖励函数应统一, 奖励函数r的形式如下:

式中: 函数变量Curval表示智能体中当前该状态分量的值; Tarval表示智能体中该状态分量的目标值; Θ为缩放系数。 当Θ为0.02时, 该函数如图1所示。

该奖励函数有以下特点:

(1) 越靠近目标值, 奖励值越大。 从图中可以看出, 当前状态值与目标值越接近, 函数值越大, 而且在目标值附近时函数值变化十分剧烈, 这是为了让强化学习网络在目标值附近决策时, 依然可以获取较大的奖励差值, 使网络更容易收敛至最优点。

(2) 通过调整Θ值来代替正向动作奖励。 正向动作奖励是指若当前决策使得该状态分量比上一次决策更接近目标值, 则获得正值的奖励, 否则获得负值的惩罚, 这会引导智能体在每一次决策中趋向于做出当前状态下的正向决策。 在该奖励函数中, 通过调整缩放系数Θ, 可以改变曲线与x轴的交点, 而通过调整交点位置, 可以在一定程度上代替正向动作奖励, 同时又避免了正向动作奖励在目标值附近振荡的缺点。 试验证明, 当交点为(40, 0)左右时, 训练效果最好, 此时对应的缩放系数Θ取值为0.02。

(3) 将奖励值归一到[-1, 1]。 奖励值归一化有利于减少因各个奖励的标量值不同对总体奖励的影响, 同时也更加方便对不同参数的奖励设置不同的权重, 设置更加明确的奖励函数和权重。

总奖励Rtot为各状态分量相关奖励的加权和, 即

权重Wi表示网络对第i个状态分量的重视程度, 在实际的训练过程中, 各项权重将根据训练的不同阶段进行调整。

实际训练中, 使用空速、 迎角、 侧滑角、 滚转角、 俯仰角、 偏航角、 滚转角速度、 俯仰角速度、 偏航角速度、 垂直速度等10个状态变量进行计算, 然后, 将各训练轮次的奖励函数取值进行叠加, 得到最终的奖励函数取值, 即

Rtot=Rα+R+Rθ+RΨ+Rp+Rq+Rr+RVh(3)

式中: Rα, R, Rθ, Rψ, Rp, Rq, Rr, RVh分别表示迎角、 滚转角、 俯仰角、 偏航角、 滚转角速度、 俯仰角速度、 偏航角速度、 垂直速度对应的奖励函数分量。 各分量对应的奖励函数的参数设置如表3所示。

2.3 训练和测试环境

强化学习模型的训练和测试环境是基于开源的飞机仿真程序, 其低保真模型迎角范围为-20°~45°, 高保真模型[17]迎角范围为-20°~90°。 为了研究飞机的尾旋运动, 本文使用高保真模型进行仿真。 其中飞机本体运动方程、 作动器模型、 标准大气模型等都基于飞机仿真程序说明文档及公开资料[18]。 本文采用常规遍历进入方法, 生成若干尾旋轨迹, 作为强化学习尾旋改出算法的数据集。

尾旋轨迹构建的主要过程是, 首先选定不同高度, 将飞机在规定速度下配平, 然后选择控制升降舵使飞机到达超临界迎角区域, 再通过不同副翼、 方向舵偏转进入尾旋。 高度取值方法为2 000 ft到20 000 ft中每2 000 ft取一个值, 速度均取为300 ft/s。

根据上述方法进入尾旋, 生成了足够数量的尾旋轨迹, 尾旋中飞机平均迎角60°左右, 平均偏航角速度80 (°)/s。 每条轨迹由北向位置、 东向位置、 高度、 空速、 迎角、 侧滑角、 滚转角、 俯仰角、 偏航角、 滚转角速度、 俯仰角速度、 偏航角速度、 发动机状态、 升降舵偏转、 副翼偏转、 方向舵偏转等16个时序数据构成。 图2展示了一条典型的尾旋轨迹三维图, 图3给出了在该轨迹上飞机状态量的变化情况。

由图3可见, 10 s之后飞机迎角快速超过50°,进入过失速状态, 并发生横航向的向左偏离运动。 40 s左右, 飞机偏航速率达到100 (°)/s、 平均迎角约为70°, 开始进入较为典型的平尾旋状态, 飞机沿着一条半径极小的螺旋线急速下坠, 如图2所示。

3 智能体训练和测试

3.1 试验条件设置

3.1.1 训练初始状态

在强化学习网络训练过程中, 每个控制回合的开始需要初始化环境, 然后控制网络接受的第一个状态量为初始状态。 表4列出了训练中的部分初始条件, 其余条件可根据给出的要求和飞机尾旋时自身状态计算得到。

3.1.2 训练终止条件

一轮循环中飞机控制步数达到给定数量(由超参数max_step指定)后将自动结束本轮循环, 若最后一个状态仍未达到尾旋改出標准, 则将此次控制视为改出失败。

达到给定尾旋改出成功条件: 一轮循环中若控制输出步数未达到最大执行步数, 且飞机状态达到给定的尾旋改出成功状态值, 则将此次控制视为改出成功。 表5为给定的尾旋改出成功状态值表。

3.2 网络结构设计

本文PPO算法设计了两种动作网络(Actor)结构。 其中, 基准版的网络结构只有一个隐藏层, 其网络宽度为64, 其结构如图4所示。

加深版Actor网络中的隐藏层变为3层, 同时将网络的宽度扩增为128, 其结构如图5所示。

本文PPO算法设计了两种评价网络(Critic)结构。 其中, 基准版的网络结构只有一个隐藏层, 其网络宽度为64, 其结构如图6所示。

加深版Critic网络的隐藏层变为3层, 同时将网络的宽度扩增为128, 其结构如图7所示。

3.3 训练的超参数设置

飞机仿真积分时间: 0.001 s

强化学习算法决策控制间隔: 0.03 s

随机种子: 10

经验池大小(Batch_size): 2 048

单批次更新大小(Mini_batch): 64

单次经验池的更新次数(K_epochs): 5

策略的熵(Policy Entropy): 0.01

优化器eps参数(Adam Epsilon): 1×10-5

Actor和Critic网络的学习率: 3×10-4

折扣因子(γ): 0.99

泛化优势估计器参数(λ): 0.95

PPO 截断参数(Epsilon): 0.2

网络隐藏层宽度(Hidden_width): 64

最大步长(Max_step): 50 000

3.4 训练过程的优化方法

3.4.1 初始改出状态点的随机化处理

在训练过程中, 选取了16条不同的尾旋轨迹, 在尾旋轨迹上随机选取了共计1 500个发生尾旋的飞机飞行状态点, 并在这1 500个飞行状态点上随机仿真0~10 s后, 再使智能体操纵飞机舵面, 开始尾旋改出训练。 这样就可以使智能体在尽可能多的状态下开展尾旋改出训练, 拓展智能体的状态空间取值范围, 增加初始状态点的随机性, 从而学习到更为全面的改出操纵方法, 提高智能体的改出成功率。

3.4.2 分阶段的奖励函数设置

在尾旋改出过程中, 目前普遍适用的操纵方法是: 首先令飞机“止旋”, 然后再操纵飞机“拉平”。 因此, 在训练过程中可以将尾旋改出的奖励分为两部分。 第一部分是在飞机姿态变化率较大(p, q或r的绝对值超过10 (°)/s)时, 将p, q和r对应的奖励值设置更大的权重; 第二部分是在飞机姿态变化率较小(p, q和r的绝对值小于10 (°)/s)时, 则增加对滚转角、 俯仰角和偏航角的奖励值, 鼓励智能体完成“拉平”控制。

双阶段奖励函数的第一阶段:

Rtot=Rp+Rq+Rr+RVh(4)

其中各分量对应的奖励函数系数如表6所示。

双阶段奖励函数的第二阶段:

Rtot=R+Rθ+RΨ+RVh(5)

式中各分量对应的奖励函数系数如表7所示。

4 试验结果

4.1 训练与测试表现

在训练环境下将尾旋进入-改出整个过程分为三个阶段。 (1)第一阶段: 平飞阶段; (2)第二阶段: 采用一定的控制操作使飞机进入尾旋; (3)第三阶段: 改出控制阶段, 强化学习动作网络将输出操纵动作值, 控制飞机从尾旋状态中改出。

此外, 本文在开展尾旋改出控制时, 通过改变奖励函数的设置, 提出了单阶段改出和止旋-拉平双阶段改出等两种改出策略。

4.1.1 单阶段改出

图8展示了采用单阶段改出策略进行智能体训练时, 尾旋改出过程中飞机飞行状态量的变化曲线。 图8中标注了多条垂直于横轴的短竖线,  代表在该状态点, 飞机已经满足改出训练设置的终止条件; 曲线的起始点代表智能体接管飞机控制的起点,  当前程序设定的是进入稳态尾旋后10 s, 智能体开始介入改出控制。

图9和图10分别展示了低空状态和高空状态下采用训练好的智能体进行尾旋改出过程中飞机飞行状态量的变化曲线。 从图9中可以看出, 开始改出操纵后飞机迎角逐渐稳定到20°左右、 滚转角和侧滑振荡收敛到0°附近, 飞机恢复到无侧滑、 机翼水平的稳定对称飞行姿态, 改出过程时长为16 s, 高度损失为550 ft。 可见, 通过强化学习训练得到的智能体能够将飞机从尾旋状态中改出, 过程耗时较短、 高度损失较小且没有进入其他的危险状态。 从图10中可以看出, 开始改出操纵后飞机迎角从60°减小到20°左右、 滚转角和侧滑振荡快速收敛到0°附近, 飞机恢复到无侧滑、 机翼水平的稳定对称飞行姿态, 改出过程时长为35 s, 高度损失为2 500 ft。 因此, 强化学习训练得到的智能体能够将飞机从尾旋中改出。

与图9的低空改出结果相比, 高空改出耗时更长、 高度损失更多。 由于高空状态下空气密度较小, 导致飞机各操纵舵面的操纵效能较低; 而在智能体的训练过程中, 没有考虑飞行高度变化对尾旋改出策略的影响, 导致智能体在高空和低空的改出操纵策略一致, 当高空操纵效能降低后, 其改出效率也会随之下降。 在后续研究中, 可尝试将高度因素纳入到智能体的状态变量空间中, 使其在高空和低空具备不同的改出操纵策略, 并优化高空的改出效果。

4.1.2 双阶段改出

图11展示了采用双阶段改出策略进行智能体训练时, 尾旋改出过程中飞机飞行状态量的变化曲线。 图11中标注了多条垂直于横轴的短竖线, 代表在该状态点, 飞机已经满足改出训练设置的终止条件。 当前程序设定的是进入稳态尾旋后10 s, 智能体开始介入改出控制。 图12和图13则分别展示了低空和高空状态下采用训练好的智能体进行尾旋改出过程中飞机飞行状态量的变化曲线。

从图12中可以看出, 开始改出操纵后飞机迎角逐渐稳定到20°左右、 滚转角和侧滑振荡收敛到0°附近, 飞机恢复到无侧滑、 机翼水平的稳定对称飞行姿态, 改出过程时长为18 s, 高度损失约为550 ft; 与图9中展示的单阶段改出效果基本一致。 综上, 单阶段和双阶段的改出策略均能够将飞机从尾旋状态中改出, 且过程耗时较短、 改出过程中高度损失较小, 且没有进入其他的危险状态。

从图13中可以看出, 开始改出操纵后飛机迎角从60°减小到20°左右, 滚转角和侧滑振荡快速收敛到0°附近, 飞机恢复到无侧滑、 机翼水平的稳定对称飞行姿态, 改出过程时长为8 s, 高度损失约为1 000 ft。 与图10对比可知, 双阶段改出策略的改出效率明显高于单阶段改出策略, 且单阶段改出过程中飞机姿态会出现较大幅度的振荡, 而在双阶段改出过程相对平稳。 综上, 双阶段的改出策略能够更高效地将飞机从尾旋状态中改出, 且过程耗时更短、 改出过程中高度损失更小, 且不会进入其他的危险状态。

4.2 鲁棒性试验设置

4.2.1 系统时延干扰试验

系统时延是指输入智能体动作网络的飞机状态时刻与飞机当前的真实状态时刻之间的时间间隔, 如图14所示。

为了验证系统的鲁棒性, 需要在不同的系统时延条件下进行尾旋改出试验。

4.2.2 传感器误差干扰试验

传感器误差是指在现实环境中获取飞机各项状态值与飞机真实值之间存在无法消除的工程误差。 在仿真环境下, 通过在获取状态值之后添加一个给定方差的白噪声来模拟这一情况, 如图15所示。 从仿真环境中获得的飞机真实状态为S*, 输入到决策网络的状态为添加噪声δ之后的状态S, 即

S=S*+δ(6)

为了验证系统的鲁棒性, 需要在不同的系统误差条件下进行尾旋改出试验。

4.2.3 不同高度下随机初始化条件试验

为了验证网络的泛化能力, 需要在不同高度下进行随机初始化条件的尾旋改出试验。

4.2.4 交叉试验

为了验证各因素对尾旋改出的影响, 需要在不同干扰项叠加因素下开展交叉试验。

4.2.5 网络结构试验

由于基准版的网络结构在初步试验中, 发现其效果不太理想, 故设计加深版网络试验, 进行对照, 希望加深版网络可以更好地拟合尾旋改出操作, 带来更好效果。

4.3 鲁棒性试验改出效果

根据上述鲁棒性试验设置, 本文对基准版网络单阶段、 基准版网络双阶段、 加深版网络单阶段、 加深版网络双阶段算法分别进行了鲁棒性试验。 结果证明, 强化学习可以应用在飞机的尾旋改出中。

4.3.1 系统时延干扰试验

系统时延会使改出时间增加, 所以在低空状态时, 增加的操作时间会使得网络没有足够的时间进行尾旋改出, 降低尾旋改出的成功率, 但是在高空状态时, 由于高度足够, 对尾旋改出的成功率几乎没有太大的影响。 这主要是因为系统时延会不可避免地增加模型的决策时间间隔, 但不影响决策的有效性, 因此增加系统时延对模型的决策干扰是十分有限的。

4.3.2 传感器误差干扰试验

传感器误差在达到50%时, 对模型的尾旋改出性能会有较少影响; 在大于50%误差后, 反而会使改出时间降低。 结合系统时延对比试验的数据, 说明模型对干扰的抵抗是很有效果的。

4.3.3 不同高度下随机初始化条件试验

在大于3 000 ft的高度下尾旋, 尽管发生尾旋时飞机的初始状态不同, 改出的成功率会普遍升高且改出时间相近, 但在2 500 ft以下的低空进行改出时, 成功率会随着高度的降低而降低, 尤其是尾旋高度低于2 000 ft后, 改出成功将完全取决于发生尾旋时飞机的初始状态, 若初始状态十分不利于改出, 则会改出失败。

4.3.4 交叉试验

在高空情况下, 系统试验和传感器误差的干扰对模型决策的影响较小, 但在低空情况下, 这两项干扰会显著降低改出成功率, 说明尾旋高度越低, 模型的抗干扰能力越差。

4.3.5 不同网络结构试验

通过基准版单阶段与加深版单阶段的网络对比发现, 网络的加深有利于更好地拟合较为复杂的状态, 可以带来更好的表现。

在基准版单阶段与双阶段的对比中可以发现, 双阶段的效果是优于单阶段的效果, 但是在加深版的试验中上述表现却恰恰相反。 其原因可能是, 由于网络加深以及双阶段带来的训练难度增加, 加深版的神经网络还未训练到最优状态, 从而出现了加深版双阶段智能体的改出效果不如加深版单阶段的智能体。

5 结  论

本文基于飞机仿真环境, 形成了16组典型尾旋轨迹数据样本, 采用通用性较强、 易于调参的PPO算法, 建立了深度强化学习尾旋改出算法模型, 设计了基准版单阶段、 基准版双阶段、 加深版单阶段、 加深版双阶段四种网络结构, 开展了低空和高空状态的改出算法训练, 设置了鲁棒性测试试验, 从时延、 误差和高度等方面给出了试验结果。 总体结论如下: 单阶段和双阶段的改出策略均能将飞机从尾旋状态中改出, 过程耗时较短, 改出过程中高度损失较小, 且没有进入其他的危险状态; 单阶段改出过程中飞机姿态会出现较大幅度的振荡, 而在双阶段改出过程相对平稳; 双阶段改出策略的改出效率总体高于单阶段改出策略, 改出过程耗时更短、 高度损失更小, 且不会进入其他的危险状态。

现阶段工作主要存在三个方面的问题: 一是原型系统气动力模型精确度有限; 二是缺乏对尾旋改出难度的评估; 三是尾旋改出方案的设计还需进一步优化。 目前, 飞机原型系统气动力模型的精确度有限, 难以生成更接近于实际的足够数量的尾旋轨迹数据, 导致训练和测试样本不足。 本文虽能进入一定数量的不同的尾旋模态, 但是对尾旋改出难度的划分还缺乏一个明确的定量标准, 仅通过偏航角速率的大小来判断改出难度的方法不够精确, 不利于后续建立统一的衡量改出方案效果的评价标准。 对于尾旋改出方案, 现阶段尝试了单阶段和双阶段两种改出方式, 两种方案在不同规模的网络中表现出一定的差异性, 其原因还有待进一步分析, 同时单阶段方案在“止旋”阶段存在一定的往复振荡, 双阶段方案则不存在这个问题, 往复振荡会大大增加尾旋改出的总时间, 姿态调整阶段通常会花费较多的时间, 该问题有待進一步解决。

针对大迎角气动力模型的精确度问题, 当前除了基于数学模型的传统建模方法, 汪清[19-20]、 何磊[21]、 王超[22]等人尝试了支持向量机等机器学习方法用于大迎角非定常气动力建模, 取得了较好的效果。 在后续研究中, 可尝试上述方法改善气动力模型。 针对尾旋改出难度的评估, 可以尝试将剩余舵效大小作为评估量。 尾旋改出的难度除了体现在其运动本身的复杂性外, 还体现在可使用的力和力矩的大小, 如剩余舵面效能足够大, 则即使是复杂的尾旋运动也可较为简单地改出, 因此, 剩余舵效是衡量尾旋改出难度的重要指标之一, 应将其纳入考虑范围。 为了改进尾旋方案设计, 应进一步探究单阶段中“止旋”往复振荡出现的原因, 同时研究双阶段中各阶段不同的任务目标是否会影响改出时间。 明确不同阶段的任务目标应有助于提高尾旋改出的效率, 可在姿态调整阶段设计传统的最优控制来替换强化学习以达到更短的改出时间。

參考文献:

[1] Kenny D J, Collins J, Sable A. Stall and Spin Accidents: Keep the Wings Flying [EB/OL]. (2022-12-10)[2023-07-04].https:∥www.aopa.org/-/media/files/aopa/ home/pilot-resources/safety-and-proficiency/accident-analysis/special-reports/stall_spin.pdf

[2] Bihrle W, Barnhart B. Spin Prediction Techniques[C] ∥Proceedings of the 6th Atmospheric Flight Mechanics Conference, 1980.

[3] 颜巍. 立式风洞与立式风洞试验[J]. 民用飞机设计与研究, 2016(3): 52-55.

Yan Wei. Vertical Wind Tunnel and Vertical Wind Tunnel Experiments[J]. Civil Aircraft Design & Research, 2016(3): 52-55. (in Chinese)

[4] Sidoryuk M E, Khrabrov A N. Estimation of Regions of Attraction of Aircraft Spin Modes[J]. Journal of Aircraft, 2019, 56(1): 205-216.

[5] Tomar D S, Gauci J, Dingli A, et al. Automated Aircraft Stall Recovery Using Reinforcement Learning and Supervised Learning Techniques[C]∥IEEE/AIAA 40th Digital Avionics Systems Conference, 2021: 1-7.

[6] Kolb S, Montagnier O, Hétru L, et al. Real-Time Detection of an Aircraft Deep Stall and Recovery Procedure[J]. Journal of Gui-dance, Control, and Dynamics, 2019, 42(5): 1185-1194.

[7] Cao H H, Zeng W F, Jiang H T, et al. Two-Stage Strategy to Achieve a Reinforcement Learning-Based Upset Recovery Policy for Aircraft[C]∥2021 China Automation Congress (CAC), 2022.

[8] Kim D , Oh G , Seo Y ,et al.Reinforcement Learning-Based Optimal Flat Spin Recovery for Unmanned Aerial Vehicle[J].Journal of Guidance, Control, and Dynamics, 2017, 40(4): 1074-1081.

[9] Chao H Y, Flanagan H P, Tian P Z, et al. Flight Test Investigation of Stall/Spin Detection Techniques for a Flying Wing UAS[C]∥Proceedings of the AIAA Atmospheric Flight Mechanics Conferen-ce, 2017.

[10] Bunge R A, Kroo I. Automatic Spin Recovery with Minimal Altitude Loss[C]∥Proceedings of the AIAA Guidance, Navigation, and Control Conference, 2018.

[11] Bunge R A, Munera Savino F, Kroo I. Approaches to Automatic Stall/Spin Detection Based on Small-Scale UAV Flight Testing[C]∥Proceedings of the AIAA Atmospheric Flight Mechanics Conference, 2015.

[12] Sutton R S. Barto A G. Reinforcement Learning: An Introduction [J].IEEE Transactions on Neural Networks, 1998, 9(5): 1054.

[13] Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous Control with Deep Reinforcement Learning[EB/OL]. (2019-07-05)[2023-07-04]. https:∥arxiv.org/abs/1509.02971.

[14] Haarnoja T, Zhou A, Abbeel P, et al. Soft Actor-Critic: Off-Policy Maximum Entropy Deep Reinforcement Learning with a Stochastic Actor[EB/OL]. (2019-08-08)[2023-07-04]. https:∥arxiv.org/abs/1801.01290.

[15] Fujimoto S, van Hoof H, Meger D. Addressing Function Approximation Error in Actor-Critic Methods[EB/OL]. (2018-10-22)[2023-07-04].https:∥arxiv.org/abs/1802.09477.

[16] Schulman J, Wolski F, Dhariwal P, et al. Proximal Policy Optimization Algorithms[EB/OL]. (2017-08- 28)[2023-07-04]. https:∥arxiv.org/abs/1707.06347.

[17] Russell R S. Non-Linear F-16 Simulation Using Simulink and MATLAB [R]. 2003.

[18] Gillert W P, Nguyen L T, Van Gunst R W. Simulator Study of the Effectiveness of an Automatic Control System Designed to Improve the High-Angle-of-Attack Characteristics of a Fighter Airplane: NASA TN- D-8176[R]. Hampton Va: Langley Research Center, 1976.

[19] 汪清, 錢炜祺, 丁娣. 飞机大迎角非定常气动力建模研究进展[J]. 航空学报, 2016, 37(8): 2331-2347.

Wang Qing, Qian Weiqi, Ding Di. A Review of Unsteady Aerodynamic Modeling of Aircrafts at High Angles of Attack[J]. Acta Aeronautica et Astronautica Sinica, 2016, 37(8): 2331-2347. (in Chinese)

[20] Wang Q, Qian W Q, He K F. Unsteady Aerodynamic Modeling at High Angles of Attack Using Support Vector Machines[J]. Chinese Journal of Aeronautics, 2015, 28(3): 659-668.

[21] 何磊, 钱炜祺, 汪清, 等. 机器学习方法在气动特性建模中的应用[J]. 空气动力学学报, 2019, 37(3): 470-479.

He Lei, Qian Weiqi, Wang Qing, et al. Applications of Machine Learning for Aerodynamic Characteristics Modeling[J]. Acta Aerodynamica Sinica, 2019, 37(3): 470-479. (in Chinese)

[22] 王超, 王贵东, 白鹏. 飞行仿真气动力数据机器学习建模方法[J]. 空气动力学学报, 2019, 37(3): 488-497.

Wang Chao, Wang Guidong, Bai Peng. Machine Learning Method for Aerodynamic Modeling Based on Flight Simulation Data[J]. Acta Aerodynamica Sinica, 2019, 37(3): 488-497. (in Chinese)

Aircraft Spin Recovery Technique Based on Deep

Reinforcement Learning

Abstract: This paper builds an aircraft simulation environment, and establishes a test model of an automated spin recovery algorithm based on proximal policy optimization (PPO) algorithm. Four kinds of network structures are designed, that are basis single stage, basis double stage, deep single stage and deep double stage, to explore the influence of network structure and recovery stage on spin recovery effect. A robustness test experiment is set up, and the algorithm is tested and the results are analyzed from the aspects of delay, error and height.

Key words: spin recovery; deep learning; reinforcement learning; proximal policy optimization; algorithm test; aircraft

猜你喜欢
强化学习深度学习飞机
飞机失踪
“拼座飞机”迎风飞扬
基于强化学习的在线订单配送时隙运能分配
论“以读促写”在初中英语写作教学中的应用
乘坐飞机
智能交通车流自动导引系统
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
分布式系统中基于非合作博弈的调度算法
深度学习算法应用于岩石图像处理的可行性研究