基于仿真博弈系统的指挥控制智能化发展设想*

2019-08-27 03:45刘松毅
火力与指挥控制 2019年7期
关键词:引擎机器样本

金 欣,刘松毅

(1.信息系统工程重点实验室,南京电子工程研究所,南京210007;2.中国卫星发射测控系统部,北京100011)

0 引言

在2016年之前,指挥控制工程领域对发展智能化还保持着相对谨慎的态度,这多半是与早些年专家系统等传统AI技术的兴衰有关。2016年是见证AI迈上新台阶的一年,继AlphaGo战胜人类围棋手之后,Alpha AI再次战胜人类飞行员,让人们看到了指挥控制智能化的曙光[1-2]。AI改变指挥控制是未来的发展趋势。

然而战争并不像围棋那么简单,现代化战争也绝不仅仅是空中格斗那么单一。美军目前还主要是把智能化定位在无人机之类的战术平台上,指挥控制智能化要走的路还很长。首先遇到的问题就是缺乏指挥训练数据,这为机器学习带来了难题。机器学习需要大规模、高质量的样本数据作为基础。数据不够自然无法发展AI,这是一个“巧妇难为无米之炊”的问题。

本文从AlphaGo和美军“深绿”、“阿尔法”中得到启示,提出通过打造逼真的“模拟战争游戏”,积累训练数据,用于机器学习的思路,它对提升指挥控制智能化水平,研究指挥控制技术具有一定的指导意义。

1 深绿、AlphaGo和Alpha AI的简要分析

美军“深绿”计划[3-7]于2007年启动,2011年因经费、领导更换等原因被终止。最初主要是用于陆军领域,受“深蓝”计算机战胜人类棋王的影响,故称“深绿”。其主要目的是动态预测战场的变化趋势,帮助指挥员提前进行思考,判断是否需要调整计划,并协助指挥员生成新的替代方案。“深绿”的可贵之处,在于采用的是一种基于仿真环境的实践思维,比任何理论模型更有说服力。遗憾的是,由于当时AI的技术发展水平限制,“深绿”中并没有用到机器学习技术,导致实践积累的经验没能转换成知识。

2016年,AlphaGo战胜李世石,被认为是“认知智能”进步的里程碑。对弈知识通过深度学习自己掌握,具有全局综合和局部优化的平衡能力,甚至发现人类没有的围棋着法,比人更接近“围棋之神”。2017年,AlphaGo Zero再度刷新纪录,凭借强化学习的方法,以100∶0完胜李世石版AlphaGo。AlphaGo的制胜之道,在于采用的是一种基于游戏环境的机器学习思维,在人工智能发展到当下的水平,终于学有所成。但问题是,AlphaGo采用的方法可能无法照搬到军事领域,毕竟千差万别,其挑战星际争霸也还未获捷报。

美国辛辛那提大学很早就开始研发AI空战模拟训练系统。2016年6月,一款名为“阿尔法”的AI软件,在众多AI软件中胜出,并对战人类顶尖飞行员,获得了100%的胜利。“阿尔法”面对的问题比AlphaGo简单,属于“动作及简单战术行为”智能,但通过对传统人工智能方法的有机结合,也取得了优异的成绩。“阿尔法”采用的是一种基于仿真训练数据学习的思维,是仿真实践和机器学习两种思维的结合,颇具参考价值。

2 指挥控制+机器学习遇到的难题

众所周知,机器学习是从大量数据中挖掘隐藏的规律和模式,对样本数据的规模和质量有着较高的要求。首先,样本数据的数量规模要大,尤其是深度学习,需要极其庞大的数据量支撑,数据量小会严重影响学习的效果,导致模型欠拟合。其次,样本数据的质量要高,因为噪声也会严重影响学习的效果。最后,样本数据的覆盖性要好,对各种类型的样本都要能够覆盖,且数量相对均衡,否则容易造成过拟合。

指挥控制样本数据只能从作战实践中积累,而和平时期作战实践以军事演习训练为主。然而,小规模作战演习较多,大规模军事演习一年也就数次。采集的数据大多未经清洗、加工、标注、整理,质量较低。受安全性、成本等限制,演习训练的对抗激烈程度、战术灵活程度、装备使用程度较低。演习数据主要围绕训练需求产生,无法根据机器学习任务订制,往往会出现样例类型较为单一、样本分布不均衡等问题。因此,指挥控制领域目前能够产生的样本数据难以满足机器学习所需,成为智能化面临的一大难题。

3 战争游戏+机器学习的思路

分析AlphaGo和美军的“深绿”、“阿尔法”,发现它们有一个共同点:都是从基于仿真的实践出发,从中汲取经验或训练机器学习模型。相比实兵演习训练,仿真战争游戏具有安全、经济、高效、可定制等显著优点,是培育智能指挥控制的理想环境。使用这套环境可以在短时间内积累大量的对抗样本数据,基于这些数据可以开展多种机器学习研究。

图1 螺旋式上升的学习之路

从目标感知数据、游戏指令数据、结果统计数据3类最常见的数据出发,可以学习到以下3类模型:一是实体单元的行动决策模型,即根据实体单元每次执行的行动和收效反馈不断学习优化,知道什么情况下采取什么行动能收到好的结果。二是指挥决策模型,即根据游戏玩家制定的整体行动决策,和一波行动执行完后取得的阶段性成效反馈不断学习优化,知道对什么样的任务目标,制定什么样的作战方案,能够取得好的结果。三是交战裁决模型,即根据玩家的指令和最终结果统计数据,可以学到在什么样的战场环境下,执行什么样的行动,能够产生什么样的结果。

建议从战术级开始打造战争游戏,逐步向战役级、战略级延伸。一方面,下层的模型比较容易构建,越往上层越难。另一方面,上层的模型有可能从下层游戏数据中学习建立。战术级游戏中,指挥对象主要是飞机、坦克、舰船之类的平台,可控行为主要是机动、射击、躲避攻击之类的战术动作。这些行为的能力、状态主要受武器装备性能、地理环境、通信及探测保障等物理模型制约,比较容易建模。行动规则比较明确,例如受到攻击时是否躲避、发现目标时是否主动开火等,也比较容易建模。平台间的探测发现、打击命中概率等行为的效果,主要受物理模型制约,目前已经积累了不少。战役级游戏中,指挥对象主要是战术部队,可控行为主要是战术任务,如侦查某个基地、打击某个部队等。这个级别的行为能力、状态,以及指挥决策、效果裁决等模型都较为复杂,难以直接构建。但有了大量战术级游戏样本数据之后,就可以尝试用机器学习的方法建模。到了战略级游戏中,指挥对象为战役级部队,可控行为也是更高层次的任务类型。模型更加复杂,但同样可以通过战役级游戏的数据学习得到。只是这种学习过程更加漫长,需要积累的案例数据更多。

我们看到,随着游戏层级的提高,指挥对象粒度越粗,行为层次越高,模型越复杂。但低一级的游戏数据积累到一定程度,高一级的模型就能够学习得到,指挥对象就能够智能化地执行任务,高层级的玩家就不用执行太多的“微操作”,从而加快学习的速度。总结归纳出来就是,通过低层级的游戏学习积累低层级的智能,用于打造高层级的游戏,再去学习积累高层级的智能,最终实现智能水平的螺旋式上升。

4 系统架构

系统架构设计如图2所示,主要由用户功能系统、游戏引擎、模型库及相关软件构成。

最底层是模型库及相关软件。游戏中的仿真模型主要包括环境模型、实体模型、决策模型、裁决模型4类。环境模型模拟的是各种战场环境及其动态变化过程。实体模型模拟的是主战平台、部队等各种指挥对象的状态、能力和行动过程。决策模型模拟的是各级平台操控人员、部队指挥人员的决策规则。裁决模型模拟的是实体行为在实际环境下产生的作用效果。模型的逼真度是游戏获得良好用户体现的关键。因此,必须预留模型的开发接口和学习工具,支持开发者对模型的持续改进,和基于数据的模型学习优化。

图2 系统架构设计

中间层是游戏引擎。引擎的基本功能是导调控制,依据剧情想定和用户操作的驱动,按照时间片轮番调度各个仿真模型运行。模型之间是有交互的,引擎要负责管理模型之间的数据通信。不同模型运行的时间步长会有所不同,引擎要负责相互间的时间同步。模型仿真的结果最终要显示到用户界面上,引擎负责画面的渲染。为了支持游戏过后的分析评估,引擎还应当支持游戏中各类数据的采集和游戏过程的回放。

最上层是用户功能系统。首先为游戏设计人员提供功能软件,用于编辑各种游戏想定,包括场景、兵力、事件等。其次为玩家提供战场态势、我方行动计划及协同指挥信息的显示,以及下达指挥命令的操作功能。再次为导演人员提供对游戏过程及后台模型的干预调整,和对游戏过程及结果数据的各类分析评估功能。

5 关键技术

5.1 游戏AI建模技术

上述很多仿真模型在传统游戏中已较为成熟,只是逼真度进一步提高的问题,例如环境模型、实体被调度行为模型、裁决模型等。还有些模型在传统游戏中没有或较弱,例如决策模型,也就是常说的游戏AI模型。这些模型现在都做得较为简单,主要是为了训练玩家快速上手而设计的。AI模型太过简单会导致对手看起来很“笨”,很容易被欺骗或诱导。为了提升游戏的体验,吸引玩家的兴趣,如何提升游戏AI也是当下游戏行业中的一个热点方向。要打造战争游戏,AI模型则更加重要。实际作战中飞行员、坦克手以及编队指挥官的决策模型要复杂得多。如何逼真地表达模拟他们的判断和决策方法,是有待深入研究的。

5.2 多功能游戏引擎技术

提到游戏引擎,讨论较多的往往是画面的渲染效果。对于战争游戏而言,更重要的是引擎对于训练玩家指挥员或战法实验分析等应用的支持。从训练玩家指挥员的角度,引擎应当支持人在回路和人不在回路两种模式。人不在回路模式就是完全依靠AI模型驱动指挥对象的行为,玩家只看不操作。人在回路模式一是指玩家负责指挥各个对象的行为,二是指玩家可以实时在线修改实体的决策模型,使之在后续游戏过程中作出不同于之前的自主行为决策。从战法实验分析的角度,引擎应当支持类似软件调试运行模式。把一场游戏完整地玩完是需要耗费时间的。为了实验战法战术,往往会挑选一个游戏过程片段,反复尝试用不同的行动过程玩出不同的结果进行对比。还有可能设计一些实验因子,以批处理的方式自动完成大样本推演实验。如此等等,随着实验分析功能的增加,会对引擎提出各种新的要求。

5.3 数据采集及分析评估技术

传统的游戏通常会提供一些简单的统计分析功能,比如基本的战果、战损和完成任务的时间、消耗资源和金钱的数量等,以及简单的回放分析功能。这些功能对于评价一个玩家的水平和总结经验教训是够了,但对于战法实验分析和机器学习还远远不够。从战法实验角度,要对多次实验结果的对比分析、聚类分析、单项/多项指标关联统计分析等。战法实验分析的一个主要方法就是发现问题,为此游戏应当支持溯因分析。回放是一种基本的溯因分析手段,但只能看到一些表面现象。为了分析本质原因,玩家可能会增加一个可视窗口,观察关键状态参数随着不同游戏过程变化的差异。为了找出收效最佳的战法战术运用方式,需要提供根据大样本实验结果统计和挖掘的寻优分析。此外,还有一个关键功能是敏感性分析,即通过设计实验因子得到多次实验结果,用来分析不同因子变化对结果影响的敏感性。

5.4 模型学习优化技术

当采集积累了大量游戏数据之后,模型的学习优化就成为可能,主要是针对AI模型。从机器学习的角度,第1步是样本数据的构造。针对每一个学习任务,如何从众多数据中抽取相应的输入-输出对作为合适的样本,如何保证样本的典型性和覆盖性,如何划分训练集和测试集,选取哪些特征参数作为输入,对输出的结果如何打上标签,当输入特征参数太多以致特征向量维度过高时如何降维等,都是样本数据构造中需要考虑的问题。机器学习的第2步是训练模型的选取和设计。机器学习训练模型有很多种,包括决策树、神经网络、支持向量机、贝叶斯分类器、概率图、关联规则等,具体又可以细分出数十种。按照天下没有免费午餐的定律,没有一种模型能够适用于任何样本集。在某一类样本集上取得较好性能的模型,必然在另一类样本集上性能较差。因此,针对一个样本集,选择哪种模型,以及模型的细节部分如何设计,都需要结合实验不断分析调整。机器学习的第3步是模型的训练过程。在模型的训练过程中,需要不断地人工调整模型参数,以便让模型更好地去适应要学习的问题。因此,模型参数调整也是需要结合具体问题具体研究的。

6 结论

军事作战指挥控制不同于简单的棋类游戏,除了复杂性以外,样本数据难以达到机器学习所需的规模和质量也是一个关键问题。相比实兵演习训练,本文提出了一种更加安全、经济、高效、可灵活订制的样本数据积累方法,即打造逼真的模拟战争游戏,从战术级开始向战役、战略级延伸,通过采集指挥人员游戏过程中的指令和态势数据,学习训练战场态势认知、指挥决策制定等高层次模型,从而使得指挥控制智能化水平螺旋式上升。围绕该思路,设计了战争游戏的系统架构,梳理了战争游戏中的关键技术。下一步研究将围绕该思路,选取典型作战应用场景,开展具体的游戏设计工作,构建游戏引擎,开展AI模型研究,数据采集分析和模型学习优化实验,验证上述思路的可行性。

猜你喜欢
引擎机器样本
江阴市“三个创新”打造危化品安全监管新引擎
机器狗
机器狗
新海珠,新引擎,新活力!
车坛往事4:引擎进化之屡次失败的蒸汽机车
规划·样本
未来机器城
人大专题询问之“方城样本”
随机微分方程的样本Lyapunov二次型估计
“官员写作”的四个样本