迁移学习在多智能体强化学习领域的应用综述

本文主要对A Survey on Transfer Learning for Multiagent Reinforcement Learning Systems中的内容进行翻译,重组和摘要。预计两周的时间内完成。

 

背景

多智能体强化学习算法致力于解决,在环境中,智能体需要和其他智能体协作等复杂问题。因为强化学习算法取样的复杂度相当高,因此从零开始,去训练一个复杂的多智能体系统是十分消耗计算资源的,甚至是不可能完成的任务。迁移学习,为我们提供了可以从过往经验,或者其他智能体中学习知识的方法。在这篇综述中,我们论述了在多智能体知识重利用,以及跨智能体的知识重利用中最新的进展。

 

相关研究

 

 

这张图形象说明了本文的研究内容,即强化学习,迁移学习和多智能体学习的交叉处。

接下来我们先分别介绍这几个概念

多智能体系统:

在一个系统中,存在多个智能体,他们之间可以相互交互,这就叫多智能体系统。多智能体系统具体一下的特点:

(1)智能体设计

在多智能体系统中,智能体往往是多样的。这种多样性可能既体现在硬件上,也体现在软件上。比如我们在上文中提到的足球机器人,守门用和攻门用机器人可能在硬件和软件上都是截然不同的。这样的智能体我们把其称为heterogeneous。

(2)环境

智能体存在于环境中,并不断与环境进行交互。环境可以分为静态的环境和动态的环境。在单智能体问题中,我们往往面对的是静态的环境,这种环境中,我们处理问题会更简便,并且允许更加严格的数学约束。但是在多智能体系统中,各种各样的智能体就让环境显得是动态的,这样子问题就会非常复杂。比如说,对于某个智能体而言,它在学习过程中根本无法观察到稳定的行为。我们还要去智能体有能力判断,在环境中,哪些我们应该当作智能体处理,哪些仅仅是环境。

(3)感知

智能体通过传感器获得的信息也是分布的。正所谓“横看成岭侧成峰,远近高低各不同”,不同的智能体,在空间,时间,语义理解都可能存在差异。对于不同智能体而言,这个世界是partially observable的。在这种情况下,对多智能体问题做规划是极其困难的,另外如何结合通过智能体的观察,更好的帮助他们掌握当前情况也是一个难题。

(4) 控制

和单智能体系统相反,多智能体系统的控制是分布的。也就是说,多智能体系统中每个智能体的决策更多地依赖于他们自身的设置。分布式控制往往更受大家喜爱,因为它更稳健,有更好的错误容忍度。

(5) 知识

在单一智能体系统中,我们认为,所谓知识呢,就是智能体对自己的行为有一个充分的了解,但是它往往是不知道自己的行为对环境会造成怎样的影响。对于多智能体系统,这个情况就会复杂一点,与单一智能体系统相同的是,智能体都充分了解自己的行为,如果智能体遇见和自己完全一致的智能体,那对面会采取什么行为也应该是清楚的,如果遇见了异构的智能体,那么当前智能体则不清楚对面有可能会采取的行为。

(6) 通讯

涉及到智能体之间的交互就必然要涉及通讯。通讯包括两端,接收方和发送方。面对通讯问题,我们要考虑我们要用什么样的协议进行通讯,通讯过程中,用怎样的语言,才能让彼此明白。

强化学习:

1. 单智能体的强化学习:强化学习是解决马尔可夫过程问题的一种解法,具体它对问题的一些基本定义,解法,在这里就不再赘述,可以看这位大佬的系列文章,讲的真的很全了。

2. 多智能体的强化学习:参见原文的论述,在基本定义上,是和单智能体类似的,但是整个搜索空间是由所有智能体共同决定的。为了解决多智能体的强化学习问题,首先我们考虑到的就是直接应用单智能体强化学习的手段,比如Q学习,策略梯度等等,如果每个智能体它的奖励函数都是一样的,我们甚至可以做一个集中式的强化学习的训练。但是无论是单智能体的强化学习手段还是这种集中训练的方式,都很难达成我们的目标。比如Q学习很难收敛,因为多智能体系统处在不断变化的过程中,集中式这种收敛空间极其庞大,而且大多数情况下,我们要处理的奖励函数是不一样的,详细的解释可以看多智能体强化学习笔记03

在这种情况下,我们就要去思考一下,怎么去解决多智能体强化学习的训练问题。在综述中,首先给了两个式子。

第一个式子是一个基于均衡矩阵的Q学习的公式。最后一项就是均衡矩阵,比如纳什均衡。可以看到,这个式子和博弈论紧密关联,我们在这里要考虑怎么去选取一个更合理的均衡矩阵。

第二个式子来自对抗学习,在这里,智能体a,有一个和他目标完全相反的智能体o,这里参数的学习其实是博弈论中的最大值最小值问题,比如围棋博弈,黑子的下一步落子考虑的是白棋最佳应对(奖励最小)的情况下,黑方的最佳应对(奖励最大)。

对于多智能体的强化学习,尽管很多算法取得了不错的成绩,但是其依然是建立在消耗大量计算资源,依赖大量与环境的交互的前提下取得的成绩。为了解决这些问题,有一些算法被提出,比如Dec-SIMDPs 和 CQ-Learning ,他们大致的思路就是智能体和智能体之间的协作,不是每个时刻每个状态都在发生的,在不存在协作的时候,我们完全可以使用单智能体强化学习的训练方法。另外,一些关系表示的方法也有可能加速这个训练的过程。

但是对于上述的问题,最有效的方法,还是利用原先已有的知识,也就是迁移学习的方法。

迁移学习

迁移学习在强化学习中应该怎么定义呢?强化学习的训练过程,我们可以把它理解为把知识空间映射成一种策略的过程。如果不考虑迁移学习,这个知识空间就是我们在与环境交互的过程中所有的样本。如果我们使用了迁移学习,那么我们的知识空间除了我们目标任务的样本,还包括了从其他相似任务中所得到的知识,以及通过与其他智能体沟通或者观察其他智能体所得到的知识。

迁移学习的核心是重利用知识。面对的最重要的问题就是什么时候,把什么知识,怎么样拿到知识空间中并重新利用(when, waht and how)。如果我们不重视这样的问题,没有章法的使用迁移学习,迁移学习甚至会给我们的训练带来负面影响。

明确了迁移学习是什么东西,下一步就是我们怎么去衡量一个迁移学习算法的好坏?

首先来看,更通用的,对于单智能体系统而言,我们应该看哪几个标准

1. jumpstart:因为迁移学习使用了其他的知识,那么一个良好的迁移学习在训练开始的时候就应该有一个比正常模型更好的表现。

2. Asymptotic Performance: 在复杂任务中找到最优解几乎是不可能的,那么我们应该期望迁移学习最后收敛的时候,他的次优解的表现应该是要超过原始方法的。

3.  Total Reward: 在整个训练过程中,迁移学习获得的总奖励应该会比原始方法高。

4. Transfer Ratio: 迁移学习总奖励与原始模型总奖励的比值。

5. Time to Threshold: 达到特定水平所有时间长短。

上述所有的标准都适用于多智能体系统,但是对于多智能体系统,还有一些其他需要考虑的因素,比如多智能体之间的沟通成本问题。如果仅仅为了一点表现的提升,我们要付出极其高昂的沟通成本,那么这种操作显然不是值得的。

对多智能体迁移强化学习研究的分类

综述把相关研究分为两大类:

1. Intra-agent transfer :  主要研究的是怎么把其他任务或者领域的知识迁移到目标的智能体和任务中。他主要要考虑(1)什么样的源任务适合这次的迁移?(2)源任务和目标任务是怎样关联起来的?(3)你要把源任务的什么迁移到新任务中呢?

2. Inter-agent transfer: 对于单智能体的迁移学习,通常我们指的就是第一种。在多智能体强化学习中,情况发生了变化。我们可以通过最大限度的利用其他智能体通讯过来的信息进行学习。

下面是整个的分类图示:

Intra-agent transfer

1. Adapting to Other Agents

我们在处理多智能体问题的时候,常常会遇到这样的情况,一个已经训练好的多智能体系统要接纳新的智能体加入。这个新加入的智能体不知道已有的智能体是怎样的策略,或者在一个已经训练好的多智能体系统中,突然环境发生了变化,智能体要做适应。在这一分类中,我们就处理类似的问题。

Banerjee et al. (2007) 提出了一种能够在相似的玩游戏的任务中复用知识的迁移学习方法。智能体 们会尽可能地构建和游戏结果相关的但是是与游戏无关的独立的特征树。这些树就能 够被用来匹配原任务和目标任务的状态空间,使之能够复用价值函数的值。该算法在 某些棋类游戏的知识复用中有非常好的效果,但是它只适用于有着颇为严格限制条件 的情况,因为只有当对手非自适应的且固定的策略时该迁移算法才是成功的。除此之 外,该算法中特征工程的要求比较高,需要人类工程师保证设计的特征是好用且在所 有的游戏中都具有相同的语义。

Barrett and Stone (2015) 解决的是让智能体学会在不同配置的团队中适应 的挑战[61]。他们的方法假设是好的策略都是备选的,即该任务的目标不是学会最优的 策略,而且是策略集中挑选最优的策略。为了解决该问题,一组信念值被储存起来并 随着训练而更新,该信念值能够预测在当前团队中使用某种策略的期望损失值。一旦 信念值被训练得很准确,它们就能够作为挑选最适合的策略的依据。在该文献中,在 学会适应新团队的过程中,对初始策略的直接改进是不被考虑的。

Hernandez-Leal et al. (2017b)  DriftER 的方法来自动地检测在对抗的场景中对手的策略什么时候会发生变化。为了 解决该问题,需要一个能够预测对手表现的模型来帮助学出最优的应对策略。一旦有 了该模型,智能体就要时刻监控该模型预测的质量。一旦预测质量突然下跌,就说明 对手改变了它的策略,这就意味着智能体必须重新训练该预测模型。

Kelly and Heywood (2015) 提出了一种不同的方法来将之前学会的策 略应用到新的任务上。他们提出了一种叫基因编程的算法,然后用该算法训练出一组 神经网络当成一组策略,其中每个神经网络都能独立地预测每个动作的价值。然后, 这些被训练好的策略会被迁移到新的任务中,且组成一个多层架构来学会什么时候触 发哪一个策略。

2. Sparse Interactions Algorithms

如果智能体之间的交互比较稀疏的话,我们可以考虑在发生交互的时候才使用多智能体强化学习的算法,在其他情况下就当作普通的智能体强化学习算法来处理。我们会发现,这种算法常用于均衡算法的效率提升,因为可以节省大量计算均衡矩阵的时间。

Vrancx et al. (2011) 提出去让智能体学习什么时候自己的行为可能是”危险的“,会对目标智能体的奖励造成影响。一般,可以通过统计检验去判断状态是否危险,以及建立一个分类器去识别这些状态。

Hu et al. (2015b) 学习单个智能体任务,并引入可能对目标奖励产生影响的新的智能体。然后,将单智能体任务中的转移函数模型与多智能体任务的转移函数模型进行了比较,并在局部奖励函数不依赖于其他智能体行为的状态下重用了价值函数。

3. Relational Descriptions

寻找状态和状态之间的共性可以帮助我们加速和简化学习的过程。因此,寻找对象之间的联系也可以帮助我们更好的做任务和任务之间的映射。

Koga et al. (2013) 提出可以同时去学习具体的策略和抽象的策略。开始使用抽象的策略可以帮助我们与环境交互的更快,等后期学习到具体的策略后就使用具体的策略进行交互。 Freire and Costa (2015) 在文献中显示,这种抽象策略还可以在不同任务中使用。

Koga et al’s later work (2015) 之后提出,我们可以把源任务不同的具体策略结合,形成抽象策略。他们显示了这种抽象策略会比建立一个由具体策略组成的集合的表现要好。这种方法是针对单智能体训练的,但是依然可以用在多智能体系统中,比如 Multiagent OO-MDP (Silva et al., 2019) or Multiagent RMDP (Croonenborghs et al., 2005). 

Silva and Costa (2017b) 提出了一种基于面向对象的任务描述的自动计算跨任务传递值函数映射的方法。

Proper和Tadepalli(2009)也利用关系表示在任务之间传递知识。在训练中,给一组智能体分配一个子任务,但是不同组之间的子任务是不同的,等子任务学习完之后,我们构建新组,包含更多的智能体,去解决更复杂的任务。

4. Source Task Selection

Sinapov et al. (2015) 提出训练一个回归算法来预测同一领域内任务之间的转移质量。回归使用的特征是设计者选择的。当一个新的任务被分配给agent时,根据先前定义的任务特征来预测转移质量,并建立源任务的排序,这种方法比较依赖于人类特征的选取。

Isele et al. (2016) 也依赖于相似的任务特征。他们的算法考虑了从连续任务转移的优点,并且在源策略数量方面具有恒定的计算复杂度。

在不假设当前任务的参数化已知的情况下,Braylan和Mikkulainen(2016)评估库中的策略,以在新任务中选择表现最好的,然后构建一个源任务集合,在目标任务中使用和重新定义。虽然他们的方法只适用于状态转移函数估计,但类似的思想也可以用于重用额外的知识。

Fitzgerald et al. (2016) 提出可以去洞察两个任务之间的映射。他们的方法包括观察来自人类教师的演示,这些观察用于确定映射函数,该映射函数将源任务和目标任务中的对象关联起来。

5. Curriculum Learning

Narvekar等人。(2016)借鉴了监督学习领域的课程建设理念(Bengio等人,2009)。他们的主要思想是通过在同一个领域中构建一系列更简单的任务,并跨任务重用收集到的知识,从而更快地学习复杂的任务。为此,设计者向智能体提供一个环境模拟器,可以通过改变一些特征值来自由修改,并提供启发,指导代理如何更改模拟器参数以简化任务。作者指出,课程的使用可以明显地加速学习过程。然而,在复杂的任务中,我们只有不精确的模拟器来建立课程,特别是对于系统中其他代理的策略未知的多智能体系统。尽管还不清楚该提议是否能处理不精确的模拟器,但这仍然是一个值得进一步研究的非常有趣的话题

Svetlik等人。(2017)通过构建一个有向无环图,并根据转移潜能启发式剪除一些不能帮助学习代理的源任务,扩展了初始方法。此外,这样一个图允许识别可以并行学习的课程源任务,这在理论上可以将课程的学习过程划分为多个代理(可以使用任何代理间转移方法组合收集到的知识)。Silva和Costa(2018)后来扩展了Svetlik的提议,基于面向对象的描述生成课程,这可能代表着向多智能体课程迈进的一步。

Florensa等人。(2017)建议改变初始状态分布,使任务初始化更接近目标,从而使智能体更快地获得奖励,然后逐步将任务开始得更远,以便更有效地探索整个环境。虽然他们的提议在一个限制性的环境中有效,但是这个想法可以被用来构建合作MAS的课程,因为智能体可以在没有太多信息的初始形式中开始学习。

6. Biases and Heuristics

在训练新的智能体过程中,我们的训练涉及到了智能体对环境的探索。如果我们能利用以前的知识去提高探索的效率,那么训练速度就会提高。

Bianchi et al. (2009) 提出使用启发式算法,从先前解决的任务建立的案例库中支持环境探索。通过相似性函数选取与目标任务相似的实例,将前一个任务的值函数转化为启发式算法进行探索。他们的提议加速了学习,并且适用于多智能体任务,但是比较任务所需的相似性函数需要领域知识。因此,未来工作的一个选择是确定从知识库中检索任务的更好方法。

Boutsioukis et al. (2011) 使用人工指定的任务间映射来关联任务之间的状态空间。然后,可以使用此映射初始化新策略,方法是使其偏向于源任务中的最佳操作。该策略通过在源任务中具有最高值函数的动作的Q值中引入一个小偏差值来实现,并在学习过程中对这些动作进行优先排序。使用偏差值的好处是,如果给定的映射不正确,则很容易忘记偏差值。然而,他们的提议需要一个非常详细的人工编码映射,这对于复杂的任务来说通常是不可用的。

Didi和Nitschke(2016)提出调整前一个任务的策略,以改进目标任务中的NEAT(Stanley&Miikkulainen,2002)算法的优化。该算法通过一个神经网络来编写代理策略,该神经网络通过与环境的交互来优化其拓扑结构和权重。他们的方法在具有挑战性的Keepaway领域取得了很好的效果,但是非常依赖于人类来定义任务之间的参数和映射。因此,确定一种更为自主的方式来转移整洁的学习政策可能是下一步工作的一条有希望的路线。

 Inter-Agent Transfer Methods
 

1. Action Advising

假设智能体对操作集和通信信息的协议有共同的理解,那么即使其他智能体的内部实现未知,一个智能体也可能为另一个智能体提供操作建议。

Gri offith等人。(2013)建议从人类顾问那里得到反馈,表明智能体是否选择了一个好的行动。这种反馈并不被认为是完美的,因此将所传达的信息与探索相结合,以便在反馈不一致的情况下加速学习而不妨碍学习。作者用一个“模拟人”对该方法进行了评价,显示了良好的性能。

Torrey和Taylor(2013)提出了teacher-student,旨在通过接受受限于沟通的建议来加速学习过程。他们的框架还考虑到代理可能使用不同的内部表示(Taylor等人,2014b),这意味着该框架既可用于人与人之间的传输,也可用于自动代理。假设一个顾问愿意向被建议者提供行动建议,那么他们就可以在有限交流的情况下显著加快学习速度。

 

2.  Human-focused Transfer

虽然RL算法在某种程度上是基于动物(包括人类)如何进行自主学习的,但实际的RL实现仍然与人的推理过程有很大的不同。内部表现形式以及人类和自动化代理如何感知和与环境交互的差异,为将人类专业知识“转移”给RL代理带来了一些障碍。然而,在一个机器与我们的专业或家庭环境相结合的世界里,正确地接受来自人类的指导和指示将是必要的。此外,根据人类的技术背景,可以使用不同的转移程序。例如,人工智能专家可能能够设计出信息丰富的奖励形状或规则,而外行人可能只能给出简单的指令,通常是用一种很难翻译成机器的语言。因此,适当地利用来自人类的知识并非易事,

Judah等人。(2010)将学习过程分为批判和实践阶段。在前一种情况下,教师通过滚动上一次探索的状态并将行为标记为好的或坏的来提供演示,在后一种情况下,学生探索环境并学习类似于常规RL的策略。最后的策略是通过最大化执行好操作的概率,同时最小化执行坏操作的概率来确定的。他们的方法在真实的人类身上得到了验证,并呈现出了有希望的结果。

Peng et al. (2016a) 建议调整驱动速度,以便更好地指导人类观察者何时最需要帮助。当代理对其策略有更大的信心时,操作之间的时间间隔比信任度低时要短。作者表明,该程序有助于更好地利用有限的人的反馈,但它只适用于驱动速度可以控制的环境。

Krening等人。(2017)努力促进人类参与RL智能体的学习过程。他们建议通过自然语言解释接受建议,并通过情感分析将其转换为面向对象的建议。该过程的结果是一组建议,引导学生以给定的方式与环境中的对象交互,并可与面向对象的RL算法一起使用(Cobo、Isbell和Thomaz,2013;Silva等人,2019)。他们表明,自然语言建议可以表现出比常规学习更好的表现,同时有助于将外行人员纳入智能体培训过程。

 

3. Reward Shaping and Heuristics

 

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值