David silver 强化学习 Lecture 7
课程主页: https://www.davidsilver.uk/teaching/
这里回顾David silver 强化学习 Lecture 7的课程内容,这一讲简单介绍了策略梯度算法。
上一讲介绍了如何使用参数
然后从价值函数中推导策略。
这一讲将直接近似策略:
这一讲的重点仍然是不基于模型的强化学习。
Policy Objective Functions
我们要找到好的策略
在离散环境,我们可以使用初始价值
在连续环境中,我们可以使用平均价值
或者每个时间戳的平均回报
其中
是马尔可夫链关于 的平稳分布
后续将损失函数统一记录为
Policy Gradient
利用梯度上升算法可以最大化
其中
Score Function
现在解析的计算
我们称
后续介绍两种常见的策略形式:
Softmax Policy
所以
Gaussian Policy
一个高斯策略为,
Policy Gradient Theorem
对于任意可微的策略
Monte-Carlo Policy Gradient (REINFORCE)
将上述内容总结即可得到REINFORCE算法:
Reducing Variance Using a Critic
上述算法有很高的方差,我们可以使用critic来估计动作价值函数来减少方差:
Actor-critic算法保留两个集合的参数:
- Critic:更新动作-价值函数的参数
- Actor:根据critic的建议更新策略参数
Actor-critic算法使用下式来近似策略梯度:
Action-Value Actor-Critic
我们使用之前介绍的
Compatible Function Approximation
定理(Compatible Function Approximation)
如果如下两个条件满足:
价值函数的近似函数满足
价值函数的参数
最小化均方误差
那么策略梯度是准确的,
证明:
Reducing Variance Using a Baseline
我们可以通过减去baseline函数
一个好的baseline是
所以我们可以用advantage function
Natural Policy Gradient
Natural Policy Gradient与参数设置无关,当以较小的固定量更改策略时,它会找到最接近原始梯度的上升方向
其中
利用compatible function approximation,我们要选择满足如下条件的
显然这里可以取
所以
即根据critic参数更新actor参数。
Summary of Policy Gradient Algorithms
policy gradient有很多等价形式
Critic使用策略评估(例如MC或者TD)来估计
v1.5.2