連續控制
自動溫度調整(SAC,automatic temperature tuning)
最大熵目標有一顆關鍵旋鈕:溫度 α,它決定智能體把隨機性相對於獎勵看得多重。調錯了 SAC 就會出狀況——太高,策略會徒然保持隨機、永遠不收斂變利;太低,它會過早塌縮、失去探索、卡住。更糟的是,正確值會在訓練中漂移,且隨任務與獎勵尺度天差地別,所以手動調它是件吃力不討好的雜務。自動溫度調整就是要拿掉這件雜務。
其想法是:別再去挑「要多少熵」,改成挑一個目標熵——一個期望的隨機程度——再讓 α 自行調整去命中它。這被表述為一個帶約束的最佳化:在策略平均熵至少維持在目標之上的前提下,最大化獎勵。解出來會得到一條簡單的更新——當策略的熵低於目標時調高 α、高於目標時調低 α——於是溫度在整個訓練過程中自我調節。
這是第一篇 SAC 論文與其更實用後繼版本之間的唯一改動,而它影響巨大——它把 SAC 從一個強卻挑剔的方法,變成一個在差異極大的任務上都能開箱即用的方法。一個合理的預設目標是把它設得與動作維度成比例(常取 −dim(A)),這拿掉了實務者最後得操心的超參數之一。
J(\alpha)=\mathbb{E}_{a\sim\pi}\big[-\alpha\big(\log\pi(a\mid s)+\bar{\mathcal{H}}\big)\big]
讓 α 朝目標熵 H̄ 自動調整,而非手動挑選。
又称
另见