1. 程式人生 > >強化學習(David Silver)3:動態規劃

強化學習(David Silver)3:動態規劃

哈哈 avi 過程 來源 con 隨機 選擇 進行 解決

1、簡介

1.1、動態規劃

動態規劃的性質:最優子結構;無後向性

動態規劃假定MDP所有信息已知,解決的是planning問題,不是RL問題

1.2、兩類問題

預測問題:給定策略,給出MDP/MRP和策略,計算策略值函數

控制問題:不給策略,給出MDP/MRP,得出最優策略值函數

任何MDP,都存在一個最優值函數,存在最優策略????why??

2、策略評估

通過貝爾曼方程,進行值函數叠代,就完成了策略評估

通過GridWorld的例子說明:值函數對於策略選擇很有用;在策略評估中,隨機策略叠代很多輪才得到最優策略;

在基於值函數的貪心策略中,貪心選擇了三次就得到了最優策略

這個問題同時說明,尋找最優策略,不一定需要值函數收斂

3、策略叠代

3.1、步驟

1)策略評估

2)通過貪心改善策略

理論上說,收斂速率和初始狀態無關;實踐上說,但是收斂時間的確和初始狀態有關,所以初始狀態選擇很重要

對於確定性策略如何進行策略叠代?

4、值叠代

來源:把MDP過程分解,每個狀態下的最優策略都可以分解為,從這個狀態出發,采用這個策略的到達的新狀態的最優策略之和(好繞,哈哈哈哈)

值叠代的中間過程,並不直接對應於某個策略;不需要策略評估,直接從貝爾曼最優方程叠代即可

5、DP

叠代更新的時候,值函數不需要批量更新,逐個更新就可以

三種更新方式:

1、In-place update:逐個更新

2、優先更新:根據差值設置更新順序,按差值從大到小排序

3、Real-time update:找那些agent真正訪問過的狀態更新

DP只能處理中等規模問題,也就是數量級為百萬的問題;對於大型問題,backup代價很大,需要sample

6、Contraction Mapping

Question:

任何MDP,都存在一個最優值函數,存在最優策略???

強化學習(David Silver)3:動態規劃