連續控制

正規化優勢函數(normalized advantage functions, NAF)

NAF 是一個巧妙的辦法,能在連續動作空間裡做純粹的 Q 學習而不需要另設演員。回想那道障礙:Q 學習需要 max_a Q(s,a) 與 argmax_a Q(s,a),但你無法在無窮多的實數動作上搜尋。NAF 的繞法是把 Q 在動作變數上的形狀限制成二次式——動作空間裡一個朝下的拋物面,或說一個碗——對它而言,最大值與取得最大值的點都有俐落的閉式解。

網路針對每個狀態輸出三樣東西:狀態價值 V(s)、碗頂位置 μ(s),以及定義碗之曲率的矩陣 P(s)。優勢於是成了偏離 μ(s) 的二次懲罰,所以 Q(s,a) = V(s) − ½(a − μ(s))ᵀ P(s) (a − μ(s))。因為這在構造上對 a 是凹的,最佳動作就是 μ(s)、最大價值就是 V(s)——兩者瞬間讀出,毋須最佳化,也完全不需要演員網路。

這份優雅是有代價的:硬把 Q 限制成動作的二次式是個很強的假設,當真實價值地景是多峰或形狀古怪時,NAF 表達不出來,表現會輸給更靈活的演員–評論家。所以儘管作為「連續 Q 學習」的想法它早於 DDPG 一脈,這個領域大致還是轉向了 DDPG、TD3、SAC——它們對價值函數的形狀不設這種限制。

Q(s,a)=V(s)-\tfrac{1}{2}\big(a-\mu(s)\big)^{\top}P(s)\big(a-\mu(s)\big)

一個對動作為二次式的 Q,其最大值在 a=μ(s) 處為 V(s),可閉式讀出。

又称
NAF