DDPG(Deep Deterministic Policy Gradient)

本文介绍了DDPG算法,它是强化学习中的一种model-free方法,结合了Actor-Critic和DQN,用于解决连续控制问题。DDPG通过Actor网络确定动作,并用Critic网络评估动作价值,同时利用Target网络和BatchNormalization增强学习稳定性。文章包括公式理解、伪代码分析和实验结果讨论,并提供了代码实现链接。
摘要由CSDN通过智能技术生成

Hi,这是第二篇算法简介呀

论文链接:“Continuous control with deep reinforcement learning.” ,2016

文章概述

  这篇文章在确定性策略的基础上,结合Actor-Critic,提出了一种model-free的算法。直接输入原始像素,端到端(end-to-end)学习策略,输出确定动作。
  2000年提出PG(Policy Gradient)算法,通过改变动作的出现概率来优化策略,使得total reward最大化, L ( θ ) = − ∑ log ⁡ π ( a ∣ s , θ ) f ( s , a ) L(\theta)=-\sum \log \pi(a | s, \theta) f(s, a) L(θ)=logπ(as,θ)f(s,a)(损失函数通常需要最小化,所以加一个负号)。其中, f ( s , a ) f(s,a) f(s,a)为评价指标(reward或 Q Q Q A A A,或使用TD)。
  2013年提出DQN(Deep Q-Network)算法
  2014年提出DPG(Deterministic Policy Gradient)算法。PG算法无法解决连续控制的问题,因为PG算法学习得到了随机策略之后,在每一步行为时还需要对得到的最优策略概率分布进行采样,才能获得action的具体值;而action通常是高维的向量,需要耗费大量计算。DPG算法直接对轨迹的价值函数求导,即 ∇ θ v μ θ ( s ) = ∇ θ [ Q μ ( s , μ θ ( s ) ) ] \nabla_{\theta} v_{\mu_{\theta}}(s)=\nabla_{\theta}\left[Q_{\mu}\left(s, \mu_{\theta}(s)\right)\right] θvμθ(s)=θ[Qμ(s,μθ(s))](链式求导可得, ∇ θ v μ ( s ) = ∇ μ θ ( s ) [ Q μ ( s , μ θ ( s ) ) ] ∇ θ μ θ ( s ) \nabla_{\theta} v_{\mu}(s)=\nabla_{\mu_{\theta}(s)}\left[Q_{\mu}\left(s, \mu_{\theta}(s)\right)\right] \nabla_{\theta} \mu_{\theta}(s) θvμ(s)=μθ(s)[Qμ(s,μθ(s))]θμθ(s)),因此它不用完成最优动作选取的过程,每一步的动作通过函数 μ μ μ直接获得确定的值。DPG值函数评估采用的是Q-learning的方法,使用TD(0)估计动作值函数并忽略重要性权重,利用replay buffer中随机抽取的数据集对策略进行训练。
  2016年提出DDPG(Deep Deterministic Policy Gradient)算法,是Actor-Critic和DQN的结合,同时加入了BatchNormalization对输入进行预处理。Actor网络对应DPG算法,将特定state映射到特定action,Critic网络则对应Q-learning,使用价值函数对动作进行评估。Target网络的参数使用软更新,而不是直接复制Policy网络的参数,虽然使得学习变化放缓,但是增强了学习的稳定性。为了可以不断地探索空间,在探索策略 μ ′ \mu' μ通过OU(Ornstein-Uhlenbeck)过程添加噪声样本。

公式理解

  • 未来折扣回报
    R t = ∑ i = t T γ ( i − t ) r ( s i , a i ) R_{t}=\sum_{i=t}^{T} \gamma^{(i-t)} r\left(s_{i}, a_{i}\right) Rt
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值