強化學習入門知識與經典專案分析1 2

2022-09-24 04:57:08 字數 2951 閱讀 1879

書籍《強化學習入門:從原理到實踐》(葉強等著,機械工業出版社)

github中的配套資源

書籍《強化學習精要:核心演算法與tensorflow實現》(馮超著,中國工信出版集團)

在說到這個部分的時候,我覺得我們腦海中應該始終浮現著乙個狀態-行為鏈

\[\,a_,s_t\}

\]這個鏈條包含了兩種狀態轉換:一種是從狀態到行為的轉換,是由智慧型體agent的策略決定的;另一種是從行為到狀態的轉換,是由環境決定的。這裡的策略通常用字母π表示,是某一狀態下基於行為集合的乙個概率分布,公式定義如下:

\[π(a|s)=p[a_t=a|s_t=s]

\]馬爾可夫決策過程(mdp)可以用五元組描述,其中:

\[v(s)=r_s+γ\sum_p_v(s')

\]在上式的基礎上,考慮行為,就可以拓展出馬爾可夫決策過程的貝爾曼方程:

\[v_π(s) = \sum_aπ(a|s)[r_^a + γ\sum_v_π(s')p_^a]

\]如果\(π(a|s)\)=1,也就是說只有一種行為,\(a=\\),那麼這時候的馬爾可夫決策過程獎勵實際上就和馬爾可夫獎勵過程一樣了,二者的貝爾曼方程也一致了。換句話說,馬爾可夫獎勵過程就是馬爾可夫決策過程的乙個特例。從這個角度考慮,我覺得就很容易理解這個的拓展過程。

價值與貝爾曼方程

價值函式\(v_π(s)\)

\(v_π(s)\)是在馬爾科夫決策過程下基於策略 π 的狀態價值函式,表示從狀態 s開始,遵循當前策略 π 時所獲得的收穫的期望,也稱長期回報,其公式定義為:

\[v_π(s)=e[\sum_γ^kr_|s_t=s]

\]貝爾曼方程的證明方法一

如果覺得上文公式拓展的過於突兀,可以看下面這部分貝爾曼方程的具體推導

如果從狀態-行為鏈的角度考慮,也可以定義為:

\[\begin

v_π(s)&=e_[\sum_γ^kr_]\\

&=\sum_τp(τ)\sum_^\inftyγ^kr_

\end

\]其中τ是一條\(\\}\)的序列,一般是已知s和a取樣得到的(s對應著t時刻)。\(\sum_^\inftyγ^kr_\)表示一條τ序列的收穫,\(p(τ)\)表示該條τ序列的概率。

將\(p(τ)\)展開代入可得到:

\[v_π(s)=\sum_π(a|s)·p_^a·π(a'|s')...·\sum_^\inftyγ^kr_

\]進一步填充省略號中的內容,採用代換消元的手法進行變換:

\[\begin

v_π(s)&=\sum_π(a|s)·p_^a·π(a'|s')...·\sum_^\inftyγ^kr_\\

&=\sum_π(a|s)·\sum_p_^a·\sum_π(a'|s')·p_^...·\sum_^\inftyγ^kr_\\

&=\sum_π(a|s)·\sum_p_^a·\sum_π(a'|s')·p_^...·[r_+\sum_^\inftyγ^kr_]\\

&=\sum_π(a|s)·\sum_p_^a·[r_+\sum_π(a'|s')·p_^...·γ\sum_^\inftyγ^kr_]\\

&=\sum_π(a|s)·\sum_p_^a·[r_+γv_π(s')]

\end

\]我們又可以得到關係式 \(r_s^a=\sum_p_^a ·r_\),因為每次離開同乙個狀態執行同乙個動作得到的獎勵都是同乙個固定的值,這點和之前馬爾可夫獎勵過程很相似。把代入該等式就可以得到貝爾曼方程:

\[v_π(s) = \sum_aπ(a|s)[r_^a + γ\sum_v_π(s')p_^a]

\]狀態-行為價值函式

由於引入了行為,為了描述同一狀態下採取不同行為的價值,定義乙個基於行為價值函式\(q_π(s,a)\),表示在遵循策略π時,對當前狀態s執行某一具體行為a所能的到的收穫的期望:

\[q_π(s, a) = e [g_t|s_t = s, a_t = a]

\]貝爾曼方程的證明方法二

根據定義,我們可以得到價值函式、策略、行為價值函式的關係:

根據定義,我們也可以得到價值函式、狀態轉移概率、行為價值函式和獎勵函式的關係:

將上面兩式組合就能得到:

或者\[q_π(s,a)=r_s^a+γ\sum_p_^a\sum_π(a'|s')q_π(s',a')

馬爾可夫決策過程例項

上圖給出了乙個給定策略下學生馬爾科夫決策過程的價值函式。每乙個狀態下都有且僅有2 個實質可發生的行為,我們的策略是兩種行為以均等 (各 0.5) 的概率被選擇執行,同時衰減因子γ=1。圖中狀態「第三節課」在該策略下的價值為7.4,就是貝爾曼方程的運用,可以列如下方程求解:

\[x = 0.5(1+0.2*1.3+0.4*2.7+0.4*x)+0.5*(10+0)

\]

強化學習入門知識與經典專案分析1 4

主要的學習資源是四個 書籍 強化學習入門 從原理到實踐 葉強等著,機械工業出版社 github中的配套資源 書籍 強化學習精要 核心演算法與tensorflow實現 馮超著,中國工信出版集團 在開始介紹策略迭代之前,我們再回顧一下我們策略評估所完成的事情 我們在已知乙個馬爾科夫決策過程 s,a,p,...

強化學習入門 的入門

強化學習是機器學習裡面非常重要的乙個派別。智慧型體 agent 會不斷執行一些操作,通過結果來學習,在不同的環境中分別應該採取怎樣的行動。以上幾點,在進入強化學習的複雜世界之前,可能還是有必要了解一下。這是個友好的引子 強化學習的中心思想,就是讓智慧型體在環境裡學習。每個行動會對應各自的獎勵,智慧型...

強化學習入門(一)

在強化學習中,環境狀態的轉移和環境反饋給agent的獎賞是不受agent個體控制的,agent只能通過選擇要執行的動作來影響環境,並通過觀察轉移後的狀態和環境反饋的獎賞值來感知環境,agent的強化學習過程即是通過不斷嘗試各種動作 狀態策略,並通過環境反饋的獎賞不斷調整策略,從而達到在某一環境狀態中...