鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

怎么教AI打游戏呢?当然是直接下指令啦。

告诉AI造农民,基地就开始唰唰往外吐农民:

下方英文指令:创造新农民

指挥农民挖矿造兵工厂,一句话同样搞定:

发现敌方大龙,当然是直接开打啊:

前线打得欢,经济也不能落下:

这是来自Facebook AI的MiniRTSv2,不以微操取胜,它能用自然语言教会AI如何玩转实时战略游戏。

这项研究登上了NeurIPS 2019,代码、模型、数据集均已开源

自然语言指导即时战略

MiniRTSv2是一款专为人工智能研究而设计的精简策略游戏。在游戏中,玩家需要指挥弓箭手、大龙和农民等单位打爆对手老巢。

虽然要比DOTA2,星际争霸这样的商业游戏简单得多,但MiniRTSv2依然是一款复杂的即时战略游戏。

开局同样是一张隐藏地图。

AI必须考虑到大型状态-动作空间带来的复杂情况,协同不同的兵种,并根据对手的行动调整战略布局。

与AlphaStar这样直接模仿人类策略的AI不同,在MiniRTSv2中,Facebook AI尝试了一条新的路径,让AI先用自然语言生成计划,再交由单独的模型执行操作。

也就是说,这是一个分层决策的过程。系统通过两个AI模型来执行任务,一个负责不断观察游戏状态,并用自然语言给出指令,即指导网络;另一个需要解读指令并执行决策,即执行网络

在游戏环境的每个时间步骤上,观察编码器会对每个游戏对象(游戏单位,建筑物或资源)的空间位置和非空间内部状态进行编码。

这一编码器会为每个单位,资源生成单独的特征向量。

之后,辅助编码器会帮助AI学习其他全局游戏的属性特征。

这些特征既会被用到执行网络中,也会被用到指导网络中。

为了训练这个框架,Facebook收集了5392个游戏的数据集,这些游戏都由两人协同进行,一人指挥,一人操作。数据集包含了76000种人类配合情况,涵盖了广泛的策略。

两种模型都在有监督的情况下训练。

由于用来训练指导网络的数据集来自于人类语言,指导网络并不能直接形成原始的指令句,所以AI不得不学习推理,“理解”自然语言,而后制定战略计划并予以实施。

并且,这一模型不仅能生成自然语言命令,还能结合上下文阅读理解。

神奇的是,这么一通折腾,AI真的变强了。

不仅能像人类一样给出合理的指令,比如说何时造农民,何时造飞龙,在与用其他方法训练的AI对手对战的时候,基于NLP的AI胜率达到了57.9%

One More Thing

另辟蹊径,用自然语言来教AI打游戏,并不是研究人员们一时心血来潮的小娱乐。

使用自然语言来作为分层决策的辅助手段,实际上是在推助人工智能利用和理解自然语言能力的提升,使其能够应用于更加广阔的场景,例如,如何让AI更好地适应不熟悉的任务和环境。

此外,这项研究或许也能催生出更懂人类口头或书面指令的AI系统,从而使残障人士能够更容易地使用各种现代电子设备。

玩转游戏,只是AI的第一步。

微软为专门为残障玩家设计Xbox无障碍控制器

传送门

Facebook博客:

论文地址:

项目地址:

数据集:

加入社群 | 与优秀的人交流

小程序 | 全类别AI学习教程

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「好看」吧 !

说人话教AI打游戏,Facebook开源迷你版星际争霸,成果登上NeurIPS 2019相关推荐

  1. 教ai玩游戏_简单解释:DeepMind如何教AI玩视频游戏

    教ai玩游戏 by Aman Agarwal 通过阿曼·阿加瓦尔(Aman Agarwal) 简单解释:DeepMind如何教AI玩视频游戏 (Explained Simply: How DeepMi ...

  2. 在《我的世界》里教AI玩游戏,不仅建城堡还能玩分身

    本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 作者:杜伟 教 AI 玩游戏一直是非常有趣的研究课题,<我的世界>也成为了广大研究者的「实验田」.近日, ...

  3. 有AI学会控制核聚变反应堆了,来自DeepMind,登上今日Nature

    丰色 发自 凹非寺 量子位 | 公众号 QbitAI DeepMind在蛋白质折叠问题上实现巨大突破后,目标又转向核聚变了. 最近,它开发出了世界上第一个深度强化学习AI--可以在模拟环境和真正的核聚 ...

  4. 【AI周报】首款高容错通用量子计算机原型登上Nature;SIGIR 2022 | 快手联合武汉大学提出序列推荐的多粒度神经模型

    01 # 行业大事件 首款高容错通用量子计算机原型登上Nature 理论上,量子计算机可以解决常规计算机在宇宙生命周期时间内也无法解决的问题.然而,我们需要大量的工程和技术才能将其「理论上」的能力兑现 ...

  5. Facebook开源了超大规模图嵌入算法,上亿个节点也能快速完成

    https://www.toutiao.com/a6675562914365047300/ 图,是很有用的数据结构,用节点 (Node) 和边 (Edge) 织成一张网.比如,知识图谱就是这样的网. ...

  6. Facebook开源 PyTorch版 fairseq,准确性最高、速度比循环神经网络快9倍

    今年5月,Facebook AI研究院(FAIR)发表了他们的研究成果fairseq,在fairseq中,他们使用了一种新型的卷积神经网络来做语言翻译,比循环神经网络的速度快了9倍,而且准确性也是现有 ...

  7. 钟南山团队携手腾讯研发新冠重症AI预测模型,成果登上Nature子刊

    萧箫 发自 凹非寺  量子位 报道 | 公众号 QbitAI AI也能预测新冠重症患者了. 钟南山院士团队与腾讯AI Lab一起,共同研发了一个预测COVID-19患者病情发展的AI模型. 这个模型可 ...

  8. Facebook 开源增强版 LASER 库:可实现 93 种语言的零样本迁移...

    雷锋网 AI 科技评论按:去年 12 月份,Facebook 在论文中提出了一种可学习 93 种语言的联合多语言句子表示的架构,该架构仅使用一个编码器,就可以在不做任何修改的情况下实现跨语言迁移,为自 ...

  9. Facebook 开源增强版 LASER 库:可实现 93 种语言的零样本迁移

    雷锋网 AI 科技评论按:去年 12 月份,Facebook 在论文中提出了一种可学习 93 种语言的联合多语言句子表示的架构,该架构仅使用一个编码器,就可以在不做任何修改的情况下实现跨语言迁移,为自 ...

最新文章

  1. 寻找优秀的程序员之实战指南-1
  2. 戴森要搞能爬楼梯的吸尘器,两项专利设计现已提交
  3. 已经入门了C++,后面的路怎么走?
  4. C# 字符串 数据类型 判断 与特定规则验证
  5. WebSocket原理及使用场景(转载)
  6. mysql 时间差_后端从mysql取值返回0时区时间数据的问题
  7. JVM笔记1:Java内存模型及内存溢出
  8. oracle时间加减的语句写法
  9. vue插件开发练习--实用弹窗
  10. Python的矩阵分块
  11. 【Golang】家庭收支记账软件
  12. 约分最简分式java
  13. 红​字​和​蓝​字​冲​销(红字冲正、蓝字冲正)
  14. jQuery--样式操作(addClass()、removeClass()、toggleClass()、css())详解
  15. lv6 网络编程(9)-网络编程扩展下
  16. 用python独立制作Doip刷写ECU工具
  17. 应用pagehelper实现大屏展示自动换页
  18. 【C语言】动态内存管理 [进阶篇_ 复习专用]
  19. 设计师找灵感,就上这5个网站~
  20. python语言是 创造的_慢步python,如何用python语言创造出一个真正的独立exe程序?...

热门文章

  1. 《iOS 6核心开发手册(第4版)》——2.1节UIControl类
  2. JavaScript引用方法说明
  3. 如何通过网络,辨别数字世界的真假
  4. ***PHP中empty()和isset()的区别
  5. 读《程序员的SQL金典》[4]--SQL调优
  6. oracle中生成大批量数据的方法-下
  7. 再次分享一个多选文件上传方案“.NET研究”
  8. 开发Linux系统下的磁盘加密方法详解
  9. 按键的c语言代码表,各种按键模式的扫描
  10. oracle期末重点,oracle期末复习题及答案