基準的階梯
各種方法在一個共享的難度階梯上比較。最底層的幾階是移動(locomotion)類的 MuJoCo 基準(MuJoCo benchmarks)——HalfCheetah、Hopper、Walker2d、Ant、Humanoid——身體是給定的,智能體必須學出一種步態。它們標準化、快速、可重現,這正是論文都報告它們的原因。
強化學習迴路示意圖:智能體向環境發送動作,環境回傳下一個狀態與獎勵。
更高一層是靈巧操作(dexterous manipulation):控制一隻多指手去翻轉方塊、開門或組裝零件。動作空間很大,接觸物理又硬又混亂,而獎勵很容易設錯——操作把連續控制不擅長的每件事都壓到極限。
直接從像素學習
基準通常直接把乾淨的狀態交給智能體——關節角度與速度。但真實機器人大多看到的是一台相機。從像素做連續控制(continuous control from pixels)要求智能體端到端地、從原始影像中同時學會世界長什麼樣與該怎麼行動。這難得多:有用的訊號埋在數千個像素裡,而獎勵又是延遲的。
實務配方是在 SAC 風格的智能體前面放一個卷積編碼器,再用影像增強(隨機裁切與平移)加上一個重建或預測影格的輔助目標來幫它一把。有了這些,基於像素的智能體如今在許多任務上已能與基於狀態的智能體匹敵——這是邁向真實硬體控制的關鍵一步。
卷積流程:影像經過卷積與池化層,轉換為特徵向量。
跨越現實鴻溝
在真實機器人上訓練既慢、又貴、又有風險,所以我們在模擬中訓練再轉移。問題在於現實鴻溝(reality gap):模擬器永遠無法完美吻合現實——摩擦、質量、延遲、感測器噪聲全都不一樣——所以一個在模擬裡考滿分的策略,到了機器人上可能慘敗。從模擬走到硬體,就是模擬到現實的轉移(sim-to-real transfer),本身就是一個研究問題。
最可靠的解法是領域隨機化(domain randomization):訓練時把模擬器的物理與外觀都隨機化——質量、摩擦、光照、紋理、控制延遲。策略被迫在一整個世界家族裡都能運作,於是真實世界看起來只是它早已處理過的另一個樣本。這是個看似簡單卻支撐起大量現代以強化學習做機器人操作(robotic manipulation with RL)的想法。
並排的三種擬合:欠擬合、良好擬合與對訓練資料的過擬合。
一份實用檢查清單
把整個軌道串起來,對一個新的連續控制問題,這裡有一套合理的操作順序。
- 定義動作空間與其上下限,並把觀測與動作正規化到相近的尺度——未經縮放的輸入是無聲失敗的頭號原因。
- 從一個強基準起步:要樣本效率與少調參就用 SAC,想要更簡單的確定性方法就用 TD3。
- 小心地塑形獎勵,並提防獎勵駭客(reward hacking)——連續智能體會把你獎勵裡的任何漏洞利用到小數點後。
- 如果你只有相機,就換成帶影像增強的像素編碼器;預期需要更多資料與耐心。
- 在碰硬體之前,先在帶領域隨機化的模擬裡訓練,再用保留的隨機化世界來評估,作為現實鴻溝的代理指標。
- 部署時對扭矩與速度設安全上限,並在迴圈中保留人工或硬體的緊急停止開關。
這個領域要往哪裡去
前沿正在跨越一次只訓練一個任務的做法:從離線機器人資料集學策略、在許多任務與不同形體之間共享技能,並把控制摺進能感知又能行動的大型多模態模型裡。但本軌道的核心想法——一個發出實數指令的 actor、一個抗拒自身樂觀的悲觀 critic、以及有原則而非外掛上去的探索——仍是每個新方法賴以建立的根基。