强化学习(三)-策略梯度优化policy Gradient

直接优化策略梯度而不是优化Q函数来指导agent做决策

1 基本概率

  • 策略 policy: π ( a ∣ s ) \pi(a|s) π(as)
  • 状态价值函数
    V π ( s t ) = E A [ Q π ( s t , A ) ] V_\pi (s_t)=E_A[Q_\pi(s_t,A)] Vπ(st)=EA[Qπ(st,A)]
    V π ( s t ) = ∑ a π ( a ∣ s ) ∗ Q π ( s t , A ) V_\pi (s_t)=\sum_a\pi(a|s)*Q_\pi(s_t,A) Vπ(st)=aπ(as)Qπ(st,A)

2 目标最大化 V π ( s t ) V_\pi (s_t) Vπ(st)

  • 策略梯度 policy gradient
    ∂ V π ( s ) ∂ θ = E A ~ π [ ∂ I n π ( A ∣ s ; θ ) ∂ θ ∗ Q π ( s , A ) ] \frac{\partial V_\pi(s)}{\partial \theta}=E_{A~\pi}[\frac{\partial In\pi(A|s;\theta)}{\partial \theta} * Q_\pi(s,A)] θVπ(s)=EAπ[θI(As;θ)Qπ(s,A)]

3 添加baseline

如下添加一个b,和动作A是独立,不随A的变化而变化。
E A ~ π [ b ∗ ∂ I n π ( A ∣ s ; θ ) ∂ θ ] E_{A~\pi}[b * \frac{\partial In\pi(A|s;\theta)}{\partial \theta} ] EAπ[bθI(As;θ)]

3.1 baseline的梯度为0证明

由于b独立于A
E A ~ π [ b ∗ ∂ I n π ( A ∣ s ; θ ) ∂ θ ] E_{A~\pi}[b * \frac{\partial In\pi(A|s;\theta)}{\partial \theta} ] EAπ[bθI(As;θ)]
= b ∗ E A ~ π [ ∂ I n π ( A ∣ s ; θ ) ∂ θ ] b* E_{A~\pi}[ \frac{\partial In\pi(A|s;\theta)}{\partial \theta} ] bEAπ[θI(As;θ)]
= b ∗ ∑ a π ( a ∣ s ; θ ) ∂ I n π ( a ∣ s ; θ ) ∂ θ b *\sum_a\pi(a|s;\theta) \frac{\partial In\pi(a|s;\theta)}{\partial \theta} baπ(as;θ)θI(as;θ)
= b ∗ ∑ a π ( a ∣ s ; θ ) 1 π ( a ∣ s ; θ ) ∂ π ( a ∣ s ; θ ) ∂ θ b *\sum_a\pi(a|s;\theta) \frac{1}{\pi(a|s;\theta)} \frac{\partial \pi(a|s;\theta)}{\partial \theta} baπ(as;θ)π(as;θ)1θπ(as;θ)
= b ∗ ∑ a ∂ π ( a ∣ s ; θ ) ∂ θ b *\sum_a\frac{\partial \pi(a|s;\theta)}{\partial \theta} baθπ(as;θ)
= b ∗ ∂ 1 ∂ θ b* \frac{\partial 1}{\partial \theta} bθ1
=0

即证: E A ~ π [ b ∗ ∂ I n π ( A ∣ s ; θ ) ∂ θ ] = 0 E_{A~\pi}[b * \frac{\partial In\pi(A|s;\theta)}{\partial \theta} ]=0 EAπ[bθI(As;θ)]=0

4 策略梯度添加baseline

  • 策略梯度 policy gradient

∂ V π ( s ) ∂ θ = E A ~ π [ ∂ I n π ( A ∣ s ; θ ) ∂ θ ∗ Q π ( s , A ) ] − E A ~ π [ b ∗ ∂ I n π ( A ∣ s ; θ ) ∂ θ ] \frac{\partial V_\pi(s)}{\partial \theta} =E_{A~\pi}[\frac{\partial In\pi(A|s;\theta)}{\partial \theta} * Q_\pi(s,A)] -E_{A~\pi}[b * \frac{\partial In\pi(A|s;\theta)}{\partial \theta} ] θVπ(s)=EAπ[θI(As;θ)Qπ(s,A)]EAπ[bθI(As;θ)]
= E A ~ π [ ∂ I n π ( A ∣ s ; θ ) ∂ θ ∗ ( Q π ( s , A ) − b ) ] E_{A~\pi}[\frac{\partial In\pi(A|s;\theta)}{\partial \theta} * (Q_\pi(s,A)-b)] EAπ[θI(As;θ)(Qπ(s,A)b)]

5 蒙特卡洛计算策略梯度

随机从策略policy π ( a ∣ s ) \pi(a|s) π(as) 中选择动作a,计算梯度
g ( a t ) = ∂ I n π ( a t ∣ s t ; θ ) ∂ θ ∗ ( Q π ( s t , a t ) − b ) g(a_t)=\frac{\partial In\pi(a_t|s_t;\theta)}{\partial \theta} * (Q_\pi(s_t,a_t)-b) g(at)=θI(atst;θ)(Qπ(st,at)b)

6思考 :b不影响梯度的变化,为什么还要选择b?

因为b虽然不影响梯度的变化,由于我们的Q函数一般是近似的,因此使用一个baseline,能够使采样的数据的方差变小,使估计的数据更准确(相当于对数据做了去均值化)。

7 baseline的选择

baseline的选择有很多种方式,根据不同选择方式,有不同的优化算法。

小结

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值