题目:LIIR: Learning Individual Intrinsic Reward in Multi-Agent Reinforcement Learning
出处:Neural Information Processing Systems 32(NeurIPS 2019),人工智能的顶级会议。
摘要:合作分散多智能体强化学习(MARL)中的一个巨大挑战是,当只获得团队奖励时,为每个个体智能体生成多样化的行为。先前的研究在reward shaping或设计一个集中的批评家方面付出了很多努力,该批评家可以有区别地信任智能体。在本文中,我们建议合并这两个方向,并学习每个agent一个内在的返回函数,该函数在每个时间步对agent进行不同的刺激。具体而言,特定智能体的内在奖励将涉及计算智能体的不同智能体评论家,以指导其个体策略的更新。同时,参数化的内在奖励函数将被更新,以最大化来自环境的预期累积团队奖励,从而使目标与原始MARL问题一致。所提出的方法在MARL中被称为学习个体内在奖励(LIIR)。我们将LIIR与星际争霸2中战斗游戏中的一些最先进的MARL方法进行了比较。结果证明了LIIR的有效性,并且我们表明LIIR可以为每个个体智能体分配每个时间步长的深刻内在奖励。
1,Introduction
许多现实世界中的问题,如交通灯控制、自动驾驶车辆的协调、资源管理和多玩家视频游戏,可以自然地表述为合作多智能体系统,其中目标是从一组智能体的角度最大化回报。当使用能够访问所有智能体的联合或全局状态的集中式控制器操纵智能体时,智能体之间的协调更容易,并且控制器的主要工作通常是在智能体之间寻找有效的通信方案。示例包括设计有效的集中式MARL架构的各种方法。
不幸的是,当智能体被独立部署并且通信被禁用或禁止时,每个智能体必须根据其部分观察轨迹预测其自身的动作条件。如果没有一个集中的控制器,每个智能体负责在自己的决策上与其他智能体协作。这给每个智能体策略的能力带来了很大的负担。更糟糕的是,在大多数现实世界的MARL应用程序中,智能体只收到团队奖励,很难从中推断每个智能体对团队成功的贡献,这使得智能体之间的学习和协作变得非常重要。在区分智能体的信用方面已经付出了很多努力,即MARL中的信用分配问题。一般的方法是奖励塑造,然而,这需要大量的人力来为每个个体智能体分配精确的奖励。在一些现实任务下,例如减少交通网络中的延迟,甚至可能不存在对单个智能体(示例中的车辆)的奖励功能的任何明确选择。通常采用的方法的另一个分支试图设计一个集中的批评家,该批评家能够在训练期间区分智能体的状态动作值[9,10],然后在测试期间执行分散执行。
我们的方法建立了奖励塑造和批评者学习之间的联系。也就是说,我们建议通过最大化集中评论来学习每个智能体的参数化个体内在奖励函数。[13]中针对单智能体学习场景引入了最优内在奖励问题,并在最近的一些RL方法中进行了研究[14、15、16]。在这个概念的启发下,我们建议在多智能体系统中引入内在奖励设计,以在环境仅返回团队奖励时区分智能体的贡献。具体而言,我们学习每个智能体一个参数化的内在奖励函数,该函数在每个时间步输出该智能体的内在奖励,以诱导多样化的行为。有了这些内在奖励,我们为每个智能体定义了一个不同的智能体预期回报,即来自环境的真实团队奖励和学习的内在奖励的组合。使用actor-critic方法,在相应Actor-Critic的指导下更新每个智能体的个体策略。更新内在奖励函数的参数,以最大化来自环境的标准累积折扣团队回报。因此,整个程序的目标与MARL问题的目标一致。
从优化的角度来看,所提出的方法可以归类为双层优化,其中,解决单个智能体目标的问题嵌套在外部优化任务中,从而最大化标准多智能体回报。策略参数和内在奖励函数分别被视为内部和外部优化问题的参数。我们将提出的方法称为MARL中的学习个体内在奖励(LIIR)。从经验上看,我们表明,在星际争霸II的战斗游戏中,LIIR在广泛的设置上优于许多最先进的MARL方法。我们还进行了深入的案例研究,以可视化学习到的内在奖励,结果表明,学习到的固有奖励函数可以为智能体生成不同的奖励信号,智能体也可以以协作的方式采取不同的行动。
2,相关工作
当考虑MARL中的集中控制器时,控制器将智能体的联合或全局观察作为输入,并在一个步骤中为智能体输出多个动作。已经提出了许多关于在集中控制器内的智能体之间寻求有效通信架构的研究。例如,密集连接的通信层或模块已嵌入到直接为智能体输出多头预测的集中控制器中[6,5]。还引入了递归神经网络(RNN),使一系列智能体能够通过递归模块进行通信[7]。然而,在许多MARL应用中,智能体必须单独部署,每个智能体必须根据其部分观察做出自己的决策。
分散的方法自然处理上述情况。最简单的方法是为每个智能体学习单个策略或Q函数。这首先尝试了Q学习[17],然后扩展到应用深度神经网络[18,19]。在只给予团队奖励的情况下,完全分散的方法受到限制,因为很难区分智能体人的贡献。为了解决去中心化MARL中的信用分配问题,许多现有的方法利用了具有集中批评和去中心化策略的框架。也就是说,通过将个人观察作为输入,独立部署策略,而集中式评论家则侧重于量化智能体之间的差异。例如,反事实多智能体策略梯度[9]使用反事实基线为智能体分配信用;值分解网络[20]将集中值分解为个体智能体值之和,以区分它们的贡献;QMIX[10]方法采用了类似的思想,即假设集中Q值函数随单个Q值单调增加。现有的方法大多集中在评论家的架构设计上,即使是对价值函数的强烈假设也是不可避免的。我们的方法与这些方法的不同之处在于,我们建议在每个时间步学习每个智能体的内在奖励,而不是使用价值函数。其好处在于,价值函数没有附加任何假设,并且在每个时间步向智能体分配明确的即时内在奖励,以分配他们的信用。
我们的工作还与单位剂设置[21、22、23、16、24]中的最佳内在奖励设计问题有关。一些先前的作品已经使用启发式指标来定义固有的奖励。例如,在[22]中,内在奖励被定义为两个连续状态之间的平方差,在[23]中,一个名为“好奇心”的度量被用作固有奖励。在[24]中,内在奖励的学习与策略的更新集成在一起。最近的方法[16]提出了参数化固有奖励功能的参数,并更新策略参数和固有的奖励参数。在本文中,我们将设置扩展到多智能体系统,并使用个体的内在奖励功能来区分智能体的信用。
3,Backgroud
3.1,协作多智能体强化学习
我们考虑一个完全合作的多智能体系统,其中的智能体需要独立部署,而无需中央控制器。该系统可以描述为一个元组
,其中
,表示
个智能体的集合。将智能体的观察空间表示为
,动作空间表示为
。在时间步
,设每个
的
是agent
的部分观察结果。设每个
的
指示智能体
采取的动作。我们重载符号并使用
表示环境的真实状态。
表示转移函数。
指示来自环境的团队奖励。为了将团队奖励与环境和将要学习的内在奖励区分开来,我们将团队奖励称为外部团队奖励
,如下[16]中的用法。
是折扣因子,
是初始状态
的分布。设
是智能体
的随机策略,用
表示。设
,其中
,表示预期的折扣外部奖励,其中
,
其中
,并且
。将外部值函数定义为:
。我们的目标是找到最佳策略
达到最大预期的外部团队奖励
。
3.2,集中学习与分散执行
具有分散执行的集中式学习(CLDE)是一种常用的架构,用于学习集中式批评家在训练期间更新分散策略。在CLDE中,通常选择演员-评论家(AC)风格的方法[25、26、27、28、29]。在我们的情况下,AC算法使用
个独立的参数化策略
其中
并使用策略梯度通过最大化预期外部报酬
来更新
,其中
是集中的批评家。有几种估计
的方法。例如,
是标准优势函数[27,28],其中
是智能体的连续状态。在[9]中,
定义为估计的状态作用值函数减去反事实基线。
3.3,参数化内在奖励
最近的一项研究[16]研究了在单智能体环境中学习参数化的内在奖励函数。其目的是明确定义内在奖励函数为:
对于智能体的状态-动作对
,它可以概括为外在的奖励
作为更新策略的返回标志。更新内在奖励参数
,使预期的外在奖励
最大化。更新
的直观方法是发现
的变化会通过策略参数的变化影响外部值。这种技术可以被视为元学习的一个实例[30,31,32];内在奖励函数作为元学习者,学习如何提高智能体的目标。在我们的案例中,我们扩展了内在奖励学习方法来处理分散的MARL问题,我们使用内在奖励来不同地刺激智能体从环境中学习。
4,方法
在本节中,我们正式提出了LIIR方法。我们首先根据第3节中介绍的内容提供所考虑问题的正式定义,然后介绍一种用于解决所提出目标的双层优化算法。
4.1,目标
通过定义一个内在奖励函数
,该函数由
参数化,并将单个智能体
的状态-动作对
作为输入,我们建议为智能体
分配一个不同的智能体奖励:
在时间步骤
。为了简单起见,我们省略了奖励函数的参数,
是一个超参数,用于平衡外部团队奖励和独特的内部奖励。请注意,在团队奖励的标准MARL问题中,每个智能体不存在任何不同的奖励。现在,在时间步骤
为每个智能体创建智能体奖励
之后,我们相应地将每个智能体
的折扣智能体奖励定义为:
智能体
的动作值函数为:
与外部(标准)值
不同,这些智能体值函数
不具有任何物理意义,它们仅用于更新单个策略参数
。现在,考虑的总体目标定义为:
其中,
,取决于
和
,
表示内在奖励参数集
,
表示策略参数集
。
在问题(5)中,目标是通过优化
来最大化
,而策略参数
通过最大化智能体
的proxy 预期折扣收益
来优化。优点在于,通过学习每个智能体在每个时间步长的不同内在报酬,智能体将受到不同的刺激,这将通过策略梯度累积地影响策略学习。此外,从优化的角度来看,问题(5)可以被视为双层优化问题,因为最大化单个智能体预期收益的问题嵌套在外部优化任务中,即最大化外部预期收益。在下一小节中,我们将讨论
如何与内在奖励参数
相联系。
4.2,算法
作为一个双层优化问题,在每次迭代中,策略参数相对于内部智能体任务进行更新,而内部奖励参数进行更新,以最大化外部预期回报。
图1:LIIR方法的体系结构。该架构包含四个参数组件:用于策略的
,用于内在奖励的
,以及分别用于外在值和 proxy 值的
和
。
具体而言,每个智能体的策略参数由其 proxy 评论家的策略梯度更新。给定由策略
生成的轨迹,可以通过应用(1)中定义的策略梯度来更新
:
(6)
其中,
是可以多种方式选择的
评论家[25,26,27,28]。例如,
导致强化学习算法[26]。在本文中,我们选择
作为优势函数[27,28],其中
是由
参数化的
值,
是智能体
在轨迹中的下一个状态。给定(6)和策略学习率
,更新的策略参数
可以表示为
。
然后,我们建立了
和
之间的联系,并指定了
的更新过程。给定更新的策略参数
,使用链式规则,我们有
(7)
(7)的目的是通过对更新后的策略参数
的影响,阐明
的变化对
的影响。这是元梯度学习中常用的技术[30,31,32,33]。计算元梯度
需要更新后的策略参数
生成的新样本,而这可以通过使用重要性采样重复使用
生成样本来避免[16]。在(7)中,
可通过随机梯度估计为:
其中
是集中的外部批评家。类似于
批评者,类似于
批评者,我们选择
,其中
是由
参数化的外部值。(7)中的第二项可导出为:
5,实验
在本节中,我们首先在一个简单的1D追踪游戏中评估LIIR,该游戏专为所考虑的设置而设计,以查看LIIR是否可以学习合理的独特内在奖励。然后我们全面研究星际争霸II游戏中几个具有挑战性的微管理游戏中的LIIR,并将LIIR与一些最先进的MARL方法进行比较。
5.1,一个简单的一维追踪研究
我们设计了一个名为1D追踪的简单游戏,以快速验证LIIR学习的内在奖励的质量。在1D 中,一个由两个智能体组成的团队最初被分配了一些分别由x和y表示的随机整数,每个智能体可以从{+1,−1,0}来增加、减少或保持其值以接近智能体未知的目标值z。对于协作环境,两个智能体的团队奖励设置为与其值和目标值之间的绝对差之和成反比。也就是说,两个智能体都应将其值调整为目标值。每个智能体的观察是一个二维向量,包含其当前整数值和另一个智能体的整数值。如果两个智能体都采取接近目标值的行动,则团队奖励被设置为+0.01,如果两个智能体都采取了远离目标值的操作,则为0.01,否则为0。目标值设置为0。两个智能体的初始整数是从{−10,...,10}。
我们基于图1所示的架构实现了LIIR。补充材料中提供了详细的网络结构。在图2中,我们绘制了1000集的平均内在奖励分布的直方图。我们将接近目标的动作称为“好”动作,将远离目标的动作表示为“坏”动作。结果表明,LIIR可以为智能体分配合理的内在报酬。
图2:1000个1D追踪游戏中学习到的“好”和“坏”动作的固有反向v.s.频率(计数)分布。
5.2,星际争霸2微管理
在本小节中,我们基于学习环境SC2LE[34]和SMAC[35]中的迷你游戏设置,全面评估了星际争霸II游戏中提出的LIIR方法。我们将LIIR方法与使用CLDE架构的许多最先进的MARL方法进行了比较。我们还提供了一些有见地的案例研究,以可视化学习的内在奖励。
《星际争霸2》是一款流行的实时战略游戏,已经在MARL环境下进行了研究[9,10,7,36,37]。在实验中,我们考虑了星际争霸II中的对称战斗游戏,其中同时考虑了单类型智能体和混合类型智能体。
具体而言,所考虑的场景包括3名海军陆战队与3名海军陆战队员(3米)、8名海军陆战队员与8名海军陆战队队员(8米)、2名跟踪者和3名狂热者与2名跟踪器和3名疯狂者(2S3Z)以及3名跟踪者与5名狂热者对3名跟踪者和5个狂热者(3S5Z)。在这些设置中,海军陆战队和跟踪者分别是人族和神族的单位,他们都可以攻击远处的敌人,而狂热者是神族的近战单位,只能攻击站在近处的敌人。在所有这些游戏中,只有来自自身的单位被视为智能体。
每个智能体都由几个属性描述,包括生命点(HP)、武器冷却(CD)、盾牌(针对2S3Z和3S5Z)、单位类型、最后一次行动和观察单位的相对距离。敌方单位的描述方式相同,但CD除外。智能体的部分观察由单位的属性组成,包括智能体和敌方单位,显示在其视野范围内,即具有一定半径的圆形。行动空间包含4个移动方向,k个攻击行动,其中k是地图中敌人单位的固定最大数量,停止和无操作。输入维度和输出操作维度是固定的,对智能体和敌方单位有一定的排序。死亡的敌军单位将被掩蔽在行动空间之外,以确保执行的行动有效。在每一个时间步骤,智能体都会获得一个联合团队奖励,奖励由智能体的总伤害和敌方的总伤害确定。在所有场景中,按照[9,10]中的配置,我们针对内置AI对手训练智能体。可以从SMAC环境中获取更多详细设置[35]。
5.2.1,比较方法和训练细节
考虑的评估方法包括:
- 独立Q学习(IQL)[17]:IQL为每个智能体训练分散的Q功能。由于智能体的观察空间和行动空间在特定环境中是相同的,因此将在所有智能体之间共享策略;
- 独立演员评论家(IAC)[9]:IAC与IQL相似,只是它采用了演员评论家方法;
- Central-V[9]:该方法学习具有分散策略的集中式批评者。同样,所有智能体共享相同的策略网络;
- COMA[9]:该方法学习一个集中式批评者,即国家行动值减去反事实基线;
- QMIX[10]:该方法学习每个智能体的分散Q函数,假设集中Q值随单个Q值单调增加。在实现中,智能体共享相同的Q功能;
- LIIR:建议的方法。在实验中,智能体共享相同的策略、内在报酬函数和智能体批评。由于每个智能体都有自己的部分观察结果,共享策略参数并不意味着它们的行为相同。
对于COMA和QMIX,我们使用它们的原始实现,其中主策略网络或Q网络由一些完全连接(FC)层和GRU模块组成。3与COMA和QMIX相比,所有其他方法采用类似的网络结构。如图1所示,LIIR的参数包含对应于共享策略参数θ、内在奖励参数η、智能体值参数φ和外在值参数φ的4个分量。为了实现公平的比较,我们将策略网络结构(即θ)设置为COMA的策略网络所使用的结构。然后,我们压缩其他参数η、φ和φ,使它们的总尺寸等于彗形像中剩余部分的参数尺寸。更多细节可在补充材料中找到。所有方法在3M和8M中训练300万步,在2S3Z和3S5Z中训练1000万步。在整个实验过程中,(2)中的超参数λ设置为0.01(我们尝试了不同的λ选择,但发现结果没有太大差异)。我们使用5e-4的固定学习率,并对所有方法使用32集的批次。我们使用32个演员并行生成轨迹,并使用一个NVIDIA Tesla M40 GPU进行训练。
5.2.2,结果
为了评估每种方法的性能,我们每100集冻结一次训练,并在20集以上测试模型,以计算平均测试获胜率。整个训练过程如下:3M是最简单的游戏,所有的测试获胜率随着训练步骤的增加而不断增加。在8M、2S3Z和3S5Z中,独立学习方法,即IQL和IAC,无法为智能体学习好的策略,并且使用CLDE架构的方法总是优于独立学习方法。在3M和8M中,COMA和Central-V表现出相当的性能,而在2S3Z和3S5Z中,Central-V优于QMIX和COMA。对于所有这些场景,LIIR方法始终显示出最佳性能,并且在所有场景中都实现了约90%的获胜率。这表明,学习内在奖励函数最终可以产生更好的训练策略。
图3:测试所有场景中各种方法的获胜率与训练步骤。
5.2.3,可视化学习的内在奖励
除了在第5.2.2节中评估训练策略的性能外,我们更想知道学习的内在奖励函数对策略学习的实际贡献有多大。为了弄清楚在内在奖励函数中学到了什么,我们建议显式地可视化这些奖励。也就是说,我们在测试期间的完整轨迹中绘制每个智能体在每个时间步的学习内在奖励。值得一提的是,在测试过程中,内在奖励与学习策略无关,在生成轨迹时根本不会使用这些奖励。为了清楚起见,我们随机选择了3M和2S3Z中包含较少智能体的两个测试回放,以绘制所有智能体的内在奖励。图。图4和图5分别显示了3M和2S3Z中的内在奖励。我们还附加了一些辅助快照来解释曲线中的一些有趣片段。在所有快照中,红色单位表示LIIR控制的智能体。
图5:2S3Z上的内在奖励曲线和辅助快照示例。
在图4(a)中,智能体1在时间步骤9处死亡,并且我们可以观察到,与其他两个智能体相比,在时间步骤6之后,其内在奖励变得非常低。如图1和图2所示。在4(b)和(c)中,在时间步骤6,所有三个智能体集中火力攻击敌方海军陆战队中的一个,而智能体1的HP最低;之后,智能体1仍然保持射击而不是逃离敌人,并且固有奖励函数预测低rin1,这表明u1=攻击在当时不是一个好动作;最后,智能体1在时间步骤9死亡,相应的内在奖励非常低。
在图5(a)中,在时间步骤27之后,我们看到与其他智能体相比,智能体2的内在奖励增加了很多。图。5(b)和(c)提供了一个清晰的解释,即在时间步骤27,少血的智能体2停止射击并沿红色箭头(此处移动动作仅4个方向)运行,以避免敌人狂热者的攻击;直到在时间步骤32到达敌方跟踪者,智能体2开始攻击最终被杀死的跟踪者。此外。4(a)和5(a)持续增加,表明受控队最终赢得比赛。
除了可视化上述两个情节,我们还提供了学习的内在奖励的总体统计数据。当100次测试中相应的生命值低于50%时,我们收集行动“攻击”的内在奖励。然后,我们计算健康点和内在奖励之间的余弦相似度(值为[-1,1])。2S3Z和3M的平均余弦相似性分别为0.55和0.67。结果表明,健康点与内在报酬正相关。也就是说,当健康点较低时,采取“攻击”行动的内在奖励通常也较低,这在这种情况下是合理的。
上述案例研究表明,学习的内在奖励确实可以为智能体提供不同的反馈信号,这些信号在评估智能体的即时行为时非常有用。
6,结论
我们提出了一种新的多智能体强化学习算法,该算法学习每个智能体的个体内在奖励。该方法可以为每个智能体分配不同的内在奖励,这样即使环境仅反馈团队奖励,智能体也会受到不同的刺激。给定每个智能体的内在奖励,我们将每个智能体定义为智能体评论家,以通过演员-评论家算法指导他们的策略学习。我们表明,所描述的多智能体学习问题可以看作是一个双层优化问题。我们在《星际争霸II》中的战斗游戏中进行的实证结果表明,与许多最先进的竞争对手相比,学习内在奖励函数最终可以产生更好的训练策略。我们进一步进行了两个案例研究,以可视化学习的内在奖励值,结果为学习的内在回报的效果提供了清晰的解释。
对于未来的工作,我们有兴趣将LIIR方法应用于更具挑战性的场景,如具有多个智能体的现实世界交通控制和竞争性多智能体系统。此外,除了(2)中的简单求和形式外,研究智能体报酬函数的最佳形式也是有趣的。