Lecture 6: Actor-Critic Algorithms

  1. improve the policy gradient 

      在如下计算gradient 的公式中, 只用到了一个trajectory 的数据,但实际情况非常复杂,所以需要使用期望:

所以将后面那个求和项用如下期望替代:

baseline 设为 Q\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)的期望 V^{\pi}\left(\mathbf{s}_{t}\right)=E_{\mathbf{a}_{t} \sim \pi_{\theta}\left(\mathbf{a}_{t} | \mathbf{s}_{t}\right)}\left[Q^{\pi}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)\right] ,表示平均的收益概念。减去baseline之后,变为如下等式:

其中上式的A^{\pi}\left(\mathbf{s}_{i, t}, \mathbf{a}_{i, t}\right)表示 advantage value , 表示这个动作比预期的好(或者坏)多少。

 

接下来的问题就是,如何产生Q\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right),  V^{\pi}\left(\mathbf{s}_{t}) , A^{\pi}\left(\mathbf{s}_t, \mathbf{a}_t\right) 。答案是只要求解V^{\pi}\left(\mathbf{s}_{t}), why? 

首先将Q\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) 展开,得到如下等式:

其中后一项可以用V^{\pi}\left(\mathbf{s}_{t+1})表示,从而等式变为:

直观理解就是,使用下一个状态的expectation, 而不是整个trajectory 的expectation,  注意到这里使用了约号,所以等式后面是个近似值,这虽然会带来适当的损失,但这只是一个step的,带来的效果就是 不必在求解 st 和at 的函数,只要求解V^{\pi}\left(\mathbf{s}_{t}) 这个函数就行了。相应的,A^{\pi}\left(\mathbf{s}_t, \mathbf{a}_t\right)变为:

接下来的问题就是,如何求解V^{\pi}\left(\mathbf{s}_{t})?可以用网络来求解,比如:

求解V^{\pi}\left(\mathbf{s}_{t})的过程也叫 policy evaluation, 因为 它只是评估该模型和好坏,不改善模型。

有一个情况需要注意的是,在求解V^{\pi}\left(\mathbf{s}_{t})时,需要从某个状态从头出发,进行多次的运行得到一个expextation, 但现实情况很难从头再来,所以在采用dnn 来处理状态时,有一个近似的概念,即类似的状态会输出类似值,比如某个动作好,某个动作坏,那dnn 会输出一个取中的值。(但是也有不好的情况,比如两者的输出相差甚远( cliff) 则此时会出现不好的情况,这里我先记录一下老师的说法,还没有很好得理解)。具体的情况如下所示:

       ------------------------->     

如何训练V^{\pi}\left(\mathbf{s}_{t})? 使用监督学习的regresion 方法, 对于每一个s_t, 其目标值由实际运行时产生的数据组成。假如数据有如下形式:

则 loss function (只是其中一种表示方式)可以表示为:(前面那项是网络的输出)

这里要注意一下如何获取y_{i, t}, 通过使用上一次value function 的值:这里使用了约号。

从而y_{i, t}可以表示为:

但是上式在infinite time step 情况下,会有问题(值会变得无限大), 所以如何保证收敛? 解决方法是是加一个 discount factor :

加上系数之后的直观解释是越以后的reward,对现在的影响越小。也可以理解为之后的average reward。 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值