論文導讀:Learning Agile and Dynamic Motor Skills for Legged Robots——用學習到的致動器模型跨越模擬與真實的鴻溝
Jemin Hwangbo, Joonho Lee, Alexey Dosovitskiy, Dario Bellicoso, Vassilios Tsounis, Vladlen Koltun, Marco Hutter · 2019原文連結
論文資訊卡
- 標題:Learning Agile and Dynamic Motor Skills for Legged Robots
- 作者:Jemin Hwangbo、Joonho Lee、Alexey Dosovitskiy、Dario Bellicoso、Vassilios Tsounis、Vladlen Koltun、Marco Hutter(ETH Zürich、Intel)
- 發表:Science Robotics, 2019
問題背景
用強化學習(Reinforcement Learning, RL)在模擬環境裡訓練足式機器人的運動控制策略,理論上能學到比凸優化 MPC這類傳統模型式方法更靈活、更能自主發現非直覺運動模式的控制器,但實務上長期受限於「模擬到真實的落差」(sim-to-real gap)——在模擬環境裡訓練得再好的策略,一旦部署到真實硬體上,經常因為模擬器對物理現象(尤其是致動器本身的動態特性)建模不夠準確而表現大幅下降,甚至完全失效。這個落差是強化學習沒辦法在足式機器人領域大規模取代傳統控制方法的關鍵瓶頸之一。
方法核心:學一個致動器網路來補足模擬器的物理誤差
這篇論文精準定位了 sim-to-real 落差裡一個經常被低估的來源:致動器本身的動態特性。真實電動馬達加上傳動機構(例如 ANYmal 使用的串聯彈性致動器)存在複雜的非線性順從(compliance)與阻尼(damping)特性,傳統物理模擬器裡的理想化剛性致動器模型,跟真實致動器的實際行為之間存在不小的落差,而這個落差在高動態、大負載的動作(例如快速奔跑、摔倒後的恢復動作)裡會被進一步放大。
論文的解法是訓練一個致動器網路(actuator network)——一個小型神經網路,輸入是關節的位置誤差歷史與速度歷史,輸出是預測的關節力矩,直接用真實硬體上蒐集到的資料訓練,讓這個網路精確捕捉真實致動器的非線性順從與阻尼行為。訓練好的致動器網路接著被整合進一套高擬真度的剛體動力學模擬器裡,取代模擬器原本理想化的致動器模型——換句話說,模擬環境裡機身與地面的碰撞、慣性這些剛體動力學部分仍然用傳統解析模型計算,但「馬達實際輸出多少力矩」這個環節改用從真實硬體學到的神經網路模型。強化學習策略接著完全在這個混合模擬環境裡訓練,不需要碰觸任何真實硬體。
實驗結果
用這套混合模擬環境訓練出的控制策略,能夠零樣本(zero-shot,訓練過程完全沒有用到真實硬體的資料做策略微調,只有致動器網路的訓練用了真實資料)直接部署到真實的 ANYmal 四足機器人上,展現出高速運動(最高達每秒 1.5 公尺)與跌倒後自主恢復站立的能力,兩者在論文發表當時都超越了同期以傳統模型式方法控制的表現水準。
影響與定位
這篇論文確立的「用學習到的致動器模型彌合模擬與真實落差」思路,成為後續足式機器人 sim-to-real 強化學習研究的標準做法之一——與其嘗試把整個物理模擬器打造得盡善盡美(這往往極其困難,尤其是接觸力學與致動器這類難以用解析方程精確描述的環節),不如針對性地找出落差最大的環節,用少量真實資料訓練一個學習式模型去補足,這個思路比起單純加大領域隨機化的擾動範圍更有針對性。這篇論文與 MIT Cheetah 3 代表的凸優化 MPC 路線,是足式機器人控制領域兩條至今仍並行發展的技術脈絡——模型式控制提供可解釋、有理論保證的穩定性,強化學習提供更高的靈活性與更強的複雜地形適應能力,兩者近年也持續朝互相借鑑、混合使用的方向發展。