当前位置: 首页 > 专利查询>浙江大学专利>正文

一种强化学习多代理合作任务下的代理贡献分配的方法技术

技术编号:26419448 阅读:83 留言:0更新日期:2020-11-20 14:14
本发明专利技术公开了一种强化学习多代理合作任务下的代理贡献分配的方法,包括:每个代理独立观测环境状态,输入各自的策略网络,得到各自的动作决策;在模拟环境执行各代理的动作,环境反馈的全局奖励;将各代理之间的交互建模为一张无向图,使用此图计算出每个代理的贡献权值;使用各代理的贡献权值计算各代理的局部奖励,使用此局部奖励对每个代理各自的策略网络进行训练。该方法能够对多个代理与环境交互后的结果(奖励)进行贡献分配,能够起到可信度赋值的效果,给训练算法提供更加精准的奖励描述,帮助多代理系统在合作任务上学习到更好的策略。

【技术实现步骤摘要】
一种强化学习多代理合作任务下的代理贡献分配的方法
本专利技术属于人工智能自动化领域,特别地涉及一种多代理强化学习合作任务下的代理贡献分配的方法。
技术介绍
现代人工智能自动化领域使用强化学习来训练代理执行任务是一个常见的解决方案,其中,许多场景依赖多个代理进行合作来达成共同的目标。在多代理合作体系中,可以使用全局奖励信息作为全局价值函数和各代理价值函数的训练信号,也可以分别对各代理进行贡献度分配,估计各代理的局部奖励,并将其作为各代理的学习信号,为各代理的策略网络或价值网络提供训练用的梯度。使用各代理的全部奖励在工程上的实现较为简单,一些场景下可以认为是将控制所有代理的模型视作一个整体进行训练。这种方法在代理数量较少时易于实现和控制,但代理数量较多时,模型的参数会指数级增大,使模型变得难以训练。这种情况下,考虑到工程实现的工作量和难度,通常会采用分布式独立训练各代理模型的方法,减轻模型的训练难度,然而这种方法需要有每个代理的局部奖励来提供独立的训练信号,在环境只提供一个全局奖励信号的情况下,进行贡献度分配来估计每个独立代理的贡献度大小变成了一个亟需解决的问题。
技术实现思路
为解决上述问题,本专利技术的目的在于提供一种多代理强化学习合作任务下的代理贡献分配的方法,其通过设置观测范围来对各代理之间的交互建模出一张无向图,并使用此图计算每个代理对其影响范围的影响系数估计,作为进行贡献分配的权重信息;同时,此图也也是对可信度赋值问题的一个描述;使用各代理的贡献权重计算其局部奖励估计,为各代理的策略网络的训练提供一个精准的学习信号。为实现上述目的,本专利技术的解决方案为:一种多代理强化学习合作任务下的奖励函数建模方法,包括:通过设置观测范围来对各代理之间的交互建模出一张无向图,并使用此图计算每个代理的贡献权重,用于计算其局部奖励的估计,作为其训练价值网络或策略网络的训练信号。具体的执行过程为:每个代理独立观测环境状态,输入各自的价值网络,得到各候选动作的价值估计,选择拥有最大价值估计的动作作为当前动作决策;在模拟环境执行各代理的动作,得到环境反馈的全局奖励信号R。构造无向图G(V,E),结点集合V:={v1,…,vN},其中vi为代理i对应的结点;同时图的边集E此时为空集。设置观测范围D,遍历每个代理,根据当前的代理间距离,与所有距离小于D的代理之间添加一条边。其中,若代理的观测范围内没有其他代理,则表示其他代理对此代理的影响较小,在图中为独立的连通组件。在此过程结束后,对于边集E中的每一条边(vi,vj),其两端对应的代理的距离小于D。使用所述图G计算每个代理的贡献权重估计,具体过程为:对于每一个代理对应的节点vi,按其影响范围内的节点数目和对应距离加权计算其影响系数Ii:vj∈Gi其中,Gi为图G中节点vi所属的连通组件,为结点vi到结点vj的距离(跳数)。对所有代理的影响系数进行归一化,得到各代理的贡献权重wi:vj∈Gi使用所述贡献权重计算各代理的局部奖励估计:r′i=wi*R使用所述计算过程得到的局部奖励估计作为训练用奖励信号,对各代理的价值网络或策略网络进行训练。与现有技术相比,本专利技术具有的有益效果为:提供一种多代理强化学习合作任务下贡献分配的方法,估计多代理环境下的每个代理的局部奖励,用于提供独立的训练信号。其中,估计出的训练信号能够显著提升对应任务的性能表现。附图说明图1是各代理的观测范围(虚线框)和按规则构造出的图G。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本专利技术进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本专利技术,并不限定本专利技术的保护范围。多代理进行合作任务的场景中,容易将所有代理的位置映射到一个二维的平面上去,接下来以此为例进行具体实施的说明。如图1所示,本例的场景如下:(1)5个代理,散布在二维平面上,每个代理之间的相对距离可以用欧式距离来衡量;(2)虚线框表示代理的观测范围,图1所示的三个虚线框分别为代理2、代理3和代理5的观测范围;(3)本例将得到的局部奖励估计作为多代理DQN算法奖励信号进行学习根据当前代理的相对位置和接收到的局部奖励估计全局奖励并进行训练的流程具体为:1、根据当前观测状态计算奖励结构图G的流程具体为:a)构造无向图G(V,E),其中,结点集合V:={v1,…,vN},vi为代理i对应的结点;图的边集E此时为空集。b)设置观测范围D,遍历每一个结点vi:i.如果vi的观测范围内有其他结点,如vj,则往边集E里面添加一条边(vi,vj);ii.如果没有其他结点,则终止流程。c)所述添加边的过程结束后,对于边集E中的每一条边(vi,vj),其两端对应的代理的距离小于D。2、使用所述构造流程得到的图G和全局奖励来计算各代理局部奖励估计的流程具体为:d)对于每一个代理对应的结点vi和它所属的连通组件Gi,按影响范围内的节点数和对应的距离加权计算其,得到此代理的影响系数Ii:vj∈Gi其中,Gi为图G中节点vi所属的连通组件,为结点vi到结点vj的距离(跳数)。e)对所述各代理的影响系数进行归一化,得到各代理的贡献权重wi:vj∈Gif)使用所述贡献权重计算各代理的局部奖励估计:r′i=wi*R3、使用所述流程得到的局部奖励估计和多代理DQN算法进行训练的流程具体为:g)对于各代理的局部价值函数,其时序差分的目标值为:其中,Q′(s,a)为全局目标价值函数。h)局部价值函数的损失函数为:其中,Qi(s,a)为代理i的局部价值函数。i)对于每个代理,其优势函数为:Ai(si,ai)=Qi(s,a)-Vi(si)其中,Qi(s,α)为独立局部价值函数,Ai(si,ai)和Vi(si)分别为每个代理自己维护的优势函数和状态价值函数。j)使用所述得到的价值函数进行学习,计算每个代理自己的策略。以上所述的具体实施方式对本专利技术的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本专利技术的一个实施例,并不用于限制本专利技术,凡在本专利技术的原则范围内所做的任何修改、补充和等同替换等,均应包含在本专利技术的保护范围之内。本文档来自技高网...

【技术保护点】
1.一种强化学习多代理合作任务下的代理贡献分配的方法,其特征在于,包括:/n每个代理独立观测环境状态,输入各自的价值网络,得到各候选动作的价值估计,选择拥有最大价值估计的动作作为当前动作决策;/n在模拟环境执行各代理的动作,得到环境反馈的全局奖励信息;/n将各代理之间的交互建模为一张无向图,作为给各代理进行贡献分配的特征描述;/n使用此无向图分别对每个代理计算贡献分配权重估计,得到每个代理的局部奖励估计;/n使用得到的局部奖励估计计算各代理维护的价值函数的目标值,计算时序差分误差,为训练各代理的价值网络提供梯度信息;/n其中,建模出的无向图能够对多个代理与环境交互后的奖励结果进行贡献分配,同时能够起到对各代理进行可信度赋值的效果,给训练算法提供更加精准的奖励描述。/n

【技术特征摘要】
1.一种强化学习多代理合作任务下的代理贡献分配的方法,其特征在于,包括:
每个代理独立观测环境状态,输入各自的价值网络,得到各候选动作的价值估计,选择拥有最大价值估计的动作作为当前动作决策;
在模拟环境执行各代理的动作,得到环境反馈的全局奖励信息;
将各代理之间的交互建模为一张无向图,作为给各代理进行贡献分配的特征描述;
使用此无向图分别对每个代理计算贡献分配权重估计,得到每个代理的局部奖励估计;
使用得到的局部奖励估计计算各代理维护的价值函数的目标值,计算时序差分误差,为训练各代理的价值网络提供梯度信息;
其中,建模出的无向图能够对多个代理与环境交互后的奖励结果进行贡献分配,同时能够起到对各代理进行可信度赋值的效果,给训练算...

【专利技术属性】
技术研发人员:谭哲越尹建伟尚永衡张鹿鸣李莹邓水光
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1