深度确定性策略梯度(DDPG)

1.从随机策略到确定性策略

        从DDPG这个名字看,它是由D(Deep)+D(Deterministic )+ PG(Policy Gradient)组成。PG(Policy Gradient)我们在强化学习(十三) 策略梯度(Policy Gradient)里已经讨论过。那什么是确定性策略梯度(Deterministic Policy Gradient,以下简称DPG)呢?

        确定性策略是和随机策略相对而言的,对于某一些动作集合来说,它可能是连续值,或者非常高维的离散值,这样动作的空间维度极大。如果我们使用随机策略,即像DQN一样研究它所有的可能动作的概率,并计算各个可能的动作的价值的话,那需要的样本量是非常大才可行的。于是有人就想出使用确定性策略来简化这个问题。

        作为随机策略,在相同的策略,在同一个状态处,采用的动作是基于一个概率分布的,即是不确定的。而确定性策略则决定简单点,虽然在同一个状态处,采用的动作概率不同,但是最大概率只有一个,如果我们只取最大概率的动作,去掉这个概率分布,那么就简单多了。即作为确定性策略,相同的策略,在同一个状态处,动作是唯一确定的,即策略变成:

\pi _{\theta }(s)=a

2.从DPG到DDPG

        在看确定性策略梯度 DPG 前,我们看看基于 Q 值的随机性策略梯度的梯度计算公式:

        其中状态的采样空间为 ρπ, ∇θlogπθ(s,a) 是分值函数,可见随机性策略梯度需要在整个动作的空间 πθ 进行采样。 

        而DPG基于Q值的确定性策略梯度的梯度计算公式是:

        跟随机策略梯度的式子相比,少了对动作的积分,多了回报 Q 函数对动作的导数。
        而从 DPG 到 DDPG 的过程,完全可以类比DQN到DDQN的过程。除了老生常谈的经验回放以外,我们有了双网络,即当前网络和目标网络的概念。而由于现在我们本来就有 Actor 网络和Critic 两个网络,那么双网络后就变成了4个网络,分别是:Actor 当前网络,Actor 目标网络,Critic 当前网络,Critic 目标网络。2个Actor网络的结构相同,2个Critic网络的结构相同。那么这4个网络的功能各自是什么呢?

 3.DDPG的原理

强化学习(十六) 深度确定性策略梯度(DDPG) - 刘建平Pinard - 博客园 (cnblogs.com)

你可能感兴趣的:(算法,python,开发语言)