DRL(五)——DDPG

本文深入探讨了DDPG算法,一种用于解决连续动作空间问题的深度强化学习方法。文章对比了QLearning在离散动作空间的表现,并阐述了在连续动作空间中如何通过DDPG寻找最优动作。介绍了DDPG的实现原理及代码实践,为读者提供了清晰的学习路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在我的笔记DRL(四)——value function中,大部分讲了Q Learning的算法、存在的问题和解决的措施。这一个笔记的内容是紧接上一篇的。
为什么要提出DDPG呢?
因为不管是DQN也好,DDQN也好,都是离散动作的,就是说,action是有限的。然而很多时候action都是连续的,这时候就需要新的方法了。

在连续动作空间中怎样选择最优action呢?

我们知道,在离散动作的Q Learning中,我们是通过 arg ⁡ a   m a x   Q ( S ′ , a ′ ) \arg_a~max~Q(S',a') arga max Q(S,a)来选择最大的Q值对应的动作a。但是如果是连续动作,我们就不太可能计算出所有动作的Q值了。
解决办法肯定是有的!

  1. sample several actions from continuous action space。这种方法比较简单但是就是不够准确。
    在这里插入图片描述
  2. CrossEntropy Method
  3. use function class that is easy to optimize, like the Normalized Advantage Function. 这种方法虽然很容易得到max,但是有其他弊端。
  4. learn an approximate maximizer——DDPG

我们训练一个 μ(θ) ,通过这个能够得到Q最大的动作。
在这里插入图片描述
然后完整的DDPG就是这样:
在这里插入图片描述
因为Q Learning是deterministic policy,这一点与AC是不同的,AC是stochastic policy。μ就仅仅是找出arg max。

实际操作一个DDPG

看了很多代码,各种复杂的有,跑不了的也有,……最后还是找到一个可以方便使用的。
代码的话,使用了两个AC,为了soft replacement,非常简洁。算法也和课程里的不一样:
在这里插入图片描述
怎么说,这个清楚明了吧。
具体解析参考这个大佬写的

这是在下手动整理的算法
在这里插入图片描述

一些Q Learning的小技巧

在这里插入图片描述
在这里插入图片描述

### 关于DDPG算法中的奖励函数设计与实现 在深度强化学习(Deep Reinforcement Learning, DRL)中,奖励函数的设计对于模型的学习效果至关重要。DDPG(Deep Deterministic Policy Gradient)是一种用于处理连续动作空间的策略梯度方法[^1]。它通过Actor-Critic架构来优化策略价值函数。 #### 奖励函数的作用 奖励函数定义了智能体的目标,在DDPG中,奖励信号被用来指导actor网络如何调整其参数以生成更优的动作序列。通常情况下,奖励函数应反映任务的具体目标,例如最大化累积回报或最小化误差[^2]。 #### 设计原则 为了使DDPG能够有效收敛并解决特定问题,奖励函数需满足以下几个条件: 1. **稀疏性 vs 密集性**: 如果环境提供的是稀疏奖励,则可能导致训练过程不稳定;因此建议尽可能构建密集型奖励机制以便更好地引导探索行为。 2. **平滑性可微分性**: 考虑到DDPG依赖梯度下降更新权重,所以理想状态下的奖励应当具备良好的数学性质——即具有较高的平滑程度以及全局范围内均可导的特点[^3]。 3. **尺度规范化**: 对不同维度上的特征赋予合理比例关系非常重要,这有助于加速收敛速度同时也防止某些方向上过早饱现象发生。 #### 实现方式 实际编码过程中可以采用如下形式表示简单的线性组合式奖励结构: ```python def compute_reward(state, action, next_state): # 定义基本成分项 goal_distance = np.linalg.norm(next_state[:2]) # 到达终点的距离作为负向指标之一 control_effort = np.sum(np.square(action)) # 控制力度成本用作惩罚因子 reward = -(goal_distance + 0.1 * control_effort) return float(reward) ``` 上述例子展示了在一个假设场景下计算即时奖励的方法,其中包含了两个主要部分:一是基于当前位置与目标位置之间欧几里得距离衡量进展状况;二是通过对执行操作所耗费能量加以约束从而鼓励节能高效的行为模式. 需要注意的是,具体的表达式会依据应用背景有所变化,比如机器人操控、自动驾驶等领域都有各自独特的考量因素需要纳入考虑范围之内. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值