1. 程式人生 > 資訊 >李飛飛團隊給機器人建造“模擬廚房”:洗切炒菜一條龍訓練,人類還能 VR 監管

李飛飛團隊給機器人建造“模擬廚房”:洗切炒菜一條龍訓練,人類還能 VR 監管

李飛飛團隊的機器人模擬訓練場 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