看了David Silver深度強(qiáng)化學(xué)習(xí)課程,感覺(jué)收獲很多呀帅戒,第二講主要講的是馬爾可夫決策過(guò)程灯帮,借著寫(xiě)文檔的機(jī)會(huì),對(duì)今天所學(xué)的知識(shí)進(jìn)行一個(gè)復(fù)習(xí)總結(jié)逻住。
1钟哥、馬爾可夫過(guò)程
什么是馬爾可夫性,就是在一個(gè)狀態(tài)序列中瞎访,下一時(shí)刻的狀態(tài)僅取決于當(dāng)前時(shí)刻的狀態(tài)腻贰,其他所有的歷史信息都可以被丟棄。
根據(jù)馬爾可夫性扒秸,我們可以定義一個(gè)狀態(tài)轉(zhuǎn)移概率和狀態(tài)轉(zhuǎn)移概率矩陣:
有了狀態(tài)序列和狀態(tài)轉(zhuǎn)移概率矩陣播演,我們就可以定義一個(gè)馬爾可夫過(guò)程,它由一個(gè)有限狀態(tài)集合S和狀態(tài)轉(zhuǎn)移概率矩陣P來(lái)定義:
比如有如下的狀態(tài)集合以及狀態(tài)轉(zhuǎn)移概率鸦采,我們可以得到如下的幾個(gè)狀態(tài)序列和狀態(tài)轉(zhuǎn)移概率矩陣:
2宾巍、馬爾可夫獎(jiǎng)勵(lì)過(guò)程
在馬爾可夫過(guò)程中,我們對(duì)每一步的狀態(tài)轉(zhuǎn)移給予一定的獎(jiǎng)勵(lì)渔伯,就變成了馬爾可夫獎(jiǎng)勵(lì)過(guò)程顶霞,與馬爾可夫過(guò)程相比,這里多了兩個(gè)參數(shù)锣吼,一個(gè)是獎(jiǎng)勵(lì)方程选浑,一個(gè)是折扣因子:
還是剛才的學(xué)生上課的例子,我們將其變成一個(gè)馬爾可夫獎(jiǎng)勵(lì)過(guò)程:
接下來(lái)玄叠,我們定義Gt為從t時(shí)刻開(kāi)始到最后的一個(gè)折扣獎(jiǎng)勵(lì)和古徒,這里的G是狀態(tài)序列的一個(gè)樣本,而不是期望的意思:
比如我們拿上邊的例子读恃,算一下幾個(gè)狀態(tài)序列的Gt如下:
這里為什么有折扣因子呢隧膘,我們可以從很多方面考慮代态,簡(jiǎn)單的話(huà)大家可以考慮股票投資的情景,由于資金有時(shí)間價(jià)值疹吃,未來(lái)的錢(qián)到現(xiàn)在會(huì)有一定的折扣蹦疑,所以必須有一個(gè)折現(xiàn)率對(duì)錢(qián)進(jìn)行折現(xiàn)。
那么萨驶,所有Gt的一個(gè)期望歉摧,就得到了我們的獎(jiǎng)勵(lì)方程v(s),即在t時(shí)刻狀態(tài)s的一個(gè)期望獎(jiǎng)勵(lì)腔呜。對(duì)于不同的折扣因子叁温,v(s)的值是不同的。
貝爾曼方程
在馬爾可夫獎(jiǎng)勵(lì)過(guò)程中核畴,我們就開(kāi)始引入了最重要的一個(gè)公式膝但,即貝爾曼方程,貝爾曼方程告訴我們膛檀,獎(jiǎng)勵(lì)方程可以分解為兩個(gè)部分锰镀,即立即獲得的獎(jiǎng)勵(lì)Rt+1,和下一時(shí)刻的價(jià)值方程的折扣值,即:
由于和的期望等于期望的和咖刃,所以前面一部分,當(dāng)前時(shí)刻的獎(jiǎng)勵(lì)的期望即定義中的Rs憾筏,而由于下一時(shí)刻的狀態(tài)值不確定嚎杨,所以要涉及到狀態(tài)轉(zhuǎn)移概率矩陣,所以貝爾曼方程可進(jìn)一步分解為:
下圖給出了驗(yàn)證貝爾曼方程的一個(gè)例子:
貝爾曼方程的矩陣形式:
3氧腰、馬爾可夫決策過(guò)程
終于到了終點(diǎn)啦枫浙,在馬爾可夫獎(jiǎng)勵(lì)過(guò)程的基礎(chǔ)上,在不同的狀態(tài)下古拴,我們可以有決策過(guò)程從而采取不同的action箩帚,采取不同的action可能會(huì)有不同的狀態(tài)轉(zhuǎn)移概率矩陣:
可以看到,在馬爾可夫決策過(guò)程中黄痪,我們?cè)黾恿诵袆?dòng)集合A紧帕,我們的狀態(tài)轉(zhuǎn)移概率矩陣以及期望獎(jiǎng)勵(lì)不僅僅取決于狀態(tài)s,還取決于所采取的行動(dòng)a桅打。
在馬爾可夫決策過(guò)程中是嗜,我們可以定義策略,策略是在給定狀態(tài)下采用不同動(dòng)作的分布:
這里的策略π是一個(gè)給定的policy挺尾,對(duì)于一個(gè)給定的policy鹅搪,我們可以計(jì)算狀態(tài)轉(zhuǎn)移概率矩陣以及期望獎(jiǎng)勵(lì),即s到s‘的轉(zhuǎn)移概率為策略π下采取動(dòng)作a的可能性乘上在采取動(dòng)作a的情況下s轉(zhuǎn)移到s‘的概率的累加求和遭铺,期望獎(jiǎng)勵(lì)變?yōu)樵诓呗驭校?/p>
在馬爾可夫決策過(guò)程中丽柿,我們定義了如下兩種價(jià)值函數(shù):
根據(jù)貝爾曼方程恢准,我們可以得到:
如果我們把一個(gè)馬爾可夫決策過(guò)程拆分為如下的過(guò)程:在狀態(tài)s下,采取動(dòng)作a甫题,得到獎(jiǎng)勵(lì)r的一個(gè)過(guò)程馁筐,我們可以將上面的貝爾曼方程進(jìn)一步細(xì)分。
首先幔睬,狀態(tài)s下眯漩,采取動(dòng)作a,可將v(s)進(jìn)行如下的計(jì)算:
然后麻顶,在采取動(dòng)作a的情況下赦抖,我們會(huì)得到一個(gè)立即的獎(jiǎng)勵(lì),以及未來(lái)獎(jiǎng)勵(lì)的折扣:
如果把上面兩部分結(jié)合起來(lái)辅肾,我們可以得到如下的公式:
還是用上面的例子來(lái)驗(yàn)證一下馬爾可夫決策過(guò)程中貝爾曼方程的正確性:
有了貝爾曼方程队萤,我們的馬爾可夫決策過(guò)程的目標(biāo)是找到最優(yōu)的值函數(shù),即找到使s狀態(tài)下價(jià)值最大的決策以及在狀態(tài)s下采取行動(dòng)a最大化價(jià)值決策矫钓。
可以想到要尔,最優(yōu)的決策是一定存在的,假設(shè)有n個(gè)狀態(tài)新娜,每個(gè)狀態(tài)下采用的動(dòng)作a是有限的赵辕,我們只需要分別找到在這n個(gè)狀態(tài)下能達(dá)到最大價(jià)值的動(dòng)作a,將這些組合起來(lái)概龄,就能得到我們的最優(yōu)決策还惠。
假設(shè)最優(yōu)決策是已知的,那么在任意狀態(tài)s下所采取的行動(dòng)a也就是確定的私杜,即:
所以蚕键,我們的貝爾曼方程變?yōu)槿缦碌男问剑?/p>
最后,我們只要求解最優(yōu)條件下的貝爾曼方程衰粹,即可得到馬爾可夫決策過(guò)程的解決方案锣光,有如下的解法,在后面的課程中會(huì)接觸到: