当前位置: 首页 > news >正文

强化学习Double DQN模型详解

Double DQN 模型详解

在这里插入图片描述

背景
  1. Q-learning 的局限性
    传统 Q-learning 在计算目标 Q 值时使用贪婪策略(max 操作),导致对真实 Q 值的系统性高估(过估计 overestimation)。这种高估源于环境随机性、函数近似误差或噪声,通过 max 操作被放大,进而影响策略稳定性。

  2. DQN 的改进与遗留问题
    DQN(Deep Q-Network)通过经验回放(缓解数据相关性)和目标网络(固定参数,稳定训练)解决了高维状态空间下的 Q-learning 问题。然而,DQN 仍沿用传统 Q-learning 的目标值计算方式,未解决过估计问题。

  3. Double Q-learning 的启发
    Hado van Hasselt 在 2010 年提出 Double Q-learning,通过解耦动作选择与价值评估,使用两个独立的 Q 函数交替更新,减少过估计。Double DQN 将这一思想与 DQN 结合,形成了更鲁棒的算法。


原理
  1. 目标 Q 值的计算方式
  • 传统 DQN
    Y DQN = r + γ ⋅ max ⁡ a ′ Q target ( s ′ , a ′ ) Y^{\text{DQN}} = r + \gamma \cdot \max_{a'} Q_{\text{target}}(s', a') YDQN=r+γamaxQtarget(s,a)
    使用目标网络直接选择并评估动作,导致同一网络参数同时影响选择和评估,加剧过估计。

  • Double DQN
    Y DoubleDQN = r + γ ⋅ Q target ( s ′ , arg ⁡ max ⁡ a ′ Q current ( s ′ , a ′ ) ) Y^{\text{DoubleDQN}} = r + \gamma \cdot Q_{\text{target}}\left(s', \arg\max_{a'} Q_{\text{current}}(s', a')\right) YDoubleDQN=r+γQtarget(s,argamaxQcurrent(s,a))

    • 动作选择:由当前网络 Q current Q_{\text{current}} Qcurrent 决定最优动作 a ′ a' a(即 arg ⁡ max ⁡ \arg\max argmax)。
    • 价值评估:目标网络 Q target Q_{\text{target}} Qtarget 计算所选动作 a ′ a' a 的 Q 值。
    • 核心思想:分离选择与评估,避免单一网络的偏差被放大。
  1. 网络结构与训练流程
    • 沿用 DQN 的双网络结构(当前网络 + 目标网络),无需新增网络。
    • 经验回放:存储转移样本 ( s , a , r , s ′ ) (s, a, r, s') (s,a,r,s),随机采样以打破相关性。
    • 目标网络更新:定期将当前网络参数复制到目标网络(软更新或硬更新)。
    • 损失函数:均方误差(MSE)损失,优化当前网络:
      L = E [ ( Y DoubleDQN − Q current ( s , a ) ) 2 ] \mathcal{L} = \mathbb{E}\left[\left(Y^{\text{DoubleDQN}} - Q_{\text{current}}(s, a)\right)^2\right] L=E[(YDoubleDQNQcurrent(s,a))2]

优势
  1. 减少过估计
    通过解耦动作选择与评估,显著降低 Q 值的高估程度,实验证明在 Atari 等环境中平均 Q 值更接近真实值。

  2. 提升策略稳定性
    过估计的减少使得策略更新更可靠,尤其在动作空间复杂或奖励稀疏的任务中表现更优。

  3. 实现成本低
    仅需修改目标值计算方式,无需增加网络参数或显著改变训练流程,易于与 DQN 的其他改进(如 Prioritized Experience Replay)结合。

  4. 实验性能优越
    在 Atari 2600 基准测试中,Double DQN 在多数游戏上超越 DQN,尤其在《Seaquest》《Space Invaders》等复杂环境中得分提升显著。


劣势
  1. 未完全消除过估计
    虽然缓解了问题,但目标网络仍可能存在低估或高估,尤其在训练初期网络未收敛时。

  2. 依赖当前网络的选择质量
    若当前网络 Q current Q_{\text{current}} Qcurrent 对动作的选择不准确(如探索不足),目标网络评估的 Q 值可能偏离真实值。

  3. 不解决所有偏差问题
    环境随机性、函数近似误差等仍可能导致其他形式的估计偏差,需结合其他技术(如 Dueling 架构)进一步优化。


总结

Double DQN 是 DQN 的重要改进,通过解耦动作选择与价值评估,在几乎不增加计算开销的前提下有效缓解过估计问题,提升了算法的稳定性和最终性能。尽管存在局限性,但其简洁高效的实现使其成为深度强化学习中的基础组件,常与其他技术(如 Prioritized Replay、Dueling DQN)结合,形成更强大的算法(如 Rainbow DQN)。

参考文献

  • Van Hasselt, H., Guez, A., & Silver, D. (2016). Deep Reinforcement Learning with Double Q-learning. AAAI.
  • Mnih, V., et al. (2015). Human-level control through deep reinforcement learning. Nature.

相关文章:

  • C基础笔记_指针专题
  • zk基础—5.Curator的使用与剖析一
  • 【FreeRTOS】二值信号量 是 消息队列 吗
  • FPGA_BD Block Design学习(一)
  • VBA高级应用30例应用4:打开工作薄时进行身份验证
  • 记录vscode连接不上wsl子系统下ubuntu18.04问题解决方法
  • LeetCode 3375 题解
  • LibreOffice 自动化操作目录
  • 常见算法模板总结
  • 高压安全新挑战:新能源汽车三电系统绝缘材料的漏电流与击穿特性研究
  • 如何判断家里的宽带是否有公网IPv4或公网IPv6
  • 14 GIS地类面积统计终极指南:3步速通「栅格VS矢量」双线操作
  • 洛谷 P11962:[GESP202503 六级] 树上漫步 ← dfs + 邻接表
  • 从静态绑定驱动模型到现代设备模型 —— 一次驱动架构的进化之旅
  • 第一讲、IsaacLab创建空场景
  • 【Rust开发】Rust快速入门,开发出Rust的第一个Hello World
  • 【Hadoop入门】Hadoop生态之Hive简介
  • Pycharm常用快捷键总结
  • pytorch小记(十七):PyTorch 中的 `expand` 与 `repeat`:详解广播机制与复制行为(附详细示例)
  • [定位器]晶艺LA1823,4.5V~100V, 3.5A,替换MP9487,MP9486A,启烨科技
  • 郫县网站建设/百度快照优化的优势是什么
  • 建设工程合同 网站/seo优化软件购买
  • 国内logo设计网站/网络广告营销有哪些
  • 做网站都有什么功能/设计模板网站
  • 腾龙时时彩做号软件官方网站/网站结构优化
  • 学校网站怎么做的好处/怎么学seo基础