基于
预知
博弈
无人
机群
协同
空战
算法
周文卿
基于预知博弈树的多无人机群智协同空战算法周文卿1,朱纪洪2*,匡敏驰2,史恒21.清华大学计算机科学与技术系,北京 100084;2.清华大学精密仪器系,北京 100084*E-mail:收稿日期:2021-07-15;接受日期:2021-10-14;网络版发表日期:2022-08-09摘要无人机广义上为不需要驾驶员登机驾驶的各式遥控飞行器.在现代空战中,无人机占据了越来越重要的地位.然而目前关于无人机的空战算法的研究大都是在高度简化的低精度简单场景中进行的,使用的方法也大都受限于已有的专家知识,无法充分发挥智能空战算法的优势.因此,本文对基于预知博弈树的多无人机群智协同空战算法进行了研究.首先使用Unity3D搭建了一套贴近于真实空战场景的仿真环境;然后根据现有的空战知识封装了一套战术机动动作,实现了脚本化的飞机编队,并设计了一套空战态势评估函数;以此为基础提出了基于预知博弈树的空战AI算法框架,通过预知博弈树算法完成了角色分配和机动动作决策的任务,使用XGBoost将其转化为一个在线的实时算法;以状态机算法为baseline,在高逼真度仿真平台上通过空战AI对抗实验,验证了本文提出的空战算法的有效性.关键词多无人机群智协同,智能空战,预知博弈树算法,高逼真度仿真平台,自主控制1引言无人机(unmanned aerial vehicle,UAV)广义上为不需要驾驶员登机驾驶的各式遥控飞行器.无人机通常使用遥控、导引或自动驾驶的方法来进行控制,在用途上则通常用于军事、科学研究、场地勘探、休闲娱乐等方面.在军事方面,无人机最早用作靶机或炸药的载具,随后慢慢发展出了无人侦察机、诱饵机和具备对地攻击能力的作战飞机等.随着近些年人工智能、5G通信和微电子技术的发展,无人机在自主导航、精准定位、可靠通信、实时避障等方面都有了长足的进步.而无人机由于其小型化、低成本、安全性和数量规模优势,在现代空战中占据了越来越重要的地位,并逐渐发展出了蜂群战术和有人机/无人机群智协同等多种多样的作战方式1.近年来,国内外众多学者在无人机的机器视觉、自主飞行、集群算法、有人/无人协同和空战算法等方面做出了许多研究2,3.美国国防部高级研究计划局(Defense Advanced Research Projects Agency,DARPA)宣布其已经分别在2020年1月和9月完成了对于进攻性蜂群使能战术(offensive swam-enabled tactics,OFF-SET)的第三和第四次野外实验,分别演示了异构蜂群无人机对于城区突袭任务和模拟目标保护的能力4.而针对无人机的自主控制,Alfeo等人5对无人机在杂引用格式:周文卿,朱纪洪,匡敏驰,等.基于预知博弈树的多无人机群智协同空战算法.中国科学:技术科学,2023,53:187199Zhou W Q,Zhu J H,Kuang M C,et al.Multi-UAV cooperative swarm algorithm in air combat based on predictive game tree(in Chinese).Sci SinTech,2023,53:187199,doi:10.1360/SST-2021-0294 2022 中国科学杂志社中国科学:技术科学2023 年第 53 卷第 2 期:187 199SCIENTIA SINICA T群体智能激发汇聚及应用专辑论 文乱室外区域的目标搜索问题,提出了一种利用生物激励机制协调无人机与不完善的传感器的方法.Varela等人6则提出,利用空中平台监测无人机群,探测环境条件以评价每个个体的状态,并基于群体智能对无人机群进行实时协调.国内方面,孙佳琛等人7建立了面向无人机集群的群体智能协同通信模型,并阐述了无人机群的立体协同感知技术.北京航空航天大学段海滨团队8,9基于对鸽群的模拟和学习,分别对仿信鸽归巢的导航技术和有人/无人机集群的一致性控制进行了研究.胡多修等人10则提出了一种改进的近端策略优化(proximalpolicy optimization,PPO)算法,对无人机的自主引导跟踪与避障进行了研究.在2020年10月,中国电子科学研究院进行了陆空协同固定翼无人机蜂群系统的验证试飞,标志着中国首个实用化无人机蜂群的诞生11.而在无人机的空战算法方面,2016年辛辛那提大学的Ernest等人12研发了基于遗传模糊树的空战智能体AlphaAI,其操纵F-15击败了人类退役空军上校驾驶的F-22.而在DARPA于2020年举办的AlphaDogfight近距狗斗比赛中,苍鹭公司使用长短期记忆网络(longshort-term memory,LSTM)的算法实现了一种空战智能体,并最终击败了其他一众AI以及人类飞行员13.国内方面,有研究者使用深度强化学习的方法,在二维兵棋推演平台上对多机协同空战进行了研究14.此外,极大极小搜索的算法15和状态机的方法16也被使用在空战机动决策的研究中.然而上述对于无人机空战算法的研究,大都是在经过大量简化的低精度简单场景中进行的,与实际的应用场景相距较大1215,使用的方法也较为简单或者受限于已有的专家知识15,16.因而根据上述需求,我们针对更为复杂真实的仿真环境,提出了一种基于预知博弈树的多无人机群智协同空战算法,并对其进行了仿真验证.2空战对抗模型从引言中的介绍可以发现,现有的对无人机空战算法的研究中,很多工作是在低精度甚至二维的环境中进行的,与实际的场景相去甚远.为了能够研究出在应用方面具有实际意义的算法,我们首先使用游戏开发引擎Unity3D搭建了一套贴近于真实空战场景的仿真环境.高逼真度仿真平台中包括了8个部分即空气动力学、红外、雷达、诱饵弹等空战引擎内核部分和视景与UI、VR、天气与地景、多功能电子触摸屏等人机交互部分.基于高逼真度仿真平台,我们设置了图1所示的空图 1空战实验场景Figure 1Scene of air combat experiment.周文卿等:基于预知博弈树的多无人机群智协同空战算法188战实验场景.实验环境的地景为海中央的小岛,最高海拔小于4 km,作战区域则为地景上方的空域,大小为150 km150 km20 km.如果飞机或导弹在对抗过程中与地景相撞则会立即被销毁.仿真平台中对战的双方为数量相同的F22战机,考虑到仿真占用的内存和算法搜索空间限制,战机规模控制在1架对1架到9架对9架之间.每架飞机分别挂载两枚AIM-120中距弹、六枚AIM-9X近距弹和八枚诱饵弹,导弹有一定概率被诱饵弹引走丢失目标.高逼真度仿真平台中,最核心的是飞行器的六自由度气动力学建模.将飞机分为机身和机翼,机翼分为主翼、副翼、襟翼、前缘襟翼和尾翼.飞机在飞行时受到的空气动力主要来自于机翼,因此对所有翼面进行划分和有限元分析模拟,得到其升阻力系数.综合操纵杆和节流阀的输入,得到各个翼面产生的升阻力、机体阻力、发动机推力和力矩,可以计算出飞机所受的合力和力矩的方向、大小.升力的计算公式17为LqS C=,(1)Lref式中L为升力,q为动压,Sref为参考面积,一般指机翼面,CL为升力系数.阻力的计算公式17为DqS C=,(2)dref式中D为阻力,q为动压,Cd为阻力系数.力矩的计算公式17为Mv S C l=12,(3)m2refref式中M为力矩,为空气密度,v为空速,Cm为力矩系数,lref为参考长度,一般指弦长.类似地,可以计算得到导弹的升阻力、推力和力矩,根据上面求得的这些参数,Unity3D中的物理引擎RigidBody可以方便地对飞行器的位置、速度、加速度以及姿态等信息进行实时更新.系统中还包括了红外系统、雷达系统和诱饵弹等设置.其中,雷达系统对目前先进战斗机采用的有源相控阵雷达进行了模拟.而雷达系统中的目标探测跟踪子模块会将所有可被探测、跟踪到的目标的位置和速度信息传递给AI模块.若敌方目标不在探测范围内,或雷达系统受到电磁干扰、诱饵等的影响,则不能准确获得目标的信息.相较于文献12,13等完备信息的环境,基于本文方法所研制的仿真平台能够使得使用系统的人类飞行员和空战算法都能在完全模拟实战的环境下进行战斗.此外,如图2所示,视景与UI、VR、天气与地景、多功能电子触摸屏等子系统能够为人机交互提供便利,方便AI编写时的调试和以后人机对抗的测试.3动作集封装对于空战算法而言,决策空间相当巨大,而其中的有效解非常的稀疏,根据基本的空战技战术可以发现可选的机动动作大部分都没有正面收益甚至会造成负面的影响.因此,为了压缩决策空间、降低算法的复杂度,同时避免决策时的波动,我们结合现有的空战知识设计了一套战术动作.DCS World是俄罗斯军用飞行模拟团队开发的一套较为逼真的空战仿真游戏平台,目前还承担着俄罗斯军方空战AI的开发测试任务.我们与国内的顶级DCS World玩家团队合作,获取了大量顶级玩家的对战数据.通过对数据的分析,我们提取空战中的人类经验,将复杂的机动分解成几种简单的动作,并设计了如表1所示的一套机动动作集.其中,前3种动作为飞机向正前方飞行,同时,受目标俯仰角的影响,其又分为直飞、拉升和俯冲.盘旋是指飞机滚转后拉升机头执行转弯操作,参数包括目标滚转角和操纵杆的俯仰输入.追踪是指飞机对目标进行跟踪,目标可能是飞行中的敌机,也可能是给定的某一个预测点(如跟丢目标时,可根据丢失视野前敌机的速度和加速度,对目标可能的位置进行预测).筋斗则是指固定操纵杆俯仰输入,使飞机的俯仰角剧烈地变化.通过4和6两个动作的组合,可以使得飞机完成图 2VR看透座舱功能Figure 2See through the cockpit with VR.中国科学:技术科学2023 年第 53 卷第 2 期189滚转180再拉俯仰调转方向至水平的动作,实现对导弹的规避机动.最后两个动作则是发射导弹攻击敌机和发射诱饵弹,诱饵弹有一定的概率将敌方导弹引走.根据操纵杆的输入,我们采用PID控制器进行控制,使得飞机能够达到机动动作集中设置的目标滚转角或目标俯仰角.而操纵杆俯仰输入则是控制操纵杆保持一个固定的输入.此外,通过节流阀还可以控制飞机的加速度,使其加速、减速或匀速运动.与经典的NASA提出的7种基本机动动作18和细化扩展得到的25种典型战术动作19相比,表1中的动作更加的简洁、基础.虽然数量不多,但是通过参数的变化、节流阀的变化和动作的组合,能够灵活地生成文献18,19中的复杂机动动作和文献中没有的其他动作.通过这样的方式,我们不仅可以在降低搜索空间的同时满足空战AI机动动作的丰富程度,还可以减少人为的限制,使其能够通过搜索得到更加有效的动作组合.4基于预知博弈树的空战算法在空战中,飞机首先需要从起飞地点以编队的形式抵近敌机(或其他任务空域).在接近敌方目标后,每架飞机需要根据分配的角色和战场情况决定所要执行的战术动作和动作强度.在此过程中,人类飞行员驾驶的有人机还可以担任空中指挥官的角色,与无人机群形成人机协同.有人机能够在空战中汇总所有无人机探测到的信息,完成对战场全局的把控和无人机决策的审核任务,而较少地甚至不承担单机作战任务.如图3所示,我们采用脚本化的方式对无人机群进行编队,而对于战术协同层和单机决策层则综合了蒙特卡罗搜索树算法和对空战场未来态势的预测和评估,提出了一种预知博弈树的算法(图4).对于编队模式和各编队数量的决策,由于没有很多的选择且目前已有较为简单明确的战术规则,我们根据经典的编队模式,使用脚本化的方法直接给出机动策略.战机以不同的高低、左右、前后多维度地展开以迎敌.每个小队一般由两架飞机构成,互相之间的距离保持在6 km以内.不同小队之间的间距则视作战任务和战场态势不同,保持在628 km之间,保证不会使得多个小队同时受到敌方武器的威胁,又能在短时间之内快速支援.编队中的飞机数量和编队的任务与敌机的分布有关执行主要任务的编队规模较大,而承担诱敌、掩护等任务的编队规模则相对较小.编队中的飞机应在局部空战场中形成数量优势,完成自己的任务后再与其他编队