去年,OpenAI 在 DOTA 的 1v1 比赛中战胜了职业玩家 Dendi,而在距离进阶版 OpenAI Five 系统战胜人类业余玩家不过一个月的时间,今天凌晨,它又以 2:1 的战绩再次完成对人类高级玩家的“屠杀”,GG(人类赢的最后一局纯属耍赖)。

相比之下,人类这次输给的是怎样的进阶版“AI 英雄”?

此次,OpenAI Five 对阵 5 个高级玩家(解说员+前职业玩家)——Blitz, Cap, Fogged, Merlini 和 Moonmeander,他们的平均天梯分 7000 左右。反观 OpenAI Five,根据公开资料,它的实力相当于人类玩了 180 年的游戏,而且每天都与自己进行对抗学习,学习过程非常复杂,需要在 256 个 GPU 和 128,000 个 CPU 上运行扩展版本的近端策略优化(PPO)进行训练。



它对每个英雄使用了单独的 LSTM(长短期记忆递归神经网络),并且没有人类数据,它会学习可识别的策略,这表明强化学习可以产生可实现规模的长期规划。

此外,就应用环境而言,不同于棋牌游戏的固定规则,像 DOTA2 这样的复杂视频游戏是 5v5 对决的战略游戏,况且,DOTA 游戏已经不断开发了十几年,游戏逻辑中有数十万行代码,且每两周更新一次,游戏语义在不断产生变化。

因此,AI 玩 DOTA 的难度可想而知,它首先需要解决以下四大问题:长时视野;局部观察状态;高维、连续的动作空间;高维、连续的观察空间。

▌模型架构

OpenAI Five 的每个网络都包含一个单层的、1024-unit 的 LSTM,它可以查看当前的游戏状态(从 Valve 的 Bot API 中抓取),并通过几个可能的 action heads 发出动作。每个 head 都具有语义含义,例如延迟动作的刻度数,选择哪一个动作,该动作在单元周围网格中的 X 或 Y 坐标等。Action heads 是独立计算的。

OpenAI Five 使用观察空间(observation space)和动作空间(action space)进行交互式演示。OpenAI Five 将世界视为 20000 个数字的列表,并通过发出一个包含 8 个枚举值(enumeration values)的列表来执行操作。通过选择不同的行动和目标,我们可以了解 OpenAI Five 如何编码每个动作,以及如何观察世界。下图是人类会看到的场景。



OpenAI Five 可以对与它所看到的相关的丢失状态片段做出反应。例如,直到最近,OpenAI Five 的观察区域才包括狙击手的技能范围(子弹落在敌人身上的区域)。然而,我们观察到 OpenAI Five 可以学习走出(虽然不能避免进入)狙击手的技能范围,因为当进入这个区域时,它可以看到自己的血量是在减少的。

▌探索

就算有学习算法能够处理较长的视野,我们仍然需要对环境进行探索。因为即使我们设定了各种限制,仍然有数百种道具、几十种建筑、法术、单元类型、长尾游戏机制,以及因此产生的各种组合,想要有效地探索这个巨大的空间其实并不容易。

OpenAI Five 可以从随机权重开始,从自我博弈中学习。 为了避免“策略崩溃”,智能体在训练的时候,80% 的游戏都是自我对抗, 另外 20% 则是与过去的自己进行对抗。在自我对抗时,英雄首先会漫无目的绕着地图游走。经过几个小时的训练后,智能体开始有了一些概念,例如建造、中路对线等。几天之后,他们始终采用基本的人类策略:试图从对手那里偷走 Bountyrunes等。 通过进一步的训练,它们可以熟练掌握 5 个英雄集中推塔的高级策略。

OpenAI Five 使用了 1v1 机器人里的随机化的方法 。它还使用了一个新的路线分配(lane assignment)策略。 在每个训练游戏开始时,他们随机地将每个英雄“分配”到一些 lane 的子集,在到随机选择的时间之前,如果英雄偏离这些路线,就会受到惩罚。

当然,也有奖励来帮助智能体探索环境,主要包括净值(net worth)、杀敌数(kills)、死亡数(deaths)、助攻(assists)、最后一击(last hits) 等指标。他们通过减少其他团队的平均奖励,来对每个智能体的奖励进行后续处理,以防止智能体找到正和博弈(positive-sum)的情况。

他们也对道具和技能构建进行了硬编码,同时,也通过脚本基线( scripted baseline)引入了信使管理( Courier management)。

▌Rapid




这个系统的实现使用了被称为“Rapid”的通用 RL 训练系统,它适用于任何多人模式环境。



训练系统分为 rollout workers,运行游戏副本,智能体(agent),用来收集经验,优化器节点(optimizer nodes)执行跨 GPU 组的同步梯度下降。每次训练还包括分别对训练机器人以及样本机器人进行评估的组件,以及监视软件,比如 TensorBoard,Sentry 以及 Grafana。



在同步梯度下降运算过程中,每一个 GPU 组件都会运算自己负责的批处理部分的梯度计算,随后整体梯度再进行平均计算。他们原本使用消息传递借口的规约算法进行平均计算,现在则使用英伟达的多卡通型框架 NCCL2 的封装函数来实行 GPU 并行计算以及网络间数据传输。同步 58MB 大小数据(用于 OpenAI Five 的参数)的延迟显示在表格之中,延迟时间足够低能满足大部分数据被进行并行运算的 GPU 标记。

▌与人类的不同

OpenAI Five 获取的信息和人类完全一致,但是系统能马上反应到类似位置、生命值以及物品更新情况等等人类玩家需要定时观察的信息。OpenAI Five 的平均 APM 在 150-170 之间(理论上最快可以达到 450 考虑到每四帧一动),平均反应时间为 80 毫秒,比人类平均速度要快很多。

很多职业选手在去年 TI 结束后都使用 bot 进行训练。根据 Blitz 的说法 solo bot已经改变了人们对 solo 赛节奏的看法,bot 偏向于快节奏风格,现在大多数选手也已经使用快节奏风格来和 bot 抗衡。



AI 在 Dota2 中的节奏和执行力非常强了,这是不是意味着它没有优化空间了?当然不是, 此次的 OpenAI Five 还是有诸多限制,比如系统在进行最后一击时较弱,其客观优先级与一个共同的专业策略相匹配,获得战略地图控制等长期奖励往往需要牺牲短期奖励。

Open AI 方面称,在今年后续的 TI 表演赛上,还会有职业玩家继续挑战 AI,但结果想来也是实力“嘲讽”人类。或许,更让人期待的是,在 Dota2 这样的复杂游戏中,是否会出现“AI vs AI”的神仙打架比赛?


Dota2团战实力蔑视人类,解剖5只“AI英雄”相关推荐

  1. Dota2团战AI击败人类最全解析:能团又能gank,AI一日人间180年

    夏乙 问耕 发自 凹非寺 量子位 出品 | 公众号 QbitAI  GG. 随着人类喊出这两个字母,一切都结束了. OpenAI研发的人工智能战队,首次在5v5的Dota2开黑团战对战中,击败人类 ...

  2. DeepMind新突破:雷神之锤3战场AI夺旗,团战胜率超过人类

    黑栗子 发自 凹非寺 量子位 出品 | 公众号 QbitAI  OpenAI战队在5v5刀塔比赛上打败人类,才是几天前发生的事. 如今,DeepMind为了训练AI电竞的团魂,也已把触手伸向了雷神 ...

  3. DeepMind刚向星际争霸 II 的玩家们下了战书!你的对手可能是只AI,而你毫不知情...

    大数据文摘出品 欧洲的星际争霸玩家们即日将有机会和Deepmind AI打场比赛了! 出战的AI是由DeepMind和暴雪联合培养的,经过了"特别的训练方式",在星际争霸界 II ...

  4. 谷歌有只AI,自动给黑白视频上色,走到哪它都认识你

    五色栗 发自 凹非寺  量子位 报道 | 公众号 QbitAI △ 输入黑白,生成色彩 谷歌培育了一只AI,是一只自动给视频上色的AI. 从彩色视频里,截取某一帧作参考.再把所有帧都变成黑白,AI仅仅 ...

  5. AI英雄 | 对话Gregory:机器智能和人类智力的不同 就像飞机和鸟的区别

    ▼ 大型年度AI人物评选--2017中国AI英雄风云榜已于12月4日在乌镇张榜,12月18日在北京国贸三期举行颁奖典礼. 榜单评选出年度技术创新人物TOP 10:商业创新人物TOP 10,获取完整榜单 ...

  6. AI 没让人类失业,搞 AI 的人先失业了

    最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 "这里写我跑路的消息实在太夸张了." 王葱葱哼笑 ...

  7. 手机手环都知道你在摸鱼,并告诉了老板......这只AI的前世,还能预测GPA

    鱼栗 发自 凹非寺  量子位 报道 | 公众号 QbitAI 老板想知道你有没有在努力工作,并不需要在办公室架满摄像头. 有一只AI,只要依靠手机.手环.手表这类设备自带的传感器,就能算出你是不是又在 ...

  8. 对话霍金弟子:AI能帮助人类到其他星球进行时空旅行 | AI英雄

    ▼ 点击上方蓝字 关注网易智能 为你解读AI领域大公司大事件,新观点新应用 本文系网易智能工作室(公众号smartman 163)出品,此篇为AI英雄人物第69期. 文 | 小羿 2018年3月31日 ...

  9. OpenAI Dota2 5v5模式击败人类,AI每天训练量抵人类180年

    今天凌晨,OpenAI通过官方博客宣布了其在Dota对抗上的新进展--由五个神经网络组成的团战AI团队,在5v5中击败了业余人类玩家,并表示,将有望挑战顶级专业团队. 打Dota乍一听可能没什么了不起 ...

最新文章

  1. 牛客华为机试第2题python
  2. 国王放米粒的C语言程序,云南大学软件学院C语言实验米粒问题.doc
  3. 分享适合程序员使用17 张壁纸
  4. Android-Universal-Image-Loader学习笔记(3)--内存缓存
  5. 嵌入式系统之操作系统篇
  6. idea 提示接口注释信息
  7. 第50课 书香阁的座位数
  8. LintCode Python 简单级题目 491.回文数
  9. 3dmax导出fbx没有贴图_SU教程 | 如何通过Skimp插件导入高质量模型、优化模型、匹配贴图?...
  10. 深入浅出之正则表达式(一)(转)
  11. JSP版LCX:端口转发神器 KPortTran
  12. 深度学习之神经网络(二)
  13. Etherpad配置及管理功能
  14. 计算机无法验证签名,你如何解决电脑无法验证数字签名的问题
  15. java 子网掩码 位数_java实现子网掩码转换为网络标识位 | 学步园
  16. ubuntu如何安装libz库
  17. 简约黑板擦特效表白网源码 附带wap自适应
  18. 从0开始学习 GitHub 系列之「01.初识 GitHub」----转载自stormzhang 原创文章
  19. 前列腺穿刺活检技术发展
  20. 24V转5V降压芯片PW2205,PCB布局图册

热门文章

  1. 如何修改被编译后DLL文件(入门)
  2. A. Rook, Bishop and King
  3. 可以一键抠图软件有哪些?一键抠图软件大分享
  4. 数字孪生 智慧电力可视化决策系统
  5. AI技术在智能海报设计中的应用
  6. K-Pop 粉丝是新的匿名者
  7. 一路对标顶级产品,奇遇XR为何仍不见起色?
  8. 东北大学计算机专业研究生入学考试2000年真题
  9. 手把手教你用LayaAir打包安卓APK
  10. Editplus扩展程序的删除