技术架构分析:攻克Dota2的OpenAI-Five

文:CreateAMind陈七山

OpenAI昨日发布研究成果,宣布Dota2 5v5在限定条件下(英雄阵容固定,部分道具和功能禁用)战胜人类半职业选手。本文主要对其模型技术架构做一些分析总结。

1. 模型输入与输出

模型的输入是使用RAM(内存信息),如位置坐标,技能血量数值状态等,而不是图像像素信息。

模型输入主要分为两个部分:

  • 直接观测的信息:场面其他英雄的绝对位置,相对距离,相对角度,血量,状态等。
  • 人工定义抽象的信息:是否被攻击以及正在被谁攻击,炮弹距离命中的时间,朝向的cos与sin,最近12帧内的英雄的血量变化等。

模型的输出即是指AI所选择的动作,包括移动,攻击释放技能等。OpenAI将连续的动作,离散化对应到网格,并对各种技能定制化释放动作,以减少动作空间的大小。以下图为例,AI要释放一个攻击技能,需要选取这个技能,并选择一个目标单位周围网格内的一个位置:

值得注意的是,在Dota2游戏内还有其他动作,例如操控信使,购买装备,技能升级与天赋等,这些都是人工定义好,而不需AI决策的。而操控幻象分身,召唤物等涉及更复杂的多单位操作,则未在OpenAI当前版本的考虑范围内。

2. 网络架构与训练方式

网络架构架构局部如下图:

模型大图下载链接:https://d4mucfpksywv.cloudfront.net/research-covers/openai-five/network-architecture.pdf

总的来看,大量信息通过连接(concatenate)与全连接层(dense)层进行综合,作为1024维的LSTM的输入。LSTM综合时序信息,并输出决策向量,再用决策向量解构出详细动作。

训练方式:

  • 纯自我对弈训练。
  • 随机化训练:随机初始状态(血量速度移动等)的训练,以增强泛化能力。
  • 使用很高的γ=0.9997。γ为奖励衰减值,一般在其他环境中设置为0.98,0.998。
  • 大量计算:128,000CPU+256GPU,能做到每天模拟玩180年的游戏。

奖励(reward)设计:

  • 总体奖励:当前局面评估(塔的情况等),KDA(个人战绩),补兵表现等。
  • 合作奖励:全队的表现作为自己奖励的一部分。
  • 分路对线的奖励与惩罚:最开始分配一条路,前期发育时如果偏离就会惩罚。

3. 总结

用强化学习玩Dota2需要面对4个挑战:状态空间大,局面不完全可见(有视野限制),动作空间大,时间尺度大。

近期论文中提出的解决方案,大致有以下几个方向:

  • 状态空间大:解决方法如先用World Models抽象,再进行决策。
  • 局面不完全可见:一般认为需要进行一定的搜索,如AlphaGo的MCTS(蒙特卡洛树搜索)。
  • 动作空间大:可以使用模仿学习(Imitation Learning),或者与层次强化学习结合的方法。
  • 时间尺度大:一般认为需要时间维度上的层次强化学习(Hierarchical Reinforcement Leanring)来解决这个问题。

而神奇的是,OpenAI没有使用上述任一方法,而仅仅使用高γ值的PPO基础算法,就解决了这些问题。这说明凭借非常大量的计算,强化学习的基础算法也能突破这些挑战。

OpenAI没有使用的WorldModels,MCTS,IL,HRL等方法,既是学术界研究的重点方向,也是OpenAI-Five潜在的提升空间。这些更高效的方法若被合理应用,可以加快模型的学习速度,增强模型的迁移能力,并帮助模型突破当前的限制。

原文发布于微信公众号 - CreateAMind(createamind)

原文发表时间:2018-06-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据文摘

什么是机器学习做不到的呢?

13440
来自专栏机器学习算法与Python学习

数据科学家必用的25个深度学习的开放数据集!

原文:https://www.analyticsvidhya.com/blog/2018/03/comprehensive-collection-deep-le...

581140
来自专栏新智元

【TensorFlow超级指南】你能想到的TF教程和资源都在这里了

【新智元导读】众所周知,TensorFlow已然成为机器学习的热门工具。不论是学习还是从事与机器学习相关的工作,能够灵活使用TensorFlow可以大幅提高作业...

11820
来自专栏AI科技评论

面对未知分类的图像,我要如何拯救我的分类器

AI 科技评论按:当训练好的图像分类器遇到了训练数据里不存在的类别的图像时,显然它会给出离谱的预测。那么我们应该如何改进分类器、如何克服这个问题呢?

24640
来自专栏新智元

【干货】如何评价谷歌深度学习速成课程

18330
来自专栏机器之心

学界 | 大脑信号和翻译?利用脑信号实现英语、葡语和普通话三语互解

29690
来自专栏机器之心

论文结果难复现?本文教你完美实现深度强化学习算法DQN

33870
来自专栏AI科技评论

干货 | 杜克大学博士生温伟:云雾深度学习

AI 科技评论按:如今,基于深度学习的 AI 系统日趋产业化,如何有效地在云端和雾端进行落地成为一个核心问题。相对于传统机器学习,深度学习无论是训练还是部署都对...

17650
来自专栏达观数据

多模型融合推荐算法在达观数据的运用

多模型融合推荐算法在达观数据的运用 研发背景 互联网时代也是信息爆炸的时代,内容太多,而用户的时间太少,如何选择成了难题。电商平台里的商品、媒体网站里的新闻、小...

53560
来自专栏AI研习社

视频 | 10行代码,用大脑重量预测体重!硅谷AI网红亲身示范

Siraj Raval 作为深度学习领域的自媒体人在欧美可以说是无人不知、无人不晓。 凭借在 Youtube 上的指导视频,Siraj Raval 在全世界吸...

45560

扫码关注云+社区

领取腾讯云代金券