开源啦:连DeepMind也捉急的游戏,OpenAI给你攻破第一关的高分算法
圆栗子 发自 凹非寺
量子位 出品 | 公众号 QbitAI
写作“很好奇”,读作“不怕死”。
△ 佛系操作
打游戏的时候,有些平淡的操作,还没执行就看得到结果。
比如玩马里奥,可以不去踩敌人,一路往前跳。
可是,没试过怎么知道,哪些敌人可以踩?
一扇门,不推开怎么知道里面是什么?
△ 就是死,也要进去看一眼 (来自山下智博)
人类玩家有好奇心,大概AI也要有好奇心比较好。
OpenAI想要鼓励强化学习AI,去探索未知的世界,不要局限在已知的舒适区。
于是,团队推出了一种方法,叫做“随机网络蒸馏 (Random Network Distillation, RND) ”,专注培养AI的好奇心:隐藏房间什么的,只有好奇的AI才能发现。
当然,这方法不止用来打马里奥,不然就屈才了。
△ 蒙特祖玛的复仇
用RND加持的算法打蒙特祖玛的复仇 (最难的雅达利游戏,可称强化学习AI的噩梦),智能体逃出了第一关的全部24个房间,成绩远远超过人类的平均分数 (4.7k) ,以及现有最前沿的算法。
鼓励探索,当然是用高额奖励
RND是一种基于预测的方法。
给每一个备选的动作,预测一下结果:
如果,结果非常容易预测,奖励分就偏低。
结果越难预测,就表示越“未知”,奖励分也越高。
△ 第一次离开家,并不知道外面的危险 (还是来自山下智博)
重赏之下,AI探索新世界的意愿就会更强了。
不过,预测结果有个难点,叫做嘈杂电视问题 (Noisy-TV Problem) :
举个栗子,在一个迷宫游戏里,摆一台“电视”,播放随机频道。
走到电视里面前,智能体就停下来不走了。
一旦没有了“电视”,智能体又能正常玩耍了。
是预测受到了干扰。
为了避免这样的干扰,团队定义了预测误差的三个因素:
一号因素,预测误差很高,预测器无法从之前看到的例子中泛化。后面的经历会受到高预测误差的影像。
二号因素,预测误差很高,因为预测目标是随机 (Stochastic) 的。
三号因素,预测误差很高,因为缺少必要信息,或者预测器模型的局限性太大,无法适应复杂的目标函数。
OpenAI团队判断,一号是必要的,因为它把新颖程度量化了,二号和三号则需要竭力避免。
RND就是为了避免这两个因素,而诞生的探索奖。
上图是传统预测和RND预测的对比。
避免二号因素,就要让神经网络给出确定性的答案,而不是给出多个答案和它们各自的可能性;
避免三号因素,就要选择和目标网络相同的架构。
对蒙特祖玛的复仇来说,这样特殊的奖励机制尤其必要:
如果是一般的游戏,简单的探索策略就够用了,但蒙特祖玛里面,除了拿到钥匙有奖励、碰到骷髅会死之外,其余都是0,AI很难感受到游戏规则,也不易学到有用的经验。
加重探索奖,才能让AI更加理解游戏。
团队表示,RND不止蒙特祖玛的复仇适用,马里奥等等其他游戏也适用。以及,越过游戏范畴,更加广泛的强化学习AI也都可以用这个方法,让智能体对新鲜事物更好奇。
好奇的宝宝成绩好
从最简单的雅达利打砖块开始观察。
△ 砖块排列发生变化,奖励就会达到峰值
内在奖励,指探索奖;
外在奖励,指游戏中直接体现的奖励,如游戏分值。
每当智能体打下一块砖,砖块有了新的排列格式,内在奖励就会达到峰值 (训练伊始) 。
当它首次通过第一关的时候,内在奖励也达到了峰值 (训练数小时后) 。
再看超级马里奥。
内在目标与外在目标已经基本一致了。
智能体通过了11关,找到了许多隐藏的房间,并打败了库巴大魔王。
接下来,就是蒙特祖玛的复仇。
最好成绩,当然是24个房间都攻破,顺利通过第一关,得分17.5k。
并且,多数情况下,智能体都能解锁20-22个房间,得分14.5k。
对比一下,人类平均分是4.7k。
有代码,有论文
现在,OpenAI已经把RND开源了,可以从传送门前往瞻仰:
https://github.com/openai/random-network-distillation
还有,论文也公开了:
https://arxiv.org/pdf/1810.12894.pdf
博客在这里:
https://blog.openai.com/reinforcement-learning-with-prediction-based-rewards/
△ 吃蘑菇,变成弹簧 (依然来自山下智博)
— 完 —
加入社群
量子位AI社群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;
此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。
进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)
活动策划招聘
量子位正在招聘活动策划,将负责不同领域维度的线上线下相关活动策划、执行。欢迎聪明靠谱的小伙伴加入,并希望你能有一些活动策划或运营的相关经验。相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。
量子位 QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态
开源啦:连DeepMind也捉急的游戏,OpenAI给你攻破第一关的高分算法相关推荐
- DeepMind用ReinforcementLearning玩游戏
原文 : http://dataunion.org/?p=639 1.引言 说到机器学习最酷的分支,非Deep learning和Reinforcement learning莫属(以下分别简称DL和 ...
- Python游戏开发:最强大脑第一关,数字华容道
前言 freegames是Apache2许可的Python游戏集合,旨在用于教育和娱乐,完全是开源的,我们只要引用编写就好,当前在最强大脑的舞台上的第一关就是数字华容道,好多人都栽在了上面,如果你也想 ...
- qt 3d迷宫游戏_Steam上最硬核的恐怖游戏?玩家耗时一个月才通第一关!
说到恐怖游戏,游戏日报漆木第一时间想到的便是<逃生>系列.<层层恐惧>.<寂静岭>等.他们的共同特点无非就是恐怖,但难度都比较适中,主要体现在解密方面.而今天为大家 ...
- HackTheGame 游戏全攻略(各关攻略文章汇总)
HackTheGame是一个黑客主题的计算机游戏 游戏下载地址: https://www.hackerforever.com/guest.php?h=hackthegame 以下是我总结的各关过关方法 ...
- APP游戏开发十诫!第一个雏型就要搞定的事
APP游戏开发十诫!第一个雏型就要搞定的事 半路:在启动游戏 App 项目时,多数开发者都能条列出上百项的重要功能,似乎每个项目都非得完成不可,但到底哪些才是项目早期至关紧要,必须在第一个游戏雏型完成 ...
- 有趣的Python Challenge编程解谜游戏攻略二(5-9关)
**有趣的Python Challenge编程解谜游戏攻略二(5-9关)** 介绍 游戏介绍 0-4关攻略 写在前面 关卡 第5关 第6关 第7关 第8关 第9关 链接总结 第10关预告 介绍 游戏介 ...
- 热门计算机游戏排名,十大pc游戏排行榜 英雄联盟位居第一,第三游戏体验感很强...
说起电脑网络游戏大家可能会想到英雄联盟和穿越火线以及吃鸡等游戏,这些游戏的人气是很高的赢得很多男生的喜爱.今天排行榜123网为大家盘点了十大pc游戏排行榜,一起来了解一下. 十大pc游戏排行榜 1.英 ...
- 最新cocos2d-x 3.0博客教学 小游戏[史上最坑爹的游戏] 002第一关:关闭卡死的电脑
昨天做了主画面的选择,今天做第一关的关闭卡死的电脑,这个小游戏,这个游戏是很多的小游戏组合起来的,所以我们逐个击破,第一个游戏到底要如何做呢? 看看今天实现第一关的效果 这个第一个游戏不算太难 首先我 ...
- 计算机游戏14关攻略,游戏攻略大全(13-14关)
史上最坑爹的游戏是一款逆向思维的益智解密游戏,总共有24关,游戏的设计就是需要玩家的逆向思维能力.下面我们来一起看下,史上最坑爹的游戏13-24关的通关攻略. 史上最坑爹的游戏攻略第十三关:这关最重要 ...
最新文章
- android 轮播 中间变大,如何实现中间大两头小的轮播效果
- Python学习(10)元组
- SAP标准导出功能 - 删除默认选定格式
- hdu-1104-Remainder(BFS打印路径+数论)(%与mod的区别)
- JS setTimeout 与 setInterval
- python中定义数据结构_Python中的数据结构。
- 随机森林-集成学习方法(分类)
- 计算机平面设计论文范,计算机平面设计论文关于计算机平面设计中汉字艺术论文范文参考资料...
- p40_数据交换方式
- 前端进阶篇——02、CSS和JS
- 华硕笔记本屏幕亮度怎么调节?屏幕亮度调节方法
- Longhorn 云原生分布式块存储解决方案设计架构和概念
- python实现12306查询火车票
- 如何用计算机解锁苹果手机软件,屏幕显示连接到iTunes,如何解锁iPhone? -
- 安卓测试二(Espresso)
- 今天准备出发去珠海横琴,去长隆海洋乐园看鲨鱼宝宝了
- 【转】旅游推荐系统的演进
- 走Java道路怎么样,如何学习
- 中国移动社交行业有多厉害,现在就让你知晓!
- 梦想归梦想,现实还是现实
热门文章
- 百度又做电商;ofo 退出日本;Kotlin 1.3 正式发布 | 极客头条
- 赛事招募 | 互联网创客马拉松开show啦~比武招APP
- 水逆的美团滴滴与头条
- 奥巴马写的c语言正方形,团体程序设计天梯赛-练习集 L1-015 跟奥巴马一起画方块...
- cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration
- mysql php 问号_PHP / MySQL:某些字符未正确编码并显示为问号
- java服务 重启_Shell脚本自动重启Java服务
- python web报表_python django框架 渲染和ajax表单提交周报表
- java设计一个程序后怎么测试_Java语言程序设计(第1阶段学习测试)(都平)
- 史上最全的php面试题-带有答案,史上最全的PHP面试题-带有答案