信任域策略優化 是什麼?
Trust Region Policy Optimization:信任域策略優化 的完整解釋
一種策略梯度方法,透過限制策略更新的範圍以保證單調性改進的強化學習算法。
核心概念
TRPO由John Schulman等人於2015年提出,其核心貢獻是提供了策略梯度方法的理論保證。標準策略梯度(Vanilla Policy Gradient)每次迭代更新策略時,學習率固定,容易導致:
- 策略更新過大,導致性能急劇下降。
- 無法保證目標函數單調改進(monotonic improvement)。
- 樣本效率低,需大量互動。
TRPO引入信任域(Trust Region)概念:限制每次更新時新策略與舊策略的相似度(用KL散度衡量),確保更新後仍在「信任域」內,從而保證目標函數的單調性改進。
運作原理
目標函數推導
TRPO的目標是最大化:
J(π_new) - J(π_old)
其中J(π)表示策略π的累積期望獎勵。透過泰勒展開與信任域近似,TRPO證明了只要滿足:
D_KL(π_old || π_new) ≤ δ
那麼目標函數就能保證非負的改進。這個約束就是「信任域」。
優勢函數與替代目標
TRPO實際最大化的是替代目標(Surrogate Objective):
L_surr(π_new) = E[A_t * (π_new(a|s) / π_old(a|s))]
其中A_t是優勢估計(Advantage Estimation),通常用廣義優勢估計(GAE)計算。這個目標在信任域內與真實目標密切相關。
共軛梯度法求解
TRPO在限制條件下使用共軛梯度法(Conjugate Gradient Method)求解二次規劃問題,而非簡單的梯度上升。這使得TRPO的計算複雜度較高。
實際應用
- 機器人控制:MuJoCo連續控制任務中,TRPO表現穩定。
- 遊戲AI:在Atari遊戲上表現優於早期策略梯度方法。
- 自動駕駛:用於決策層的策略優化。
- 推薦系統:優化對話策略時保證用戶體驗單調改進。
常見誤區
誤區1:認為TRPO保證全局最優。實際上TRPO只保證單調局部改進,容易陷入局部最優。
誤區2:將信任域大小δ設置過大會失去約束效果,過小則導致更新過於保守,都不理想。
誤區3:忽視優勢函數估計的品質。GAE的λ參數選擇對TRPO效果影響很大。
與相關技術的比較
- TRPO vs. 策略梯度:TRPO提供理論保證和單調性,策略梯度更簡單但無保證。
- TRPO vs. PPO:PPO簡化了TRPO,用損失函數罰項代替硬約束,計算更快。在實務中PPO往往表現相當甚至更優。
- TRPO vs. A3C:TRPO是中心化學習,A3C是分布式學習,各有應用場景。
- TRPO vs. 演員-評論家方法:TRPO本身就包含演員-評論家的思想,使用價值函數作評論家。