摘要
为满足脉冲增程型导弹在线决策脉冲发动机最优点火时间及在线生成最优过载指令等需求,本研究对相关非线性最优制导方法进行了研究,提出一种最优制导指令在线生成方法。首先,建立了脉冲增程型导弹的非线性脉冲最优控制问题模型,并通过对增广目标函数进行全微分建立了该脉冲最优控制问题的最优性条件。其次,提出了一种快速生成脉冲最优轨迹数据集的参数化方法,该参数化方法根据最优性条件构建了一组参数化微分方程,使得通过对该微分方程组进行数值积分即可得到脉冲最优轨迹的数据集。最后,利用该数据集中的脉冲发动机最优点火时间和最优过载指令训练前馈神经网络,从而实现了脉冲发动机最优点火时间的在线决策和最优过载指令的在线生成。数值仿真研究结果表明,相比于传统优化方法,本研究所提出的方法不仅能够在1 ms内在线决策脉冲发动机最优点火时间和最优过载指令,而且弹道射程优于或相当于传统优化方法得到的弹道,因此所提出的方法具有在线生成脉冲增程型导弹最优制导指令的能力。
Abstract
Regarding range-extended missiles by pulse motor, in order to meet the needs of deciding optimal time for pulse engine ignition and the real-time generation of optimal overload commands, a nonlinear optimal guidance method is studied and a real-time generation method of optimal guidance commands is proposed in this research. First, a nonlinear optimal control problem model for the missile is established. Optimality conditions are then derived by fully differentiating the augmented objective function. Subsequently, a parameterized method which constructs a set of parameterized differential equations based on the optimality condition is proposed for the fast generation of pulse optimal trajectory datasets, allowing for generating datasets of optimal trajectories through numerical integration. Finally, based on the datasets containing the pulse engine optimal ignition timing and overload commands, feedforward neural networks are trained to decide the pulse engine optimal ignition time and generate the optimal overload commands in real time. Numerical simulations demonstrate that the proposed method can decide the pulse optimal ignition timing and generates the optimal overload commands within 1 ms. Moreover, the range of missile trajectory achieved is either superior to or comparable to that obtained through conventional optimization methods. Thus, this method has the capability of generating optimal guidance commands for range-extended missiles by pulse motor.
在现代战争中,夺取制空权已成为决定战争胜负的关键因素。空空导弹超视距打击通过扩大作战半径,弥补战机性能的不足,维持己方的制空权,提高射程能够显著提升空空导弹的超视距打击能力,已成为空空导弹重要的发展方向[1]。通过搭载双脉冲发动机,合理调节两级脉冲间隔时间,可以有效增加武器射程[2]。文献[3]表明,通过增加脉冲发动机能够将典型火箭弹射程增加10.7%左右。同理,合理调节两级脉冲时间间隔,对空空导弹射程增加也会具有一定的效果。在飞行任务中,导弹气动参数和推进系统已经确定,最优制导是实现增程为数不多的有效途径之一,因此面向脉冲增程的最优制导成为了空空导弹领域的重要研究课题之一。
面向脉冲增程的最优制导除需要生成过载指令外,还需要决策二级脉冲发动机的点火时间。文献[4-5]基于奇异摄动法提出了一种最优制导方法,在决策脉冲发动机点火时间方面,文献[4]通过考虑Hamilton函数的一阶变分的相关性质对时间进行优化,而文献[5]通过离线生成查找表实现。但是,这种方法无法保证射程的最优性。文献[6-8]通过最优控制方法对双脉冲空空导弹最优弹道进行了研究,文献[9-11]通过非线性规划(non-linear programming,NLP)、粒子群优化等数学优化方法对双脉冲空空导弹进行了弹道优化。此类优化方法存在收敛性较差、求解较慢、无法保证求解精度等问题。文献[12]基于序列凸优化提出了一种双脉冲空空导弹弹道优化方法,并通过改进信赖域算法提高了凸优化的收敛性。该方法在桌面计算机(CPU为Intel(R)i7-9700 3.00 GHz)上求解时间约为0.5 s,在中制导段具有工程应用的潜力。但是,该方法如果在主频较低的弹载计算机上运行,制导指令更新频率会相应降低,可能无法实时更新制导指令。此外,基于序列凸优化的方法需要提供初值迭代求解,因此该方法仍然存在收敛性问题。
考虑到脉冲增程发动机在较短时间内大幅度提高导弹的飞行速度,可以将脉冲增程发动机工作简化为速度变量的阶跃[13],因此可通过在线求解非线性脉冲最优控制问题来解决空空导弹的脉冲增程问题。
脉冲最优控制问题是一种特殊的最优控制问题,主要特征在于具有内点约束。近年来,国内外学者对最优控制问题[14-21]以及脉冲最优控制问题[22-25]进行了大量的研究。一般来讲,传统的最优控制求解方法主要分为间接法[22]和直接法[16]。间接法借助变分法或者庞特里亚金极大值原理,将最优控制问题转化为两点边值问题。对于存在内点约束的脉冲最优控制问题,则转换为多点边值问题(multi-point boundary value problem,MPBVP)[22]。求解MPBVP典型的算法主要包括间接打靶法和间接配点法[23]。间接法的优点是具有完备的理论基础,一旦提供合适的协态变量初值,收敛速度较快,误差较小。但是,协态变量的初值一般没有具体的物理意义,难以合理猜测,如果猜测的初值不合理,会导致间接法不收敛。文献[24]针对月-地应急返回脉冲最优控制问题,通过引入解析同伦法解决了协态变量初值难以合理猜测的问题,形成了一套较为系统的脉冲轨迹优化方法。该方法在桌面计算机(CPU为Intel(R)Pentinum(R)4 CPU 2.80 GHz)上将优化时间缩短到数秒至数十秒量级,但仍难以满足实际对抗环境条件下在弹载计算机上毫秒量级生成最优制导指令的需求。
直接法通过对控制变量和/或状态变量进行离散,将脉冲最优控制问题转化为NLP问题,然后采用各种非线性规划算法进行求解,比如序列二次规划算法和内点法。直接法不需要推导最优性条件,且对初值的敏感性较低,容易收敛,近年来得到广泛研究和应用。文献[25]通过将控制变量转化为逐段状态反馈形式,并引入时间缩放变换将脉冲最优控制问题转换为最优参数选择问题,最终转化为NLP问题求解。但是,直接法由于存在求解时间慢、精度偏低等缺陷,对于规模复杂的问题难以实现在线优化。
综上所述,传统的最优控制方法存在求解时间长以及难收敛等问题,尚不能满足工程应用的需求。近年来,随着人工智能技术的发展,智能方法逐渐被应用于最优控制领域,主要包括:监督学习方法[26-27]、强化学习方法[28]以及现代启发式算法[29]等。监督学习方法通过建立状态变量到控制变量映射的数据集,离线训练神经网络,然后通过神经网络在线生成优化指令。该方法需要大量具有单一、最优特征的数据集样本[26-27]。强化学习方法通过智能体与环境的交互实现。该方法适用于复杂的环境,但较难收敛,且容易损失最优性[30]。常见的现代启发式算法包括遗传算法、模拟退火算法、蚁群优化算法、粒子群优化算法等。此类方法虽然无需依赖梯度信息,具有全局寻优性,但存在求解效率和精度较低等缺点[31]。
综上所述,传统优化方法、强化学习方法、现代启发式算法等由于存在难以收敛,精度较低等局限,尚不能满足实际对抗环境对实时性、收敛性和高精度的要求。根据通用近似定理[32],具有单一、最优特征的数据集能够从理论上确保前馈神经网络的收敛性和准确性。王坤等[26-27]利用文献[33-35]所建立的哈密尔顿轨迹参数化方法,建立了参数化微分方程组,通过数值积分生成状态变量到控制变量映射关系的数据集,以保证前馈神经网络的收敛性,最终通过神经网络实现最优制导指令的在线生成。然而,文献[26-27]考虑的是连续系统,未考虑存在内点约束的脉冲最优控制问题。目前,关于空空导弹脉冲最优控制问题在线求解的相关研究还较为鲜见。
本文面向脉冲增程型空空导弹对在线决策脉冲发动机点火时间及在线生成最优过载指令等需求,首先,根据空空导弹的动力学模型建立了脉冲最优控制问题的数学模型。然后,通过对增广目标函数进行全微分,建立了空空导弹脉冲最优控制问题的最优性条件。基于文献[33-35]的哈密尔顿轨迹参数化方法,将空空导弹脉冲最优控制问题的最优性条件转化为一组参数化微分方程,使得通过对参数化微分方程进行数值积分,即可产生状态到最优过载指令映射数据集和当前状态到脉冲发动机点火时间映射数据集。最后,分别利用状态到脉冲发动机点火时间映射数据集和状态到过载指令映射数据集训练前馈神经网络,使得前馈神经网络可以在线决策脉冲发动机点火时间并在线生成过载指令。
1 面向脉冲增程的最优制导问题描述
1.1 动力学模型
忽略地球曲率和自转影响的条件下,空空导弹在纵向平面内的运动方程可描述为

(1)
式中:V为导弹的速度,γ为导弹的航迹倾角,h为导弹的飞行高度,x为导弹的横坐标,g为地球重力加速度,a为导弹的法向加速度,m为导弹质量,D为导弹飞行中所受到的阻力,考虑零升阻力和升致阻力,其表达式为
(2)
其中:
式中:ρ为大气密度,s为导弹参考面积,CD0为零升阻力系数,km为升致阻力因子。
1.2 脉冲最优控制问题
假设导弹沿x轴的正半轴飞行,为使导弹射程最大化,选取如下目标函数,即最小化公式:
(3)
导弹被动段中任何时刻飞行状态可作为初始条件,因此本文认为初始速度、弹道倾角、高度以及射程已知:
(4)
式中:V0为初始速度,γ0为初始航迹倾角,h0为初始飞行高度,x0为初始横坐标。
导弹终端速度和高度固定,则终端条件为
(5)
式中:Vf为终端速度,hf为终端飞行高度。
增程发动机采用脉冲固体发动机提供推力,在发动机点火瞬间,导弹速度在短时间内快速增加,类似于轨道转移将发动机点火简化为速度阶跃[13],将其简化为速度不连续的情况。假设在t1时刻点火,则内点约束条件为

(6)
其中:
式中:ΔV为增程发动机点火带来的速度增量;为右端点,为左端点。
综上所述,面向脉冲增程的空空导弹最优制导问题可描述为:确定最优法向加速度a(t),脉冲时间t1和终端时间tf,使得目标函数(3)最小化,并且满足动力学方程组(1),初始条件(4),终端条件(5)和内点条件(6)。该问题记为P1。
为不失一般性,本文对P1所属的一般化的脉冲最优控制问题展开研究。脉冲最优控制问题表述为:选择u(t)最小化公式[18]:
(7)
其中:
式中:u为控制变量,x为状态变量,φ为Mayer项,L为Lagrange项,(i)为不同阶段,t为当前时间。并满足约束:
(8)
(9)
其中:
式中:f为状态方程,ψ为内点条件和端点条件,j为不同约束,t为当前时间,t∈[t0,tf]。
2 脉冲最优控制问题的最优性条件
为使脉冲最优控制问题满足约束(8)、(9),引入协态变量λ(t)和Lagrange乘子ν,将目标函数增广为
(10)
为方便表述,定义Hamilton函数和标量函数分别为:
(11)
(12)
对增广目标函数(10)进行全微分可得
(13)
根据变分法基本原理,式(13)应恒等于0,因此可获得协态方程和横截条件分别为:
(14)
(15)
(16)
同时,可得控制变量u(t)满足:
(17)
若ti不固定,则通过横截条件,有
(18)
式中,H(0)=H(N+1)=0。该式可用于确定ti(i=0,···,N)。
对于问题P1,Hamilton函数(11)为
(19)
协态方程(14)可写为

(20)
最优性条件(17)可写为
(21)
横截条件(15)、(16)可分别写为:
(22)
(23)
(24)
由于tf不固定,tf时刻横截条件(18)为
(25)
即
(26)
由于t1不固定,t1时刻横截条件(18)为
(27)
即
(28)
至此,本文构建了一个MPBVP,该问题包括:状态方程(1)、协态方程(20)、控制变量最优性条件(21)。边值条件包括:初始条件(4)、终端条件(5)、内点条件(6)、横截条件(22)~(28)。该问题记为P2,P2的解满足P1的最优性必要条件。
3 参数化系统
构建如下参数化微分方程组系统:

(29)
系统(29)初始状态需满足:

(30)
参数化微分方程组(29)和初始条件(30)构成了由初始参数γ(0)、λV(0)以及终端时间tf表示的参数化微分方程组系统,记为P3。系统阶跃条件为
(31)
系统状态突变形式为
(32)
根据式(1)、式(20)和式(24)可知,λx恒等于-1,状态变量和协态变量的导数与射程x无关,则P1在t时刻的最优制导指令与当前时刻射程x无关,仅与当前时刻速度V、弹道倾角γ、高度h有关,选择不同的x0仅造成最优弹道平移。此外,系统P3的微分方程、初始条件与P2在不考虑变量x时微分方程、终端条件一致,且阶跃条件(31)、状态突变形式(32)与P2的内点横截条件和内点约束一致。易知对于任何初始参数,沿微分方程组P3进行积分,当系统状态满足条件(31)时,状态发生式(32)所表示的突变,所生成的轨迹,满足P1的最优性必要条件。
4 最优制导指令在线生成
本文建立了参数化微分方程组P3,对P3进行积分获得的轨迹满足脉冲最优控制问题P1的最优性必要条件。对参数化微分方程组(29)进行积分的过程中,可能存在多个满足阶跃条件(31)的时刻,且无论系统在任何满足阶跃条件(31)的时刻发生状态突变,生成的轨迹均满足P1的最优性必要条件,因此,对参数化系统进行积分时,满足阶跃条件(31)的时刻需要考虑系统发生状态突变和系统不发生状态突变两种情况。如图1所示,选择不同的初始参数对参数化系统P3进行积分,可以在较短时间内获得大量的最优轨迹簇。对最优轨迹簇进行离散化,即可建立一定状态空间内状态到二级脉冲发动机点火时间映射D2t以及状态到过载指令映射的数据集D1、D2u。

图1生成数据集方法示意
Fig.1Schematic diagram of generating dataset
在获得状态到最优制导指令映射的数据集D2t、D2u和D1后,可以通过训练前馈神经网络来近似数据集中的状态到最优制导指令的映射关系。如图2所示,本文在线生成制导指令方法为:分别通过数据集D2t、D2u和D1训练状态到脉冲发动机点火时间映射、脉冲发动机点火前状态到过载指令映射以及脉冲发动机点火后状态到过载指令映射的前馈神经网络N2t、N2u和N1。在线使用训练后的前馈神经网络N2t、N2u和N1分别决策发动机点火时间、生成脉冲发动机点火前后的过载指令。

图2在线生成制导指令方法示意
Fig.2Schematic diagram for real-time generation of guidance commands
本文选取了具有3个隐藏层(每层选取20个神经元)的前馈神经网络,使用Levenberg-Marquardt算法训练神经网络,采用均方误差(mean squared error,MSE)衡量训练效果,训练比率、验证比率和测试比率分别设置为0.70、0.15和0.15,学习率为0.01,最大训练次数1 500次。完成训练后,神经网络N2t、N2u和N1的MSE(包括训练集、验证集和测试集)分别均降至5.82×10-4、5.93×10-7和9.92×10-9,如图3~5所示分别给出神经网络N2t、N2u和N1的loss曲线。

图3N2t神经网络loss曲线示意
Fig.3Loss curve of neural network N2t

图4N2u神经网络loss曲线示意
Fig.4Loss curve of neural network N2u

图5N1神经网络loss曲线示意
Fig.5Loss curve of neural network N1
5 仿真结果
本文的仿真研究采用文献[12]中的模型数据:导弹参考面积S=0.024 9 m2,升致阻力因子km=0.2,零升阻力系数CD0=0.3,质量m=100 kg,重力加速度g=9.8 m/s2,速度增量ΔV=300 m/s,空气密度ρ采用指数模型,即
(33)
式中:ρ0=1.2 kg/m3为基准大气密度,H=7 500 m为基准高度。
使用直接法(离散方法选用Radau伪谱法,记为NLP方法)和间接打靶法两种传统优化方法与本文方法进行对比,NLP方法设置轨迹分为8个区间,每个区间的节点数目为5,NLP求解器选择SNOPT[36],选用拉格朗日插值将NLP方法优化的离散的控制变量转化为连续的控制变量。状态变量的初始条件和终端条件见表1。
表1状态变量的边界条件
Tab.1 Boundary conditions of state variables

图6~10给出本文方法与传统优化方法结果的对比,图中粗实线为本文方法的结果,细实线为NLP方法的优化结果,粗虚线为间接打靶法的优化结果。
图6给出最优弹道,由图6可知,本文方法计算得到的射程明显优于传统优化方法的结果。本文方法的射程为65.579 km,相比于NLP方法和间接打靶法优化的射程56.377 km,具有明显的优势,传统优化方法的结果陷入了局部最优。

图6最优弹道示意
Fig.6Optimal trajectory diagram

图7最优速度变化曲线
Fig.7Optimal velocity variation curve

图8最优弹道倾角变化曲线
Fig.8Optimal flight path angle variation curve

图9最优高度变化曲线
Fig.9Optimal altitude variation curve

图10最优法向加速度变化曲线
Fig.10Optimal normal acceleration variation curve
图10给出最优控制变量随时间变化曲线。在内点约束处,控制变量存在不连续的情况,这是因为根据式(21),控制变量与速度呈线性关系。即使这种情况不便于控制系统跟踪过载指令,轨迹发生了偏移,由于本文方法无需基于优化方法,仅需进行简单的神经网络推理计算,本文方法可以通过神经网络在线更新状态偏移后的制导指令,符合制导系统设计的要求。
表2给出对于不同的初始状态情况下本文方法运行10 000次的最大运行时间与传统优化方法运行10次的平均运行时间的对比。本文方法仿真平台为基于ARM Cortex-A7内核的工业级CPU(主频为528 MHz),传统优化方法仿真平台为Intel(R)Xeon(R)Gold 5220 CPU(主频为2.20 GHz)。可见,本文方法在工程环境下制导指令更新的单次运行时间不到1 ms,具备在线更新制导指令的能力。相比而言,传统优化方法由于单次运行时间较长,不具备在线更新最优制导指令能力,且间接打靶法对初值的选取非常敏感,需要通过NLP方法提供协态变量,更加难以用于工程环境最优制导。
表2不同方法的运行时间对比
Tab.2 Comparison of run time of different methods

表3给出对于不同的初始状态本文方法与传统优化方法优化结果的对比。可见,本文方法明显优于或相当于传统优化方法获得的目标函数,且本文方法和传统优化方法计算得到的终端误差基本相当。此外,本文方法无需进行复杂的计算,仅需进行简单的前馈神经网络推理计算,更容易移植到弹载计算机。
表3不同方法的优化结果对比
Tab.3 Comparison of the optimization results that are obtained from different methods

为进一步测试本文方法的性能,在随机选取1 000 组初始状态的情况下进行了蒙特卡洛仿真实验(初始状态设置方法见表4)。蒙特卡洛仿真所生成的弹道见图11。图12给出蒙特卡洛仿真实验的误差直方图,从图12中可知,本文方法终端速度误差不超过0.025 m/s,终端高度误差不超过1.5 m。
表4蒙特卡洛仿真初始状态
Tab.4 Initial state in the Monte Carlo test


图11蒙特卡洛仿真实验弹道示意
Fig.11Monte Carlo simulation experiment trajectory diagram

图12蒙特卡洛仿真实验的误差直方图
Fig.12Error histogram of Monte Carlo simulation experiment
6 结论
1)面向脉冲增程型空空导弹,提出了一种最优制导指令在线生成方法。
2)所提出的方法根据最优性条件建立了一组参数化微分方程,使得通过数值积分即获得飞行状态到最优制导指令之间映射关系的数据集,最终通过训练前馈神经网络实现在线生成最优制导指令。
3)仿真结果表明,所提出的方法具备在线生成最优制导指令的能力,在空空导弹的制导领域具有工程应用的潜力,为脉冲最优控制问题在线求解提供了一种新思路。在未来研究中将进一步考虑复杂过程约束和气动参数扰动等情况。