体系对抗中的智能策略生成
2018-08-01张瑶马亚辉
张瑶 马亚辉
本文围绕体系对抗中的智能策略生成问题,重点分析了围棋和即时战略游戏等计算机博弈问题的技术发展,总结了智能策略生成可能用到的关键技术,提出体系对抗智能策略AI系统的组成架构,并讨论了智能策略AI的军事应用,为体系对抗的研究提供了一定的支撑。
一、引言
当前,战争形态正在由机械化战争向信息化战争演变。信息化战争的重要内涵和根本要求是体系作战,需要运用信息系统,把各种作战力量、作战单元、作战要素融合集成为整体作战能力,通过灵敏感知战场、分布指挥控制、快速精确打击、全维一体防护和动态综合保障,实现作战效能最大化和作战进程最短化,在作战样式上集中表现为体系的对抗。
由于体系对抗的复杂性、动态性和对抗性等特点,传统的经验式、规则性的系统难以满足瞬息万变的战场要求,而利用人工智能技术的智能化系统将会给我们提供一条新的途径。智能化的体系作战将成为未来的趋势,体系对抗的智能水平也将成为决定作战双方对抗优势的重要因素。
美国很早就开始探索人工智能技术在体系对抗中的应用。DARPA于2007年启动了“深绿”计划,“深绿”计划核心思想是借鉴“深蓝”,预判敌人的可能行动,从而提前做出决策。虽因经费削减等原因该计划于2011年暂停,但其提出的思路和方法值得借鉴。2015年12月,美国防部提出了第三次抵消战略,其发展方向是打造智能化作战体系,将带来以智能化军队、自主化装备和无人化战争为标志的军事大变革。2016年6月美国辛辛那提大学开发的AlphaAI系统,在空战模拟仿真器上,完胜经验丰富的美退役空軍上校。
目前国内军事信息系统基本停留在辅助劳力而非智能阶段,还需深入研究。
体系对抗是作战双方之间的博弈,博弈的本质问题是博弈参与方之间博弈策略的对抗。因此,体系对抗的关键是智能策略的生成。近年来,人工智能技术以人机大战为标志,在计算机博弈上取得突破性重大进展,这对体系对抗中智能策略的研究有重要的借鉴意义。
本文基于人工智能技术在计算机博弈问题上的进展,围绕体系对抗,综述体系对抗智能策略生成中的人工智能技术,分析体系对抗智能策略系统的组成,为体系作战的研究和设计提供一定的支撑。
二、计算机博弈
计算机博弈是人工智能的一个重要研究分支,围棋、即时战略游戏、雅达利、扑克等游戏AI都是计算机博弈的典型问题。
(一)围棋:从AlphaGo到AlphaZero
2016年,谷歌DeepMind发表于《Nature》上的计算机围棋AlphaGo击败了人类顶尖职业棋手,成为人工智能领域的一个里程碑事件。在此基础上,2017年DeepMind又研发了AlphaGo Zero,完全不用人类棋谱数据,就能达到更强的性能。而在2017年底,DeepMind又推出了更加通用的AlphaZero,在国际象棋、日本将棋以及围棋上分别战胜了此前最强的AI,而且在这三种游戏上,AlphaZero所用的算法设置、网络结构以及超参数都是完全相同的,是一种在多种任务上达到超越人类水平的通用性算法。
1. AlphaGo
计算机围棋被认为是人工智能领域的一大挑战,这是因为其搜索空间非常巨大并且棋盘盘面和走子难以评估。AlphaGo采用深度卷积神经网络来减少搜索宽度和搜索深度:使用策略网络采样动作来减少搜索宽度,使用价值网络评估盘面来减少搜索深度。
AlphaGo 主要包括三个策略网络和一个估值网络,最后用蒙特卡洛树搜索将策略网络和估值网络整合起来,形成完整的系统。策略网络主要用于预测下一步走棋,估值网络主要用于评估当前盘面。AlphaGo 利用人类下棋的样本数据,采用卷积神经网络训练了监督学习策略网络,又用线性softmax回归训练了快速走子策略网络,并用强化学习训练了增强策略网络,用卷积神经网络训练了估值网络。
AlphaGo完整的算法流程如图 1所示,包含离线学习与在线对弈两个阶段。在离线学习阶段,采用人类棋谱和自对弈的方式获取样本数据,利用样本数据进行训练,得到监督学习策略网络、快速走子、增强学习策略网络以及估值网络。在在线对弈阶段,利用蒙特卡洛树搜索将训练好的网络整合起来,给出下一步落子的位置,从而完成整个过程。
2. AlphaGo Zero
AlphaGo Zero与之前AlphaGo的区别在于:只用自对弈强化学习来训练,从随机下法开始,完全不用任何人类数据;只用黑棋和白棋作为输入特征;只用一个神经网络,而不是分成策略网络和价值网络;采用的树搜索更简单,只依赖于一个神经网络来评估盘面和采样走子,不用蒙特卡洛走子。
AlphaGo Zero 完全不用任何人类数据,也不用给出除了基本规则外的其他领域知识,只用深度强化学习和蒙特卡洛树搜索就能训练到超过人类水平,显示了强大的性能。
3. AlphaZero
DeepMind 发表AlphaGo Zero之后,寻求将这种算法泛化到其他任务中的可能性,提出了AlphaZero。它是一种不使用游戏规则以外的任何知识,可以从零开始通过自对弈强化学习在多种任务上达到超越人类水平的通用性算法。AlphaZero在国际象棋、日本将棋以及围棋上分别战胜了此前最强的AI,展现出了强大的性能;而且在这三种棋类游戏上,AlphaZero都使用了相同的算法设置、网络结构和超参数,显示了通用性。
AlphaZero与AlphaGo Zero的算法基本相同,在技术上的不同点有:AlphaGo Zero 评估和优化赢率,只考虑胜、负两种结果,而AlphaZero 则评估优化期望结果,考虑了平局或其它可能结果;AlphaGo Zero 利用了围棋的旋转和镜像不变性等特点,扩大训练数据,并且在MCTS中,在神经网络评估盘面之前,使用随机选择的旋转或反射对盘面进行变换。由于国际象棋和日本将棋的规则不对称性,在AlphaZero的MCTS中,没有扩大训练数据,也没有对棋盘盘面进行变换;AlphaGo Zero中自对弈的数据是通过之前训练过程中的最优模型生成,用于训练更新当前最新模型。而Alpha Zero 则只更新一个神经网络,自对弈的数据直接由当前最新模型生成,并用于训练更新当前最新模型;AlphaGo Zero中的超参数是通过贝叶斯优化得到的,超参数的选取会对结果产生很大的影响。而AlphaZero 中所有的对弈都使用相同的超参数,无需使用特定的超参数调整方法。
AlphaZero 化繁为简,算法相当简洁漂亮。AlphaZero 解决规则明确的完美信息博弈很有效,但是对于更复杂的其他问题,AlphaZero 依然会遇到困难。
(二)即时战略游戏
人工智能技术迈向通用人工智能的一个基础,就是让不同智能体之间实现合作与竞争。经典即时战略游戏,如《星际争霸》、《文明》等游戏,是进行此类实验的绝佳实验环境。
即时战略游戏具有很多不同于围棋的特点,比如,即时战略游戏是关于多智能体的问题,需要多方竞争资源,而每方操作多种兵力进行合作完成共同目标;即时战略游戏是不完全信息博弈,存在“战争迷雾”;动作空间巨大;游戏中操作方所做决策的反馈结果时间太迟,并且每个参与者都只有很短的时间思考行动计划等。
从即时战略游戏的游戏特性以及操作流程来看,即时战略游戏需要进行序列决策。根据决策特性,即时战略游戏中的决策通常分为宏观管理和微观操作。宏观管理负责宏观上的长期的决策,包括如何建造基地、如何研发科技和如何摧毁敌方基地等。微观操作是在短期内参与方控制一个游戏单位或者游戏单位群组进行游戏行为。
即时战略游戏AI中的微观操作和宏观管理所用的学习训练方法是不一样的。微观操作需要解决的关键问题是战术决策,它的学习训练方法包括强化学习、博弈树搜索、贝叶斯模型、神经网络、基于案例的推理等。宏观管理需要解决的关键问题是战略决策,它的学习训练方法包括行为树、进化算法、分层规划、状态空间规划、推理等。
星际争霸AI的研究环境平台有阿里巴巴开源的Gym StarCraft,谷歌DeepMind开发的SC2LE, Facebook公司开发的ELF等。
关于星际争霸AI的研究,DeepMind 在SC2LE平台上应用A3C算法实现收集矿石、与敌方单位战斗等简单任务。阿里巴巴与伦敦大学合作,以游戏“星际争霸1”中的微观战斗场景为测试环境,引入多智能体双向协调网络,可以自动学习各种最佳策略来使多个智能体协同作战。
(三)其他游戏
计算机游戏中研究得较多的还有雅达利(Atari)游戏和扑克等。深度强化学习算法DQN在雅达利游戏上取得了巨大突破。扑克是不完全信息博弈,玩家对历史事件只能进行部分观察,而看不到对手的信息。2016年由阿尔伯塔大学开发的DeepStack和由卡耐基梅隆大学开发的Libratus都在一对一无限注德州扑克比赛上击败了人类职业选手,表明在不完全信息博弈中人工智能也可以发挥优势。
三、智能策略生成中的AI技术
体系对抗中的智能策略生成问题具有复杂性、实时性、动态对抗性等特点,涉及多種理论技术,如深度学习、强化学习、元学习、模仿学习、少样本学习、多任务学习、多智能体学习、迁移学习等。
(一)深度学习
深度学习是机器学习中的一种方法,自2006年Hinton等人提出深度置信网络后,在语音识别、图像分类、自然语言处理等信号处理和人工智能任务上取得了非常好的效果,受到了极大关注。
传统的机器学习方法需要人工提取特征,而深度学习直接从原始输入信号出发,逐层的将低层次特征组合为更 层次的抽象特征表示,并利用中、 层次的特征表示学习输入和输出之间的复杂的映射关系。与浅层结构相比,深层结构能更有效地表征复杂函数。
常用的深度神经网络模型有深度信念网络、栈式自编码网络、卷积神经网络、递归神经网络、长短时记忆网络、生成对抗网络等。
(二)深度强化学习
在强化学习中,智能体通过与环境的交互,自主地了解环境并完成任务。强化学习以试错的方式与环境进行交互,通过最大化累积奖赏的方式来学习最优策略,对于任意的状态,最优策略可给出相应的动作。
经典强化学习中状态空间和动作空间都是离散有限的,可以使用表格来记录值函数。基于表格值的经典强化学习算法包括时序差分学习算法、Sarsa学习算法以及Q学习算法等。
如果状态空间维数很大,或者状态空间为连续空间,此时基于表格值的强化学习算法不适用,可以采取函数近似的方法,将策略或值函数用一个函数显示描述。最近几年发展起来的深度强化学习算法,主要有基于值函数的DQN及其扩展算法,基于Actor-Critic的A3C算法,基于策略梯度的TRPO、DDPG算法,以及其他类型的深度强化学习算法,如分层深度强化学习、多智能体深度强化学习等。
(三)元学习
由于深度强化学习太依赖于巨量的训练,并且需要精确的奖赏函数,然而对于现实世界的很多问题来说,设计好的奖赏函数是比较困难的,也没有办法无限量训练,这就需要智能体能够快速学习。人类之所以能够快速学习的关键是人类具备学会学习的能力,能够充分的利用以往的知识经验来指导新任务的学习。因此,让机器能够快速学习来应对新任务就需要研究元学习。
元学习是人工智能领域继深度强化学习之后又一重要研究分支。元学习可以理解为要学习一种学习能力。关于元学习的研究目前处于刚起步的状态,呈现一种百花齐放的趋势,有很多不同的研究思路出现,比如学习神经网络训练过程中的超参数或神经网络的结构以及优化器等以往需要人为设定的东西;通过在神经网络上添加记忆来实现充分利用以往的经验学习;在强化学习中,通过在输入上增加以往的奖赏或状态动作等信息来推断环境或任务级别的信息;同时运用多个任务的合成梯度方向进行训练等。
(四)其他AI技术
在智能策略生成中,可能用到的其他AI技术有迁移学习、小样本学习、模仿学习、多任务学习、多智能体学习等,还有传统的AI技术如搜索、推理、规划、行为树等。
由于体系对抗中的智能策略博弈的复杂性,智能策略生成可能需要人工智能理论、多智能体理论、博弈论等多种理论技术的交叉综合。
四、智能策略AI 系统组成
智能策略AI系统由仿真系统和智能策略AI组成。仿真系统包括仿真模型(战场环境模拟、各作战单元仿真模型等)、推演规则等。智能策略AI包括智能感知系统、智能决策系统、智能武器控制系统等。智能感知是智能决策的基础,智能决策为智能控制提供行动的方向。
智能感知包括战场态势生成,战场态势预测,战场态势评估等。战场态势生成包括情报收集与综合、多源信息融合、目标综合识别等。战场态势预测包括对手意图识别、对手意图预测等。战场态势评估包括战损评估、双方赢率估计等。
智能决策主要解决下一步如何行动的问题。智能感知的输出作为智能决策的输入。智能决策包括宏观对抗策略和微观对抗策略。对抗策略包括策略生成、策略评估、策略优化等。
智能控制主要解决各作战单元或武器平台如何执行智能决策的输出结果。
五、智能策略AI的军事应用展望
体系对抗的关键是智能策略博弈。智能策略博弈可以应用于兵棋推演,以及军事指挥信息系统的设计等方面。兵棋推演是研究现代战争的有力工具。在兵棋推演中,对抗双方或多方运用兵棋,按照一定规则,在模拟的战场环境中对设想的军事行动进行交替决策和指挥对抗的演练。兵棋推演的作用是推演各方通过排兵布阵及对战场资源的利用来模拟战争,通过对推演过程中指挥员决策的分析来寻找适合这场战争的最佳策略。兵棋推演是智能策略AI的一个重要应用场景,可以利用智能策略AI进行人机对抗、机机对抗。军事指挥信息系统是作战体系的中枢神经,军事指挥信息系统的智能化可以通过智能策略AI重点解决战场态势理解、方案分析和辅助决策等问题。
六、结语
本文围绕智能体系作战中的智能策略,从人工智能技术大放异彩的计算机博弈问题开始,重点分析了AlphaGo、AlphaGo Zero和AlphaZero等计算机围棋的技术原理,以及即时战略游戏等游戏AI,总结了体系对抗中智能策略生成可能用到的人工智能技术,提出体系对抗中智能策略AI系统的组成架构,并讨论了智能策略AI的军事应用。体系对抗中的智能策略生成是涉及实时性需求、不完全信息博弈和多智能体协同等多个问题的复杂性系统问题,传统算法难以满足任务的需求,需要综合运用多领域的先進理论和技术来进行突破。