首页 行业 最新信息 查看内容

靠着两个不公平优势,AI玩《星际争霸》碾压了人类

2019-2-20 19:34| 发布者: | 查看: 46| 评论: 0

摘要:   编者按:继在最复杂的棋类游戏击败了人类世界冠军之后,Google 的 DeepMind 又瞄准了最复杂的视频游戏实时策略游戏《星际争霸》。经过短短两周的训练之后,前不久,其 AI AlphaStar 以两个5:0 分别击败了两位顶 ...

  编者按:继在最复杂的棋类游戏击败了人类世界冠军之后,Google 的 DeepMind 又瞄准了最复杂的视频游戏——实时策略游戏《星际争霸》。经过短短两周的训练之后,前不久,其 AI AlphaStar 以两个5:0 分别击败了两位顶级的人类职业玩家,令世人再度感到震惊。不过,AI 的能力真的有这么强吗?arstechnica 网站的一篇文章对此进行了剖析。

靠着两个不公平优势,AI 玩《星际争霸》碾压了人类

  在第四场比赛的一场决定性的战斗中,2 队 AI 控制的追捕者逼近 Grzegorz "MaNa" Komincz 的基地

  2014 年 Google 收购的 AI 初创企业 DeepMind,其最知名的成就也许是成为第一个击败人类围棋世界冠军的 AI。在掌握了全世界最具挑战性之一的棋类游戏之后,你接下来又会干什么呢?攻克最复杂的视频游戏。DeepMind 于是决定写一个 AI 来玩实时策略游戏星际争霸2。

  星际争霸要求玩家收集资源、建立很多的部队,然后利用这些来摧毁对手。星际争霸对 AI 尤其具有挑战性,因为玩家必须在几分钟的游戏时间内制订长远计划,并在面临敌人攻击时实时地进行调整调度。DeepMind 称在自己之前,还没人能够设计出与最好人类玩家水平接近的星际争霸 AI。

  最近 DeepMind 宣布了一项重大突破。其星际争霸 AI AlphaStar 分别以两个5:0 击败了两位星际争霸的顶级玩家——Dario "TLO" Wünsch 与 Grzegorz "MaNa" Komincz。

  AlphaStar 也许是最强的星际争霸 AI。但它的成就未必像乍看起来那么大,因为这不是一项完全公平的比赛。

  训练 AlphaStar 用了“长达 200 年”的虚拟游戏素材

  DeepMind 称“AlphaStar 的行为由一个深度神经网络生成,该网络接收裸游戏界面(游戏单位及属性清单)的数据输入,然后输出一系列构成游戏动作的指令。说得具体一点,该神经网络架构应用了一个 transformer 作为躯干,结合了一个深度 LSTM 内核、一个自回归策略头、一个指针网络,以及一个集中化的价值基线。”

  这些专业的说法很绕,不过 DeepMind 解释了训练其虚拟星际争霸玩家改进技巧的部分细节。

  首先他们用有监督学习帮助 AI 学习模仿人类玩家的策略。这种强化学习技巧足以开发出一个能玩的星际争霸 2 机器人。DeepMind 称这个初始的机器人“95% 的时间内击败了内置的精英级 AI(相当于人类玩家的黄金级)。”

  DeepMind 然后靠这个 AI 派生出来多个版本,每一个的游戏风格都略有不同。所有的 AI 都被放进一个虚拟的星际争霸联赛当中,每一个 AI 会跟其他 AI 不停地挑灯夜战,不断地从错误中吸取教训,然后持续地演进自己策略。

  DeepMind 写道:“为了鼓励联赛的多样性,每一个 AI 都有自己的学习目标:比方说,要击败哪些竞争对手,要增加哪些偏向于指导 AI 如何玩游戏的激励因子。某个 AI 的目标可能是击败特定对手,而另一个 AI 可能是如何击败一群竞争对手,但是是靠做出更多特定游戏单位来做到的。”

  按照 DeepMind 的说法,一些 AI 积累的游戏用时相当于人类玩 200 年的时间。在 2 周之内,这个进化过程极大地改进率 AI 的平均技能水平:

靠着两个不公平优势,AI 玩《星际争霸》碾压了人类

  到最后时,DeepMind 挑选了其中 5 个最强的 AI 来应战人类玩家。这种方案的后果之一是人类玩家在每一场比赛时都要面对 AlphaStar 不同的对战策略。

  AlphaStar 在开始的游戏中具备一项不公平的优势

  DeepMind 当时还邀请了游戏主播在复盘时对赛况进行评论。主播被 AlphaStar 的“微”能力——也就是在激战正酣时迅速做出战术决策的能力给震惊到了。

  这种能力在 AlphaStar 与 Komincz 对战的第四场比赛中表现得最明显。Komincz 是两位人类选手中较强的那位,而第四场也是 Komincz 最接近获得胜利的一场。这场比赛的高潮部分是 Komincz 由几种单位类型(不朽者、执政官、狂热者)的部队被 AlphaStar 完全由追猎者的部队围攻。

靠着两个不公平优势,AI 玩《星际争霸》碾压了人类

  AlphaStar v. Komincz 的第四场比赛中,AlphaStar 的追猎者(蓝)从三方攻击 Komincz 的不朽者、执政官、狂热者(红),AlphaStar 的追猎者最终赢得了比赛继而摧毁了 Komincz 的基地。

  追猎者并没有特别强大的武器和装备,所以跟不朽者和执政官拼刺刀的时候一般都是要输的。但是追猎者行动快,而且有一门叫做“闪现”的绝技,可以瞬间传送到范围内的目标可见地点。

  这就为 AlphaStar 创造了一个机会:用一大群追猎者进行攻击,让前排的搞搞破坏,接着在被干掉之前闪现到后排,然后再慢慢补血。如此反复轮换,AlphaStar 就可以在自己损失不大的情况下对敌方造成大量破坏。

  这种办法的不好之处是需要玩家持续的注意力。玩家需要监控追猎者的健康状况,找出需要闪现溜掉的追猎者。这就有点棘手了,因为星际争霸玩家往往要照顾一堆的东西——需要关心基地新的单位的建设,侦查敌军基地,盯住敌人进攻等等。

  观察 AlphaStar 与 Komincz 第四场大战的评论员对 AlphaStar 的微能力感到惊叹。

  评论员 Dan Stemkoski 说:“这个技巧我们看到 AlphaStar 一直在用。”。AlphaStar 会攻击 Komincz 的部队然后在自己遭受重大伤害前闪现溜走。他补充说:“我觉得大多数职业玩家玩到这种程度时基本上追猎者都要耗光了”。

  AlphaStar 的表现尤其令人印象深刻,因为它一度对不同地方的多组追猎者采用这种战术。

  评论员 Kevin "RotterdaM" van der Kooi 说:“在星际争霸 2 这样的游戏里面做这个是特别困难的,如果你的部队一部分在屏幕下方,一部分在屏幕上方的话,想要同时做这件事情是特别困难的。这么好的控制是现象级的。”

  Stemkoski 补充说:“真正令人震惊的是当我们看看每分钟动作数时,其实 AlphaStar 是没那么高的。这是一个可以接受的专业级速度。”

  DeepMind 制作了一幅图来说明这一点:

靠着两个不公平优势,AI 玩《星际争霸》碾压了人类

  正如这张图表显示那样,顶级的星际争霸玩家可以非常迅速地发布指令给自己的部队。Grzegorz "MaNa" Komincz 在跟 AlphaStar 对战时的平均 APM(每分钟动作数)是 390(每秒钟超过 6 下!)。不过当然了,计算机程序轻易就能在一分钟之内执行数千动作,那种对部队的控制频度绝对是无人能敌的。

  为了避免这一点,DeepMind 称自己给 AlphaStar 的 APM 设定了上限。DeepMind 研究人员 Oriol Vinyals 在 Reddit 上写道:“我们设定 5 秒间隔的最大 APM 值是 600,15 秒间隔的最大 APM 是 400,30 秒间隔的是 320,60 秒间隔的是 300。”

  不过另一位 reddit 用户迅速指出,5 秒钟在星际争霸游戏里面已经算很长了。这些限制似乎意味着 AlphaStar 可以在 1 秒钟之内执行 50 个动作,或者以每秒 15 个动作的频率执行 3 秒钟的动作。

  更重要的是,AlphaStar 有能力以外科手术般的精度使用 API,而人类却受制于计算机鼠标的机械限制。如果你看了像 Komincz 这样的职业玩家玩的话,你会看到裸动作的数量要远远超过有意义的动作的数量。

  比方说,如果人类玩家只引导一个游戏单位执行一项重要任务的话,他会沿着该游戏单位的当前轨迹发布一系列的“移动”命令。每一条命令几乎不会改变该单位的路径,但是如果人类玩家已经选择了该单位的话,他几乎不需要花时间再去点击一次。但这些命令严格来说大部分都不是必要的;而像 AlphaStar 这样的 AI 轻易就能找出该单位的最优路线,然后发布一系列数量要少得多的一点命令就能取得同样的结果。

  所以限制 AI 可以执行的动作的裸数量为典型人类的水平未必意味着有意义的动作数量具有可比性。

  而且 AlphaStar 在最初游戏中使用的 API 赋予了它对整个战场一个上帝视角(尽管只有在 AlphaStar 的一支部队范围内的一部分战场的)。而如果人类玩家想要在两个不同的地方采取行动的话,他首先需要将摄像头移到新的位置。

  强迫 AlphaStar 使用摄像头可让游戏公平一点

  值得称道的是,DeepMind 意识到了这个问题。所以在回放部分 AlphaZero 背靠背5:0 击败人类职业玩家的比赛之后,该公司筹划了一场最后一场 AlphaStar 跟 Komincz 直播比赛。这场比赛使用了新版的 AlphaStar,这个版本被施加了一个重要的限制:它将被迫采用摄像头视图,从而模拟人类星际争霸界面的限制。新的节目只允许 AlphaStar 一次看到一小部分战场,而且只能发命令给处在当前视野内的游戏单位。

  DeepMind 有几周的时间去训练这一新版本,但跟前个月与 Komincz 比赛的那个版本相比似乎要弱很多。

  在表演赛的最初几分钟里,Komincz 稳稳地挡住了攻势,轻易就抵挡 AlphaStar 的攻击。然后他发动了狡猾的反击。

靠着两个不公平优势,AI 玩《星际争霸》碾压了人类

  Komincz 的 2 支不朽者部队(绿色)向 AlphaStar 的探测器开火,同时他的折跃棱镜在上方正在等待采取行动。AlphaStar 的追猎者(红)正从西边赶过来救援,但还没等它们赶到 Komincz 就把不朽者弄进了折跃棱镜,并将其带到了水那头的东边——超出了追捕者武器的攻击范围。

  Komincz 把两支强大的不朽者部队装进了一个叫做折跃棱镜的运输船,然后将它们运到 AlphaStar 的基地,在那里脆弱的探测器正在采矿,这些矿石是 AlphaStar 的战争武器的动力来源。他把不朽者投放到基地里,开始炸毁探测器。

  再次地,AlphaStar 组建了一只庞大的追捕者部队,然后马上派遣去防御探测器。但在追捕者还没有进入到不朽者的范围之前,Komincz 就已经把它们送回到折跃棱镜然后逃之夭夭了。折跃棱镜不见之后,AlphaStar 就把追捕者派遣到 Komincz 的基地。

  Komincz 然后又故伎重施:投放不朽者,摧毁几个探测器,然后在追捕者赶过来之前再把不朽者送走。就这么反复这样的操作。当他这么做的时候,AlphaStar 的追捕者因为徒劳地往返而浪费了宝贵的时间。

  当 Komincz 第三次投放不朽者到 AlphaStar 的基地时,Stemkoski 说:“这就是我经常看到的人机对战的情形。当你找到对方的一个漏洞时,你就会反复地抓住那个错误攻击,屡试不爽。”

  折跃棱镜这个花招让 AlphaStar 的追捕者大部队疲于奔命的同时,Komincz 一边也在聚集自己的大军。然后他指挥这支部队朝着 AlphaStar 的巢穴直捣黄龙,攻击为 AlphaStar 的战争机器采集资源的探测器。AlphaStar 用追捕者骚扰 Komincz 的部队,但 Komincz 设法保持队伍的阵型,最后,AlphaStar 没有办法阻止 Komincz 给自己的基地造成了严重破坏。

  我们不知道 Komincz 在输掉之前的 5 场比赛之后究竟是如何赢得这场比赛的。似乎摄像头视图的限制无法直接解释 AlphaStar 不能对折跃棱镜的投放攻击做出有效响应。

  但是合理的推断是,摄像头视图的限制全面降低了 AlphaStar 的表现,阻止了它有效地炮制游戏单位,或者以开局时同样致命的精度来管理部队。这样也许就给了 Komincz 足够的喘息之机,去寻找 AlphaStar 战略意图的漏洞然后加以利用。

  最后看来,上次的演示引出的问题要比回答的要多。DeepMind 称自己在短短一周的训练之后就看到 AlphaStar 的表现有了重大改良。如果这一进程延续下去的话,AlphaStar 也许就能恢复对人类玩家的决定性优势,哪怕对其 API 施加新的限制。

  另一方面,尚不清楚引入的这个摄像头限制是否足以保证比赛的公平性。AlphaStar 仍然可以通过特殊 API 获取游戏信息,这个跟人类玩家获得的信息是不一样的。这个 API 也许能让软件收集更多的信息,从而比人类玩家更迅速、更精确地发布指令。

  让比赛公平的终极方式是让 AlphaStar 使用跟人类玩家一样的用户界面。当然,这个界面可以是虚拟化的,但游戏应该是跟人类玩家一样的裸像素输入,而且应该要求利用一系列的鼠标移动和点击来输入指令——而且输入速度要限制到人类手的操作能达到的程度。这是唯一可以确保 AlphaStar 没有给予其软件不公平优势的办法。

  原文链接:https://arstechnica.com/gaming/2019/01/an-ai-crushed-two-human-pros-at-starcraft-but-it-wasnt-a-fair-fight/

  编译组出品。编辑:郝鹏程。


鲜花

握手

雷人

路过

鸡蛋
毒镜头:老镜头、摄影器材资料库、老镜头样片、摄影
爱评测 aipingce.com  
返回顶部