Offline RL Survey

Offline Reinforcement Learning

Type and Notion of Offline RL

Notion of Offline RL

给定数据集D

在不能与环境交互的前提下学习最佳策略

Type of Offline RL problem

OPE

给定数据,评估一个策略的奖励期望

Offline RL Learning

学习最佳策略$\pi_\theta$

关键问题

  1. 找到数据集中有价值的经验
  2. 泛化:一个状态下的好动作在另一个状态下不一定好,或者对于没有见过的初始状态同一个算法能否给出好的结果
  3. 组合:将多个好动作合成为一个

离线强化学习中必须考虑没有见过的动作和状态(out-of-distribution),同时超越数据集中的数据

简单看看distribution shift问题

简单的监督回归任务

$,是否有$f(x^f(x^*)\approx E[y|x]$?这要分成两种情况考虑

  1. |p(x^x^*)$,则有大概率判断是真的
  2. |q(x^x^*)$,则可能结论为假

这启示我们如果用$f(x^*)$寻找$E[y|x]$最大值可能是不合理的

Offline RL with Q Learning

对于强化学习任务,TD error计算用到的奖励估算

优化目标是

Offline RL with Policy Gradient

RL计算梯度为

实际上是在环境上采样得到N条轨迹,代替期望,对于offpolicy policy gradient,需要importance sampling系数

假设轨迹$\tau = (s_0,a_0,s_1,a_1,\cdots,s_T,a_T,s_{T+1})$

我们记

最终梯度写成

基本思想是importance sampling系数由$\prod_{t}\frac{\pi_\theta(a_t|s_t)}{\pi_\beta(a_t|s_t)}$,使用$w(s,a) = \frac{d^{\pi_\theta}(s,a)}{d^{\pi_\beta}(s,a)}$,于是采样方法写成

$w(s,a)$具有的性质,假设$(s,a,s^\prime,a^\prime)$采样自D

Offline value function estimation

对于奖励存在

Distribution Shift in RL

约束当前策略和探索策略之间的距离

显式约束

要求

存在以下问题

  1. 不存在$\pi_\beta$(手工获得数据)
  2. 多个RL算法生成的数据
  3. 过于乐观/过于消极

分析KL散度

reward函数写成

直接将距离加入到奖励中

隐式约束

Advantage function根据Critic方法估算得到,采样来自D

Z(s)是啥?

在Q函数更新时避免OOD问题

Q函数根据如下范式更新

V函数根据如下方式更新

Implict Q-learning

每一步更新写为

Conservative Q-learning

更新参数是加入正则项(TD loss)

  1. $E_{s\in D,a\in \mu(a|s)}[Q(s,a)]$最大化$\mu$,选择带来最大奖励的动作
  2. $E_{(s,a,s^\prime)\in D}[(Q(s,a)-(r(s,a)+E_\pi(Q(s^\prime,a^\prime))))^2]$

选择损失函数

regular指的是从D中抽取$(s,a,s^\prime)$计算的TD loss

算法

  1. 在D上优化$\mathcal L_{CQL}(Q^\pi)$
  2. 策略函数$\pi(a|s)=\arg\max_a Q^(s,a)$

在此基础上增加一个评估项评估动作概率的entropy

因为$\mu(\cdot|s)$实际上是$Q(s,a)$softmax化的结果,也可以写成

Model Based Offline RL

有些类似reward shaping,奖励写成

$u(s,a)$称为uncertainty penalty,刻画model errror

Conservative Model-Based RL

最小化model状态-行为序列对应的Q值,同时增大其对数据集D中状态-动作序列的评估,损失函数分成三个部分

  1. $E_{s,a\in \rho(s,a)}[Q(s,a)]$,这里状态-动作序列由模型生成
  2. $-E_{s,a\in D}[Q(s,a)]$,这里状态-动作序列来自静态数据集
  3. $E_{s,a,s^\prime}[(Q(s,a)-\hat Q^k(s,a))^2]$,刻画TD error

轨迹转化

  1. 训练模型预测轨迹的联合概率分布$p(\tau) =p_\beta(s_1,a_2,\cdots,s_T,a_T)$(感觉像是学习行为策略产生某一轨迹的概率)
  2. 使用transformer建模序列信息

如何利用model做控制:模拟环境下计算累计奖励,从某个状态开始采样多个路径,选择累计奖励最大的路径

本站访客数人次