吉游网提供最新游戏下载和手游攻略!

DeepMind 星际争霸 AI 发表在 Nature 上!RTS 游戏已被 AI 征服了吗?老游戏星际争霸

发布时间:2024-07-02浏览:6

文章 | 李伟帆 朱元恒 赵东斌

AlphaStar 是有史以来第一个在无限制条件下达到主流电子竞技顶级水平的 AI,在今年 1 月击败星际争霸 2 中的两位全球顶尖选手后,DeepMind 就将目光投向了让 AI 在完全竞技的环境下达到业界认可的大师级水平。

2019年10月30日,谷歌DeepMind在《自然》杂志上发表了关于AlphaStar的论文[1]。这是人工智能最前沿的进展,解决了不完全信息下的即时战略游戏问题。在论文中,AlphaStar在不受任何限制的情况下,以与人类相同的操作水平达到了天梯对战的大师级别,在欧洲服务器的天梯中超越了99.8%的人类玩家。

1.《星际争霸》:人工智能的重大挑战

星际争霸是电子竞技史上的先驱,也是目前最成功的即时战略游戏。星际争霸已经问世二十余年,星际争霸Ⅱ发售九年依然在电子竞技中占有一席之地。其长盛不衰的原因在于其丰富的游戏机制和精妙的游戏平衡性。2017年,研究人员认为星际争霸Ⅱ比围棋更具挑战性,主要原因有以下几点[2]:

1. 游戏性——星际争霸具有丰富的策略游戏过程,并且不存在单一的最佳策略。因此,代理需要不断探索并根据实际情况谨慎选择游戏策略。

2.信息不完备——战争迷雾和摄像头限制使得玩家无法实时掌握迷雾中的全局形势信息和对手策略。

3.长远规划——与象棋和围棋不同,星际争霸的因果关系不是实时的,前期不起眼的失误,可能会在关键时刻暴露出来。

4. 实时决策——星际争霸玩家根据实时情况做出决策。

5. 巨大的行动空间——需要实时控制不同区域的数十个单位和建筑物,并可形成数百种不同的行动集。因此,小决策可能形成的组合行动空间是巨大的。

6. 三个不同的种族——不同种族的宏观机制挑战了智能代理的泛化能力。

至今为止,DeepMind 已经对上述问题一一给出了解决方案,并在博客和论文中进行了详细的介绍。

2. AlphaStar:重大改进

根据 DeepMind 的博客[3],AlphaStar 的阶梯版本与 1 月份的版本[4]的主要区别在于:

1. AlphaStar 现在在与人类相同的约束下运行,包括局部视野和工作频率限制。

2.适应三大种族1v1匹配,每个种族都有独立的神经网络。

3.训练过程完全自动化,训练从监督学习开始,而不是从之前实验中训练的代理开始。

4、AlphaStar 进行天梯比赛,所有比赛条件与人类相同。

DeepMind 采用了常见的主流机器学习技术,包括神经网络、自我博弈、强化学习、多智能体和模仿学习。强化学习和自我博弈是研究中最重要的部分。长期的研究表明,通过强化学习自我博弈,系统可以变得更加鲁棒,并逐渐掌握游戏。当强化学习和自我博弈方法结合起来时,可以拓展各种应用领域。例如 AlphaGo 和 AlphaZero 的成功也可以超越人类在国际象棋和将棋方面的表现。

DeepMind 专注于开放式学习的潜力和局限性,因为它可以让他们开发出强大而灵活的代理,以应对更复杂的现实世界场景。星际争霸是研究这些方法的绝佳平台,因为信息不完整的实时战略游戏非常困难。

3. AlphaStar:具体方法

虽然自我博弈在之前的领域取得了巨大的成功,但它仍然有一个非常大的缺点,就是很容易忘记之前的策略,很容易从一个策略偏离到另一个策略,这种类似衔尾蛇的循环使得智能体很难取得真正的进步或者算法收敛。

随着虚拟自我博弈方法的引入,这一问题逐渐得到解决,在虚拟自我博弈中,智能体会保存自己之前所有的最优策略,并用自己过去所有的策略进行博弈,避免策略遗忘。

研究人员发现,虽然 AlphaStar 的操作和对战局的判断非常强大,但是虚拟自我博弈的方式似乎很难探索出强大的战术,因此不得不寻求其他的解决方案。

3.1 联盟

DeepMind 在《Nature》发表的一篇论文中提出了一种多智能体联盟的策略,该方法的核心是将智能体的历史策略作为一个智能体,通过为不同的智能体设定不同的训练目标来提高整个联盟的水平。在通常的自我博弈过程中,每个智能体都试图击败对手。由于策略遗忘的问题,这种方法无法探索超越人类的战术。

将虚拟自我博弈过程转化为多智能体博弈过程。

在现实世界中,专业的星际争霸玩家会邀请特定的对手来练习,以暴露对手的弱点,或者训练特定的策略来提高策略的鲁棒性。借鉴这种方法,研究人员在联盟中加入陪练代理,他们的目标是找到当前主代理的缺点。训练这些陪练代理并将其加入到整个联盟中,相当于加入了代理的历史最优策略。主代理就是要击败联盟中的所有代理。

增加主特工陪练和联盟整体陪练,提升整体效果。

该方法将之前的虚拟自我博弈[6]方法转化为动态多智能体博弈问题,虽然在单个博弈中博弈过程是零和博弈,但在全局背景下各个智能体的博弈过程是合作的。通过该方法,整个联盟的智能体在端到端的全自动训练过程中不断提高水平,学习星际争霸2的所有策略。

通过增加陪练伙伴,主特工的战术变得更加稳健

星际争霸中的挑战。由于游戏的多关卡特性,游戏中不同策略的改进成本是不同的。如上图第一行所示,具体战术是通过生产不同的单位形成的,这些不同的战术在游戏过程中具有相互制约的特点(类似于锤子、剪刀和布)。得益于模仿学习,代理从人类的经验中学习了大量不同的战术。虽然这些战术的最终关卡可能相同,但改进这些战术所需的训练次数是不同的。因此,代理倾向于选择最容易改进的战术,而放弃或忘记那些难以训练的战术。如上图第二行所示,通过加入陪练,代理被迫练习难以改进的战术或使战术更加鲁棒。 同时,研究人员还利用模仿学习技术(包括蒸馏)来防止AlphaStar在整个训练过程中出现灾难性遗忘,并将人类开局编码成一系列潜在变量,以使代理拥有更多的开局能力。

在训练过程中,主智能体始终采用强化学习进行训练,主陪练智能体和联盟陪练智能体在一定时间后均采用人类数据重新初始化。主智能体需要击败所有智能体,主陪练智能体只需击败主智能体,联盟陪练智能体则需要击败所有过去的智能体。

3.2 单智能体改进

AlphaStar 的单智能体部分也进行了改进,以解决奖励回报稀疏和动作空间巨大的问题。星际争霸游戏中,智能体每一步都有 1026 种可能的动作选择,一场游戏需要做出上千种动作。面对巨大的动作空间,研究人员发现很多训练方法都会失效。而没有先验知识,似乎就没有办法探索出有效的策略。因此学习人类的策略是 AlphaStar 的探索方式,也是提升智能体表现的关键。所有智能体都通过监督学习进行初始化,不同之处在于主智能体主要通过强化学习进行优化,而对打和联盟对打需要在保存当前策略后用人类数据重新初始化。

网络结构。

人体数据的影响,提供了四种不同的方法,包括监督学习、人体数据初始化、KL散度监督学习和隐变量Z学习。后两者是在人体数据初始化的基础上添加的。

老游戏星际争霸_星际争霸类的手机游戏_星际争霸游戏

为了保证学习的有效性,研究人员基于语言模型构建了一个神经网络,并通过模仿学习和监督学习制定了初始策略,可以击败 84% 的玩家。研究人员还建立了一个隐藏变量 z 来编码玩家的开局动作,以确保代理可以保留高级策略(战术)。代理在整个训练过程中以蒸馏的形式学习人类的策略进行探索。上述方法使 AlphaStar 能够在单个网络中体现多种策略。在与人类的测试过程中,代理没有这些先验信息。

非策略学习方法的胜率。

为了提高学习效率,研究者使用了三种技术:V-Trace[5]、TD(λ)和UPGO。V-Trace用于解决大动作空间异步并行时的数据利用率问题。TD(λ)用于改善稀疏回报问题。UPGO同时改善了稀疏回报和过估计问题。当状态动作值估计高于状态值估计时,UPGO会直接跳过当前状态值,使用下一个状态的估计值GU进行反向传播。

利用全局信息进行价值函数估计对于提高胜率有明显的效果。

不完全信息博弈会造成价值函数估计方差较大。AlphaStar在网络架构中引入了循环神经网络,降低不完全信息的影响。同时,在训练过程中,Actor基于局部信息计算动作值,而Critic则根据敌我双方的全局信息估计价值函数,解决了方差较大的问题。

使用监督学习和强化学习进行训练

3.3 硬件资源

用于训练的硬件资源和架构。

为了训练 AlphaStar,DeepMind 使用了谷歌的 v3 Cloud TPU。他们构建了一种高度可扩展的分布式训练方法,可以同时运行 16,000 个游戏和 16 个代理任务。每个代理都有一个带有 8 个 TPU 核心的设备用于推理。游戏在相当于 150 个 28 核处理器的可抢占 CPU 上异步运行。

执行器将收集到的数据发送到每秒可处理 50,000 步数据的 128 核 TPU 学习单元。执行器每 10 秒集体同步和复制参数。此配置总共复制 12 个批次,每个比赛有一个主代理、一个主陪练代理和两个联盟代理​​。

训练期间代理的 ELO 波动。

主智能体训练时间长达44天,图中的每个点代表一个过去的智能体,其ELO值评估其在整个联盟中的实力,可以看出最终的主智能体对所有过去的策略都具有鲁棒性。

4. 问题依然存在

AlphaStar 使用的大多是通用技术,尽管论文表明它取得了前所未有的成功,但这些技术仍有几个不清楚的地方。首先是人类数据的隐藏编码 z。论文没有提到人类数据是如何编码的,也没有提到这种编码如何影响训练过程。

论文中指出最终的智能体可以使用多种战术。然而,这方面仍有一些疑问,因为从 1 月份的比赛和最终的视频来看,AlphaStar 在展示多种战术方面存在困难。AlphaStar 的虫族总是使用蟑螂火力战术,人族总是使用机枪和坦克推进,而神族则更喜欢狩猎。论文中的探索方法也表明,如果智能体没有隐藏变量 z,则很难展示多种战术。

论文中的优先虚拟自我博弈似乎没有完全阐明。多智能体和优先虚拟自我博弈方法是如何集成的?在联盟中训练时,每个智能体是否还需要处理自己的历史智能体?

随着训练的进行,联盟中的主智能体会越来越强,重新初始化的陪练对手该如何跟进主智能体的进度呢?

网络结构对效果的影响。加号表示与基线相比的增益。

论文中提到了一种名为 Scatter connections 的语言处理技术,但论文并没有详细描述这种方法的具体网络形式。不过对于单个智能代理的学习能力来说,似乎网络结构已经成为一个关键因素。或许有一天,强化学习的网络结构也需要强化学习来指导它。

老特工主管(蓝色)在掩体冲击中被陪练伙伴(红色)杀死。

新任主特工(绿色)学习防守掩体冲击(红色)。

与此同时,新的主代理(绿色)能够击败之前的主代理(蓝色)。

新的陪练伙伴发现,新的主力特工(绿色)不会防御隐形单位。

头号选手Serral评论道:“这让我笑了。”当然,在世界排名第一的Serral眼里,每个人都让他笑。游戏编号:AlphaStar_030_TvZ。

5. 结论

AlphaStar 在很大程度上解决了即时战略游戏。但 AlphaStar 仍然受限于人类知识框架,其生成的策略难以超越人类顶尖选手。现有的技术是否只能止步于此,还是依然依赖硬件的积累?期待 AlphaStarZero 诞生的那一刻,总有一天,AI 能用自己的策略彻底击败人类 Top1 选手。

PS:感谢Nature文章引用我们关于星际争霸AI的论文:“42. Shao, K., Zhu, Y. & Zhao, D. StarCraft micromanagement with reinforcement learning and courses transfer learning. IEEE Trans. Emerg. Top. Comput. Intell. 3, 73–84(2019)”。全文链接附后,供参考。

参考

[1] Vinyals, Oriol 等人,“使用多智能体强化学习实现《星际争霸 II》中的大师级水平。”《自然》,2019 年,。

[2]朱元衡、唐振涛、李伟帆、赵东斌,中国科学院自动化研究所,深度解析:Deepmind AlphaStar如何击败人类职业选手,德先生,2019年1月26日。

[3] AlphaStar:使用多智能体强化学习实现《星际争霸 II》中的大师级水平。DeepMind。,2019 年。

[4] AlphaStar:精通实时战略游戏《星际争霸 II》。DeepMind。,2019 年。

[5] Espeholt,L.等人,IMPALA:具有重要性加权参与者-学习者架构的可扩展分布式深度强化学习,国际机器学习会议,1406–1415,2018 年。

[6] Heinrich, J.、Lanctot, M. 和 Silver, D. 扩展形式游戏中的虚拟自我对弈。国际机器学习会议,805–813,2015 年。

热点资讯