关于RL 和DRL中的算法总结

其中: RL 分为基于价值的学习和基于策略的学习 和 AC 架构的

价值学习

DQN

DQN 解决的是连续状态的问题 不能解决连续动作的问题
DQN = Q_learing+网络
使用了价值网络 q(..w)

DQN 训练的过程

基础的DQN 就是 训练Q网络 更新w 参数
代码中梯度下降用的是下面这一张

这里有个问题 下面这张图片 中有不一样的地方 即 Gradient descent
下面的dt 是反向传播得到的

DQN的改进之经验回放


DQN的改进之神经网络

使用到了优势函数A* = Q(s,a) - V(s)

DQN 改进Bootstrapping Double DQN

出现 高估价值问题 V 为啥会产生?
解决方法:
可以采用两种网络 一种 targetnetwork 二种:double DQN (allevate 观测值)
这里 只更新target network


两种网络中的参数更新

比较两种网格中的TD Target yt

double DQN 的优势原因 莫凡中那个使用了两个网络
根据bootstraping 新目标值 = 原目标值 + (原目标值-新评估值)
如果新的评估值和目标值 是在同一个网络下取的。就可以能会出现高估问题
所以:可以通过评估值和目标值锁定在不同的网络中 ,已减缓这个问题

DQN的改进之固定Q目标(Fixed Q-targets)

以前的DQN 中只有一个网络即 Q网络,而每轮更新都会改变 Q网络的架构,则相当于是我们在射击一个移动靶,训练不会很稳定。
Q_network用于训练更新。
target_Q_network 是固定网络,用于计算target。即max(Qt+1) 固定轮数将Q_network赋给target_Q_network 网络。

DPG

它源于 DQN 而不是AC架构
确定策略网络 作用在策略网络中 critic
价值网络 作用在价值网络中 actor
使用在AC架构中 有两个网络一个价值网络一个策略网络
价值网络: Q
使用梯度上升。
策略网络:Π
当价值网络固定的情况,如何提高价值网络 这里还解释不了 看到dpg

DDPG

AC架构
用到了四个网络
后面两个网络是用来去固定前面两个网络 中求Q'的值
actor critic actor_target critic_target
梯度上升,在寻找最大值。 actor寻找Q值最大的动作

Critic和DQN有些许不同,在DQN,我们会计算Q(s),把该state下的所有动作的q值都输出,然后从中挑选q值最大的一个动作。

而在DDPG,我们会把动作a也输出到network,由network去评判这个action的q值。所以我们需要把a和s一起放入到Critic中去。Q(s,a)

TD3

六个网络
DDPG 的优化版本

  1. 使用了double DQN

策略学习

使用了策略网络 Π(..theata) = V(..theata)
一个蒙地卡罗+神经网络
PG = 一个蒙地卡罗+神经网络
策略网络图

策略网络中可以用于连续和离散的动作

基于policy 学习的 BaseLine 这里unknown

注:标题 基于policy 指训练策略函数Π(theta) Baseline 指的是动作价值函数q 用来辅助策略网络的训练

加上baseline 的原因是 可以收敛的更快
这里的b 可以用b (baseline)== VΠ(st) 来进行表示
用g(A) = V()/theta

这里可以用 蒙特卡洛近似 Q == ut b=V(theta) == v(w)

策略网络用来训练agent theate
价值网络起到辅助的作用,当作baseline,使策略梯度更好的收敛,帮助训练策略网络

更新策略网络
梯度上升
更新价值网络
梯度下降

AC 架构

AC架构有一个好处。这个好处就是解决了连续动作空间的问题。
**AC是在线策略? **
PPO应用了importance sampling,使得我们用行为策略获取的数据,能够更新目标策略,把AC从在线策略,变成离线策略。

基本的AC

网格+SARAS
使用了actor 和critic 这两个网络 = 策略网络 Π(..theata)和 价值网络 q(..w)

  1. AC 的训练总流程

  2. Q网格的训练流程

  3. Π网格的训练流程
    使用的是带权重梯度更新

A2C架构

区别就是:价值网络是使用的是V(s)而不是Q(a,s) 省去了一个动作a变量。更好训练
这里用了一个多步TD算法 经验回放是:观测一组 观测值 统一进行更新
多部TD 算法:就是 更新st状态的Q值时,用的target不一样 他是t+m时刻的价值,不是t+1时刻的价值

A2C结合多部TDtarget 的训练过程

PPO

AC架构
重要性抽样 importing samping

posted @   精通+1  阅读(238)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示