馬爾科夫決策過程(MDP)學習筆記

2021-09-25 17:07:30 字數 2441 閱讀 8275

1. 概述

mdp由乙個**agent和乙個環境 e ,一組可能的狀態 s ,一組可用的行動 a ,和獎勵函式 r: s×a→r 構成。

在離散時間的步驟中,**agent不斷地從與環境的互動中 學習並作出決策。在每個時間步 t ,**觀察環境的當前狀態,記作 st∈s ,並根據策略π選擇執行乙個動作 at∈a 。之後,**從環境e中收到達到當前狀態st的乙個標量獎勵 rt = r(st,at)∈r⊆r ,並根據環境的轉移概率 p (st+1 |st, at) 找到自己的下乙個狀態 st+1∈s 。

2. mdp 目標

因此,環境e的動態性由agent在當前狀態 st 下對所採取行動at的 響應的轉移概率 p(s』|s,a) 決定,agent的目標是找到最大化其所獲得的長期期望折扣報酬的最優策略,即

3. 策略

策略是乙個概率分布,體現了在當前狀態下 st 採取行動 at 的概率:

4. 值函式 v(s)

值函式 value function (或者可以稱為狀態值函式 state-value function),是根據策略π的指導,在當前狀態 st 下,之後能夠預期得到的折扣收益:

5. 行動值函式 q(s, a)

行動值函式是根據策略 π 的指導,在當前狀態 st 下,採取行動 at 後,之後能夠預期的折扣收益,即

6. v(s) 與 q(s, a)

v 函式和 q 函式都是遞迴的,可以由 bellman 方程分別表示遞迴關係,如下:

(1)由 q 表示 v

在狀態 st 下,可能採取的行動空間為 a=,採取各行動的概率由策略 π (a | s) 給出。

所以根據 v 函式的定義,在當前狀態 st 下之後能夠預期得到的收益即為,在 st 下採取所有的可能行動得到的概率加權收益和:

(2)由 v 表示 q

在狀態 st 下採取了行動 at 後,將根據環境的轉移概率 p (st+1 |st, at) ,到達下乙個狀態 st+1。

所以根據 q 函式的定義,在當前狀態 st 採取行動 at 後,預期得到的收益即為,採取 at 後可能到達的所有新狀態 st+1 的期望收益 v(st+1) 的概率加權收益和,再加上採取行動 at 的獎勵 r(s, a):

注意:r(s) 表示到達當前狀態 s 的獎勵, r(s, a)表示再狀態 s 下採取行動 a 的獎勵。

(3)將 q(s, a) 代入到 v(s)中

同理也可以得到 q函式的遞迴關係式:

7. 選擇最優解

上面的 v 函式和 q 函式都是對未來所有可能收益總和的估計,用以指導 agent 的行動方向。在實際問題中,最終只需要選擇一種行為即可。

所以,在政策 π 中的最優政策 π∗的指導下,貝爾曼最優性方程的最優值函式可表示為:

基於假設完美的mdp模型環境,像值迭代演算法的動態規劃(dp)演算法可以應用於在最優政策π∗下的任何狀態s∈s,並獲得最優值函式。即對於

選擇能使值v最大的最優行動 a,得到在進行下一次迭代時獲得的收益:(在實際中採取特點行動,也就不存在了 π(a|s) )

注:σp(s』|s, a)的值為1,所以有 σp(s』|s, a) * r(s,a) = rsa。

一旦得到最優值函式v∗(s),最優的行動值函式可以通過下式得到:

然後,最優政策 π∗ 在狀態s下貪婪地選擇最優行動,如下:

mdp框架 MDP 馬爾科夫決策過程

在自動駕駛中,路徑規劃有很多種方式,傳統演算法包括深度廣度優先搜尋,a 演算法。這些都是不錯的演算法,但是都有乙個問題,他們都是建立在控制運動的結果是確定性的假設上的。比如,汽車的速度,轉彎的角度,位置,雷達資料都是無誤差的。但是在現實世界中,是到處都充滿了誤差的。實際上,運動會引入不確定性,因為運...

馬爾科夫決策程序(MDP)

馬爾科夫決策程序 mdp 馬爾科夫決策程序主要是用來描述乙個隨機過程,將來的狀態僅與現在的狀態有關,而與過去的狀態無關,稱具有這種性質的程序為馬爾科夫程序。馬爾科夫決策程序可以用乙個四元組來表示,其中x是狀態集,a是動作集,p是狀態轉移的概率,u是狀態轉移過程中的收益。1.狀態集 狀態集滿足下一時刻...

增強學習(一) 馬爾科夫決策過程(MDP)

最近因為研究需要,要開始學習機器學習了。之前只是懂些cnn什麼的皮毛,對機器學習的整體認識都比較缺乏,後面我會從頭開始一點點打基礎,正好也用部落格把自己的學習歷程記錄一下,如果有大牛看到博文中有錯誤,歡迎指正!正好目前有個智慧型控制的小專案,我就先從增強學習開始。主要的參考文獻是吳恩達的專題 sha...