原标题:4 分钟!OpenAI 的机器手学会单手解魔方了,完全自学无需编程

来源:OpenAI

编辑:小芹,鹏飞

本文转自公众号:新智元

【导读】OpenAI的机器手学会单手解魔方了,而且还原一个三阶魔方全程只花了4分钟,其灵巧程度让人自叹不如。你对机器手解魔方怎么看?

给你一个魔方,只允许使用一只手,还时不时有人给你捣乱,你能在4分钟内还原它吗?我不能,两只手都不行。

OpenAI的仿人机器手Dactyl做到了。现在它转魔方的视频被疯狂刷屏,网友纷纷表示:人工智能机器人的一个新里程碑诞生了!这是机器人在机体灵活性以及机器学习软件方面的飞跃!

视频中我们看到,这只机器手虽然动作看起来有点笨拙,让人老是悬着一颗心仿佛魔方时刻都可能掉下来,但每一步动作最终都非常准确。

视频的后半部分研究人员加大了难度:用布遮挡、使用工具干扰,机器手依然在忘我的玩着魔方。

对于一个成年人来说,单手操控三阶魔方其实也不是一件容易的事情。而一只机器手能够达成这样的成就,真的让人印象深刻!

MIT著名机器人专家和教授Leslie Kaelbling表示根本没想到它居然能够完成这项操作!密歇根大学机器操控专家Dmitry Berenson对此也给予肯定,并大加赞扬。

OpenAI训练类人机器手来解魔方的尝试,早在2017年5月就开始了。之所以对解魔方情有独钟,是因为研究人员认为,如果能成功训练这样一只机器手来完成复杂的操作任务,就能为通用型机器人奠定基础。

在2017年7月,OpenAI在模拟环境中解决了魔方。但直到2018年7月,机器手解魔方仍然只能操作一个方块。现在,这个目标终于达成,请观看下面视频,机器手在约4分钟的时间里成功还原了一个三阶魔方。

这是机器手解魔方的完整过程,视频未经任何编辑

单手解魔方对人类来说都是一项具有挑战性的任务,孩子们需要几年的时间才能掌握所需的灵活性。机器手也仍没完美掌握,成功率只有60%。

接下来,我们将详细描述OpenAI机器手解魔方的方法。

单手解魔方:OpenAI新算法能无限生成仿真环境

OpenAI使用强化学习和Kociemba算法训练神经网络来模拟解决魔方问题。

我们专注于一个机器目前难以掌握的问题:感知和灵巧的操作。因此,我们训练神经网络来实现由Kociemba算法生成的还原所需的旋转和翻转。

域随机化使得仅在模拟中训练的网络可以转移到真实的机器人上

任务中面临的最大挑战是在模拟环境中创建足够多样化的环境来捕捉真实世界的物理环境。对于像魔方和机器手这样复杂的物体来说,很难测量和建模摩擦、弹性和动力学等因素,而仅靠domain randomization是不够的。

为了克服这一问题,我们开发了一种新的方法,称为自动域随机化(Automatic Domain Randomization,ADR),该算法能够无休止地在仿真中生成越来越困难的环境。

这样,我们就不必对现实世界做一个精确的建模,而且在模拟中学习到的神经网络可以迁移应用于现实世界。

ADR从一个单一的、非随机的环境开始,在该环境中,神经网络学习解魔方。随着神经网络性能的提高并达到性能阈值,域随机化的量也随之增加。这使得任务更加困难,因为神经网络现在必须学会将其推广到更随机的环境中。网络不断学习,直到再次超过性能阈值,然后更多随机化,重复这个过程。

ADR适应魔方的大小

随机化的参数之一是魔方的大小(上图)。ADR从一个固定大小的魔方开始,随着训练的进行,逐渐增加随机化的范围。我们将同样的技术应用于所有其他参数,如魔方的重量、机器人手指的摩擦力和手的视觉表面材料等。因此,神经网络必须学会在所有这些越来越困难的条件下解魔方。

自动与手动的域随机化

Domain randomization要求我们手动指定随机化范围,这很困难,因为太多的随机化会使学习变得困难,但太少的随机化则会阻碍迁移到真正的机器人。ADR通过自动扩展随时间变化的随机范围来解决这个问题,不需要人工干预。ADR消除了对领域知识的需求,使我们的方法更容易应用于新任务。与手动域随机化相比,ADR还使任务始终具有挑战性,训练从不收敛。

在魔方块翻转任务中,我们将ADR与手动域随机化进行了比较,这个任务已经有了一个强大的基线。在开始阶段,ADR在真实机器人上的成功次数较少。但随着ADR增大熵值(熵值是环境复杂性的度量),性能最终会比基线性能翻倍,无需人工调整。

稳健性测试

利用ADR,我们能够在仿真环境中训练神经网络,再用到真实机器手上解魔方。这是因为ADR将网络暴露于无穷无尽的随机模拟中。正是由于训练过程中的这种复杂性,使网络可以从模拟世界转移到现实世界,因为它必须学会快速识别和适应它所面对的任何物理世界。

机器手解魔方时对它施加干扰

为了测试我们的方法的局限性,我们在单手解魔方的时候做了各种各样的干扰实验。这不仅测试了我们控制网络的稳健性,也测试了我们的视觉网络,在这里我们用视觉网络来估算魔方的位置和方向。

我们发现,我们用ADR训练的系统对干扰的稳健性令人惊讶,尽管我们没有对这些干扰条件进行过训练:在所有干扰测试中,机器手都能成功地完成大多数翻转和旋转面,尽管性能没有达到最佳。

元学习

我们认为,元学习,或learning to learn,是构建通用系统的一个重要前提,因为元学习使它们能够快速适应环境中不断变化的条件。ADR背后的假设是,一个记忆增强网络与一个充分随机化的环境相结合,导致了emergent meta-learning,其中网络实现了一个学习算法,允许自己快速调整其行为以适应其所部署的环境。

为了系统地测试这一点,我们测量了神经网络在不同的扰动下(如重新设置网络的内存、重新设置动态、或断开一个关节)每次翻转魔方(旋转魔方使不同颜色的面朝上)成功的时间。我们在仿真环境进行这些实验,这使我们能够在一个受控的环境中进行超过10000次的性能测试。

一开始,随着神经网络成功地完成更多的翻转,每次连续成功的时间都在减少,因为神经网络学会了适应。当施加干扰时(上图中垂直的灰色线条),我们看到了成功时间的一个峰值。这是因为网络采用的策略在变化的环境中不起作用。然后,网络重新学习新的环境,我们再次看到成功的时间减少到先前的基线。

下图是机器手在模拟环境中解魔方的可视化。

我们使用可解释性工具箱中的一个构件,即非负矩阵分解,将这个高维向量压缩成6组,并为每组分配一个独特的颜色。然后在每一步中显示当前主导组的颜色。

为什么说转个魔方就称得上实现了机器人技术的飞跃?

实际上会玩魔方的机器人并不只有Dactyl一个。那些专门被设计用来解魔方的机器人,甚至可以比Dactyl更快地处理三阶、甚至更高阶的魔方,那么为什么只有Dactyl获得如此高的评价呢?

OpenAI的研究科学家和机器人技术负责人彼得·韦林德(Peter Welinder)认为,原因就在于Dactyl不是专门用来玩魔方的!玩魔方只是一个demo,而Dactyl最大的亮点在于“自学习”!

目前人工智能机器人之所以能够在特定场景下超越人类,因为它是针对这个特定任务进行不断的微调和优化后的结果,通过编程来尽可能高效地执行任务。但跳出机器人的“舒适区”后,它可能连人类的婴儿都不如。

人工智能和机器人行业一直希望达成这样的目标:制造一个机器人,它可以自己学会处理各种现实世界中的实际任务,而无需经过长时间的训练或者有针对性的编程。是Dactyl让他们看到了曙光!

Dactyl拥有“自学习”特性,这意味着它能够自动适应各种场景。OpenAI希望有一天,只存在科幻电影里的经典机器人角色,能够走出荧幕,走进千家万户,为人类提供服务。

OpenAI团队认为,Dactyl此次成功解决魔方任务也印证了其可以在处理实际问题之前,通过仿真训练学习新任务。

责任编辑:

魔方软件测试自学,4 分钟!OpenAI 的机器手学会单手解魔方了,完全自学无需编程...相关推荐

  1. 用计算机编程解魔方,4 分钟!OpenAI 的机器手学会单手解魔方了,完全自学无需编程...

    OpenAI 的机器手学会单手解魔方了,而且还原一个三阶魔方全程只花了 4 分钟,其灵巧程度让人自叹不如. 给你一个魔方,只允许使用一只手,还时不时有人给你捣乱,你能在 4 分钟内还原它吗?我不能,两 ...

  2. OpenAI“单手解魔方”被公开质疑,Gary Marcus称七大问题涉嫌误导

    全世界只有3.14 % 的人关注了 青少年数学之旅 近日,"OpenAI的机器手在4分钟内单手成功还原魔方"引起刷屏,然而,这一成就被著名机器学习怀疑论者马库斯质疑了,马库斯逐条列 ...

  3. OpenAI机械手单手轻松解魔方,背靠强化学习+新技术ADR

    编译 | 夕颜 出品 | AI科技大本营(ID:rgznai100) [导读]10月15日,人工智能研究机构OpenAI发布了一条机械手单手解魔方的视频.这个自学式的类人机器人手臂名为 Dactyl, ...

  4. 小学生手写Python程序解魔方!这是高手,这绝对是高手!

    导读:最近,微博上看到一位孩子的爸爸,在晒其儿子手写程序解魔方的过程,看完后,觉得特别好玩.顿时有种再不学编程,连小学生都赶不上的危机感,哈哈哈!!! 作者:丁彦军 来源:恋习Python(ID:sl ...

  5. 小学生手写Python程序解魔方 这绝对是高手

    昨天,微博上看到一位孩子的爸爸,在晒其儿子手写程序解魔方的过程,看完后,觉得特别好玩.顿时有种再不学编程,连小学生都赶不上的危机感,哈哈哈!!! 整个详细过程如下: 太厉害了,又来了一个别人家的孩子, ...

  6. 解魔方机器人系列(一)kociemba算法

    安装 apt-get install libffi-dev apt install python-pip pip install setuptools pip install kociemba 使用 ...

  7. OpenAI解散机器人团队,曾试图造AGI机器人,创始人:最好的决定

    刚刚,OpenAI突然宣布解散机器人团队! 据VentureBeat报道,OpenAI联合创始人.机器人团队负责人Wojciech Zaremba表示,目前公司已经将重心转移到其他领域. OpenAI ...

  8. Solving Rubik's Cube with a Robot Hand:OpenAI训练机械手臂解魔方

    说起<终结者>系列电影,我想最令人印象深刻的就是阿诺.施瓦辛格所饰演的T-800机器人,他那像人的手一样灵活的机械骨骼手臂可以说是相当的深入人心.继会玩DOTA的OpenAI Five后, ...

  9. 真正的“魔方大师”来了!AI可以在20步内解开魔方

    (图:2018年4月10日星期二,在美国佐治亚州亚特兰大市,魔方创作者埃尔诺·鲁比克(Erno Rubik)正在签名.出生于匈牙利的鲁比克于1974年创造了这个五彩魔方,据估计,自此魔方在全世界已经售 ...

  10. 【机器人解魔方秒杀人类】MIT学生开发机器人解魔方仅需0.38秒!(视频)

    2016年年底一个名为"Sub1 Reloaded"的机器人用时0.637秒复原一块三阶魔方,并创造了吉尼斯世界纪录.现在一个由麻省理工学院(MIT)学生Ben Katz和软件开发 ...

最新文章

  1. 白帽子讲Web安全(纪念版)
  2. python中浅拷贝和深拷贝分析
  3. 计算机网络技术与计算机应用技术,计算机网络技术和计算机应用技术.pdf
  4. JDK9的新特性:String压缩和字符编码
  5. 10自带sftp服务器_WinSCP v5.15.3 免费的 开源图形化 SFTP 客户端
  6. 直面最大挑战双11 阿里数据中台为商家带来确定性保障
  7. 如何使用PressForward进行内容创建
  8. utilities(matlab)—— mat2imgcell
  9. [DB] oracle删除重复数据
  10. 普通循环和numpy速率对比
  11. html自动调用js函数,使用HTML按钮调用JavaScript函数
  12. 设备\Device\Harddisk1\DR1 有一个不正确的区块
  13. 游戏运行时,WIN2003报错:设备 \Device\Harddisk0有一个不正确的区块。
  14. android停止补间动画,android 帧动画,补间动画,属性动画的简单总结
  15. freemarker导出word如何换行
  16. python selenium下载图片_python 登陆开心网图片批量下载-selenium实现
  17. 多目标进化算法详细讲解及代码实现(样例:MOEA/D、NSGA-Ⅱ求解多目标(柔性)作业车间调度问题)
  18. GX works2 三菱PLC 显示注释后代码行变宽的解决方法
  19. 你真的知道什么是元音什么是辅音吗?
  20. 异常解决:java.lang.IllegalStateException: Failed to introspect Class

热门文章

  1. JavaScript-作用域和作用链
  2. 深度学习(三) 卷积神经网络入门与实践
  3. 再谈Qt实现Rasdial拨号问题(说说项目中遇到的问题和解决方案)
  4. 牛逼,个人开发者可以申请微信支付了!
  5. ckplayer(超酷网页视频播放器)
  6. SQL注入时order by 后面加数字的作用
  7. 从安防监控走进手机VR 红外线LED翻身
  8. win10资源管理器怎么打开_熟记这些Win10常用快捷键及使用技巧,提高工作效率,建议收藏...
  9. 地理空间分析中的常用python操作
  10. 计算机毕业设计之java+springboot基于vue的网上图书商城系统