在线自适应动态规划计算智能博弈导引律
2023-01-04廖志忠
王 琪 廖志忠
中国空空导弹研究院,洛阳 471009
0 引言
现代战争中,空空导弹和地空导弹的主要任务是成功拦截空中目标,同时优化能量使用效率以增加射程。为了提高制导精度,多种导弹制导技术蓬勃发展起来,包括比例导引律(Proportional Navigation Guidance, PNG)、增强比例导引律(Augmented Proportional Navigation Guidance, APNG)、最优导引律(Optimal Guidance Law, OGL)和滑模导引律(Sliding-Mode Guidance, SMG)[1-3]。PNG导引律最易于工程实现,在实际的导弹拦截作战中被广泛使用。然而,在存在制导参数不确定性和目标机动等外部干扰的情况下,PNG的效果并不理想。APNG和OGL导引律是在假设目标加速度已知的情况下推导出来的,但是准确的预测或估计目标的机动策略和加速度并不容易实现。滑模控制理论提供了一种鲁棒控制方法,可以镇定存在未建模误差和匹配不确定性的系统,但大多数滑模控制输入是不连续的,采用滑模制导律时会出现抖振现象[4]。
微分博弈理论提供了一种解决两个独立个体之间博弈对抗的理论框架,对于导弹和目标的追-逃博弈问题,微分博弈导引律既能体现导弹拦截方的策略,又能体现目标逃逸方的策略。对于非线性的导弹-目标拦截动力学模型,通过求解相应的Hamilton-Jacobi-Isaacs (HJI)方程可以获得博弈双方的最优控制策略。然而,对于非线性的微分博弈系统,用解析方法求解其纳什均衡解通常是非常困难或不可实现的,这限制了微分博弈导引方法的应用。为了获得HJI方程的解析解,刘利军等通过构建改进的视线极坐标系,简化了导弹目标相对运动方程[5],得到了一个解析解。另一方面,在工程应用中,通常不可能获得被控对象的精确模型,只能通过有限的观测值来获得一个不精确的系统模型,将这个模型应用于实际控制系统的设计时,由近似模型导出的控制输入将不会达到最佳性能。
近年来,在计算智能领域和机器学习领域,自适应动态规划方法(Adaptive Dynamic Programming, ADP)得到了广泛的研究,该方法可以获得最优控制问题或博弈问题的近似最优解[6-8]。自适应动态规划基于数据驱动,可通过离线或在线的迭代计算方法求解近似最优控制[9-10]。在计算科学领域自适应动态规划被称为强化学习[11-12],自适应动态规划算法包括值迭代(Value Iteration, VI)和策略迭代(Policy Iteration, PI)算法。ADP算法不试图直接求解HJB方程,而是在可容许的控制策略空间中进行定向或随机探索。事实上,PI算法需要2步迭代:1)策略评估,计算和评估与可容许控制策略相关联的值函数;2)策略改进,通过最小化值函数得到一个新的控制策略。重复上述2个步骤,直到策略改进步骤不改变当前策略,表明控制策略收敛到最优控制。必须指出,PI算法运行的前提是初始控制策略是容许控制,只有当算法初始化时的控制策略满足可容许条件时,才能对值函数进行评估。
基于ADP技术的计算智能导引律主要采用机器学习技术,通过离线训练[13]或在线优化实现,然后通过学习训练数据中的隐性特征信息生成制导指令[14-16]。与传统制导律的设计理念不同,计算智能导引律生成制导控制指令的过程不需要大量的离线设计、增益调整或任务前规划,而是完全依赖迭代算法来处理动态变化的场景和复杂任务,从而获得近似的最优解。基于强化学习算法,谭浪等研究了基于深度强化学习的追逃博弈制导律、可实现末端攻击角度约束的深度强化元学习制导律等[17-20],但基于强化学习的方法都需要进行离线训练。孙磊等针对反高超声速武器拦截制导问题设计了一种基于ADP技术的微分对策导引律,采用VI算法在线实时求解最优值函数,但文中给出的方法需要已知完整的系统动态模型[21]。Wang等研究了系统内动态未知、仅已知系统输入动态下的基于在线ADP技术的最优导引律[16]。
本文提出了一种基于自适应动态规划的微分博弈导引律设计方法,该方法利用神经网络实现Actor/Critic结构,可在线求解导弹-目标拦截非线性微分博弈系统的近似最优控制问题,并且不需要非线性系统的内动态模型知识。本文提出的方法基于PI算法,给定的初始容许控制策略为比例导引控制律,然后评估给定初始容许控制的代价函数,并通过计算值函数的鞍点以获得新的博弈双方的控制策略。在状态空间的可行域内,对于导弹来说,新的控制策略比之前的策略具有更小的相关值函数;对于目标来说,新的控制策略比之前的策略具有更大的相关值函数。重复进行策略评估和策略改进这2个步骤,直到策略改进步骤不再更新,表明达到了微分博弈问题的近似最优解。
1 微分博弈问题和PI算法
1.1 非线性系统微分博弈
考虑一类连续时间仿射非线性系统
(1)
式中,x∈n表示系统状态向量,u∈m和v∈k表示博弈系统两个参与者的控制输入向量,f(x)∈n表示系统内动态,g(x)∈n×m和k(x)∈n×k表示输入动态和扰动系数矩阵。假设f(x),g(x)和k(x)在紧集Ω∈n上满足局部Lipschitz连续,并且有f(0)=0,即x=0是系统平衡点。
定义如下无限时域值函数
(2)
式中,Q(x)≥0是正半定函数,R1和R2为相应维数的对称正定矩阵。微分博弈的主要目标是寻找控制输入u最小化值函数,寻找控制输入v最大化值函数。
定义系统汉密尔顿函数为:
(3)
根据Hamilton-Jacobi-Isaacs理论,最优值函数可通过求解下列Isaacs方程得到:
(4)
假设微分博弈鞍点存在且唯一,则给定微分博弈问题的最优控制输入对为:
(5)
将式(5)的最优控制输入代入Isaacs方程得到HJI方程:
(6)
这是最优值函数需要满足的一个充分条件[22]。如果系统是线性的,并且考虑了二次值函数,博弈代数Riccati方程(Game Algebraic Riccati Equation, GARE)等价于这个HJI方程。为了求出系统的最优控制输入,只需求解HJI方程(6)的最优值函数,然后代入式(5)得到最优控制输入函数。然而,由于HJI方程是一个非线性偏微分方程,通常很难找到解析解。此外,要求解方程(6),还需要获得动力学系统的完整知识。为此,研究了一系列数值算法,通过迭代法获得HJI方程的近似最优解。
1.2 策略迭代算法
文献[23-25]研究了微分博弈问题的策略迭代求解方法,并给出了收敛性的证明。假设u,v∈L2[0,∞),PI算法包含如下2个步骤:
1) 策略评估
给定控制策略和扰动u(i),v(i)∈L2[0,∞),求解满足如下李雅普诺夫方程的值函数:
(7)
值函数满足V(0)=0。
2)策略改进
求Hamiltonian函数的鞍点以更新控制策略:
(8)
为了实现PI算法中方程(7)和(8)给出的迭代方案,只需要已知系统状态方程中的输入-输出动态模型,即公式(8)中策略改进所需的g(x)和k(x)函数。在线数据采样时系统内状态函数f(x)的信息嵌入在t和t+T时刻的状态信息中,因此PI算法不需要内状态动力学知识f(x)。
2 在线求解微分博弈问题
获得非线性连续时间系统李雅普诺夫方程解的关键是使用神经网络函数进行逼近,可以通过离线或在线训练获得方程的近似解。上述由策略评估和策略改进两步迭代构成的PI算法,可以组成Actor/Critic结构,Critic模块采用神经网络拟合值函数,Actor模型采用神经网络拟合控制输入。PI算法交替调整这两个神经网络来依次求解方程(7)和(8)。对Critic神经网络进行调整,以评估当前控制策略的性能(在此期间控制策略保持不变),从而近似求解方程(7)。
采用神经网络拟合值函数及其导数,值函数拟合公式为:
(9)
其中神经网络激活函数向量为φ1(x)∈N,W1是权重向量,ε(x)是神经网络逼近误差。选择激活函数构成一个完备的基集,则神经网络可以一致逼近值函数V(x)和其导数。根据Weierstrass高阶逼近理论[26],V(x)足够光滑时,当N→∞时,ε(x)→0。
(10)
采用神经网络拟合值函数后,式(3)汉密尔顿函数变为:
(11)
通过引入神经网络拟合值函数,式(7)变为:
(12)
式中,Δ(i)为近似误差。
(13)
对于连续时间系统,该误差可被视为连续时间系统的时间差分(Temporal Difference, TD)残差,最小化该误差得到时间差分学习方法[27]。采用最小二乘法对该误差最小化,可以计算出神经网络参数,即最小化如式(14)指标:
(14)
式(14)的最小化等价于计算式(15):
(15)
采用内积符号表示Lebesgue积分后,可得到式(16):
(16)
假设式(17)所表述的矩阵可逆,则可以得到神经网络权值更新计算公式如式(18)所示。
Θ=〈[φ1(x(t))-φ1(x(t+T))],
[φ1(x(t))-φ1(x(t+T))]T〉Ω
(17)
(18)
文献[8]给出了T>0和Θ可逆的存在性证明,神经网络拟合值函数的权值可以按照上式进行更新计算。完成策略评估后,按照式(19)计算策略改进值
(19)
在这种实现方法中,采用Critic神经网络激活函数的梯度以获得式(19)中Actor神经网络的激活函数,并且Actor和Critic神经网络的权重使用相同的数值。
基于Critic/Actor结构的控制系统设计方法允许自适应的在线学习获得最优控制函数,而无需了解动态系统的内部动力学。这是一种连续/离散混合自适应控制结构,具有连续时间响应特性。当前的控制策略通过离散时间数据采样进行评估。从控制理论的角度来看,ADP算法可以在线实现。因为在时刻ti+1观察到状态x(ti+1)、并实时更新控制策略后,该策略可以用来实现系统在未来时间间隔(ti+1,ti+1+T]内的稳定运行。
该方法实施过程中涉及的计算是在离散时间点对监督级别的系统进行测量和采样,并进行相应的计算和执行。这种先进的混合智能控制结构实现了PI算法。对于在给定控制策略下运行的连续时间控制系统,采用Critic神经网络对性能值函数进行参数化。先进的监控结构基于离散时间点的采样数据对系统控制策略进行决策,进而改进Actor和Critic神经网络的参数。采用Actor神经网络拟合近似最优控制策略函数,可以实现连续时间控制。最终的控制方案是将连续时间控制器纳入连续时间控制和离散时间评估的自适应评价结构中。
在实际系统的实现过程中,当沿着状态轨线收集足够多的采样数据点后,公式(18)中给出的神经网络权值可以实时求解。当连续两步评估的系统指标之间的偏差低于指定的阈值时,可以停止迭代计算。
3 导弹-目标拦截系统微分博弈仿真
本节首先给出导弹-目标拦截场景的非线性连续时间动态系统模型,然后将导弹-目标拦截问题考虑为一个非线性系统的微分博弈控制问题。
在导弹-目标拦截阶段,导弹、目标运动关系如图1所示。图中VM为导弹速度、α为导弹飞行航迹角、μM为导弹加速度,VT为目标速度、β为目标飞行航迹角、νT为目标加速度。θ为弹目视线角,r为弹目距离。
图1 导弹目标交战几何
导弹与目标拦截场景的运动学模型为:
(20)
制导的目的是使零控脱靶量(Zero Effort Miss Distance,ZEMD)达到最小,零控脱靶量计算公式为[28]:
(21)
(22)
注意到在导弹的实际制导过程飞行中,导引头存在一个最小作用距离r0。当导弹目标距离小于该距离(即r≤r0)时,制导过程结束。因此,导弹与目标之间的距离不会为0,系统动态方程满足局部Lipschitz连续。此外,从动力学方程(22)可知,|β-θ|=π/2和|α-θ|=π/2是一种不稳定的平衡。因此,制导律的应用可行域在以下条件的约束范围内:
Π={x:|α-θ|=π/2,|β-θ|=π/2,
r≠0,Vr<0}
(23)
本文的仿真中,假设导弹和目标速度为常数,VM=600m/s,VT=240m/s。导弹和目标的初始飞行航迹角为α0=0°,β0=30°。导弹和目标初始位置为(xM,yM)=(0,0)m和(xT,yT)=(5000,0)m。神经网络包含8个神经元,激活函数为:
(24)
基于本文提出的制导方案,导弹与目标交战过程的仿真结果如图2~6所示。从图2中的导弹目标飞行轨迹可以看出,所提出的制导律设计方法能够成功拦截目标。图3显示了视线角速度曲线,可以看出,在末制导期间,视线角速度被调整到0附近。此外,图4显示了沿弹目视线的距离变化率,Vr保持为负值。图3~4表明系统状态满足有效拦截条件的要求,导弹能够成功拦截目标。图5显示了制导过程中导弹和目标的横向加速度。图6显示了由神经网络拟合值函数过程中Hamiltonian函数的变化情况,Hamiltonian函数达到0,表明导弹和目标控制输入达到了微分博弈问题的平衡点。
图2 导弹目标交战轨迹
图3 视线角速度
图4 弹目接近速度
图5 导弹目标加速度
图6 Hamiltonian函数
4 结论
将导弹-目标拦截问题考虑成非线性系统微分博弈问题,针对非线性系统微分博弈提出了一种基于自适应动态规划的计算智能制导律实现方法,采用神经网络拟合值函数,并通过PI迭代算法在线迭代求解微分博弈问题。该方法能快速、方便地学习导弹与目标双方的最优解。同时该方法通过在线的数据采样实现,不需要使用非线性系统的内部动力学显性知识。最后,文中给出的仿真实例说明了该方法的有效性。