美文网首页
Continuous control with deep Rei

Continuous control with deep Rei

作者: Junr_0926 | 来源:发表于2018-12-10 23:03 被阅读0次

    1. 介绍

    这篇论文将DQN应用于动作空间是连续的情况。我们知道,DQN的输入通常是高纬度的观测空间(例如图像像素),输出则是离散的动作空间。生活中有相当一部分问题,动作空间是连续的。DQN无法直接用于这些问题。
    一种方式是离散化动作空间。但是问题多多
    这篇论文中,作者提出了一种model-free, off-policy actor-critic算法来在连续的动作空间中使用DQN。
    通常使用一个复杂的非线性的函数来拟合价值函数会导致不稳定,DQN通过两种方式来克服不稳定,一是,网络从replay buffer来学习,属于off-policy,减少了样本之间的关联;二是网络和一个目标网络一同训练,这使得学习的目标更加稳定。
    论文提出的算法称为 DDPG

    2. 算法

    Q-learning的主要方式就是最小化如下loss


    4

    其中


    5

    在连续的动作空间,很难直接应用Q-learning,因此在每一步都要对最优的a_t进行求解,这是非常困难的。为此,这里采用基于actor-critic approach的DPG算法。
    DPG算法包含了一个actor函数\mu (s | \theta^\mu),它指定了从状态到动作的确定性的映射,也就是策略。还包含了一个critic Q(s,a),它通过bellman方程学习。
    下面公式为policy的梯度,也就是actor函数的梯度。

    6

    在论文DPG中证明了上式是policy gradient。

    和Q-learning一样,使用一个非线性函数拟合会导致无法保证收敛。论文的贡献就是在DQN的启发下,对DPG进行了修改,使得它能够用于训练神经网络,也就是Deep DPG(DDPG)。
    算法如下:


    DDPG

    在增强学习问题中应用神经网络的一个困难是,很多的优化算法基于样本独立同分布的假设。显然,增强学习环境产生的样本不满足这个假设。除此之外,为了有效训练,通常还会采用minibatch。
    像DQN中一样,论文采用了replay buffer来克服这个困难。根据一个exploration策略,采样一些样本(s_t,a_t,r_t,s_{t+1})存储在replay buffer中。训练时就从这里取样本。
    直接使用神经网络,实现Q-learning通常会不稳定。因此网络Q(s,a|\theta^Q) 同时用于计算target value,和更新。论文中采用的方法是类似DQN中的target network,但是更新时不是直接拷贝,而是使用soft target updates。作者首先拷贝一份actor和critic网络:Q'(s,a|\theta^{Q'})\mu'(s|\theta^{\mu'})。它们用于计算target value。它们的参数通过慢慢地跟踪learned network来更新:\theta' \leftarrow \tau \theta + (1 - \tau) \theta'\tau远远小于1,这意味着target value也会改变地非常慢。
    在实际问题中,一些低维度的特征往往单位不同,例如位置和速度,这可能使得网络难以高效训练。
    一种方式是认为统一。论文使用batch-normalization来克服这个问题。

    另一个连续动作空间的问题是exploration。论文中通过加入噪声来构造exploration policy\mu'\mu'(s_t) = \mu(s_t|\theta_t^\mu) + N

    相关文章

      网友评论

          本文标题:Continuous control with deep Rei

          本文链接:https://www.haomeiwen.com/subject/uewqhqtx.html