本篇论文讨论了策略梯度方法的函数逼近问题。首先明确策略梯度的目标函数:最大化策略$pi$下的累计回报$ ho(pi)$
[ ho ( pi ) = E left{ sum _ { t = 1 } ^ { infty } gamma ^ { t - 1 } r _ { t } | s _ { 0 } , pi ight}]
上式是初始状态为$s_0$的累计回报表达式,事实上,还可以利用策略生成的平稳状态分布$d^pi(s)$对$ ho(pi)$进行加权:
[ ho ( pi ) = lim _ { n ightarrow infty } frac { 1 } { n } E left{ r _ { 1 } + r _ { 2 } + cdots + r _ { n } | pi ight} = sum _ { s } d ^ { pi } ( s ) sum _ { a } pi ( s , a ) mathcal { R } _ { s } ^ { a }]
为了改进策略,我们希望能够按照$ ho(pi)$的正梯度方向对$pi$函数进行更新。假设$ heta$是策略函数$pi$的参数,本文的第一个基本结论为,无论上面哪种形式的$ ho(pi)$,其梯度都可以被表示为:
[frac { partial ho } { partial heta } = sum _ { s } d ^ { pi } ( s ) sum _ { a } frac { partial pi ( s , a ) } { partial heta } Q ^ { pi } ( s , a )]
该结论表明$ ho(pi)$的梯度不涉及$frac { partial d ^ { pi } ( s ) } { partial heta }$项,而$d ^ { pi } ( s )$是可以通过蒙特卡洛模拟得到的,这将为策略梯度方法的计算提供了极大的便利。
本文的结论2则解决了针对策略梯度的实际计算问题。假设$f_w$是$Q^pi(s,a)$的一个估计,w是逼近器$f_w$的参数,则w的更新方向为:
[Delta w _ { t } propto frac { partial } { partial w } left[ hat { Q } ^ { pi } left( s _ { t } , a _ { t } ight) - ight.f _ { w } left( s _ { t } , a _ { t } ight) ] ^ { 2 } propto left[ hat { Q } ^ { pi } left( s _ { t } , a _ { t } ight) - f _ { w } left( s _ { t } , a _ { t } ight) ight] frac { partial f _ { w } left( s _ { t } , a _ { t } ight) } { partial w }]
当$f_w$达到局部最优时,应该有:
[sum _ { s } d ^ { pi } ( s ) sum _ { a } frac { partial pi ( s , a ) } { partial heta } left[ Q ^ { pi } ( s , a ) - f _ { w } ( s , a ) ight] = 0]
结论2表明如果满足:
[frac { partial f _ { w } ( s , a ) } { partial w } = frac { partial pi ( s , a ) } { partial heta } frac { 1 } { pi ( s , a ) }]
则有:
[frac { partial
ho } { partial heta } = sum _ { s } d ^ { pi } ( s ) sum _ { a } frac { partial pi ( s , a ) } { partial heta } f _ { w } ( s , a )]
这样就通过一个对$Q^pi(s,a)$的估计函数$f_w$实现了策略梯度的实际计算。
为了满足$frac { partial f _ { w } ( s , a ) } { partial w } = frac { partial pi ( s , a ) } { partial heta } frac { 1 } { pi ( s , a ) }$,本文说明可以通过对$pi(s,a)$与$f_w(s,a)$的合理构造进行保证,如:
[pi ( s , a ) = frac { e ^ { heta ^ { T } phi _ { s a } } } { sum _ { b } e ^ { heta ^ { T } phi _ { s b } } }]
[frac { partial f _ { w } ( s , a ) } { partial w } = frac { partial pi ( s , a ) } { partial heta } frac { 1 } { pi ( s , a ) } = phi _ { s a } - sum _ { b } pi ( s , b ) phi _ { s b }]
[f _ { w } ( s , a ) = w ^ { T } left[ phi _ { s a } - sum _ { b } pi ( s , b ) phi _ { s b } ight]]
上面的构造表明了,本文的算法是$f_w(s,a)$关于针对状态s特征函数的线性逼),但是$pi(s,a)$函数的选取则可以是多种多样的,可以采用复杂的非线性形式,只要根据上面的式子重新推导即可。
最后,本文给出了结论3,表明算法的收敛性,即:
[lim _ { k ightarrow infty } frac { partial ho left( pi _ { k } ight) } { partial heta } = 0]