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

本文介绍了确定性策略梯度算法DPG,它结合了off-policy和on-policy的优势,适用于连续动作空间。DPG通过Q函数的参数一致性,允许使用off-policy学习。此外,DDPG进一步引入经验回放和目标网络,提高算法稳定性。算法流程包括使用目标网络和滑动平均更新策略和价值网络的参数。
摘要由CSDN通过智能技术生成

一、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))θμ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值