《強化學習》第二版 閱讀隨筆3

第三章 有限馬爾可夫決策過程(finite Markov decision processes)

MDPs involve delayed reward and the need to tradeoff immediate and delayed reward. 馬爾可夫決策與多臂老虎機問題相比,兩者都需要在不同情況下選擇不同的行爲模式(action),但馬爾可夫決策過程需要在既得利益和長遠利益之間進行權衡。也就是決策之間不再是狀態獨立的,而是相互關聯的(state-dependent)。

3.1 強化學習模型(agent)與環境之間的接口

在這裏插入圖片描述強化學習模型(agent)進行決策,以行爲(action)作用於環境(environment),環境做出反饋,以獎勵(reward)的形式反作用於模型。於此同時在客觀上,模型所面臨的環境已經被自己所改變,來到了一個新的狀態(state)。模型始終以最大化價值(value)爲目標,而價值就是獎勵值的期望。
強化學習過程可以用以下序列來描述
在這裏插入圖片描述

  1. 在有限馬爾可夫決策過程中,模型的行爲模式(action),環境所做出的反饋(reward)以及整個系統所處的狀態(state)都是有限的。模型所處的狀態StS_t以及獲得的獎勵值RtR_t都可以用離散的概率值來表示。
  2. 如下條件概率可以用來表示單步的狀態更新和獎勵反饋情況。
    p(s,rs,a)=Pr(St=s,Rt=rSt1=s,At1=a)p(s',r|s,a)=Pr(S_t=s',R_t=r|S_{t-1}=s,A_{t-1}=a)
    即,下一狀態ss'和agent取得的獎勵rr,取決於當前狀態ss和agent採取的行動aa。進一步來說當前St,RtS_t,R_t僅取決於上一步St1,At1S_{t-1},A_{t-1},而不直接取決於之前經歷的所有強化學習模型(agent)與環境的交互情況。這就是俗話說“好了傷疤忘了疼”?但其實並不是這樣,狀態(state)本身必須要包含之前模型與環境交互的所有信息,這樣的狀態(state)我們稱之爲具有馬爾可夫性質(Markov property)。
  3. 正如上文所述,s,sS,rR,aA(s)s',s\in{S},r\in{R,a\in{A(s)}}
  4. 根據對上文的理解,我們也可以得到如下結論:

在這裏插入圖片描述

  1. p(s,rs,a)=Pr(St=s,Rt=rSt1=s,At1=a)p(s',r|s,a)=Pr(S_t=s',R_t=r|S_{t-1}=s,A_{t-1}=a),使用這個4變量的動態方程(dynamics function),我們可以得到環境中其他有用的信息:在這裏插入圖片描述
    對下一狀態的預測
    在這裏插入圖片描述當前狀態獲得獎勵(reward)的期望
    在這裏插入圖片描述

  2. The general rule we follow is that anything that cannot be changed arbitrarily by the agent is considered to be outside of it and thus part of its environment.The agent–environment boundary represents the limit of the agent’s absolute control, not of its knowledge. 學習主體(agent)與環境(environment)之間的關係並不是簡單的物理界限,環境對於學習主體來說往往是難於改變的,並且不是絕對受控的。以人來做比,agent類似於人的靈魂和思維,而環境則是人的肢體,周圍真實存在的物體以及種種其他外界因素。

3.2 目標和獎勵

上文中,我們提到,強化學習是目標導向的,這個目標就是最大化獎勵(reward)期望,使強化學習模型能獲得最大的累積獎勵,而不是簡單的貪心思想,這在前面已經反覆提及。獎勵信號是環境給模型的反饋,是設計模型所要達到現實目的抽象,而將現實問題用獎勵函數進行規範化是強化學習的一大特點。
獎勵(reward)的設計需要於現實目的保持一致,最大化獎勵期望的過程就是模型學習如何更好地完成既定現實任務的過程。
獎勵函數對於模型而言是一個“只看重結果,不關心過程”的評判,獎勵函數的設計不應該試圖加入有助於完成任務的先驗知識。以下棋爲例,不應爲“喫子”或“佔據主動優勢”而給予模型獎勵(儘管先驗知識告訴我們這些都是有助於最終獲勝的中間過程)。因爲這樣的獎勵函數可能會誤導模型本末倒置,“想盡辦法”去“喫子”而不以最終的獲勝爲目標,因爲這時候模型認爲“喫子”比遙遙無期的所謂獲勝更“划算”。這些先驗知識應該由模型自己去摸索,你需要做的就是通過獎勵函數告訴模型你想要讓它做什麼。

3.3 問題本身的週期性(Returns and Episodes)

上文我們反覆提到,強化學習的最終目的是最大化獎勵(reward)的累加值,也就是我們下文所提到的期望回報(expected return),用符號GtG_t表示。

  1. 週期性任務(episodic task,或者叫章節性任務),是指能夠在有限的步驟內自行終止的任務,例如迷宮、下棋等。這些任務每一輪的結果都是相互獨立的,任務結束後可以回到原點重新開始。那麼這種任務中強化學習模型所獲取的獎勵爲:在這裏插入圖片描述其中TT是指有限的步數,TT的大小可以是不確定的變量;RTR_T則被稱爲終止狀態(terminal state)。
  2. 連續性任務(continuing task),是指那些正常情況不會自動終止的任務,例如長生命週期的機器人。此時如果再按照之前的思路對獎勵值進行累加,那麼期望回報GtG_t最終都會變爲無窮大而無法處理,換句話說,我們無法處理無限的數據。我們只能摒棄之前"先知"式的假設,去預判有限的未來,引入折扣係數(discount rate)γ\gamma,獎勵的期望可以表示爲:在這裏插入圖片描述式中γ[0,1]\gamma\in[0,1],距離當前狀態StS_t越遠的未來,強化學習模型所預判的獎勵RR在期望回報GG中的比重會成指數衰減。這樣的計算方式符合我們的生活經驗同時也可以保證在γ<1\gamma<1時,權重總會衰減到0,從而獲得有限的期望回報。當γ=0\gamma=0時,模型將表現爲貪心思想,僅考慮最大化下一步的獎勵值,隨着γ\gamma趨近於1,模型的眼光也會逐漸放長遠。
  3. 問題的週期性(episodic)和連續性(continuing)需要具體問題具體分析。如果假定一款遊戲判定玩家操作失誤後重新開始,通常來說,這是一個週期性問題,對於一般玩家而言,失誤是難以避免的。但是如果讓機器人去玩同一款遊戲,可能永遠都不會失誤,這樣就就變成了連續性問題。

3.4 章節性任務與連續性任務的統一表示方式(Unified Notation for Episodic and Continuing Tasks)

我們希望能夠統一章節性任務(episodic task)與連續性任務(continuing task)的數學表示方式。
在這裏插入圖片描述對於章節性任務而言,任務總會在有限的步驟內結束,任務結束後,獎勵信號(reward)自然也會歸0,不會對回報(return)的累加值構成任何影響。所以我們可以統一用上面的公式表示兩種類型的任務。其中折扣係數(discount rate)γ\gamma在表示章節任務時可以爲1,具體原因在之前已經提及。
上面這個式子我們可以用遞歸的思路來描述:
在這裏插入圖片描述下面再仔細體會這樣一個遞歸表示形式,首先GtG_t表示的是對未來回報值的期望值,我們(或者說強化學習模型)總希望能在未來獲得高收益,當γ=0\gamma=0,模型將遵從貪心算法的思想,變得十分短視,反之,模型會將會把下一步st+1s_{t+1}的收益期望Gt+1G_{t+1}也考慮在內。

3.5 策略和價值函數(Policies and Value Functions)

  1. 價值函數(value functions)用於模型對特定狀態(state)下行爲模式(action)的評估。價值函數是模型未來獲取獎勵(reward)的期望值。
  2. 策略(policy)是指強化學習模型對某種行爲(action)的偏好,是從狀態(state)到具體行動(action)的映射,數學表示爲:π(as)\pi(a|s)

價值函數使用符號vπ(s)v_{\pi}(s)與當前狀態ss(state)有關,與模型的行爲策略π\pi(policy)有關。價值函數的值是模型未來回報(獎勵的累加)的期望,數學語言表達如下:
在這裏插入圖片描述
上式被稱爲狀態-價值函數(state-value function),即代表從狀態ss到價值期望的映射關係。式中tt是學習經歷的步數,vπv_{\pi}是策略π\pi的價值函數。
進一步,如果我們採取行動aa,那麼行動-價值函數(action-value function)可以表示成:
在這裏插入圖片描述
行動-價值函數在狀態-價值函數的基礎上增加了行爲方式(action)At=aA_t=a的前提條件。

蒙特卡羅方法

試想,無論是vπ(s)v_\pi(s)還是qπ(s,a)q_\pi(s,a),只要模型試錯的次數足夠多,我們爲任意狀態(state)或行爲(action)的回報值(reward)做平均,最後一定會收斂到其真實值,這個過程類似於人類“實踐經驗”積累的過程。
當然,對於一些應用場景中我們無法窮舉所有的狀態(例如圍棋),但是我們可以使用參數方程(parameterized function)來對qπ(s,a)q_\pi(s,a)vπ(s)v_\pi(s)進行估計,根據模型獲得的”經驗“(歷史樣本)調整參數方程中的參數(參數的數量小於實際狀態數)來擬合回報值。

遞歸

在3.4節中曾經提到,無論是章節性任務還是連續性任務,其回報值的期望都可以被公式統一表達,並且還有一個遞歸形式的表示:Gt=Rt+1+γGt+1G_t=R_{t+1}+{\gamma}G_{t+1}
那麼對於狀態-價值函數(state-value function)也可以找到遞歸的表示。我們首先要明確,狀態-價值函數是回報GtG_t在該狀態(s)下采取所有可能行爲模式(a)所獲取回報的期望值,即vπ(s)=Eπ(GtSt=s)v_\pi(s)=E_\pi(G_t|S_t=s)
在這裏插入圖片描述
式中aπ(as)\sum_{a}\pi(a|s)表達的就是對狀態ss下所有可能行爲模式aa的遍歷。srp(s,rs,a)\sum_{s'}\sum_{r}p(s', r| s, a)顯然遍歷了在當前狀態ss下采取行爲aa將可能來到的下一狀態ss'和對應的回報rr。綜上,我們不難發現,狀態-價值函數中三個重要的自變量a,s,ra,s',r,我們遍歷了這三個變量的所有取值。三個變量取值產生的組合,每種可能的概率可以表示爲π(as)p(s,rs,a)\pi(a|s)p(s', r|s, a),所以任意狀態下的狀態-價值函數可以理解爲中括號中內容[r+γvπ(s)][r+\gamma{v_\pi(s')}]的加權和。

貝爾曼方程

上面推導的關於狀態價值函數vπv_\pi遞歸表達式就是vπv_\pi的貝爾曼恆等式(Bellman equation)vπ(s)=aπ(as)s,rp(s,rs,a)[r+γvπ(s)]v_\pi(s)=\sum_a\pi(a|s)\sum_{s', r}p(s',r|s,a)[r+\gamma{v_\pi(s')}]
貝爾曼恆等式表達了當前狀態(state)的價值(value,即獎勵值的期望)與下一狀態價值之間的關係

備份圖

在這裏插入圖片描述
圖中空心圓環表示狀態,實心圓點表示一對狀態和行爲(state-action pair)。與卷積神經網絡反向傳播相類似,強化學習中也需要將價值(value)信息從下一狀態ss'反向更新到前一狀態ss對應的狀態-行爲節點(state-action pair)上。值得注意的是,與轉換圖(transition graphs)不同的是,備份圖中的節點可以表示相同的狀態(有環?)。

最優策略和最優價值函數(Optimal Policies and Optimal Value Functions)

所謂最優策略就是能讓模型獲取最大的收益,當策略π\pi的回報期望在所有狀態(state)下都等於或優於π\pi'我們認爲π\pi更優。從狀態-價值函數的角度來說有:vπ(s)vπ(s);sSv_\pi(s)\geq{v_{\pi'}(s)};s\in{S}進一步,最優的策略π\pi總能使狀態價值函數的值最大化:v(s)=maxπvπ(s)v_{*}(s)=\max_{\pi}v_\pi(s)
對於行動價值函數q(a,s)q(a, s),上文提到,行動-價值函數基於狀態-價值函數
在這裏插入圖片描述
上式可以進一步化成如下形式:
在這裏插入圖片描述可見,如果狀態-價值函數通過策略π\pi取最優,那麼對應的行爲-價值函數同樣是最優的。

貝爾曼優化方程

最優化狀態-價值函數

在這裏插入圖片描述最優化狀態-價值函數就是要選取令當前狀態的行爲-價值函數最大化的行爲aa

最優化行爲-價值函數

在這裏插入圖片描述原式:

在這裏插入圖片描述
與原式做對比可以發現,這裏用最大化的下一狀態ss'的行爲-價值函數替代了原有的回報值RtR_t的衰減累加,最優化行爲-價值函數就是要找到使下一狀態ss'最大化q(s,a)q_*(s',a')aa'
在這裏插入圖片描述通過觀察最優化方程的備份圖可以看出,對於狀態-價值函數,優化方向爲最大化q(s,a)q(s,a);對於行爲-價值函數,優化方向爲最大化q(s,a)q(s',a')
貝爾曼優化方程都聚焦於尋找在下一階段最大化回報的行爲aaa或a',這是一種貪心的思想,但優化方程的美妙之處在於在最優化下一狀態的同時兼顧了未來總體回報的最大化。再次回顧行爲價值-函數q(a,s)q(a,s)和狀態-價值函數v(s)v(s)可以發現,兩者本身都兼顧了未來總體收益(reward)的最大化,而貝爾曼優化方程所表達的是兩個價值方程在狀態之間的遞歸關係。

3.7 最優和近似(Optimality and Approximation)

通過上面的最優化方程來選取各個狀態下的行爲模式aa需要對所有情況進行窮舉,從而選出其中的最大值。對於一些稍微複雜的問題,每一次狀態(state)變化所產生的計算量都是不可接受的。窮舉所有可能的情況也將需要巨大的內存空間。我們所使用的強化學習方法迫使我們不得不近似,去忽略出現概率低的情況。因爲強化學習是一個實時的過程,我們可以讓模型投入更多的經歷在出現概率高的情況。這是強化學習與其他馬爾可夫決策過程的解決方案有所不同的地方。

3.8 總結

  1. Reinforcement learning is about learning from interaction how to behave in order to achieve a goal.

  2. Everything inside the agent is completely known and controllable by the agent; everything outside is incompletely controllable but may or may not be completely known(環境).

  3. A policy is a stochastic rule by which the agent selects actions as a function of states. The agent’s objective is to maximize the amount of reward it receives over time.

  4. The return is the function of future rewards that the agent seeks to maximize (in expected value).

  5. A policy’s value functions assign to each state(狀態-價值函數), or state–action pair(行爲-價值函數), the expected return from that state, or state–action pair, given that the agent uses the policy.

  6. A policy’s value functions assign to each state, or state–action pair, the expected return from that state, or state–action pair, given that the agent uses the policy. The optimal value functions assign to each state, or state–action pair, the largest expected return achievable by any policy. A policy whose value functions are optimal is an optimal policy. Whereas the optimal value functions for states and state–action pairs are unique for a given MDP, there can be many optimal policies. Any policy that is greedy with respect to the optimal value functions must be an optimal policy. The Bellman optimality equations are special consistency conditions that the optimal value functions must satisfy and that can, in principle, be solved for the optimal value functions, from which an optimal policy can be determined with relative ease.
    如果agent使用策略,則策略的價值函數將從該狀態或狀態操作對(state-action pair)獲得的期望返回值分配給每個狀態或狀態操作對。 將最優值函數分配給每個狀態或狀態操作對,這是任何策略可以獲得的最大預期收益。價值函數最優的策略就是最優策略。雖然對於給定的MDP,狀態和狀態操作對的最優值函數是惟一的,但是可以有許多最優策略。 任何對最優價值函數貪婪的策略必須是最優策略。Bellman最優性方程是最優值函數必須滿足的特殊一致性條件,原則上可以求解最優值函數,從而相對容易地確定最優策略。

  7. In reinforcement learning we are very much concerned with cases in which optimal solutions cannot be found but must be approximated in some way.

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