分享
发布时间:2017-10-18 15:48 电子爱好者网

浅谈机器人编程新技能,神经使命编程NTP原理

分享

                                              在温哥华举办的IROS大会上,计算机视觉专家、斯坦福AI Lab Vision Lab主任李飞飞做了 A Quest for Visual Intelligence 的讲演,这也是李飞飞初次参加IROS这一机器人为主题的大会。值得注意的是,近来在Arxiv发现了一篇叙述新式机器人学习结构的论文《Neural Task Programming: Learning to Generalize Across Hierarchical Tasks》,该论文的首要作者来自于斯坦福,其辅导教师正是李飞飞及其老公Silvio Savarese。这也标志着人工智能和机器人两个社区在视觉与感知方面的重合度越来越大,之后的协作也会越来越严密。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              我们提出了一种名为神经使命编程(NTP)的新式机器人学习结构,该办法能够经过较少的演示和神经程序引导进行学习。NTP可将输入的标准性使命(例如使命的视频演示)递归地将其分解成更精密的子使命标准, 这些标准被传递到分级神经程序,经过可调用的底层子程序是与环境进行交互。一起,我们在三个机器人操作使命中验证了我们的办法,在试验中,NTP展现了在显现分层结构和组合结构的次序使命的强泛化才干化。 试验成果表明,NTP在学习长度不定、可变拓扑和不断改动的不知道使命的学习和拓宽有较好的作用。

                                              自越来越着重 人机协作 的今日,机器人一般在某些特定环境中与人进行长时刻的交互,如物体分类、安装、和整理等。可是以往的机器人一般需求在固定的场景下才干与人交互,怎么让机器人能习惯杂乱的操作使命、新的使命方针和周围环境,则是机器人技能中的一个严重应战。

                                              想象一个库房中的物体分类使命,这一般包含分类、检索、打包等具体使命,每个使命又能够分解为若干个动作,如抓取、移动、放劣等,这些动作构成了如抓取和放置等子使命,如果在考虑到不同的方针、排序、子使命的摆放组合,傍边的改动将会非常杂乱,例如,将四类物品分类放到四个容器中,这傍边的组合会有256中之多。本文中,我们期望处理杂乱使命规划的两个首要应战,即a)重新的概念化到新的使命方针的学习战略,以及b)与长时刻环境交互的根本原生代码模块的组合。

                                              神经使命编程(NTP)原理 NTP的要害根本思想在是跨使命学习和与同享域中的可重用表明。NTP对一个描绘使命进程和最终方针时刻序列的使命标准进行解说,并将其分层战略实例转化为一个神经程序。NTP从输入标准中解码生成使命方针,并将其分解为子使命并与周边环境进行交互和反应直至搭成方针,每个程序调用环境调查和使命标准(输入),并输出下一个子程序和相应的子使命标准。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              如上图所示,在给定输入、使命标准和当时环境的情况下,NTP模型猜测需求运转什么样的子程序,并作为下一级子使命的输入,并判别当时程序是否完毕,否则将持续循环履行使命 。

                                              测验

                                              该研讨团队经过对模仿和实践机器人试验中的单臂操作使命模仿对NTP进行评价。使命包含:堆叠方块,方针分类和整理桌子。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              该研讨的两个方针:I. 在同一个域中学习多项使命;以及 II. 经过单一比如构成在测验中的泛化才干。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              如图所示,机器手可从模仿的Demo环境(包含图画、视频、VR输入)中进行学习并完结积木的堆叠;

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              NTP编程:经过分级的使命条件输出战略概括程序,调用Robot API进行操作。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              上图展现了在堆叠方块使命中 NTP 的样本履行轨道图。使命是按指定要求堆叠字母块,顶层程序作为输入参加整个演示,猜测下一个运转的子程序,并为特定输入作为指定使命的一部分,底层 API 调用机器人作出相应的动作(如Move_to(Blue)、Grasp(Blue)等)。当程序完毕符(EOP)为 True,当时程序中止并回来其调用程序。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              如果环境发生改动(如人为损坏已完结的使命),机器人会探测到环境的改动偏重复使命。

                                              浅谈机器人编程新技能,神经使命编程NTP原理

                                              使命结构的改动包含:改动完结条件(使命语义),可变子使命摆放(使命拓扑)和更大的使命量(使命的长度)。跟着使命数量的添加,NTP能够为新的使命师范及方针生成更好的成果。

                                                                责任编辑:fatee

                                                                (sinaere = window.sinaere || []).push({});
                                                                0