為何把熵加進獎勵
標準強化學習最大化期望獎勵,其最優策略通常是確定性的——它在每個狀態收斂到單一最佳動作。最大熵強化學習改變了目標:最大化獎勵加上策略的熵,並以溫度 α 加權。智能體現在因在仍表現良好的同時、讓動作分布盡可能隨機而獲得獎勵。
最大熵目標:每一步的獎勵都加上 α 乘以策略自身的熵。
這並非權宜之計——它帶來三項具體好處。其一,探索成為目標的一部分,而非外掛的啟發法,直接介入探索—利用權衡。其二,策略學會所有成功的方式,而非僅一種,使它在環境變動時更穩健,也給下游微調更多素材。其三,熵項平滑了最佳化地形,有助於避免過早收斂到脆弱的次優動作。
軟性價值函數與軟性貝爾曼回溯
把熵摺進回報,只以一種乾淨的方式改變了貝爾曼機制。軟性狀態價值變成對動作的 log-sum-exp(帶溫度的 softmax),而非硬性的 max;軟性 Q 更新則把策略的熵加進自舉項。當 α→0 時 log-sum-exp 重新銳化為普通的 max,你便還原出古典的價值函數;當 α 增大,智能體行動得更隨機。
軟貝爾曼回溯:自舉的價值在每一步都帶有 −α·log π 的熵獎勵。
# soft Bellman backup for the entropy-regularized objective
V_soft(s) = E_{a~pi}[ Q(s,a) - alpha * log pi(a|s) ] # log-sum-exp over actions
Q_target = r + gamma * V_soft(s') # bootstrap with soft value此軟性回溯的不動點是一個波茲曼(能量基礎)策略:π(a|s) ∝ exp(Q(s,a)/α)。最優動作分布正比於指數化的價值,這正是為何最優策略是隨機的、以及溫度為何控制它有多尖峰。
軟性演員—評論家
軟性演員—評論家(SAC)是建立在此目標上、針對連續動作空間的實用演算法。它是離策略的演員—評論家:評論者從經驗回放緩衝學習軟性 Q 函數,而演員——一個以網路輸出為均值與變異數的壓縮高斯——透過最小化對 exp(Q/α) 的 KL 來逼近波茲曼策略。演員以重參數化技巧更新,使策略梯度流經採樣的動作,而非依賴高變異數的分數函數估計。
智能體–環境強化學習迴圈示意圖,包含動作、狀態與獎勵。
- 從回放緩衝採樣一小批轉移(離策略,舊資料仍可用)。
- 把雙 Q 評論者朝軟性貝爾曼目標更新,取兩者最小值以抑制高估。
- 以重參數化梯度更新演員,最小化對波茲曼策略的 KL(最大化 Q + 熵)。
- 以 Polyak 平均對目標評論者做軟更新。
自動調整溫度
溫度 α 是最重要——也最惱人——的超參數:太低,策略會崩塌而停止探索;太高,它永遠無法果斷。標準解法把 α 變成可學習變數:設定一個目標熵(經驗法則常取 −dim(動作)),再透過對偶最佳化調整 α 以命中它——策略太確定時把 α 推高,太隨機時把 α 拉低。
自動調節 α:最小化該損失,使策略的期望熵追蹤固定目標 H̄。
為何 SAC 樣本高效——以及它何處吃力
由於它是離策略的,SAC 從回放緩衝把每個轉移重複利用許多次,使它的樣本效率遠高於同策略的 PPO——在同一個機器人上往往是數千步與數百萬步之差。最大熵目標也使它格外穩定、對超參數寬容。
這些吃力之處是誠實的。在不利情況下,搭配函數逼近的離策略自舉仍可能發散;熵紅利微妙地改變了目標,因此你收斂到的策略對獎勵加熵是最優的,而非純獎勵——若部署時需要一個尖銳確定的控制器,這就重要了。而且如同所有以回放為基礎的方法,SAC 繼承了對緩衝組成的敏感性——這個主題在我們抵達離線強化學習時將正面迎戰。