-
馬爾可夫決策過程
鎖定
馬爾可夫決策過程(Markov Decision Process, MDP)是序貫決策(sequential decision)的數學模型,用於在系統狀態具有馬爾可夫性質的環境中模擬智能體可實現的隨機性策略與回報
[1-2]
。MDP的得名來自於俄國數學家安德雷·馬爾可夫(Андрей Андреевич Марков),以紀念其為馬爾可夫鏈所做的研究
[3]
。
MDP基於一組交互對象,即智能體和環境進行構建,所具有的要素包括狀態、動作、策略和獎勵
[2]
[4]
。在MDP的模擬中,智能體會感知當前的系統狀態,按策略對環境實施動作,從而改變環境的狀態並得到獎勵,獎勵隨時間的積累被稱為回報
[4]
。
MDP的理論基礎是馬爾可夫鏈,因此也被視為考慮了動作的馬爾可夫模型
[2]
。在離散時間上建立的MDP被稱為“離散時間馬爾可夫決策過程(descrete-time MDP)”,反之則被稱為“連續時間馬爾可夫決策過程(continuous-time MDP)”
[1]
。此外MDP存在一些變體,包括部分可觀察馬爾可夫決策過程、約束馬爾可夫決策過程和模糊馬爾可夫決策過程。
- 中文名
- 馬爾可夫決策過程
- 外文名
- Markov Decision Processes, MDP
- 類 型
- 馬爾可夫模型,決策模型
馬爾可夫決策過程歷史
MDP的歷史可以追溯至20世紀50年代動力系統研究中的最優控制(optimal control)問題,1957年,美國學者Richard Bellman通過離散隨機最優控制模型首次提出了離散時間馬爾可夫決策過程
[6]
。1960年和1962年,美國學者Ronald A. Howard和David Blackwell提出並完善了求解MDP模型的動態規劃方法
[5]
[7]
。
進入1980s後,學界對MDP的認識逐漸由“系統優化”轉為“學習”
[1]
。1987年,美國學者Paul Werbos在研究中試圖將MDP和動態規劃與大腦的認識機制相聯繫
[8]
。1989年,英國學者Chris Watkins首次在強化學習中嘗試使用MDP建模
[9]
。Watkins (1989)在發表後得到了機器學習領域的關注,MDP也由此作為強化學習問題的常見模型而得到應用
[1]
。
馬爾可夫決策過程定義
MDP是在環境中模擬智能體的隨機性策略(policy)與回報的數學模型,且環境的狀態具有馬爾可夫性質。
交互對象與模型要素
由定義可知,MDP包含一組交互對象,即智能體和環境
[4]
:
- 智能體(agent):MDP中進行機器學習的代理,可以感知外界環境的狀態進行決策、對環境做出動作並通過環境的反饋調整決策。
- 環境(environment):MDP模型中智能體外部所有事物的集合,其狀態會受智能體動作的影響而改變,且上述改變可以完全或部分地被智能體感知。環境在每次決策後可能會反饋給智能體相應的獎勵。
名稱 | 符號 | 説明 |
---|---|---|
狀態 狀態空間 | 狀態是對環境的描述,在智能體做出動作後,狀態會發生變化,且演變具有馬爾可夫性質。MDP所有狀態的集合是狀態空間。狀態空間可以是離散或連續的。 | |
動作 動作空間 | 動作是對智能體行為的描述,是智能體決策的結果。MDP所有可能動作的集合是動作空間。動作空間可以是離散或連續的。 | |
策略 | MDP的策略是按狀態給出的,動作的條件概率分佈,在強化學習的語境下屬於隨機性策略。 | |
獎勵 | 智能體給出動作後環境對智能體的反饋。是當前時刻狀態、動作和下個時刻狀態的標量函數。 | |
回報 | 回報是獎勵隨時間步的積累,在引入軌跡的概念後,回報也是軌跡上所有獎勵的總和。 |
在表中建模要素的基礎上,MDP按如下方式進行組織:智能體對初始環境
進行感知,按策略
實施動作
,環境受動作影響進入新的狀態
,並反饋給智能體一個獎勵
。隨後智能體基於
採取新的策略,與環境持續交互。MDP中的獎勵是需要設計的,設計方式通常取決於對應的強化學習問題。
連續與離散MDP
MDP的指數集(index set)是時間步:
,並按時間步進行演化(evolution)。時間步離散的MDP被稱為離散時間馬爾科夫決策過程(descrete-time MDP),反之則被稱為連續時間馬爾科夫決策過程(continuous-time MDP),二者的關係可類比連續時間馬爾可夫鏈與離散時間馬爾可夫鏈。
圖模型
MDP可以用圖模型表示,在邏輯上類似於馬爾可夫鏈的轉移圖。MDP的圖模型包含狀態節點和動作節點,狀態到動作的邊由策略定義,動作到狀態的邊由環境動力項(參見求解部分)定義。除初始狀態外,每個狀態都返回一個獎勵
[4]
。
解釋性的例子:多臂賭博機
多臂賭博機問題(multi-armed bandit problem)的設定如下:給定K個不同的賭博機,拉動每個賭博機的拉桿,賭博機會按照一個事先設定的概率掉錢或不掉錢。每個賭博機掉錢的概率不一樣。MDP可以模擬智能體選擇賭博機的策略和回報
[1]
。在該例子中,MDP的要素有如下對應:
“環境”是K個相互獨立的賭博機;“狀態”是“掉錢”和“不掉錢”,其馬爾可夫性質在於每次使用賭博機,返回結果都與先前的使用記錄無關;“動作”是使用賭博機;“策略”是依據前一次操作的賭博機和其返回狀態,選擇下一次使用的賭博機;“獎勵”是一次使用賭博機後掉錢的金額;回報是多次使用賭博機獲得的總收益
[1]
。
馬爾可夫決策過程理論與性質
馬爾可夫決策過程轉移理論
馬爾可夫性質與轉移概率
按定義,MDP具有馬爾可夫性質,按條件概率關係可表示如下
[4]
:
即當前時刻的狀態僅與前一時刻的狀態和動作有關,與其他時刻的狀態和動作條件獨立。等式右側的條件概率被稱為MDP的狀態間的轉移概率
[4]
。馬爾可夫性質是所有馬爾可夫模型共有的性質,但相比於馬爾可夫鏈,MDP的轉移概率加入了智能體的動作,其馬爾可夫性質也與動作有關。
MDP的馬爾可夫性質是其被應用於強化學習問題的原因之一,強化學習問題在本質上要求環境的下個狀態與所有的歷史信息,包括狀態、動作和獎勵有關,但在建模時採用馬爾可夫假設可以在對問題進行簡化的同時保留主要關係,此時環境的單步動力學就可以對其未來的狀態進行預測。因此即便一些環境的狀態信號不具有馬爾可夫性,其強化學習問題也可以使用MDP建模
[1]
。
軌跡
馬爾可夫決策過程折現
MDP的時間步可以是有限或無限的。時間步有限的MDP存在一個終止狀態(terminal state),該狀態被智能體觸發後,MDP的模擬完成了一個紀元(episode)並得到回報。與之對應的,環境中沒有終止狀態的MDP可擁有無限的時間步,其回報也會趨於無窮
[1]
[2]
。
在對實際問題建模時,除非無限時間步的MDP有收斂行為,否則考慮無限遠處的回報是不適合的,也不利於MDP的求解。為此,可引入折現機制並得到折現回報(discounted return)
[1]
[2]
:
馬爾可夫決策過程值函數
參見:強化學習
狀態值函數(state value function)
動作值函數(action value function)
狀態值函數中的條件概率:
表示環境對動作的響應,該項也被稱為環境動力項(environment dynamics)。環境動力項不受智能體控制,其數學期望可以定義為動作值函數或Q函數:
,表示智能體由給定的狀態
和動作
開始,並按策略
決定後續動作所得到的回報數學期望
[1]
:
狀態值函數和動作值函數是一些MDP算法需要使用的,目標函數的變體,其實際意義是對策略的評估。例如在狀態
,若有一個新的動作
使得
,則實施新動作比當前策略
給出的動作要好,因此可通過算法增加新動作所對應的策略
的概率
[4]
。
馬爾可夫決策過程算法
參見:強化學習
馬爾可夫決策過程值函數算法
動態規劃(dynamic programming)
參見:動態規劃
作為貝爾曼最優化原理(Bellman's principle of Optimality)的推論,有限時間步的MDP至少存在一個全局最優解,且該最優解是確定的(deterministic),可使用動態規劃求得
[2]
。
[10]
使用動態規劃求解的MDP屬於“基於模型的強化學習(model-based reinforcement learning),因為要求狀態值函數和動作值函數的貝爾曼方程已知,而後者等價於MDP的環境不是”黑箱“,其環境動力項
是已知的。MDP的動態規劃分為策略迭代(policy iteration)和值迭代(value iteration)兩種,其核心思想是最優化原理:最優策略的子策略在一次迭代中也是以該狀態出發的最優策略,因此在迭代中不斷選擇該次迭代的最優子策略能夠收斂至MDP的全局最優
[2]
。
以策略迭代為例,在對MDP的建模要素初始化後,其每次迭代都使用貝爾曼方程計算狀態值函數以評估策略,並按動作值函數對狀態值函數的貝爾曼方程確定當前狀態下的最優動作和策略:
,迭代在策略的前後變化小於迭代精度時收斂
[4]
。
隨機模擬
以蒙特卡羅方法和時序差分學習(temporal-difference learning)為代表的MDP算法屬於“無模型的強化學習(model-free reinforcement learning)”,適用於MDP的環境動力項未知的情形。在MDP的轉移概率未知時,狀態值函數
無法參與優化,因此隨機模擬方法通過生成隨機數直接估計動作值函數的真實值並求解MDP。
時序差分學習可視為蒙特卡羅方法和動態規劃的結合。在使用採樣方法估計動作值函數時,時序差分學習將採樣改寫為貝爾曼方程的形式,以更高的效率更新動作值函數的取值。求解MDP可用的時序差分學習算法包括SARSA 算法(State Action RewardState Action, SARSA)和Q學習(Q-Learning)算法
[11]
,二者都利用了MDP的馬爾可夫性質,但前者的改進策略和採樣策略是同一個策略,因此被稱為“同策略(on policy)”算法,而後者採樣與改進分別使用不同策略,因此被稱為“異策略(off policy)”算法
[4]
。
馬爾可夫決策過程策略搜索算法
參見:策略搜索
策略搜索(policy search)可以在策略空間直接搜索MDP的最優策略完成求解。策略搜索算法的常見例子包括REINFORCE算法和演員-評論員算法(Actor-Critic Algorithm)。REINFORCE算法使用隨機梯度上升求解(可微分的)策略函數的參數使得目標函數最大,一些REINFORCE算法的改進版本通過引入基準線加速迭代的收斂
[4]
[12]
。演員-評論員算法是一種結合策略搜索和時序差分學習的方法。其中“演員(actor)”是指策略函數,即學習一個策略來得到儘量高的回報,“評論員(critic)”是狀態值函數,對當前策略的值函數進行估計,即評估演員的好壞。藉助於值函數,Actor-Critic 算法可以進行單步更新參數
[4]
。
馬爾可夫決策過程推廣
約束馬爾可夫決策過程
約束馬爾可夫決策過程(Constrained MDP, CMDP)是對智能體施加了額外限制的MDP,在CMDP中,智能體不僅要實施策略和獲得回報,還要確保環境狀態的一些指標不超出限制。例如在基於MDP的投資組合問題中,智能體除了最大化投資回報,也要求限制投資風險;在交通管理中,智能體除了最大化車流量,也要求限制車輛的平均延遲和特定路段的車輛通行種類
[13]
。
相比於MDP,CMDP中智能體的每個動作都對應多個(而非一個)獎勵。此外,由於約束的引入,CMDP不滿足貝爾曼最優化原理,其最優策略是對初始狀態敏感的,因此CMDP無法使用動態規劃求解。離散CMDP的常見解法是線性規劃(linear programming)
[13]
。
模糊馬爾可夫決策過程
模糊馬爾可夫決策過程(Fuzzy MDP, FMDP)是使用模糊動態規劃(fuzzy dynamic programming)求解的MDP模型,是MDP的推廣之一。FMDP的求解方法屬於值函數算法,其中策略評估部分與傳統的動態規劃方法相同,但策略改進部分使用了模糊推理(fuzzy inference),即值函數被用作模糊推理的輸入,策略的改進是模糊推理系統的輸出
[14]
。
部分可觀察馬爾可夫決策過程
主條目:部分可觀察馬爾可夫決策過程
在一些設定中,智能體無法完全觀測環境的狀態,此類MDP被稱為部分可觀察馬爾可夫決策過程(Partially Observable MDP,POMDP)。POMDP是一個馬爾可夫決策過程的泛化。POMDP與MDP的馬爾可夫性質相同,但是POMDP框架下智能體只能知道部分狀態的觀測值。比如在自動駕駛中,智能體只能感知傳感器採集的有限的環境信息。與MDP相比,POMDP包含兩個額外的模型要素:智能體的觀測概率
和觀測空間
。
馬爾可夫決策過程應用
作為強化學習的模型,MDP適用於很多與強化學習有關的實際問題,包括自動控制領域的人機交互系統、自動駕駛系統、導航系統
[1]
[4]
;運籌學領域的廣告/銷售問題、投資組合問題等
[4]
。MDP也可以作為模型構建一些具有博弈性質的強化學習系統,例如國際象棋和圍棋AI
[15]
。
- 參考資料
-
- 1. Sutton, R.S. and Barto, A.G. .Reinforcement learning: An introduction (Second edition):MIT press,2018:Chapter 1-3
- 2. Panin, A. and Shvechikov, P., Practical Reinforcement Learning .Coursera and National Research University Higher School of Economics.2017[引用日期2019-05-16]
- 3. Gagniuc, P.A..Markov Chains: From Theory to Implementation and Experimentation:John Wiley & Sons,2017
- 4. 邱錫鵬 著,神經網絡與深度學習,第十四章 深度強化學習 .Github Inc..2018[引用日期2018-11-16] .Github Inc..2019[引用日期2019-05-16]
- 5. Howard, R.A..Dynamic Programming and Markov Processes.Cambridge, Massachusetts:Technology Press-Wiley,1960
- 6. Bellman, R.E., 1957. A Markov decision process. Journal of Mathematical Mechanics, 6, pp.679-684.
- 7. Blackwell D., 1962. Discrete dynamic programming. Ann Math Stat 33: 719-726.
- 8. Werbos, P.J., 1987. Building and understanding adaptive systems: A statistical/numerical approach to factory automation and brain research. IEEE Transactions on Systems, Man, and Cybernetics, 17, pp.7-20.
- 9. Watkins, C., 1989. Learning from Delayed Rewards. PhD Thesis. Cambridge University.
- 10. 史永東.金融經濟學:東北財經大學出版社 , 2012.03:167頁
- 11. Watkins, C. and Dayan, P., 1992. Q-learning. Machine learning, 8(3), pp.279-292.
- 12. Williams, R.J., 1992. Simple statistical gradient-following algorithms for connectionist reinforcement learning. Machine learning, 8(3-4):229–256.
- 13. Goncalves, N., Constrained Markov Decision Processes. In: Sequential Decision Making under Uncertainty .Institute for Systems and Robotics, University of Lisbon.2007-4-16[引用日期2019-05-24]
- 14. Bellman, R.E. and Zadeh, L.A., 1970. Decision-making in a fuzzy environment, Management Science Series. B(17), pp.141-164.
- 15. Littman, M.L., 1994. Markov games as a framework for multi-agent reinforcement learning. In 11th International Conference on Machine Learning, pp.157–163.
- 收起