这个拥有超过8000个交互式场景的模拟环境iGibson,再次发生了进化!
而进化之后的iGibson2.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)研究的解决方案的发展。