来源:ICLR2016
作者:Deepmind
创新点:将Deep Q-Learning应用到连续动作领域continuous control(比如机器人控制)
实验成果:能够鲁棒地解决20个仿真的物理控制任务,包含机器人的操作,运动,开车。。。效果比肩传统的规划方法。
优点:
- End-to-End
- 将Deep Reinforcement Learning应用在连续动作空间
缺点:
- 对于3D赛车,有时候并不能学习到好的policy,说明这样的探索空间的方式存在bug。
改进方向:
- Human-Guided
详细分析
Introduction 介绍
DQN的局限性
Atari 游戏所需的动作是离散的(有时间间隔的输出),相对低维的(只有少数几个动作),而实际的控制问题则是连续的,高维的。DQN无法直接应用到这样的领域,因为连续的值(比如输出一个速度)需要在每一步都作出优化迭代,DQN只是根据动作对Q值做优化。
要直接应用DQN到连续动作领域,最简单的做法就是将连续动作离散化,也就是依然每个时间间隔输出一个动作值,把每个动作也离散化。但这样存在问题:
动作的数量将随着自由度的增加呈指数型增长!
对比一下Atari才4到18个动作,如果变成几千的动作,几乎不可能训练。
并且简单的将动作离散化会忽略动作域的结构(structure of action domain),这对解决很多问题都很重要。
本文的方法概述
本文提出一个 model-free,off-policy,actor-critic 算法,整个工作基于ICML 2014的DPG(Deterministic policy gradient)算法。
算法结合了actor-critic方法和deep Q-network。除了使用deep Q-network的experience replay和fixed target Q-network之外,还使用了batch normalization(一个很新的提升深度学习性能的方法)
实验方法:通过仿真测试各种具有挑战性的物理控制问题。为了达到Raw sensory input,就在模拟器前固定一个摄像头,利用视觉信息进行学习控制(依然是完全类人的方法哦)
算法称为DDPG ,既能通过低维度的传感器信息来学习,也可以通过视觉信息来学习。算法仍然具备很强的通用性,对于不同的任务顶层的结构和参数都固定的。
这个算法的特点就是简洁simplicity,能够简单的应用到更复杂的问题及更大的网络。
算法和传统的方法比较,有时候的性能(使用视觉输入)会比较传统的planner方法好,注意是有时候,说明还有很多改进空间,虽然说这种方法真的很牛。
Background 背景知识
依然是一样的增强学习的基础知识这里不再介绍
Algorithm 算法
要直接应用Q-Learning到连续动作空间是是不可能的,因为在连续的空间中寻找greedy policy 需要在每一步都对动作进行优化,这种优化在面对大的没有约束的函数近似以及非平凡的动作空间在实际训练中太慢。这里我们采用的是基于DPG算法的actor-critic方法。
Actor-critic 方法
一方面直接学习policy策略,另一方面学习Q值来改进策略
DPG算法(Deterministic policy gradient algorithm)(ICML 2014 David Silver)
就是确定性策略梯度。如果策略是一个函数,那么它就应该有梯度,通过计算梯度,就能够优化参数,从而优化策略。
David Silver证明了梯度计算公式,从而提出DPG算法。
DPG算法包含一个参数化的actor函数也就是policy u(s|θμ) ,代表当前的policy能够确定性的映射状态到一个动作。critic Q(s,a) 通过Bellman公式来基于Q-Learning来学习。actor则根据policy gradient,也就是policy的性能的梯度:
假定用一个深度网络 a=π