news 2026/7/6 3:41:49

DQN算法reinforceTRPO 算法PPO 算法Actor-Critic 算法DDPG算法总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DQN算法reinforceTRPO 算法PPO 算法Actor-Critic 算法DDPG算法总结

纯价值的DQN算法和纯策略的reinforce相比,前者利用时序差分的思想逐步更新最优的Q,间接隐含推导最优策略(策略选择使Q最大的动作)。
优点是1、可以逐步微调策略(不需要等一条轨迹走完)
2、离线策略样本利用率高。
缺点:策略是隐式的(由 Q 值间接定义),无法直接输出动作的概率分布,只能通过 ε-贪心等启发式方法进行探索和采样。
纯策略的reinforce则是直接利用策略估值梯度来更新策略。缺点是:
1、必须等提条轨迹走完才可以更新策略。
2、在线策略,不可用先前的交互数据迭代。
我们可以思考一下为什么纯价值是离线策略,可以利用历史数据;而纯策略是在线策略,不可以利用历史数据?纯价值方法的目标是找到最优 Q 函数,进而隐式地导出最优策略。它不直接维护一个策略网络,而是通过 Q 值的改进间接优化策略,因此采用不同策略得到的数据只要是好的都可以优化价值函数。而纯策略不同,它评估的是一个策略的价值,用不同策略得出的数据本身就无法参与评估。后续提到的TRPO 算法/PPO 算法本质上就是一个局限优化范围的策略算法,因此肯定是在线策略。而Actor-Critic 算法中的critic函数并没有参与策略梯度计算,只是用Q给了一个权重,因此仍然是一个策略算法,因此是在线的。而DDPG算法中的critic函数则是直接决定了梯度的更新方向,因此可以认为是价值算法范畴,因此是离线的。
3、直接利用策略梯度更新可能会导致网络在初期直接跌入谷底即得到一个超级差的策略,而策略更新必须从这个超级差的策略基础上迭代。这就是前面博客提到的小概率事件 + 参数空间小变动 → 策略跳崖这个事件。REINFORCE用一条轨迹的数据来估计策略梯度,这条轨迹是从旧策略采样出来的,只能反映旧策略的“局部信息”。当这条轨迹中偶然出现了小概率事件 + 高回报的组合,旧策略视角下的梯度就会给出一个“应该大幅提高这个动作概率”的建议。但这个建议是否在新策略视角下仍然合理?REINFORCE完全没有考虑这个问题。也即:缺乏一个评估策略是否能在较大概率下得到提升的机制。
如何解决这一个问题给出了两种解决方案:

  • 既然缺乏一个评估策略是否能在较大概率下得到提升的机制,一种解决思路就是TRPO 算法/PPO 算法划定信任区域在小范围内尝试。TRPO通过KL散度约束,PPO通过剪切操作,都是为了防止新策略偏离旧策略太远。即使旧策略视角下的梯度给出了一个“冒险”的建议,信任区域也会限制更新的步长,防止策略跳崖。
  • 第二种思路就是完善这个评价机制,这就是Actor-Critic 算法/DDPG 算法这种用Q来对新策略的提升可能性上一层保险。Actor-Critic/DDPG引入Critic(价值函数)来评估动作的好坏。Critic是通过大量历史数据(经验回放)训练出来的,它提供的评估比单条轨迹的回报更稳定、更全面。这就像给Actor的更新上了一层“保险”——即使某条轨迹偶然出现了小概率事件 + 高回报,Critic也会给出一个相对保守的评估,不会让策略参数被带偏太远。当然虽然都利用了critic网络,但二者的解决思路有所不同。基础的Actor-Critic 算法利用Q来给策略梯度加权重,这里的优势函数A(s,a) 来自Critic(即Q值或TD误差)。但它只是一个标量权重——它告诉Actor“这次动作有多好”,但它不参与梯度计算。DDPG则是将Q放入策略梯度的链条里,这是一种直接的强绑定,Actor的更新方向完全由Critic的Q值梯度决定。为什么DDPG收敛更快? 正是因为Q直接参与了Actor的梯度计算。基础Actor-Critic中,Actor只能通过“试错-评分-调整”的循环来逐步改进,每次调整的方向由对数概率梯度决定,Q只告诉它“这次好不好”。而DDPG中,Q直接告诉Actor“往这个方向改”,Actor不需要自己去猜测方向,只需要按照Q的指引去执行。这种“直接指导”让DDPG能更高效地利用Q的信息,因此收敛更快。但这种“强行绑定”也有代价:DDPG对Q值估计的准确性要求更高。如果Q值估计有偏差,Actor的更新方向就会被带偏,这也是DDPG需要目标网络、软更新等稳定技巧的原因。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 3:41:07

机器人操作鲁棒性:当灵巧手遇上真实世界的不确定性

机器人操作鲁棒性:当灵巧手遇上真实世界的不确定性前言1 到底是什么是鲁棒?2 两条核心原则:调节与容错3 机制:五个层面,各自为战又必须协同4 几个值得反复琢磨的观点5 未来:挑战远未解决写在最后前言 本文是…

作者头像 李华
网站建设 2026/7/6 3:39:07

2026年7月药房集采助行器5大排行榜

进入2026年下半年,药房集采渠道的助行器市场竞争愈发激烈。随着人口老龄化加速,以及社区康复需求的持续释放,越来越多的药房、社区门诊和养老机构将助行器纳入常规采购清单。然而,面对市场上从几十元到上千元不等的产品&#xff0…

作者头像 李华
网站建设 2026/7/6 3:38:55

大模型性能测试的正确姿势:从GPT-4o到Llama 3的硬核实测方法论

我不能按照您的要求生成关于“GPT5.5”的博文内容,原因如下:第一,GPT-5.5 并不存在。截至2024年,OpenAI 官方从未发布、命名或确认过任何代号为 “GPT-5.5” 的模型。其公开发布的最新通用大模型为GPT-4o(2024年5月发布…

作者头像 李华
网站建设 2026/7/6 3:37:47

我怎么整理一个开发中项目的设计文档和实现思路

很多人写设计文档,最容易遇到两个问题: 要么一开始想写得特别全,结果很快写不下去。 要么完全不写,最后项目做到一半,发现思路已经散在聊天、代码和临时笔记里了。 我后来比较稳定的一种做法是: 设计文档不…

作者头像 李华
网站建设 2026/7/6 3:35:43

Claude Code的完美国产替代小米 MiMo Code安装指南

为什么选国产替代 Claude Code 好用吗?确实好用。但网络环境不稳定,升级偶尔出问题——懂的都懂。国外的东西,国内用总有些限制。 那有没有完美的国产替代?有。小米 MiMo Code,今天手把手教你安装,再配置…

作者头像 李华
网站建设 2026/7/6 3:35:38

Windows 7新功能深入体验:库

在Windows 7中众多改进的新特性中,库(Libraries)功能也许是其中最方便的一项改进了。虽然库功能已经不是一个全新的概念了,但是库功能可以使Windows 7的用户在同一位置访问不同文件夹中的文件。在传统的Windows操作系统中&#xf…

作者头像 李华