軌跡跟蹤誤差直降50%,清華汪玉團隊強化學習策略秘籍搞定無人機

机器之心發表於2024-12-27
圖片
AIxiv專欄是機器之心釋出學術、技術內容的欄目。過去數年,機器之心AIxiv專欄接收報導了2000多篇內容,覆蓋全球各大高校與企業的頂級實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或者聯絡報導。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com

本文介紹了基於強化學習的無人機控制策略零樣本泛化到真實世界的關鍵因素。作者來自於清華大學高能效計算實驗室,通訊作者為清華大學汪玉教授和於超博士後,研究方向為強化學習和具身智慧。

控制無人機執行敏捷、高機動性的行為是一項頗具挑戰的任務。傳統的控制方法,比如 PID 控制器和模型預測控制(MPC),在靈活性和效果上往往有所侷限。而近年來,強化學習(RL)在機器人控制領域展現出了巨大的潛力。透過直接將觀測對映為動作,強化學習能夠減少對系統動力學模型的依賴。

然而,「Sim2Real」(從模擬到現實)的鴻溝卻始終是強化學習應用於無人機控制的難點之一。如何實現無需額外微調的策略遷移,是研究者們追逐的目標。儘管有許多基於強化學習的控制方法被提出,但至今學界仍未就訓練出魯棒且可零微調部署的控制策略達成一致,比如:獎勵函式應該如何設計才能讓無人機飛得平穩?域隨機化在無人機控制中到底該怎麼用?
最近,清華大學的研究團隊為我們帶來了一個突破性的答案。他們詳細研究了訓練零微調部署的魯棒 RL 策略所需的關鍵因素,並提出了一套整合五大技術、基於 PPO 的強化學習框架 SimpleFlight。這一框架在軌跡跟蹤誤差上比現有的 RL 基線方法降低了 50% 以上!如果你正為強化學習策略無法實際控制無人機而發愁,那麼 SimpleFlight 能夠幫助你訓練出無需額外微調就能在真實環境中執行的魯棒策略。
圖片
  • 論文標題:What Matters in Learning A Zero-Shot Sim-to-Real RL Policy for Quadrotor Control? A Comprehensive Study

  • 論文連結:https://arxiv.org/abs/2412.11764

  • 開原始碼及模型專案網站:https://sites.google.com/view/simpleflight

實驗效果一覽

為了驗證 SimpleFlight 的有效性,研究人員在開源的微型四旋翼無人機 Crazyflie 2.1 上進行了廣泛的實驗。

實驗中,無人機的位置、速度和姿態資訊由 OptiTrack 運動捕捉系統以 100Hz 的頻率提供,並傳輸到離線計算機上進行策略解算。策略生成的 collective thrust and body rates( CTBR) 控制指令以 100Hz 的頻率透過 2.4GHz 無線電傳送到無人機。

研究人員使用了以下兩種型別的軌跡作為基準軌跡:
  • 平滑軌跡:包括八字形和隨機多項式軌跡八字形軌跡具有周期性,研究人員測試了三種速度:慢速 (15.0s 完成)、正常速度 (5.5s 完成) 和快速 (3.5s 完成)。隨機多項式軌跡由多個隨機生成的五次多項式段組成,每個段的持續時間在 1.00s 和 4.00s 之間隨機選擇。

  • 不可行軌跡:包括五角星和隨機之字形軌跡五角星軌跡要求無人機以恆定速度依次訪問五角星的五個頂點。研究人員測試了兩種速度:慢速 (0.5m/s) 和快速 (1.0m/s)。隨機之字形軌跡由多個隨機選擇的航點組成,航點的 x 和 y 座標在 -1m 和 1m 之間分佈,連續航點之間由直線連線,時間間隔在 1s 和 1.5s 之間隨機選擇。

圖片 圖 1:四種軌跡的視覺化

策略的訓練資料包括平滑隨機五次多項式和不可行之字形軌跡。訓練過程持續 15,000 個 epoch,訓練完成後,將策略直接部署到 Crazyflie 無人機上進行測試,沒有進行任何微調。值得注意的是,由於策略在不同隨機種子下表現穩定,研究人員在 3 個隨機種子中隨機挑選了一個策略而沒有選擇表現最好的那個。
圖片 表 1:SimpleFlight 與基線演算法的表現對比

研究人員將 SimpleFlight 與兩種 SOTA 的 RL 基線方法 (DATT [1] 和 Fly [2]) 進行了比較,如表 1 所示。結果表明,SimpleFlight 在所有基準軌跡上都取得了最佳效能,軌跡跟蹤誤差降低了 50% 以上,並且是唯一能夠成功完成所有基準軌跡(包括平滑和不可行軌跡)的方法。圖 2 是一些真機飛行的影片。
圖片
圖片 圖 2:SimpleFlight 在 Crazyflie 2.1 無人機上的實驗效果

研究人員指出,這些對比的核心目的並非進行絕對的橫向評價,而是為了表明:SimpleFlight 實現了目前所知的在 Crazyflie 2.1 上的最佳控制效能,儘管沒有依賴任何新的演算法改進或複雜的架構升級。SimpleFlight 的意義更在於作為一套關鍵訓練因素的集合,它能夠輕鬆整合到現有的四旋翼無人機控制方法中,從而幫助研究者和開發者進一步最佳化控制效能。

此外,研究人員還進行了額外實驗,將 SimpleFlight 部署到一款由團隊自制的 250mm 軸距四旋翼無人機上。這款無人機配備了 Nvidia Orin 處理器,進一步驗證了 SimpleFlight 在不同硬體平臺上的適應性與效果。自制無人機的飛行影片和結果已上傳至專案官網,供感興趣的同行參考。

SimpleFlight 的五大核心秘訣

那麼,SimpleFlight 是如何做到的呢?研究人員主要是從最佳化輸入空間設計、獎勵設計和訓練技術三方面來縮小模擬到現實的差距,並總結出了以下 5 大關鍵因素:
  1. 採用與未來一段參考軌跡的相對位姿誤差、速度和旋轉矩陣作為策略網路的輸入,這使得策略可以進行長距離規劃,並更好地處理具有急轉彎的不可行軌跡。研究人員指出,在強化學習策略的學習中,採用旋轉矩陣而不是四元數作為輸入,更有利於神經網路的學習。

  2. 將時間向量新增到價值網路的輸入。無人機的控制任務通常是隨時間動態變化的,時間向量作為價值網路的額外輸入,增強了價值網路對時間資訊的感知,從而更準確地估計狀態值。

  3. 採用 CTBR 指令作為策略輸出動作,使用連續動作之間的差異的正則化作為平滑度獎勵。在無人機控制中,不平滑的動作輸出可能導致飛行過程中的不穩定,甚至出現震盪和意外偏離軌跡的情況。而現實中的無人機由於硬體特性和動態響應的限制,比模擬環境更容易受到這些不穩定動作的影響。研究人員比較了多種平滑度獎勵方案,結果表明使用連續動作之間的差異的正則化作為平滑度獎勵,可以獲得最佳的跟蹤效能,同時鼓勵策略輸出平滑的動作,避免在現實世界中產生不穩定的飛行行為。

  4. 使用系統辨識對關鍵動力學引數進行校準,並選擇性地應用域隨機化手段。研究人員透過系統辨識對關鍵動力學引數進行了精確校準,確保模擬模型能夠儘可能接近真實無人機的動力學特性。然而,研究也發現,域隨機化的應用需要極為謹慎。對於那些能夠透過系統辨識達到合理精度的引數,過度引入域隨機化可能會適得其反。這是因為不必要的隨機化會顯著增加強化學習的學習複雜度,導致效能下降。換句話說,域隨機化並非 「越多越好」,需要透過合理選擇哪些引數應用隨機化。

  5. 在訓練過程中使用較大的 batch size。在 SimpleFlight 的訓練過程中,研究人員特別關注了 batch size 對策略效能的影響。他們透過實驗發現,增大 batch size 儘管對模擬環境中的效能提升並不顯著,但在真實無人機上的表現卻得到了顯著改善。這表明,大 batch size 在縮小模擬與現實之間的 Sim2Real Gap 方面,扮演了關鍵角色。這種現象背後的原因可能與強化學習的泛化能力有關。在大 batch size 的訓練中,策略能夠在更廣泛的狀態分佈上進行學習,從而提升其應對真實環境中複雜情況的魯棒性。這種改進不僅幫助策略更好地適應現實世界中的不確定性,還減少了從模擬到現實部署時可能出現的效能退化問題。

另外值得注意的是,SimpleFlight 框架整合在研究人員自主開發的高效無人機模擬平臺 OmniDrones,該平臺基於 NVIDIA 的 Isaac Sim 模擬環境搭建,允許使用者在 GPU 並行模擬之上輕鬆設計和試驗各種應用場景,可以實現每秒超過 10^5 步的模擬速度,極大地加速了強化學習策略的訓練。
圖片 圖 4:OmniDrones 模擬平臺示意圖,來源:https://arxiv.org/abs/2309.12825

還等什麼?趕快試試 SimpleFlight,把你的強化學習策略送上無人機吧!

Reference:
[1] Huang, K., Rana, R., Spitzer, A., Shi, G. and Boots, B., 2023. Datt: Deep adaptive trajectory tracking for quadrotor control. arXiv preprint arXiv:2310.09053.
[2] Eschmann, J., Albani, D. and Loianno, G., 2024. Learning to fly in seconds. IEEE Robotics and Automation Letters.

相關文章