李飞飞团队给机器人造了一个“模拟厨房”:洗切炒菜一条龙训练!人类还能VR监管 | 开源

新闻 2021-08-26 博雯
436

2.0版本新增5种物理状态

博雯 发自 凹非寺

非常AI 报道 | 公众号 QbitAI

李飞飞团队的机器人模拟训练场2.0版本来了!

这个拥有超过8000个交互式场景的模拟环境iGibson,再次发生了进化!

而进化之后的iGibson 2.0,核心就一句话:

机器人们别抓小球儿了,来做家务吧!

像是模拟环境中增加的温度、湿度、切片等多种物理状态,就亟待各位机器人来个洗、切、炒菜一条龙服务:

而且这可是外表颜色会发生改变的真·煮熟。

做完饭之后,还能擦一下台子上的污渍,整理一下桌面。

再把没用完的蔬菜放回冰箱,看着它变成“冰冻”状态。

人类还能通过VR进入模拟环境,给机器人示范下如何做一个标准的家务:

那么现在,就一起来看看这次版本更新的具体内容吧。

新增5种物理状态

好的,现在我们的机器人选手进入了模拟环境,它将要做一顿菜。

而这顿菜,将会用到这次iGibson 2.0扩展的五个新的物理状态:

湿润程度

先从洗菜开始。

洗菜的水来自一种流体模拟系统。

比如下方这个水槽上的水龙头:

水龙头作为液滴源产生液滴,然后汇聚在其他容器(盘子)里,或被可浸泡的物体(毛巾)吸收。

在iGibson 2.0中,物体吸收的液滴量也就对应了物体的湿润程度。

切割

洗完了,开始切菜。

但这里就碰到了一个难题:

一般来说,模拟环境中的物体会被假定为具有固定节点和三角面的三维结构,要实现“切割”这一动作并不简单。

而iGibson 2.0则通过更新切片状态、保持物体实例的扩展状态来完成切割动作。

当拿着切片工具,并作用了超过物体切片力阈值的力时,切片状态就会转为“真”。

这时,模拟器会将会将一个物体替换为两个:

这两半“被切开的物体”则会继承整个对象的扩展物体状态(如温度)。

而这种转换是不可逆的,在之后的模拟时间中,物体会一直保持这种切片状态。

温度

现在,我们要使用这个微波炉来煎鱼了:

要让温度自然变化,iGibson 2.0便将WordNet层次结构中的对象类别注释为热源

这是iGibson 2.0中的一个新规定:

即每个模拟对象都应该是WordNet中现有对象类别的一个实例。

而这种语义结构能够将特征与同一类别的所有实例联系起来。

好,现在我们要通过这个热源来改变改变其他物体的温度。

和现实中的微波炉一样,用手拨动后受热物体就会开始升温。

具体温度会这样变化:

△∆sim:模拟时间 r:热源变化率

并且,每个物体在过去达到的最高温度的历史值也会被保留。

比如上图中的鱼,在过去曾达到过烹饪或燃烧的温度。

因此即使在热源关闭后,它也会呈现出被烤熟或烧焦的外观。

也就是说在模拟环境中如果烤糊了,那也就是真的烤糊了!

清洁程度

清洁程度换句话说,就是含有灰尘污渍的程度。

在iGibson 2.0中,对象初始化时可以含有灰尘或污点颗粒,还能采取行为来改变物体的清洁度。

因此,在做完菜后,机器人可以选择用布擦拭灰尘颗粒:

或者选用湿的工具(擦洗器)来清除来清除污渍:

状态切换

iGibson 2.0为一些对象提供“开”和“关”两种状态的切换功能,并同时维护其内部状态和外观变化。

这种状态的切换是通过触摸一个虚拟固定链接TogglingLink来完成的。

比如下方这个烤箱,在“开启”状态(右图)时,其外观会发生改变。

于是最后,机器人关掉器械,圆满完成了这次任务。

而这样一个稳固、逼真、便捷的模拟环境,自然也就意味着机器人能够进行更多、更复杂的任务训练。

基于逻辑谓词的生成系统

加上前面这些新的物理状态后,就足以模拟室内环境中的一系列基本活动。

不过如果用我们平常生活中的自然语言来描述这些状态的话,emmm……

就像是重庆人的“微辣”之于外地人一样,一定会存在个体理解上的语义差异。

因此,iGibson 2.0以常见的自然语言为基础,定义了一组逻辑谓词(Logical Predicates):

这组逻辑谓词将扩展的对象状态映射到对象的逻辑状态上,以符号化方式描述对象的状态。

基于不同的逻辑谓词,我们会对有效对象进行不同的采样。

比如,对于像是Frozen这种基于物体扩展状态的谓词,就对满足谓词要求的扩展状态值进行采样。

而如果是OnTopOf这种运动学谓词,就需要结合射线投射、分析方法等机制,来保证物体处在一个静止的物理状态:

那么这时,我们就得到了一个基于逻辑谓词的生成系统。

在这一系统中,我们只要指定一个逻辑谓词的列表,就能更加快速、便捷地生成模拟场景。

VR让机器人学着人类做

现在,机器人训练的场地已经搭建好了。

我们的最终目标,是让机器人通过训练来完成越来越复杂的任务。

那么,或许可以让机器人来看看人类是怎么做的,进而开发出新的解决方案?

于是,iGibson 2.0引入了VR,让人类也能进入机器人训练的场景中:

团队根据通过OpenVR与市面上主要的VR头盔兼容,并有一个额外的跟踪器来控制主体。

通过iGibson的PBR渲染功能,系统会以最高90帧/秒的速度接收从虚拟化身的头部视角生成的立体图像。

而通过人类在VR环境中完成任务的流程,研究人员也能更加便捷地收集到长期、复杂、双手动移动操作任务的演示数据。

当然,抓小球的经典任务也不能忘。

为了提供更自然的抓取体验,团队实现了一个辅助抓取(AG)机制:

在用户通过抓取阈值(50%驱动)后,只要物体在手指和手掌之间,就能在手掌和目标物体之间形成一个额外的约束。

妈妈再也不用担心机器人抓不住小球了

而最后,李飞飞团队也表示:

iGibson是一个完全开源的、面向大型场景交互任务的模拟环境。

我们希望iGibson 2.0能成为社区有用的工具,减少为不同任务创建模拟环境的负担,促进具身AI(embodied AI)研究的解决方案的发展。

下载地址:
https://github.com/StanfordVL/iGibson

论文地址:
https://arxiv.org/abs/2108.03272

官网:
http://svl.stanford.edu/igibson/

参考链接:
https://twitter.com/drfeifei/status/1425204811771744263

相关文章