发表时间:2019(NeurIPS 2019)
文章要点:这篇文章结合planning和强化学习来解决复杂任务,主要思路是通过强化学习(Goal-conditioned RL)的方式构建一个图结构(graph),图里的节点就包括起始位置,目标位置以及中间点,这就相当于把一个远距离的目标状态(distant goal state)分解成一系列的简单任务(subgoal),然后在这个图上通过planning的方式(graph search)就能找到到达目标点的最短路径,然后用goal-conditioned policy走到每一个节点,最终到达目标点。具体地,通过Goal-Conditioned RL来学习各个状态之间的距离,
其中\(s\)就是当前状态,\(s_g\)是目标状态,这里的reward每一步都是-1,代表距离的负数,所以value就代表
具体的强化算法用的distributional Q-learning
如图所示,横坐标就表示距离为0,1,2,3及以上。如果走到了目标状态,那么0那个地方的概率就是1,如果距离太远,那么最右边那个bar的概率就很大。Q值的表示就是
更新用KL divergence
有了这个之后,就相当于有了图里面边的权重了,就用状态和距离建图
这里面有个MAXDIST,就是说如果两个状态的距离大于这个值了,这两个状态之间就没有边了。建完图之后,就可以用planning的方式去图里找走到目标状态的最短路径了,有了这个路径,然后就用goal-conditioned policy走到每一个节点,最终到达目标点。
最后作者还说了,距离的估计至关重要,所以在distributional Q-learning的基础上还训练了多个模型做ensemble。
总结:感觉挺有意思的,就相当于planning(graph search)是一个fixed的high-level的policy,用来规划每个子目标怎么走,然后Q-learning的policy就相当于low-level的policy用来走到每个子任务。不过有的细节不知道怎么做的。另外,只有路径规划能这么做吧好像。
疑问:subgoal怎么确定的?建图的时候图里的节点应该是有抽象过的吧,不可能每个state都放到图里吧?
这里面是不是RL的主要作用就是用来做exploration收集数据得到replay buffer,关键点在于建图,至于Q-learning得到的policy只要能走到每个子任务就行了?
Inverse model怎么理解?
建图的时候,那个MAXDIST参数好像对结果影响很大,看起来没有那么稳定?