当前位置:   article > 正文

【强化学习】确定性策略强化学习-DPG&DDPG算法推导及分析_ddpg算法如何收敛

ddpg算法如何收敛

一、DGP推导

本篇介绍确定性策略梯度算法,该算法主要用于off-policy(on-policy也能用)。在DQN等值函数估计算法中,最终策略的形式是需要对动作状态值函数取极大 a = a r g m a x a ′ Q ( s , a ′ ) a={\rm argmax}_{a'}Q(s,a') a=argmaxaQ(s,a),这种方法只能用在有限的离散动作空间中,无法应用在较大离散空间或是连续的动作空间。

随机策略梯度法的核心公式为
∇ θ J ( θ ) = E τ ∼ π θ [ ( ∑ t = 0 T ∇ θ log ⁡ π θ ( a i , t ∣ s i , t ) ) ( ∑ t = 0 T r ( s i , t , a i , t ) ) ] \nabla_{\theta}J(\theta)=E_{\tau\sim\pi_{\theta}}[(\sum_{t=0}^T\nabla_{\theta}\log\pi_{\theta}(a_{i,t}|s_{i,t}))(\sum_{t=0}^Tr(s_{i,t},a_{i,t}))] θJ(θ)=Eτπθ[(t=0Tθlogπθ(ai,tsi,t))(t=0Tr(si,t,ai,t))]
策略梯度算法直接对轨迹的价值函数求导,因此它不用完成最优动作选取的过程,就算在AC算法中也是使用的 r t + v ( s t + 1 ) − v ( s t ) r_{t}+v(s_{t+1})-v(s_{t}) rt+v(st+1)v(st),不需要选取下一次的动作。但这种方法是on-policy算法,非常依赖与环境交互的过程,并且无法利用之前采样的数据进行更新策略,造成资源的浪费。DQN可以采用off-policy算法进行学习,DPG是将这两种方法的优势相结合。

DPG与DQN都是采用e-greedy的方法与环境进行交互,因为DPG是确定性策略,可以在确定的行动上加上噪声作为随机策略。

DPG与随机策略梯度算法相同,也是直接对轨迹的期望价值函数进行求导,公式推导如下所示
∇ θ v μ ( s ) = ∇ θ [ q μ ( s , μ θ ( s ) ) ] \nabla_{\theta}v_{\mu}(s)=\nabla_{\theta}[q_{\mu}(s,\mu_\theta(s))] θvμ(s)=θ[qμ(s,μθ(s))]
与随机策略不同,确定性策略的价值函数与确定性策略有关,因此求导时应该使用链式法则,如下所示
∇ μ ( s ) q μ ( s , μ ( s ) ) ∇ θ μ θ ( s ) \nabla_{\mu(s)}q_\mu(s,\mu(s))\nabla_\theta\mu_\theta(s) μ(s)qμ(s,μ(s))θμ

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/403525
推荐阅读
相关标签
  

闽ICP备14008679号