前面介紹了三種取樣求均值的演算法
——mc
——td
——td(lamda)
下面我們基於這幾種方法來迭代優化agent
傳統的強化學習演算法
已經知道完整mdp——使用價值函式v(s)
沒有給出完整mdp——使用價值函式q(s,a)
可見我們的目標就是確定下來最優策略和最優價值函式
|
|——有完整mdp && 用dp解決複雜度較低
| ====》 使用貝爾曼方程和貝爾曼最優方程求解
|——沒有完整mdp(env未知) or 知道mdp但是硬解mdp問題複雜度太高
| ====》 policy evaluation使用取樣求均值的方法
| |—— on-policy mc
| |—— on-policy td
| |____ off-policy td
agent對外界好壞的認識是對什麼的認識呢?是每乙個狀態s的好壞還是特定狀態下採取特定行為(s,a)的好壞?
這取決於是什麼樣的問題背景。
有完整的mdp,知道從這個狀態下採取某行為會有多大概率後繼狀態為某狀態,那麼我們的agent需要知道的是狀態的好壞。如sutton書中的jack『s car rental問題,方格問題等等,這些都是事先就明確知道狀態行為轉移概率矩陣的。絲毫沒有「人工智慧」的感覺。
沒有完整的mdp,知道從這個狀態下採取某行為會有多大概率後繼狀態為某狀態,那麼我們的agent需要知道的是狀態行為對(s,a)的好壞。比如,圍棋!我們下子之後,對手會把棋落哪是完全沒法**的,所以後繼state是絕對不可**,所以agent是不能用v(s)作為評價好壞的價值函式,所以agent應該在乎的是這個(s,a)好這個(s,a)不好,所以使用q(s,a)作為價值函式。
on policy :基於策略a取樣獲取episode,並且被迭代優化的策略也是a
off policy :基於策略a取樣獲取episode,而被迭代優化的策略是b
基於模型的強化學習
1 在model based rl裡,雖然學習mdp模型可以提高強化學習的效率,但是如果模型誤差較大可能導致學不到較好的策略,這個問題一般怎麼解決?如果模型學習的不夠精準,那就只能用很短很短的rollout來做planning。例如q planning就是1步的rollout,這樣並不能特別高的提公...
強化學習中的重要性取樣
在之前內容的整理中涉及了一些重要性取樣的內容,在介紹蒙特卡羅離線策略 時有所提及。其中詳細介紹了到底什麼是重要性取樣。這篇博文主要想更加深刻得思考為什麼用的是重要性取樣方法?參考鏈結中一句話說的很好 重要性取樣出現的原因是因為原始分布難以直接取樣,故需要借助乙個簡單 可取樣的分布來計算期望。但強化學...
RL(九)基於策略的強化學習
前面的演算法都是基於價值來算的,但是當處理連續動作的問題時,就顯得力不從心了,因為我們需要求的q錶太大,根本無法滿足我們的需要。前面我們在演算法分類的時候也講過,我們可以按基於價值和基於策略的方式來給rl分類,所以這篇部落格就是用基於策略演算法來求解強化學習問題。值函式近似法 在值函式近似法中,動作...