基于似然函数推导策略梯度
强化学习的目标函数
U(θ)=E(∑t=0HR(st,ut);πθ)=∑τP(τ;θ)R(τ)
参数含义
τ={s0,u0,...,sH,uH} :一组状态与行为序列
R(τ)=∑t=0HR(st,ut) :序列 τ 的reward之和
P(τ;θ) :序列 τ 出现的概率
∑τP(τ;θ)R(τ) :同时拥有多组轨迹,取均值
强化学习的目的就是找到最优参数$\theta $
,使得
maxU(θ)=max∑τP(τ;θ)R(τ)
寻找最优参数 θ 的过程就是在寻找最优策略或者说最优路径,上述问题本质是一个优化问题,解决的方法最简单也是最常用的是梯度下降法,即
θnew=θold+α∇θU(θ)
关键问题是计算目标函数的梯度
∇θU(θ)=∇θ∑τP(τ;θ)R(τ)
=∑τ∇θP(τ;θ)R(τ)
=∑τP(τ;θ)P(τ;θ)∇θP(τ;θ)R(τ)
=∑τP(τ;θ)∇θP(τ;θ)R(τ)P(τ;θ)
=∑τP(τ;θ)R(τ)∇θlogP(τ;θ)
梯度的计算转换为求解
R(τ)∇θlogP(τ;θ)
的期望,此时可以利用蒙特卡洛法近似估算,即根据当前策略
π
采样得到m条轨迹
∇θU(θ)≈1m∑i=0mR(τ)∇θlogP(τ;θ)
接下来需要求解 ∇θlogP(τ;θ)
假设在m个轨迹集合中,第i次轨迹为 τi={si0,ui0,...,siH,uiH} ,似然概率为
P(τi;θ)=∏t=0HP(sit+1|sit,uit)πθ(uit|sit)
参数含义
P(sit+1|sit,uit) :状态转移概率
πθ(uit|sit) :动作选择概率