什麼是馬爾可夫決策過程

做者|Nathan Lambert
編譯|VK
來源|Towards Data Science算法

關於馬爾可夫決策過程的馬爾可夫是什麼?

馬爾可夫是安德烈·馬爾科夫(Andrey Markov),​​他是著名的俄羅斯數學家,以其在隨機過程當中的工做而聞名。機器學習

「馬爾可夫」一般意味着在當前狀態下,將來和過去是獨立的。函數

創建Markovian系統的關鍵思想是無記憶。無記憶是系統歷史不會影響當前狀態的想法。用機率表示法,無記憶性轉化爲這種狀況。考慮一系列動做產生的軌跡,咱們正在尋找當前動做將帶給咱們的位置。長的條件機率可能看起來像:學習

如今若是系統是Markovian,則歷史將所有包含在當前狀態中。所以,咱們的第一步分配要簡單得多。spa

這一步是改變計算效率的規則。馬爾可夫性質是全部現代強化學習算法的存在和成功的基礎。.net

馬爾可夫決策過程(MDP)

MDP由如下定義:代理

  • 狀態集$s\in S。狀態是代理程序全部可能的位置。在下面的示例中,它是機器人位置。
  • 一組動做\(a\in A\)。動做是代理能夠採起的全部可能動做的集合。在下面的示例中,這些動做的下方是{北,東,南,西}。
  • 轉換函數T(s,a,s')。T(s,a,s')保持MDP的不肯定性。給定當前位置和給定動做,T決定下一個狀態出現的頻率。在下面的示例中,轉換函數多是下一個狀態在80%的時間內處於目前動做方向,而在其餘20%的狀況下偏離了90度。在下面的示例中,機器人選擇了北,但每一個機器人有10%的機會向東或向西移動。
  • 獎勵函數R(s,a,s')。最大化報酬總額是任何代理的目標。此函數說明每一個步驟可得到多少獎勵。一般,爲鼓勵快速解決方案,每一個步驟都會有少許的負獎勵(成本),而在最終狀態下會有較大的正面(成功的任務)或負面(失敗的任務)獎勵。例以下面的寶石和火坑。
  • 開始狀態s0,也許是結束狀態。

這給了咱們什麼?

這個定義給咱們提供了一個有限的世界,咱們創建了前進的模型。咱們知道每一個轉換的確切機率,以及每一個動做的效果。最終,該模型是一種方案,咱們將在知道本身的操做可能會出現錯誤的狀況下計劃如何採起行動。blog

若是機器人就在火坑旁邊,機器人是否應該老是選擇北方,可是北方有可能把它送到東邊掉入火坑?ci

不,最佳策略是西方。由於最終進入牆壁將(有20%的機會)向北移動,並使機器人駛向目標。資源

策略規定

學習如何在未知環境中行動是瞭解環境的最終目標。在MDP中,這稱爲策略。

策略是一項函數,可以讓你根據狀態執行操做。π*:S→A.

制定策略的方法不少,可是核心思想是值和策略迭代。這兩種方法均可以迭代地爲狀態(多是動做)的總效用創建估算。

狀態的效用是(折後)獎勵的總和。

一旦每一個狀態都具備效用,那麼高層的規劃和策略制定就會遵循最大效用的路線。

在MDP和其餘學習方法中,模型會添加折扣因子γ來優先考慮短時間和長期獎勵。折扣因素在直覺上是有道理的。經過將獎勵的總和轉換成幾何級數,折扣因子也帶來了巨大的計算收斂性。

原文連接:https://towardsdatascience.com/what-is-a-markov-decision-process-anyways-bdab65fd310c

歡迎關注磐創AI博客站:
http://panchuang.net/

sklearn機器學習中文官方文檔:
http://sklearn123.com/

歡迎關注磐創博客資源彙總站:
http://docs.panchuang.net/

相關文章
相關標籤/搜索