李飛飛團(tuán)隊(duì)給機(jī)器人造了一個(gè)“模擬廚房”:洗切炒菜一條龍訓(xùn)練
本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。
李飛飛團(tuán)隊(duì)的機(jī)器人模擬訓(xùn)練場(chǎng)2.0版本來了!
這個(gè)擁有超過8000個(gè)交互式場(chǎng)景的模擬環(huán)境iGibson,再次發(fā)生了進(jìn)化!
而進(jìn)化之后的iGibson 2.0,核心就一句話:
機(jī)器人們別抓小球兒了,來做家務(wù)吧!
像是模擬環(huán)境中增加的溫度、濕度、切片等多種物理狀態(tài),就亟待各位機(jī)器人來個(gè)洗、切、炒菜一條龍服務(wù):
而且這可是外表顏色會(huì)發(fā)生改變的真·煮熟。
做完飯之后,還能擦一下臺(tái)子上的污漬,整理一下桌面。
再把沒用完的蔬菜放回冰箱,看著它變成“冰凍”狀態(tài)。
人類還能通過VR進(jìn)入模擬環(huán)境,給機(jī)器人示范下如何做一個(gè)標(biāo)準(zhǔn)的家務(wù):
那么現(xiàn)在,就一起來看看這次版本更新的具體內(nèi)容吧。
新增5種物理狀態(tài)
好的,現(xiàn)在我們的機(jī)器人選手進(jìn)入了模擬環(huán)境,它將要做一頓菜。
而這頓菜,將會(huì)用到這次iGibson 2.0擴(kuò)展的五個(gè)新的物理狀態(tài):
濕潤程度
先從洗菜開始。
洗菜的水來自一種流體模擬系統(tǒng)。
比如下方這個(gè)水槽上的水龍頭:

水龍頭作為液滴源產(chǎn)生液滴,然后匯聚在其他容器(盤子)里,或被可浸泡的物體(毛巾)吸收。
在iGibson 2.0中,物體吸收的液滴量也就對(duì)應(yīng)了物體的濕潤程度。
切割
洗完了,開始切菜。
但這里就碰到了一個(gè)難題:
一般來說,模擬環(huán)境中的物體會(huì)被假定為具有固定節(jié)點(diǎn)和三角面的三維結(jié)構(gòu),要實(shí)現(xiàn)“切割”這一動(dòng)作并不簡單。
而iGibson 2.0則通過更新切片狀態(tài)、保持物體實(shí)例的擴(kuò)展?fàn)顟B(tài)來完成切割動(dòng)作。
當(dāng)拿著切片工具,并作用了超過物體切片力閾值的力時(shí),切片狀態(tài)就會(huì)轉(zhuǎn)為“真”。
這時(shí),模擬器會(huì)將會(huì)將一個(gè)物體替換為兩個(gè):

這兩半“被切開的物體”則會(huì)繼承整個(gè)對(duì)象的擴(kuò)展物體狀態(tài)(如溫度)。
而這種轉(zhuǎn)換是不可逆的,在之后的模擬時(shí)間中,物體會(huì)一直保持這種切片狀態(tài)。
溫度
現(xiàn)在,我們要使用這個(gè)微波爐來煎魚了:

要讓溫度自然變化,iGibson 2.0便將WordNet層次結(jié)構(gòu)中的對(duì)象類別注釋為熱源。
這是iGibson 2.0中的一個(gè)新規(guī)定:
即每個(gè)模擬對(duì)象都應(yīng)該是WordNet中現(xiàn)有對(duì)象類別的一個(gè)實(shí)例。
而這種語義結(jié)構(gòu)能夠?qū)⑻卣髋c同一類別的所有實(shí)例聯(lián)系起來。
好,現(xiàn)在我們要通過這個(gè)熱源來改變改變其他物體的溫度。
和現(xiàn)實(shí)中的微波爐一樣,用手撥動(dòng)后受熱物體就會(huì)開始升溫。
具體溫度會(huì)這樣變化:
△∆sim:模擬時(shí)間 r:熱源變化率
并且,每個(gè)物體在過去達(dá)到的最高溫度的歷史值也會(huì)被保留。
比如上圖中的魚,在過去曾達(dá)到過烹飪或燃燒的溫度。
因此即使在熱源關(guān)閉后,它也會(huì)呈現(xiàn)出被烤熟或燒焦的外觀。
也就是說在模擬環(huán)境中如果烤糊了,那也就是真的烤糊了!
清潔程度
清潔程度換句話說,就是含有灰塵污漬的程度。
在iGibson 2.0中,對(duì)象初始化時(shí)可以含有灰塵或污點(diǎn)顆粒,還能采取行為來改變物體的清潔度。
因此,在做完菜后,機(jī)器人可以選擇用布擦拭灰塵顆粒:

或者選用濕的工具(擦洗器)來清除來清除污漬:

狀態(tài)切換
iGibson 2.0為一些對(duì)象提供“開”和“關(guān)”兩種狀態(tài)的切換功能,并同時(shí)維護(hù)其內(nèi)部狀態(tài)和外觀變化。
這種狀態(tài)的切換是通過觸摸一個(gè)虛擬固定鏈接TogglingLink來完成的。
比如下方這個(gè)烤箱,在“開啟”狀態(tài)(右圖)時(shí),其外觀會(huì)發(fā)生改變。

于是最后,機(jī)器人關(guān)掉器械,圓滿完成了這次任務(wù)。
而這樣一個(gè)穩(wěn)固、逼真、便捷的模擬環(huán)境,自然也就意味著機(jī)器人能夠進(jìn)行更多、更復(fù)雜的任務(wù)訓(xùn)練。
基于邏輯謂詞的生成系統(tǒng)
加上前面這些新的物理狀態(tài)后,就足以模擬室內(nèi)環(huán)境中的一系列基本活動(dòng)。
不過如果用我們平常生活中的自然語言來描述這些狀態(tài)的話,emmm……
就像是重慶人的“微辣”之于外地人一樣,一定會(huì)存在個(gè)體理解上的語義差異。
因此,iGibson 2.0以常見的自然語言為基礎(chǔ),定義了一組邏輯謂詞(Logical Predicates):

這組邏輯謂詞將擴(kuò)展的對(duì)象狀態(tài)映射到對(duì)象的邏輯狀態(tài)上,以符號(hào)化方式描述對(duì)象的狀態(tài)。
基于不同的邏輯謂詞,我們會(huì)對(duì)有效對(duì)象進(jìn)行不同的采樣。
比如,對(duì)于像是Frozen這種基于物體擴(kuò)展?fàn)顟B(tài)的謂詞,就對(duì)滿足謂詞要求的擴(kuò)展?fàn)顟B(tài)值進(jìn)行采樣。
而如果是OnTopOf這種運(yùn)動(dòng)學(xué)謂詞,就需要結(jié)合射線投射、分析方法等機(jī)制,來保證物體處在一個(gè)靜止的物理狀態(tài):

那么這時(shí),我們就得到了一個(gè)基于邏輯謂詞的生成系統(tǒng)。
在這一系統(tǒng)中,我們只要指定一個(gè)邏輯謂詞的列表,就能更加快速、便捷地生成模擬場(chǎng)景。

VR讓機(jī)器人學(xué)著人類做
現(xiàn)在,機(jī)器人訓(xùn)練的場(chǎng)地已經(jīng)搭建好了。
我們的最終目標(biāo),是讓機(jī)器人通過訓(xùn)練來完成越來越復(fù)雜的任務(wù)。
那么,或許可以讓機(jī)器人來看看人類是怎么做的,進(jìn)而開發(fā)出新的解決方案?
于是,iGibson 2.0引入了VR,讓人類也能進(jìn)入機(jī)器人訓(xùn)練的場(chǎng)景中:
團(tuán)隊(duì)根據(jù)通過OpenVR與市面上主要的VR頭盔兼容,并有一個(gè)額外的跟蹤器來控制主體。
通過iGibson的PBR渲染功能,系統(tǒng)會(huì)以最高90幀/秒的速度接收從虛擬化身的頭部視角生成的立體圖像。
而通過人類在VR環(huán)境中完成任務(wù)的流程,研究人員也能更加便捷地收集到長期、復(fù)雜、雙手動(dòng)移動(dòng)操作任務(wù)的演示數(shù)據(jù)。
當(dāng)然,抓小球的經(jīng)典任務(wù)也不能忘。
為了提供更自然的抓取體驗(yàn),團(tuán)隊(duì)實(shí)現(xiàn)了一個(gè)輔助抓?。ˋG)機(jī)制:
在用戶通過抓取閾值(50%驅(qū)動(dòng))后,只要物體在手指和手掌之間,就能在手掌和目標(biāo)物體之間形成一個(gè)額外的約束。
媽媽再也不用擔(dān)心機(jī)器人抓不住小球了
而最后,李飛飛團(tuán)隊(duì)也表示:
iGibson是一個(gè)完全開源的、面向大型場(chǎng)景交互任務(wù)的模擬環(huán)境。
我們希望iGibson 2.0能成為社區(qū)有用的工具,減少為不同任務(wù)創(chuàng)建模擬環(huán)境的負(fù)擔(dān),促進(jìn)具身AI(embodied AI)研究的解決方案的發(fā)展。
下載地址:
https://github.com/StanfordVL/iGibson
論文地址:
https://arxiv.org/abs/2108.03272
官網(wǎng):
http://svl.stanford.edu/igibson/