简介:本项目为连续动作空间下的强化学习提供了基于PyTorch框架的DDPG算法实现,适用于各类动态环境中的智能体控制任务。
PyTorch-ActorCriticRL 是一个使用 PyTorch 实现的连续动作 actor-critic 算法框架。该算法采用 DeepMind 的深度确定性策略梯度(DDPG)方法来更新演员网络与评论者网络,并在执行确定性策略的同时于连续动作空间中进行探索。
具体来说,DDPG 是一种基于策略梯度的方法,它利用随机行为策略来进行探索,在这种情况下是使用了 Ornstein-Uhlenbeck 方法。同时输出一个确定性的目标策略,这使得学习过程更加稳定和有效。
政策估算(演员部分):Actor 网络由三层神经网络构成,该网络接收状态输入,并输出应该执行的动作 a 作为 Pi 的结果。
政策评估(批评者部分):评论者网络同样包含三层结构的神经网络,它接受状态 s 和相应的动作 a 输入,然后计算出 Q(s, a) 表示的状态-动作值函数。
演员优化的目标是通过最小化损失来调整策略:
\[ \min -Q(s,\pi (s)) \]
对于批评者的优化,则旨在减少如下形式的损失以改进价值估计:
\[ L2(r + \gamma * Q(s,\pi_{target}(s))) - Q(s,a) \]
这里,\(r\) 是即时奖励,而 \(γ\) 则是折扣因子。