YeeKal

note8_trpo_ppo

YeeKal
"#"

TRPO: trust region policy optimization

强化学习进阶-知乎 RL — Trust Region Policy Optimization RL — Trust Region Policy Optimization Part 2 推倒-知乎

回顾策略梯度更新公式: 当步长$\alpha$不合适时,更新的参数所对应的策略是一个更不好的策略,当利用这个更不好的策略进行采样学习时,再次更新的参数会更差。因此在更新的时候需要保证选取的是合适的步长。所谓合适的步长是指当策略更新后,价值函数的值不能更差,或者单调递增。TRPO主要用来解决如何使价值函数单调不减。

定义价值回报函数: 参数更新前后: $A_\pi(s,a)$衡量当前动作想对于平均价值函数的优势,也是新旧策略奖励差。

加入策略项,其中$\sum_a\pi'(a|s)$为对动作a的边际分布,$\sum_{s}P(s_t=s|\pi')$为对状态s的边际分布:

优化目标:

这时状态s的分布由新策略产生,对新策略依赖严重。

Tips

  1. 忽略参数更新对状态分布变化的影响:
  2. 利用重要性采样对动作分布进行的处理(importance sampling)

In importance sampling, we offer the choice of not sampling the value of f(x) from p. Instead, we sample data from q and use the probability ratio between p and q to recalibrate the result. $L(\pi)$与$J(\pi)$一阶近似。 define $M(\pi)=L(\pi')-CD_{KL}^{max}(\pi'||\pi)$, $M(\pi')$是$J(\pi')$的下界,则最大化这个函数($\max \min f(x)$)可以保证单调不减,又不至于步长过度。$C=\frac{2\epsilon\gamma}{(1-\gamma)^2}$,$D_{KL}$是两个数据分布之间的散度:$D_{KL}(P||Q=\sum_{x=1}^{N}P(x)log\frac{P(x)}{Q(x)}$.

根据拉格朗日对偶性(Lagrangian Duality),问题可转化为约束优化问题: 3. 在约束条件中,利用平均KL散度代替最大KL散度 4. $s\sim \rho_\pi\rightarrow s\sim \pi$

最终的TRPO问题转化为:

## PPO

PPO