此爲《強化學習》第三章 Finite Markov Decision Processes。
用戶-環境接口
馬爾科夫決策過程 (Markov Decision Process, MDP) 是建模在交互中學習的一種直觀框架。學習者和決策者被稱爲用戶 (Agent) ,其他和用戶無關的但能和用戶進行交互的部分被稱爲環境 (Environment) 。第t 時刻,用戶處於狀態St ,得到獎勵Rt ,在某個策略下選擇了行爲At ,從而進入下一個狀態St+1 ,得到下一個狀態的獎勵Rt+1 ,如下圖所示。
注意,有的時候環境並不會根據(St,At) 提供一組固定的(St+1,Rt+1) ,而是按概率分佈隨機選擇一個,因此有
p(s′,r|s,a)≐Pr{St+1=s′,Rt+1=r|St=s,At=a}
概率顯然滿足
∑s′∈S∑r∈Rp(s′,r|s,a)=1,(∀s∈S,a∈A)
目標和獎勵
在學習決策過程中,目標 (Goal) 是最大化累計獎勵的期望值。
離散時刻下的回報
離散時刻 (Episodic) 下,我們可以把整個過程分解爲一個個時刻。在t 時刻,我們定義期望回報 (Expected Return) Gt 爲未來各個時刻(直到最終時刻T )得到的獎勵,即
Gt≐Rt+1+Rt+2+...+RT
通常,我們認爲較近時刻得到的獎勵應賦予更大的權重,因此我們給每個時刻的獎勵加上一個衰減比例 (Discount Rate) γ∈[0,1] ,即
Gt≐Rt+1+γRt+2+γ2Rt+3+...=∑k=0∞γkRt+1+k
顯然有
Gt=Rt+1+γGt+1
離散和連續任務下的統一記號語言
略。
策略與值函數
類似上一篇中的定義,策略 (Policy) π(a|s) 定義爲狀態s 下選擇行爲a 的概率,即
π(a|s)≐Pr{At=a|St=s}
在策略π 下狀態s 的值函數 (Value Function) 定義爲以狀態s 爲起點,然後遵循策略pi ,得到的期望回報(由於策略和環境都可能是概率分佈,因此爲回報也是一個概率分佈),即
vπ(s)≐Eπ[Gt|St=s]=Eπ[∑k=0∞γkRt+1+k|St=s]
類似的,我們也可以定義在策略π 下狀態s 採取行爲a 的值函數 (Action-Value Function) ,即
qπ(s,a)≐Eπ[Gt|St=s,At=a]=Eπ[∑k=0∞γkRt+1+k|St=s,At=a]
將值函數的期望展開,得到
vπ(s)=Eπ[Rt+1+γGt+1|St=s]=∑aπ(a|s)∑s′∑rp(s′,r|s,a)[r+γE[Gt+1|St+1=s′]]=∑aπ(a|s)∑s′∑rp(s′,r|s,a)[r+γvπ(s′)]
此爲值函數的貝爾曼等式 (Bellman Equation) 。類似的,對於行爲值函數,有
qπ(s,a)=∑s′∑rp(s′,r|s,a)[r+γ∑a′π(a′|s′)qπ(s′,a′)]
顯然,狀態值函數vπ(s) 和行爲值函數qπ(s,a) 之間是緊密相聯繫的。對於狀態值函數,有
vπ(s)=Eπ[Gt|St=s]=∑aπ(a|s)Eπ[Gt|St=s,At=a]=∑aπ(a|s)qπ(s,a)
對於行爲值函數,有
qπ(s,a)=Eπ[Gt|St=s,At=a]=∑s′∑rp(s′,r|s,a)[r+γEπ[Gt+1|St+1=s′]]=∑s′∑rp(s′,r|s,a)[r+γvπ(s′)]=Eπ[Rt+1+γvπ(St+1)|St=s,At=a]
這一節中還提到了回溯圖 (Backup Diagram) 的表示方法,它用空心圓表示狀態和值函數,用實心圓表示行爲和行爲值函數,空心到實心的連線表示策略下選擇各個行爲的概率,實心到空心的連線表示環境中由上一狀態和上一行爲選擇下一狀態和獎勵的概率。如下圖所示。
可以用回溯圖法表示出值函數和行爲值函數的貝爾曼等式,如下圖所示。
下一節中可以看到,在策略選擇行爲時,可以在空心到實心的張角中加一弧線,表示選擇最大的期望回報作爲下一步的行爲。
最優策略與最優值函數
我們定義最優狀態值函數 (Optimal State-Value Function) v∗(s) 爲最優策略π∗ 下的狀態值函數,最優策略即能使值函數取到最大值的策略,即
v∗(s)≐vπ∗(s)≐maxπvπ(s)
類似地,我們定義最優行爲值函數 (Optimal Action-Value Function) q∗(s,a) 爲最優策略下的行爲值函數,即
q∗(s,a)≐qπ∗(s,a)≐maxπqπ(s,a)
這裏需要注意最佳策略π∗ 和普通的策略π 之間的區別。普通的策略π 可以是一個概率分佈,而最優策略則用了貪心算法,因此它的形式更加接近於π∗(s)=abest 。
最優狀態值函數和最優行爲值函數也滿足貝爾曼等式。推導如下(參考上一節中兩種值函數的互推):
v∗(s)q∗(s,a)=maxπvπ(s)=maxπ∑aπ(a|s)qπ(s,a)=maxaq∗(s,a)=maxa∑s′∑rp(s′,r|s,a)[r+γv∗(s′)]=maxπqπ(s,a)=∑s′∑rp(s′,r|s,a)[r+γv∗(s′)]=∑s′∑rp(s′,r|s,a)[r+γmaxa′q∗(s′,a′)]
最優狀態值函數和最優行爲值函數也可以用回溯圖表示,如下圖。
最優化與近似
略。
參考文獻
《Reinforcement Learning: An Introduction (second edition)》Richard S. Sutton and Andrew G. Barto
上一篇:《強化學習Sutton》讀書筆記(一)——多臂賭博機(Multi-armed Bandits)
下一篇:《強化學習Sutton》讀書筆記(三)——動態規劃(Dynamic Programming)