Processing math: 100%

[RL Notes] 估计策略的梯度

  策略梯度定理给出了计算策略梯度的简单方法

r(π)=sμπ(s)aπ(a|s,θ)qπ(s,a)

其中的 sμπ(s) 需要对所有状态求和,在实际场景中,智能体与环境交互产生一系列轨迹

S0,A0,R1,S1,A1,,St,At,Rt+1,

对所有状态求和并不实际。

  回顾使用随机梯度下降进行状态价值函数预测的更新公式

wt+1wt+α[Utˆv(St,wt)]ˆv(St,wt)

如果 Utvπ(St) 的无偏估计,那么 wt 会收敛到一个局部最优解。

  类似地,注意到式 (1) 实际上是一个期望

r(π)=sμπ(s)aπ(a|s,θ)qπ(s,a)=Eμ[aπ(a|s,θ)qπ(s,a)]

实际上,我们在策略 π 下观察到的状态序列服从 μ(s) 规定的分布,在状态 St 上计算得到的梯度是式 (2) 所示期望的无偏估计,因此可以去掉式 (1) 中对每个状态的求和,而使用在策略 π 下观察到的样本代替,得到策略参数的随机梯度下降更新公式

θt+1θt+αaπ(a|St,θt)qπ(St,a)

  更进一步地,考虑 aπ(a|St,θt)qπ(St,a) 这一项,它也可以写成期望的形式

aπ(a|St,θt)qπ(St,a)=aπ(a|St,θ)1π(a|St,θ)π(a|St,θt)qπ(St,a)=Eπ[π(At|St,θt)π(At|St,θt)qπ(St,At)]Atπa

由此消除了式 (3) 中对动作的求和,得到新的策略参数的更新公式

θt+1θt+απ(At|St,θt)π(At|St,θt)qπ(St,At)

上式也可以写成

θt+1θt+αlnπ(At|St,θt)qπ(St,At)

由于策略及其参数化是已知的,容易计算 lnπ(At|St,θt)qπ(St,At) 一项可以使用 TD 等方法进行逼近。