分层强化学习综述:Hierarchical reinforcement learning: A comprehensive survey

论文名称:Hierarchical reinforcement learning: A comprehensive survey
论文发表期刊:ACM Computing Surveys
期刊影响因子:10.282(2022年)
论文作者: SHUBHAM PATERIA, Nanyang Technological University BUDHITAMA SUBAGDJA and AH-HWEE TAN, Singapore Management University CHAI QUEK, Nanyang Technological University
发表时间:2021年
当前谷歌学术引用量:32

摘要

分层强化学习 (HRL) 能够将具有挑战性的长期决策任务自主分解为更简单的子任务。在过去的几年中,HRL 研究的前景得到了深刻的发展,产生了丰富的方法。要以有组织的方式研究 HRL,需要对这片广阔的景观进行全面的概述。我们对各种 HRL 方法进行了调查,这些方法涉及使用 HRL 进行learning hierarchical policies, subtask discovery, transfer learning, and multi-agent learning所面临的挑战。该调查是根据一种新颖的方法分类法进行的。在调查的基础上,提出了一系列重要的开放性问题,以激励 HRL 的未来研究。此外,我们概述了一些用于评估 HRL 方法的合适任务领域以及 HRL 在补充材料中实际应用的一些有趣示例。

关键词

Hierarchical reinforcement learning, subtask discovery, skill discovery,hierarchical reinforcement learning survey, hierarchical reinforcement learning taxonomy

1.Introduction

人工智能的主要目标之一是开发能够通过规划最佳动作序列在环境中执行各种复杂任务的自主agent。强化学习 (RL) 是一种计算范式,用于学习一种策略,该策略在任务环境的各种状态下采取最佳行动,以最大化agent收到的累积奖励。为了学习最优策略,agent通过执行状态-动作-下一个状态(state-action-next state)的各种序列来探索与任务相关的状态和动作空间。这种序列的平均长度称为任务范围,如果视野很长,而任务涉及大的状态和动作空间,那么探索空间也会变大。这导致标准 RL 算法在没有复杂探索技术的情况下在此类长期任务上表现不佳。
Hierarchical Reinforcement Learning 分层强化学习 (HRL) 将长期强化学习任务分解为子问题或子任务的层次结构,以便更高级别的策略通过选择最佳子任务作为更高级别的操作来学习执行任务。子任务本身可能是一个强化学习问题,需要通过较低级别的策略学习来解决它。这种策略层次共同决定了agent的行为。Task decomposition effectively reduces the original task’s long horizon into a shorter horizon in terms of the sequences of subtasks. This is because each subtask is a higher-level action that persists for a longer timescale compared to a lower-level action, a property that is often referred to as temporal abstraction.(根据子任务的序列,任务分解有效地将原始任务的长视域缩短为更短的视域。这是因为每个子任务都是一个较高级别的action,与较低级别的action相比,它会持续更长的时间,这种属性通常被称为时间抽象)。
Temporal abstraction can also enable efficient credit assignment over longer timescales.At the same time, a subtask may itself be easier to learn and the learned subtasks lead to more structured exploration over the course of training of the HRL agent.(时间抽象还可以在更长的时间范围内实现有效的信用分配。同时,子任务本身可能更容易学习,并且学习的子任务导致在 HRL agent的训练过程中进行更结构化的探索)。
这些方面使 HRL 成为一种有前途的方法,可以将强化学习扩展到long-
horizon任务。HRL 算法已被证明在几个长期问题中优于标准RL,例如连续控制任务、long-horizon类型的游戏、机器人操纵等。不同的实证研究发现,HRL 的性能优势主要是由于使用subtasks/subgoals(子任务/子目标)改进(exploration)探索。
HRL 研究在过去 30 年中取得了长足的进步,产生了大量的方法来解决各种挑战,例如 learning the policies in a hierarchy, autonomous discovery of subtasks, transfer learning, and multi-agent learning (学习层次结构中的策略、子任务的自主发现、迁移学习和使用 HRL 的多智能体学习)。这导致在以有组织的方式理解该领域的进展方面存在重大困难。因此,有必要进行全面的调查来收集和组织重要的 HRL 方法,并为其分类提供一般分类法。
本次survey与以往survey有何不同?
Barto 等人对截至 2003 年的 HRL 进展进行了调查。该调查包括对经典方法的重要概述,主要是 MAXQ、Options 和 HAMs 。自那次调查以来,HRL 领域发生了重大发展,例如使用subtask discovery using graph analysis, variational inference, autoencoding, unified HRL, subtask discovery in multi-agent HRL, transfer learning with HRL(图分析的子任务发现、变分推理、自动编码、统一 HRL、多智能体 HRL 中的子任务发现、使用 HRL 的迁移学习)我们的调查主要与 Barto 等人的调查不同之处从某种意义上说,我们回顾了他们调查后出现的新 HRL 方法,以及它们所涵盖的经典方法。
Al-Emran等人从 HRL 的实际应用角度进行了一项调查。但是,它不包括一些不适用于所选应用的重要方法,例如最近的 unified HRL techniques, transfer learning with HRL, multi-agent HRL(统一 HRL 技术、使用 HRL 的迁移学习、多智能体 HRL 等)。相比之下,我们对 HRL 方法进行了广泛的调查,并提供了一个与应用程序无关的通用分类法。
Mendonca 等人的最新调查详细回顾了基于图的子任务发现方法。由于范围有限,他们的调查深入到了基于图的子任务发现,但排除了 HRL 研究的其他重要方面,例如learning a hierarchy of policies, subtask discovery using variational inference,unified HRL, transfer learning with HRL, multi-agent HRL(学习策略层次结构的技术、使用变分推理的子任务发现、统一 HRL、迁移学习HRL、多代理 HRL 等)。然而,我们回顾了所有这些方法以及基于图的子任务发现,本着为 HRL 研究提供更广阔视野的精神。
本文的主要贡献:本次调查的目的是彻底回顾有关 HRL 的文献,并提供迄今为止开发的方法的全景图。主要贡献如下:
(1)我们对迄今为止在 HRL 领域所做的工作进行了全面调查。该调查包括(learning hierarchies of policies, independent subtask discovery, unified HRL, multi-task/transfer learning with HRL, and multi-agent HRL)学习策略层次结构、独立子任务发现、统一 HRL、使用 HRL 的多任务/迁移学习和多代理 HRL 的方法。
(2)我们提供了一种新的分类法来组织 HRL 方法沿着重要的特征维度,例如single-agent vs. multi-agent, single-task vs. multi-task, and without subtask discovery vs. with subtask discovery.(单代理与多代理、单任务与多任务,以及没有子任务发现与子任务发现)
(3)我们确定了一组重要的开放问题,为未来有关 HRL 的可扩展性、效率和理论稳健性的研究提供方向。

本文的其余部分组织如下:在第 2 节中,我们回顾了强化学习、任务分解和 HRL 的一般概念。第 3 节介绍了各种 HRL 方法的分类和调查,以及它们解决的广泛挑战。第 4 节讨论了有关 HRL 未来研究的重要开放问题。我们在第 5 节结束调查。

2.Preliminaries

2.1 Reinforcement Learning

强化学习的基础概念这里不做介绍了

2.2 Hierarchical Reinforcement Learning

RL 智能体的目标是寻找一种策略,该策略使智能体在遵循该策略时可以采取的各种可能轨迹上的平均累积奖励最大化。在探索状态和动作空间以学习最佳策略时,代理采用各种轨迹,其预期长度为任务范围。当状态和动作空间很大且任务范围很长时,使用标准 RL 方法进行探索变得具有挑战性。
HRL 提供了一种机制来执行具有挑战性的任务,方法是使用通过强化学习学习的策略层次结构将其分解为更简单的子任务。在这样的层次结构中,最高级别的策略通常选择主任务的子任务作为其动作。使用在主任务中获得的奖励,该策略被训练为根据其子任务的顺序执行完成主任务。在层次结构中的较低级别,较高级别策略选择子任务本身就是一个强化学习问题。最低级别的策略选择以下称为primitive 的基本action。

在这里插入图片描述
在此图中,HRL 代理分解并执行“去夏威夷”(GTH)的长期任务。HRL 代理由策略层次结构组成。任务策略 πGTH 将原始任务 GTH 分解为一系列最高级别的子任务“订票”(BT)、“前往机场”(GTA)等。任务策略最初选择 BT。然后,BT 被执行多个时间步长,直到它在时间 T3 终止。在此期间,子任务 BT 的策略,即 πBT 本身会依次选择不同的较短子任务。这些是“打开预订网站”(OBW)、“输入航班信息”(EFI)等。 BT 在 T3 终止后,任务策略选择 GTA,它本身选择一个较短的子任务“去出租车站”(GTS)。在每个时间步长中,一个原始动作 a 由最低级别的子任务策略选择,例如,由 πOBW、πEFI、πGTS 等。

2.2.1 Formal Definition of a Subtask

首先,我们将主要的长期任务表示为Γ,将任务策略表示为 πΓ。任务策略位于层次结构的顶部,例如图 1 中的 πGTH。子任务表示为 ω,它使用如下描述的组件定义:

  • πω,即(policy of the subtask)子任务的策略。它将环境状态映射到原始动作或 ω 的子任务。
  • The objective components:
    rω,这是用于训练 πω 的子任务奖励。这通常不同于与主任务相关的奖励。
    gω,它是与 ω 相关的一个子目标或一组子目标。子目标可能是状态 s ∈ S 本身 ,状态的抽象形式或者是a learned embedding,奖励 rω 可以根据子目标来定义。
  • The execution components:
    Iω,是ω的起始条件,它可以被定义为一组状态。
    βω,是ω的终止条件。它可以定义为一组状态,如果 ω 正在执行,则应在这些状态中终止
2.2.2 Formalism of HRL Based on Semi-Markov Decision Process.

HRL 是在半马尔可夫决策过程 (SMDP)理论的基础上形式化的。 SMDP 是一个类似于 MDP的随机控制过程,但与 MDP 不同的是,它还涉及在选择动作后执行动作的时间概念。在 HRL 的中,具有时间概念的动作是(subtasks)子任务。从状态 st ∈ S 开始,假设代理选择子任务 ωt ∈ Ω,其中 Ω 是子任务集(或子任务空间)。然后,SMDP的转移函数被定义为联合分布
在这里插入图片描述
cωt 表示从状态st执行 ωt 的(the number of timesteps)时间步数, cωt实际上由终止条件 βωt 确定,它是第 2.2.1 节中定义的执行组件之一。
在这里插入图片描述
从状态 st 开始执行子任务 ωt 而获得的奖励表示为 R(st , ωt ),计算如下:
在这里插入图片描述
表示奖励 R(st , ωt ) 等于在遵循子任务策略 πωt 从时间 t 到 cωt 时间步后 ωt 终止时获得的预期累积奖励。现在,最佳任务策略将是导致以下所需最大 Qvalue 的策略:
在这里插入图片描述
式(5)中的Q值还取决于R(st , ωt )和P (st+cωt ,cωt |st , ωt )。这两个量是通过使用其策略 πωt 执行 ωt 来确定的。因此,代理实际上需要在任务分解层次结构的不同级别学习多个策略,包括 πΓ 和所有子任务的策略。我们为如下定义的多级层次结构扩展子任务和策略的符号。

  • ωl:层次结构第 l 级的子任务
  • Ωωl : 子任务 ωl 下的子任务集,使得 ωl−1 ∈ Ωωl
  • πωl : S × Ωωl → [0, 1] : 子任务 ωl 的策略。换句话说,ωl−1 由 πωl 选择
  • Ωω1 = A,即最低层(l = 1)的子任务的输出空间是原始动作空间A
  • πΓ 和 ΩΓ 分别表示主任务策略和最高级别的子任务集。

综合上面提供的所有定义,HRL 代理有两个主要部分:

  • Subtask space (Ωhierarchy).这是层次结构中使用的所有子任务的超集,即 Ωhierarchy = {Ωω2, Ωω3, Ωω4, . . . , ΩΓ}。
  • Hierarchical policy (πhierarchy),HRL 代理采取的原始动作是子任务递归选择的结果。考虑图 2 中描绘的三级层次结构。在这个层次结构中,主要策略 πΓ 选择 2 级子任务,即 ω2 = πΓ(s),其中 ω2 ∈ ΩΓ。ω2的策略被执行,直到根据 βω2 终止。他选择最低级别的子任务 ω1 = πω2 (s),其中 ω1 ∈ Ωω2。ω1的策略被执行直到它按照 βω1 终止。这个最低级别的策略选择一个原始动作,即 a = πω1 (s)。这种从 πω1 的完整状态到子任务到动作的映射称为分层策略,表示为 πhierarchy。现在,整个 HRL 代理所采取的原始动作可以等价地表示为 a = πhierarchy (s)。该描述可以外推到具有三个以上级别的层次结构。

根据上面提供的定义,HRL 代理收到的预期折扣累积奖励可以写成:
在这里插入图片描述
a ∼ πhierarchy |Ωhierarchy 表示使用分层策略 πhierarchy 对原始动作 a 进行采样,该分层策略πhierarchy 以可用子任务空间 Ωhierarchy 为条件。

2.2.3 Problem Definition of HRL

HRL 的一般问题定义是找到最优分层策略 π∗ hier archy 和最优子任务空间 Ω∗ hierarchy 作为解决方案:
在这里插入图片描述
等式(7)中表示的 HRL 问题可以分为两部分。
第一部分是学习分层策略,指的是找到以可用子任务空间为条件的最优分层策略(argmax π hierarchy |Ω hierarchy)。这是必不可少的,因为分层策略决定了 HRL 代理在任何给定任务上的行为。不同层次的策略可以以端到端的方式同时学习。或者它们可以以自下而上的方式一次学习一个级别(learned one level at a time in a bottom-to-top manner)。
第二部分是(subtask discovery)子任务发现,指的是使用 HRL 代理的经验数据(即argmax Ω hierarchy)自动找到最佳子任务空间。子任务发现不是必需的,因为可以使用精确的领域知识手工制作子任务空间。然而,广义的 HRL 需要不依赖于手工手工制作。

2.3 Definitions of Common Terms and Concepts

此处定义了本文其余部分中常见的一些重要术语和概念。
Skill:“skill”是一个语义术语,指的是学习执行子任务的原始动作策略,从某种意义上说,这种策略代表了智能体做好某事的能力。
在这里插入图片描述
Universal policy:在本文中,“Universal policy”是指可以通过将相应的(subgoals)子目标或(instructions)指令作为输入来学习所有可能的子任务的策略。比如πω (s) =π (s,gω),其中π (s,gω ) is the universal policy.
State abstraction:状态抽象是一个映射,比如 φ,它将原始状态空间 S 映射到某个有限的低维抽象空间。如果 ϕ(s) = ϕ(s’)对于一对 s, s‘ ∈ S,则原始状态空间中的两个状态都用抽象空间中的同一个状态来表示。
Reward abstraction:奖励抽象意味着作为主任务的一部分给予的奖励对子任务策略是隐藏的,并且仅由最高级别的策略接收。
“Global” initiation condition:wherever the term “global” is used in reference to the initiation condition Iω, it means that the subtask can be chosen for execution in any of the states in the global state space.

3.Approaches for hierarchical reinforcement learning

本节介绍了为分层强化学习开发的各种方法的回顾和分类。
为了设计这种分类法,所调查的 HRL 方法沿三个独立的维度排列,如下所示:
(1) Approaches with subtask discovery or without it.
(2) Approaches for training single agent or multiple agents.
(3) Approaches for learning on single task or multiple tasks.
这个三维空间可以有八个可能的划分。我们发现大多数 HRL 方法都属于其中的六个部分。根据它们解决的广泛挑战,这些方法进一步分为五个主要类别——LHP、UNI、ISD、MAHRL 和 TransferHRL。部分和类别如下:
(1) Single agent, single task, without subtask discovery:
该部分中的方法被归为一个称为学习层次策略(LHP)的主要类别。 LHP 方法解决了学习 HRL 代理的分层策略 πhierarchy 的挑战,而不涉及子任务发现。他们使用手工制作的子任务。
(2) Single agent, single task, with subtask discovery:
本部分中的方法分为两大类。
第一类称为“Learning Hierarchical Policy in Unification with Subtask Discovery (UNI)”。UNI 方法以统一或端到端的方式解决了学习子任务空间 Ω hierarchy 和分层策略
π hierarchy 的挑战。
第二类称为Independent Subtask Discovery (ISD)。The approaches in this class address the challenge of discovering task-agnostic subtasks independently from any specific task.此类中的方法解决了独立于任何特定任务发现与任务无关的子任务的挑战。子任务发现subtask discovery通常在预训练阶段执行,然后子任务用于学习下游任务的 HRL 代理。
(3) Multiple agent, single task, without subtask discovery.
(4) Multiple agent, single task, with subtask discovery.
第 3 类和第 4 类中的方法被归为一类,称为多智能体 HRL (MAHRL)。 MAHRL 方法广泛地解决了在单个联合任务上学习在多个 HRL 代理之间进行协调的挑战。
(5) Single agent, multiple tasks, without subtask discovery.
(6) Single agent, multiple tasks, with subtask discovery.
第 5 部分和第 6 部分中的方法被归为一类,称为带HRL 的迁移学习 (TransferHRL)。 TransferHRL 方法广泛地解决了learning to transfer the hierarchical policy, subtasks, or other knowledge of an HRL agent across multiple tasks学习在多个任务之间迁移层次策略、子任务或 HRL 代理的其他知识的挑战,其中子任务可能是手工制作或在多个任务上从头开始发现的。

3.1 Learning Hierarchical Policy (LHP)

本小节回顾了解决学习分层策略 π hierarchy 挑战的方法,无需子任务发现,用于单个代理和单个任务设置。即使子任务是手工制作的,学习分层策略也是一个不小的挑战。这是因为任何学习分层策略的方法都必须解决以下关键问题:仔细设计算法以学习层次结构各个级别的策略(包括奖励传播、价值函数分解、状态/动作空间设计等),处理由于同时变化的策略导致的非平稳性,确保分层策略作为一个整体的最优性,分层策略的可解释性等问题。有关 LHP 方法的摘要,请参阅表 1。
在这里插入图片描述
在这里插入图片描述

LHP 方法大致可以分为两个子类。
第一个子类称为封建层次(feudal hierarchy)结构,其中更高级别策略的动作空间由对应于各种子任务的子目标组成。The first sub-class is called feudal hierarchy, in which the action space of a higher-level policy consists of subgoals corresponding to various subtasks. A subgoal chosen by the higher-level policy is taken as input by a universal policy3 at the lower level. The objective of this lower-level universal policy is to achieve the in-put subgoal. The universal policy at each level can be treated as a sub-agent.较高级别策略选择的子目标被较低级别的通用策略作为输入,这个较低级别的通用策略的目标是实现输入的子目标。每个级别的通用策略都可以被视为子代理(作为 HRL agent的一部分)可以在该级别执行所有可能的子任务。This leads to the feudal concept of a “manager” sub-agent (higher-level policy) directing a “worker” sub-agent (lower-level policy)。
第二个子类称为策略树(policy tree)。在本次调查中引入此名称是为了分类,在 HRL 文献中可能找不到。在策略树中,高层策略的动作空间由子任务的不同低层策略组成。子任务不是由单一的通用低级策略表示;相反,每个子任务都有一个单独的策略。高层策略和各种低层策略形成一棵“树”。高层策略直接选择低层策略执行,没有中间子目标。相应的方法在第 3.1.2 节中讨论。

3.1.1 Feudal Hierarchy Approaches

Dayan and Hinton引入了封建强化学习(Feudal RL)的基础封建等级制度。Feudal RL 简要描述如下:更高级别的manager设置一个子任务,由较低级别的worker执行。这是一种成对关系,如果层次结构有两个以上的级别,则worker将成为其下一级的manager。manager通过子目标(subgoal)将子任务(subtask)传达给worker,其中子目标(subgoal)只是原始或抽象状态空间中的状态。worker的目标是达到给定的子目标(subgoal)。每个级别的worker是一个universal policy。任务奖励只能由最高级别的manager观察,而其他级别的worker则使用达到子目标的奖励来学习。作者使用不同空间距离处的预定义状态作为子目标,在网格世界环境中评估 Feudal RL 在迷宫导航任务中的应用。 Feudal RL 比标准 Q Learning更快地收敛到通往迷宫中主要目标状态的更短路径。本文中讨论的其他封建等级方法(feudal hierarchy approaches)均基于上述Feudal RL 的概念。
Kulkarni等人提出一个Deep HRL方法,由两层DQN网络组成,分别代表manager和worker。manager网络从一组预定义的子目标中选择一个子目标。它是使用任务奖励来学习的。worker网络将子目标作为输入,并选择原始动作来实现子目标。使用奖励来学习达到子目标。子目标是原始状态或状态的抽象表征,例如,从图像中提取的对象代表原始状态。用于评估的任务之一是 Atari Montezuma 的复仇,其中标准 DQN 在超过 200 万个时间步的收集奖励方面几乎没有任何进展。然而,随着训练的进行,具有预定义子目标的 Deep HRL 会逐渐获得更高的奖励。

同时学习多个级别的策略会导致非平稳性问题(the issue of non-stationarity)
这意味着状态-动作-下一个状态转换数据( state-action-next state transition data)是通过执行较低级别的策略生成并由较高级别的策略观察到的,即使对于在同一状态下选择的相同子目标,也会在不同的时间实例中发生变化。这是因为较低级别的策略不是固定的,并且它对(状态,子目标) (state, subgoal)对的响应在学习过程中会发生变化。非平稳性可能会导致许多无用的数据样本,需要解决它以实现数据高效学习。
Nachum等人为解决the issue of non-stationarity,提出了具有子目标重新标记(subgoal re-labelling)机制的两级封建等级制度。这种方法被称为Hierarchical Reinforcement Learning with Off-policy Correction (HIRO).HIRO 中的子目标重新标记可以描述如下:一个两级 HRL 代理与其环境交互并收集经验数据。该数据由转换元组在这里插入图片描述用于高层的策略,其中r是任务的奖励,并且在这里插入图片描述用于低层的策略。c 是实现每个子目标的固定时间范围(time horizon),r gt 是实现 gt 的奖励。数据随后用于训练 HRL 代理的分层策略。然而,如果代理在 c 个时间步后没有达到 gt,那么子目标在transition数据中被重新标记为gt’从 drawn from a distribution of subgoals that maximize the probability of the observed transitions. 最大化观察到的transition概率的子目标分布中提取。然后,高层的策略事后将视为其输出,这与观察到的transition具有更好的相关性。这样,HIRO 有效减少了的非平稳性。 HIRO 中的子目标是通过从原始状态空间中的状态中选择选择性特征来定义的。 HIRO 在 MuJoCo 连续控制任务上进行了评估,并显示其性能优于标准 RL 和其他少数 HRL 方法。
Levy 等人与 HIRO 同时,提出了一种称为 Hierarchical ActorCritic (HAC) 的方法,该方法也是通过子目标重新标记(subgoal re-labelling)来解决非平稳性问题。在该方案中,高层数据中的输出子目标和低级数据中的输入子目标被代理事后所达到的实际状态所取代,而不是像 HIRO 中那样对新子目标进行基于概率的抽样。这种简单的方案还可以将层次结构扩展到两个以上的级别。 HAC 在 MuJoCo 连续控制任务上进行了评估,结果表明其性能优于标准 RL 和 HIRO。此外,作者发现三级层次结构在这些任务上的性能优于两级层次结构。
Jiang等人提出一个分层抽象语言(HAL)的方法,封建等级也可以通过使用自然语言指令而不是子目标状态来实现。

3.1.2 Policy Tree Approaches

Options
Sutton等人引入Options framework,在这个框架下将默认的MDP进行了扩展,扩展出包含一系列子任务的MDP,这些子任务叫做 Options。最初的action可以认为是 a single-step Option。一个option w可以用一个元组定义(< Iω, πω, βω >)。Iω ⊂ S是初始的状态,βω: S → [0, 1]给出 ω 在状态 s ∈ S 中终止的概率,πω:S × A → [0, 1]是option的policy。一个option可以有或者没有相关的奖励函数rw。我们经常假定option被程序员预定义。Option的策略(πω) 预定义为初始策略,可以使用称为选项内学习( intra-option learning)的机制在特定任务的中进行微调。Intra-option learning使用任务奖励即使the Option-specific reward rω is given。此外,任何option ω 的 Q 值函数,即 Qω (s, a),表示直到主任务结束的预期累积奖励,而不仅仅是直到option本身的范围(或终止)。因此,Option 不是一个独立的子任务单元,而是融合到核心 MDP 中。这限制了学习option对其他任务的迁移能力,但理论上保证了学习层次策略的最优性。作者评估了网格世界任务的选项框架,发现它比标准 RL 更快地收敛到最佳性能。
MAXQ
Dietterich 提出的 MAXQ 值函数分解将核心 MDP 分解为更小的子 MDP 组件。每个子 MDP 都与一个子任务相关联,该子任务的策略可以与其他子任务分开学习。这是通过将主 Q 值函数分解为子任务的单独 Q 值函数来实现的。由于这种分解,任何子任务 ω 的 Q 值,即 Qω (s, a),仅表示该子任务的范围(或终止)之前的预期累积奖励。因此,每个子任务策略都可以作为一个独立的单元来学习,这与Option方法相反,Option中一个子任务被混合到核心 MDP 中。价值分解的好处是,在一个任务上使用 MAXQ 学习的子任务的策略可以很容易地转移到不同的任务或不同的 MAXQ 代理。将子任务视为独立单元的缺点是会损害分层策略的最优性。 MAXQ 层次结构只是递归最优的,这意味着 MAXQ 可以学习子任务的最优策略,但整体层次策略通常不是最优的。在 MAXQ 中,子任务 ω 的预定义组件是其终止条件 βω(例如,事件、条件、子目标状态)和奖励函数 rω。除了选择其他子任务之外,子任务还可以选择原始动作。 MAXQ 在网格世界出租车领域进行评估,其性能优于标准 Q Learning。

HAMs

Parr and Russell提出Hierarchy of Abstract Machines, (HAMs),uses stochastic Finite State Machines (FSMs) 表示子任务subtasks,HAM 由一组随机 FSMs定义 {H}.每个FSM是使用各种机器状态(machine-states)定义的。机器状态不同于环境状态。 FSM 由四种类型的机器状态组成:动作、调用、选择和停止(action,call, choice, and stop)。
这部分不做详细介绍了,感兴趣请阅读原文。

3.2 Learning Hierarchical Policy in Unification with Subtask Discovery (UNI)

本小节回顾了将子任务发现(Subtask Discovery )与单代理和单任务设置的分层策略学习相结合的方法。对于可部署在特定任务上的 HRL 代理,无需预定义或手工制作的子任务,在学习代理的层次策略时,必须同时发现子任务空间(Ωhierarchy)。这需要一种统一或端到端的学习方法,该方法使用相同的数据进行子任务发现和学习分层策略,其中数据是在执行给定任务时收集的。这种统一涉及的一些重要问题如下:discovering the subtask space that maintains the optimality of the hierarchical policy, learning various components of a subtask during discovery (terminations conditions, initiation conditions,subgoals, etc.) from scratch, discovering a dynamic number of subtasks, among other issues.发现保持分层策略最优性的子任务空间,从头开始学习发现过程中子任务的各个组成部分(终止条件,启动条件,子目标等),发现动态数量的子任务,以及其他问题。

此后讨论的 UNI 方法基于两种类型的 LHP 方法,the feudal hierarchy (Section 3.1.1) and Options (a policy tree approach, Section 3.1.2).

3.2.1 Unified Learning of Policy Tree

本小节中讨论的策略树方法(policy tree approaches)将discover Options 与分层策略的学习(the learning of a hierarchical policy)相结合。如第 3.1.2 节所述,Option是一个子任务,它使用三个关键组件表示:启动条件 Iω、策略 πω 和终止概率函数 βω。统一选项发现(Unified Option discovery)主要涉及与更高级别任务策略(πΓ)同时学习与每个选项 ω 相关的 πω 和 βω。初始 Iω 也可以学习或设置为全局。这些组件都不是手工制作的。

Daniel等人针对unified Option discovery提出一个基于图的模型。
Konidaris等人提出一个名为skill chaining 的方法,在学习 HRL 代理的同时逐步构建选项(construct Options),skill chaining 的过程从创建一个option ω 开始,它的子目标集 (gω) 包含主任务的目标状态。The Option policy πω is learned to reach the subgoals.然后学习分类器以找到 ω 的初始状态。可以在预定义的时间步数内达到 ω 的子目标的状态被分类为正数。相反,在时限内无法达到子目标的那些状态被归类为否定状态。积极状态被添加到初始集 Iω。现在,另一个option ω’被创建,它的子目标集 gω’等于 Iω。然后,上述分类和策略学习过程对 ω’ 重复,以此类推,创建一个option链(或技能)。skill chaining发现了灵活数量的option。作者在 Pinball 控制域上对其进行了评估,在该域中它的性能优于标准 RL。最近,Bagaria 等人使用深度强化学习进行连续控制的扩展技能链。skill chaining的主要限制是它仅适用于具有明确目标状态的任务,并且需要在没有option的情况下进行强大的初始探索才能达到目标状态。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在上面讨论的所有方法中,代理不能在学习的初始阶段使用子任务(option)。这是因为代理必须首先收集经验轨迹以用于发现初始option集。

Bacon提出了一个option框架,可以从学习过程的开始就学习option以及整个分层策略,这种方法称为 Option Critic (OC)。在OC中,一个固定数量的options are randomly initialized with parameterized policies and termination functions. The higher-level policy is also randomly initialized. Then, the higher-level policy and all the Options (policies and termination functions) are learned using policy gradients derived using the main task rewards.
OC 不使用子目标或特定于option的奖励,理论上可以保证使用策略梯度学习最优分层策略。在评估中,OC 在 Seaquest、Ms Pacman 等 Atari 游戏中使用深度学习优于标准 RL,它也比skill chaining表现更好。在弹球领域学习的初始阶段,OC 的一个限制是它需要预定义option的数量。此外,策略梯度严重依赖于主任务奖励。因此,OC 在稀疏奖励任务上可能表现不佳。 OC由于其强大的理论基础成为了统一HRL的流行框架,这导致了基于 OC 的各种方法的出现,这些方法列于表 2 中。

Option-Critic (OC) 框架需要为基于Option的半马尔可夫决策过程 (SMDP) 定制策略优化算法。这限制了以现成的方式为 HRL 使用其他高级策略优化算法。为了解决这个问题, Zhang 等人提出将 HRL 层次结构公式化为两个并行的增强马尔可夫决策过程(MDP),其中每个 MDP 使用一个(as two parallel augmented Markov Decision Processes (MDPs) )增强状态空间,它是原始状态空间和option集的叉积。较高级别的 MDP 对学习option对应的策略及其相应的终止条件的问题进行建模,而较低级别的 MDP 对学习option策略的问题进行建模。两个 MDP 都只使用任务奖励,没有子目标或子任务奖励。提出的这个方法叫做Double Actor Critic (DAC),因为它应用了actor-critic算法来学习两层的policy。由于增强(augmented)的 MDP 公式,DAC 与各种现成的 actor-critic 算法兼容,用于策略优化。它在各种机器人模拟任务上表现出明显优于 OC 的性能。但是,与 OC 类似,DAC 需要预先定义选项的数量。
当每个option的终止概率在经过长时间的训练后变得非常高时,OC 和 DAC 方法可能会遇到更高级别的策略退化现象。这导致更高级别的策略几乎在每个时间步都从一个选项切换到另一个选项,并且学习的option不专注于任何可识别的行为。Harb等人认为,从策略优化的理论角度来看,时间扩展选项(temporally extended Options)不是必需的,因为最优策略实际上是根据原始动作实现的。为了学习时间扩展option,他们引入了一个正则化器,称为deliberation cost,这是更高级别策略在切换option时收到的惩罚。这鼓励更高级别的策略将每个option保留更长的时间,这导致在empirically上比频繁切换option更好的性能。 deliberation cost包含在 OC 框架中,但 DAC 的作者将这种成本的整合留给未来的工作。当更高级别的策略为整个任务持续时间选择一个option时,可能会发生另一种形式的退化。这可能是因为如果使用全局启动条件 Iω,每个option都可以在状态空间中的任何位置启动。 Khetarpal 和 Precup提出了一种称为 Interest-Option-Critic (IOC) 的方法,建立在 OC 框架之上,它使用策略梯度学习每个option的启动条件,因此各种option可以专注于不同的行为,从而防止退化。

3.2.2 Unified Learning of Feudal Hierarchy

在Feudal的 UNI 层次结构中,子目标空间和各级通用策略是统一学习的。
Vezhnevets等人提出了一种feudal层次的神经网络,其中称为“manager”的更高级别的网络在学习的潜在子目标空间中对子目标进行采样。子目标可以是潜在空间中的一个点,也可以是表示潜在空间中方向的单位向量。子目标被称为“worker”的较低级别网络作为输入,该网络必须学习一种策略以使用与子目标的距离作为奖励来实现子目标。 Worker 使用源自基于子目标的奖励的常用策略梯度进行训练。Manager 是使用作者介绍的 transition gradient方法进行训练。该梯度是使用任务奖励以及分配给 Worker 的子目标与 Worker 进行的实际状态转换之间的距离得出的。因此,Manager 从任务奖励和 Worker 的行为中学习。 transition gradient被用于学习manager策略和潜在子目标空间。这个方法叫做Feudal Networks (FuN),在 Atari 游戏(如 Montezuma’s Revenge)上表现出比 DQN 和 Option-Critic 更好的性能。

Feudal Networks不保证学习的子目标空间会导致最优的分层策略。Nachum等人提出的基于HIRO 的子目标表示学习方法中解决了这个问题(HIRO 在第 3.1.1 节中讨论)。作者基于分层策略的次优性的理论界限推导出优化目标。该目标用于学习将状态空间转换为低维子目标空间的函数 fθ (s)。因此,学习到的子目标空间表示最小化了次优性,并且基于 HIRO 的分层策略解决了非平稳性问题。这种方法在 MuJoCo 连续控制任务上进行了评估,同时使用低维状态空间和高维状态空间(例如,用作状态的图像)。它优于各种其他子目标表示方案,例如such as direct use of the original states (e.g., images) as subgoals, using latent space learned in the style of FuN [99], using subgoal embedding derived from Variational Autoencoder , and so on.直接使用原始状态(例如图像)作为子目标,使用以 FuN 风格学习的潜在空间,使用从变分自动编码器派生的子目标嵌入等等。

3.3 Independent Subtask Discovery (ISD)

本小节回顾了用于单个代理和单个任务设置的(subtask discovery )独立子任务发现的方法。当目标是自动找到与任务无关且可跨各种未知任务转移到 HRL 代理的子任务时,就会出现 ISD 挑战。这意味着子任务发现的过程应该独立于学习代理的层次策略的过程。ISD 方法背后的共同思想类似于机器学习一般背景下的预训练 。
在 ISD 方法中,子任务发现通常发生在预训练阶段。然后使用发现的子任务来学习分层策略以执行特定的目标任务。这种预训练方法导致了 ISD 的一些关键问题,如下所示: ensuring that the subtask discovery process is data-efficient, discovering subtasks that allow diverse exploration of the state space independent of any specific task, learning continuous subtask space that allows generalization through sampling of new subtasks on target tasks, among other issues.确保子任务发现过程是数据高效的,发现允许独立于任何特定任务对状态空间进行多样化探索的子任务,学习连续的子任务空间允许通过对目标任务的新子任务进行采样来进行泛化,以及其他问题。

3.3.1 Discovery of Subgoals
3.3.2 Discovery of Diverse Skills
3.4 Transfer Learning with HRL (TransferHRL)

本小节回顾了通过多任务或迁移学习在多个任务上学习单个 HRL 代理的方法。 TransferHRL 类代表了所有这些方法,无论有或没有子任务发现。使用 HRL 进行迁移学习的概念源于某些子任务可以跨多个相关任务共享的想法。在一项任务的中学习执行子任务的策略也可用于加速代理对其他相关任务的适应。因此,这是 HRL 中需要解决的一个重要挑战。
迁移学习在 RL 的中使用,通过将经验数据、动作策略或 Q 值函数从一个任务转移到另一个任务来加速后一个任务的学习。在 HRL 中,迁移主要的任务策略(分层策略中的最高级别)的问题可以使用 RL 迁移方法来解决。但是,子任务成为额外的可迁移组件,包括它们的策略、终止/启动条件、子目标等。与使用标准 RL 的迁移学习相比,这带来了使用 HRL 的迁移学习 (TransferHRL) 所特有的额外问题。 TransferHRL 特有的一些问题如下:

  • Efficiently scaling to a large number of subtasks during lifelong transfer learning.在终身迁移学习期间有效地扩展到大量子任务。
  • Transferring subtasks across task domains with different state spaces. 跨具有不同状态空间的任务域传输子任务。
  • Learning subtasks from scratch on multiple related tasks.从头开始​​学习多个相关任务的子任务。

本小节将讨论这些问题,以及解决这些问题的相应方法。我们重申 ISD 方法(第 3.3 节)学习可以迁移到与任务无关的各种任务的子任务。然而,ISD 方法并没有解决上述问题。

3.4.1 Transfer + Subtask Policy Distillation

当从一项任务转移到另一项任务时,例如在终身学习期间,HRL 代理可能会学习并积累大量子任务策略 。由于需要存储多个子任务策略,天真地将大量子任务添加到更高级别策略的操作空间可能会导致内存效率低下。Tessler等人提出了一个深度 HRL 框架,称为分层深度强化学习网络 (H-DRLN),用于内存高效传输和保留一组与各种子任务相对应的预训练策略(without subtask discovery)。这些策略是使用手动定义的目标进行预训练的。策略通过作者介绍的(multi-skill distillation)多技能蒸馏方式传输到 HRL 代理(in a target task)。多技能蒸馏是策略蒸馏的一种形式,它使 H-DRLN 能够有效地将多个子任务的策略组合成一个单一的蒸馏策略。这使得 H-DRLN 内存高效。在执行目标任务时,H-DRLN 代理使用更高级别的策略来选择由提炼策略(在较低级别)执行的子任务。与标准 RL 相比,H-DRLN 学习在 Minecraft 游戏11 中执行多项任务,具有更低的样本复杂度和更好的性能。 H-DRLN 的主要限制是子任务的策略需要使用手动定义的目标(在蒸馏之前)进行预训练。此外,H-DRLN 能够将现有策略提炼成目标策略,但不提供持续发现新子任务的方法。

3.4.2 Transfer + Agent-space Subtasks

在特定任务域中学习的子任务策略取决于该特定域的状态空间 S。如果将该策略转移到状态空间不同于 S 的新任务域,则该策略可能不再是最优的。为了解决这个问题,有必要实现域不变传输,以便子任务策略对变化的状态空间具有鲁棒性。 Konidarisf等人提出一个方法可以迁移到具有不同状态空间的各种任务的option。

3.4.3 Transfer + Meta-learning of Subtasks

除了有效地转移预训练的子任务之外,从头开始跨多个任务发现子任务也很重要。Frans提出了一种深度 HRL 方法,用于通过对多个相关任务的元学习来发现option,这种方法称为元学习共享层次结构Meta Learning Shared Hierarchies (MLSH),包含一组具有跨不同任务共享参数的option,这些option是通过联合最大化所有任务中获得的预期奖励从头开始学习的(元学习)。MLSH 不使用任何其他手工制作的奖励或子目标。通过使用特定于任务的更高级别的策略,将学习到的选项转移到看不见的任务。 MLSH 在 MuJoCo运动域中进行评估,在该域上它优于标准 RL 和 Option-Critic。 MLSH 的主要限制是 Options 的数量需要固定,这限制了使用 MLSH 可以执行的任务的多样性。简单地增加选项的数量将需要代理存储和学习大量的选项策略,这在内存和计算方面可能效率低下。

3.5 Multi-agent Hierarchical Reinforcement Learning (MAHRL)
3.6 Key Takeaways from the Survey of Approaches

通过对本节中广泛选择的 HRL 方法的调查,我们旨在提供有关 HRL 研究的广泛进展和当前状态的重要见解。在这方面,今后将讨论调查方法的一些关键要点。

  • 没有统一的框架来学习分层策略——不同的方法应该为了不同的优势。
  • 多种原则可用于子任务发现。发现的子任务的质量没有单一的标准。
  • 沿着大规模技能发现(large-scale skill discovery)的方向可能会出现新的趋势。

4 Open problems for future research

HRL 在强化学习社区中获得了更多的兴趣。然而,关于 HRL 的可扩展性、效率和理论稳健性,仍然存在不同的未解决问题。今后将讨论一些这样的开放性问题,目的是为未来的研究确定更广泛的方向。此讨论不包括增量问题和任何特定方法的扩展。

  • Building a lifelong knowledge base of transferable skills.建立可转移技能的终身知识库。
  • Leveraging high-level planning for improved learning and adaptation.利用高层规划来改进学习和适应。
  • Providing theoretical support for HRL.为HRL提供理论支持。

5 Conclusion

这项调查提供了迄今为止在分层强化学习 (HRL) 领域所做研究的全景概述,从经典方法到最新进展。设计了一种新颖的通用分类法,根据它们解决的关键挑战将这些方法分为五个大类,它们是:(i)学习分层策略(LHP),(ii)学习与子任务发现统一的分层策略(UNI) , (iii) 独立子任务发现 (ISD), (iv) 使用 HRL 的迁移学习 (TransferHRL), 和 (v) 多智能体 HRL (MAHRL)。还根据具体方法对方法进行了进一步分类。通过调查,我们发现在解决 HRL 的两个主要子问题(如何学习分层策略和如何自动发现子任务)方面取得了重大进展,如 HRL 问题陈述中所述(第 2.2.3 节) )。该领域现在正朝着迁移学习和使用 HRL 的多智能体学习的方向迈进,其中可能会出现新的趋势,特别是在子任务发现方面。尽管取得了这一显着进展,但 HRL 仍有进一步增长的空间,以鼓励其作为可扩展且稳健的范式得到更广泛的接受。在这方面,我们确定了一组重要的开放问题,以激励未来的研究和进步。这些选择的问题涉及:(i)可扩展 HRL 的终身技能发现和利用,(ii)通过利用高级规划提高数据效率,以及(iii)为 HRL 方法的最优性提供更多理论保证。

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在模型无关的分层强化学习中,学习表示是一项重要的任务。学习表示是指通过提取有用的信息和特征来将观察数据转化为表示向量。这些表示向量可以用于解决强化学习问题中的决策和行动选择。 模型无关的分层强化学习是指不依赖于环境模型的强化学习方法。它通常由两个部分组成:低层控制策略和高层任务规划器。低层控制策略负责实际的行动选择和执行,而高层任务规划器则负责指导低层控制策略的决策过程。 学习表示在模型无关的分层强化学习中起到至关重要的作用。通过学习适当的表示,可以提高对观察数据的理解能力,使得模型能够捕捉到环境中的重要特征和结构。这些表示可以显著减少观察数据的维度,并提供更高层次的抽象,从而简化了决策和规划的过程。 学习表示的方法多种多样,包括基于深度学习的方法和基于特征选择的方法。基于深度学习的方法,如卷积神经网络和循环神经网络,可以通过学习多层次的特征表示来提取环境观察数据的有用信息。而基于特征选择的方法则通过选择最有信息量的特征来减少表示的维度,从而简化了模型的复杂度。 总之,学习表示在模型无关的分层强化学习中起到了至关重要的作用。通过学习适当的表示,模型可以更好地理解观察数据并进行决策和规划。不同的方法可以用来实现学习表示,包括基于深度学习的方法和基于特征选择的方法。这些方法的选择取决于具体任务和问题的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值