Paper Card
論文標題:RoboGen: Towards Unleashing Infinite Data for Automated Robot Learning via Generative Simulation
論文作者:Yufei Wang, Zhou Xian, Feng Chen, Tsun-Hsuan Wang, Yian Wang, Zackory Erickson, David Held, Chuang Gan
作者單位:CMU, Tsinghua IIIS, MIT CSAIL, UMass Amherst, MIT-IBM AI Lab
論文原文:https://arxiv.org/abs/2311.01455
論文出處:–
論文被引:5(02/24/2024)
項目主頁:https://robogen-ai.github.io/
論文代碼:https://github.com/Genesis-Embodied-AI/RoboGen, 412 star
研究問題:通過自動化數據生成和技能學習管線,賦予機器人各種技能,使其能夠在各種非工廠環境中操作,并為人類執行廣泛的任務。
面臨挑戰:
- 由于真實世界數據收集昂貴和費力,這些技能中的許多都是在仿真中通過適當的領域隨機化進行訓練的,然后部署到真實世界中。
- 雖然仿真環境中的探索和實踐具有成本效益,但構建這些環境需要大量的勞動努力,需要大量的繁瑣的步驟,包括設計任務、選擇相關和語義上有意義的資產、生成合理的場景布局和配置,以及制作訓練監督,如獎勵或損失函數。
主要貢獻:
- 提出了生成仿真(Generative Simulation),結合了仿真機器人技能學習的進步以及基礎模型和生成模型的最新進展。
- RoboGen生成的任務和技能的多樣性超過了以前由人類創建的機器人技能學習數據集,除了幾個提示設計和上下文示例之外,只需要最少的人類參與。
方法概述:
- RoboGen 是一個自動化管道,它利用最新基礎模型的嵌入常識和生成能力進行自動任務、場景和訓練監督生成,實現大規模機器人技能學習的多樣化。整個管道由幾個階段組成:任務提議、場景生成、訓練監督生成和技能學習。
主要結論:
- 與之前的所有基準相比,RoboGen 實現了最低的 Self-BLEU 和嵌入相似性,這表明生成的任務的多樣性高于這兩個指標下先前手動建立的基準。
- 在 RoboGen 中使用物體和大小驗證提高了物體選擇的有效性。
- 自動生成的訓練監督在推導有意義和有用的技能方面是有效的。
- 允許選擇學習算法有利于實現更高性能來完成任務。
總結:
- 對學習技能的大規模驗證(即生成的技能是否真的通過文本描述解決相應的任務)仍然是當前管道中的挑戰。
- 目前基于仿真環境生成場景,受到 sim-to-real 差距的限制。
- 強假設性質,策略學習算法仍然不夠健壯,并且通常需要多次運行才能為某些生成任務產生成功的技能演示。
- 可以使用Self-BLEU 和嵌入相似性從文本角度評估生成數據的多樣性。
ABSTRACT
我們介紹了 RoboGen,一種生成式機器人Agent,通過生成仿真(generative simulation)在規模上自動學習各種機器人技能(robotic skills)。RoboGen利用了基礎模型和生成模型的最新進展。我們主張使用生成方案,而不是直接使用或調整這些模型來產生策略或低層次的行動,該方案使用這些模型自動生成多樣化的任務、場景和訓練監督,從而在最少的人工監督下擴大機器人技能學習。我們的方法為機器人Agent提供了一個自我引導的建議-生成-學習(propose-generate-learn)循環:Agent 首先提出要開發的有趣任務和技能,然后通過用適當的空間配置填充相關物體和資產來生成相應的仿真環境。然后,agent將所提出的高級任務分解為子任務,選擇最優學習方法(強化學習、運動規劃或軌跡優化),生成所需的訓練監督,然后學習策略以獲得所提出的技能。我們的工作試圖提取嵌入大規模模型中的廣泛而通用的知識,并將其遷移到機器人領域。我們完全生成的管道可以重復查詢,產生與不同任務和環境相關的源源不斷的技能演示。
1 INTRODUCTION
這項工作的動機是機器人研究中一個長期且具有挑戰性的目標:賦予機器人各種技能,使其能夠在各種非工廠環境中操作,并為人類執行廣泛的任務。近年來,在教授機器人各種復雜技能方面取得了令人印象深刻的進展:從可變形物體和流體操縱(deformable object and fluid manipulation),到動態和靈巧的技能(dynamic and dexterous skills),如投擲物體(object tossing)、手部重新定向(in-hand re-orientation),足球比賽(soccer playing),甚至機器人跑酷(robot parkour)。然而,這些技能仍然是分隔開的,視野相對較短,需要人工設計的任務描述和訓練監督。值得注意的是,由于真實世界數據收集昂貴和費力,這些技能中的許多都是在仿真中通過適當的領域隨機化進行訓練的,然后部署到真實世界中。
事實上,仿真環境已經成為多樣化機器人技能學習背后的關鍵驅動力。與現實世界中的探索和數據收集相比,仿真中的技能學習提供了幾個優勢:
- 1)仿真環境提供了低層次狀態的訪問和無限的探索機會;
- 2)仿真支持大規模并行計算,無需對機器人硬件和人力進行大量投資,就可以實現更快的數據收集;
- 3)仿真中的探索允許機器人開發閉環策略和錯誤恢復能力,而現實世界的演示通常只提供專家軌跡。
然而,仿真中的機器人學習也有其的局限性:雖然仿真環境中的探索和實踐具有成本效益,但構建這些環境需要大量的勞動努力,需要大量的繁瑣的步驟,包括設計任務、選擇相關和語義上有意義的資產、生成合理的場景布局和配置,以及制作訓練監督,如獎勵或損失函數。創建這些組件并構建我們日常生活中遇到的無數任務中的每一個個性化仿真設置是一項壓倒性的挑戰,它也限制了機器人技能學習的可擴展性。
鑒于此,我們提出了一種稱為生成仿真(Generative Simulation)的范式,它結合了仿真機器人技能學習的進步以及基礎模型和生成模型的最新進展。利用最先進的基礎模型的生成能力,生成仿真旨在為仿真中不同機器人技能學習所需的所有階段生成信息:從高級任務和技能建議到與任務相關的場景描述、資產選擇和生成、策略學習選擇和訓練監督。由于在最新基礎模型中編碼的綜合知識,以這種方式生成的場景和任務數據有可能與現實世界場景的分布非常相似。此外,這些模型可以進一步提供分解的低層次子任務,這可以通過特定領域的策略學習方法無縫處理,從而為各種技能和場景生成閉環演示。
我們提出的范式的一個明顯優勢在于從當代基礎模型中提取什么樣的知識模式的戰略設計。這些模型已經在各種模態中展示了令人印象深刻的能力,產生了能夠使用一系列工具并解決虛擬領域中各種任務的自主Agent。然而,由于缺乏與 dynamics,actuations 和 physical interactions 有關的訓練數據,這些模型還沒有完全理解機器人有效執行物理動作和與周圍環境交互的必要條件——從識別穩定運動所需的精確關節力矩,涉及諸如搟面團之類的靈巧操作任務所需的高頻手指運動命令。與最近使用這些基礎模型(如 LLM)直接生成策略或低層次操作的努力形成對比,我們提倡一種方案,該方案可以提取完全屬于這些模型的能力和模態范圍內的信息——object semantics,object affordances,識別有價值的學習任務的常識知識等。我們使用這些知識來構建環境 playgrounds,然后求助于基于物理的仿真的額外幫助,讓機器人發展對物理交互的理解并獲得不同的技能。
我們在最近的一篇白皮書中首次描述了這種范式,該白皮書概述了為通才手機器人學習生成不同數據的一條有前途的途徑。在本文中,我們介紹了RoboGen,這是對這一范式的全面實現。RoboGen是一種生成型機器人Agent,它自行提出要學習的技能,在仿真中生成場景組件和配置,用自然語言描述標記任務,并為后續的技能學習設計適當的訓練監督。我們的實驗表明,RoboGen可以提供源源不斷的多樣化技能演示,涵蓋剛性和關節式物體操縱、可變形物體操縱以及腿部運動技能等任務(見圖1)。RoboGen生成的任務和技能的多樣性超過了以前由人類創建的機器人技能學習數據集,除了幾個提示設計和上下文示例之外,只需要最少的人類參與。我們的工作試圖提取嵌入大模型中的廣泛而通用的知識,并將其遷移到機器人領域。當被無休止地詢問時,我們的系統有可能為機器人學習釋放無限量的多樣化演示數據,為可推廣的機器人系統的全自動化大規模機器人技能訓練邁出了一步。
2 RELATED WORK
Robotic skill learning in simulations
過去已經開發了各種基于物理的仿真平臺,以加速機器人研究。其中包括剛體仿真器,可變形物體仿真器,以及支持多種材料的環境及其與機器人的耦合。這種仿真平臺在機器人界被廣泛用于學習各種技能,包括table-top manipulation,deformable object manipulation,object cutting,fluid manipulation,以及高度動態和復雜的技能,如 in-hand re-orientation,object tossing,acrobatic flight,locomotion for legged robots and soft robots。
Scaling up simulation environments
除了構建物理引擎和仿真器外,大量先前的工作旨在構建大規模仿真基準,為可擴展的技能學習和標準化基準提供平臺。值得注意的是,這些先前的仿真基準或技能學習環境中的大多數都是用人工標記手動構建的。另一系列工作試圖使用程序生成來擴大任務和環境的規模,并使用任務和運動規劃(TAMP)生成演示。這些方法主要建立在手動定義的規則和規劃域之上,將生成的環境和技能的多樣性限制在相對簡單的拾取和放置以及物體堆疊任務上。與這些工作相反,我們提取了嵌入LLM等基礎模型中的常識性知識,并將其用于生成有意義的任務、相關場景和技能訓練監督,從而獲得更多樣、更合理的技能。
Foundation and generative models for robotics
隨著圖像、語言和其他模態領域基礎和生成模型的快速發展,一項活躍的工作是研究如何通過 code generation,data augmentation,visual imagination for skill execution,sub-task planning,concept generalization of learned skills,outputting low-level control actions,goal specification 等方法將這些大規模模型用于機器人研究。與我們更相關是使用 LLM 進行獎勵生成的方法,子任務和軌跡生成。與它們相比,我們提出的系統旨在實現全自動管道,該管道自我提出新任務、生成環境并產生不同的技能。
Generative Simulation
我們首先在最近的白皮書(Xian et al., 2023a)中提出了生成仿真的想法。我們使用圖像生成模型和 LLM 為 Franka 臂生成資產,任務描述和分解,實現了 (Katara et al., 2023) 中生成仿真概念的證明。在本文中,我們擴展了這一研究方向,以支持更廣泛的機器人類型和更多樣化的具有照片級真實感視覺的任務集,由更高級的渲染和物理引擎提供支持。
3 ROBOGEN
RoboGen 是一個自動化管道,它利用最新基礎模型的嵌入常識和生成能力進行自動任務、場景和訓練監督生成,實現大規模機器人技能學習的多樣化。我們在圖 2 中說明了整個管道,由幾個階段組成:任務提議、場景生成、訓練監督生成和技能學習。
3.1 TASK PROPOSAL
RoboGen 從為機器人學習生成有意義、多樣化和高級任務開始。我們沒有直接查詢LLM進行任務建議,而是使用特定的機器人類型和從池中隨機采樣的物體來初始化系統。然后將提供的機器人和采樣的物體信息用作LLM的輸入來執行任務建議。這樣的采樣過程確保了生成任務的多樣性:例如,四足機器人等腿機器人能夠獲得各種運動技能,而機械臂機械手在與不同采樣物體配對時有可能執行各種操作任務。該初始化步驟用作種子階段,提供了一個基礎,即 LLM 可以根據該階段進行條件和推斷以生成各種任務,同時考慮機器人和物體affordances。除了基于物體的初始化之外,另一種選擇是使用基于實例的初始化,我們使用提供的機器人初始化查詢,以及從列出的 11 個預定義任務中采樣的幾個示例任務。
我們使用 GPT-4 作為 LLM 在當前管道中查詢,但是一旦可用更好的模型,這個后端就可以升級。在下文中,我們使用基于物體的初始化來解釋機械臂(例如 Franka)和與物體操作相關的任務(例如 Franka)上下文中 RoboGen 的細節。在這種情況下,用于初始化的物體是從預定義的列表中采樣的,其中包括從 PartNetMobility (Xiang et al., 2020) 和 RLBench (James et al., 2020) 等家庭場景中的常見鉸接和非鉸接物體。在廣泛的互聯網規模數據集上進行訓練后,GPT-4 等 LLM 對這些物體的 affordances,如何與之交互的知識以及它們可以與之關聯的有意義的任務的豐富理解。為了生成涉及機器人對采樣鉸接物體的交互和操作的任務,我們構建了一個查詢,其中包含關節物體所屬的廣泛類別、源自 URDF 文件的關節樹以及提供物體鏈接注釋的語義文件,例如,哪個鏈接對應于采樣微波中的門。此信息由 PartNetMobility 數據集提供。鉸接物體的類別告知可以使用此類物體執行哪些通用類型的任務,關節樹和語義文件通知 GPT-4 物體可以鉸接的確切程度以及每個關節和鏈接的語義。查詢要求 GPT-4 返回可以使用采樣物體執行的許多任務,其中每個任務由任務名稱、任務的簡短描述組成,如果除了提供的關節物體之外,任務還需要有任何其他物體,以及機器人需要與之交互的關節/鏈接來完成任務。此外,我們在 GPT-4 的查詢中包含示例輸入輸出對來執行上下文學習以提高其響應的質量。
作為具體的例子,給定一個采樣的鉸接物體是一個 microwave,其中關節 0 是一個連接其門的轉動關節,關節 1 是另一個控制計時器旋鈕的旋轉關節,GPT-4 將返回一個名為 heat up a bowl of soup 的任務,任務描述 The robot arm places a bowl of soup inside the microwave, closes the door and sets the microwave timer for an appropriate heating duration,生成任務所需的附加物體,如 A bowl of soup 和與任務相關的關節和鏈接,包括關節 0 (打開微波門)、關節 1 (設置計時器)、鏈接 0 (門) 和鏈接 1 (計時器旋鈕)。有關詳細的提示和示例響應,請參閱附錄 B。請注意,對于我們對非鉸接物體進行采樣或使用基于實例的初始化的情況,采樣物體和示例僅作為任務建議的提示提供,并且生成的任務不會與它們相關聯。對于鉸接物體,由于PartNetMobility是唯一高質量的鉸接物體數據集,并且已經涵蓋了不同的鉸接資產范圍,我們將生成依賴于采樣資產的任務。對于運動和軟體操作任務,我們僅使用基于實例的初始化,并采用 GPT-4 填充額外的所需物體。通過反復查詢不同的采樣物體和示例,我們可以生成一系列不同的操作和運動任務,涉及在需要時的相關物體 affordances。
3.2 SCENE GENERATION
給定一個提議的任務,我們繼續生成相應的仿真場景來學習技能來完成任務。如圖 2 所示,場景組件和配置是根據任務描述生成的,然后檢索或生成物體資產以隨后填充仿真場景。具體來說,場景組件和配置由以下元素組成:對要填充到場景中的相關資產的查詢、它們的物理參數,例如大小、配置,例如初始關節角度和資產的整體空間配置。
Obtaining queries for relevant assets
除了任務提議上一步生成的任務所需的必要物體資產外,為了增加生成場景的復雜性和多樣性,同時類似于真實場景的物體分布,我們查詢 GPT-4 為與任務語義相關的物體返回一些額外的查詢。有關 GPT-4 為任務返回的附加物體的示例,請參見圖 1,例如,對于任務“打開儲物柜、將玩具放在里面,關閉它”,生成的場景還包括客廳墊、桌面燈、書籍和辦公室椅子。
Retrieving or generating assets
生成的相關物體查詢(即它們的語言描述)將用于搜索現有數據庫 Objverse(Deitke et al., 2023),或者用作文本到圖像的輸入(Midjourney, 2022),然后圖像到 3d 的網格生成模型以生成資產的 3d 紋理網格。具體來說,我們使用 Objverse,這是一個包含超過 800k 個物體資產(3d 網格、紋理圖片等)的大規模數據集作為檢索的主要數據庫。對于 Objverse 中的每個物體,我們通過結合默認注釋和來自 (Luo et al., 2023) 的更清理的注釋版本來獲得它的語言描述列表。鑒于我們想要檢索的資產的語言描述,我們使用 Sentence-Bert (Reimers & Gurevych, 2019) 來獲取描述的嵌入,并從 Objverse 中檢索 k 個物體,其語言嵌入與目標資產的語言嵌入最相似。由于物體注釋中的噪聲,即使語言嵌入空間中的相似度得分很高,實際資產和預期目標之間也可能存在顯著差異。為了解決這個問題,我們進一步利用視覺語言模型 (VLM) 來驗證檢索到的資產并過濾掉不希望的資產。具體來說,我們將檢索到的物體的圖像輸入到 VLM 模型中,并要求 VLM 對其進行描述。該描述連同對所需資產的描述和任務的描述一起被饋送到 GPT-4 中,以驗證檢索到的資產是否適合用于提議的任務。由于 Objverse 的多樣化資產范圍對于現有的預訓練模型來說本質上具有挑戰性,為了提高我們系統的魯棒性,我們使用 Bard (Google, 2022) 和 BLIP-2 (Li et al., 2023b) 來交叉驗證檢索到的資產的有效性,并且僅當它們的描述都被認為適合 GPT-4 的任務時采用資產。我們在管道中使用 k = 10,如果所有資產都被拒絕,我們求助于文本到圖像,然后是圖像到網格生成模型來從語言描述中生成所需的資產。我們使用 Midjourney (Midjourney, 2022) 作為我們的文本到圖像生成模型,使用 Zero-1 到 3 (Liu et al., 2023b) 作為我們的圖像到圖像生成模型。對于軟體操作任務,為了獲得操作下軟體更一致的可控目標形狀,我們要求GPT-4提出所需的目標形狀,只使用這種文本到圖像到網格的管道,而不是數據庫檢索。
Asset size
Objverse (DeiTke et al., 2022) 或 PartNetMobility (Xiang et al., 2020) 的資產通常不是物理上合理的大小。為了解決這個問題,我們查詢 GPT-4 以生成資產的大小,以便:1)大小應該匹配現實世界的物體大小; 2)物體之間的相對大小允許合理的解決方案來解決任務,例如,對于“把書放入抽屜”的任務,抽屜的大小應該大于這本書。
Initial asset configuration
對于某些任務,關節物體應該用機器人的有效狀態初始化以學習技能。例如,對于“關閉窗戶”的任務,窗戶應該在開放狀態下初始化;類似地,對于打開門的任務,門應該最初關閉。同樣,我們查詢 GPT-4 來設置這些鉸接物體的初始配置,以關節角度指定。為了允許 GPT-4 推理任務和鉸接物體,查詢腳本包含關節物體的任務描述、關節樹和語義描述。
Scene configuration
指定場景中每個資產的位置和相關姿勢的場景配置對于產生合理的環境并允許有效的技能學習至關重要。例如,對于“retrieving a document from the safe”的任務,文檔需要在安全范圍內初始化;對于“removing the knife from the chopping board”的任務,刀需要最初放在砧板上。RoboGen 查詢 GPT-4 以生成與任務描述這樣的特殊空間關系作為輸入,并且還指示 GPT-4 以無碰撞的方式放置物體。
使用生成的場景組件和配置,我們相應地填充場景。有關 RoboGen 生成的示例場景和任務的集合,請參見圖 1。
3.3 TRAINING SUPERVISION GENERATION
為了獲得解決提出任務的技能,需要對技能學習進行監督。為了促進學習過程,RoboGen 首先查詢 GPT-4 以計劃和分解生成的任務,這些任務可以是長視距的,較短的子任務。我們的主要假設是,當任務分解為足夠短的子任務時,每個子任務都可以通過現有算法可靠地解決,例如強化學習、運動規劃 或軌跡預測。
在分解后,RoboGen 然后查詢 GPT-4 以選擇一個合適的算法來解決每個子任務。將三種不同類型的學習算法集成到RoboGen中:強化學習、進化策略、基于梯度的軌跡優化和運動規劃的動作基元。這些任務中的每一個都適用于不同的任務,例如,
- 基于梯度的軌跡優化更適合學習涉及軟體的細粒度操作任務,例如將粗略塑造到目標形狀;
- 動作基元與運動規劃相結合對于解決任務更可靠,例如通過無碰撞路徑接近目標物體;
- 強化學習和進化策略更適合接觸豐富且涉及與其他場景組件的連續交互的任務,例如腿部運動,或者當所需的動作不能簡單地由離散的末端執行器姿勢參數化時,例如轉動烤箱的旋鈕。
我們提供示例并讓 GPT-4 在線選擇哪種學習算法以生成的子任務為條件使用。我們考慮動作基元,包括抓取、接近和釋放目標物體。由于在抓取不同大小的物體時,平行下巴夾持器可能受到限制,我們考慮配備吸盤的機械臂來簡化物體抓取。抓取和接近基元的實現如下:我們首先在目標物體或鏈路上隨機采樣一個點,計算一個與采樣點法線一致的夾持器姿態,然后使用運動規劃找到無碰撞路徑到達目標夾持器姿態。在達到姿勢后,我們保持沿法線方向移動,直到與目標物體接觸。
對于使用 RL 或軌跡優化學習的子任務,我們提示 GPT-4 用幾個上下文示例編寫相應的獎勵函數。對于物體操作和運動任務,獎勵函數基于低層次仿真狀態,GPT-4 可以通過提供的 API 調用列表查詢。此外,我們要求 GPT-4 建議學習算法的動作空間,例如末端執行器的增量平移,或末端執行器的目標位置移動到。Delta-translation 更適合涉及局部運動的任務,例如,在抓取后打開門;對于涉及將物體遷移到不同位置的任務,直接將目標指定為動作空間使學習更容易。對于軟體操作任務,獎勵具有固定的形式,指定為軟體當前形狀與目標形狀之間的地球距離。
3.4 SKILL LEARNING
一旦我們獲得了所提出任務所需的所有信息,包括場景組件和配置、任務分解和分解子任務的訓練監督,我們能夠在仿真中構建場景來學習完成任務所需的技能。
如前所述,我們使用技術的組合進行技能學習,包括強化學習、進化策略、基于梯度的軌跡優化和運動規劃的動作基元,因為每個都適用于不同類型的任務。對于物體操作任務,我們使用 SAC (Haarnoja et al., 2018) 作為 RL 算法來學習技能。觀察空間是任務中物體和機器人的低層次狀態。RL策略的動作空間包括機器人末端執行器的增量平移或目標位置(由GPT-4確定),以及它們的增量旋轉。我們使用在開放運動規劃庫 (OMPL) (Sucan et al., 2012) 中實現的 BIT? (Gammell et al., 2015) 作為動作基元的底層運動規劃算法。對于涉及多個子任務的長視距任務,我們采用一種簡單的順序學習每個子任務方案:對于每個子任務,我們運行 RL N = 8 次,并使用獎勵最高的最終狀態作為下一個子任務的初始狀態。對于運動任務,交叉熵方法用于技能學習,我們發現它比 RL 更穩定和高效。ground-truth 仿真器被用作 CEM 中的發電機模型,待優化的動作是機器人的關節角度值。對于軟體操作任務,我們使用 Adam 運行基于梯度的軌跡優化來學習技能,其中梯度由我們使用的完全可微仿真器提供。有關技能學習的更多細節可以在附錄 A 中找到。
4 EXPERIMENTS
RoboGen 是一個自動管道,可以無限查詢,并為不同的任務生成連續的技能演示流。在我們的實驗中,我們旨在回答以下問題:
- Task Diversity: How diverse are the tasks proposed by RoboGen robotic skill learning?
- Scene Validity: Does RoboGen generate valid simulation environments that match the proposed task descriptions?
- Training Supervision Validity: Does RoboGen generate correct task decomposition and training supervisions for the task that will induce intended robot skills?
- Skill Learning: Does integrating different learning algorithms in RoboGen improve the success rate of learning a skill?
- System: Combining all the automated stages, can the whole system produce diverse and meaningful robotic skills?
4.1 EXPERIMENTAL SETUP
我們提出的系統是通用的,并且與特定的仿真平臺無關。然而,由于我們考慮了從剛體動力學到軟體仿真的廣泛任務類別,并考慮了基于梯度的軌跡優化等技能學習方法,這需要可微仿真平臺,我們使用 Genesis 部署 RoboGen,這是一個用于機器人學習不同材料和完全可微的仿真平臺。對于技能學習,我們使用 SAC 作為RL算法。策略和 Q 網絡都是大小為 [256, 256, 256] 的多層感知器 ,學習率為 3e-4。對于每個子任務,我們使用 1M 環境步驟進行訓練。我們使用 BIT? 作為運動規劃算法,Adam Kingma & Ba 用于軟體操作任務的基于梯度的軌跡優化。這些學習算法的更多實現細節可以在附錄 A 中找到。
4.2 EVALUATION METRICS AND BASELINES
我們使用以下指標和基線來評估我們的系統:
Task Diversity
生成的任務的多樣性可以通過多種方式衡量,例如任務的語義、生成的仿真環境的場景配置、檢索到的物體資產的外觀和幾何以及執行任務所需的機器人動作。對于任務的語義,我們通過在生成的任務描述上計算 Self-BLEU 和嵌入相似度 (Zhu et al., 2018) 來執行定量評估,其中較低的分數表示更好的多樣性。我們與已建立的基準進行比較,包括 RLBench,Maniskill2,Meta-World 和 Behavior-100 。對于物體資產和機器人動作,我們使用生成的仿真環境和可視化學習機器人技能定性地評估 RoboGen。
Scene Validity
為了驗證檢索到的物體與任務的要求相匹配,我們計算了仿真場景中檢索到的物體的渲染圖像與物體的文本描述之間的 BLIP-2 分數。我們與我們系統的兩個消融進行了比較。
- A) 沒有物體驗證:我們不使用 VLM 來驗證檢索到的物體,并且僅基于文本匹配檢索物體。
- B) 沒有大小驗證:我們不使用 GPT-4 輸出的物體大小;相反,我們使用 Objaverse 或 PartNetMobility 中提供的資產的默認大小。
Training Supervision Validity
我們通過使用生成的分解和訓練監督呈現學習技能的圖像和視頻來對這一點進行定性評估。
Skill Learning Performance
我們將其與消融進行比較,其中我們刪除了使用基于運動規劃的原始和基于梯度的軌跡優化的選項,并完全依賴于強化學習來學習技能。給定一個任務,我們使用 4 個不同的種子運行每種方法,并報告任務返回的均值和標準差(我們手動驗證 GPT-4 生成的獎勵函數對于評估的任務是正確的)。
System
我們通過在我們的網站上提供超過 100 個學習技能的視頻來對整個系統進行定性評估。在本文中,我們展示了代表性技能的快照。
4.3 RESULTS
Task Diversity
定量評估結果如表 1 所示。我們比較了RoboGen的一個版本,其中總共生成了106個任務。如圖所示,與之前的所有基準相比,RoboGen 實現了最低的 Self-BLEU 和嵌入相似性,這表明生成的任務的多樣性高于這兩個指標下先前手動建立的基準。這表明 RoboGen 可以生成一組任務,其多樣性匹配或超過先前手工制作的技能學習基準和數據集。
Scene Validity
圖 4 顯示了 7 個示例生成任務中所有比較方法的 BLIP-2 分數。如圖所示,刪除大小驗證會導致 BLIP-2 分數急劇下降。這是意料之中的,因為 Objaverse 和 PartNetMobility 的默認資產大小可能與合理的現實世界大小有很大不同。消融“無物體驗證”也具有較低的 BLIP-2 分數,方差較大,表明我們的驗證步驟提高了物體選擇的有效性。結果表明,在 RoboGen 中使用物體和大小驗證的重要性。
Training Supervision Validity
圖 3 展示了在 4 個示例長視距任務上使用 RoboGen 生成的訓練監督(即任務分解和獎勵函數)學習的技能。如圖所示,機器人成功地學習了完成相應任務的技能,這表明自動生成的訓練監督在推導有意義和有用的技能方面是有效的。
Skill Learning
我們評估了 4 個涉及與鉸接物體交互的任務。結果如表 2 所示。我們發現,允許選擇學習算法有利于實現更高性能來完成任務。當僅使用 RL 時,技能學習在大多數任務中完全失敗。
System
圖 1 和圖 3 可視化了 RoboGen 的一些生成任務和學習技能。如圖 1 所示,RoboGen 可以生成不同的任務,用于從剛性/鉸接的物體操作、運動和軟體操作中進行技能學習。圖 3 進一步表明,RoboGen 能夠以合理的分解提供長期操縱技能。
有關擬議任務和學習技能的廣泛定性結果,請參閱我們的項目網站。
5 CONCLUSION & LIMITATIONS
我們介紹了 RoboGen,這是一種生成式 Agent,它通過生成仿真自動提出和大規模學習不同的機器人技能。RoboGen利用基礎模型的最新進展在仿真中自動生成不同的任務、場景和訓練監督,為仿真中的可擴展機器人技能學習邁出了基礎一步,同時一旦部署,需要最少的人工監督。我們的系統是一個完全生成的管道,可以無限查詢,產生大量與不同任務和環境相關的技能演示。RoboGen 與后端基礎模型無關,并且可以在可用時使用最新模型進行持續升級。
我們當前的系統仍然存在一些局限性:
- 1)對學習技能的大規模驗證(即生成的技能是否真的通過文本描述解決相應的任務)仍然是當前管道中的挑戰。這可以通過在未來使用更好的多模態基礎模型來解決。最近的工作(Ma et al., 2023)還探索了使用環境反饋對生成的監督(獎勵函數)進行迭代細化,我們希望在未來集成到我們的范式中。
- 2)當涉及到實際部署時,我們的范式本質上受到 sim-to-real 差距的限制。然而,隨著物理精確仿真的最新進展和快速的進步,以及領域隨機化和現實感覺信號渲染等技術,我們預計在不久的將來將進一步縮小仿真到真實的差距。
- 3)我們的系統假設在正確的獎勵函數下,現有的策略學習算法足以學習所提出的技能。對于我們在本文中測試的策略學習算法(具有 SAC 的 RL 和 delta 末端執行器姿態的動作空間以及基于梯度的軌跡優化),我們觀察到它們仍然不夠健壯,并且通常需要多次運行才能為某些生成任務產生成功的技能演示。
我們將更強大的策略學習算法集成到 RoboGen 中,例如,那些具有更好的動作參數化算法(Zeng et al., 2021; Seita et al., 2023),作為未來的工作。