[HRL]H-DQN

701 阅读4分钟

0 文章信息

Kulkarni T D, Narasimhan K, Saeedi A, et al. Hierarchical deep reinforcement learning: Integrating temporal abstraction and intrinsic motivation[C]//Advances in neural information processing systems. 2016: 3675-3683.

1 背景

在sparse feedback的复杂环境中学习目标导向的行为对人工智能来说是一个基本挑战。在这种设定下进行学习,需要agent在spatio-temporal abstractions的多个层次上表示知识,并有效地探索环境。 最近非线性函数逼近和强化学习的结合使得在学习在高维状态空间上的抽象成为可能,但是sparse feedback的探索任务仍然是一大难点。 现有的方法比如Boltzmann exploration、Thomson sampling等,对比epsilon-贪心策略有显著的改进,但是受限于the level of basic actions。

主要的难点出现在不充分的探索(insufficient exploration),现有的如epsilon-贪心策略等探索方法,停留在基本动作的层面上(the level of basic actions)而受到限制,导致无法学得一个理想的robust value function。

在tabular value function设定下,option discovery已经有很多工作了,但是使用non-linear state approximations方法的设定下,仍然是一个open problem。

本文提出了hierarchical-DQN (h-DQN),一个整合了深度强化学习和hierarchical value functions的框架,其中agent被激励去解决intrinsic goal以帮助搜索。这些goal提供了更有效的探索,并减轻了sparse feedback问题。可以观察到在复杂的环境中制定目标,极大地限制了搜索空间,提供了有效的搜索,减轻了稀疏延时奖励问题。最后通过实验展示了在sparse, delayed feedback环境中,H-DQN方法的有效性。

2 内容介绍

本文提出了一个temporal abstraction的方案,在深度强化学习的设定下可以同时学习options和组合options的策略

2.1 H-DQN架构

这是一个双层的架构。包括meta-controller和controller两个层次。

  • meta-controller 接收状态s,希望最大化extrinsic reward的期望值,通过估计值函数Q_2,给出子目标g。环境会给meta-controller一个合适的extrinsic reward。当controller终止时,meta-controller会给出新的g,并不断重复这一过程。
  • controller 接收状态s,目标g,最大化intrinsic reward的期望值,通过估计值函数Q_1,给出动作。其中Critic会根据目标g是否完成,给controller一个合适的intrinsic reward。当episode ends或者目标g完成时,controller会终止。

controller meta-controller
学习框架 DQN DQN
Q值 Q_1^*(s,a;g)=\max_{\pi_{ag}}E[r_t+\gamma\max_{a_{t+1}}Q_1^*(s_{t+1},a_{t+1};g)\mid s_t=s,a_t=a,g_t=g,\pi_{ag}] Q_2^*(s,g)=\max_{\pi_{g}}E[\sum_{t'=t}^{t+N}f_{t'}+\gamma \max_{g'}Q_2^*(s_{t+N},g')\mid s_t=s,g_t=g,\pi_{g}]
loss function L_1(\theta_1,i)=E_{(s,a,g,r,s')\thicksim D_1}[(r+\gamma \max_{a'}Q_1(s',a';\theta_{1,i-1},g)-Q_1(s,a;\theta_{1,i},g))^2] 类似
experience/transition (s_t,a_t,g_t,r_t,s_{t+1}) (s_t,g_t,f_t,s_{t+N})
experience收集频率 每一步 when the controller terminates

controller和meta-controller都是用DQN框架来学习策略。通过参数为\theta的DQN网络的Q_(s,g;\theta)去逼近Q^*(s,g)。通过最小化loss function的方式来训练Q。其中i表示训练迭代轮数。参数\theta_1可以通过随机梯度下降的方式进行优化。Q_1Q_2的experience分别被存储在D_1D_2中,互不相交。动作和目标的选择方式采取的是\epsilon-贪心策略,其中参数\epsilon是随成功率动态变化的。

2.2 H-DQN算法流程

文章中给出的具体算法流程如下

初始化后,通过epsilon-贪心策略,meta-controller给出子目标g。当状态s没有达到最终终止态时,controller需要根据子目标g和epsilon-贪心策略,给出动作a,执行动作a,并从critic获得intrinsic reward,保存controller的experience,通过两个网络的经验回放进行梯度下降更新损失函数。重复该过程至最终终止态或者子目标g完成,存储meta-controller的experience。再次通过epsilon-贪心策略,meta-controller给出子目标g,重复迭代至s达到最终终止态。更新epsilon参数,进行下一个episode的执行。

3 小结

  • 是一份近年来相对经典的HRL工作。这篇文章的主要思想包括temporal abstraction和intrinsic reward。通过抽象生成子目标,缩小MDP;通过生成intrinsic reward使得稀疏延时奖励的环境问题得到缓解。
  • hierarchical中上层给出的subgoal的选择是手工制定的。subgoal discovery的问题还没有得到妥善解决。
  • 使用的是DQN的方法,受限于DQN的本质,只适用于离散动作空间。 、