对于随机参数化的策略, 我们的目标是最大化期望回报:J(πθ)=τ∼πθE[R(τ)]。为了推导我们这里的R(τ)是有限无加权的回报,有限有加权的推导是相同的。
我们可以通过梯度上升优化策略,如
θk+1=θk+α∇θJ(πθ)∣θk
∇θJ(πθ)叫做梯度策略,这样优化策略的方法我们叫做梯度策略算法,如Vanilla梯度策略,TRPO, PPO。
先列几个我们推导会用到的公式
1, 策略轨迹的概率。假设策略来自πθ,策略轨迹τ=(s0,a0,…,sT+1)的概率表示为下
P(τ∣θ)=ρ0(s0)∏t=0TP(st+1∣st,at)πθ(at∣st)
2,Log求导的一些技巧
∇θP(τ∣θ)=P(τ∣θ)∇θlogP(τ∣θ) 用到了logx的导数是1/x和链式法则
3,策略轨迹的log概率,
logP(τ∣θ)=logρ0(s0)+∑t=0T(logP(st+1∣st,at)+logπθ(at∣st))
4,环境函数的梯度。环境和θ无关,所以ρ0(s0),P(st+1∣st,at)和R(τ)是0.
5,∇θlogP(τ∣θ)=∇θlogρ0(s0)+t=0∑T(∇θlogP(st+1∣st,at)+∇θlogπθ(at∣st))=t=0∑T∇θlogπθ(at∣st)
上边几步合到一块的推导过程
∇θJ(πθ)=∇θτ∼πθE[R(τ)]=∇θ∫τP(τ∣θ)R(τ)=∫τ∇θP(τ∣θ)R(τ)=∫τP(τ∣θ)∇θlogP(τ∣θ)R(τ)=τ∼πθE[∇θlogP(τ∣θ)R(τ)]
∴∇θJ(πθ)=τ∼πθE[∑t=0T∇θlogπθ(at∣st)R(τ)]
g^=∣D∣1∑τ∈D∑t=0T∇θlogπθ(at∣st)R(τ)