这节主要讲了动态规划在强化学习中的用法。
引入两个问题的定义,Prediction,Control。
Prediction:
预测问题,MDP的信息都知道,policy也知道。输出该策略下的V。
Control:
控制问题,MDP的信息都知道,但是不知道policy,输出最优情况下的,V和policy。
对于Prediction问题,只需要根据policy求出最优的value就行。
对于control问题,有两个方法,第一种是Policy Iteration。
Policy Iteration
- 随机初始化Value(一般全置0),然后随机初始化Policy。
- 贪心的优化Policy
- 然后依据新的Policy继续求Value。然后继续优化Policy,依次迭代。
Value Iteration
另一种方法是值迭代。根据bellman方程,迭代优化值函数,而不管policy,直到最后,得到最优的value。
我们可以将这个迭代公式分成两步:
第一步遍历所有的动作a得到不同动作a所对应的一个值函数更新,即:
(2.3)
https://www.bilibili.com/video/av9930653/
https://zhuanlan.zhihu.com/p/27330154
http://www0.cs.ucl.ac.uk/staff/D.Silver/web/Teaching_files/DP.pdf