PPO算法与DDPG算法的比较

一、PPO算法

1. actor网络

Actor 网络输出在给定状态 s t s_t st下采取每个动作的概率分布,通常使用一个神经网络表示: π θ ( a t ∣ s t ) \\pi_\\theta(a_t \| s_t) πθ(at∣st).PPO 迭代地更新这个 policy,以改进策略并提高性能。

2. Critic网络

V ϕ ( s t ) V_\\phi(s_t) Vϕ(st)用于估计状态的值函数。Critic 网络的目标是学习一个准确估计的状态值函数,以便计算优势函数(Advantage Function)。这个 value 网络帮助计算 advantage(优势),即在某个状态下执行某个动作相对于平均水平的优越性。

二、DDPG算法

1. actor网络

DDPG 使用一个 actor 网络 μ θ ( s t ) \\mu_\\theta(s_t) μθ(st),其输出是在给定状态下采取的动作。与 PPO 不同,DDPG 的输出是连续的动作,而不是动作概率分布。

2. Critic网络

DDPG 有一个 critic 网络 Q ϕ ( s t , a t ) Q_\\phi(s_t, a_t) Qϕ(st,at),用于估计在给定状态和动作下的 Q 值(动作的质量)。这个 Q 值用于计算 policy gradient,以更新 actor 网络。

Critic 网络的训练目标是最小化 Q 值的均方误差,以使其能够准确估计累积奖励。

三、比较

  • 更新目标:PPO 通过迭代更新 policy 来提高性能 ,而 DDPG 则使用 critic 网络的 Q 值来计算 policy gradient,并更新 actor 网络。
相关推荐
AndrewHZ25 分钟前
【LLM技术全景】阶段总结:技术原理篇核心知识回顾
人工智能·深度学习·算法·语言模型·大模型·llm·芯片开发
峥嵘life1 小时前
Android WiFi 热点 Channel 信道 和 Frequency 频率 转换总结
android·开发语言
小星星闪亮登场1 小时前
2026萌新联赛第三场-- (郑州轻工业大学)
数据结构·c++·经验分享·算法·贪心算法·排序算法·深度优先
wgego1 小时前
基础的反序列化一些总结(php和java)
java·开发语言·笔记
冻柠檬飞冰走茶2 小时前
PTA基础编程题目集 7-8超速判断(C++语言实现)
开发语言·数据结构·c++·算法
玖玥拾2 小时前
LeetCode 88 合并两个有序数组
算法·leetcode
数据皮皮侠AI2 小时前
上市公司数字供应链金融指数(2010-2024)
大数据·人工智能·算法
山峰哥3 小时前
数据库工程与SQL调优:从慢查询到秒级响应的实战之路
java·开发语言·数据库·sql·深度优先·启发式算法
小程故事多_803 小时前
用GRPO算法重塑多智能体系统,从原理落地到复杂任务规划实战
人工智能·算法
wangjialelele3 小时前
Selenium4 + Java Web自动化测试入门指南:从环境搭建到常用操作详解
java·开发语言·前端·测试工具·自动化