強化學習論文(1): Soft Actor-Critic

加州伯克利大學發佈的 off-policy model-free強化學習算法,soft actor-critic(SAC)
論文地址爲:Soft Actor-Critic: Off-Policy Maximum Entropy Deep Reinforcement Learning with a Stochastic Actor
假定已經對經典強化學習建模和基本Actor-Critic方法有所瞭解。

摘要

模型無關(model-free)深度強化學習算法面臨兩個主要挑戰:高採樣複雜度脆弱的收斂性,因此嚴重依賴調參,這兩個挑戰限制了強化學習向現實應用的推廣。
在這篇論文中,作者基於最大熵強化學習算法框架,提出了一個off-policy actor-critic 深度強化學習算法。最大熵強化學習要求actor在同時最大化期望策略分佈的熵,也就是說,在保證任務成果的同時希望策略儘可能的隨機。
這篇論文引入了穩定的隨機actor-critic形式,並使用off-policy方式更新參數,在一系列連續控制基準上達到state-of-the-art 結果,並且對不同的隨機種子表現穩定。

引言

介紹一些論文引言中提到的關鍵點或強化學習中的知識點。

  1. on-policy 與 off-policy:是對強化學習算法參數更新方式的劃分。
    on-policy 要求每一次參數更新時,都需要同環境交互,採集新的經驗樣本來使用,也就是“邊交互邊學習”。當任務複雜時,需要的更新步驟和樣本量激增,極大的增加了採樣複雜度。
    off-policy 致力於重用過去的經驗樣本,特別是對Q-learning類的方法很適用。但是當off-policy和神經網絡相結合時,對穩定性和收斂性造成了很大的挑戰,特別是在連續的狀態和動作空間。此類算法的典型代表是DDPG,採樣複雜度低,優化能力強,但是收斂性非常脆弱且對超參數敏感。
  2. actor-critic 實際上就是policy-iteration(策略迭代)方法的參數化,包含兩個交替步驟:1)policy evaluation:估計策略的值函數(相當於critic);2)policy improvement:根據值函數得到一個更優的新策略(相當於actor)。在複雜問題中,往往難以讓某一個單獨收斂,故採用聯合優化方式。
  3. 標準的強化學習最大化累積期望 reward tE(st,at)ρπ[r(st,at)]\sum_tE_{(s_t,a_t)\sim\rho_\pi}[r(s_t,a_t)]
    最大熵強化學習的優化目標爲:
    J(π)=t=0TE(st,at)ρπ[r(st,at)+αH(π(st))].J(\pi)=\sum_{t=0}^TE_{(s_t,a_t)\sim\rho_\pi}[r(s_t,a_t)+\alpha H(\pi(\cdot|s_t))].超參數α\alpha控制熵項的相對重要性,在後文推導中省略,因爲等價於給 reward 項乘α1\alpha^{-1}

這篇論文就是要討論在連續的狀態和動作空間如何設計有效且穩定的深度強化學習算法。
最大熵強化學習在標準的最大reward強化目標上增加了一個最大熵項,提高了探索能力和魯棒性。
這篇文章提出的SAC,既降低了採樣複雜度,又提高了收斂穩定性。SAC包含三個關鍵因素:
一個actor-critic結構,包括分離的策略網絡和值函數網絡,其中策略網絡是一個隨機actor;
一個off-policy更新方式,基於歷史經驗樣本進行參數更新;
一個熵最大化目標,保證穩定性和探索能力。

理論推導:soft policy iteration

和actor-critic類似,soft actor-critic可以從一個最大熵版本的策略迭代中推導出來。

soft policy evaluation

TπQ(st,at)r(st,at)+γEst+1p[V(st+1)]T^{\pi}Q(s_t,a_t)\triangleq r(s_t,a_t)+\gamma E_{s_{t+1}\sim p}[V(s_{t+1})]其中,TπT^{\pi}是Bellman backup 算子,滿足Qk+1=TπQkQ^{k+1}=T^{\pi}Q^k,且
V(st)=Eatπ[Q(st,at)logπ(atst)]V(s_t)=E_{a_t\sim\pi}[Q(s_t,a_t)-\log\pi(a_t|s_t)]引理1(soft 策略估計):給定TπT^{\pi}Q0Q^0,則序列Qk(k)Q^k(k\rightarrow\infty)將會收斂至策略π\pi的soft Q-value.

soft policy improvement

在策略改進中,我們有 πnew(atst)exp(Qπold(st,at))\pi_{new}(a_t|s_t)\propto\exp(Q^{\pi_{old}}(s_t,a_t))
在實踐中,爲使策略易於處理,我們會將策略限制在一族策略集Π\Pi中,例如一族參數化的分佈(如高斯分佈)。爲保證策略限制,我們必須將改進的策略投射進Π\Pi中。這篇論文采用信息投射,由KL散度定義,也就是說,在策略改進步驟,我們按照如下方式更新策略:
πnew=argminπΠDKL(π(st)exp(Qπold(st,))Zπold(st))\pi_{new}=\arg\min_{\pi'\in\Pi}D_{KL}\Big(\pi'(\cdot|s_t)\Big|\Big|\frac{\exp(Q^{\pi_{old}}(s_t,\cdot))}{Z^{\pi_{old}}(s_t)}\Big)其中Zπold(st)Z^{\pi_{old}}(s_t)是配分函數,與新策略梯度無關。
引理2(soft 策略改進):對於任意(st,at)S×A,A<(s_t,a_t)\in S\times A, |A|<\infty,有Qπnew(st,at)Qπold(st,at)Q^{\pi_{new}}(s_t,a_t)\ge Q^{\pi_{old}}(s_t,a_t)

soft policy iteration

整個的soft 策略迭代交替使用以上兩部分,並且會收斂至Π\Pi中的最優策略:
定理(soft 策略迭代):從任意πΠ\pi\in\Pi開始,交替使用引理1和引理2,最終會收斂至策略π\pi^*,使得Qπ(st,at)Qπ(st,at),πΠ,(st,at)S×A,A<Q^{\pi^*}(s_t,a_t)\ge Q^{\pi}(s_t,a_t),\forall \pi\in\Pi,(s_t,a_t)\in S\times A, |A|<\infty。其中 A<|A|<\infty是爲了保證熵項有界。

模型:soft actor-critic

對於大規模連續控制問題,必須使用近似器對策略和Q-function進行近似,並使用SGD交替更新參數。我們考慮一個狀態值函數Vψ(st)V_{\psi}(s_t),一個soft Q-functionQθ(st,at)Q_\theta(s_t,a_t),一個策略πϕ(atst)\pi_\phi(a_t|s_t),參數分別爲ψ,θ,ϕ\psi,\theta,\phi。其中值函數可被直接建模爲神經網絡,策略被建模爲一個高斯分佈,其均值向量和協方差矩陣都是由神經網絡給出。
注意到,一般我們不估計狀態值函數,因爲它可以由Q-funciton和策略決定,但在實踐中,增加這一項可以使得訓練更穩定,同時也可以很方便地和其他網絡共同訓練。

訓練狀態值函數VψV_{\psi}

在這裏插入圖片描述
其中ata_t是根據當前狀態sts_t生成的。

訓練soft Q-functionQθQ_\theta

在這裏插入圖片描述
更新中使用來target網絡ψˉ\bar{\psi}以切斷相關性。

訓練策略πϕ\pi_\phi

Jπ(ϕ)=EstD[DKL(πϕ(st)exp(Qθ(st,))Zθ(st))]J_\pi(\phi)=E_{s_t\sim D}\Big[D_{KL}\Big(\pi_\phi(\cdot|s_t)\Big|\Big|\frac{\exp(Q_\theta(s_t,\cdot))}{Z_\theta(s_t)}\Big)\Big]我們利用神經網絡重新參數化策略:
at=fϕ(ϵt;st)a_t=f_\phi(\epsilon_t;s_t)其中ϵt\epsilon_t是一個從固定先驗分佈中採樣的隨機變量,如球形高斯分佈。重寫loss爲:
在這裏插入圖片描述

算法

可以看作是DDPG的一個擴展版本
在這裏插入圖片描述

實驗結果

最優性

在這裏插入圖片描述

穩定性

在這裏插入圖片描述

參數敏感性

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章