《星际争霸II》天梯排名前30%-50%的人类玩家

《星际争霸II》天梯排名前30%-50%的人类玩家

选自 arXiv

作者:孙鹏、孙星海、韩雷、熊杰超、王庆、李波、郑阳、刘吉、刘永生、刘瀚、张桐

机器之心合集

机器之心编辑部

OpenAI一直致力于在《Dota 2》中利用深度强化学习击败人类玩家。 目前,OpenAI 5还勉强达到了职业选手的水平。 由于游戏科目数量较多(几十到上百个),观察空间和动作空间巨大,《星际争霸II》的游戏难度实际上比Dota 2(5个游戏科目)还要高。 目前,AI仅在《星际争霸II》中在《星际争霸II学习环境》的多个迷你游戏中达到专业水平。 近日,腾讯AI实验室等人利用深度强化学习开发了一款代理,可以击败《星际争霸II》整个游戏(深海礁石图、虫族1对1)中“作弊”的内置AI。 这种“作弊”AI的能力相当于暴雪()天梯排名系统中排名前30% - 50%的人类玩家。

最近,深度学习和强化学习的结合为许多难题的决策系统带来了重大突破。 从头开始训练(或从预先训练的模型)并输入(几乎)原始观察特征的深度强化学习,在广泛的应用中表现出了令人印象深刻的性能,包括玩围棋游戏 [6 , 7]、播放视频游戏(例如 Atari [8]、第一人称射击游戏 Doom/ViZDoom [9, 10] 或 Quake/DeepmindLab [11]、Dota 2 [12])、机器人视觉运动控制 [13] 和机器人 Cruise[14, 15] ] 等。学习到的策略/控制器的表现出奇的好,有时甚至超越人类 [8, 7]。

然而,被公认为最具挑战性的RTS游戏《星际争霸II》并没有被AI征服。 在这款游戏中,人类玩家必须控制数十到数百个单位来实现各种目的,例如收集两种资源、扩展额外资源、更新技术、组建其他单位、派出队伍攻击或防御、对战斗中的每个单位进行微观管理等等。 这也是《星际争霸2》比《Dota 2》难度更高的关键原因之一,《Dota 2》的单位总数必须控制在5个以下(每个单位由5名玩家控制)。 图 1 是人类玩家交互的屏幕截图。 除非对手的单位出现在玩家的视野内,否则对手对玩家是隐藏的。 因此,玩家需要派出部队去侦察对手的策略。 所有决定都是实时做出的。 在设计AI智能体方面,《星际争霸2》包括大观察空间、巨大动作空间、局部观察、多人同时游戏、长期决策等,这些因素都增加了《星际争霸2》的难度。 为了拓展AI能力的边界,Deepmind和暴雪联合推出了“星际争霸II学习环境”(SC2LE)[16]。 Deepmind最近的研究结果[16, 17]表明,其AI智能体在多个小游戏中可以达到职业玩家的水平,但在完整游戏中达到职业玩家水平还有很长的路要走。

游戏开发中的人工智能pdf_人工智能游戏引擎_人工智能在游戏设计中的应用

图 1:《星际争霸 II》游戏中由人类玩家控制的单位的屏幕截图。

为了对整个游戏进行研究,本文作者将研究限制在以下环境:深渊礁石地图上的1对1、虫族对虫族。 他们开发了两种人工智能代理——基于平面动作深度强化学习的代理TStarBot1和基于分层动作规则控制器的代理TStarBot2。 TStarBot1 和 TStarBot2 都能够在整个游戏中击败级别从 1 级到 10 级的内置 AI 代理。 请注意,8、9、10 级的内置 AI 都是作弊的:8 级可以看到整个地图的完整视图;8 级可以看到整个地图。 9级增加了资源收获,10级则两者兼而有之。 另外,根据《星际争霸II》论坛上的一些非正式讨论,10级内置AI代理估计是白金到钻石级别[1],相当于暴雪战网中的前30% () 联赛排名系统 - 50% 人类玩家。

具体来说音乐,TStarBot1基于“平面”动作建模,将动作结构扁平化并生成一系列离散动作。 通过这种方式,TStarBot1 可以立即为任何现成的 RL 算法做好准备,将离散动作作为输入。 TStarBot2基于“深度”动作建模,它允许我们手动指定动作级别。 “深度”建模直观地更好地捕捉动作依赖关系并具有双倍的表达能力。 然而,由于可能涉及复杂的分层强化学习,训练将更具挑战性。 考虑到这种权衡,在这项初步研究中,研究人员为 TStarBot2 采用了基于规则的控制器。

论文:TStarBots:在完整游戏中击败星际争霸 II 中的作弊级别内置 AI

人工智能游戏引擎_游戏开发中的人工智能pdf_人工智能在游戏设计中的应用

论文链接:

摘要:《星际争霸 II》(SCII)被公认为目前最具挑战性的即时战略(RTS)游戏,因为它具有大的观察空间、巨大(连续且无限)的动作空间、局部观察以及多个玩家同时进行的特点。游戏模式、长期决策等等。 为了拓展AI能力的边界,DeepMind和暴雪联合推出了“星际争霸II学习环境”(SC2LE)——一个用于设计复杂决策系统的测试平台。 SC2LE提供了一些小游戏,例如MoveToBeacon、CollectMineralShards和DefeatRoaches。 尽管一些AI智能体在这些游戏中已经达到了职业选手的水平,但他们还远未达到所有游戏中的职业水平。 为了启动整个游戏的调查,我们开发了两个人工智能代理:代理TStarBot1是基于平面动作结构上的深度强化学习; 代理 TStarBot2 基于分层操作结构上的规则控制器。 TStarBot1和TStarBot2都可以在整个游戏中击败1到10级的内置AI代理(在深海珊瑚礁地图中,虫族1对1)。 注意整个游戏中游戏开发中的人工智能pdf,8、9、10级的特工作弊:8级可以看到整个地图; 9级增加了资源收获,10级则两者兼而有之。 具体来说,TStarBot1采用一组平面宏动作,通过强化学习对单个控制器进行训练; TStarBot2采用分层组织的宏微混合动作,并依赖于具有硬编码专家规则的控制器。

据我们所知,这是首次对能够在《星际争霸 II》完整游戏中击败内置人工智能的特工进行公开调查。 该代码将开源[3]。 我们希望本研究提出的框架将有益于未来在以下方面的研究:1)成为混合系统的基线,其中越来越多的学习模块将被逐渐采用音乐音效,并且规则仍然用于表达难以学习的逻辑; 2)生成模仿学习的轨迹; 3)成为自比训练的对手。

TStarBot1:基于宏观动作的强化学习代理

人工智能游戏引擎_人工智能在游戏设计中的应用_游戏开发中的人工智能pdf

图 2:基于宏观动作和强化学习的代理架构概述。

如图2所示,上图:基于宏动作的可学习控制器; 底部:165 个可执行宏操作,具有游戏规则(例如技能树)的先验知识,硬编码和对控制器隐藏的琐碎细节。 决定因素(例如,构建布局)和一些实现细节。 该图还显示了两个宏操作的定义作为示例:BuildRoachWarren 和 ZoneAAAttackZoneI。

人工智能在游戏设计中的应用_游戏开发中的人工智能pdf_人工智能游戏引擎

表 1:165 个宏操作的摘要:分类、示例和硬编码规则/知识。 最右边一栏,RandUnit表示随机选择一个主单元; RandPlacer 表示随机选择一个有效的放置坐标。

TStarBot2:基于分层宏微观动作的代理

基于宏动作的代理 TStarBot1 可能有局限性。 尽管宏操作可以按功能进行分组,但单个控制器必须基于整组操作来工作,其中这些操作在每个决策步骤中都是互斥的。 此外,在预测要采取哪种策略时,常见的观察结果(与操作集无关)被馈送到控制器。 这使得控制器训练变得不必要的困难,因为不需要的信息可能会影响观察和行动。 另一方面,宏观动作本身并不影响微观动作(即每个单元的控制)控制游戏开发中的人工智能pdf,当我们想要使用多智能体类型的方法时,微观动作变得非常不灵活。 因此,我们尝试了一系列不同的操作,如图 3 所示。

游戏开发中的人工智能pdf_人工智能游戏引擎_人工智能在游戏设计中的应用

图3:宏观微观分层行动概览

在编写代码时,我们将每个控制器封装成一个模块。 这些模块的组织方式与 UAlbertaBot 类似,如图 4 所示。

游戏开发中的人工智能pdf_人工智能游戏引擎_人工智能在游戏设计中的应用

图4:基于宏微观分层动作的Agent模块图。

实验

我们在完整的 1v1 Zerg vs. Zerg 比赛中分别测试了 TStarBot1 和 TStarBot2 代理。 具体来说,代理需要与从 1 级(最简单)到 10 级(最难)的内置 AI 竞争。 我们使用的地图是 Deep Reef 模式,据报道,在使用内置 AI 进行原始 PySC2 观察/动作的完整人族对人族比赛中,A3C 智能体的平均表现较差。

人工智能游戏引擎_人工智能在游戏设计中的应用_游戏开发中的人工智能pdf

图 5:TStarBot1 使用 PPO 算法的学习曲线。 请注意,TStarBot1 - PPO 在大约 30M 帧后开始击败 2 级(简单)内置 AI(至少 75% 胜率),击败 4 级(困难)、6 级(非常困难)、9 级(资源作弊), 10级(疯狂作弊)分别约为250M帧、800M帧、2000M帧和3500M帧。

人工智能游戏引擎_游戏开发中的人工智能pdf_人工智能在游戏设计中的应用

表 2:TStarBot1 和 TStarBot2 代理在不同难度级别与内置 AI 竞争的获胜率(%)。 对于 TStarBot1,我们报告使用 DDQN、PPO 和随机策略的比赛结果。 每个胜率都是通过使用不同的随机种子对 200 场比赛的结果进行平均来计算的,考虑到战争迷雾。

人工智能游戏引擎_人工智能在游戏设计中的应用_游戏开发中的人工智能pdf

表 3:TStarBot 与人类玩家的对比。 每一项代表 TStarBot1/TStarBot2 的胜/负次数。

人工智能游戏引擎_人工智能在游戏设计中的应用_游戏开发中的人工智能pdf

图 6:TStarBot1 战争时机的学习策略:匆忙和经济优先。

文章来源:http://mp.weixin.qq.com/s?src=11×tamp=1695291066&ver=4788&signature=OllsUkkFbbhiA0x*ctCgy8D4GLgQdWK6qOu5p9UOlntwxkWYQ2hSSXrofoo*cYLQxvwf6XcFvweAr12iT6zpym77VQoXuzm6boO1KNaFJbLPnBzx4ACMDq3p1HQj*wOp&new=1