The option-critic architecture(上)


Abstract

時間抽象是強化學習中擴大學習和規划的關鍵。雖然計划與時間擴展的行動是眾所周知的,但從數據中自主地創建這樣的抽象仍然具有挑戰性。我們在option框架內解決這個問題[Sutton,Precup&Singh,1999;Precup,2000]。我們推導了option的策略梯度定理,並提出了一種新的 \(opiton\text{-}critic\) 體系結構,它能夠同時學習 option 的內部策略和終止條件,並且不需要提供任何額外的獎勵或子目標。在離散和連續環境下的實驗結果表明了該框架的靈活性和高效性。

Temporal abstraction:

Introduction

時間抽象允許表示發生在不同時間尺度上的行為過程的知識。

How to understand? Option?

在強化學習中,option(Sutton、Precup和Singh 1999;Precup 2000)為定義此類行動方案以及與之無縫地學習和規划提供了框架。在過去的15年里,自主地發現時間抽象一直是廣泛研究的主題(McGovern和Barto 2001;Stolle和Precup 2002;Menache、Mannor和Shimkin 2002;S¸ims¸ek和Barto 2009;Silver和Ciosek 2012),但是可以自然地與連續狀態和/或動作空間一起使用的方法直到最近才開始變得可行(Konidaris等人。2011年;Niekum 2013年;Mann、Mannor和Precup 2015年;Mankowitz、Mann和Mannor 2016年;Kulkarni等人。2016年;V ezhnevets等人。2016年;Daniel等人。2016年)。

現有的大部分工作都集中在尋找子目標(代理應該達到的有用狀態)以及隨后學習實現這些目標的策略。這一想法導致了有趣的方法,但因為他們的 "combinatorial" flavor 也很難擴大規模,。此外,與子目標相關的策略學習在數據和計算時間方面可能代價很大;在最壞的情況下,它可能與解決整個任務一樣昂貴。

我們提出了另一種觀點,它模糊了發現option問題和學習option問題之間的界限。基於policy gradient 定理(Sutton等人。2000年),我們得到了一些新的結果,這些結果使得 \(intra-option\) 政策和終止函數的逐步學習過程能夠與對它們的策略同時進行。在離散或連續的狀態空間和動作空間下,這種方法可以自然地處理線性和非線性函數逼近器。當從單個任務中學習時,現有的學習option方法要慢得多:在類似的任務中重復使用已學習的選項,這是很大的好處。相比之下,我們證明了我們的方法能夠在單個任務中成功地學習選項,而不會導致任何減速,同時仍然為轉移學習提供好處。

  1. 我們首先回顧與我們工作的兩個主要組成部分相關的背景:policy gradient method 和 option。
  2. 然后我們描述了我們方法的核心思想:the intra-option policy 和 termination gradient theorems。附加技術細節見附錄。
  3. 實驗結果表明,我們的方法能夠有效地學習有意義的時間擴展行為。與其他方法不同,我們只需要指定所需選項的數量;不需要有子目標、額外獎勵、描述demonstrations、多重問題或任何其他特殊調整(但是,如果需要,該方法可以利用偽獎勵函數)。據我們所知,這是第一個端到端的學習方法,可以以相當的效率擴展到非常大的領域。

Preliminaries and Notation

一個馬爾可夫決策過程包括:

\[狀態空間:\mathcal{S} \\ 動作空間:\mathcal{A} \\ 轉移函數P:\mathcal{S}\times\mathcal{A}\to \mathbb{R} \]

為了方便起見,我們發展了假設離散狀態和作用集的思想。然而,我們的結果擴展到連續空間使用通常的測量理論假設(我們的一些經驗結果是在連續任務)。A (Markov Stationary) \(policy\) 是以狀態為條件在動作上的概率分布:$$\pi:\mathcal{S}\times\mathcal{A}\to[0,1]$$。

在discount probelem中,策略\(\pi\)的值函數定義為期望:

\[V_\pi(s)=\mathbb{E}_\pi[\sum_{t=0}^\infty \gamma^tr_{t+1}|s_0=s] \]

其動作值函數為:

\[Q_\pi(s,a)=\mathbb{E}_\pi[\sum_{t=0}^\infty \gamma^tr_{t+1}|s_0=s, a_0=a] \]

其中\(\gamma\in[0,1)\),為折扣因子。

一個策略 \(\pi\) 對給定的動作值函數 \(Q\) 是貪婪的,如果\(\pi(s,a)>0\)當且僅當\(a=\mathop{\arg\min}_{a'}Q(s,a')\)

在離散MDP中,至少有一個最優策略對其自身的作用值函數是貪婪的。

Policy gradient methods

policy gradient 方法(Sutton等人。2000;Konda和Tsitsiklis 2000)通過執行隨機梯度下降來優化給定參數化隨機策略族 \(\pi_\theta\) 的性能目標,來解決尋找一個好策略的問題。policy gradient 定理(Sutton等人。2000)提供了平均獎勵和折扣獎勵目標相對於θ的梯度的表達式。

在discounted 的設置下,目標是根據指定的開始狀態(或分布)來定義的:

\[s_0:\rho(\theta,s_0)=\mathbb{E}_{\pi\theta}[\sum_{t=0}^{\infty}\gamma^tr_{t+1}|s_0]\tag{a-1} \]

Policy gradient 定理表明:

\[\frac{\partial\rho(\theta,s_0)}{\partial\theta}=\sum_s\mu_{\pi\theta}(s|s_0)\sum_a\frac{\partial\pi_{\theta}(a|s)}{\partial\theta}Q_{\pi\theta}(s,a) \]

\[\mu_{\pi\theta}(s|s_0)=\sum_{t=0}^{\infty}\gamma^tP(s_t=s|s_0) \]

\(\mu_{\pi\theta}(s|s_0)\) 是從 \(s_0\) 開始沿軌道的狀態的折扣權重。

在實際應用中,政策梯度是沿着 on-policy 上的平穩分布從樣本中估計出來的。(Thomas 2014)表明,忽略此平穩分布中的折扣因子會使通常的政策梯度估計有偏差。然而,糾正這種差異也會降低數據效率。為了簡單起見,我們建立在(Sutton et al並根據(Thomas 2014)討論如何擴展我們的結果。

The options framework

The options framework(Sutton、Precup和Singh 1999;Precup 2000)將時間擴展行動的概念正式化。

\[\text{Markov option }\omega\in\Omega \ is\ (\mathcal{I}_\omega,\pi_\omega,\beta_\omega)= \begin{cases} \mathcal{I}_\omega \subseteq\mathcal{S}\\ \pi_\omega:intra\text{-}option \text{ policy}\\ \beta_\omega \end{cases} \]

我們同時假設所有的options在任何地方都可以使用,即 \(\forall s\in\mathcal{S},\forall \omega\in\Omega:s\in\mathcal{I}_\omega\)這是大多數option發現算法中的一種假設。我們將在最后一節討論如何消除這種假設。(Sutton,Precup,and Singh 1999;Precup 2000)表明,賦予一組option的MDP成為一個半馬爾可夫決策過程(Puterman 1994,第11章),它在 \(V_\Omega(s)\) 和 option-value function \(Q_\Omega(s,\omega)\) 上具有對應的最優值函數。mdp的學習和規划算法在這種情況下有對應的算法。然而,底層MDP的存在提供了並行學習許多不同選項的可能性:這就是 \(intra\text{-}option\ learning\) 的思想,我們在工作中利用了這種思想。

Learning Options

我們對學習選擇問題采取了持續的觀點。在任何時候,我們都希望將所有可用的經驗提煉到我們系統的每個組成部分:value function, policy over options, intra-option policies and termination functions 價值函數和期權政策、期權內政策和終止函數。為了實現這一目標,我們重點學習期權策略和終止函數,假設它們是用可微參數化函數逼近器表示的。

differentiable parameterized function approximators 可微參數化函數逼近器:

有很多 differentiable function approximators,如:

  • 線性模型(Linear combinations of features)
  • 神經網路(Neural network)
  • 決策樹(Decision tree)
  • 最近鄰(Nearest neighbour)
  • ...

我們考慮了 \(call-and-return\) 執行模型,在該模型中,agent根據其在 \(\pi_\Omega\) 的策略選擇option \(\omega\) ,然后遵循其 \(intra-option\) policy \(\pi_\omega\)直到終止(由 \(\beta_\omega\) 決定),此時該過程重復進行。

\(\pi_{\omega,\theta}\) 表示由θ參數化的option ω的intra-option policy,\(\beta_{\omega,\vartheta}\) 是由ϑ參數化的ω的終止函數。我們提出了兩個新的學習option的結果,得到了作為藍圖的政策梯度定理(薩頓等人。2000年)。這兩個結果都是在假設目標是學習使當前任務的預期收益最大化的option的前提下得出的。然而,如果要在目標函數中添加額外的信息,只要它以加性可微函數的形式出現,就可以很容易地做到這一點功能。

additive differentiable function:

假設我們的目標是優化在所有從指定狀態 \(s_0\) 和option \(\omega_0\) 的軌跡上期望的discounted return,然后

\[\rho(\Omega,\theta,\vartheta,s_0,\omega_0)=\mathbb{E}_{\Omega,\theta,\omega}[\sum_{t=0}^{\infty}\gamma^tr_{t+1}|s_0,\omega_0] \]

7.24:此公式相對於式(a-1)同為 \(\rho()\) ,應該同樣理解為\(s_0\) 的分布

請注意,此return取決於policy over options,以及option policies和termination函數的參數。我們將取這個目標相對於θ和ϑ的梯度。為了做到這一點,我們將使用類似於 \(intra-option\) 學習中使用的方程(Sutton,Precup,and Singh 1999,第8節)。具體來說,option-value 函數的定義可以寫成:

\[Q_\Omega(s,\omega)=\sum_a\pi_{\omega,\theta}(a|s)Q_U(s,\omega,a)\tag{1} \]

首先可以很直觀地看出此方法不是將option視為不可觀察的黑盒,而是可以觀察其內部更基礎的action。基於此上式便可以理解為,option-value function就是基於狀態s,option內策略得到值的期望,所以 \(Q_U()\) 從這個表達式推斷,就可以推測是用來描述option內的state-action值函數,相當於是option的qlearning過程的值函數

\(Q_U:\mathcal{S}\times\Omega\times\mathcal{A}\to\mathbb{R}\) 在state-option對的環境中執行action的值:

\[Q_U(s,\omega,a)=r(s,a)+\gamma\sum_{s'}P(s'|s,a)U(\omega,s')\tag{2} \]

通過文章內的描述可以得知之前的推斷是正確的,但是完全理解為option內的q-learning還是不妥

注意,\((s,ω)\)對導致了一個擴大的狀態空間,參見(Levy和Shimkin 2011)。但是,我們不會顯式地處理這個空間;它只用於簡化推導。函數\(U:\Omega\times\mathcal{S}\to\mathbb{R}\)稱為到達時的option-value函數(Sutton、Precup和Singh 1999,方程20)。

進入狀態 \(s'\) 時執行 \(ω\) 的值由下式給出:

\[U(\omega,s')=(1-\beta_{\omega,\vartheta}(s'))Q_\Omega(s',\omega)+\beta_{\omega,\vartheta}(s')V_\Omega(s')\tag{3} \]

Between MDPs and semi-MDP中的表達式為:\(U(s,o)=(1-\beta(s))Q(s,o)+\beta(s)\mathop{\max}_{o'\in\mathcal{O'}}Q(s,o')\)

\(U(\omega,s')\) 的含義也即高亮——進入狀態 \(s'\) 時執行 \(\omega\) 的值

\(P(s'|s,a)\) 指(s,a)時s'的概率,所以\(\sum_{s'}P(s'|s,a)U(\omega,s')\)\(\mathbb{E}[\omega|s,a]\)

請注意, \(Q_U\) and \(U\) 都依賴於θ和ϑ,但為了清楚起見,我們不在符號中包含它們。導出策略梯度所需的最后一個要素是Markov鏈,沿着該鏈可以估計性能度量。自然的方法是考慮在增廣狀態空間中定義的鏈,因為state-option對現在在通常的Markov鏈中扮演regular state的角色。如果option \(\omega_t\) 已經啟動或在狀態st的時間t執行,則一步中轉換到 \((s_{t+1},ω_{t+1})\) 的概率為:

\[P(s_{t+1},\omega_{t+1}|s_t,\omega_t)=\sum_a\pi_{\omega_t,\theta}(a|s_t)P(s_{t+1}|s_t,a)[(1-\beta_{\omega,\vartheta}(s_{t+1}))\mathbb{1}_{\omega_t=\omega_{t+1}}+\beta_{\omega,\vartheta}(s_{t+1})\pi_\Omega(w_{t+1}|s_{t+1})]\tag{4} \]

顯然,(4)給出的過程是均勻的。在溫和的條件下,且期權無處不在,它實際上是遍歷的,並且在state-option對上存在唯一的穩態分布(stationary distribution)。

\(\mathbb{1}_{\omega_t=\omega_{t+1}}\) 的含義:簡單理解應為 \(\omega_t=\omega_{t+1}\) 為1,不等則為0

所以對(4)的理解應為:*我將原文中的一處()改為了[]更有助於觀察

整個的one-step概率公式為: intra-option策略在\(s_t\)時選擇\(a\)的概率 乘以 \((s_t,a)\to s_{t+1}\)的轉移概率 乘以 option變化的概率 之和

其中option變化的概率包括兩部分:當 \(\omega_t\neq\omega_{t+1}\) 時,,即**option在\(s_{t+1}\) 時終止 並由上層策略 \(\pi_\Omega\) 選擇了 \(\omega_{t+1}\) **;當 \(\omega_t=\omega_{t+1}\) 時,即 \(s_{t+1}\) 不終止仍為 \(\omega_t\) 的概率

穩態分布:

假設intra-option policies的參數 \(\theta\) 是隨機可微的,我們現在將計算expected discounted return的梯度。從式(1,2)可以得到:

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\theta}=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\theta}\tag{6} \]

這一步的推導非常簡單,就是直接展開

\[\because Q_\Omega(s,\omega)=\sum_a\pi_{\omega,\theta}(a|s)Q_U(s,\omega,a)\\ \therefore \frac{\partial Q_\Omega(s,\omega)}{\partial\theta}=\sum_a\left(\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a)+\pi_{\omega,\theta}(a|s)\frac{\partial Q_U(s,\omega,a)}{\partial\theta}\right)\\ \because Q_U(s,\omega,a)=r(s,a)+\gamma\sum_{s'}P(s'|s,a)U(\omega,s')\\ \therefore \frac{\partial Q_U(s,\omega,a)}{\partial \theta}=\gamma\sum_{s'}P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\theta} \]

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\theta}=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\theta}\tag{6} \]

我們可以用(3)和(4)進一步展開右手邊,得到以下定理:

Intra-Option Policy Gradient Theorem

**Theorem 1 (Intra-Option Policy Gradient Theorem). **

給定一組參數 \(\theta\) 可微的隨機intra-option的Markov期權,其gradient of the expected discounted return相對於 \(\theta\) 和初始條件 \((s_0,\omega_0)\) 的梯度為:

\[\sum_{s,\omega}\mu_\Omega(s,\omega|s_0,\omega_0)\sum_a\frac{\partial \pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) \]

其中\(\mu_\Omega(s,\omega|s_0,\omega_0)\) 是state-option對沿着從 \((s_0,\omega_0)\) 開始的軌跡的discounted weighting

\[\mu_\Omega(s,\omega|s_0,\omega_0)=\sum_{t=0}^{\infty}\gamma^tP(s_t=s,\omega_t=\omega|s_0,\omega_0) \]

證明在附錄中。

為了閱讀的連貫性將推導過程放在這里

在上述過程推導得到:

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\theta}=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a)+ \sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\theta}\tag{6} \]

\[\because U(\omega,s')=(1-\beta_{\omega,\vartheta}(s'))Q_\Omega(s',\omega)+\beta_{\omega,\vartheta}(s')V_\Omega(s')\tag{3} \]

需要注意 \(\beta_{\omega,\vartheta}\) 定義即由 \(\vartheta\) 參數化的 \(\omega\) 的的終止函數,所以其中不含 \(\theta\)

\[\begin {aligned} \therefore \frac{\partial U(\omega,s')}{\partial \theta} &= (1-\beta_{\omega,\vartheta}(s'))\frac{\partial Q_\Omega(s',\omega)}{\partial \theta}+\beta_{\omega,\vartheta}(s')\frac{\partial V_\Omega(s')}{\partial \theta}\\ &=(1-\beta_{\omega,\vartheta}(s'))\frac{\partial Q_\Omega(s',\omega)}{\partial \theta}+\beta_{\omega,\vartheta}(s')\sum_{\omega'}\pi_\Omega(\omega'|s')\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\\ &=\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\sum_{\omega'}(\beta_{\omega,\vartheta}(s')\pi_\Omega(\omega'|s')+(1-\beta_{\omega,\vartheta}(s'))\mathbb{1}_{\omega=\omega'}) \end {aligned}\tag{7} \]

將(7)帶入(6)得:

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\theta}=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\sum_{\omega'}(\beta_{\omega,\vartheta}(s')\pi_\Omega(\omega'|s')+(1-\beta_{\omega,\vartheta}(s'))\mathbb{1}_{\omega'=\omega})\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\tag{8} \]

同時再引入上文已經提到得式(4),對其引入discount可得:

\[P^{(1)}_\gamma(s_{t+1},\omega_{t+1}|s_t,\omega_t)=\sum_a\pi_{\omega_t}(a|s_t)\gamma P(s_{t+1}|s_t,a)[(1-\beta_{\omega_t}(s_{t+1}))\mathbb{1}_{\omega_t=\omega_{t+1}}+\beta_{\omega_t}(s_{t+1})\pi_\Omega(w_{t+1}|s_{t+1})] \]

同理可以得到同樣的one-step轉移概率:

\[P^{(1)}_\gamma(s_{t+1},\omega_{t}|s_t,\omega_{t-1})=\sum_a\pi_{\omega_t}(a|s_t)\gamma P(s_{t+1}|s_t,a)[(1-\beta_{\omega_{t-1}}(s_{t}))\mathbb{1}_{\omega_t=\omega_{t-1}}+\beta_{\omega_{t-1}}(s_{t})\pi_\Omega(w_{t}|s_{t})] \]

進而可以得到k-steps的遞歸表達式:

\[P^{(k)}_\gamma(s_{t+k},\omega_{t+k}|s_t,\omega_t)=\sum_{s_{t+1}}\sum_{\omega_{t+1}}(P^{(1)}_\gamma(s_{t+1},\omega_{t+1}|s_t,\omega_t)P^{(k-1)}_\gamma(s_{t+k},\omega_{t+k}|s_{t+1},\omega_{t+1})) \]

\[P^{(k)}_\gamma(s_{t+k},\omega_{t+k-1}|s_t,\omega_{t-1})=\sum_{s_{t+1}}\sum_{\omega_{t}}(P^{(1)}_\gamma(s_{t+1},\omega_{t}|s_t,\omega_{t-1})P^{(k-1)}_\gamma(s_{t+k},\omega_{t+k-1}|s_{t+1},\omega_{t})) \]

所以針對式(8)論文給出化簡:

\[\begin {aligned} \frac{\partial Q_\Omega(s,\omega)}{\partial\theta}&=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\sum_{\omega'}(\beta_{\omega,\vartheta}(s')\pi_\Omega(\omega'|s')+(1-\beta_{\omega,\vartheta}(s'))\mathbb{1}_{\omega'=\omega})\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\\ &=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_{s'}\sum_{\omega'}P^{(1)}_\gamma(s',\omega'|s,\omega)\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\\ &=\sum_{k=0}^\infty\sum_{s',\omega'}P^{(k)}_\gamma(s',\omega'|s,\omega)\sum_a\frac{\partial\pi_{\omega',\theta}(a|s')}{\partial\theta}Q_U(s',\omega',a)\\ \end{aligned}\tag{9} \]

疑問:(9)中第二步是如何到第三步的

問題關鍵:要注意表達式中字母角標的變化,遞歸得到的該表達式

\[\frac{\partial Q_\Omega(s',\omega')}{\partial\theta}=\sum_a\frac{\partial\pi_{\omega',\theta}(a|s')}{\partial\theta}Q_U(s',\omega',a) + \sum_{s''}\sum_{\omega''}P^{(1)}_\gamma(s'',\omega''|s',\omega')\frac{\partial Q_\Omega(s'',\omega'')}{\partial \theta}\\ \]

\[\begin {aligned} \frac{\partial Q_\Omega(s,\omega)}{\partial\theta} &=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_{s'}\sum_{\omega'}P^{(1)}_\gamma(s',\omega'|s,\omega)\frac{\partial Q_\Omega(s',\omega')}{\partial \theta}\\ &=\sum_a\frac{\partial\pi_{\omega,\theta}(a|s)}{\partial\theta}Q_U(s,\omega,a) + \sum_{s'}\sum_{\omega'}P^{(1)}_\gamma(s',\omega'|s,\omega)\left(\sum_a\frac{\partial\pi_{\omega',\theta}(a|s')}{\partial\theta}Q_U(s',\omega',a) + \sum_{s''}\sum_{\omega''}P^{(1)}_\gamma(s'',\omega''|s',\omega')\frac{\partial Q_\Omega(s'',\omega'')}{\partial \theta}\right)\\ &=\dots\\ &=\sum_{k=0}^\infty\sum_{s',\omega'}P^{(k)}_\gamma(s',\omega'|s,\omega)\sum_a\frac{\partial\pi_{\omega',\theta}(a|s')}{\partial\theta}Q_U(s',\omega',a)\\ \end{aligned} \]

這個梯度描述了原始水平上局部變化對全局期望折現收益的影響。相反,sub-goal或pseudo-reward方法假設option的目標僅僅是優化其自身的獎勵函數,而忽略了提議的變更如何在總目標中如何傳播。

Termination Gradient Theorem

現在我們將注意力轉向計算終止函數的梯度,這次假設是隨機的,並且在ϑ中是可微的。

從(1,2,3)可以得到:

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\vartheta}=\sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\vartheta} \]

直接展開,很容易得到

\[\because Q_\Omega(s,\omega)=\sum_a\pi_{\omega,\theta}(a|s)Q_U(s,\omega,a)\\ \therefore \frac{\partial Q_\Omega(s,\omega)}{\partial\vartheta}=\sum_a\pi_{\omega,\theta}(a|s)\frac{\partial Q_U(s,\omega,a)}{\partial\vartheta}\\ \because Q_U(s,\omega,a)=r(s,a)+\gamma\sum_{s'}P(s'|s,a)U(\omega,s')\\ \therefore \frac{\partial Q_U(s,\omega,a)}{\partial \vartheta}=\gamma\sum_{s'}P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\vartheta}\\ \frac{\partial Q_\Omega(s,\omega)}{\partial\vartheta}=\sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\vartheta} \]

因此,關鍵量是 \(U\) 的梯度。這是call-and-return執行的自然結果,其中終止函數的“goodness”只能在進入下一個狀態時評估。相關梯度可進一步擴展為:

\[\frac{\partial U(\omega,s')}{\partial\vartheta}=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}A_\Omega(s',\omega)+\gamma\sum_{\omega'}\sum_{s''}P(s'',\omega')\frac{\partial U(\omega',s'')}{\partial\vartheta}\tag{5} \]

其中 \(A_\Omega\) 是advantage function(Baird,1993),\(A_\Omega(s',\omega)=Q_\Omega(s',\omega)-V_\Omega(s')\)

\[\frac{\partial Q_\Omega(s,\omega)}{\partial\vartheta}=\sum_a\pi_{\omega,\theta}(a|s)\sum_{s'}\gamma P(s'|s,a)\frac{\partial U(\omega,s')}{\partial\vartheta}\\ U(\omega,s')=(1-\beta_{\omega,\vartheta}(s'))Q_\Omega(s',\omega)+\beta_{\omega,\vartheta}(s')V_\Omega(s') \]

\[\begin{aligned} \frac{\partial U(\omega,s')}{\partial\vartheta}&=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}Q_\Omega(s',\omega)+(1-\beta_{\omega,\vartheta}(s'))\frac{\partial Q_\Omega(s',\omega)}{\partial\vartheta}+\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}V_\Omega(s')+\beta_{\omega,\vartheta}(s')\frac{\partial V_\Omega(s')}{\partial\vartheta}\\ &=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}(Q_\Omega(s',\omega)-V_\Omega(s'))+(1-\beta_{\omega,\vartheta}(s'))\frac{\partial Q_\Omega(s',\omega)}{\partial\vartheta}+\beta_{\omega,\vartheta}(s')\frac{\partial V_\Omega(s')}{\partial\vartheta} \end{aligned} \]

\[Q_\Omega(s',\omega)=\sum_a\pi_{\omega,\theta}(a|s')\left(r(s',a)+\sum_{s''}\gamma P(s''|s',a)U(\omega,s'')\right) \]

\[\begin{aligned} V_\Omega(s')&=\sum_{\omega'}\pi_\Omega(\omega'|s')Q_\Omega(s',\omega')\\ &=\sum_{\omega'}\pi_\Omega(\omega'|s')\sum_a\pi_{\omega',\theta}(a|s')\left(r(s',a)+\sum_{s''}\gamma P(s''|s',a)U(\omega',s'')\right) \end{aligned} \]

\[\frac{\partial Q_\Omega(s',\omega)}{\partial\vartheta}=\sum_a\pi_{\omega,\theta}(a|s')\sum_{s''}\gamma P(s''|s',a)\frac{\partial U(\omega,s'')}{\partial\vartheta}\\ \frac{\partial V_\Omega(s')}{\partial\vartheta}=\sum_{\omega'}\pi_\Omega(\omega'|s')\sum_a\pi_{\omega',\theta}(a|s')\sum_{s''}\gamma P(s''|s',a)\frac{\partial U(\omega',s'')}{\partial\vartheta} \]

\[\begin{aligned} \frac{\partial U(\omega,s')}{\partial\vartheta} &=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}(Q_\Omega(s',\omega)-V_\Omega(s'))+(1-\beta_{\omega,\vartheta}(s'))\frac{\partial Q_\Omega(s',\omega)}{\partial\vartheta}+\beta_{\omega,\vartheta}(s')\frac{\partial V_\Omega(s')}{\partial\vartheta}\\ &=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}(Q_\Omega(s',\omega)-V_\Omega(s')))+(1-\beta_{\omega,\vartheta}(s'))\sum_a\pi_{\omega,\theta}(a|s')\sum_{s''}\gamma P(s''|s',a)\frac{\partial U(\omega,s'')}{\partial\vartheta}\\ &\quad+\beta_{\omega,\vartheta}(s')\sum_{\omega'}\pi_\Omega(\omega'|s')\sum_a\pi_{\omega',\theta}(a|s')\sum_{s''}\gamma P(s''|s',a)\frac{\partial U(\omega',s'')}{\partial\vartheta}\\ &=-\frac{\partial\beta_{\omega,\vartheta}(s')}{\partial\vartheta}A_\Omega(s',\omega)+\sum_{\omega'}\sum_{s''}P_\gamma^{(1)}(s'',\omega'|s',\omega)\frac{\partial U(\omega',s'')}{\partial\vartheta}\\ &=-\sum_{\omega',s''}\sum_{k=0}^\infty P_\gamma^{(k)}(s'',\omega'|s',\omega)\frac{\partial \beta_{\omega',\vartheta}(s'')}{\partial\vartheta}A_\Omega(s'',\omega') \end{aligned} \]

遞歸地展開 \(\frac{\partial U(\omega',s'')}{\partial\vartheta}\) 得到了與定理(1)相似的形式,但其中狀態-選項對的權重現在是根據移動一個時間步的馬爾可夫鏈:\(\mu_\Omega(s_{t+1},\omega_t|s_t,\omega_{t+1})\)(詳見附錄)。

Theorem 2 (Termination Gradient Theorem).

給出一組隨機終止函數在其參數ϑ上可微的Markov期權,期望折現收益目標相對於ϑ和初始條件(s1,ω0)的梯度為:

\[-\sum_{s',\omega}\mu_\Omega(s',\omega|s_1,\omega_0)\frac{\partial \beta_{\omega,\vartheta}(s')}{\partial\vartheta}A_\Omega(s',\omega) \]

其中\(\mu_\omega(s',\omega|s_1,\omega_0)\) (s1,ω0)中狀態選項對的貼現權重:

\[\mu_\Omega(s,\omega|s_1,\omega_0)=\sum_{t=0}^\infty\gamma^tP(s_{t+1}=s,\omega+t=\omega|s_1,\omega_0) \]

優勢函數經常出現在政策梯度方法中(Sutton等人。2000年)在形成基線以減少梯度估計的方差時。它在這種情況下的出現主要與算法設計有關。有趣的是,在我們的例子中,它是推導的直接結果,並且給了定理一個直觀的解釋:當期權選擇相對於所有期權的期望值是次優時,優勢函數是負的,它推動梯度修正上升,這增加了終止的幾率。終止后,代理有機會使用πΩ選擇更好的選項。類似的想法也構成了期權的中斷執行模型(Sutton,Precup,and Singh 1999),在該模型中,只要QΩ(s?,ω)對於電流選項ω小於VΩ(s?)。(Mann、Mankowitz和Mannor 2014)最近在數值迭代設置下,通過打斷Bellman算子的鏡頭研究了中斷選項。終止梯度定理可以解釋為提供了一個基於梯度的中斷Bellman算子。

Algorithms and Architecture

基於定理1和定理2,我們現在可以設計一個學習option的隨機梯度下降算法利用雙時間尺度框架(Konda和Tsitsiklis 2000),我們建議在快速的時間尺度上學習value,同時以較慢的速度更新內部期權策略和終止函數。

two-timescale framework:

我們將產生的系統稱為一個 \(option\text{-}critic\ architecture\) ,參考actor-critic架構(Sutton 1984)。option內策略、終止函數和option上的策略屬於系統的actor部分,而critic則由 \(Q_U\)\(A_\Omega\) 組成。option-critic體系結構沒有規定如何獲得 \(\pi_\Omega\) ,因為現有的各種方法都可以應用:在SMDP級別使用策略梯度方法,在option模型上使用規划器,或者使用時間差分更新。如果 \(\pi_\Omega\) 是option上的貪婪策略,則由(2)得到相應的一步策略更新目標 \(g_t^{(1)}\)

\[g_t^{(1)}=r_{t+1}+\gamma\left( (1-\beta_{\omega_t,\vartheta}(s_{t+1}))\sum_a\pi_{\omega_t,\theta}(a|s_{t+1})Q_U(s_{t+1},\omega_t,a)\\ +\beta_{\omega_t,\vartheta}(s_{t+1})\mathop{\max}_\omega\sum_a\pi_{\omega_t,\theta}(a|s_{t+1})Q_U(s_{t+1},\omega,a)\right) \]

這也是Sutton,Precup和Singh 1999的intra-option Q-learning算法的更新目標。算法1給出了一個使用option內Q學習的option critic的原型實現。假設的表格設置只是為了表達的清晰。我們分別給出了critic、intra-option策略和終止函數的學習率的 \(\alpha,\alpha_\theta,\alpha_\vartheta\)

\(Q_U:(2)\)

\(Q_\Omega\) 學習 \(Q_U\) 在計算上浪費了大量的參數和樣本。一個實際的解決方案是只學習 \(Q_\Omega\) 並從中得到 \(Q_U\) 的估計值。因為 \(Q_U\) 是對下一個state的期望, \(Q_U(s,\omega,a)=\mathbb{E}_{s'\sim P}[r(s,a)+\gamma U(\omega,s')|s,\omega,a]\) ,結果表明 \(g_t^{(1)}\) 是一個合適的估計量。我們選擇這種方法作為我們在Arcade Learning Environment中使用深度神經網絡的實驗。

后續

由於篇幅太長網站渲染卡頓,影響瀏覽體驗,因此根據理論與實驗分為上下兩篇

[The option-critic architecture(下)](https://www.cnblogs.com/codonU/p/13390472.html)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM