APP下载

一种集群通信的多智能体强化学习算法

2021-10-18耿俊香

沈阳理工大学学报 2021年4期
关键词:集群状态智能

段 昶,陈 亮,耿俊香

(沈阳理工大学 自动化与电气工程学院,沈阳 110159)

过去十几年人工智能(Artificial Intelligence,AI)领域进步巨大,在人为监督下,机器在视觉识别和语音识别方面一定程度上超过了人类的感知水平;在反馈奖励的作用下,单个人工智能单位(即代理)在各种游戏中击败了人类,如雅达利电子游戏、围棋游戏、纸牌游戏[1-3]等 。

真正的人工智能包括社会和集体智慧,为实现人工通用智能的宏伟目标奠定了重要基础。通信是多智能体的一个基本方面,其使智能体能够作为一个群体而不是个体的集合来行动,对于现实世界中执行复杂任务至关重要;然而在现实世界中,每个参与者的能力和对世界的可见性有限,因此交流对于代理协作完成多智能体任务[4]很重要。每个智能体的模型通过强化学习来学习[5-8],但其通信内容和格式是预先确定且不可学习;如在智能体足球游戏中,智能体被设计为在每个决策前都交流其位置和离球的距离。

本文提出一个模型,协作智能体在采取行动前学会彼此间的通信,各智能体间的通信内容可以被学习,同时采用集群机制过滤掉与该智能体关联性小的信息。该模型采取反事实的思想计算每个智能体选取的策略对整个智能体系统的贡献。经实验验证,集群通信的多智能体强化学习算法(Multi Agent Cluster Deep Deterministic Policy Gradient,MACDDPG)能表现出优异的性能,尤其是在复杂场景中表现出优于其他典型算法的稳定性和收敛速度,显示了其在大规模多智能体实际应用中的潜在价值。

1 MACDDPG

1.1 模型结构

MACDDPG算法将集群机制引入深度确定性策略强化学习算法(Deep Deterministic Policy Gradient,DDPG)框架中,并支持智能体策略网络自适应共享参数。MACDDPG采用集中训练、分散执行的模式,其模型结构如图1所示。

图1中,学习智能体的局部q值函数Qi,对其累加求和,得到整个网络的联合动作值函数Qtot,用其计算全局误差损失进行集中训练。在执行过程中,只用到网络中和环境交互的部分,每个智能体将根据其价值函数导出的本地策略来执行,并允许同一个集群中的智能体通信。每个智能体的动作值函数Qi或策略依赖于其观测值和集群内交流的信息;每个集群负责执行类似的自动识别的子任务。MACDDPG网络框架分为下面几个核心部分。

图1 MACDDPG模型结构

(1)智能体集群机制。该机制禁止关联性小的智能体间进行无效的信息交流,避免信息泛滥导致智能体不能正确处理有用信息的现象发生。

(2)通信机制。该机制是区别集群和个体的关键。

(3)反事实机制。该机制避免当网络训练较好时某些智能体出现“懒惰”现象,即虽然整个智能体系统能高效完成任务,但某些个别智能体却表现得不太活跃。

为达到集群间的策略相异性及集群内智能体策略相似性,形式上,每个智能体i都有一个局部效用函数(或单个策略选择函数),其参数θi以其智能体群j为条件,即同一个集群中的智能体共享策略选择网络的参数θj。MACDDPG将智能体的策略选择网络限定在其局部观测上,并使用可训练神经网络f学习该网络的参数。

(1)

式中:oi为每个智能体的观测信息;g(oi,θi)为状态编码器;f(ei,θj)为策略选择网络;ei为状态编码;θi为f的参数;θj为策略选择网络的参数;Qi为第i个智能体的动作值函数。

1.2 集群机制

对于一个围捕任务,各部分的智能体只需要完成自己的子任务即可;如某些智能体只需在指定位置设置拦截,而某些智能体只需不断配合追赶猎物;因此并不需要所有的智能体间都信息交互。MACDDPG算法的一个思想是将相关性不大的智能体分成不同的集群,集群内部智能体间的网络参数共享且允许通信。为实现这一机制,先将智能体的状态进行编码,然后动态计算智能体的状态编码间的欧氏距离,限定范围内的智能体被认为属于同一个智能体群。同时为保证关注信息的灵活性,需动态改变集群的限定范围,该限定范围根据智能体与环境交互时观测信息编码变化差异性而变化。如在围捕任务中,初始没有观测到猎物时,所有智能体应处于探索状态;当观测到猎物时,智能体应扩大通信范围来调度附近其他智能体围捕目标。集群动态分群方式如图2所示。

图2 集群动态分群方式图

图2a 表示观测状态变化不大时智能体的通信范围为X,各个智能体独立工作;图2b 表示智能体观测状态发生较大变化后将其通信范围扩大至X+Y,圈内智能体准备通信;图2c 表示通信圈内智能体开始交换信息,在通信范围X外的智能体不进行通信。

为使限定范围动态变化,计算限定范围的公式为

(2)

式中:disi为每个智能体的限定范围;‖e(i,t)‖、‖e(i,t-1)‖分别为t时刻及t-1时刻智能体i的状态编码的模;k为超参数;Δx为通讯距离变化范围。另一种可替代方案为

(3)

式(2)和式(3)区别在于状态差异对于限定范围的影响。式(2)表示状态变化幅度对限定范围影响不大;式(3)表示微小的状态变化都会对限定范围造成较大的影响。

1.3 通信机制

为使同一个集群下的智能体间高效协作,在各个智能体策略网络之间嵌入信息交流渠道。本文使用一条独立的信道来传递交流信息,为区分每个智能体提供信息的重要程度,引入注意力机制。通信网络结构如图3所示。

图3 通信网络结构

第j个智能体的通信信息计算公式为

(4)

(5)

对于通信信息的处理,还可以在网络中进行网络跳跃连接,其计算公式为

(6)

1.4 利用反事实机制学习

为保证训练的稳定性,本文采取深度强化学习的训练策略。该深度强化学习算法将策略网络和评价网络又分成估计网络和现实网络,即整个网络框架中存在四个网络:策略估计网络、策略现实网络、评价估计网络、评价现实网络。其中估计网络参数实时更新,现实网络隔一段时间更新一次[15]。多智能体系统训练完成后一般都会面临一个难题:多智能体系统策略表现得不错,而某些个别智能体学习到的策略却很差。因为所有智能体的网络根据环境反馈的全局回报进行更新,而每个智能体只能感知到全系统学习到了良好的策略,却不知本身的策略对整个系统的策略有多大贡献。此为多智能体系统普遍存在的信用分配问题。

为解决信用分配问题,本文采用优势函数,让智能体根据自身的策略对整个系统的贡献来更新自身的策略网络。第i个智能体的优势函数Ai(o,a)定义为

(7)

式中:Qiμ(o,a)为第i个智能体的动作值函数;ai为第i个智能体选取的动作;a-i为除了第i个智能体外其他智能体选取的动作;b(o,a-i)为计算优势函数的基准值。b(o,a-i)的计算公式为

(8)

特别注意,在计算基准值时要保证其他智能体的动作不变,这样计算出来的基准值才有意义。

策略网络目标为最大化Qi值函数,利用梯度下降法更新参数,并且利用最大熵稳定训练。引入优势函数后,策略估计网络参数迭代公式为

(9)

式中:μi为第i个智能体策略估计网络参数;π(oi,ai)为策略网络的输出。因为对当前智能体的所有动作进行采样,所以可对当前策略进行泛化。引入最大熵的目的是提高模型的鲁棒性,最大熵会使策略在输出动作时分布更均匀,探索更多可能情况进行学习,因此学习的策略可应对更多复杂情况,增强模型探索和提高抗干扰能力。同时也可以学习到更多接近最优的行为,并且选择这些近似最优动作的概率相同,可提高学习速度。

评价网络目标为最小化损失,其损失函数计算公式为

(10)

2 实验及结果分析

2.1 实验环境

考虑到需要在既具有合作性(所有智能体都必须最大化共享回报)又具有竞争性(智能体拥有相互冲突的目标)的推演平台中进行实验,采用文献[16]提出的多智能体粒子环境(Multiagent Particle Envs,MPE)。该推演平台中有些场景要求智能体间进行显式通信以获得最佳奖励,而在有些场景中智能体只能执行物理操作。实验用到的四种环境如图4所示。

图4 MPE四种不同环境

图4a为合作交流情况。这个任务包括两个合作的智能体,分别是一个说话者和一个倾听者,两者被放置在一个有三种不同地标的环境中。在每一环节,倾听者必须导航到一个指定的地标,并根据其与正确的地标间的距离获得奖励。虽然倾听者可以观察到地标的相对位置和不同地标的标号,但其不知道本身必须导航到哪个地标。相反,说话者的观测状态由正确的地标标号组成,可以在每一个时间步长产生一个被倾听者观测到的通信输出。因此,说话者必须学会根据倾听者的动作输出地标的标号。

图4b为捕食者-猎物。该场景是经典的捕食者-猎物游戏的变体。在这个场景中,N个速度较慢的相互协作的智能体必须在一个随机生成的环境中追逐速度较快的敌对智能体,同时有多个大型路标阻碍前进。每当相互协作的智能体接触到敌对智能体时,相互协作的智能体将获得奖励,而敌对智能体将受到惩罚。智能体观测状态由智能体的相对位置和速度以及地标的位置组成。在该场景下,智能体的数量及障碍数量都可以进行设置。

图4c为合作导航。在这种场景下,智能体必须通过实际行动进行合作,以达到一组指定标记位置。智能体状态由其他智能体和地标的相对位置组成,并根据任意智能体与每个地标的接近程度获得集体奖励,即相互协作的智能体必须“覆盖”所有地标。此外,这些智能体占据一定的物理空间,且在相互碰撞时受到惩罚。每个智能体需要推断其必须覆盖的地标,并在避开其他智能体的同时向指定地标移动。

图4d为物理欺骗。在这种场景下,N个智能体需要相互协作,到达N个不同的地标中某一个正确地标,环境将根据任意智能体到目标地标的最小距离反馈奖励(即只需一个智能体到达目标地标)。然而,有一个敌对智能体也希望到达目标地标,但对手不知道地图中哪个地标是正确的。由于环境会根据敌对智能体与目标地标的距离来惩罚相互协作的智能体系统,因此相互协作的智能体需要学会分散行动并覆盖所有地标,从而欺骗敌对智能体。

2.2 网络训练超参数设置

在训练过程中,学习率设置为0.001,其他参数设置默认值。将每个环节的最大步数设置成500步。集群机制中通信阈值基值设定为200,其动态变化选取第二种计算方式,目的是保证观测状态的微小变化即可影响通信范围。在该模型条件下,为选取合适的超参数k,通过实验观察每回合的平均奖励和收敛速度来确定最佳参数值。实验结果如图5所示。

图5 k不同时智能体获得的平均奖励

当超参数k设置过大时,智能体的通信范围会稳定在基础值附近,整个系统处于基本不通信状态,这种情况下算法不能收敛。当超参数k设置过小时,智能体观测状态微小变化就会导致整个系统中的智能体都在进行信息交流,此时整个网络的复杂度较高,训练难度增加,收敛速度变慢。当超参数k设置为10时,虽然智能体之间也在通信,但算法收敛后得分稳定在0.75;而当超参数k设置为0.1时得分能达到0.9。因此,当超参数k设置为0.1时,此时智能体的通信范围达到最佳状态,既能在发现目标时调度附近的智能体来一起围捕目标,又能保证在探索地图时不影响其他智能体。

2.3 对比实验

为进一步评估MACDDPG算法在不同任务场景中的优势,本文在上述MPE环境的四种特定任务场景中进行MACDDPG算法与其他先进算法的对比实验,训练所有的模型直到收敛;然后通过计算1000次迭代的奖励平均值来评估每种算法,同时对奖励进行归一化处理。为进行测试,实验中生成一个包含2500个环境配置的固定集合(如地标和出生地),并在这个固定集合上进行评估。实验结果如图6所示。

在图6a、图6b合作任务场景中,能进行显示性通信的MACDDPG算法和BicNet算法都能获得非常高的分数且收敛速度很快;MADDPG算法因为没有进行明确的通信,算法需要迭代较长时间才能找到其最优策略,且收敛后选择的策略依然不太稳定。在图6c物理欺骗场景中,虽然随着任务难度的增加,MACDDPG算法收敛速度变慢,但还能较平稳地找到最优策略且得分稳定。在图6d捕食者-猎物场景中,虽然MACDDPG算法在迭代时波动有所增大,但其得分依然稳定。MADDPG算法在四种任务场景下虽然得分能保持稳定,但收敛时分数不高。BicNet算法在合作场景下表现优异,但在混合场景下却表现很差。对于用单智能体算法DDPG来训练的多智能体系统,很明显在四种任务场景下都不能收敛。因为对于每个智能体来说环境都在动态变化,而各智能体却不能感知到动态变化的环境。

图6 MACDDPG和其他算法在四种环境下的性能对比

综上所述,在合作场景下MACDDPG算法和BicNet算法表现接近,且学习到的策略明显优于其他算法。但随着对抗场景的加入,BicNet算法性能波动相对较大;而MACDDPG算法在混合环境中依然能够保持稳定且得分相对较高。

2.4 消融实验

为验证MACDDPG算法每个模块的作用,本文在捕食者-猎物混合场景下进行消融实验;实验中严格保证只会发生单一模块的变化。实验结果如图7所示。

图7 MACDDPG消融实验对比图

在去掉反事实模块后,没有反事实模块的MACDDPG表现得最稳定且收敛速度最快,但最终得分却有所下降,该结果符合预期。反事实模块会增加网络的复杂度以致影响网络的收敛速度及稳定性,但该模块能有效解决部分智能体信用分配问题。为验证集群模块的作用,训练时系统中每个智能体都只用到自己的观测值,如果只是单纯的去掉集群模块,那么整个智能体系统必然不能有效协作且收敛。因此本文除了去掉集群模块还对所有智能体采用完全通信的模式,此时算法性能明显下降。

3 结论

提出一种深度多智能体RL算法MACDDPG,该算法允许在集中式训练下对分散策略进行端到端学习,从而有效利用额外的状态信息。MACDDPG采取集群机制动态地将智能体分成不同的群体,允许同一集群内的智能体采取独立信道传输信息,同时采取反事实的思想来解决多智能体系统下的信用分配问题。在多智能体粒子环境中四种场景下的实验研究结果表明,与其他经典多智能体算法相比,MACDDPG算法在各种场景下都能获得较高奖励且保证良好的收敛速度。该算法在复杂任务场景中不够稳定,在某些复杂环境中可能因为某些环境因素导致通信的智能体做出无意义的调度。

猜你喜欢

集群状态智能
海上小型无人机集群的反制装备需求与应对之策研究
状态联想
培育世界级汽车产业集群
智能前沿
智能前沿
智能前沿
智能前沿
一种无人机集群发射回收装置的控制系统设计
生命的另一种状态
勤快又呆萌的集群机器人