強化學習筆記 3 1 基於模型的動態規劃方法

2021-08-16 06:21:26 字數 2394 閱讀 3979

【深入淺出強化學習原理入門學習筆記】3.基於模型的動態規劃方法
首先解釋一下什麼是有模型和無模型,馬爾科夫決策過程用元組表示是(s,

a,p,

r,γ)

\big(s, a, p, r, \gamma\big)

(s,a,p

,r,γ

), s

ss為有限狀態集, a

aa為有限動作集,p

pp是狀態轉移概率(包含動作),r

rr為回報函式,γ

\gamma

γ為回報折扣因子。如果其中的p

pp,r

rr不知道的話,就是無模型了,反之為有模型。

有模型的強化學習問題可以利用動態規劃求解。動態規劃需要兩個條件,乙個是可以分解為子問題,另乙個是子問題的解可以儲存利用。馬爾科夫決策過程剛好滿足這兩個條件。

狀態值函式的貝爾曼方程為:

υ π(

s)=∑

a∈aπ

(a∣s

)(rs

a+γ∑

s′∈s

pss′

aυ(s

′)

)\upsilon_\pi(s)=\sum \limits_ \pi(a|s) (r^_+\gamma\sum \limits_\in s} p^a_}\upsilon(s^))

υπ​(s)

=a∈a

∑​π(

a∣s)

(rsa

​+γs

′∈s∑

​pss

′a​υ

(s′)

)在狀態s

ss處的值函式υπ(

s)

\upsilon_\pi(s)

υπ​(s)

,可以利用後續狀態的值函式υ(s

′)

\upsilon(s^)

υ(s′

)來表示(自舉演算法)。

在模型已知的情況下,未知數只有狀態值函式,求解的是狀態值函式,也就是說找到最優的值函式(注意這裡通過最優值函式確定最優策略,而非直接搜尋最優策略)。這個方程的求解可以通過雅各比迭代法和高斯-塞德爾迭代法求解,收斂性通過壓縮對映證明(自行看書)。

在 某個

策略下}

在某個策略下

,可以通過高斯-塞德爾迭代法得到狀態值函式,迭代公式為:

υ k+

1(s)

=∑a∈

aπ(a

∣s)(

rsa+

γ∑s′

∈sps

s′aυ

k(s′

)\upsilon_(s)=\sum \limits_ \pi(a|s) (r^_+\gamma\sum \limits_\in s} p^a_}\upsilon_k(s^)

υk+1​(

s)=a

∈a∑​

π(a∣

s)(r

sa​+

γs′∈

s∑​p

ss′a

​υk​

(s′)

計算狀態值函式的目的是利用狀態值函式找到最優策略,需要注意:狀態值函式是某個特定策略的,尋找最優策略其實是對這一特定策略的改善。也就是說策略迭代演算法(動態規劃演算法)包含策略評估(求狀態值函式)和策略改善兩個步驟。

策略迭代演算法

策略迭代演算法(**實現見基於模型的策略迭代方法程式設計實現):

(1)初始化狀態值函式和狀態對應的動作(初始化可以採用隨機策略,即隨機選擇狀態下的動作)

(2)遍歷狀態,執行狀態對應的動作,得到反饋,更新狀態值函式,直到狀態值函式收斂

(3)遍歷狀態下的動作,選出收益最大的動作,作為狀態對應的最終動作(貪心策略),更新狀態對應的動作

(4)返回(2)直到狀態對應的動作不發生變化

進行策略改善之前不一定要等到策略值函式收斂,可以在評估一次後就進行策略改善,迭代的終止條件是值函式不再發生變化(就是每個狀態下的值函式不再發生變化)。

值函式迭代演算法

(**實現見3.2 基於模型的策略迭代方法程式設計實現):

(1)初始化狀態值函式和狀態對應的動作(初始化可以採用隨機策略,即隨機選擇狀態下的動作)

(2)遍歷狀態下的動作,選出收益最大的動作,作為狀態對應的最終動作(貪心策略),更新狀態對應的動作,並根據該動作得到的反饋更新狀態值函式

(3)返回(2)直到狀態值函式收斂。

廣義策略迭代(泛化迭代)

策略迭代的核心是策略收斂,值函式的準確性次之;值函式迭代的核心是值函式收斂,迭代速度較慢,因此考慮將策略迭代和值函式迭代融合起來,先進行幾輪價值迭代,再進行策略迭代,提高迭代效率。這就是泛化迭代。

深入淺出強化學習原理入門

基於模型的強化學習

1 在model based rl裡,雖然學習mdp模型可以提高強化學習的效率,但是如果模型誤差較大可能導致學不到較好的策略,這個問題一般怎麼解決?如果模型學習的不夠精準,那就只能用很短很短的rollout來做planning。例如q planning就是1步的rollout,這樣並不能特別高的提公...

2019 5 13 基於模型的強化學習方法

注 寫作四項工作 看懂 一篇 工作二 提出難點問題,提出新概念。例 多光譜 注意力機制 工作三 修改演算法,網路結構 損失函式 步數 基於模型的的強化學習是比無模型難很多的問題。一 狀態轉移概率 1 馬氏決策過程可以利用五元組 s,a,p,r,y 來描述。根據狀態轉移概率是否已知,可以分為基於模型和...

強化學習筆記

1.q learning與sarsa區別 lambda 就是乙個衰變值,他可以讓你知道離獎勵越遠的步可能並不是讓你最快拿到獎勵的步,所以我們想象我們站在寶藏的位置,回頭看看我們走過的尋寶之路,離寶藏越近的腳印越看得清,遠處的腳印太渺小,我們都很難看清,那我們就索性記下離寶藏越近的腳印越重要,越需要被...