馬爾科夫決策過(guò)程其實(shí)是強(qiáng)化學(xué)習(xí)里面的一個(gè)基本框架,它的環(huán)境是fully observation,就是全部可以觀測(cè)的。
馬爾科夫性質(zhì)(Markov Property)
The future is independent of the past given the present(未來(lái)的轉(zhuǎn)移跟過(guò)去是獨(dú)立的,它只取決于現(xiàn)在)
狀態(tài)轉(zhuǎn)移矩陣(State Transition Matrix)
每一行描述了從一個(gè)節(jié)點(diǎn)到所有其它節(jié)點(diǎn)的概率
馬爾科夫獎(jiǎng)勵(lì)過(guò)程(Markov Reward Process, MRP)
馬爾科夫鏈再加上一個(gè)獎(jiǎng)勵(lì)函數(shù),獎(jiǎng)勵(lì)函數(shù)是一個(gè)期望,就是說(shuō)當(dāng)你達(dá)到某一個(gè)狀態(tài)的時(shí)候,可以獲得多大的獎(jiǎng)勵(lì)
為什么需要discounted factor
- 第一點(diǎn)是有些馬爾可夫過(guò)程是帶環(huán)的,它并沒(méi)有終結(jié),我們想避免這個(gè)無(wú)窮的獎(jiǎng)勵(lì)。
- 另外,我們想把這個(gè)不確定性表示出來(lái),希望盡可能快地得到獎(jiǎng)勵(lì),而不是在未來(lái)某一個(gè)點(diǎn)得到獎(jiǎng)勵(lì)。
- 另外如果這個(gè)獎(jiǎng)勵(lì)是有實(shí)際價(jià)值的了,我們可能是更希望立刻就得到獎(jiǎng)勵(lì),而不是后面再得到獎(jiǎng)勵(lì)。
- 在人的行為里面來(lái)說(shuō)的話,大家也是想得到即時(shí)獎(jiǎng)勵(lì)。
- 另外,在有些時(shí)候,這個(gè)系數(shù)也可以把它設(shè)為 0。比如說(shuō),當(dāng)我們?cè)O(shè)為 0 過(guò)后,然后我們就只關(guān)注了它當(dāng)前的獎(jiǎng)勵(lì)。我們也可以把它設(shè)為 1,設(shè)為 1 的話就是對(duì)未來(lái)并沒(méi)有折扣,未來(lái)獲得的獎(jiǎng)勵(lì)跟我們當(dāng)前獲得的獎(jiǎng)勵(lì)是一樣的。這個(gè)系數(shù)其實(shí)是應(yīng)該可以作為強(qiáng)化學(xué)習(xí) agent 的一個(gè) hyper parameter 來(lái)進(jìn)行調(diào)整,然后就會(huì)得到不同行為的 agent。
Bellman Equation
就是當(dāng)前狀態(tài)與未來(lái)狀態(tài)的迭代關(guān)系,表示當(dāng)前狀態(tài)的值函數(shù)可以通過(guò)下個(gè)狀態(tài)的值函數(shù)來(lái)計(jì)算。Bellman Equation 因其提出者、動(dòng)態(tài)規(guī)劃創(chuàng)始人Richard Bellman 而得名 ,也叫作“動(dòng)態(tài)規(guī)劃方程”。
馬爾科夫決策過(guò)程Markov Decision Process(MDP)
相對(duì)于MRP, 馬爾可夫決策過(guò)程(Markov Decision Process) 多了一個(gè)decision ,其它的定義跟MRP都是類(lèi)似的。這里我們多了一個(gè)決策,多了一個(gè) action,那么這個(gè)狀態(tài)轉(zhuǎn)移也多了一個(gè) condition,就是你采取某一種行為,然后你未來(lái)的狀態(tài)會(huì)不同。它不僅是依賴(lài)于你當(dāng)前的狀態(tài),也依賴(lài)于在當(dāng)前狀態(tài)你這個(gè) agent 它采取的這個(gè)行為會(huì)決定它未來(lái)的這個(gè)狀態(tài)走向。對(duì)于這個(gè)價(jià)值函數(shù),它也是多了一個(gè)條件,多了一個(gè)你當(dāng)前的這個(gè)行為,就是說(shuō)你當(dāng)前的狀態(tài)以及你采取的行為會(huì)決定
你在當(dāng)前可能得到的獎(jiǎng)勵(lì)多少。
MDP里面的狀態(tài)轉(zhuǎn)移跟MRP以及MP的一個(gè)差異
- 馬爾可夫過(guò)程的轉(zhuǎn)移是直接就決定。比如當(dāng)前狀態(tài)是 s,那么就直接通過(guò)這個(gè)轉(zhuǎn)移概率決定了下一個(gè)狀態(tài)是什么。
- 但對(duì)于 MDP,它的中間多了一層這個(gè)行為 a ,就是說(shuō)在你當(dāng)前這個(gè)狀態(tài)的時(shí)候,首先要決定的是采取某一種行為,那么你會(huì)到了某一個(gè)黑色的節(jié)點(diǎn)。到了這個(gè)黑色的節(jié)點(diǎn),因?yàn)槟阌幸欢ǖ牟淮_定性,當(dāng)你當(dāng)前狀態(tài)決定過(guò)后以及你當(dāng)前采取的行為過(guò)后,你到未來(lái)的狀態(tài)其實(shí)也是一個(gè)概率分布。所以你采取行為后,你可能有多大的概率到達(dá)某一個(gè)未來(lái)狀態(tài),以及另外有多大概率到達(dá)另外一個(gè)狀態(tài)。所以在這個(gè)當(dāng)前狀態(tài)跟未來(lái)狀態(tài)轉(zhuǎn)移過(guò)程中這里多了一層決策性,這是MDP跟之前的馬爾可夫過(guò)程很不同的一個(gè)地方。在馬爾可夫決策過(guò)程中,行為是由 agent 決定,所以多了一個(gè) component,agent 會(huì)采取行為來(lái)決定未來(lái)的狀態(tài)轉(zhuǎn)移。
Dynamic Programming
動(dòng)態(tài)規(guī)劃是說(shuō)我們把可以把一個(gè)問(wèn)題分解成一個(gè)最佳子結(jié)構(gòu),當(dāng)我們可以把一些子結(jié)構(gòu)都可以解決的話,那么它就可以組成一個(gè)最優(yōu)的解。MDP是滿足動(dòng)態(tài)規(guī)劃的要求的,就是在 Bellman Equation 里面,我們可以把它分解成一個(gè)遞歸的一個(gè)結(jié)構(gòu)。當(dāng)我們把它分解成一個(gè)遞歸的結(jié)構(gòu)的時(shí)候,如果我們的子問(wèn)題子狀態(tài)能得到一個(gè)值,那么它的未來(lái)狀態(tài)因?yàn)楦訝顟B(tài)是直接相連的,那我們也可以繼續(xù)推算出來(lái),所以這個(gè)價(jià)值函數(shù)就可以?xún)?chǔ)存它以及重用它的最佳的解。所以動(dòng)態(tài)規(guī)劃是解MDPprediction和control一個(gè)非常有效的方式。