DPG(确定策略梯度)

基本网络结构:

还是基于Actor-critic网络的一种结构,包含策略网络和价值网络。

这里的策略网络为,但输出不再是概率分布,而是一个确定的实数或向量,输出的动作a是确定的,没有随机性,在机械臂的例子中,输出的是二维向量,因为机械臂有两个动作维度。

这里的价值网络有两个输入,分别是状态s和动作a,输出的是一个实数,即对动作的评价。

我们要做的就是训练这两个网络,让策略函数选取动作越来越好,让价值函数打分越来越准确。

价值网络的训练:

1.观测到一个四元组。

2.根据观测到的t时刻的动作和状态,预测t时刻的价值。

3.预测t+1时刻的价值,这里用到的是把输入到策略网络预测出来的,但是这个并不是要去执行的动作,只是为了代入

4.计算TD error,括号里的部分为TD target。

5.进行梯度下降更新参数w。

策略网络的训练:

更新策略网络要依赖于价值网络,价值网络可以评价动作a的好坏,从而指导策略网络进行改进,策略网络自己不知道动作的好坏,要靠价值网络的输出,价值网络的输出越大,就代表评价越好,动作越好,所以我们要改变策略网络的参数θ,让价值网络的输出越大越好。

目标就是增加价值网络的输出,而价值网络中的a是由策略网络得出的,所以这里的DPG(确定策略梯度)就是价值网络关于θ求导,然后最后一步做梯度上升,来更新参数θ。使得θ的值更好,选取的动作的价值评分更高。

小的改进(用target network):

第四步计算时,用的不再是策略网络和价值网络,而是用新的target network,target network的结构和前者一模一样,但是参数略有不同。

其他的改进方法如下:

 随机策略和确定策略的区别:

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深度确定策略梯度算法(Deep Deterministic Policy Gradient,简称 DDPG)是一种用于连续动作空间的强化学习算法。DDPG是基于确定策略梯度算法(Deterministic Policy Gradient,简称 DPG)的改进,同时利用了深度神经网络来近似值函数和策略函数。 在DDPG中,策略函数和值函数都是用深度神经网络来表示。相比于传统的强化学习算法,DDPG在处理高维连续动作空间中的问题时更加有效。 DDPG算法主要包含两个部分:Actor和Critic。Actor的作用是输出动作,Critic的作用是评估动作的价值。Actor和Critic在训练过程中相互协作,通过策略梯度和价值函数梯度来更新模型参数。 具体来说,DDPG算法的训练过程包括以下几个步骤: 1. 首先,使用Actor来选择动作,并将动作作为输入传递给环境。环境返回奖励和下一个状态。 2. 使用Critic来评估当前状态下采取该动作的价值,并计算出TD误差。 3. 使用TD误差来更新Critic的参数,以使其能够更准确地评估当前状态下的价值。 4. 使用Critic的输出和当前状态来计算Actor的策略梯度,并使用梯度下降法来更新Actor的参数,以使其生成更好的动作。 5. 重复1-4步,直到达到预定的训练次数或者训练误差满足要求。 总之,DDPG算法是一种基于策略梯度和值函数梯度的连续动作空间强化学习算法,它利用深度神经网络来近似值函数和策略函数,从而解决了高维连续动作空间问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值