ACER算法介绍

ACER算法是在论文SAMPLE EFFICIENT ACTOR-CRITIC WITH EXPERIENCE REPLAY中提出的一种可以使用off-policy训练的置信域策略优化方法。

ACER的目标是解决on-policy算法样本利用效率低的问题,主要有三个技术:

  1. 截断重要性采样,控制方差的同时保证了无偏性;
  2. stochastic dueling network,SDN,用于连续动作控制算法值函数估计;
  3. 一种新的置信域方法,计算简单,适合大规模问题;

以下分为离散动作和连续动作分别具体介绍算法。

1. 离散动作

1.1 截断重要性采样

off-policy的优化目标可以用 g m a r g i n g^{margin} gmargin表示:
在这里插入图片描述
但是重要性采样系数 ρ t \rho_t ρt可能很大,导致方差大、训练不稳定,为此将 ρ t \rho_t ρt进行截断,把大于c的部分提出来,得到两项,后一项巧妙的将动作分布修改为当前策略的分布,为后一项系数带来分母 ρ t \rho_t ρt。新的优化目标有以下特点:

  1. 前一项系数有最大值c,后一项系数最大值趋于1,这样两项产生的方差都可控,且优化目标无偏;
  2. 前一项使用历史数据计算,后一项需要根据当前策略采样计算;

我们使用retrace方法估计的Q值代替第一项中的Q,使用值函数估计代替第二个Q,并分别减去状态值函数减少方差,得到最终ACER优化目标:
在这里插入图片描述
式子中当C->∞时,相当于使用retrace的off-policy策略梯度更新,当c=0时,相当于Actor-Critic更新,当c不为0的时候相当于介于off-policy和on-policy之间的更新。

1.2 新的置信域方法

TRPO更新需要不断计算Fisher向量乘法,难以应用到大规模问题中。ACER使用移动平均保持一个平均策略 θ : θ a ← α θ a + ( 1 − α ) θ θ: θ_a ← αθ_a + (1 − α)θ θ:θaαθa+(1α)θ,保证每次更新不偏离平均策略太远,这样KL散度的变化是一个一阶项,是一个二次规划问题,可以直接求出最优解,计算方便。
在这里插入图片描述
算法伪代码:在这里插入图片描述
需要注意的点:

  1. 算法首先on-policy地采样(存数据到buffer)并训练,然后多次从buffer中采样off-policy训练,off-policy训练的次数将在实验中进行讨论;
  2. sample的trajectory是有顺序的,不是完全的DQN类似的随机采样;
  3. 状态值函数通过当前策略下的动作值函数期望计算 V ( s ) = E a − π [ Q ( s , a ) ] V(s)=E_{a - \pi}[Q(s,a)] V(s)=Eaπ[Q(s,a)]
  4. 把retrace作为动作值函数网络的target更新动作值网络;
  5. Qretrace更新拆为了两步,实际上和retrace公式等价,先将后面t+1的项加上再加前面的rt:
    在这里插入图片描述
  6. 由于需要历史数据的策略分布,因此在存数据的时候需要存策略分布参数。

1.3 离散算法Atari实验

在这里插入图片描述
左边是表现分数随训练步数的变化,右边是表现分数随时间的变化,实线、虚线分别表示有无新置信域更新方法的实验结果。结果显示ACER表现随off-policy的经验回放操作次数增加而增加,达到相同表现的样本利用率更高,并且接近Prioritized DQN的结果。

2 连续动作

2.1 stochastic dueling network

连续动作的问题是不能通过动作值函数的期望来求状态值函数(下式),因为动作a无穷多。
在这里插入图片描述
于是论文提出Stochastic Dueling Networks (SDNs)技术,使用状态值函数和优势函数计算Q,其中为防止网络输出优势函数A的期望不为0,需要减去A的期望,由于动作无穷多,我们通过采样计算均值来估计A的期望。这个方法对于每个时刻的输出是 V ( s t ) V(s_t) V(st) Q ( s t , a t ) Q(s_t,a_t) Q(st,at)。公式和网络结构如下图所示:
在这里插入图片描述在这里插入图片描述
需要注意的点:

  1. 在计算目标函数g的时候,第一项使用 Q o p c Q_{opc} Qopc而非 Q r e t Q_{ret} Qret,论文中解释尽管 Q o p c Q_{opc} Qopc没有 Q r e t Q_{ret} Qret稳定,但是能减少更好的利用累计奖励值,因为没有被重要性系数截断,实验中速度也更快;
  2. g的第2项也没有多次采样取均值,可能方差会变大;

3 总结

ACER为了利用历史数据使用了多项技术,整体算法较为复杂,但是基本思想还是能够理解。我对retrace这项技术理解还不到位,希望能够得到指正。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值