強化學習(四)用蒙特卡羅法(MC)求解

2021-09-25 17:48:49 字數 669 閱讀 2453

在強化學習(三)用動態規劃(dp)求解中,我們討論了用動態規劃來求解強化學習**問題和控制問題的方法。但是由於動態規劃法需要在每一次回溯更新某乙個狀態的價值時,回溯到該狀態的所有可能的後續狀態。導致對於複雜問題計算量很大。同時很多時候,我們連環境的狀態轉化模型pp都無法知道,這時動態規劃法根本沒法使用。這時候我們如何求解強化學習問題呢?本文要討論的蒙特卡羅(monte-calo, mc)就是一種可行的方法。

蒙特卡羅法這一篇對應sutton書的第五章和ucl強化學習課程的第四講部分,第五講部分。

在動態規劃法中,強化學習的兩個問題是這樣定義的:

**問題,即給定強化學習的6個要素:狀態集ss, 動作集aa, 模型狀態轉化概率矩陣pp, 即時獎勵rr,衰減因子γγ,  給定策略ππ, 求解該策略的狀態價值函式v(π)v(π)

控制問題,也就是求解最優的價值函式和策略。給定強化學習的5個要素:狀態集ss, 動作集aa, 模型狀態轉化概率矩陣pp, 即時獎勵rr,衰減因子γγ, 求解最優的狀態價值函式v∗v∗和最優策略π∗π∗ 

可見, 模型狀態轉化概率矩陣pp始終是已知的,即mdp已知,對於這樣的強化學習問題,我們一般稱為基於模型的強化學習問題。

不過有很多強化學習問題,我們沒有辦法事先得到模型狀態轉化概率矩陣pp,這時如果仍然需要我們求解強化學習問題,那麼這就是不基於模型的強化學習問題了。它的兩個問題一般的定義是:    

強化學習 蒙特卡羅法

從本章起,我們開始解決更貼近實際的問題。前面提到我們接觸過的問題有乙個特點,即我們可以知道環境運轉的細節,具體說就是知道狀態轉移概率 p s s t,a t 對蛇棋來說,我們可以看到蛇棋的棋盤,也就可以了解到整個遊戲的全貌,這時我們相當於站在上帝視角,能夠看清一切情況。在很多實際問題中,我們無法得到...

強化學習筆記(四)

sarsa 演算法初始化 q s,a 為任意值 重複以下步驟 每個訓練回合 初始化狀態 s 從狀態 s 中根據 於 q 的策略選擇行為 a 例如 greedy 0.9 90 情況取最優行為,10 情況隨機採取行為 重複以下步驟 單個回合中的每一步 執行行為 a,觀察獎勵 r,下一狀態 s 從狀態 s...

強化學習 強化學習基礎

為了應對車載網路中通訊環境快速變化的難題,可以使用強化學習進行解決,這裡對強化學習的基礎進行整理。主要的應用場景為車載網路中資源分配問題。本文源自莫煩python 強化學習章節,有需要請查閱原文 20200413補充了一些內容,來自這篇部落格,是李巨集毅的深度強化學習的筆記。強化學習的主要構成有 a...