Policy Gradient¶
记号说明
: Dynamics (环境) : Policy (parameterized by ) (策略) : Probability of this trajectory under policy (这个策略下该轨迹的概率) : Probability of all the action under policy and the states (i.e. probability of trajectory w/o dynamics) (固定该轨迹中的状态,这个策略下所有该轨迹中的动作的概率。也就是轨迹的概率除以所有环境的概率)
Off-Policy Policy Gradient¶
假设我们当前的 policy 是
那么:
接下来,就是求梯度。
(近似)梯度推导
最终结果就是:
关于上面这个式子的推导过程中的“近似”,我在下面回答几个问题:
几个问题
Q1: 我们为什么要把
A1:
-
避免
比较大的时候,这个 过大或者过小(过小是主因)。从而导致梯度爆炸或者梯度消失(同上文,梯度消失是主因)。为何
会过大/过小:既然 是从旧策略 中采样的一条路径,我们自然认为 是大概率的事件。如果 比较大,就会导致多个小于 1 的 连乘,从而导致 过小。 -
比较大的时候,连乘式会大大增加方差,这也是我们不想要的
Q2: 为什么可以把
A3: 删去之后,虽然式子就不再等于梯度,但是属于 policy iteration 这个算法框架了。Policy iteration 仍然可以对
Q3: 为什么可以把
A3: (见上面图片中最下方蓝色部分「为什么能这么做」)