AI 模型 GameGAN 重写《吃豆人》,目标:看视频就能学习的 AI
英伟达称稍后会放出一个使用 AI 模型 GameGAN 复刻的《吃豆人》游戏,以致敬诞生 40 周年的街机版《吃豆人》。
根据英伟达发布的研究报告,GameGAN 目标是用神经网络取代游戏引擎。
它不同于以往用 AI 做游戏的例子。之前的谷歌 DeepMind 和 Open AI 还是在现有游戏框架中,被用来“玩游戏”,相当于是智能生成一个游戏对手。比如 OpenAI 被用来在 Dota2 5v5 中对战人类,OpenAI 2018 年通过学习人类演示,在蒙特祖玛的复仇游戏中刷出了 74500 分的高分。
GameGAN 则被用来“创作”游戏,是对现有游戏代码的取代。它在训练过程中摄入大量游戏剧本和键盘动作,通过观察场景和玩家的操作动作,预测下一帧游戏画面,而不访问底层游戏逻辑或引擎。
“当玩家按下左键的时候,这个 AI 会猜测画面的变化,并且生成一个“看起来是角色在往左走”的图像。 中间发生的事情,全部都在 AI 的黑盒中。 没人知道 AI 是怎么理解玩家操作的,得到的只有最终的输出结果。”
除了生成下一帧游戏画面,GameGAN 还学习环境的内在动力学,“我们有兴趣训练一个游戏模拟器,它可以模拟环境的确定性和随机性”。
GameGAN 包括动力引擎;记忆模块;渲染引擎;对抗性损失、循环损失训练和培训计划。
首先 GameGAN 要学习环境会如何跟随用户操作变化而改变,这涉及一些基本的规则,比如不能穿过墙壁。同时还要通过访问历史,产生一致性模拟。场景中的长期一致性实现通过记忆模块实现,GameGAN 使用内存模块,记住生成的静态元素,如背景,并在需要的时候适当检索。神经渲染引擎负责渲染模拟图像。此外,对抗训练用来完成图像和视频的合成任务,GameGAN 用对抗性训练学习环境动力学,并产生真实的时间相关模拟。
这次复刻《吃豆人》,主要训练的细节包括吃豆人的速度和移动能力;鬼魂的运作方式;吃豆人吃下大力丸后的变化;鬼魂与吃豆人相遇的场景。据了解,GameGAN 基于 PyTorch 开发,模型研发已经进行了 8 个月,关于复刻《吃豆人》只用了 4 天。
游戏开发商万代南宫梦为此次训练提供了总计几百万帧、50000 集的《吃豆人》剧本。该公司的 Koichiro Tsutsumi 表示:“在看到这个结果时,我们都感到震惊,大家都无法相信可以在没有游戏引擎的情况下再现了南梦宫的经典游戏《吃豆人》。这项研究将帮助游戏开发人员加快新关卡、角色甚至游戏的开发。一想到这一点,我们就感到十分兴奋。”
不过,复刻游戏只是开始,英伟达的目标是扩展模型来捕捉更复杂的现实世界环境。英伟达多伦多研究实验室主任 Sanja Fidler 表示:“我们最终将训练出一个 AI,其只需通过观看视频和观察目标在环境中所采取的行动,就能模仿驾驶规则或物理定律。” 而 GameGAN 只是第一步。
Nvidia GameGAN Research:
https://cdn.arstechnica.net/wp-content/uploads/2020/05/Nvidia_GameGAN_Research.pdf