《強化學習Sutton》讀書筆記(四)——蒙特卡洛方法(Monte Carlo Methods)
阿新 • • 發佈:2018-12-25
此為《強化學習》第五章。
上一節中的動態規劃方法需要知道整個environment的資訊,但有的時候,我們只有經驗 (Experience) (比如一組取樣),而對environment沒有任何其他知識;或者我們有一個可以互動的黑盒,通過黑盒可以進行模擬得到experience,但具體黑盒內的概率模型也是不知道的(或者非常難以計算的)。這種情況下,動態規劃方法不再適用,蒙特卡洛方法 (Monte Carlo Method, MC) 成為了新的解決方案。
蒙特卡洛估計
假設我們已經得到了一批在策略
下的取樣,我們想以此估計每個狀態的值函式
。我們定義任一取樣中的任一時刻通過狀態
注意到
,所以在遍歷時,需要從後向前遍歷求出回報
。First-Visit方法和Every-Visit方法非常類似,但在理論性質上略有不同。本章主要討論First-Visit方法,以下給出First-Visit蒙特卡洛估計方法的虛擬碼。
蒙特卡洛方法聽起來非常簡單,但也已經可以用來解決一些問題了,比如21點 (Blackjack) 。
蒙特卡洛方法對行為值函式的估計
如果我們已知狀態之間跳轉的概率模型,那麼上述的對狀態值函式的估計就足夠了,因為我們可以通過貪心演算法,得到確定性的策略(即 )。但如果我們不知道狀態之間的概率模型,那麼我們就無法確定狀態 能跳轉到其他哪些狀態。此時,對行為值函式進行估計是一種可行的方法。
對行為值函式的估計和狀態值函式非常類似,它也是統計每次在狀態
選擇行為
得到回報的平均。類似地,它也可以分成首次訪問方法和每次訪問方法,表示式如下: