小舟、陈萍、泽南作者

王者荣耀AI绝悟完全体对战开启:英雄随便选,论文已被NeurIPS收录

人工智能 2 级就来越塔来杀我,这游戏怎么玩?

还记得今年五一假期时,腾讯在王者荣耀游戏中上线的绝悟 AI 挑战吗?大多数玩家只能将将挑战前几个难度,AI 击败你之后还会在聊天里嘲讽。在 AlphaGo 的阴影笼罩围棋之后,人工智能也把触角延伸到了最流行的游戏中。

最近,腾讯 AI Lab 在王者荣耀中的研究也获得了学界的认可,研究人员提交的论文也被全球顶尖人工智能会议 NeurIPS 2020 收录。

而在 11 月中旬,升级版的绝悟 AI 挑战也在王者荣耀中上线,20 个难度关卡的设置为玩家们留下了充足的挑战空间。在游戏中,人工智能由 5 个智能体互相协作,并不拥有全局视野,反应速度也被调整为和人类类似。在高级关卡中,AI 也会和你在开战前进行挑选英雄的 BP 博弈。

在 11 月 28-30 日限时开放的绝悟升级版最终挑战里,玩家和 AI 可以选择目前版本游戏里几乎所有的英雄,也接受 5 人组队挑战。看起来自我博弈的 AI 已经达到了无限接近成熟的水平。

根据已经进行的一些比赛来看,绝悟通过自我博弈学习,早已学会了蹲草丛这样的操作:


如果用公孙离这样能秀的英雄,1v3 也是不难的事:


在挑战开启以后,玩家们发现人机对战通常会变成这个样子:选英雄斗智斗勇,准备用上套路——一进游戏刚拉开架势,就被 AI 拿了一血。


据 AI Lab 的研究人员透露:「有些冷门英雄 AI 玩的非常强势,到时候可能会颠覆一部分大家对于游戏的认知。」

腾讯 AI Lab 及腾讯天美工作室发表的论文《Towards Playing Full MOBA Games with Deep Reinforcement Learning》中,研究人员们提出了 MOBA AI 学习范式,支持使用深度强化学习来玩完整的 MOBA 游戏。

具体而言,该研究将新的和已有的学习技术结合起来,包括课程自我博弈学习、策略蒸馏(policy distillation), 离策略自适应(off-policy adaption)、多头值估计(multi-head value estimation)、蒙特卡洛树搜索等,在训练和用大量英雄玩游戏,同时巧妙地解决了可扩展性的问题。

多人在线竞技类游戏 MOBA 长久以来一直吸引着众多玩家,其中的王者荣耀、英雄联盟、Dota 2 等最近也常被 AI 研究者当做人工智能的实验场,其中的多智能体、巨大的状态动作空间、复杂的环境等元素向 AI 系统提出了极大的挑战。开发用于 MOBA 游戏的 AI 引起了广泛的关注。

然而,当 OpenAI 的 Dota AI 将游戏限制在只能选择 17 名英雄的情况下,若想扩展英雄库,现有的工作在处理由智能体组合(即阵容)爆炸性增长所导致的游戏复杂性方面的问题存在难度。因此,现有的 AI 系统并不能掌握完全没有限制的 MOBA 游戏。

在日均活跃玩家数量超 1 亿的国民手游王者荣耀上进行测试,展示了人类可以打造出能够击败顶级电子竞技玩家的超级 AI 智能体。通过文献中首次对 MOBA AI 智能体进行大规模性能测试,证明了该 AI 的优越性。


论文地址:https://arxiv.org/abs/2011.12692

学习系统

为了解决 MOBA 游戏的复杂性,该研究结合了新的和现有的学习技术,用于神经网络架构、分布式系统、强化学习、多智能体训练、课程学习和蒙特卡罗树搜索。尽管该研究使用王者荣耀进行研究,但这些技术同样适用于其他 MOBA 游戏,因为 MOBA 游戏的游戏机制是类似的。

研究人员表示,这套强化学习系统运行在一个物理集群上。后续进行的控制变量、时间和性能比较实验都使用了相同的资源量进行训练:320 张 GPU 卡以及 35000 个 CPU 核。


模型架构

在模型架构中,绝悟使用了actor-critic结构。

策略更新

研究人员使用了双边截断的PPO方法:



值函数更新

模型使用了游戏状态的完整信息,包括隐藏的观测信息作为值函数的输入来降低值估计的方差。值得注意的是,这种方式仅在训练阶段使用,因为测试时只需要策略网络。为了更准确地估计值函数,研究人员引入了multi-head value(MHV)方法。从下图可以看出,reward被分成了5大类。损失函数定义如下:



网络结构设计主要包括如下几个方面:

  • 多模态特征输入

  • 使用 LSTM 来处理部分可观测的问题

  • 使用注意力机制进行目标选择

  • 通过动作过滤提升训练效率

  • 分层动作设计、动作离散化设计

  • 所有智能体共享参数(one model for all)

  • 使用全局信息做 value 预估(仅用于 value network,不包括 policy network)



多智能体训练

大型英雄池会导致大量的阵容。当使用自我博弈强化学习时,10 个智能体玩一个 MOBA 游戏面临着运动目标不稳定的问题。此外,不同的 self-play 游戏阵容各不相同,这使得策略学习更加困难。在训练中出现紊乱的智能体组合导致性能下降。这需要一个范式来指导 MOBA 中的智能体学习。

  • 阶段 1,从简单的任务开始,训练固定的阵容。

  • 阶段 2,专注于如何继承固定阵容的 self-plays 游戏所掌握的知识。

  • 阶段 3,通过从第 2 阶段中提取的模型进行模型初始化,从英雄池中随机挑选阵容进行持续训练。



学习征召模式

王者荣耀的 AI 不仅需要会操作英雄,还需要会选英雄,更加需要会玩套路,且限制玩家的套路。

扩大英雄池所带来的一个新问题是 BAN 选机制(Ban Pick)。在 MOBA 比赛开始之前,两支队伍经过挑选英雄的过程,这将直接影响未来的策略和匹配结果。给定一个庞大的英雄池,例如 40 个英雄(超过 1011 个组合),一个完整的树搜索方法,如 OpenAI Five[2]中使用的 Minimax 算法,在计算上是困难的。

为了解决这个问题,研究者利用蒙特卡洛树搜索(MCTS)和神经网络开发了一种 BAN 选智能体。MCTS 会估算每次选择的长期价值,价值最大的英雄将被选中。该研究使用的特定 MCTS 版本是应用于树(UCT)的上置信界。在征召模式 Ban 选的过程中迭代地构建一棵搜索树,其中每个节点代表一个状态(两个团队都已经选择了英雄),每条边代表一种动作(选择尚未选择的英雄),然后会产生下一个状态。

研究人员使用了 3000 万样本 (自对弈产生) 训练胜率预测器,使用了 1 亿样本 (样本基于 MCTS 方法的挑选策略产生) 对值网络进行了训练。

绝悟和人类对决的 BP 测试。

除了常见的单轮 BP ,AI 教练还学会了王者荣耀 KPL 赛场上常见的多轮 BP 赛制,该模式下不能选重复英雄,对选人策略要求更高。团队因此引入多轮长周期判定机制,在 BO3/BO5 赛制中可以全局统筹、综合判断,做出最优 BP 选择。训练后的 BP 模型在对阵基于贪心策略的基准方法时,能达到近 70% 胜率,对阵按位置随机阵容的胜率更接近 90%。

AI 的水平大致在什么阶段

腾讯 AI Lab 训练了一个英雄池大小为 40 的 AI 版本,覆盖了所有英雄角色,包括坦克、法师、辅助、刺客、射手和战士。英雄池的规模是 OpenAI 的 2.4 倍,英雄组合复杂度提升了 2.1×10^11 倍。在挑选英雄阶段,人类玩家可以从 40 个英雄中随机挑选。在对局中,研究人员没有对游戏规则进行任何限制,玩家可以任意购买物品或者使用自己喜欢的召唤师技能。

为了测试 AI 的真实水平,腾讯邀请了王者荣耀职业玩家来和 AI 进行对抗。从 2020 年 2 月 13 日到 4 月 30 日,AI 每周都会和职业玩家进行多次对弈。职业玩家被鼓励使用他们擅长的英雄以及尝试不同的游戏策略。在最初的 10 周时间内,人机对决共进行了 42 场,AI 赢了 40 场(95.2% 的胜率,置信区间[0.838,0.994])。

2020 年 5 月 1 日到 5 月 5 号,腾讯 AI Lab 将 AI 部署到王者荣耀正式服务器上和玩家公开对抗,对参与玩家设置了段位门槛。为了鼓励玩家参与,玩家如果击败了 AI 就能够拿到一枚荣誉徽章。最终,绝悟 AI 与顶尖玩家对抗了 642,047 局,AI 赢得了其中的 627,280 局(胜率 97.7,置信区间[0.9766, 0.9774])。对比其它的公开游戏 AI 测试:AphaStar 和 OpenAI 各打了 90 和 7,257 场,而且对参与者没有游戏水平的要求。


图 3:训练过程:a)教师模型的训练,即 CSPL 的第一阶段。b)蒸馏(distillation)过程中的 Elo 变化,即 CSPL 的第二阶段,学生模型的收敛 Elo 略低于教师模型。c)和 d)分别针对 20 个英雄和 40 个英雄的情况,将 CSPL 的 Elo 变化与基线方法进行比较。注意基线方法中没有第一阶段和第二阶段。CSPL 在扩展英雄池时具有比基线方法更好的扩展性。

人们对于研究者们使用的 ELO 评分机制可能会留有印象:ELO 等级分在棋类游戏和 AI 研究领域经常被用做评价标准,在 AlphaGo 的论文中,ELO 也被用于评判 AI 的下棋水平。

具体来说,Top10% 水平的人类玩家 ELO 分数大约为 1050,Top 1% (王者荣耀中的王者段位)大约为 1500,Top 0.01% 大约为 1700,职业玩家的水平应该在 1730 以上。

在图 3 中,研究者说明了 CSPL 的整个训练过程和基线方法。表 1 对比了两种方法的具体训练时间。



为了进一步分析该方法中的组件,研究者进行了几项内部控制变量实验,结果如图 4 所示。



关键部分的控制变量实验:a)用 Elo(带有 CSPL 和不带有 CSPL)比较训练方法;b)使用 Elo 比较值函数的不同组成;c)使用 Elo 比较策略更新方法;d)内置机器人、使用人类游戏数据进行有监督学习的智能体和最终的强化学习智能体的 Elo 分数;e)在使用不同的选择方法时,比较平均获胜概率(RD:随机选择英雄,HWR:挑选获胜概率最大的英雄,MCTS:使用中高段位中的征召模式选择英雄。)

AI 教你打游戏

你肯定会关心腾讯 AI Lab 在 NeurIPS 2020 论文研究里测试的 40 个英雄都包括哪些:


可见里面不仅有瑶、孙膑等操作相对简单的英雄,也有露娜、公孙离这种复杂的——腾讯选择的还都是人类玩家在对战时经常用的那些。不过提交给 NeurIPS 2020 的论文是在几个月前完成的,从目前游戏中开放的第二十关挑战来看,在人机对决中绝大多数的英雄(除了两三个新英雄)都可以选了。

腾讯 AI Lab 在王者荣耀上的研究可谓成果丰厚,除了这篇 NeurIPS 2020 论文之外,腾讯 AI Lab 还有一篇监督学习方面的研究被 IEEE 期刊 TNNLS 收录《Supervised Learning Achieves Human-Level Performance in MOBA Games: A Case Study of Honor of Kings》:https://arxiv.org/abs/2011.12582


在第二篇论文中,研究人员提出了一套适用于 MOBA 游戏的特征和标签。在此基础上,AI 建模任务被定义为一个层级的多分类问题,通过神经网络模型来解决。


可以看到,AI 在游戏中使用的是和人类玩家一样的视角。

在人类玩家打 MOBA 游戏时,通常会分为三路开局:战士走上路,射手辅助走下路,法师在中路。然而通过自我博弈训练出的绝悟几乎不采用这样的套路,这或许为人类玩家未来提高战术水平提供了新的思路。

在短短两年时间里,绝悟从业余玩家水平提升到了精通 100 个英雄,甚至还能教人类打王者,这样的速度可谓惊人。最新的版本因而得名「绝悟完全体」。


最后,如果有人对战 AI 有了很大的挫败感,实践证明人工智能打王者荣耀的能力还不是完美的。有玩家在对战时看到了 AI 的迷惑之语:


另外,基于强化学习的绝悟还需要耗费大量的服务器资源,所以人机对战的活动是限时的。希望在不久的将来,我们能在队友断线重连的时候有绝悟 AI 来接手,完成五杀。

理论王者荣耀NeurIPS 2020绝悟强化学习
1
相关数据
深度强化学习技术

强化学习(Reinforcement Learning)是主体(agent)通过与周围环境的交互来进行学习。强化学习主体(RL agent)每采取一次动作(action)就会得到一个相应的数值奖励(numerical reward),这个奖励表示此次动作的好坏。通过与环境的交互,综合考虑过去的经验(exploitation)和未知的探索(exploration),强化学习主体通过试错的方式(trial and error)学会如何采取下一步的动作,而无需人类显性地告诉它该采取哪个动作。强化学习主体的目标是学习通过执行一系列的动作来最大化累积的奖励(accumulated reward)。 一般来说,真实世界中的强化学习问题包括巨大的状态空间(state spaces)和动作空间(action spaces),传统的强化学习方法会受限于维数灾难(curse of dimensionality)。借助于深度学习中的神经网络,强化学习主体可以直接从原始输入数据(如游戏图像)中提取和学习特征知识,然后根据提取出的特征信息再利用传统的强化学习算法(如TD Learning,SARSA,Q-Learnin)学习控制策略(如游戏策略),而无需人工提取或启发式学习特征。这种结合了深度学习的强化学习方法称为深度强化学习。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

蒙特卡罗树搜索技术

蒙特卡洛树搜索(英语:Monte Carlo tree search;简称:MCTS)是一种用于某些决策过程的启发式搜索算法,最引人注目的是在游戏中的使用。一个主要例子是电脑围棋程序,它也用于其他棋盘游戏、即时电子游戏以及不确定性游戏。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

置信区间技术

在统计学中,一个概率样本的置信区间(Confidence interval),是对这个样本的某个总体参数的区间估计(Interval Estimation)。置信区间展现的是,这个总体参数的真实值有一定概率落在与该测量结果有关的某对应区间。置信区间给出的是,声称总体参数的真实值在测量值的区间所具有的可信程度,即前面所要求的“一定概率”。这个概率被称为置信水平。举例来说,如果在一次大选中某人的支持率为55%,而置信水平0.95上的置信区间是(50%, 60%),那么他的真实支持率落在50%和60%之区间的机率为95%,因此他的真实支持率不足50%的可能性小于2.5%(假设分布是对称的)。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

策略网络技术

在强化学习中,策略网络指一组相对稳定的关系,这些关系具有非等级和相互依赖的性质,将各个行为者(actor)联系起来。

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

腾讯机构

腾讯,1998年11月诞生于中国深圳,是一家以互联网为基础的科技与文化公司。我们的使命是“通过互联网服务提升人类生活品质”。腾讯秉承着 “一切以用户价值为依归”的经营理念,为亿万网民提供优质的互联网综合服务。 腾讯的战略目标是“连接一切”,我们长期致力于社交平台与数字内容两大核心业务:一方面通过微信与QQ等社交平台,实现人与人、服务及设备的智慧连接;另一方面为数以亿计的用户提供优质的新闻、视频、游戏、音乐、文学、动漫、影业等数字内容产品及相关服务。我们还积极推动金融科技的发展,通过普及移动支付等技术能力,为智慧交通、智慧零售、智慧城市等领域提供有力支持。 腾讯希望成为各行各业的数字化助手,助力数字中国建设。在工业、医疗、零售、教育等各个领域,腾讯为传统行业的数字化转型升级提供“数字接口”和“数字工具箱”。我们秉持数字工匠精神,希望用数字创新提升每个人的生活品质。随着“互联网+”战略实施和数字经济的发展,我们通过战略合作与开放平台,与合作伙伴共建数字生态共同体,推进云计算、大数据、人工智能等前沿科技与各行各业的融合发展及创新共赢。多年来,腾讯的开放生态带动社会创业就业人次达数千万,相关创业企业估值已达数千亿元。 腾讯的愿景是成为“最受尊敬的互联网企业”。我们始终坚守“科技向善”的初心,运用科技手段助力公益事业发展,并将社会责任融入每一个产品。2007年,腾讯倡导并发起了中国互联网第一家在民政部注册的全国性非公募基金会——腾讯公益慈善基金会。腾讯公益致力于成为“人人可公益的创连者”,以互联网核心能力推动公益行业的长远发展为己任。腾讯公益联合多方发起了中国首个互联网公益日——99公益日,帮助公益组织和广大爱心网友、企业之间形成良好的公益生态,让透明化的“指尖公益”融入亿万网民的生活。

http://www.tencent.com/
围棋技术

围棋是一种策略性棋类,使用格状棋盘及黑白二色棋子进行对弈。起源于中国,中国古时有“弈”、“碁”、“手谈”等多种称谓,属琴棋书画四艺之一。西方称之为“Go”,是源自日语“碁”的发音。

推荐文章
暂无评论
暂无评论~