智能博弈领域已逐渐成为当前AI研究的热点之一,游戏AI领域、智能兵棋领域都在近年取得了一系列的研究突破。但是,游戏 AI 如何应用到实际的智能作战推演依然面临巨大的困难。综合分析智能博弈领域的国内外整体研究进展,详细剖析智能作战推演的主要属性需求,并结合当前最新的强化学习发展概况进行阐述。从智能博弈领域主流研究技术、相关智能决策技术、作战推演技术难点3个维度综合分析游戏AI发展为智能作战推演的可行性,最后给出未来智能作战推演的发展建议。以期为智能博弈领域的研究人员介绍一个比较清晰的发展现状并提供有价值的研究思路。

0 引言

以2016年AlphaGo的成功研发为起点,对智能博弈领域的研究获得突飞猛进的进展。2016年之前,对兵棋推演的研究还主要集中在基于事件驱动、规则驱动等比较固定的思路。到2016年,受AlphaGo的启发,研究人员发现智能兵棋、智能作战推演的实现并没有想象得那么遥远。随着机器学习技术的发展,很多玩家十分憧憬游戏中有 AI 加入从而改善自己的游戏体验[1]。同时,在智能作战推演领域,不断发展的机器学习游戏 AI 技术也为智能作战推演的发展提供了可行思路[2]。传统作战推演AI主要以基于规则的AI和分层状态机的AI决策为主,同时以基于事件驱动的机制进行推演[3-4]。然而,随着近些年国内外在各种棋类、策略类游戏领域取得新突破,智能作战推演的发展迎来了新的机遇[5]。

国内游戏 AI 领域取得了标志性的进步。腾讯《王者荣耀》的《觉悟AI》作为一款策略对抗游戏取得了显著成绩,可以击败97%的玩家,并且多次击败顶尖职业团队[6]。网易伏羲人工智能实验室在很多游戏环境都进行了强化学习游戏 AI 的尝试[6],如《潮人篮球》《逆水寒》《倩女幽魂》。超参数科技(深圳)有限公司打造了游戏AI平台“Delta”,集成机器学习、强化学习、大系统工程等技术,通过将AI与游戏场景结合,提供人工智能解决方案[7]。启元AI“星际指挥官”在与职业选手的对抗中也取得了胜利[8]。北京字节跳动科技有限公司也收购了上海沐瞳科技有限公司和北京深极智能科技有限公司,准备在游戏AI领域发力。除了游戏AI领域,国内在智能兵棋推演领域也发展迅速。国防大学兵棋团队研制了战略、战役级兵棋系统,并分析了将人工智能特别是深度学习技术运用在兵棋系统上需要解决的问题[9]。中国科学院自动化研究所在2017年首次推出《CASIA-先知1.0》兵棋推演人机对抗AI[10],并在近期上线“庙算·智胜”即时策略人机对抗平台[11]。此外,由中国指挥与控制学会和北京华戍防务技术有限公司共同推出的专业级兵棋《智戎·未来指挥官》在第三届、第四届全国兵棋推演大赛中成为官方指定平台。中国电科认知与智能技术重点实验室开发了MaCA智能博弈平台,也成功以此平台为基础举办了相关智能博弈赛事。南京大学、中国人民解放军陆军工程大学、中国电子科技集团公司第五十二研究所等相关单位也开发研制了具有自主知识产权的兵棋推演系统[12,13,14,15]。2020年,国内举办了4次大型智能兵棋推演比赛,这些比赛对于国内智能博弈推演的发展、作战推演领域的推进具有积极影响。游戏 AI 和智能兵棋的发展也逐渐获得了国内学者的关注,胡晓峰等人[5]提出了从游戏博弈到作战指挥的决策差异,分析了将现有主流人工智能技术应用到战争对抗过程中的局限性。南京理工大学张振、李琛等人利用PPO、A3C算法实现了简易环境下的智能兵棋推演,取得了较好的智能性[16-17]。中国人民解放军陆军工程大学程恺、张可等人利用知识驱动及遗传模糊算法等提高了兵棋推演的智能性[18-19]。中国人民解放军海军研究院和中国科学院自动化研究所分别设计和开发了智能博弈对抗系统,对于国内智能兵棋推演系统的开发具有重要参考价值[20]。中国人民解放军国防科技大学刘忠教授团队利用深度强化学习技术在《墨子•未来指挥官系统》中进行了一系列智能博弈的研究,取得了突出的成果[21]。中国科学院大学人工智能学院倪晚成团队提出一种基于深度神经网络从复盘数据中学习战术机动策略模型的方法,对于智能博弈中的态势认知研究具有重要参考价值[22]。

总体来说,国内在智能博弈领域进行了一系列的研究,尝试将该技术应用到作战推演领域,建立了具有自主产权的博弈平台,技术层面也不断突破,不再局限于传统的行为决策树、专家知识库等,开始将强化学习技术、深度学习技术、遗传模糊算法等引入智能博弈,取得了一系列的关键技术的突破。但是,当前的研究主要聚焦在比较简单的智能博弈环境,对复杂环境及不完全信息的博弈对抗研究仍然需要进一步探索。

国外游戏 AI 领域则取得了一系列突出成果,尤其是深度强化学习技术的不断发展,游戏 AI 开始称霸各类型的游戏[23]。2015年DeepMind团队发表了深度Q网络的文章,认为深度强化学习可以实现人类水平的控制[24]。2017年,DeepMind团队根据深度学习和策略搜索的方法推出了AlphaGo[25],击败了围棋世界冠军李世石。此后,基于深度强化学习的 AlphaGo Zero[26]在不需要人类经验的帮助下,经过短时间的训练就击败了AlphaGo。2019年, DeepMind 团队基于多智能体(agent)深度强化学习推出的AlphaStar[27]在《星际争霸II》游戏中达到了人类大师级的水平,并且在《星际争霸II》的官方排名中超越了 99.8%的人类玩家。《Dota 2》AI“OpenAI Five”在电竞游戏中击败世界冠军[28], Pluribus 在 6 人无限制德州扑克中击败人类职业选手[29]。同时DeepMind推出的MuZero在没有传授棋类运行规则的情况下,通过自我观察掌握围棋、国际象棋、将棋和雅达利(Atari)游戏[30]。与军事推演直接相关的《CMANO》和《战争游戏:红龙》(Wargame:Red Dragon),同样也结合了最新的机器学习技术提升了其智能性[31]。美国兰德公司也对兵棋推演的应用进行相关研究,利用兵棋推演假设分析了俄罗斯和北大西洋公约组织之间的对抗结果,并利用智能兵棋推演去发现新的战术[32]。兰德研究员也提出将兵棋作为美国军事人员学习战术战法的工具[33]。美国海军研究院尝试使用深度强化学习技术开发能够在多种单元和地形类型的简单场景中学习最佳行为的人工智能代理,并将其应用到军事训练及军事演习[34-35]。

但就目前而言,国外的研究也遇到了瓶颈。虽然也尝试将深度强化学习技术利用到作战领域,但是就目前发表的论文和报告来看,国外学者、研究人员将机器学习技术应用到作战推演 AI 中还有很多问题需要解决,现阶段也是主要在游戏 AI 领域及简单的作战场景进行实验验证及分析。作战推演AI 的设计也不仅仅是把机器学习技术照搬照用这么简单。但是必须肯定的是,随着未来计算机硬件的发展和机器学习技术的完善,作战推演 AI 会迎来一波革命式的发展,给各类作战智能指挥决策带来翻天覆地的变化。本文从智能博弈的重要应用领域——作战推演分析了国内外整体背景,进而引出作战推演的技术需求,并给出当前可参考的主流及小众技术思路。同时,对可能出现的技术难点进行了分析并给出解决方案建议。最后,对作战推演的未来发展提出建议。

1 智能作战推演主要属性需求

1.1 状态空间

状态空间是作战推演中的每个作战实体的位置坐标、所处环境、所处状态等要素的表现,是深度强化学习进行训练的基础。在围棋中,状态空间就是棋盘上每个点是否有棋子。在《觉悟AI》中,状态空间是每一帧、每个单位可能有的状态,如生命值、级别、金币[36,37,38,39]。在《墨子·未来指挥官系统》中,状态空间主要是每个作战单元实体的状态信息,是由想定中敌我双方所有的作战单元信息汇聚形成的。本节尤其要明确状态空间和可观察空间是可区分的,可观察空间主要是每个 agent 可以观察到的状态信息,是整个状态空间的一部分。作战推演中的状态空间将更加复杂,具有更多的作战单位和单位状态。针对敌我双方的不同作战单位、不同单位属性、不同环境属性等定义作战推演的状态空间属性。例如敌我双方坦克单元应包括坐标、速度、朝向、载弹量、攻击武器、规模等。陆战环境应包括周围道路信息、城镇居民地、夺控点等。

1.2 动作空间设计

动作空间是指在策略对抗游戏中玩家控制算子或游戏单元可以进行的所有动作的集合。对于围棋来说,动作空间为361个,是棋盘上所有可以落子的点。对于《王者荣耀》和《Dota》这类游戏来说,动作空间主要是玩家控制一个“英雄”进行的一系列操作,玩家平均水平是每秒可以进行一个动作,但是需要结合走位、释放技能、查看资源信息等操作。例如《觉悟AI》的玩家有几十个动作选项,包括24个方向的移动按钮和一些释放位置/方向的技能按钮[34]。因此每局多人在线战术竞技(multiplayer online battle arena,MOBA)游戏的动作空间可以达到1060 000+。假设游戏时长为45 min,每秒30帧,共计81 000帧,AI每4帧进行一次操作,共计20 250次操作,这是游戏长度。任何时刻每个“英雄”可能的操作数是170 000,但考虑到其中大部分是不可执行的(例如使用一个尚处于冷却状态的技能),平均的可执行动作数约为1 000,即动作空间[37]。因此,操作序列空间约等于1 00020 250= 1060 750。而对于《星际争霸》这类实时策略对抗游戏来说,因为需要控制大量的作战单元和建筑单元,动作空间可以达到1052 000[38]。而对于《CMANO》和《墨子·未来指挥官系统》这类更加贴近军事作战推演的游戏来说,需要对每个作战单元进行大量精细的控制。在作战推演中,每个作战单元实际都包括大量的具体执行动作,以作战飞机为例,应包括飞行航向、飞行高度、飞行速度、自动开火距离、导弹齐射数量等。因此,实际作战推演需要考虑的动作空间可以达到10100 000+。可以看出,对于作战推演来说,庞大的动作空间一直是游戏 AI 迈进实际作战推演的门槛。现有的解决思路主要是考虑利用宏观AI训练战略决策,根据战略决策构建一系列绑定的宏函数,进行动作脚本设计。这样的好处是有效降低了动作空间设计的复杂度,同时也方便高效训练,但是实际问题是训练出来的 AI 总体缺乏灵活性,过于僵化。

对于动作空间,还需要考虑其是离散的还是连续的,Atari和围棋这类游戏动作都是离散动作空间[25,39-40],《星际争霸》《CMANO》《墨子·未来指挥官系统》这类游戏主要是连续动作空间[38]。对于离散动作,可以考虑基于值函数的强化学习进行训练,而对于连续动作,可以考虑利用基于策略函数的强化学习进行训练。同时,离散动作和连续动作也可以互相转化。国内某兵棋推演平台由原先的回合制改为时间连续推演,即把回合制转化为固定的时间表达。同时对于连续动作,也可以在固定节点提取对应的动作,然后将其转化为离散动作。

1.3 决策空间构建

智能博弈中的决策主要是指博弈对抗过程中的宏观战略的选择以及微观具体动作的选择。宏观战略的选择在《墨子·未来指挥官系统》推演平台中体现得比较明显。在推演比赛开始前,每个选手要进行任务规划,这个任务规划是开始推演前的整体战略部署,例如分配导弹打击目标,规划舰艇、战斗机活动的大致区域,以及各个任务的开始执行时间等。这一决策空间与想定中的作战单元数量、任务规划数量相关。在制定完成宏观战略决策后,推演阶段即自主执行所制定的宏观战略决策。同时,在推演过程中也可以进行微观具体动作的干预,这一阶段的具体动作和作战单元数量、作战单元动作空间成正比。在实际作战推演中利用智能算法进行智能决策,首先需要明确决策空间数量。在现有的《墨子·未来指挥官系统》中,针对大型对抗想定,计算机基本需要每秒进行数百个决策,一局想定推演中双方博弈决策空间数量预估为 1080+个,而对于《星际争霸》《Dota 2》和《王者荣耀》这类即时战略(real-time strategy,RTS)游戏,决策空间会低一些。实际作战推演每小时的决策空间数量将高于 1050+个。对于这类智能决策的方案,现有 RTS游戏中提出的思路是利用分层强化学习的方法进行解决,根据具体对抗态势进行宏观战略决策的选择,然后根据不同的决策再分别执行对应的微观具体动作,这样可以有效降低智能决策数量,明显提高智能决策的执行效率。

1.4 胜利条件设置

博弈对抗的胜利是一局游戏结束的标志。而不同游戏中的胜利条件类型也不同,围棋、国际象棋这些棋类博弈对抗过程中有清晰明确的获胜条件[30]。而 Atari 这类游戏[40]只需要获得足够的分数即可获得胜利。对于《王者荣耀》这类推塔游戏,不管过程如何,只要最终攻破敌方水晶就可以获取胜利。这些胜利条件使得基于深度强化学习技术的游戏AI开发相对容易,在回报值设置中给予最终奖励更高的回报值,总归能训练出较好的 AI 智能。然而对于策略对抗游戏,甚至实际作战推演来说,获胜条件更加复杂,目标更多。比如,有时可能需要考虑在我方损失最低的情况下实现作战目标,而有时则需要不计代价地快速实现作战目标,这些复杂多元的获胜条件设置将使得强化学习的回报值设置不能是简单地根据专家经验进行赋值,而需要根据真实演习数据构建奖赏函数,通过逆强化学习技术满足复杂多变的作战场景中不同阶段、不同目标的作战要求。

1.5 回报值设置

博弈对抗过程中最核心的环节是设置回报值,合理有效的回报值可以保证高效地训练出高水平AI。对于《星际争霸》《王者荣耀》等游戏,可以按照固定的条件设置明确的回报值,例如将取得最终胜利设置为固定的回报值。但是一局游戏的时间有时较长,在整局对抗过程中,如果只有最终的回报值将导致训练非常低效。这就是作战推演中遇到的一个难题,即回报值稀疏问题。为了解决这个难题,现有的解决方案都是在对抗过程中设置许多细节条件,如获得回报值或损失回报值的具体行为。比如在“庙算·智胜”平台中的博弈对抗,可以设置坦克击毁对手、占领夺控点即可获得回报值,如果被打击、失去夺控点等则会损失回报值,甚至为了加快收敛防止算子长期不能达到有效地点,会在每步(step)都损失微小的回报值。《觉悟AI》也同样设置了详细的奖赏表[36],从资源、KDA(杀人率(kill,K),死亡率(death,D),支援率(assista, A))、打击、推进、输赢 5 个维度设置了非常详细的具体动作回报值。这样就可以有效解决回报值稀疏的问题。但是,对于复杂的作战推演来说,设计回报函数可能还需要更多的细节。因为作战情况将更加复杂多样,需要利用逆强化学习[41-42],通过以往的作战数据反向构建奖赏函数。

1.6 战争迷雾

战争迷雾主要是指在博弈对抗过程中存在信息的不完全情况,我方并不了解未探索的区域实际的态势信息。围棋、国际象棋这类博弈对抗游戏中不存在这类问题。但是在《星际争霸》《Dota 2》《王者荣耀》以及《CMANO》等RTS游戏中设计了这一机制。实际的作战推演过程中同样也存在此类问题,但是情况更加复杂。在实际作战推演中,可以考虑利用不完全信息博弈解决这个问题,已有学者利用不完全信息博弈解决了德州扑克中的不完全信息问题[29],但是在实际作战推演中这一问题还需要进一步探讨研究。

1.7 观察信息

这里需要对智能博弈中的观察信息与游戏状态空间进行区分,观察信息主要是指博弈的 agent在当前态势下可以获取的态势信息,是部分状态信息。由于在智能博弈对抗过程中会产生战争迷雾问题,因此需要在处理博弈信息时设置 agent 可以获取到的信息。《星际争霸》中观察信息主要有两层意思,一个层面是屏幕限制的区域更易于获取态势信息,因为玩家更直观的注意力在屏幕局域,部分注意力在小地图局域。为了更加符合实际, AlphaStar也按照这种限制对《星际争霸》中的注意力区域进行限制,从而更好地防止 AI 产生作弊行为。而这也是部分《星际争霸》AI被人诟病的原因,即没有限制机器的关注区域。另一个层面是对《星际争霸》中作战单元可观察区域内的态势信息进行获取,对于不能获取的态势信息则只能评估预测,而这一部分则涉及对手建模部分,主要利用部分可观察马尔可夫决策过程(partially observable Markov decision process,POMDP)[43],这一技术明显难于完全信息博弈。而对于围棋游戏来说,其中的态势信息是完全可获取的,属于完全信息博弈,态势信息即观察信息。并且围棋游戏属于回合制,相对于即时策略游戏,其有更加充分的获取态势信息的时间。因此,则可以利用蒙特卡洛树搜索(Monte Carlo tree search,MCTS)算法对所获取的围棋游戏中的观察信息进行详细分析,计算出所有可能的结果,进而得出最佳的方案策略。《Dota 2》中的观察信息是指所控制的某个“英雄”所获取的态势信息,其主要也是对主屏幕的态势信息和小地图的态势信息进行结合处理。《王者荣耀》也与此类似,其主要以小地图的宏观信息进行训练,然后以此为基础为战略方案提供支持,如游戏中的“英雄”是去野区发育还是去中路对抗。同时,对主屏幕态势信息进行特征提取,结合强化学习训练,可以得出战术层面的方案和建议,是去选择回塔防御还是进草丛躲避,或者推塔进攻。墨子兵棋推演系统和《CMANO》则更加接近真实作战推演,在作战信息获取各个方面都高度模拟了作战推演的场景,需要获取具体的对空雷达、对地雷达、导弹探测、舰艇雷达等信息后才能判断态势信息,这部分可观察信息非常复杂,需要结合各种情况才能发现部分目标,对于战争迷雾更加真实。因此,作战推演观察信息完全可以借鉴POMDP进行可观察信息建模,但还需要设置各种更加符合真实装备的作战情况,需要在环境中提前设置有针对性的条件。

1.8 对手建模

在博弈对抗过程中对手 AI 的建模也是至关重要的,不同水平的AI会导致博弈对抗的胜率不同,并且直接影响推演对抗的价值[39,40,41,42,43,44,45]。如果对手 AI水平过低,就不能逼真地模拟假设对手,博弈过程和推演结果也价值不高。在 DeepMind 开发的AlphaGo和AlphaStar中,AI性能已经可以击败职业选手,通过训练后产生的决策方案已经可以给职业选手新的战术启发。国内《墨子•未来指挥官系统》也与国内高校合作,研发的基于深度强化学习的智能 AI 已经可以击败全国兵棋大赛十强选手。而在中国科学院自动化研究所开发的“庙算•智胜”上,积分排名前三名的均是AI选手,胜率均在80%以上[11]。但是,现有对手建模主要还是聚焦在一对一的对手建模,很少学者研究多方博弈,而这在实际作战推演中更加需要。在实际作战对抗博弈过程中普遍会考虑多方博弈,如在《墨子•未来指挥官系统》的海峡大潮想定中,红方不仅面对蓝方,还有绿方,蓝方和绿方属于联盟关系。这就需要在对手建模中充分考虑这种复杂的博弈关系。

1.9 想定设计

博弈对抗的环境因素也是影响智能决策的重要因素之一。在围棋、国际象棋这些棋类游戏中,想定是永久固定不变的,而且也完全没有环境的影响,因此AlphaGo这类智能AI完全没有考虑环境的因素。在《觉悟 AI》《Dota 2》这类游戏中就需要考虑不同“英雄”在同一个场景中会产生不同的影响。不同的“英雄”阵容搭配也会对推演结果产生不同的影响,《觉悟AI》尝试利用强化学习技术,结合历史数据解决这一问题。这对于作战推演的武器装备搭配也具有启发价值。但是在实时策略游戏中要考虑更加复杂的环境因素及其影响,不仅作战单元会产生变化,并且在不同的作战推演中,不同的环境之中也会有不同的地形、地貌,这些因素会对作战推演的过程产生非常重要的影响。《CMANO》《墨子·未来指挥官系统》《战争游戏:红龙》中都需要考虑地形因素。例如《CMANO》中登陆作战需要考虑水雷所在区域、登陆舰艇吃水深度,否则会产生搁浅,不能在理想区域登陆会对作战目标产生较大负面影响。因此,对于实际作战推演来说,最大的挑战是防止训练的深度强化学习AI 对某个想定产生过拟合。作战场景是千变万化的,传统的基于规则的AI就很难适应变化的想定,早期的《先知•兵圣》比赛中就比较突出地显示了这一问题。强化学习也容易训练出某个过拟合的模型,导致只在某个想定会有较好的AI智能性,假如更换作战想定就需要重新训练很长时间。为了解决这一问题,现有思路是利用迁移学习、先验知识和强化学习的思路来增强算法的适应性,并可以加速回报函数收敛,保证快速训练出高水平的AI模型。

1.10 总体比较

本节针对智能作战推演所需要的关键属性,结合当前游戏AI、智能兵棋等相关博弈平台,利用相关文献[6,8,24-25,29-30,37-39,43,46-49]进行分析,经过对比不难发现游戏 AI 过渡到智能兵棋,甚至是智能作战推演的难度,各个关键属性也是未来需要研究突破的关键点,具体见表1。

2 作战推演的智能决策核心技术思路

2.1 强化学习技术框架 强化学习的核心思想是不断地在环境中探索试错,并通过得到的回报值来判定当前动作的好坏,从而训练出高水平的智能AI[50]。马尔可夫决策过程(Markov decision process,MDP)是强化学习的基础模型,环境通过状态与动作建模,描述agent与环境的交互过程。一般地,MDP可表示为四元组<S,A,R,T >[44]:

    • S为有限状态空间(state space),包含agent在环境中的所有状态;
    • A为有限动作空间(action space),包含agent在每个状态上可以采取的所有动作;

agent从环境中感知当前状态st,从动作空间A中选择能够获取的动作at;执行at后,环境给agent相应的奖赏信号反馈 rt+1,环境以一定概率转移到新的状态st+1,等待agent做出下一步决策。在与环境的交互过程中,agent有两处不确定性,一处是在状态 s 处选择什么样的动作,用策略π(a|s)表示agent的某个策略;另一处则是环境本身产生的状态转移概率Pass′,强化学习的目标是找到一个最优策略π*,使得它在任意状态s和任意时间步骤t都能够获得最大的长期累计奖赏,即:

2.2 强化学习主流算法

2.2.1 基于值函数的强化学习

强化学习早期利用Q-learning算法来建立游戏AI,通过预先设计每步动作可以获得的回报值来采取动作。Q-learning 最大的局限是需要提前设计好所有执行动作的回报值,它用一张Q表来保存所有的Q值,当动作空间巨大时,该算法难以适应。因此,Q-learning 算法只能在比较简单的环境中建模使用,如在简单的迷宫问题中,让 agent 通过Q-learning算法自动寻找出口。

DeepMind在2015年第一次利用DQN(deep Q network)算法在Atari游戏环境中实现了高水平的智能AI,该AI综合评定达到了人类专业玩家的水平[24]。这也使得DQN算法成为强化学习的经典算法。DQN算法通过神经网络拟合Q值,通过训练不断调整神经网络中的权重,获得精准的预测 Q值,并通过最大的Q值进行动作选择。DQN算法有效地解决了Q-learning算法中存储的Q值有限的问题,可以解决大量的离散动作估值问题,并且DQN算法主要使用经验回放机制(experience replay),即将每次和环境交互得到的奖励与状态更新情况都保存起来,用于后面的Q值更新,从而明显增强了算法的适应性。DQN由于对价值函数做了近似表示,因此强化学习算法有了解决大规模强化学习问题的能力。但是 DQN 算法主要被应用于离散的动作空间,且DQN算法的训练不一定能保证Q值网络收敛,这就会导致在状态比较复杂的情况下,训练出的模型效果很差。在 DQN 算法的基础上,衍生出了一系列新的改进 DQN 算法,如 DDQN (double DQN )算法[51]、优先级经验回放 DQN (prioritized experience replay DQN)算法[52]、竞争构架Q网络(dueling DQN)算法[53]等。这些算法主要是在改进Q网络过拟合、改进经验回放中的采样机制、改进目标Q值计算等方面提升传统DQN算法网络的性能。总体来说,DQN系列强化学习算法都属于基于值函数的强化学习算法类型。基于值函数的强化学习算法主要存在 3点不足:对连续动作的处理能力不足、对受限状态下的问题处理能力不足、无法解决随机策略问题。由于这些原因,基于值函数的强化学习方法不能适用所有的场景,因此需要新的方法解决上述问题,例如基于策略的强化学习方法。

2.2.2 基于策略的强化学习

在基于值函数的强化学习方法中,主要是对价值函数进行了近似表示,引入了一个动作价值函数q,这个函数由参数w描述,以状态s与动作a为输入,计算后得到近似的动作价值,即式(4):

在基于策略的强化学习方法中,主要采用类似的思路,只不过主要对策略进行近似表示。此时,策略可以被描述为一个包含参数θ的函数,θ主要为神经网络中的权重,即式(5):

在基于策略的强化学习方法中,比较经典的就是理查德·萨顿(Richard S.Sutton)在2000年提出的 AC(actor-critic)框架强化学习算法。AC 包括两部分:演员(actor)和评价者(critic)。其中actor使用策略函数负责生成动作(action),通过动作与环境进行交互。而critic使用第2.2.1节提到的价值函数来评估actor的表现,并指导actor下一阶段的动作。总体来说,critic 通过 Q 网络计算状态的最优价值Vt,而actor利用Vt迭代更新策略函数的参数,进而选择动作,并得到反馈和新的状态, critic 使用反馈和新的状态更新 Q 网络参数 w,在后面critic会使用新的网络参数w帮助actor计算状态的最优价值Vt。

2016 年 DeepMind 在国际机器学习大会(International Conference on Machine Learning)提出了A3C算法[54]。之前的DQN算法为了方便收敛使用了经验回放的技巧;AC 也可以使用经验回放的技巧。A3C更进一步,还克服了一些经验回放的问题,主要采取随机性策略[55]。这里确定性策略和随机性策略是相对而言的,对于某一些动作集合来说,它可能是连续值,或者非常高维的离散值,这导致动作的空间维度极大。如果使用随机性策略,即像DQN算法一样研究它所有的可能动作的概率,并计算各个可能动作的价值,那需要的样本量是非常大的。于是DeepMind就想出使用确定性策略来简化这个问题[56]。作为深度确定性策略梯度(deep deterministic policy gradient)、critic目标网络和深度双Q网络(double DQN )的当前Q网络,目标Q网络的功能定位基本类似,但是DDPG有自己的actor策略网络,因此不需要贪婪法这样的选择方法,这部分DDQN的功能到了DDPG可以在actor当前网络完成。而对经验回放池中采样的下一状态s'使用贪婪法选择动作a',这部分工作的作用是估计目标 Q 值,因此可以放到 actor 目标网络完成。

此外,actor当前网络也会基于critic目标网络计算出的目标Q值进行网络参数的更新,并定期将网络参数复制到 actor 目标网络。DDPG 参考了DDQN的算法思想,通过双网络和经验回放,以及一些其他的优化,比较好地解决了AC难收敛的问题。因此在实际产品中尤其是与自动化相关的产品中使用得比较多,是一个比较成熟的AC算法。2017年, Open AI在神经信息处理系统大会(Conference and Workshop on Neural Information Processing Systems)上又提出了改进的多 agent 深度确定性策略梯度(multi-agent deep deterministic policy gradient)算法[57],把强化学习算法进一步推广应用到多agent环境。在AC框架下,比较经典的算法还有近端策略优化(proximal policy optimization)算法[58]、柔性演员-评论家(soft actor-critic)算法[59]、双延迟深度确定性策略梯度(twin delayed deep deterministic policy gradient)算法[60]等,这些算法也都是在样本提取效率、探索能力增强方面进一步改进优化AC框架的。

2.3 深度学习结合强化学习

在现有策略对抗游戏中利用深度学习技术结合强化学习来实现游戏AI已成为主流研究方向[52]。其主要思路为在游戏对抗过程中利用图像特征的卷积提取技术。如在《觉悟AI》中,图像特征的提取采取了分层的思想,在主视野和小地图中,对不同种类的要素进行提取并合并到一个层中,最终每层都提取到一类关键属性节点信息,形成“英雄”“野怪”“小兵”位置矩阵[6]。最终将多尺度特征的信息融合形成全局态势特征信息,这一工作同样应用在AlphaStar中。对于作战推演来说,态势理解一直是研究的难点,那么考虑利用深度学习技术来实现态势图像特征的提取,进而最终输出态势图的关键信息将是解决方案之一。此外,笔者所在团队也尝试利用深度学习技术对态势信息进行卷积提取,然后将提取信息与语义模型结合,生成当前态势的直观文本语义。而在前端利用强化学习进行实体单元控制,这样就可以将强化学习、深度学习、自然语言处理融合,在推演过程中实时生成方便人类理解的智能决策文本语义信息,这一工作对于实现推演系统中的人机融合具有积极意义。

2.4 分层强化学习

智能博弈对抗的建模过程面临两个难题,一个是动作空间庞大,另一个是奖励稀疏问题。面对这两个问题,有研究人员提出了分层强化学习的解决思路。该思路的核心是对动作进行分层,将低层级(low-level)动作组成高层级(high-level)动作,这样搜索空间就会被减小[52]。同时基于分层的思想,在一个预训练的环境中学习有用的技能,这些技能是通用的,与要解决的对抗任务的关系不太紧密。学习一个高层的控制策略能够使 agent 根据状态调用技能,并且该方法能够很好地解决探索效率较低的问题,该方法已在一系列稀疏奖励的任务中表现出色[61-62]。《觉悟 AI》同样设计了分层强化学习的动作标签来控制“英雄”的微观操作。具体来说,每个标签由两个层级(或子标签)组成,它们表示一级和二级操作。第一个动作,即一级动作,表示要采取的动作,包括移动、普通攻击、一技能、二技能、三技能、回血、回城等。第二个是二级动作,它告诉玩家如何根据动作类型具体地执行动作。例如,如果第一个层级是移动动作,那么第二个层级就是选择一个二维坐标来选择移动的方向;当第一个层级为普通攻击时,第二个层级将成为选择攻击目标;如果第一个层级是一技能(或二技能、三技能),那么第二个层级将针对不同技能选择释放技能的类型、目标和区域。这对于作战推演中不同算子如何执行动作也具有参考价值,每一个类型的算子同样存在不同的动作,例如坦克可以选择直瞄射击、间瞄射击、移动方向等,实际作战推演不同装备同样具有众多复杂的动作,通过这样的特征和标签设计,可以将人工智能建模任务作为一个层次化的多类分类问题来完成。具体来说,一个深层次的神经网络模型被训练以预测在给定的情境下要采取的行动。作战推演也可以参考层次化的动作标签来不断细化动作执行过程,进而训练解决复杂的动作执行难题。在作战推演中完全可以借鉴这种思路设计适用于作战场景的分层强化学习框架。南京大学的研究人员利用分层强化学习建立宏观策略模型和微观策略模型,根据具体的态势评估宏观策略模型,然后利用宏函数批量绑定选择微观动作,这样可以在不同的局势下选择对应的一系列动作,进而实现了分层强化学习在《星际争霸》环境中的应用[63]。分层强化学习比较通用的框架是两层,顶层策略被称为元控制器(meta-controller),负责生成总体宏观目标,底层策略被称为控制器(controller),负责完成给定的子目标,这种机制本质也对应作战推演中的战略、战役、战术3个层次,不同层次关注的作战目标各有不同,但又互相关联。其他相关改进是学者在奖赏函数设置、增加分层结构、保持分层同步、提高采样效率等方面改进分层强化学习[64]。

2.5 多agent强化学习

在游戏博弈对抗过程中必然需要考虑多 agent建模,而在作战推演中利用多 agent 技术实现不同作战单元的协同合作也是博弈智能研究的重点之一。在这方面OpenAI和AlphaStar在多agent深度强化学习方面使用了不同的技术思路。OpenAI 使用的是分布异构的多agent建模思路,每一个agent都有一个相同的训练神经网络,但是没有全局控制网络[37,47]。AlphaStar则是使用了一个集中的控制网络对不同的单元进行控制。还有一种思路是对于每一个agent,都建立属于各自的神经网络进行训练。第三种思路是最理想的,但是训练过程复杂,也难以适用于大规模的推演过程[43]。对于实际作战推演来说,除了要考虑多 agent 建模方法,还需要让每个 agent 具有柔性加入的能力,在对抗过程中可以按照需要随时加入所需要的作战单元,而不需要每次加入作战单元后,再重新训练一遍网络。基于此考虑,让每一个 agent 具有自己独立的神经网络将是更好的选择。

2.6 LSTM技术结合深度强化学习

《觉悟 AI》在设计过程中利用深度学习不断提取游戏界面的态势信息。利用深度学习虽然可以把一个对抗界面的所有特征提取出来,但是提取的是静态的某一帧的界面信息,并没有把时间步之间的信息关联起来。时间步一般指一帧,也可以指多帧,其关键是将历史的帧信息和现在的信息关联起来。基于此,需要引入长短期记忆(long short-term memory,LSTM)网络。让 LSTM 一次接收多个时间步信息来学习这些时间步之间的关联信息,从而让 LSTM 帮助“英雄”学习技能组合,并选择“英雄”应该关注的主视野和小地图的具体方面,进而综合输出合理的动作,也通过 LSTM 关联历史数据来训练强化学习的神经网络模型[65]。在实际作战推演过程中同样需要考虑这种情况,防止出现训练的AI为了某个战术目标而忽视了整体战略目标。

2.7 多属性决策结合强化学习

强化学习的回报值往往根据专家经验手工设置,但是这种手工设置的回报值的收敛性及智能性均难以保证,并且长时间训练才能评估设置的回报值的效果。因此可以考虑结合推演数据,结合多属性决策方法进行客观分析,总结提炼出合适的回报值。首先,从推演环境中获取各关键属性数据,如在陆战对抗环境提取作战单元位置、高程、类型、射程属性、打击属性、装甲属性等。以这些属性数据为基础,计算出对应的评估指标,如目标距离威胁、目标攻击威胁、目标速度威胁等,通过熵权法计算相应权重,并最终结合多属性方法对敌方威胁度进行排序,将其和强化学习的回报值函数进行关联,进而设置出更加客观合理的回报值函数,这样有利于提高强化学习训练的智能性,并有利于加快收敛。

作战推演技术难点及技术解决方案

3.1 冷启动问题

在对强化学习的训练过程中,研究人员总是会遇到训练过程时间长、难以收敛的问题,这种情况通常被称为冷启动问题。针对这个问题,现有研究人员提出了多种解决方案,比较有效的解决方案是利用专家的领域知识预先设计固定的先验知识,利用先验知识进行智能博弈训练,进而在强化学习的经验存储中得到高水平的训练数据。在强化学习的后期训练中直接利用这些先验知识对抗出来的经验数据进行模型训练,从而可以有效缩小探索空间和动作空间,进而保证强化学习可以快速训练出高水平的AI,避免了前期盲目探索的情况。在实际作战推演过程中,也可以考虑使用高水平指挥员的先验知识,提前进行形式化存储,进而在强化学习训练过程中导入先验知识,加快训练结果的收敛,得到较高水平的智能AI。

3.2 过拟合问题

在智能博弈对抗过程中经常会出现训练一定阶段后陷入局部最优结果的情况。表现为在智能兵棋比赛中,经过长时间训练后,强化学习训练出的结果是控制算子进行固定的线路和射击套路,这种情况可被称为过拟合现象。为了避免这种情况的出现,应该在算法设计中加入随机可能性,在一定比例的动作选择概率下随机探索,而不是完全按照强化学习算法给出的结果进行执行。其次,按照贝尔曼方程,应该在奖励函数设计过程中,考虑当前影响和未来影响的可变比重,即回报函数设计包括一定的可变性,而不是固定不变的。当然也可以利用强大的计算力,生成大量新的对手,从不同方面与需要训练的 agent 进行对抗,从而避免因为固定对手而导致的过拟合现象。

4.3 想定适应性问题

智能博弈的 AI 建模普遍存在适应性不高的问题,有部分研究人员开发的 AI 是针对某个固定想定开发的,导致更换博弈想定后AI性能大幅下降。考虑到大部分数据或任务是存在相关性的,通过迁移学习可以将已经学到的模型参数通过某种方式分享给新模型,从而加快优化模型效率。中国科学院自动化研究所的研究人员引入了课程迁移学习,将强化学习模型扩展到各种不同博弈场景,并且提升了采样效率[81]。DeepMind 在 AlphaZero 中使用同样的算法设置、网络架构和超参数,得到了一种适用于围棋、国际象棋和将棋的通用算法,并战胜了基于其他技术的棋类游戏AI[82]。《觉悟AI》引入了课程学习方法,将训练至符合要求的参数迁移至同一个神经网络再次训练、迭代、修正以提高效率,使《觉悟AI》模型能熟练掌握40多个“英雄”[6,36]。在作战推演中,更需要这种适用性强的通用 AI 算法,不需要在更换作战想定后重新训练模型,也只有这样才可以更加适应实时性要求极高的作战场景。

4.4 智能蓝方建模

对手建模指在两个 agent 博弈的环境中,为了获得更高的收益,需要对对手的策略进行建模,利用模型(隐式)推断其所采取的策略来辅助决策。智能蓝方建模主要是在具有战争迷雾的情况下,对对手进行建模,并预测对手的未来动作。其前提通常是博弈环境存在战争迷雾,我方在无法获取准确的对手信息的情况下,针对对方进行预测评估。在对抗过程中,一种假设是对手是完全理性的,对对手(队友)进行建模是为了寻找博弈中的纳什均衡策略。为了解决这一难点问题,阿尔伯塔大学的研究人员提出了反事实遗憾最小化(counterfactual regret minimization,CFR)技术,该技术不再需要一次性推理一棵完整的博弈树,而是允许从博弈的当前状态使用启发式搜索。另外,对手建模可分为隐式建模和显式建模。通常隐式建模直接将对手信息作为自身博弈模型的一部分来处理对手信息缺失的问题,通过最大化agent期望回报的方式将对手的决策行为隐式引进自身模型,构成隐式建模方法。显式建模则直接根据观测到的对手历史行为数据进行推理优化,通过模型拟合对手行为策略,掌握对手意图,降低对手信息缺失带来的影响[83]。总体来说,对手建模技术是智能博弈对抗是否有效的关键,只有建立一个可以高效预估对手行为的模型,才能保证智能博弈AI的有效性。

4.5 路径规划问题

路径规划作为智能博弈中的重要组成部分,其主要任务是根据不同的想定,针对每个单元在起始点和终止点之间快速规划一条由多个路径点依次连接而成的最优路径[84]。在智能博弈的背景下,最优路径的含义不仅仅是两点之间的距离最短,而是综合考虑博弈态势、资源情况和综合威胁后的最佳路径。但是,已有的路径规划算法主要以A-Star算法、Dijkstra算法、D算法、LPA算法、D* lite算法等为典型代表,在物流运输、无人驾驶、航空航天等领域都取得了显著成效。同时也有学者提出其他的路径规划算法,如基于神经网络和人工势场的协同博弈路径规划方法[85]等,但是在智能博弈的环境下,需要考虑的问题更加复杂,需要进一步对这些算法进行改进优化。

5 作战推演未来发展建议

5.1 智能作战推演通用框架

现有的游戏平台中也有比较成熟的AI开发通用框架(如 pysc2[86-87]),但是相比成熟的作战推演通用框架还有较大差距。智能作战推演系统可以设计一个适用于复杂环境的通用框架,该框架包括作战推演算子、地图、规则、想定。同时最关键的是设计通用的算法接口,这些接口可以方便智能博弈算法的设计与实现,如环境加载接口、环境重置接口、环境渲染接口、动作随机选择接口、执行动作接口等。同时,也可以提前设计智能作战推演的基本功能框架,包括地图编辑模块、想定编辑模块、算子管理模块、规则编辑模块、推演设置模块、数据分析模块、系统配置模块。其中最核心的是推演设置模块可以自由选择每局推演使用的智能算法,从而实现智能算法设计和作战推演环境开发的解耦,这样才可以保证智能作战推演的灵活适应性。通用框架中另一个重要的因素是可以提供AI使用的工具,例如对于深度学习的分层态势显示,可以直观地提供一个通用接口进行展现,方便指挥人员快速调用该接口实现智能算法的辅助决策功能。

5.2 智能战略、战役、战术决策方案制定

智能作战推演必然面对的问题是选择在战略、战役还是战术场景下应用。现阶段主要还是在战术层面进行智能算法的研究,包括国内的某智能兵棋推演大赛,各种想定只有算子数量种类的差别,但本质上都还属于战术智能决策。《墨子•未来指挥官系统》中的对抗想定更接近于战役层面的智能决策方案,现阶段对战略层面的智能决策的研究还比较少。其原因就在于面临的想定越宏观,智能决策的技术挑战越大,包括动作空间、状态空间的变化以及现阶段 agent 之间的协同交互还并没有很成熟。因此,当前考虑战术层面的智能决策更容易。如果要解决战略层面的智能决策,必然需要研究各agent之间的协同机制,还要考虑作战的后勤支持机制。然而当前尚未有游戏、作战推演在智能推演中考虑后勤机制的影响。另外,战术、战役、战略层面的方案制定技术思路也并不相同,有的研究以各agent独自训练、交互,进而涌现出智能决策方案。这一技术思路更加逼近真实场景,但是算力要求和技术实现难度都较高。另一思路是建立统一的宏观agent 模型,利用宏观 agent 控制所有算子进行推演,这一技术思路实现比较简单,所需的算力也较低,可以考虑将其作为初期实现的路径之一。

5.3 人机融合的智能作战推演模式建立

智能作战推演的未来趋势主要分为人不在环和人在环两种类型。人不在环主要类似于AlphaStar、OpenAI 的游戏智能,通过预先训练完成agent,完全由训练好的agent自主进行博弈对抗,左右互搏,实现方案的预演和推测。人在环的模式又分为两种,一种是实现人机对抗,国内已有这方面的比赛,通过开发训练好的智能算法 agent 与高水平指挥人员进行对抗,探测发现自身指挥问题并不断提高,可用于指挥人员训练场景。另一种人在环更加困难,即 agent 可以响应人的指令,并完成低层次的规划任务。主要还是由指挥人员进行整体战略宏观判断,并通过指令交互部署 agent 完成低层次任务,最后总体实现战略目标。同时,也需要对人机融合模式的框架进行探索,如将人类领域知识引入智能算法中,帮助智能算法更高效地实现智能作战推演。

5.4 开放性的仿真实验平台建立

随着智能博弈的兴起,国内外高校、研究所、企业都已逐渐开发完成各种类型的智能博弈平台。但是不同平台之间并不互通,相互独立,形成了各个平台的信息孤岛,在智能算法开发的过程中,面对新的平台就需要研究人员重新学习适应新的平台接口和架构,这浪费了研究人员大部分精力。另外,智能博弈的强化学习接口以及其他算法虽然在不同平台体现不同,但本质都一样,很有必要构建一个通用一体化智能博弈平台框架,减少不断重新开发、学习的过程,提高智能博弈平台的研究效率也势在必行。

6 结束语

本文构建并梳理了智能作战推演的国内外发展概况,详细介绍了智能作战推演所需要的各项技术难点及国内外进展,同时借鉴游戏 AI 领域的发展现状并将其与智能作战推演所需要的技术需求进行对比,分析现有技术还需要改进和优化的方向,也对智能作战推演的各个研究方向进行了归纳。可以为从事游戏AI、智能兵棋、智能作战推演等智能博弈领域的研究人员提供一定的思路。当前智能博弈的研究思路还主要以深度强化学习为基础,但绝不仅仅是深度强化学习技术,各种传统的智能算法和新的机器学习算法都可以作为智能博弈领域补充完善的技术力量。本文以作战推演技术需求为牵引,结合国内外游戏AI、兵棋推演相关实际发展情况,总结出虽然智能博弈依然还有很多难题需要解决,现有技术实现程度相比于实际应用还有较大差距,但智能博弈这一研究方向是未来智能决策研究发展的必由之路,相信最终会在各个相关领域得以实现。

参考文献

[1] 沈宇, 韩金朋, 李灵犀, 等. 游戏智能中的 AI: 从多角色博弈到平 行博弈[J]. 智能科学与技术学报, 2020, 2(3): 205-213. [2] 胡晓峰, 贺筱媛, 陶九阳. AlphaGo 的突破与兵棋推演的挑战[J]. 科技导报, 2017, 35(21): 49-60. [3] 叶利民, 龚立, 刘忠. 兵棋推演系统设计与建模研究[J]. 计算机与 数字工程, 2011, 39(12): 58-61. [4] 谭鑫. 基于规则的计算机兵棋系统技术研究[D]. 长沙: 国防科学 技术大学, 2010.

成为VIP会员查看完整内容
132

相关内容

「人机对抗中的博弈学习方法」最新2022综述
专知会员服务
113+阅读 · 2022年9月11日
智能博弈综述:游戏AI 对作战推演的启示
专知会员服务
116+阅读 · 2022年8月29日
智能博弈对抗方法:博弈论与强化学习综合视角对比分析
专知会员服务
189+阅读 · 2022年8月28日
结合进化算法的深度强化学习方法研究综述
专知会员服务
78+阅读 · 2022年7月16日
兵棋推演的智能决策技术与挑战
专知会员服务
209+阅读 · 2022年7月5日
兵棋推演的智能决策技术与挑战(自动化学报)
专知会员服务
86+阅读 · 2022年4月24日
专知会员服务
111+阅读 · 2020年12月31日
AlphaZero原理与启示
专知会员服务
32+阅读 · 2020年8月23日
兵棋推演的智能决策技术与挑战
专知
24+阅读 · 2022年7月5日
【阿里】游戏AI工程师-强化学习方向
深度强化学习实验室
0+阅读 · 2022年3月25日
历史最高分!腾讯「绝悟」AI 斩获 NeurIPS MineRL 竞赛冠军
人类专业玩家水平!自动化所研发轻量型德州扑克AI程序AlphaHoldem
中国科学院自动化研究所
0+阅读 · 2021年12月10日
兴军亮Science评述:多人德州扑克博弈新突破
中国科学院自动化研究所
19+阅读 · 2019年7月15日
国家自然科学基金
295+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
5+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
6+阅读 · 2012年12月31日
国家自然科学基金
8+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年10月13日
Arxiv
16+阅读 · 2022年5月17日
Arxiv
14+阅读 · 2021年11月27日
VIP会员
相关VIP内容
「人机对抗中的博弈学习方法」最新2022综述
专知会员服务
113+阅读 · 2022年9月11日
智能博弈综述:游戏AI 对作战推演的启示
专知会员服务
116+阅读 · 2022年8月29日
智能博弈对抗方法:博弈论与强化学习综合视角对比分析
专知会员服务
189+阅读 · 2022年8月28日
结合进化算法的深度强化学习方法研究综述
专知会员服务
78+阅读 · 2022年7月16日
兵棋推演的智能决策技术与挑战
专知会员服务
209+阅读 · 2022年7月5日
兵棋推演的智能决策技术与挑战(自动化学报)
专知会员服务
86+阅读 · 2022年4月24日
专知会员服务
111+阅读 · 2020年12月31日
AlphaZero原理与启示
专知会员服务
32+阅读 · 2020年8月23日
相关资讯
兵棋推演的智能决策技术与挑战
专知
24+阅读 · 2022年7月5日
【阿里】游戏AI工程师-强化学习方向
深度强化学习实验室
0+阅读 · 2022年3月25日
历史最高分!腾讯「绝悟」AI 斩获 NeurIPS MineRL 竞赛冠军
人类专业玩家水平!自动化所研发轻量型德州扑克AI程序AlphaHoldem
中国科学院自动化研究所
0+阅读 · 2021年12月10日
兴军亮Science评述:多人德州扑克博弈新突破
中国科学院自动化研究所
19+阅读 · 2019年7月15日
相关基金
国家自然科学基金
295+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
5+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
6+阅读 · 2012年12月31日
国家自然科学基金
8+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
微信扫码咨询专知VIP会员