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 网络。
相关推荐
小师兄吃牛肉3 分钟前
Java语法 | 多重循环
java·开发语言·python
Han.miracle17 分钟前
MySQL InnoDB:MVCC、记录锁、间隙锁、二级索引MVCC底层原理
java·开发语言
.YM.Z25 分钟前
C++——【红黑树】原理详解:定义、性质、插入变色与旋转实现
开发语言·c++
jidaowansui37 分钟前
B3643 图的存储———>数组模拟邻接矩阵
算法
y1su1 小时前
Leetcode 二分模板
java·数据结构·算法·leetcode·排序算法
youshi66681 小时前
平衡车——PID算法优化
stm32·单片机·嵌入式硬件·算法·pid·平衡车
leisoo80971 小时前
融资融券数据怎么查两融指标含义与杠杆观察方法 IG50免费开源股票数据API接口
开发语言·jvm·数据库·python·json
霸道流氓气质1 小时前
多Agent通信机制与协议设计完全指南:从FIPA-ACL到A2A/MCP的Java生产级实战
java·开发语言
weixin_419658311 小时前
CANoe 使用指南:从输出窗口到数据回放的完整实战教程
开发语言·功能测试·车载系统·自动化·汽车