近端策略优化(PPO)算法详解
1. 引言
在强化学习领域,策略梯度算法是一类重要的方法,但传统的策略梯度算法存在一些问题,如理论复杂、实现困难、梯度计算成本高以及难以选择合适的参数等。近端策略优化(Proximal Policy Optimization,PPO)算法应运而生,它易于实现、计算成本低,且无需选择复杂的参数,因此成为了最受欢迎的策略梯度算法之一。
2. PPO 算法基础
2.1 代理目标函数简化
为了更好地理解 PPO 算法,我们先对代理目标函数 (J_{CPI}(\theta)) 进行简化。定义 (r_t(\theta) = \frac{\pi_{\theta}(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)}),优势函数 (A^{\pi_{\theta_{old}}} t) 简记为 (A_t),则代理目标函数可表示为:
[J {CPI}(\theta) = E_t\left[\frac{\pi_{\theta}(a_t | s_t)}{\pi_{\theta_{old}}(a_t | s_t)}A^{\pi_{\theta_{old}}}_t\right] = E_t[r_t(\theta)A_t]]
2.2 PPO 算法变体
PPO 算法有两种变体:基于自适应 KL 惩罚的变体和基于裁剪目标的变体。
2.2.1 基于自适应 KL 惩罚的 PPO
该变体将 KL 约束 (E_t[KL(\pi_{\theta}(a_t | s_t) || \pi_{\theta_{old}}(a_t |
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



