dpg
1、确定性策略梯度(Deterministic policy gradient)DPG
累积折扣奖励
策略梯度
J()和策略梯度与值函数有关
1.1、Actor-critic
Actor是策略网络,做动作选择(空间探索)
Critic是值函数,对策略函数进行评估
TD-error就是Critic告诉Actor的偏差
将策略梯度的框架扩展到确定性策略,确定性政策梯度定理实际上是随机政策梯度定理的一个极限情况
当概率策略的方差趋近于0的时候,就是确定性策略:
1.2 兼容函数近似
兼容数逼近器:critic 使得可以用替代,而不影响确定性策略梯度
以下定理适用于on-policy 和 off-policy
2、深度确定性策略(DDPG)
使用深度神经网络去近似值函数和策略梯度网络
- 采用经验回放方法
- 采用target目标网络更新(解决训练的网络不稳定问题)
- AC框架
- 确定性策略梯度
2.1、算法流程图
Actor:输入为状态S,输出为选取的动作Action
Critic:输入为动作Action和状态S,输出为评价(reward)
2.2、算法原理
(1) 初始化
1:随机初始化Actor网络和Critic网络
2:初始化target网络,复制actor和critic
3:初始化Replay Buffer R,用于打乱数据间相关性,使得数据独立同分布
(2)训练Episode
5:初始化一个随机的N,相当于action的探索度
6:获得观察到的状态
8:根据策略网络的输出以及探索度(噪音)选择动作
9:执行action,得到reward和新状态
存储和读取Replay Buffer R
10:将序列存储到R
11:再随机批量读取R中序列进行学习
注:由于强化学习过程学习过程的序列之间有相关性,一般batch-size= 64,128,256
更新Critic网络结构
12:定义
13:使用RMSE误差,更新时直接更新值函数的损失
更新Actor网络结构
15:直接更新Actor的策略梯度
更新target网络参数
采用soft updating方式,用延迟更新