观看5万个游戏视频后,英伟达AI学会了自己开发「吃豆人」
晓查 发自 凹非寺
量子位 报道 | 公众号 QbitAI
AI学会玩游戏已经不是什么新鲜事了,无论是星际争霸还是王者荣耀,AI的水平都已经超过了顶级选手。
现在,AI不仅能玩游戏,还学会了造游戏。
在观看了5万个的吃豆人(Pac-Man)游戏视频后,英伟达的AI终于自己“山寨”了一个,而且事先没有看过一行原始游戏代码。
来自英伟达的研究人员说:通过观察细节,AI学会了规则。
这些细节包括:吃豆人的速度、移动能力;四个鬼魂的运动方式;吃豆人吃下大力丸会怎样;当鬼魂碰到吃豆人时,会发生什么。
知道这些细节后,AI完成了逆向工程,从中悟出了游戏逻辑,有模有样地仿制出来:
英伟达这个逆向游戏的AI叫GameGAN,顾名思义,就是用来生成游戏的GAN。GAN之前的用途主要是生成图片。
5月22日是吃豆人这款游戏的40岁生日,英伟达在这一天推出GameGAN,是和吃豆人的游戏开发商万代南梦宫合作的纪念活动。
GameGAN制造的游戏,连万代南梦宫工程师堤光一郎看到后都大吃一惊:“很难想象这是在没有游戏引擎的情况下重新创造出吃豆人。”
不知道这位游戏开发者会不会有某一天被AI替代的恐惧。
英伟达是如何做到的
GameGAN在训练过程中会读取游戏画面和键盘操作,通过限制操作(如玩家按下的按钮)来预测下一帧。它直接利用图像和动作对进行学习,而无需访问底层的逻辑或引擎。
解码器要学习如何解开帧中的静态和动态分量,从而使GameGAN的行为更易于解释。
要做到这一点,研究人员需要克服巨大的设计挑战,要让模拟物理引擎并保持长期一致性(保证模拟场景不随事件编号),还必须确保GameGAN在创建游戏过程中模拟的可预测性与随机性(在一定规则内设计出不同关卡)。
GameGAN由3个部分组成:记忆模块,动力学引擎和渲染引擎。
动力学引擎负责了解在游戏环境中哪些行为是“不允许的”(比如吃豆人无法穿墙而过),并负责对行为结果的反应方式进行建模。
内存模块负责建立长期一致性,让模拟场景不会随时间而变化,这部分是通过“记住”每个生成的场景来实现的。
渲染引擎负责渲染给定对象和属性贴图的模拟图像,并通过遮挡对象自动考虑深度。
GameGAN是生成对抗网络,当然也会有生成器和鉴别器,在这套模型中,系统尝试“欺骗”鉴别器来生成逼真的、连贯的游戏。鉴别器有三个:单图像鉴别器,行动条件鉴别器和时间鉴别器。
训练GameGAN的游戏数据由万代南梦宫提供,包括5万个游戏视频,总共有几百万帧。为了训练AI,英伟达的研究人员动用了4台DGX系统,每台均配备了Quadro GV100工作站级GPU。
英伟达并未透露训练时间,但是可以预测训练费用一定不菲。
训练AI的硬件
Nvidia的最新实验以类似的方式开始,因为其AI研究团队在50,000小时的“ 吃豆人”游戏中训练了四台计算机场(每台计算机均配备了Quadro GV100工作站级GPU)。
在实验中,Nvidia团队在四天内为GameGAN提供了50,000集(共几百万帧)的《吃豆人》
不仅仅是吃豆人
除了吃豆人外,英伟达还在Doom的基础上开发出了另一款《毁灭战士》。
比吃豆人负责的是,毁灭战士是一款3D游戏,GameAI还需要处理游戏前景和背景的遮挡关系。
当然,无论是吃豆人还是毁灭战士,英伟达GameGAN生成的画面都比较粗糙。研究人员承认现有模型存在着保真度问题。GameGAN生成的吃豆人游戏最大可达到128×128像素的分辨率,每秒约50帧。
但是这项技术有希望帮助游戏开发者加快开发新关卡、角色甚至代替部分游戏的创作过程。
对于一些用户可以自定义的游戏,比如《超级马里奥创造家》,AI是不是可以帮我们设计一下关卡呢?
传送门
论文地址:
https://cdn.arstechnica.net/wp-content/uploads/2020/05/Nvidia_GameGAN_Research.pdf
项目主页:
https://nv-tlabs.github.io/gameGAN/
作者系网易新闻·网易号“各有态度”签约作者
— 完 —
免费NLP直播课
图卷神经网络、BERT、对话生成、知识图谱
京东智联云&贪心学院联合举办,两周NLP系列直播,讲透图卷积神经网络、BERT、对话生成、知识图谱、词嵌入
第一场《基于知识图谱和图卷积神经网络的应用和开发》杨栋
第二场《深入浅出词嵌入技术》李文哲
第三场《BERT模型精讲》徐路
第四场《对话系统的中的生成问题》郑银河
扫码添加助教,进入直播交流群~
量子位 QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态
喜欢就点「在看」吧 !
观看5万个游戏视频后,英伟达AI学会了自己开发「吃豆人」相关推荐
- 玩了5万局游戏,英伟达让GameGAN自己生成「吃豆人」,世界首创无需游戏引擎...
本文转载自新智元(AI_era). 新智元报道 编辑:元子 [新智元导读]近几年来,英伟达在GAN这个领域越走越远.英伟达推出"GameGAN",不需要任何底层游戏引擎,用 ...
- 慢动作重播~ 英伟达AI能把普通视频,变成高质量慢动作视频
问耕 发自 凹非寺 量子位 出品 | 公众号 QbitAI 生活中,总有一些时刻,你想要慢动作重播. 比如孩子第一次走路,比如运动过程中的高光时刻,比如狗狗玩耍的瞬间--虽然现在手机也能录制慢动作视频 ...
- 活动报名丨英伟达AI Lab科学家、GET3D一作高俊:从图像中学习3D对象的生成建模...
12月12日(周一)上午9:00「青源Live第57期丨英伟达AI Lab科学家.GET3D一作高俊:从图像中学习3D对象的生成建模」将在线举办,多伦多大学博士生.英伟达AI Lab研究科学家高俊做报 ...
- Meta为元宇宙建全球最快AI超算,1.6万个A100 GPU,英伟达都赚麻了
晓查 发自 凹非寺 量子位 | 公众号 QbitAI 今天,扎克伯格宣布,Meta要建造全球最快的AI超级计算机,而且就在2022年年中建成. 这台超算被命名为"AI研究超级集群" ...
- 一文盘点NeurIPS'22杰出论文亮点!英伟达AI大佬一句话总结每篇重点,一并看透今年技术趋势...
Pine 明敏 发自 凹非寺 量子位 | 公众号 QbitAI 15篇NeurIPS'22杰出论文重磅出炉,具体亮点都是啥? 来来来,大佬已经帮你总结好了! 师从李飞飞,现在在英伟达工作的大佬,用49 ...
- 【新智元专访】Nervana CEO | 英特尔英伟达AI芯片霸主争夺战重装上阵
新智元编辑闻菲(右)专访英特尔数据中心事业部副总裁.人工智能解决方案部门总经理.Nervana Systems 联合创始人兼CEO Naveen Rao. 在英伟达GPU已在深度学习市场的赛道上领先几 ...
- 从没见过干净图片,英伟达AI就学会了去噪大法 | ICML论文
润滑栗 发自 凹非寺 量子位 出品 | 公众号 QbitAI △ Noise2Noise:我有特别的降噪技巧 如今,会去噪的神经网络,早已算不上稀有物种. 不过,英伟达的Noise2Noise, ...
- 英伟达 AI 凭空创作人物肖像照:看起来非常真实
(点击上方公众号,可快速关注) 转自:cnBeta http://www.cnbeta.com/articles/soft/666175.htm 据外媒 bgr 报道称,下图出现的人物中有两个共同点: ...
- 游戏怎么关闭英伟达NVIDIA Corporation提示
登录成功后,打开首界面,点击上方的[设置]--[常规]--[游戏内覆盖]勾叉掉! 就可以关于录制视频.捕捉屏幕的相关内容,并显示为开启状态,拖动绿色滑块,变成灰色后就表示已经成功关闭了
最新文章
- TM4C123G开发板学习记录(八)存储和安全管理(上)
- java集合框架类_Java集合框架总结—超详细-适合面试
- python logging简单使用
- js如何处理后台传递过来的Map
- rocketmq 4.X 扩容思路
- [leetcode] Max Points on a Line 判断最多有多少个点在同一条直线上
- 辞职腾讯去了小公司,从0到1搭建后端架构,工资就翻倍了
- mysql 序列 语句_MySQL 序列使用
- 从零基础入门Tensorflow2.0 ----五、24TF1.0dataset使用
- sqli-labs Less-11 and Less-12
- win32汇编--创建窗口程序(RadAsm)
- php制作judge评测机,HelloJudge2-Judger
- nginx代理邮件服务
- 学习记录之星瞳检测交通标志1
- 16位深度图片显示并保存
- [Matlab]Simulink绘制3维图像
- C - error: converting to execution character set:Illegal byte sequence
- Intune在个人设备中保护企业数据的MAM解决方案
- 直播短视频带货完美运营APP源码 购物直播交友系统源码
- 搭建一个Spring框架
热门文章
- 2018-2019-1 20165226 《信息安全系统设计基础》第4周学习总结
- 联想ThinkPad E450装系统后开机一直停留在BootMenu上,无法选择硬盘进入
- The UVALIVE 7716 二维区间第k小
- iOS如何转换十三位的时间戳
- 【程序员轶事】程序员的1927年12月31日午夜一秒谜案
- 《巨富们给年轻人的45个忠告》读后感
- linux y脚本,Linux中脚本的使用方法
- mysql 触发器判断不插入数据_mysql关于触发器怎么判断数据存在时更新不存在时添加呢!...
- AndoridSQLite数据库开发基础教程(8)
- AFF镜像工具集afflib-tools