留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

博弈学习系统在战斗机引导中的应用

陶伟

陶伟. 博弈学习系统在战斗机引导中的应用[J]. 中国舰船研究, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
引用本文: 陶伟. 博弈学习系统在战斗机引导中的应用[J]. 中国舰船研究, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
TAO W. Application of game learning system for fighter guidance[J]. Chinese Journal of Ship Research, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
Citation: TAO W. Application of game learning system for fighter guidance[J]. Chinese Journal of Ship Research, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937

博弈学习系统在战斗机引导中的应用

doi: 10.19693/j.issn.1673-3185.01937
详细信息
    作者简介:

    陶伟,男,1978年生,博士,高级工程师。研究方向:舰船电子信息系统设计。E-mail:tw_missu@163.com

    通讯作者:

    陶伟

  • 中图分类号: U662.9

Application of game learning system for fighter guidance

图(7)
计量
  • 文章访问数:  10
  • HTML全文浏览量:  5
  • PDF下载量:  1
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-04-28
  • 修回日期:  2020-06-17
  • 网络出版日期:  2020-12-10

博弈学习系统在战斗机引导中的应用

doi: 10.19693/j.issn.1673-3185.01937
    作者简介:

    陶伟,男,1978年生,博士,高级工程师。研究方向:舰船电子信息系统设计。E-mail:tw_missu@163.com

    通讯作者: 陶伟
  • 中图分类号: U662.9

摘要:    目的  为通过深度强化学习探索预警机对战斗机的引导策略,设计预警机(EWA)引导战斗机任务的博弈学习系统。   方法  该系统包括深度学习智能体、与智能体交互的战场仿真系统、博弈管理系统和分布式训练系统。针对强化学习博弈需要与环境进行大量交互的问题,在自博弈训练平台上加入分布式训练系统以提高训练效率。在分布式系统中,提出分布式训练系统中Actor和Learner解耦、各训练Learner之间定期分享更新梯度,以及择优保存并剔除无效智能体等新机制。   结果  通过该博弈学习系统,实现了红、蓝深度强化学习智能体在预警机引导战斗机任务中的博弈,获得了具有更优异表现的对抗策略,提升了预警机引导作战的能力。   结论  所做研究可为提升预警机引导作战能力提供参考。

English Abstract

陶伟. 博弈学习系统在战斗机引导中的应用[J]. 中国舰船研究, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
引用本文: 陶伟. 博弈学习系统在战斗机引导中的应用[J]. 中国舰船研究, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
TAO W. Application of game learning system for fighter guidance[J]. Chinese Journal of Ship Research, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
Citation: TAO W. Application of game learning system for fighter guidance[J]. Chinese Journal of Ship Research, 2020, 15(s1): 170–176 doi: 10.19693/j.issn.1673-3185.01937
    • 在现代舰机协同作战体系中,预警机能够有效弥补舰载雷达及战斗机雷达等因各自原因导致的探测距离不足的缺点。通过预警机对战斗机的引导,能进一步扩大制空优势、信息优势和速度优势,在舰机协同作战中扮演着越来越重要的角色[1-3]。鉴于实机演习复杂度大、成本高、周期长的特点,基于仿真技术的战场仿真系统得到广泛应用,其可以逼真地模拟舰机协同作战环境,并形成虚拟的数字化战场进行想定环境下的实战演练和作战效能分析[4-5]

      强化学习是机器学习中的一种,其特点是可通过与环境交互的方式完成训练,而不需要已标注的样本[6]。所谓深度强化学习,是通过使用深度神经网络,利用Transition样本来拟合强化学习的值函数,从而获得更强大的表示能力,其能有效处理更复杂环境中的任务[7]。近年来,深度强化学习备受学术界和工业界的关注[8-11]。通过深度强化学习,围棋智能体AlphaGo、星际争霸游戏智能体AlphaStar和麻将智能体Suphx等分别在各自的领域战胜了职业玩家[12]。强化学习是采用试错的方式进行策略学习,需要与环境进行大量的交互,因而导致其训练时间较长。战场环境复杂多变,且在每一次对抗任务中智能体都需要根据战场环境的变化实时输出决策。此外,智能体在对抗任务中还会产生大量并不具有实际效果的探索性策略。因此,战场环境中的强化学习训练需要不断地重复模拟以学习较优的对抗策略。在自博弈训练中,由于双方交替提升决策能力,会导致后期探索到有效对抗策略的难度进一步增加,从而造成交互次数多、训练时间长等问题。

      本文拟针对预警机引导舰载机任务,设计预警机引导舰载机任务的博弈学习系统,旨在通过深度强化学习探索预警机对舰载机的引导策略,提升预警机的引导作战能力。并在以往战场环境自博弈系统的基础上,通过增加分布式训练系统来提高博弈训练效率,从而更快地学到较优的对抗策略。

    • 强化学习是在马尔科夫决策过程的理论基础上建立起来的一种机器学习方法。马尔科夫决策过程可以使用一个五元组$(S,A,{P},R,\gamma )$来表示,其中$S$为状态空间,$A$为动作空间,${P}$为状态转移矩阵,$R$为回报函数,$\gamma \in [0,1)$为用来调节短期回报和长期回报的调节因子[6]

      强化学习的目标是通过与环境交互的方式获取序列决策的最优策略。具体来说,即智能体持续在当前时刻状态${s_t}$执行动作${a_t}$,然后转移到下一时刻状态${s_{t + {\rm{1}}}}$,并在转移的过程中收到环境反馈的立即回报${r_t}$,直至到达终止状态${s_T}$(满足事先定义的成功或失败条件的状态),如图1所示。

      图  1  强化学习与环境交互过程

      Figure 1.  Interactive process between reinforcement learning and environment

      深度强化学习智能体能接收所处环境传递过来的状态信息,然后给出当前状态下应该执行的动作策略。使用深度神经网络构建深度强化学习智能体,并将态势、情报等信息作为神经网络的输入,将动作空间对应动作的值函数作为输出,而最后的动作策略便是神经网络输出中最大值函数对应的动作。

      在预警机引导战斗机的任务中,输入可能包含2个部分:一是空间结构化信息部分,如图像形式的综合态势图等;二是非空间结构化信息部分,如通信系统工作状态等。神经网络结构使用三层卷积神经网络层来处理空间结构化信息;然后,将卷积神经网络处理后输出的隐藏状态和非空间结构化信息一起输入长短时记忆循环神经网络层(LSTM),以保证更好地处理序列样本;最后,使用全连接层给出输出,输出的个数对应于动作空间的大小,如图2所示。当输入不包含空间结构化信息时,则不必添加卷积神经网络层;当任务较为复杂时,可以通过添加全连接层来增加神经网络的表示能力。

      图  2  深度强化学习智能体示意图

      Figure 2.  Schematic diagram of deep reinforcement learning agent

    • 当前预警机引导战斗机任务的战场仿真系统是通过显控设备将态势、情报等信息显示给作战人员,然后作战人员在综合分析之后给出预警机决策。但智能体显然无法像作战人员一样从显控设备读取信息并执行相关操作,因此需要在传统战场仿真环境的基础上增设评价模块、作战单位动作库,并通过感知接口、决策接口、奖励接口传输给智能体,完成仿真环境与智能体之间的信息交互。

      预警机引导战斗机任务的仿真环境中已包含综合处理雷达、电子侦查设备探测到的信息,通过增加的感知接口将该类信息整合后发送给智能体,并作为智能体中神经网络结构的输入,如图3所示。在评价模块中,由作战人员根据任务的关键节点设置奖励函数:如预警机引导战斗机在不受损伤的情况下成功完成截击任务,给予奖励回报值+100;同时为保障引导效率,被引导的战斗机每飞行1 n mile,给与惩罚回报值−0.1。每时刻的回报值由奖励接口发送给智能体。在作战单位动作库中,将所控制作战单位的所有动作整合到作战单位动作库中,并对每个动作设置一个唯一的索引号。当深度强化学习智能体根据当前状态输出一个动作决策后,由决策接口发送至战场仿真系统,并由作战单位动作库根据接收的索引号找到作战单位动作库中的相应动作。

      图  3  战场仿真系统结构图

      Figure 3.  Structure of battleground simulation system

    • 预警机智能体在训练过程中需要根据敌方单位的行动采取相应的措施,因此,在仿真环境中需要同时模拟敌方单位的行动。但采用作战人员直接控制敌方单位的方式显然难以满足深度强化学习的训练效率要求,而采用预先设置的敌方单位控制策略虽然可以保证连续训练,但容易导致训练所得策略对预先设置策略的过拟合。因此,设计了博弈系统,通过红方和蓝方这2个智能体之间的博弈完成该训练过程。其中,红方智能体代表我方单位,蓝方智能体代表敌方单位。

    • 博弈系统主要由红方智能体版本保存库、蓝方智能体版本保存库、训练智能体选择模块、对手智能体匹配模块以及智能体分配模块5个部分组成。

      1) 红方智能体版本保存库。

      该库用于保存红方初级智能体以及在每次训练过程中能够战胜蓝方智能体的模型参数,以便于后续使用。其中,红方初级智能体可以是由基于预先设定的固定策略或作战人员直接控制的智能体,也可以是以收集的战场案例等为样本,经过监督式学习所得的智能体。

      2) 蓝方智能体版本保存库。

      该库和红方智能体版本保存库的作用一样,用于保存蓝方初级智能体以及在每次训练过程中能够战胜红方智能体的模型参数。

      3) 训练智能体选择模块。

      该模块的作用是在上述智能体版本库中选择一个智能体版本的模型参数,然后加载该模型参数构成训练智能体与环境交互。

      4) 对手智能体匹配模块。

      该模块的作用是确定训练智能体之后,在另一个智能体版本库中选择一个智能体版本的模型参数,然后加载该模型参数构成训练智能体的对手智能体。

      5) 智能体分配模块。

      在交替训练机制中,首先选择被训练的智能体,然后在另一方匹配对手智能体,即训练智能体在红、蓝双方智能体之间循环。我方作战单位和敌方作战单位分别由红方和蓝方智能体控制。因此,智能体分配模块将训练智能体和对手智能体正确地分配到红方和蓝方智能体,随后与战场仿真系统进行交互。

    • 传统自博弈系统因只保留最终的智能体版本,故容易出现对高级策略过拟合的问题,譬如,该最终智能体能够应对敌方智能体的高级策略,却遗忘了应对对方早期策略的方法。本文通过增加智能体版本保存库来保存智能体的历史版本,解决了对高级策略过拟合的问题。

      在博弈系统中,红、蓝双方智能体采用交替训练的方式,即每次训练中只更新被训练智能体的参数,另一个智能体的参数在训练前后保持不变。具体来说,当确定本次是针对红方智能体进行训练时,由训练智能体选择模块在红方智能体版本保存库中通过随机采样的方式选择一个智能体版本的模型参数;然后,由对手智能体匹配模块在蓝方智能体版本保存库中选择一个智能体版本,再由智能体分配模块将模型参数进行分配构成红方和蓝方智能体;最后,由红方智能体控制我方单位,蓝方智能体控制敌方单位,在仿真系统中进行博弈训练,并更新红方智能体的参数以提升红方智能体的策略表现。本次训练之后,将能够战胜对方的智能体版本保存到红方智能体版本保存库。接下来,针对蓝方智能体进行训练。使用同样的方式,利用选择的红方智能体控制我方单位来更新控制敌方单位的蓝方智能体参数,以提升蓝方智能体策略表现,并将优胜智能体版本保存至蓝方智能体版本保存库中,如图4所示。

      图  4  博弈管理系统结构图

      Figure 4.  Structure of game management system

      在开始阶段,红、蓝双方均分别针对对方的初级智能体进行训练,训练结束后,智能体版本库中均包含初级智能体版本、能战胜对方初级智能体的版本,随后,由训练智能体选择模块和对手智能体匹配模块选择的方式完成上述博弈训练。

    • 深度强化学习依赖于试错的方式进行训练,但由于战场环境较为复杂,因此需要与环境进行大量的交互。为加快训练速度,同时提升通过训练学得的策略的稳定性,设计了分布式训练系统,以期实现多主机、多场景下的异步训练。

    • 分布式训练系统同时利用多台主机进行训练,并在每台主机下开展多个仿真场景的异步训练。传统的强化学习通常是先收集样本,然后利用收集的样本更新参数,最后利用更新后的策略收集新的样本。但是在该模式下,智能体通常无法同时进行样本收集和参数更新。因此,本系统将强化学习智能体解耦成Learner和Actor这2个部分,其中Actor在其仿真环境中收集强化学习训练样本,Learner则根据所有Actor传递过来的样本持续完成训练。因此,分布式训练系统由Learner管理器、Actor管理器、传输接口3部分组成。

      1) Learner管理器。

      在用于训练的多台主机中,一台为控制主机,其余为工作主机。Learner管理器存在于每台主机中,负责对Learner部分的控制。其中,控制主机的Learner管理器负责接收博弈管理系统所选择的红方智能体与蓝方智能体,其余工作主机的Learner管理器则只是复制控制主机Learner管理器的2个智能体进行使用。但在训练过程中,每个Learner管理器中的训练智能体都将进行参数更新,最后由控制主机Learner管理器将综合训练后的优胜智能体版本传送至博弈管理系统予以保存。

      2) Actor管理器。

      Actor管理器同样存在于每台主机中,负责多训练场景的控制工作,包括利用多进程同时开启多个仿真环境,并将Learner管理器中的红、蓝方智能体复制多个以保证每个仿真环境均有红、蓝方智能体与仿真环境进行交互。

      3) 传输接口。

      传输接口主要负责工作机Learner管理器向控制主机Learner管理器传输智能体模型参数、Learner管理器之间的梯度传递以及Actor管理器向Learner管理器传递参数。

    • 分布式训练系统如图5所示。在开始阶段,控制主机Learner管理器接收M台工作主机及每个主机下N个场景,选择N−1个工作主机组成分布式训练系统,然后在博弈训练系统中接收红方智能体和蓝方智能体,并将这2个智能体的模型参数和场景数量N通过传输接口传递给其余工作主机的Learner管理器。每个主机上的Actor管理器根据Learner管理器的数量N利用多进程开启多个仿真环境,并将Learner管理器中的红、蓝方智能体复制N个分别作用于N个仿真环境。

      在训练阶段,当在每个场景下收集定量的Transition样本$ < {s_t},{a_t},{s_{t + 1}},{r_t} > $时,由Actor管理器将该批样本传送至同主机上的Learner管理器。之后,Learner管理器利用Actor管理器传递过来的Transition样本进行训练,并更新训练智能体的参数。在训练设定次数后,Learner管理器将新的模型参数传递给Actor管理器,并由Actor管理器将新的模型参数传递给每个仿真环境中的智能体。同时,为了打破不同主机Learner孤立学习的问题,本系统在经过设定数量的模型参数更新之后,每个Learner管理器之间进行了梯度的传递,即利用其他Learner管理器的梯度来更新自己Learner管理器之中的智能体参数。通过梯度传递完成Learner管理器之间的参数共享,相当于每个Learner都使用了所有Actor采集的样本,使得训练效率更高。当达到最大训练次数时,分别对每个主机的训练智能体策略性能进行测试,若所有Leaner管理器的智能体的获胜率均低于设定的阈值,则放弃本次训练,以避免无效智能体在后续中继续参与训练;若超过阈值,则将测试结果最好的智能体模型参数传递给控制主机Learner管理器,并由其传递至博弈管理模块进行智能体版本保存。

      图  5  分布式训练系统结构图

      Figure 5.  Structure of distributed training system

    • 在预警机引导战斗机完成对敌方作战单位的截击引导任务中,首先开展引导我方战斗机与敌方飞机的一对一博弈,此时,红方包含1架预警机、1架战斗机,蓝方包含1架敌方飞机。此时,红方智能体控制预警机,蓝方智能体控制敌方飞机。

      在该任务场景下,状态${s_t}$主要包括可观察范围内所有单位的相对三维坐标和己方飞机的绝对三维目标。红方智能体的动作空间A包括自身机动与对舰载机机动及导弹发射引导的可行指令集合,蓝方单位的动作空间A为自身机动和发射导弹指令集合。在每一时刻,红方智能体和蓝方智能体均在A中选择一个动作${a_t}$执行。当红方单位击毁蓝方单位时,获得奖励值${r_t} = + 1$;相反,当红方舰载机被蓝方智能体击毁时,获得奖励值${r_t} = - 1$;当红方预警机被蓝方智能体击毁时,获得奖励值${r_t} = - 5$

    • 首先,根据将典型案例策略作为样本或者直接与作战人员对战获得红、蓝双方初级智能体;然后,通过博弈管理系统,根据交替训练的准则挑选智能体版本模型参数并构建红方与蓝方智能体。初始化主机台数M=3,并将第1台主机作为控制主机。在每台主机下配置战场场景的数量N=8。因此,在分布式训练系统中共部署24个战场仿真系统。在每个战场仿真系统中,开展红方智能体与蓝方智能体的博弈学习,并在控制主机的Learner控制器中更新训练方智能体的参数,如图6所示。在训练智能体中,将调节因子设定为$\gamma = 0.9$,学习率设定为$\alpha = 0.001$

      每训练500回合(episodes),便使用每个主机当前学习的策略进行20回合的测试实验,并计算成功回合数占总回合数的比率来作为当前策略的测试胜率(test win rate)。其中,当满足以下3个条件中任一条件时,当前回合结束。3个条件分别为:我方任一单位被击毁(失败);敌方单位被全部击毁(成功);当前回合执行已超过10 000步。整个博弈学习过程的训练回合数设定为100 000。然后,将胜率最高的智能体通过博弈管理系统进行保存。若所有主机中智能体的胜率均未超过50%,则表示本次训练失败,因而本次训练智能体的模型参数不予保存。同时,各Learner之间每隔100回合交换一次训练梯度,以提升学习效率。若达到训练最大回合数,便终止学习;若未达到,则由博弈管理系统交换训练智能体,重新挑选智能体版本模型参数并构建红方与蓝方智能体继续进行训练。

      图  6  博弈学习系统工作流程图

      Figure 6.  Flow chart of game learning system

      当利用该博弈学习系统开展多对多博弈时,整体原理等同于一对一博弈,但红方智能体和蓝方智能体的动作空间更大,包含所控制多架飞机的动作组合。

    • 为了验证通过分布式训练系统能够提高训练效率,将采用3台主机的训练系统成功率变化情况与只使用1台主机的训练系统(M=1,N=1)进行对比分析。分别对以上2组系统各进行10次独立实验,然后对10次独立实验的平均成功率进行了对比,如图7所示。

      图  7  训练成功率对比图

      Figure 7.  Training success rate comparison

      图7给出了使用分布式系统(橙色)和不使用分布式系统(蓝色)的测试胜率对比结果。其中,图7(a)为第1次训练结果,为红方智能体对战初级蓝方智能体的胜率情况;图7(b)为第2次训练结果,为红方智能体对战训练过一次的蓝方智能体的胜率情况。由结果可知,当使用分布式训练系统时,由于能够在相同的时间内获取更多的样本,而获取更多样本能够增加有效策略的探索概率,因而能提升学习速度,得到更好的策略。

    • 本文将深度强化学习应用于战场仿真环境,设计了预警机引导战斗机任务的博弈学习系统。首先,利用卷积神经网络、长短时记忆神经网络等构建了深度强化学习智能体;然后,通过在传统仿真系统上增加感知、决策、奖励接口,完成了深度强化学习智能体与战场仿真系统的交互过程;接着,设计了博弈管理系统以实现交替训练红、蓝方智能体,即交替提升敌我双方智能体的水平,从而获得更具适用性的策略;最后,设计分布式训练系统完成了多主机、多场景的异步训练,提高了训练速度及策略稳定性。通过该博弈学习系统的分布式训练系统,能够高效、稳定地完成深度强化学习在基于预警机的战斗机引导任务中的训练,完成针对预警机引导战斗机策略的探索。此外,作战人员也可通过分析智能体的策略或者通过与智能体进行人机对抗,来进一步开展相关战法研究。

参考文献 (12)

目录

    /

    返回文章
    返回