Skip to content

确定性策略梯度

📅 发表于 2025/09/01
🔄 更新于 2025/09/01
👁️ -- 次访问
📝 0 字
0 分钟
rl-theory
#连续动作
#确定性策略
#随机性策略
#DPG
#DDPG
#TD3
#Actor-Critic
#Q_估计
#Q_target
#目标网络
#经验回放
#OU噪声
#TD3
#双Q网络
#Actor 延迟更新
#Critic 噪声正则化

背景

离散和连续动作

离散连续动作处理方法

随机 vs 确定

  • 随机性策略πθ(atst),输出概率分布,依概率采样动作,输出有随机性
  • 确定性策略μθ(st),输出具体动作,不受概率影响,输入相同,输出也相同

离散 vs 连续

  • 离散动作:输出加softmax,使概率和为1,依概率选择即可
  • 连续动作:输出值做缩放到目标区间即可,比如tanh -> [-1, 1], 扩展至小车速度[-2,2],乘以2即可

离散动作和连续动作

随机性策略、确定性策略。

离散、连续动作转换

确定性PG算法

DPG

DDPG的初衷是为了使DQN支持连续动作,架构类似Actor-Critic,但比A3C提出的早1年(2015)。

Deterministic Policy Gradient

问题&背景

  • DQN 不支持连续动作:动作通过Q函数做贪心argmax间接得到
  • 动作空间是连续的无法通过遍历得到最好动作。
  • 目标用策略a=μ(s)找到使Q(s,a)值最大的动作a,输出确定性动作

核心思想

  • Critic-Actor 架构
    • CriticQw(s,a),评估(s,a)的价值;
    • Actorμθ(s)适配连续动作
  • 求解μθ:
    • 目标:使Q(s,μθ(a))最大
    • 求导:用Q对μθ求导θQ(s,μθ(s))
      • 梯度链式法则先对a求导再对θ求导
    • 再利用梯度上升法最大化函数Q,得到Q值最大的动作
θJ(θ)=Esvπβ[θQ(s,μθ(s))θ]θJ(θ)=Esvπβ[aQwμ(s,a)|a=μθ(s)aθμθ(s)θ]
  • 本质:DPG沿用DQN思想寻找最大Q值动作,没做真正意义上的梯度更新

Actor的任务是找到最大Q的a值。

网络结构

DPG vs DQN
  • DQN:给定状态,通过2步求解动作,估计Q函数贪心选择动作
  • DPG:给定状态,通过1步求解动作Actor=μθ(st) 直接输出动作值
  • DQN的Q函数 相当于 DPG中的Critic

DDPG

核心思想

Deep Determinisitic Policy Gradient

核心思想

  • 关键概念
    • 深度神经网络
    • 确定性输出确定性动作,适用于连续动作
    • 策略梯度使用策略网络单步更新

DDPG=DPG+技巧

  • DQN技巧
  • 其他技巧
    • 引入噪声增加策略探索

Actor-Critic 架构

Actor-Critic

整体流程

  • 演员:根据舞台状态做出动作
  • 评委:根据舞台状态、演员动作,进行打分 Qw(s,a)
  • 演员:根据评委打分调整自己策略,更新参数θ争取下次做的更好
  • 评委:根据观众反馈/环境反馈,调整打分策略,更新参数w让评的更准

关键点

  • 评委最终目标:让演员的表演,尽可能获得观众更多的掌声从而最大化未来总收益
  • 演员不关注观众,只迎合评委评委需根据观众评的更准

优化目标

DDPG 优化目标

两个网络优化

  • 策略网络:策略梯度
θJ(θ)=Esvπβ[aQwμ(s,a)|a=μθ(s)aθμθ(s)θ]
  • Q网络
    • Q_target:用真实奖励r和下一步的Q(st+1,a)来你和未来奖励Q_target
    • Q_估计:当前Q网络输出
    • Q_估计 去逼近Q_targetMSEloss

关键技巧

关键技巧

1. 目标网络

  • 策略网络(actor)和Q网络(actor)均各有1个目标网络,一共4个网络,来稳定训练
  • 固定目标网络,隔一段时间再更新

2. 经验回放

  • 数据是s,a,r,s,存到缓冲区,异策略算法

3. OU噪声/高斯噪声

  • 核心思想:策略是直接输出动作,则在输出值上加一个噪声

  • 高斯噪声:不相关、均值为0,简单、效果更好。

  • OU噪声:自回归随机过程,相比高斯有优点:

OU噪声

定义

  • 自回归随机过程,高斯噪声+回归项。
    • θ 通常是固定的,调整μ,σ即可;dWt是随机项,布朗运动等。
dxt=θ(μxt)dt+σdWt
  • 在复杂环境才能体现出优点。

相比高斯噪声的优点

  • 探索性:具有持续、自相关的特性,更加平滑,有助于探索广泛空间
  • 稳定性:平滑特性,让训练更稳定
  • 控制幅度:通过调整参数控制幅度,可以平衡探索和利用
    • 高方差:增强探索;小方差:增强利用性
  • 可控性:逐渐回归到均值,可以逐渐减少探索性

优缺点

DDPG 优缺点

优点

  • 采用确定性策略:适用于连续空间;确定性策略更容易优化和学习,可缓解连续动作高方差问题
  • 高效的梯度优化:策略梯度处理高维状态动作空间;Actor-Critic结构,利用Critic辅助优化策略
  • 经验回放和目标网络:减弱样本相关性、提高利用率;稳定训练过程,避免Q估计和目标值的相关性问题

缺点

  • 只适用于连续动作空间
  • 高度依赖超参数:DQN超参、OU超参等
  • 高度敏感初始化条件:
  • 容易陷入局部最优:采用确定性策略,难以找到全局最优;需要噪声策略或其他探索方法。

TD3/Twin Delayed DDPG

双Q网络

双Q网络

核心思想

  • 使用2个Critic网络,Qw1Qw2,计算TD误差时,取两个Q值中较小的那个。
yt=rt+1+γmini=1,2Qwi(st+1,μθ(st+1))
  • 目的:减少Q值过估计,提高算法稳定性和收敛性。

双Q网络 vs DoubleDQN

  • DoubleDQN:两个Q网络交替来选动作和做评估
  • Twin Q:只在在Critic上做文章,选最小的

Actor 延迟更新

Actor 延迟更新

背景

核心思想

  • Actor更新频率低于Critic,低一个数量级
    • 如Critc更新10次,Actor只更新1次

优点

  • 提高Critic更新频率,来减少值函数估计
    • 降低了领导决策的失误率

缺点

  • 只让Critic误差不要过多影响到Actor,没有从根本上考虑改进Critic误差问题治标不治本

Critic 噪声正则化

Critic 噪声正则化

背景

  • Critic 本身带来的误差、不稳定问题

核心思想

  • 给Critic输入增加一个噪声提高抗干扰性,来提高稳定性
  • 同时为噪声加一个裁剪,防止噪声过大
y=rt+1+γQw(st+1,μθ(st+1)+ϵ)ϵclip(N(0,σ),c,c)
总访客数:   ·   总访问量:
PLM's Blog @ 2016 - 2025