策略梯度优化之TRPO/PPO/AC/A2C/GRPO

强强化学习基础:强化学习分类,强化学习表示,值函数,策略迭代/值迭代, 主要的强化学习技术(蒙特卡洛学习/时间差分学习,DQN.REINFORCE,策略梯度/PPO/AC/A2C/TRPO)

策略梯度法问题和优化

引用GAE论文的观点,策略梯度法存在的两个方面问题:

  • 样本利用率低,由于样本利用率低需要大量采样;
  • 算法训练不稳定,需要让算法在变化的数据分布中稳定提升;

目前比较常用的四种置信域方法TRPO、ACER、ACKTR、PPO,就是围绕策略梯度法的上述两方面问题进行改进和优化。
在这里插入图片描述
参考:置信域方法总结——TRPO、ACER、ACKTR、PPO

一 置信域策略梯度优化TRPO(Trust Region Policy Optimization)

策略梯度算法即沿着梯度方向迭代更新策略参数 。但是这种算法有一个明显的缺点:
当策略网络沿着策略梯度更新参数,可能由于步长太长,策略突然显著变差,进而影响训练效果。

针对以上问题,考虑在更新时找到一块信任区域(trust region),在这个区域上更新策略时能够得到某种策略性能的安全性保证,这就是信任区域策略优化(trust region policy optimization,TRPO)算法的主要思想。
它通过约束策略更新的步幅,防止策略的剧烈变化,从而提高训练的稳定性和效率。

参考:TRPO论文推导

1.1 重写η(π) ——写成增量式

TRPO有2种变体:
single-path:就是我们用来学习非线性策略π \piπ的model-free算法。
vine:仅仅用于仿真。

这篇论文中开始将RL的目标——期望累计奖励,用符号η(π)表示:
在这里插入图片描述
我们通常用值函数来表示目标:
在这里插入图片描述

TRPO算法的核心就是去考虑如何学习一个策略从而让性能度量J单调不减。那么一个很直观的思想就是将新策略的性能度量
J( π~)拆成前一个时间步旧的性能度量J(θ)加上某个东西G。即J(π ~)=J(π)+G。那么如果每次更新都能保证G非负,就能保证策略的单调性。那么其实这个等式是存在的:
在这里插入图片描述
A 为优势函数,我们在A2C、Dueling-network中都遇到过,满足:
在这里插入图片描述
上述式子还有2个特性,根据《Sutton强化学习》有
在这里插入图片描述

式(1)告诉我们:新旧策略的回报差是存在的,它等于
在这里插入图片描述
显然这个回报差可能正也可能负。
将新旧策略回报差利用“多变量展开”:
在这里插入图片描述
注意:
在这里插入图片描述

1.2 进一步改写 η(π)——显式的写出 s 和 a

在这里插入图片描述
在这里插入图片描述

1.3 第一次近似与证明

在这里插入图片描述

证明1

在这里插入图片描述

证明2

在这里插入图片描述在这里插入图片描述

1.4 策略更新的定量描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值