safe-control-gym
安全的以學習為基礎之控制的評測套件:在同一個 API 下比較強化學習與 MPC
授權條款
MIT
概述
safe-control-gym 來自 University of Toronto 的 Dynamic Systems Lab,是安全的以學習為基礎之控制與安全強化學習的參考評測套件。它的倒單擺車與 1D/2D/3D 四旋翼環境同時提供用於強化學習的 Gymnasium API,以及用於模型式控制的 CasADi 符號動力學,並原生支援約束規格與擾動注入,讓學習方法(PPO、SAC)與控制方法(LQR、MPC、GP-MPC、經 CBF 過濾的控制器)能在相同的任務上以安全指標進行比較。
這個套件的核心洞見是:安全強化學習與以學習為基礎之控制這兩個社群,各自在互不相容的測試平台上發表成果,使得彼此的主張無從比較。safe-control-gym 統一了介面:每個環境都提供用於擬真模擬的 PyBullet 物理,同時也提供其動力學、成本與約束的 CasADi 符號模型,讓 MPC 系列的方法能直接推導出強化學習方法必須學習的那個模型。任務層將穩定化與軌跡追蹤任務標準化,具備可設定的狀態/輸入約束、隨機化的初始狀態,以及可注入的擾動(參數不確定性、感測器雜訊、對抗性外力)。儲存庫內附有基準方法:經典控制(LQR、iLQR、PID)、預測控制(線性 MPC、GP-MPC)、強化學習(PPO、SAC、DDPG)、安全的以學習為基礎之控制(以學習為基礎的 MPC 變體),以及安全認證(控制障礙函數、MPSC 安全濾波器)。它發表於 IEEE RA-L(2022),是後續大量安全機器人學習論文的基礎,並與 gym-pybullet-drones 一同銜接該實驗室的 Crazyflie 模擬到現實(sim-to-real)流程。
為何重要
safe-control-gym 是安全機器人學習社群取得共同衡量標準的地方:要宣稱某個方法「安全」,它就是標準套件,因為它讓強化學習與模型式控制在相同的任務、相同的約束與相同的擾動模型下執行。
解決的問題
過去,安全強化學習論文與以學習為基礎之控制論文無法相互比較:模擬器不同、約束定義不同,也沒有共同的指標。safe-control-gym 提供一個同時具備學習式與符號式介面、標準約束與安全指標的環境家族。
重點
- 倒單擺車與 1D/2D/3D 四旋翼任務,具備 PyBullet 物理與 CasADi 符號動力學
- 原生支援約束、擾動與不確定性注入,用於安全評估
- 儲存庫內附基準方法:LQR、MPC、GP-MPC、PPO、SAC、CBF 與 MPSC 安全濾波器
- 提供用於強化學習的 Gymnasium API,以及用於模型式控制的精確符號模型
- 來自 gym-pybullet-drones 背後實驗室的 IEEE RA-L 2022 評測基準
適用對象
- 安全強化學習與以學習為基礎之控制的研究人員
- 評測控制方法的研究生
- 重現安全學習主張的審稿人
- 在上硬體前評估安全濾波器的工程師
限制
- 低維度系統(倒單擺車、四旋翼),沒有操作或足式任務
- PyBullet 的擬真度低於 CFD/硬體等級的四旋翼模型
- 自 2022 年那一波發布以來,開發活動已趨緩