强化学习常见的方法为基于值函数或者基于策略梯度。
值函数:值函数最优时得到最优策略,即状态s下,最大行为值函数maxQ(s,a)对应的动作。
但对于机器人连续动作空间,动作连续时,基于值函数,存在以下问题:
,这种情况下,把每一个状态行为严格地独立出来,求取某个状态下应该执行的行为是不切实际的。总结:用值函数Q求解连续空间action,也能用但不好用,所以出现了,策略梯度法。
随机策略梯度:使用
直接逼近
,我们需要求得的就时神经网络参数θ。为了求解θ需要设计一个目标函数J(θ)=G(θ)(累计回报值),θ更新公式为:
![]()
此方法基于目标函数J(θ)的梯度进行策略参数更行。
J(θ)分为两种:
1.MC中,有完成的链条:

2.TD中,有步长限制时:

式中,
是基于策略
生成的关于状态s的分布
进一步就得到了梯度的表达式:

策略梯度就是AC中的A
Actor:从下图可以看出,就是输入智能体观察到的图像(对计算机而言就是矩阵,向量),输出智能体可能采取的动作概率分布。

进一步我们要衡量Actor的优劣,基于Actor可以得到一系列回报,计算平均回报,比较策略的优劣R就是上文的J。


然后我们想求得最优的Actor,(R就是上文J的延深),使用梯度上升法,进而得到:

