Robot Parkour Learning
作者: Ziwen Zhuang, Zipeng Fu, Jianren Wang, Christopher Atkeson, Sören Schwertfeger, Chelsea Finn, Hang Zhao · CoRL 2023
授權條款
- 開放取用
- 論文: CC BY 4.0
以下內容皆依據論文全文,依其 CC BY 4.0 授權條款使用;圖表已標示作者。
一句話摘要
兩階段 RL(先是可穿透的障礙物,再是真實碰撞)訓練五種跑酷技能;DAgger 將它們蒸餾為一個深度影像策略,在低成本的 Unitree A1 與 Go1 機器人上以機載方式執行。
為何重要
此策略在低成本四足機器人上只使用機載運算、機載深度感測與機載電源,不需參考動作資料,而同一套訓練流程驅動了兩款機器人(A1 與 Go1)。在作者的比較中,正是軟約束預訓練才讓攀爬與跳躍得以學會。
問題
跑酷需要機器人感知障礙物,並在高速下從多種敏捷技能中做出選擇,但先前的學習方法不是給出多樣但沒有視覺的技能,就是給出以視覺為基礎但專門化的技能,而且使用多項的獎勵函數,或沒有自我中心視覺的動物動作擷取資料。對低成本的小型機器人而言,障礙物相對於身體尺寸很大,機載深度感知在快速運動時會延遲(以 1 m/s 移動時,0.2 s 的延遲就是 0.2 m 的誤差),而跑酷會把馬達推到極限。
提出的方法
每種技能(攀爬、跳躍、爬行、側傾、奔跑)都在 IsaacGym 中以 PPO 訓練,使用特權障礙物資訊,以及一個關於接近 1 m/s 的前進速度、機械能與保持存活的獎勵。第一階段讓障礙物可被穿透,並在自動課程下懲罰穿透體積與深度(軟動力學約束,受直接配置法啟發);第二階段在真實碰撞下微調。接著 DAgger 將五個專家策略蒸餾為一個 GRU 策略,以本體感覺與 48×64 深度影像為輸入,部署時搭配匹配的深度前處理與 25 Nm 的扭矩截斷。
關鍵見解
- 在早期讓機器人可以穿過障礙物,並搭配穿透懲罰與自動課程,解決了探索問題:少了它,或使用 RND 探索基準方法時,都學不會攀爬或跳躍。
- 由前進進度、機械功率平方與存活獎勵組成的單一獎勵,就產生了全部五種技能,不需針對各技能調整獎勵,也不需要動作資料。
- 策略需要記憶:攀爬時,後腿必須依據先前深度影像中看到的障礙物尺寸行動,因此 GRU 策略能成功,而 MLP 策略會失敗。
- 以 DAgger 在動作空間中蒸餾,能把網路權重各不相同的專家策略合併為一個視覺策略,而 RMA 式的潛在空間蒸餾無法做到。
- 模擬(截斷、高斯雜訊、隨機假影)與實體攝影機(截斷、破洞填補、空間與時間濾波)之間的深度影像經過匹配;攀爬失敗時的重試行為在未經程式設計的情況下自然湧現。
主要結果
- 實體 A1 室內測試,每種設定 10 次試驗:攀爬 0.40 m(機器人高度的 1.53×)成功率 80%、躍過 0.60 m 間隙(機器人長度的 1.5×)成功率 80%、從 0.2 m(機器人高度的 0.76×)下爬過成功率 90%,並以側傾擠過 0.28 m 的縫隙;在所有比較的方法中表現最佳,包括 A1 內建的 MPC 控制器。
- 蒸餾後跑酷策略在模擬中的成功率(100 次試驗 × 3 個隨機種子,測試障礙物比訓練時更難):攀爬 86%、跳躍 80%、爬行 100%、側傾 73%、奔跑 100%。
- 模擬中的基準方法:Blind 在攀爬、跳躍與側傾上為 0%,爬行為 13%;MLP 攀爬 0%、跳躍 1%;No Distill 在攀爬、跳躍與側傾上為 0%;RMA 只在側傾上執行,為 74%。
- 以軟動力學預訓練訓練的專家 oracle,在攀爬、跳躍、爬行與側傾上的平均成功率約為 95%;沒有軟動力學預訓練時,攀爬與跳躍皆為 0%。
- 在戶外,機器人躍過兩張石凳之間 0.6 m 的間隙、爬上連續的 0.42 m 台階,並從一台露營推車下爬過。
- 訓練成本:每個專家策略在一台配備 Nvidia 3090 的機器上進行 12 h 的軟動力學訓練加上 6 h 的硬動力學訓練;蒸餾則在四台各配備一張 3090 的機器上進行。
限制
- 模擬環境是人工建構的,因此只有在模擬中加入新的障礙物環境時,才能學習新技能(作者指出)。
- 策略只使用深度;以 RGB 搭配語意資訊進行訓練留待未來工作(作者指出)。
- 由於機載運算有限,機載深度只以 10 Hz 更新,而策略以 50 Hz 執行,使用最新可得的深度嵌入。
- 真實世界的定量測試只在 A1 上進行,每種設定 10 次試驗;0.28 m 側傾任務並未提供真實世界的成功率。
對領域的影響
入圍 CoRL 2023 最佳系統論文獎決選,被引用 356 次。作者將其介紹為一套用於訓練與部署敏捷移動策略的開源系統;專案頁面連結了程式碼儲存庫。
摘要
跑酷是足式移動的一大挑戰,要求機器人在複雜環境中迅速越過各種障礙物。現有方法藉由參考動物資料或複雜的獎勵,不是產生多樣但沒有視覺的移動技能,就是產生以視覺為基礎但專門化的技能。然而,自主跑酷要求機器人學習既以視覺為基礎又多樣的可泛化技能,以感知並應對各種情境。在這項工作中,我們提出一套系統,使用簡單的獎勵、不需任何參考動作資料,學習一個涵蓋多種跑酷技能的單一端到端視覺跑酷策略。我們開發一種受直接配置法啟發的強化學習方法來產生跑酷技能,包括攀越高障礙物、躍過大間隙、從低矮障礙物下爬過、擠過狹窄縫隙,以及奔跑。我們將這些技能蒸餾到單一的視覺跑酷策略中,並利用四足機器人的自我中心深度攝影機將策略轉移到該機器人上。我們證明,此系統能讓兩種不同的低成本機器人自主選擇並執行合適的跑酷技能,穿越具挑戰性的真實世界環境。
連結
- arXiv 2309.05665: https://arxiv.org/abs/2309.05665
- DOI 10.48550/arXiv.2309.05665: https://doi.org/10.48550/arXiv.2309.05665
- PDF: https://proceedings.mlr.press/v229/zhuang23a/zhuang23a.pdf
- 程式碼: https://github.com/ZiwenZhuang/parkour
- 專案頁面: https://robot-parkour.github.io/