紧急更新下降难度,《王者荣耀》绝悟 AI 难倒一片玩家
作者 | 神经星星
来源 | HyperAI超神经(ID: HyperAI)
在 5 月 1 日~ 5 月 4 日期间,玩家通过《王者荣耀》最新版本客户端进入游戏,即可与绝悟 AI 对战。一时间哀鸿遍野,普通玩家、游戏主播、职业选手,纷纷表示被绝悟 AI 虐到体无完肤。
《王者荣耀》的游戏主播们最近有些自闭了,因为被最新上线的游戏 AI 绝悟虐得太狠。
挑战 AI:主播连跪,职业选手也谨慎
「绝悟 AI」诞生自腾讯 AI Lab 和《王者荣耀》职业联赛团队的合作项目,在 2018 年的 KPL 秋季总决赛上,绝悟 AI 的 1v1 版本首次露面。
后来在 ChinaJoy 2019 上,绝悟 AI 首次向顶级业余玩家开放了四天的内测,在首日 504 场对战中,绝悟 AI 的胜率高达 99.8 %。
4 月 27-29 日,《王者荣耀》在虎牙、斗鱼、触手、企鹅、快手五个直播平台,用绝悟 AI 对战十支人类战队。
人类战队的结果,基本是以「被 AI 吊打」、「偷塔艰难取胜」、「无情屠杀」这类关键词为主。
主播和职业玩家都面对了一个强大的对手
在 5 月 1 日~ 5 月 4 日期间,玩家通过最新版本客户端进入游戏,即可与绝悟 AI 对战。
挑战绝悟 AI 的模式目前有六关,前五关没有门槛,最后一关要求玩家达到荣耀王者称号,或者巅峰赛积分 1400 才能进入。
上线半天即修复,为玩家降低难度
在绝悟 AI 上线前,官网称「第六关的绝悟 AI ,代表着 2019 年 KPL 冠军队伍的战斗力水平。」
更新《王者荣耀》即可与绝悟 AI 比试一番
所以绝悟 AI 上线后,受到了广大玩家的欢迎,但是面对强大的 AI ,人类玩家几乎全军覆没,全网哀嚎连续团灭,被绝悟 AI 狠狠教育。
一时间,网络上也出现各种玩家分享的「针对 AI 阵型」、「偷塔流」游戏经验,来面对强大的绝悟 AI。
5 月1 日 11:00 左右,专用服务器就面临满载,很多玩家就出现了无法进入游戏的问题。
《王者荣耀官网》发出不停机修复通告
在进行了游戏不停机修复后,有不少玩家表示,修复后第六关的人机难度降低了非常多,正常阵容都能打赢。
很多玩家认为绝悟 AI 的及时放水,也为他们找回了一点儿游戏自尊心。
5 月 4 日活动结束后,绝悟 AI 也将暂别王者峡谷,继续履行他的使命——将其在峡谷继续磨练智能决策与协作技能,以应用于现实,为服务人类zuozh。
围读论文:知己知彼,方能战胜绝悟
《王者荣耀》作为 MOBA(Multiplayer Online Battle Arena Games 多人在线战术竞技类游戏)的代表。游戏不同于其他游戏,MOBA 类游戏对于玩家的操作要求更高,游戏环境也会更加复杂。
基于这些特点,MOBA 游戏已经成为检验前沿 AI 的动作决策、预测能力的重要平台。
以《王者荣耀》为例,一局对战会产生 10 ^ 600 种游戏可能性,也会产生 10 ^ 18000 种可能的游戏操作。同时AI还需要在游戏当中进行偷袭、防御、兵线运营、技能成长等复杂操作。
截止目前,绝悟 AI 有两篇主要论文,分别在 2018 年和 2020 年发布。
论文一:5V5 分层宏观策略模型
2018 年,论文《MOBA 游戏 AI 的分层宏观策略模型(Hierarchical Macro Strategy Model for MOBA Game AI )》(论文地址:https://arxiv.org/pdf/1812.07887v1.pdf)
这篇文章中,团队提出了一种新的分层宏观策略模型(HMS),以在统一的神经网络中考虑阶段层和注意层, 该模型模拟了 MOBA 游戏的宏观策略操作,通过宏观战略决策,进一步指导微观战略决策。
论文中介绍和标注游戏区域与阵营
HMS 明确地模拟了 AI 玩家对游戏地图的关注,并考虑了游戏不同阶段进行建模。还提出了一种新颖的模仿跨 AI 玩家之间的通信机制,使得游戏 AI 之间能够交流和合作。
论文最后提到,使用《王者荣耀》作为 MOBA 游戏代表,来实施和评估 HMS,在 AI 与顶级1%人类玩家团队之间进行了比赛,AI 实现了 48% 的胜率。
论文二:1V1 复杂控制决策问题
2020 年的 AAAI 上,论文《利用深度强化学习掌握MOBA游戏中的复杂控制能力(Mastering Complex Control in MOBA Games with Deep Reinforcement Learning)》(论文地址:https://arxiv.org/pdf/1912.09729.pdf)被收录。
这篇论文的主要场景则是《王者荣耀》中的 1V1 模式,介绍了绝悟 AI 在 1v1 的游戏模式中的表现,即单个智能体的复杂动作决策问题。
在 MOBA 游戏中,1 v 1 场景下涉及的状态和动作空间,要远比传统的 1 v 1 游戏复杂得多。
所以,这也导致在这个问题中很难搜索到达到人类水平的控制策略。因此,在这篇论文中腾讯 AI Lab分别在系统设计和算法方面都做了大量的优化。
系统设计方面:设计的强化学习系统具有低耦合且扩展性较高的优点,这样他就可以实现在大规模问题上进行高效探索的可能性。
算法方面:在算法方面,加入了控制解耦、动作掩膜、目标注意力机制,同时对经典PPO算法进行了改进。
通过这些方面的改进,在王者荣耀 1 v 1 测试场景下,人工智能智能体能够击败顶尖的职业玩家。这篇论文中的 1V1 绝悟 AI 与大量顶级业余玩家进行了 2100 场对战。绝悟 AI 的胜率达到 99.81%。
在貂蝉(法师)、狄仁杰(射手)、花木兰(上单/战士)、露娜(打野/刺客)、鲁班(射手)等英雄上,绝悟 AI 对战顶级业余玩家的胜率都是 100 %。
等等,什么。。。胜率 100%?
打扰了。
推荐阅读
360金融首席科学家张家兴:别指望AI Lab做成中台
我们想研发一个机器学习框架,6 个月后失败了
“应付”大学作业,我花3小时写了一个“文本转手写”神器
几十秒构建端到端 AI,NeurIPS 2020 AutoDL 竞赛夺冠“黑马”原来靠的是这门技术
区块链重大技术分析:IBM、微软、苹果、Google 都做了什么?
你点的每个“在看”,我都认真当成了AI
相关文章:

SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例
原文:SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例sql server 安装第一个实例,默认实例的端口是1433, 一个库中如果有多个实例,从第二个实例开始的端口是动态端口,需要的话,自己手工指…
用“逐步排除”的方法定位Java服务线上“系统性”故障
说明:原文地址已经不可访问,其他地方有转载,不过很多丢失图片,所以,找到一处有图的重新配好图。 用“逐步排除”的方法定位Java服务线上“系统性”故障 Posted on 2014/08/25李斯宁(高级测试开发工程师&…
清华硕士爆料:这些才是机器学习必备的数学基础
现如今,计算机科学、人工智能、数据科学已成为技术发展的主要推动力。无论是要翻阅这些领域的文章,还是要参与相关任务,你马上就会遇到一些拦路虎:想过滤垃圾邮件,不具备概率论中的贝叶斯思维恐怕不行;想试…

LINUX环境下资源下载中文目录及中文文件名称问题
为什么80%的码农都做不了架构师?>>> http://www.yeeach.com/2009/04/09/linux%E7%8E%AF%E5%A2%83%E4%B8%8B%E8%B5%84%E6%BA%90%E4%B8%8B%E8%BD%BD%E4%B8%AD%E6%96%87%E7%9B%AE%E5%BD%95%E5%8F%8A%E4%B8%AD%E6%96%87%E6%96%87%E4%BB%B6%E5%90%8D%E7%A7%B…

dojo从asp.net中获取json数据
搞来有搞去终于有了个结果,主要是一开始犯了一些低级错误。 对于json不太了解的童鞋,可以看看这个:http://www.dreamdu.com/blog/2008/10/19/json_in_javascript/ 这个例子中主要是从数据库中读取数据,转换成JSON格式,…

RHEL5 install
RHEL5 安装转载于:https://blog.51cto.com/bhanv/477708
线上java问题排查
0.jps 这个输出java进程pid #jps 查看java的线程 #top -Hp 25448 如图25757这个线程比较耗时,看看他在做什么 注意需要折算出线程pid的16进制值,然后jstack。 可以打印更多信息 #jstack pid | grep -A 20 649d 参考:JVM调优之jstack找出…
GitHub标星10,000+,Apache项目ShardingSphere的开源之路
【编者按】几天前,当 GitHub 全球产品技术生态总经理 Michael Francisco 谈到中国开发者已经成为 GitHub 上最活跃的群体时,有开发者提出数量之后质量也要跟上。的确,过去十数年间,中国开源一直呈现企业热使用热社区冷开发冷的景象…

JAVA中LOCK
原文链接:http://www.cnblogs.com/dolphin0520/p/3923167.html 一.synchronized的缺陷 我们知道如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的…
【公开课预告】AutoML知多少
5月7日周四19:00,商汤泰坦公开课第010期,论文解读系列课程第二期即将开播!我们邀请到商汤科技的4位研究员,分享团队在AutoML方面的一系列研究工作,其中包含CVPR 2020、ICLR 2020等多篇最新论文成果,想要了解…
Linux kernel futex.c的bug导致JVM不可用
JVM死锁导致线程不可用,然后会瞬间起N个线程,当然也是不可用的,因为需要的对象死锁,然后耗尽文件句柄导致外部TCP无法建议拒绝服务,jstack之后就会恢复。 解决办法:替换中间件类库 ,比如httpcli…

ruby爬虫综述
http://ihower.tw/blog/archives/2941一个ruby爬虫的例子http://hi.baidu.com/anspider/blog/item/9da210425a0e4e179213c6fb.html

Exchange 2016集成ADRMS系列-12:域内outlook 2010客户端测试
接下来,我们来到域内安装了office 2010的机器上进行测试。 首先我们在客户端上强制刷新组策略,把我们刚才设置的策略刷新下来。 然后我们可以运行gpresult /h result.html来看看策略是不是已经下来了。 策略下来之后,我们打开客户端上面的out…

在Linux下编写Daemon
在Linux下编写Daemon 转自:http://blog.163.com/prevBlogPerma.do?hostmanyhappy163&srl1644768312010718111142260&modeprev 在Linux(以Redhat Linux Enterprise Edition 5.3为例)下,有时需要编写Service。Service也是…

JVM虚拟机参数配置官方文档
JDK8 https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/index.html JDK7 https://docs.oracle.com/javase/7/docs/technotes/tools/solaris/java.html 官方博客 https://blogs.or…
在Rust代码中编写Python是种怎样的体验?
作者 | Mara Bos,Rust资深工程师译者 | Arvin,编辑 | 屠敏来源 | CSDN(ID:CSDNnews)大约一年前,我发布了一个名为inline-python(https://crates.io/crates/inline-python)的Rust类库…

Docker配置指南系列(二):指令集(二)
pause: 停止一个容器的所有进程语法:ocker pause CONTAINER [CONTAINER...] port: 列出容器的端口映射,或者查看指定开放端口的NAT映射语法:docker port [--help] CONTAINER [PRIVATE_PORT[/PROTO]] ps: 列出容器语法࿱…
无需训练RNN或生成模型,我写了一个AI来讲故事
作者 | Andre Ye译者 | 弯月出品 | AI科技大本营(ID:rgznai100)这段日子里,我们都被隔离了,就特别想听故事。然而,我们并非对所有故事都感兴趣,有些人喜欢浪漫的故事,他们肯定不喜欢…
Java字节码instrument研究
MyAgent项目 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.…

怎样保持良好的心态
有一位朋友有一次气冲冲的跟我说:“气死我了!我刚刚发现我一位员工出了错,令产品出现了质量的问题,我修理了他一顿。。。 我问:”你认为你的生产流程里面可能一点错误都没有吗?“ 他说:”应该不…

web编程速度大比拼(nodejs go python)(非专业对比)
C10K问题的解决,涌现出一大批新框架,或者新语言,那么问题来了:到底谁最快呢?非专业程序猿来个非专业对比。 比较程序:输出Hello World! 测试程序:siege –c 100 –r 100 –b 例子包括࿱…

linux邮件服务
邮件服务要求:l 能够构建完整的邮件系统 能够正确设置DNS邮件服务器记录 l 能够配置sendmail服务器 设置客户端软件使用邮件服务器 准备工作: l 主机名:srv.benet.com /etc/sysconfig/network <永久的> l 域名 正向区域 bt.com完成NDS的…
MaskFlownet:基于可学习遮挡掩模的非对称特征匹配丨CVPR 2020
来源 | 微软研究院AI头条(ID: MSRAsia)编者按:在光流预测任务中,形变带来的歧义与无效信息会干扰特征匹配的结果。在这篇 CVPR 2020 Oral 论文中,微软亚洲研究院提出了一种可学习遮挡掩模的非对称特征匹配模块 &#x…

GDB调试--以汇编语言为例
#rpm -qa |grep gdb 下载: 安装 #tar -zxvf #./configure #make 使用GDB 以汇编语言调试为例 汇编语言实现CPUID指令 CPUID cpuid是Intel Pentinum以上级CPU内置的一个指令(486级以下的CPU不支持),他用于识别某一类型…

汇编语言系统调用过程
以printf为例,详细解析一个简单的printf调用里头,系统究竟做了什么,各寄存器究竟如何变化。 如何在汇编调用glibc的函数?其实也很简单,根据c convention call的规则,参数反向压栈,call…

switch语句中在case块里声明变量会遇到提示“Expected expression before...的问题
switch语句中在case块里声明变量会遇到提示“Expected expression before..."的问题 例如在如下代码中 1case constant:2 int i 1;3 int j 2;4 self.sum i j;5 break;GCC在case语句之后的第一行中声明变量时遇到问题。 这时需要在case块两端添加花括号&am…
帮AI体检看病一条龙服务,阿里发布“AI安全诊断大师”
如同一些出生免疫力就有缺陷的人一样,AI也存在免疫力缺陷。基于从源头打造安全免疫力的新一代安全架构理念,最近,阿里安全研究发布了一项核心技术“AI安全诊断大师”,可对AI模型全面体检,“看诊开方”,让AI…

Spring学习总结(7)——applicationContext.xml 配置文详解
web.xml中classpath:和classpath*: 有什么区别? classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找. 存放位置: 1:src下面 需要在web.xml中定义如下&…

GDB查看栈信息
栈:是程序存放数据内存区域之一,特点是LIFO(后进先出)。 PUSH:入栈 POP:出战 使用场景: 1.保存动态分配的自动变量使用栈 2.函数调用时,用栈传递函数参数,半寸返回地址…

数据库学习之路
今天迎来入冬的第二场雪,闲来无事就整理了下总结下工作以来所有数据库方面的书籍和资料,发现了不少,很多已经读过或者正在读的书籍,oracle真的很强大,直到现在发现才入门的水平,当然很多书读一遍是不行的&a…