首页 / 专利库 / 人工智能 / 机器学习 / 强化学习 / 基于反事实回报的多智能体深度强化学习方法、系统

基于反事实回报的多智能体深度强化学习方法、系统

阅读:975发布:2020-05-08

专利汇可以提供基于反事实回报的多智能体深度强化学习方法、系统专利检索,专利查询,专利分析的服务。并且本 发明 属于学习 算法 领域,具体涉及一种基于反事实回报的多智能体深度 强化学习 方法、系统,旨在为了解决解决多智能体信誉分配问题。本发明方法包括:基于多智能体的运行环境,定义全局状态;基于局部观测量,通过预设的Q网络模型,获取各智能体对应的执行动作;获取各智能体对应的经验数据对,并增入经验池;从经验回放池中随机获取训练样本,训练并更新Q网络模型的权重;每隔设定的步长,将基于Q网络模型的权重更新目标Q网络模型;重复上述Q网络模型权重优化步骤,直至达到训练结束条件,获取最后一次权重更新的Q网络模型。本发明实现了完全合作多智能体间的信誉分配,进而实现了多智能体的协同决策,而且收敛快,效率高。,下面是基于反事实回报的多智能体深度强化学习方法、系统专利的具体信息内容。

1.一种基于反事实回报的多智能体深度强化学习方法,其特征在于,包括以下步骤:
步骤S100,基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
步骤S200,对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
步骤S300,获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为(oi,ai,ci,oi’),其中,i为智能体的编号,oi为执行动作前的局部观测量,oi’为执行动作后的局部观i i
测量,a为所执行的动作,c为第i智能体的反事实回报;
步骤S400,从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
步骤S500,每隔设定的步长,将动作选择Q网络的权重复制给目标Q网络的权重;
步骤S600,重复步骤S200-步骤S500,直至达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
2.根据权利要求1所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,“第i智能体的反事实回报”,其获取方法为:
保持其他智能体动作不变,第i智能体以同等概率采取其他动作时,产生的全局回报差异作为当前智能体的反事实回报。
3.根据权利要求2所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,“第i智能体的反事实回报”,其计算公式为
其中, 为第i个智能体的t时刻的反事实回报,st为t时刻的全局变量,Ut为t时刻的可选动作集合,r为t时刻的全局回报, 为求期望,ati,c为属于动作集合A并且不等于ati的i i,c
随机选定的一个动作;at-at+at 表示在时间步t时,智能体i没有采取它实际执行的动作ati,而是随机地采取其他可选动作ati,c。
4.根据权利要求1所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,所述运行环境为多智能体仿真环境;步骤S200中“基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作”,对第i个智能体,其方法为:
依据多智能体仿真环境的接口得到第i个智能体的局部观测信息;
基于所述局部观测信息,通过动作选择Q网络获取每个可选动作的Q值;
根据ε-greedy策略选择执行动作。
5.根据权利要求4所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,所述ε-greedy策略为
其中,ai为第i个智能体所选出的动作,Q(oi,a)为局部观测信息下的动作值函数,a为可选动作,N是可选动作的总数,randint()为取随机整数的函数,ε为预设的(0,1)区间的小数,random()为随机数函数。
6.根据权利要求1所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,所述动作选择Q网络的损失函数Li(θt)为:
其中,E(o,U,c,o')∈D为对一批样本计算的结果取期望,D为经验池, 为在t时刻的全局状态st、联合动作Ut下第i个智能体的反事实回报,γ为折扣因子, 为目标Q网络下一时刻的状态动作值,ai'为智能体i下一时刻的动作,θt-为t时刻的目标Q网络的权重,Q(oi,ai;θt)为动作选择Q网络的状态动作值,θt为t时刻动作选择Q网络的权重。
7.根据权利要求1述的基于反事实回报的多智能体深度强化学习方法,其特征在于,使用Adam优化器训练动作选择Q网络。
8.根据权利要求7所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,所述Adam优化器更新规则为:
mt=b1mt-1+(1-b1)dx
vt=b2vt-1+(1-b2)(dx)2
其中,m为一阶矩向量,v为二阶矩向量,x为优化的变量,b1、b2、eps分别为预设的超然参数,α为预设的学习率。
9.根据权利要求1-8任一项所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,所述动作选择Q网络,其网络结构为DQN网络中的三层卷积和两层全连接;卷积步长设置为1,最后一个全连接层输出对应设定数量可选动作的Q值,隐层之间采用ReLU激活函数。
10.根据权利要求1-8任一项所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,步骤S200与步骤S100之间还设置有初始经验池构建步骤:
在到达预设次数的步数之前,各智能体每次获取局部观测量后,随机选取执行动作并执行,获取经验数据对构建初始的经验池。
11.根据权利要求1-8任一项所述的基于反事实回报的多智能体深度强化学习方法,其特征在于,步骤S400中动作选择Q网络每个时间步均训练一次,且每次训练的初始权值为上一次训练得到的权值。
12.一种基于反事实回报的多智能体深度强化学习系统,其特征在于,包括第一模、第二模块、第三模块、第四模块、第五模块、第六模块;
所述第一模块,配置为基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
所述第二模块,配置为对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
所述第三模块,配置为获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为(oi,ai,ci,oi’),其中,i为智能体的编号,oi为执行动作前的局部观测量,oi’为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报;
所述第四模块,配置为从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
所述第五模块,配置为每隔设定的步长,将动作选择Q网络的权重复制到目标Q网络的权重;
所述第六模块,配置为基于预设的训练结束条件,判断是否重复通过所述第二模块、所述第三模块、所述第四模块、第五进行动作选择Q网络权值的更新,并在达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
13.一种存储装置,其中存储有多条程序,其特征在于,所述程序适于由处理器加载并执行以实现权利要求1-11任一项所述的基于反事实回报的多智能体深度强化学习方法。
14.一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;其特征在于,所述程序适于由处理器加载并执行以实现权利要求1-11任一项所述的基于反事实回报的多智能体深度强化学习方法。

说明书全文

基于反事实回报的多智能体深度强化学习方法、系统

技术领域

[0001] 本发明属于学习算法领域,具体涉及一种基于反事实回报的多智能体深度强化学习方法、系统。

背景技术

[0002] 很多复杂的游戏决策问题可以建模为多智能体学习问题。多智能体学习作为一个独立的研究领域存在一些自身的特点。本发明针对合作式的多智能体学习存在的问题展开研究。合作式系统中的多个智能体通过交互,一起完成特定的任务来最大化收益。由于智能体之间存在交互,多智能体问题的复杂度随着智能体的数量上升而快速增加。
[0003] 合作式多智能体学习有两大类方法。第一种是团队学习,使用一个控制器输出团队中每个智能体的行为。这种方法随着智能体数目的增加面临难以扩展的问题。第二种方法是并发式学习。这种方法为每个团队成员部署一个学习器。然而多个并发的学习器会使环境变得不稳定。为了处理合作式多智能体系统的复杂性,往往需要利用去中心化的策略,每个智能体根据局部的观测信息来选择自己的动作。部分可观测性和通信受限等情况使得去中心化的策略更具实用性。
[0004] 一个关键性问题是如何处理多智能体之间的信誉分配问题。在合作式任务中,联合动作往往只产生一个全局回报。这导致难以确定每个智能体对于团队回报的贡献程度。有时我们设定每个智能体可以获取个体回报,然而这些个体回报在合作式场景中难以设计,并且无法鼓励智能体为了全局回报学习协同策略。此外,将团队回报平均地分给每个智能体无法区分不同智能体对于全局回报的贡献程度。使用相同的回报同样会加剧智能体的同质性,使智能体学到相同的策略。
[0005] 因此,本发明提出结合反事实回报的多智能体深度强化学习算法来解决多智能体信誉分配问题。在合作式任务中,每个智能体通过一个重塑后的回报来学习。这个回报是全局回报与当这个智能体采取其他动作时产生的全局回报差异。这种差异回报对每个智能体计算一个单独的回报来推断智能体动作变化产生的反事实。

发明内容

[0006] 为了解决现有技术中的上述问题,即为了解决多智能体信誉分配问题,本发明的第一方面,提出了一种基于反事实回报的多智能体深度强化学习方法,包括以下步骤:
[0007] 步骤S100,基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
[0008] 步骤S200,对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
[0009] 步骤S300,获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为i i i i’ i i’(o ,a ,c ,o ),其中,i为智能体的编号,o为执行动作前的局部观测量,o 为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报;
[0010] 步骤S400,从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
[0011] 步骤S500,每隔设定的步长,将动作选择Q网络的权重复制给目标Q网络的权重;
[0012] 步骤S600,重复步骤S200-步骤S500,直至达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
[0013] 在一些优选的实施方式中,“第i智能体的反事实回报”,其获取方法为:
[0014] 保持其他智能体动作不变,第i智能体以同等概率采取其他动作时,产生的全局回报差异作为当前智能体的反事实回报。
[0015] 在一些优选的实施方式中,“第i智能体的反事实回报”,其计算公式为[0016]
[0017] 其中, 为第i个智能体的t时刻的反事实回报,st为t时刻的全局状态,Ut为t时刻的联合动作,r为t时刻的全局回报, 为求期望,ati,c为属于动作集合A并且不等于ati的随机选定的一个动作;at-ati+ati,c表示在时间步t时,智能体i没有采取它实际执行的动作ati,而是随机地采取其他可选动作ati,c。
[0018] 在一些优选的实施方式中,所述运行环境为多智能体仿真环境;步骤S200中“基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作”,对第i个智能体,其方法为:
[0019] 依据多智能体仿真环境的接口得到第i个智能体的局部观测信息;
[0020] 基于所述局部观测信息,通过动作选择Q网络获取每个可选动作的Q值;
[0021] 根据ε-greedy策略选择执行动作。
[0022] 在一些优选的实施方式中,所述ε-greedy策略为
[0023]
[0024] 其中,ai为第i个智能体所选出的动作,Q(oi,a)为局部观测信息下的动作值函数,a为可选动作,N是可选动作的总数,randint()为取随机整数的函数,ε为预设的(0,1)区间的小数,random()为随机数函数。
[0025] 在一些优选的实施方式中,所述动作选择Q网络的损失函数Li(θt)为:
[0026]
[0027] 其中,E(o,U,c,o′)∈D为对一批样本计算的结果取期望,D为经验池, 为在t时刻的全局状态st、联合动作Ut下第i个智能体的反事实回报,γ为折扣因子, 为目标Q网络下一时刻的状态动作值,ai′为智能体i下一时刻的动作,θt-为t时刻的目标Q网络的权重,Q(oi,ai;θt)为动作选择Q网络的状态动作值,θt为t时刻动作选择Q网络的权重。
[0028] 在一些优选的实施方式中,使用Adam优化器训练动作选择Q网络。
[0029] 在一些优选的实施方式中,所述Adam优化器更新规则为:
[0030] mt=b1mt-1+(1-b1)dx
[0031] vt=b2vt-1+(1-b2)(dx)2
[0032]
[0033] 其中,m为一阶矩向量,v为二阶矩向量,x为优化的变量,b1、b2、eps分别为预设的超然参数,α为预设的学习率。
[0034] 在一些优选的实施方式中,所述动作选择Q网络,其网络结构为DQN网络中的三层卷积和两层全连接;卷积步长设置为1,最后一个全连接层输出对应设定数量可选动作的Q值,隐层之间采用ReLU激活函数。
[0035] 在一些优选的实施方式中,步骤S200与步骤S100之间还设置有初始经验池构建步骤:
[0036] 在到达预设次数的步数之前,各智能体每次获取局部观测量后,随机选取执行动作并执行,获取经验数据对构建初始的经验池。
[0037] 在一些优选的实施方式中,步骤S400中第二模型每个时间步均训练一次,且每次训练的初始权值为上一次训练得到的权值。
[0038] 本发明的第二方面,提出了一种基于反事实回报的多智能体深度强化学习系统,包括第一模、第二模块、第三模块、第四模块、第五模块、第六模块;
[0039] 所述第一模块,配置为基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
[0040] 所述第二模块,配置为对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
[0041] 所述第三模块,配置为获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为(oi,ai,ci,oi’),其中,i为智能体的编号,oi为执行动作前的局部观测量,oi’为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报;
[0042] 所述第四模块,配置为从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
[0043] 所述第五模块,配置为每隔设定的步长,将动作选择Q网络的权重复制到目标Q网络的权重;
[0044] 所述第六模块,配置为基于预设的训练结束条件,判断是否重复通过所述第二模块、所述第三模块、所述第四模块、第五进行动作选择Q网络权值的更新,并在达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
[0045] 本发明的第三方面,提出了一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的基于反事实回报的多智能体深度强化学习方法。
[0046] 本发明的第二方面,提出了一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的基于反事实回报的多智能体深度强化学习方法。
[0047] 本发明的有益效果:
[0048] 1、本发明的局部视野图像感知中,采用深度卷积神经网络构建所述图像感知模型,提高了高维图像的感知性能。
[0049] 2、本发明的反事实回报计算中,固定其他智能体动作不变,改变当前智能体动作,通过全局回报的差异计算个体反事实回报。这种机制与全局回报具有一致性,并对动作敏感。
[0050] 3、本发明的多智能体强化学习决策模型采取了参数共享的方式,每个智能体共享Q网络的参数,提高了学习效率。附图说明
[0051] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0052] 图1是本发明一种实施例的基于反事实回报的多智能体深度强化学习方法流程示意图;
[0053] 图2是本发明一种实施例中多智能体仿真环境示意图;
[0054] 图3是本发明一种实施例中基于反事实回报多智能体深度强化学习的模型示意图;
[0055] 图4是本发明一种实施例中在仿真场景下不同方法训练时的平均回报示意图;
[0056] 图5是本发明一种实施例中在仿真场景下不同方法训练时的平均步数示意图。

具体实施方式

[0057] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0058] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
[0059] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0060] 本发明的一种基于反事实回报的多智能体深度强化学习方法,包括以下步骤:
[0061] 步骤S100,基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
[0062] 步骤S200,对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
[0063] 步骤S300,获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为i i i i’ i i’(o ,a ,c ,o ),其中,i为智能体的编号,o为执行动作前的局部观测量,o 为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报;
[0064] 步骤S400,从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
[0065] 步骤S500,每隔设定的步长,将动作选择Q网络的权重复制给目标Q网络的权重;
[0066] 步骤S600,重复步骤S200-步骤S500,直至达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
[0067] 为了更清晰地对本发明进行说明,下面结合附图对本方发明方法一种实施例中各步骤进行展开详述。
[0068] 本发明一种实施例的基于反事实回报的多智能体深度强化学习方法,基于所搭建的多智能体仿真环境进行学习,如图1所示,包括步骤S100-步骤S600。
[0069] 步骤S100,基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同。
[0070] 该步骤是算法的初始化步骤,包括状态的初始化和模型参数的初始化。
[0071] 1、状态的初始化
[0072] 初始化多智能体仿真环境,定义全局状态,每个智能体的局部观测量,每个智能体的可选动作和全局回报函数。
[0073] 多智能体仿真环境涉及多个合作的智能体。在全局状态s下,每个智能体根据局部i状态o,选择动作a ,i为智能体序号作用于环境产生全局回报r(s,U);环境接收联合动作U,根据状态转移函数转移到新的状态s'。智能体的学习目标是最大化全局累计奖赏回报Rt:
[0074]
[0075] 其中,γ是折扣因子,l为时间步数变量,T为终止步数,t是时刻序号。
[0076] 使用Q学习时,全局Q函数可定义为:
[0077]
[0078] 其中, 为求期望的操作。
[0079] 由于智能体只能获取局部观测信息,此时Q函数可定义为:
[0080]
[0081] 其中, 为求期望的操作。
[0082] 具体的,本实施例以多智能体抓捕游戏为例进行说明。如图2所示,智能体1、智能体2、被捕者进行抓捕游戏时某一时刻的状态,其中智能体1和智能体2可以分别用红色和蓝色表示,在游戏环境中显示为红色和蓝色的“T”形,被捕者可以用绿色表示。两个智能体和被捕者在开始时处于随机不重叠位置。当两个智能体成功捕获被捕者时,环境重置。每个智能体只能观察到前向180度两格内的环境信息。方向0、1、2和3分别表示向左,向上,向右和向下。智能体的状态输入是局部前向视野o。观测信息是一个图像,其大小为15×15×3(宽度:15,高度:15,RGB通道:3)。处于智能体身后的视野范围内信息用灰色表示,障碍物为黑色,可行走区域为白色。
[0083] 智能体的可选动作为前进,左转,右转和抓捕。当智能体移动时,它将移动到其前面的相邻空格。当有障碍物或另一个智能体在它前面时,该动作无效。只有当两个智能体同时使用“捕捉”动作时,被捕者才会被成功抓住。智能体使用捕捉动作时,被捕者必须在智能体相邻的位置,并且智能体应朝向被捕者。
[0084] 抓捕游戏是个完全合作的多智能体游戏。智能体成功抓捕被捕者会收到一个+1的全局奖励。其他时候每步会收到-0.001的惩罚。
[0085]
[0086] 2、模型参数的初始化
[0087] 定义动作状态值函数的Q网络模型,初始化动作选择Q网络和目标Q网络的权重,让智能体之间共享Q网络的参数。
[0088] 本实施例中Q网络模型基于深度卷积神经网络构建,如图3所示。网络输入为每个智能体的高维感知信息,输出每个可选动作的Q值。
[0089] 具体的,使用深度卷积神经网络感知图像信息。网络结构参考典型DQN网络中的三层卷积和两层全连接。第一层卷积使用32个5×5的卷积核,第二层和第三层使用64个3×3的卷积核。由于每个像素点都有特定的意义,本发明参考AlphaGo中的卷积形式,将卷积的步长都设为1。第一个全连接层有512个神经元,最后一个全连接层输出对应于4个可选动作的Q值。隐层之间采取ReLU激活函数。
[0090] f(x)=max(0,x)
[0091] 其中x为激活函数的输入,f(x)为激活函数的输出。网络构造基于PyTorch。随机初始化动作选择Q网络的权重θ。目标Q网络权重θ-复制动作选择Q网络的初始化权重。动作选择Q网络适用于每个智能体,智能体之间共享网络参数。
[0092] 步骤S200,对各智能体,基于局部观测量,通过动作选择Q网络模型,获取各智能体对应的执行动作。
[0093] 本实施例中将动作选择Q网络模型作为被训练的模型,将目标Q网络模型作为稳定训练过程的模型,由于对模型的训练可能存在波动,因此本实施例采用目标Q网络指导的方式进行训练,还可以灵活的设置动作选择Q网络模型的训练频次和目标Q网络模型的更新频次。
[0094] 本实施例中,由每个智能体的局部观测量计算每个可选动作的Q值,根据ε-greedy策略得到每个智能体的执行动作。
[0095] 依据多智能体仿真环境的接口得到每个智能体的局部观测信息。动作选择Q网络模型接收观测信息输入,输出每个可选动作的Q值。
[0096] 智能体根据ε-greedy策略选择执行动作。
[0097]
[0098] 其中,ai为第i个智能体所选出的动作,Q(oi,a)为局部观测信息下的动作值函数,a为可选动作,N是可选动作的总数,randint()为取随机整数的函数,ε为预设的(0,1)区间的小数,random()为随机数函数。
[0099] 步骤S300,获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为(oi,ai,ci,oi’),其中,i为智能体的编号,oi为执行动作前的局部观测量,oi’为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报。
[0100] 执行联合动作,获取新的全局状态和全局回报。对于每个智能体,得到新的局部观测量。根据全局回报计算每个智能体的反事实回报,存储每个智能体的经验数据对到经验池。
[0101] 动作选择Q网络模型输出每个智能体的动作ai,作用于环境产生全局回报r(s,U);环境接收联合动作,根据状态转移函数转移到新的状态s'。
[0102] “第i智能体的反事实回报”,其获取方法为:保持其他智能体动作不变,第i智能体以同等概率采取其他动作时,产生的全局回报差异作为当前智能体的反事实回报。
[0103] 其计算公式为
[0104]
[0105] 其中, 为第i个智能体的t时刻的反事实回报,st为t时刻的全局变量,Ut为t时刻i,c的可选动作集合,r为t时刻的全局回报, 为为求期望,at 为属于动作集合A并且不等于ati的随机选定的一个动作;Ut-ati+ati,c表示在时间步t时,智能体i没有采取它实际执行的动作ati,而是随机地采取其他可选动作ati,c。反事实回报需要已知回报函数来评估[0106] 将经验数据对增入经验池,具体为每个智能体将经验数据对(oi,ai,ci,oi’)存进经验池D。经验回放池大小可以初始化为100000。
[0107] 步骤S400,从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重。
[0108] 从经验池中随机采样一批数据对,计算动作选择Q网络的损失函数和梯度,并更新动作选择Q网络。
[0109] 本实施例中,从经验回放池中随机采取64个数据对,依据状态动作值函数的预测值计算Q网络的损失函数Li(θt):
[0110]
[0111] 其中,E(o,U,c,o′)∈D为对一批样本计算的结果取期望,D为经验池, 为在t时刻的全局状态St、联合动作Ut下第i个智能体的反事实回报,γ为折扣因子, 为目标Q网络下一时刻的状态动作值,ai′为智能体i下一时刻的动作,θt-为t时刻的目标Q网络的权重,Q(oi,ai;θt)为动作选择Q网络的状态动作值,θt为t时刻动作选择Q网络的权重。
[0112] 本实施例使用Adam优化器训练动作选择Q网络模型,加快收敛速度。Adam优化器更新规则为:
[0113] mt=b1mt-1+(1-b1)dx
[0114] vt=b2vt-1+(1-b2)(dx)2
[0115]
[0116] 其中,m为一阶矩向量,v为二阶矩向量,x为优化的变量,b1、b2、eps分别为预设的超然参数,α为预设的学习率。
[0117] Adam优化器基于梯度更新变量x,超参数采取默认值:b1=0.9,b2=0.999和eps=1e-8。学习率α设为0.0001。
[0118] 初始学习时,经验池为空,本实施例可以在步骤S200与步骤S100之间还设置有初始经验池构建步骤:在到达预设次数的步数之前,各智能体每次获取局部观测量后,随机选取执行动作并执行,获取经验数据对构建初始的经验池。为了保证学习的连贯性,动作选择Q网络每个时间步均训练一次,且每次训练的初始权值为上一次训练得到的权值。本实施例中,前10000步采取随机动作,之后每步都更新动作选择Q网络。依据Q网络的损失函数训练动作选择Q网络。
[0119] 步骤S500,每隔设定的步长,将动作选择Q网络的权重复制给目标Q网络的权重。
[0120] 本实施例中,目标网络每经过1000步更新一次。
[0121] 步骤S600,重复步骤S200-步骤S500,直至达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
[0122] 如果达到最大步长,训练结束。否则,跳转步骤S200继续下一时刻的学习。本实施例中最大步长设为500000步。
[0123] 将本发明提出的方法应用到图2所示的多智能体问题上,作为比较除了使用反事实回报多智能体强化学习外,还使用全局回报独立强化学习和全局回报共享参数强化学习作为比较,获得图4和图5关于平均回报和步数的实验结果。这些结果是每经过10000步训练统计的最近100局游戏的平均值。由图可知平均回报曲线在20万步前上升明显,之后模型逐渐收敛。平均步数的曲线和平均回报曲线呈现相反的变化趋势。随着训练的进行,智能体完成抓捕任务所需的步数也逐渐减少,最终稳定到一个较低的区间。其中反事实回报多智能体强化学习的曲线在训练过程中都优于其他两种基于全局回报的强化学习曲线,有着更快的收敛速度和更好的最终性能。
[0124] 不同回报机制下深度强化学习算法的平均回报和平均每局步数如表1所示。
[0125] 表1
[0126] 本发明第二实施例的一种基于反事实回报的多智能体深度强化学习系统,包括第一模块、第二模块、第三模块、第四模块、第五模块、第六模块;
[0127] 所述第一模块,配置为基于多智能体的运行环境,定义全局状态;并初始化动作选择Q网络、目标Q网络;所述目标Q网络与所述动作选择Q网络结构相同;
[0128] 所述第二模块,配置为对各智能体,基于局部观测量,通过动作选择Q网络,获取各智能体对应的执行动作;
[0129] 所述第三模块,配置为获取各智能体对应的经验数据对,并增入经验池;所述经验数据对为(oi,ai,ci,oi’),其中,i为智能体的编号,oi为执行动作前的局部观测量,oi’为执行动作后的局部观测量,ai为所执行的动作,ci为第i智能体的反事实回报;
[0130] 所述第四模块,配置为从经验回放池中随机获取训练样本,基于目标Q网络的权重计算Q值,并依据预设的损失函数,训练并更新动作选择Q网络的权重;
[0131] 所述第五模块,配置为每隔设定的步长,将动作选择Q网络的权重复制到目标Q网络的权重;
[0132] 所述第六模块,配置为基于预设的训练结束条件,判断是否重复通过所述第二模块、所述第三模块、所述第四模块、第五进行动作选择Q网络权值的更新,并在达到训练结束条件,获取最后一次权重更新的动作选择Q网络。
[0133] 所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0134] 需要说明的是,上述实施例提供的基于反事实回报的多智能体深度强化学习系统,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块来完成,即将本发明实施例中的模块或者步骤再分解或者组合,例如,上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块,以完成以上描述的全部或者部分功能。对于本发明实施例中涉及的模块、步骤的名称,仅仅是为了区分各个模块或者步骤,不视为对本发明的不当限定。
[0135] 本发明第三实施例的一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的基于反事实回报的多智能体深度强化学习方法。
[0136] 本发明第四实施例的一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的基于反事实回报的多智能体深度强化学习方法。
[0137] 所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0138] 本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0139] 术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。
[0140] 术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
[0141] 至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈