CN112215333B - 基于低阶高斯分布的多智能体协同探索方法及装置 - Google Patents
基于低阶高斯分布的多智能体协同探索方法及装置 Download PDFInfo
- Publication number
- CN112215333B CN112215333B CN202010962997.4A CN202010962997A CN112215333B CN 112215333 B CN112215333 B CN 112215333B CN 202010962997 A CN202010962997 A CN 202010962997A CN 112215333 B CN112215333 B CN 112215333B
- Authority
- CN
- China
- Prior art keywords
- network
- agent
- value
- qmix
- collaborative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于低阶高斯分布的多智能体协同探索方法及装置,其中,该方法包括:获取多智能体决策下的状态轨迹,将状态轨迹存入数据缓存器;构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络;基于状态轨迹和值函数分解算法的多智能体协同探索过程,对上述构建的相关网络进行更新;根据更新的多个网络生成更新后的策略模型,对策略模型进行测试。该方法设计出一种在连续控制量的仿真环境中基于低阶高斯分布的多智能体协同探索算法。
Description
技术领域
本发明涉及机器学习技术领域,特别涉及一种连续动作控制下基于低阶高斯分布的多智能体协同探索方法及装置。
背景技术
近些年来,借助于深度学习的发展,强化学习在机器人控制、围棋、雅塔力游戏等一系列领域取得了重大突破。在单智能体强化学习中,基于期望奖励的算法是经典的强化学习目标,该类算法虽然在简单游戏环境下具有不错的表现,但是缺乏一定的鲁棒性和探索性。基于低阶高斯分布的最大熵算法修正了基于期望奖励的强化学习算法,并大大提高了算法的鲁棒性和探索性,SAC是这一类算法的典型代表。SAC算法在每一次迭代中将智能体策略的熵和状态动作值结合,通过最大化智能体策略的熵,从而鼓励智能体在更高奖励的区域探索。与单智能体强化学习不同,在多智能体场景下,每个智能体都有自己的局部观测,且每个智能体都需要根据自己的观测做出决策,因此多智能体场景下的策略优化是多个智能体的联合策略优化。目前多智能体的算法设计主要基于值函数进行设计,且该类算法主要分为两类:中心值函数和分解值函数。其中,中心值函数在计算单个智能体的状态动作值函数时考虑了其它智能体的动作,并在连续动作控制场景下超越了其它传统多智能体算法的性能,这种算法具有很好的鲁棒性。
值函数分解方法是将多个智能体的中心值函数进行分解,是目前多智能体值函数学习的主流算法。QMIX算法是值函数分解的代表算法,该算法在基于全局状态信息的条件下,将各个智能体的值函数融合,并保证总体值函数相对于单个智能体的值函数是单调的。这种算法在复杂离散动作控制场景下取得了突出的效果。现实世界中的多智能体环境通常比较复杂,需要多个智能体不断地协同探索从而到达较高奖励区域。由于QMIX算法仅仅考虑最大化单个智能体的状态动作值函数信息,且多个智能体均为独立epsilon探索,因此QMIX算法缺乏一些协同探索性。同时,QMIX算法仅适用于离散动作控制的环境,而现实中的大多数多智能体环境是连续动作控制的。因此,考虑如何利用最大熵方法增强QMIX算法的协同探索性,并应用在连续动作控制下的多智能体环境中具有一定的挑战性。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种连续动作控制下基于低阶高斯分布的多智能体协同探索方法,该方法设计出一种利用多智能体连续控制量下的状态轨迹在仿真环境中学习连续动作控制的多智能体协同探索算法。
本发明的另一个目的在于提出一种连续动作控制下基于低阶高斯分布的多智能体协同探索装置。
为达到上述目的,本发明一方面实施例提出了基于低阶高斯分布的多智能体协同探索方法,包括以下步骤:步骤S1,获取多智能体决策下的状态轨迹,将所述状态轨迹存入数据缓存器;步骤S2,构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络;步骤S3,基于所述状态轨迹和值函数分解算法的多智能体协同探索过程,对所述各个智能体的主值网络、所述各个智能体的主策略网络、所述QMIX主值网络、所述主协同探索网络、所述各个智能体的副值网络、所述各个智能体的副策略网络、所述QMIX副值网络、所述副协同探索网络进行更新;步骤S4,根据所述步骤S3更新的多个网络生成更新后的策略模型,对所述策略模型进行测试。
本发明实施例的基于低阶高斯分布的多智能体协同探索方法,通过从工业应用与算法研究实际需要出发,研究基于低阶高斯分布的多智能体协同探索方法,并结合值函数分解算法QMIX,设计出一种利用多智能体连续控制量下的状态轨迹在仿真环境中学习连续动作控制的多智能体协同探索方法。
另外,根据本发明上述实施例的基于低阶高斯分布的多智能体协同探索方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,根据预设应用场景设计部分观测仿真器,通过所述仿真器和所述预设应用场景进行交互,获得所述状态轨迹,并将所述状态轨迹存入所述数据缓存器。
进一步地,在本发明的一个实施例中,所述步骤S3进一步包括:步骤S31,初始化仿真环境env、所述各个智能体的主值网络Qi、所述各个智能体的主策略网络πi、所述QMIX主值网络QMIX、所述主协同探索网络fψ、所述各个智能体的副值网络Q’i、所述各个智能体的副策略网络π’i、所述QMIX副值网络QMIX'、所述副协同探索网络f’ψ;步骤S32,在当前状态依据策略选取动作转移到下一状态并得到当前时刻的奖励值rt时,根据所述当前状态ot、所述当前动作αt、所述当前时刻的奖励值rt和所述下一状态ot+1组成四元组(ot,αt,rt,ot+1),并将所述四元组存储进生成数据缓存器Bπ;步骤S33,在所述生成数据缓存器Bπ中的数据量达到预设数据量阈值时,每个时间步取出部分数据对所述各个智能体的主值网络Qi、所述QMIX主值网络QMIX进行更新;步骤S34,每隔预设时间利用策略梯度对所述各个智能体的主策略网络和所述主协同探索网络进行更新,并对所述各个智能体副值网络Q’i、所述各个智能体的副策略网络π’i、所述QMIX副值网络QMIX'、所述副协同探索网络f’ψ的参数进行软更新。
进一步地,在本发明的一个实施例中,所述步骤S32中各个智能体依据自身的策略网络和随机扰动选择动作:
α=μ+σεN+KN×MεM
其中,μ为各个智能体主策略网络输出的均值,σ=πi(oi;φi),σ为各个智能体主策略网络输出的方差,πi为各个智能体的主策略网络,oi为智能体i的观测,φi为各个智能体主策略网络的参数,KN×M=fψ(s;ψ),KN×M为主协同探索网络fψ输出的协方差因子,N为智能体的数量,M为协方差因子的任意给定维度,s为全局观测,ψ为协同探索网络的参数,εN为N维随机扰动,其作为单个智能体自身的探索扰动,εM为M维随机扰动,εM与KN×M相乘后作为多个智能体整体的随机扰动。
进一步地,在本发明的一个实施例中,所述步骤S33进一步包括:
步骤S331,依据所述各个智能体的策略网络π’i和随机扰动εN、εM选择下一时刻的动作:
α=μ+σεN+KN×MεM
其中,μ=[μi]i∈D,σ=[σi]i∈D,μi,σi=π’i(o’i;φ’i),μi为智能体i主策略网络输出的均值,σi为智能体i主策略网络输出的方差,i为各个智能体的编号,D为经验回放池,π’i为智能体i的副策略网络,o’i为智能体i在下一时刻的观测,φi'为智能体i副策略网络的参数,KN×M=f’ψ(s';ψ'),f’ψ为多智能体的副协同探索网络,s为全局观测,ψ为协同探索网络的参数;
其中,为所述QMIX主值网络QMIX的两层全连接网络,并对该网络的权重取绝对值,s为所有智能体的全局观测,为所述各个智能体的主值网络Qi输出的Q值。步骤S333,利用所述QMIX副值网络QMIX'计算目标混合状态-动作值
步骤S334,计算多智能体的目标状态-动作值Qtarget:
Qtarget(o,α)=r(o,α)+γES'~P[Vtot(s')]
其中,Qtarget(o,α)为目标总体状态动作值函数,r(o,α)为当前时刻的奖励,α为熵正则项系数且α>0,γ为折扣回报因子,ES'~P为状态服从转移概率P时的期望,Vtot(s')=Eα'~π'[Q’tot(s',α')-αlog(π'(α'|s'))],Vtot(s')为目标总体状态值函数,Eα'~π'为动作服从策略π'时的期望,Q’tot为QMIX副值网络QMIX'输出的目标混合状态-动作值,s'为所有智能体的下一时刻的全局观测,α'为下一时刻的动作,-log(π'(α'|s'))为在下一时刻多智能体所选动作的总体熵;
进一步地,在本发明的一个实施例中,所述总体熵的具体求解为:
构建协方差矩阵covN×N=KN×MKN×M T+diagN×N,其中diagN×N为协方差对角阵;
采用μ+σεN和covN×N构建低阶多变量高斯分布Normalmulti,从Normalmulti中采样得到多智能体所选择的动作α',并根据α'得到所述总体熵-log(π'(α'|s'))。
进一步地,在本发明的一个实施例中,所述S34中对所述各个智能体的副值网络Q’i、所述各个智能体的副策略网络π’i、所述QMIX副值网络QMIX'的参数、所述副协同探索网络f’ψ进行软更新过程为:
ψ'←τψ+(1-τ)ψ'
其中,φ’i为各个智能体副策略网络的参数,φi为各个智能体主策略网络的参数,θ’i为各个智能体的副值网络的参数,θi为各个智能体的主值网络的参数,为QMIX副值网络的参数,为QMIX主值网络的参数,ψ'为副协同探索网络的参数,ψ为主协同探索网络的参数,τ为超参数,用于控制从主网络更新副网络参数的程度。
进一步地,在本发明的一个实施例中,所述步骤S4中,对所述各个智能体的主策略网络πi和所述各个智能体的主协同探索网络fψ进行更新包括:
其中,sk为k时刻的全局观测,α-i为除智能体i外,其它智能体的动作。
为达到上述目的,本发明另一方面实施例提出了基于低阶高斯分布的多智能体协同探索装置,包括:获取模块,用于获取多智能体决策下的状态轨迹,将所述状态轨迹存入数据缓存器;构建模块,用于构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络;更新模块,用于基于所述状态轨迹和值函数分解算法的多智能体协同探索过程,对所述各个智能体的主值网络、所述各个智能体的主策略网络、所述QMIX主值网络、所述主协同探索网络、所述各个智能体的副值网络、所述各个智能体的副策略网络、所述QMIX副值网络、所述副协同探索网络进行更新;生成模块,用于根据所述更新模块更新的多个网络生成更新后的策略模型,对所述策略模型进行测试。
本发明实施例的基于低阶高斯分布的多智能体协同探索装置,通过从工业应用与算法研究实际需要出发,研究多智能体协同探索方法,并结合多智能体值函数分解方法QMIX,设计出一种利用连续控制量下多智能体的状态轨迹在仿真环境中学习连续动作控制的多智能体协同探索装置。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的基于低阶高斯分布的的多智能体协同探索方法流程图;
图2为根据本发明一个实施例的基于低阶高斯分布的的多智能体协同探索方法流程框图;
图3为根据本发明一个实施例的环境的具体场景图示意图;
图4为根据本发明一个实施例的训练过程图像;
图5为根据本发明一个实施例的基于低阶高斯分布的的多智能体协同探索装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参照附图描述根据本发明实施例提出的基于低阶高斯分布的多智能体协同探索方法及装置,首先将参照附图描述根据本发明实施例提出的基于低阶高斯分布的多智能体协同探索方法。
图1是本发明一个实施例的基于低阶高斯分布的多智能体协同探索方法流程图。
如图1所示,该基于低阶高斯分布的多智能体协同探索方法包括以下步骤:
在步骤S1中,获取多智能体决策下的状态轨迹,将状态轨迹存入数据缓存器。
具体地,获取多个智能体决策下的状态轨迹,并存入相应的数据缓存器中。根据应用场景设计部分观测仿真器,通过仿真器与应用场景进行交互得到训练时所需的数据。仿真器的输入是当前时刻各个智能体的动作输出返回的是环境下一时刻的观测状态其中,i为各个智能体中的编号。
在步骤S2中,构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络。
具体地,构建参数θi的各个智能体的主值网络Qi、参数为φi的各个智能体的主策略网络πi,参数为的QMIX主值网络QMIX,参数为ψ的主协同探索网络fψ,参数为的各个智能体的副值网络Q’i、参数为φ’i的各个智能体的副策略网络π’i,参数为的QMIX副值网络,参数为ψ'的副协同探索网络。
在步骤S3中,基于状态轨迹和值函数分解算法的多智能体协同探索过程,对各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络进行更新。
也就是说,基于值函数分布和离轨策略算法的值函数分解过程。各个智能体使用主策略网络πi和主协同探索网络ψ与仿真环境进行交互,将四元组(ot,αt,rt,ot+1)存入到缓存器Bπ中。通过值函数分解过程,步骤S2中的各个智能体的演员、评论家网络,主协同探索网络ψ,QMIX混合网络参数持续更新。当训练进程收敛时,主协同探索网络充分探索多智能体场景,QMIX混合网络很好地分解多智能体的整体值函数。
具体地,如图2所示,基于低阶高斯分布的多智能体协同探索过程的具体步骤为:
S31,初始化仿真环境env、各个智能体主值网络Qi、各个智能体主策略网络πi、QMIX主值网络QMIX、主协同探索网络fψ、各个智能体副值网络Q’i、各个智能体副策略网络π’i、QMIX副值网络QMIX'、副协同探索网络f’ψ;
S32,在当前状态依据策略选取动作并转移到下一状态并得到当前时刻的奖励值rt,根据当前状态ot、当前动作at、当前时刻的奖励值rt和下一状态ot+1组成四元组(ot,αt,rt,ot+1),并将四元组存储进生成数据缓存器Bπ;
其中,各个智能体依据自己的策略网络和随机扰动选择动作:
α=μ+σεN+KN×MεM
其中,μ为各个智能体主策略网络输出的均值,σ=πi(oi;φi),σ为各个智能体主策略网络输出的方差,πi为各个智能体的主策略网络,oi为智能体i的观测,φi为各个智能体主策略网络的参数,KN×M=fψ(s;ψ),KN×M为主协同探索网络fψ输出的协方差因子,N为智能体的数量,M为协方差因子的任意给定维度,s为全局观测,ψ为协同探索网络的参数,εN为N维随机扰动,其作为单个智能体自身的探索扰动,εM为M维随机扰动,εM与KN×M相乘后作为多个智能体整体的随机扰动。
S33,在生成数据缓存器Bπ中的数据量达到预设数据量阈值buffer_size后,每个时间步取出部分数据对各个智能体的主值网络Qi、QMIX主值网络QMIX进行更新;
对各个智能体的主值网络Qi,QMIX混合网络进行参数更新的过程如下:
S331,依据各个智能体的策略网络π’i和随机扰动εN、εM择下一时刻的动作:
α=μ+σεN+KN×MεM
其中,μ=[μi]i∈D,σ=[σi]i∈D,μi,σi=π’i(o’i;φ’i),μi为智能体i主策略网络输出的均值,σi为智能体i主策略网络输出的方差,i为各个智能体的编号,D为经验回放池,π’i为智能体i的副策略网络,o’i为智能体i在下一时刻的观测,φ’i为智能体i副策略网络的参数,KN×M=f’ψ(s';ψ'),f’ψ为多智能体的副协同探索网络,s为全局观测,ψ为协同探索网络的参数;
S334,计算多智能体的目标状态-动作值Qtarget:
Qtarget(o,α)=r(o,α)+γES'~P[Vtot(s')]
其中,Qtarget(o,α)为目标总体状态动作值函数,r(o,α)为当前时刻的奖励,α为熵正则项系数且α>0,γ为折扣回报因子,ES'~P为状态服从转移概率P时的期望,Vtot(s')=Eα'~π'[Q’tot(s',α')-αlog(π'(α'|s'))],Vtot(s')为目标总体状态值函数,Eα'~π'为动作服从策略π'时的期望,Q’tot为QMIX副值网络QMIX'输出的目标混合状态-动作值,s'为所有智能体的下一时刻的全局观测,α'为下一时刻的动作,-log(π'(α'|s'))为在下一时刻多智能体所选动作的总体熵,具体地,构建协方差矩阵covN×N=KN×MKN×M T+diagN×N,其中diagN×N为协方差对角阵,采用μ+σεN和covN×N构建低阶多变量高斯分布Normalmulti,从Normalmulti中采样得到多智能体所选择的动作α',并根据α'得到-log(π'(α'|s'))。
S34,每隔预设时间利用策略梯度对各个智能体主策略网络和主协同探索网络进行更新,并对各个智能体副值网络Q’i、各个智能体副策略网络π’i、QMIX副值网络QMIX'、副协同探索网络f’ψ的参数进行软更新。
对各个智能体主策略网络和主协同探索网络进行更新包括:
其中,sk为k时刻的全局观测,α-i为除智能体i外,其它智能体的动作。
对各个智能体副值网络Q’i、各个智能体副策略网络π’i、QMIX副值网络QMIX'的参数、副协同探索网络f’ψ进行软更新:
ψ'←τψ+(1-τ)ψ'
其中,τ是超参数,用于控制从主网络更新副网络参数的程度。
在步骤S4中,根据步骤S3更新的多个网络生成更新后的策略模型,对策略模型进行测试。
具体而言,在与环境的交互次数达到预设次数时,结束训练过程生成更新后的策略模型。
下面通过具体的实施例对发明的基于状态轨迹的多智能体协同探索方法进行详细说明。
对于一个高维连续控制任务,该任务的目的是控制三个智能体捕获一个随机游走的智能体,算法所控制的智能体速度较慢,随机游走的智能体速度较快,在该环境中还有两个不动的障碍物,图3是该环境的具体场景。对于该仿真环境中要控制的智能体而言,输入是16维状态量,输出动作是连续的5维变量。在所提出的基于状态数据的多智能体协同探索算法中,各个智能体的策略网络的嵌入层包含三层隐藏层,结点数分别为64,64,64,激活函数为relu;多智能体的协同探索网络包含三层隐藏层,结点数分别为64,64,64,激活函数为relu;QMIX混合网络包含两层隐藏层,结点数分布为32,32,激活函数为relu;各个智能体的值网络包含三层隐藏层,结点数分别为64,64,64,激活函数为relu。以上各个网络的参数都通过Adam优化器进行优化。
多智能体协同探索过程中使用到的其他超参数如下表所示:
在Simple_tag环境中,中心化值函数策略MADDPG策略评估得分为700,如图4所示,而相比之下的基于注意力机制的多智能体值函数分解算法策略评估得分为1200。从图4中可以看到基于注意力机制的多智能体值函数分解算法在2000个episode后性能大幅度提高,策略评估得分很快到达1100分以上。
本发明实施例的基于低阶高斯分布的的多智能体协同探索装置,通过从工业应用与算法研究实际需要出发,研究分布的的多智能体协同探索方法,并结合多智能体值函数分解方法QMIX,设计出一种利用多智能体连续控制量下的状态轨迹在仿真环境中学习连续动作控制的多智能体协同探索方法。
其次参照附图描述根据本发明实施例提出的基于低阶高斯分布的多智能体协同探索装置。
图5是本发明一个实施例的基于低阶高斯分布的多智能体协同探索装置的结构示意图。
如图5所示,该装置10包括:获取模块100、构建模块200、更新模块300和生成模块400。
其中,获取模块100用于获取多智能体决策下的状态轨迹,将状态轨迹存入数据缓存器。构建模块200用于构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络。更新模块300用于基于值函数分布和离轨策略算法的值函数分解过程,对各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络进行更新。生成模块400用于根据更新模块200更新的多个网络生成更新后的策略模型,对策略模型进行测试。
根据本发明实施例提出的基于低阶高斯分布的多智能体协同探索装置,通过从工业应用与算法研究实际需要出发,研究分布的的多智能体协同探索方法,并结合多智能体值函数分解方法QMIX,设计出一种利用多智能体连续控制量下的状态轨迹在仿真环境中学习连续动作控制的多智能体协同探索方法。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (6)
1.一种基于低阶高斯分布的多智能体协同探索方法,其特征在于,包括以下步骤:
步骤S1,获取多智能体决策下的状态轨迹,将所述状态轨迹存入数据缓存器;
步骤S2,构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络;
步骤S3,基于所述状态轨迹和值函数分解算法的多智能体协同探索过程,对所述各个智能体的主值网络、所述各个智能体的主策略网络、所述QMIX主值网络、所述主协同探索网络、所述各个智能体的副值网络、所述各个智能体的副策略网络、所述QMIX副值网络、所述副协同探索网络进行更新;
步骤S4,根据所述步骤S3更新的多个网络生成更新后的策略模型,对所述策略模型进行测试;
所述步骤S3进一步包括:
步骤S31,初始化仿真环境env、所述各个智能体的主值网络Qi、所述各个智能体的主策略网络πi、所述QMIX主值网络QMIX、所述主协同探索网络fψ、所述各个智能体的副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'、所述副协同探索网络f′ψ;
步骤S32,在当前状态依据策略选取动作转移到下一状态并得到当前时刻的奖励值rt时,根据所述当前状态ot、当前动作αt、所述当前时刻的奖励值rt和所述下一状态ot+1组成四元组(ot,αt,rt,ot+1),并将所述四元组存储进生成数据缓存器Bπ;
步骤S33,在所述生成数据缓存器Bπ中的数据量达到预设数据量阈值时,每个时间步取出部分数据对所述各个智能体的主值网络Qi、所述QMIX主值网络QMIX进行更新;
步骤S34,每隔预设时间利用策略梯度对所述各个智能体的主策略网络和所述主协同探索网络进行更新,并对所述各个智能体副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'、所述副协同探索网络f′ψ的参数进行软更新;
所述步骤S33进一步包括:
步骤S331,依据所述各个智能体的策略网络π′i和随机扰动εN、εM选择下一时刻的动作:
α=μ+σεN+KN×MεM
其中,μ=[μi]i∈D,σ=[σi]i∈D,μi,σi=π′i(o′i;φ′i),μi为智能体i主策略网络输出的均值,σi为智能体i主策略网络输出的方差,i为各个智能体的编号,D为经验回放池,π′i为智能体i的副策略网络,o′i为智能体i在下一时刻的观测,φ′i为智能体i副策略网络的参数,KN×M=f′ψ(s';ψ'),f′ψ为多智能体的副协同探索网络,s为全局观测,ψ为协同探索网络的参数;
步骤S334,计算多智能体的目标状态-动作值Qtarget:
Qtarget(o,α)=r(o,α)+γES'~P[Vtot(s')]
其中,Qtarget(o,α)为目标总体状态动作值函数,r(o,α)为当前时刻的奖励,α为熵正则项系数且α>0,γ为折扣回报因子,ES'~P为状态服从转移概率P时的期望,Vtot(s')=Eα'~π'[Q′tot(s',α')-αlog(π'(α'|s'))],Vtot(s')为目标总体状态值函数,Eα'~π'为动作服从策略π'时的期望,Q′tot为QMIX副值网络QMIX'输出的目标混合状态-动作值,s'为所有智能体的下一时刻的全局观测,α'为下一时刻的动作,-log(π'(α'|s'))为在下一时刻多智能体所选动作的总体熵;
所述步骤S34中,对所述各个智能体的主策略网络πi和所述各个智能体的主协同探索网络fψ进行更新包括:
其中,sk为k时刻的全局观测,α-i为除智能体i外,其它智能体的动作;
所述S34中对所述各个智能体的副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'的参数、所述副协同探索网络f′ψ进行软更新过程为:
φ′i←τφi+(1-τ)φ‘i
θ′i←τθi+(1-τ)θ‘i
ψ'←τψ+(1-τ)ψ'
2.根据权利要求1所述的基于低阶高斯分布的多智能体协同探索方法,其特征在于,所述步骤S1进一步包括:
根据预设应用场景设计部分观测仿真器,通过所述仿真器和所述预设应用场景进行交互,获得所述状态轨迹,并将所述状态轨迹存入所述数据缓存器。
4.根据权利要求1所述的基于低阶高斯分布的多智能体协同探索方法,其特征在于,所述步骤S32中各个智能体依据自身的策略网络和随机扰动选择动作:
α=μ+σεN+KN×MεM
其中,μ为各个智能体主策略网络输出的均值,σ=πi(oi;φi),σ为各个智能体主策略网络输出的方差,πi为各个智能体的主策略网络,oi为智能体i的观测,φi为各个智能体主策略网络的参数,KN×M=fψ(s;ψ),KN×M为主协同探索网络fψ输出的协方差因子,N为智能体的数量,M为协方差因子的任意给定维度,s为全局观测,ψ为协同探索网络的参数,εN为N维随机扰动,其作为单个智能体自身的探索扰动,εM为M维随机扰动,εM与KN×M相乘后作为多个智能体整体的随机扰动。
5.根据权利要求1所述的基于低阶高斯分布的多智能体协同探索方法,其特征在于,所述总体熵的具体求解为:
构建协方差矩阵covN×N=KN×MKN×M T+diagN×N,其中diagN×N为协方差对角阵;
采用μ+σεN和covN×N构建低阶多变量高斯分布Normalmulti,从Normalmulti中采样得到多智能体所选择的动作α',并根据α'得到所述总体熵-log(π'(α'|s'))。
6.一种基于低阶高斯分布的多智能体协同探索装置,其特征在于,包括以下步骤:
获取模块,用于获取多智能体决策下的状态轨迹,将所述状态轨迹存入数据缓存器;
构建模块,用于构建各个智能体的主值网络、各个智能体的主策略网络、QMIX主值网络、主协同探索网络、各个智能体的副值网络、各个智能体的副策略网络、QMIX副值网络、副协同探索网络;
更新模块,用于基于所述状态轨迹和值函数分解算法的多智能体协同探索过程,对所述各个智能体的主值网络、所述各个智能体的主策略网络、所述QMIX主值网络、所述主协同探索网络、所述各个智能体的副值网络、所述各个智能体的副策略网络、所述QMIX副值网络、所述副协同探索网络进行更新;
生成模块,用于根据所述更新模块更新的多个网络生成更新后的策略模型,对所述策略模型进行测试;
所述更新模块进一步包括:
第一更新子模块,用于初始化仿真环境env、所述各个智能体的主值网络Qi、所述各个智能体的主策略网络πi、所述QMIX主值网络QMIX、所述主协同探索网络fψ、所述各个智能体的副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'、所述副协同探索网络f′ψ;
第二更新子模块,用于在当前状态依据策略选取动作转移到下一状态并得到当前时刻的奖励值rt时,根据所述当前状态ot、当前动作αt、所述当前时刻的奖励值rt和所述下一状态ot+1组成四元组(ot,αt,rt,ot+1),并将所述四元组存储进生成数据缓存器Bπ;
第三更新子模块,用于在所述生成数据缓存器Bπ中的数据量达到预设数据量阈值时,每个时间步取出部分数据对所述各个智能体的主值网络Qi、所述QMIX主值网络QMIX进行更新;
第四更新子模块,用于每隔预设时间利用策略梯度对所述各个智能体的主策略网络和所述主协同探索网络进行更新,并对所述各个智能体副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'、所述副协同探索网络f′ψ的参数进行软更新;
所述第三更新子模块进一步包括:
第五更新子模块,用于依据所述各个智能体的策略网络π′i和随机扰动εN、εM选择下一时刻的动作:
α=μ+σεN+KN×MεM
其中,μ=[μi]i∈D,σ=[σi]i∈D,μi,σi=π′i(o′i;φ′i),μi为智能体i主策略网络输出的均值,σi为智能体i主策略网络输出的方差,i为各个智能体的编号,D为经验回放池,π′i为智能体i的副策略网络,o′i为智能体i在下一时刻的观测,φ′i为智能体i副策略网络的参数,KN×M=f′ψ(s';ψ'),f′ψ为多智能体的副协同探索网络,s为全局观测,ψ为协同探索网络的参数;
第八更新子模块,用于计算多智能体的目标状态-动作值Qtarget:
Qtarget(o,α)=r(o,α)+γES'~P[Vtot(s')]
其中,Qtarget(o,α)为目标总体状态动作值函数,r(o,α)为当前时刻的奖励,α为熵正则项系数且α>0,γ为折扣回报因子,ES'~P为状态服从转移概率P时的期望,Vtot(s')=Eα'~π'[Q′tot(s',α')-αlog(π'(α'|s'))],Vtot(s')为目标总体状态值函数,Eα'~π'为动作服从策略π'时的期望,Q′tot为QMIX副值网络QMIX'输出的目标混合状态-动作值,s'为所有智能体的下一时刻的全局观测,α'为下一时刻的动作,-log(π'(α'|s'))为在下一时刻多智能体所选动作的总体熵;
所述第四更新子模块中,对所述各个智能体的主策略网络πi和所述各个智能体的主协同探索网络fψ进行更新包括:
其中,sk为k时刻的全局观测,α-i为除智能体i外,其它智能体的动作;
所述第四更新子模块中对所述各个智能体的副值网络Q′i、所述各个智能体的副策略网络π′i、所述QMIX副值网络QMIX'的参数、所述副协同探索网络f′ψ进行软更新过程为:
φ′i←τφi+(1-τ)φ‘i
θ′i←τθi+(1-τ)θ‘i
ψ'←τψ+(1-τ)ψ'
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010962997.4A CN112215333B (zh) | 2020-09-14 | 2020-09-14 | 基于低阶高斯分布的多智能体协同探索方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010962997.4A CN112215333B (zh) | 2020-09-14 | 2020-09-14 | 基于低阶高斯分布的多智能体协同探索方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112215333A CN112215333A (zh) | 2021-01-12 |
CN112215333B true CN112215333B (zh) | 2022-08-12 |
Family
ID=74049420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010962997.4A Active CN112215333B (zh) | 2020-09-14 | 2020-09-14 | 基于低阶高斯分布的多智能体协同探索方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112215333B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111079305A (zh) * | 2019-12-27 | 2020-04-28 | 南京航空航天大学 | 一种基于λ-回报的异策略多智能体强化学习协作方法 |
CN111488988A (zh) * | 2020-04-16 | 2020-08-04 | 清华大学 | 基于对抗学习的控制策略模仿学习方法及装置 |
CN111514585A (zh) * | 2020-03-17 | 2020-08-11 | 清华大学 | 智能体的控制方法及系统、计算机装置以及存储介质 |
CN111563188A (zh) * | 2020-04-30 | 2020-08-21 | 南京邮电大学 | 一种移动多智能体协同目标搜索方法 |
-
2020
- 2020-09-14 CN CN202010962997.4A patent/CN112215333B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111079305A (zh) * | 2019-12-27 | 2020-04-28 | 南京航空航天大学 | 一种基于λ-回报的异策略多智能体强化学习协作方法 |
CN111514585A (zh) * | 2020-03-17 | 2020-08-11 | 清华大学 | 智能体的控制方法及系统、计算机装置以及存储介质 |
CN111488988A (zh) * | 2020-04-16 | 2020-08-04 | 清华大学 | 基于对抗学习的控制策略模仿学习方法及装置 |
CN111563188A (zh) * | 2020-04-30 | 2020-08-21 | 南京邮电大学 | 一种移动多智能体协同目标搜索方法 |
Non-Patent Citations (5)
Title |
---|
Mean Field Multi-Agent Reinforcement Learning;Yaodong Yang 等;《arXiv:1802.05438v4》;20180719;全文 * |
Qatten: A General Framework for Cooperative Multiagent Reinforcement Learning;Yaodong Yang 等;《arXiv:2002.03939 [cs.MA]》;20200210;全文 * |
QMIX: Monotonic Value Function Factorisation for Deep Multi-Agent Reinforcement Learning;Tabish Rashid 等;《arXiv:1803.11485v2》;20180606;全文 * |
基于高斯回归的连续空间多智能体跟踪学习;陈鑫等;《自动化学报》;20131215(第12期);全文 * |
多智能体深度强化学习的若干关键科学问题;孙长银等;《自动化学报》;20200715(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112215333A (zh) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Du et al. | A survey on multi-agent deep reinforcement learning: from the perspective of challenges and applications | |
Hussain et al. | On the exploration and exploitation in popular swarm-based metaheuristic algorithms | |
Zhang et al. | Learning automata-based multiagent reinforcement learning for optimization of cooperative tasks | |
CN107038477A (zh) | 一种非完备信息下的神经网络与q学习结合的估值方法 | |
CN108921298B (zh) | 强化学习多智能体沟通与决策方法 | |
CN106529818B (zh) | 基于模糊小波神经网络的水质评价预测方法 | |
CN109511277B (zh) | 多状态连续动作空间的合作式方法及系统 | |
CN109740741B (zh) | 一种结合知识转移的强化学习方法及其应用于无人车自主技能的学习方法 | |
CN112488310A (zh) | 一种多智能体群组协作策略自动生成方法 | |
CN114896899B (zh) | 一种基于信息交互的多智能体分散式决策方法及系统 | |
Lonza | Reinforcement Learning Algorithms with Python: Learn, understand, and develop smart algorithms for addressing AI challenges | |
CN115186097A (zh) | 一种基于知识图谱和强化学习的交互式推荐方法 | |
CN114083539A (zh) | 一种基于多智能体强化学习的机械臂抗干扰运动规划方法 | |
Wang et al. | Distributed reinforcement learning for robot teams: A review | |
CN112101564A (zh) | 基于注意力机制的多智能体值函数分解方法及装置 | |
CN112215333B (zh) | 基于低阶高斯分布的多智能体协同探索方法及装置 | |
Zhang et al. | A gradient-based reinforcement learning algorithm for multiple cooperative agents | |
Hu et al. | Attentive multi-view reinforcement learning | |
Vohra et al. | Evaluating the efficacy of different neural network deep reinforcement algorithms in complex search-and-retrieve virtual simulations | |
Asperti et al. | Microracer: a didactic environment for deep reinforcement learning | |
Zhan et al. | Dueling network architecture for multi-agent deep deterministic policy gradient | |
Zhu et al. | Continuous action iterated dilemma under double-layer network with unknown nonlinear dynamics and its convergence analysis | |
Park et al. | The hybrid multi-layer inference architecture and algorithm of FPNN based on FNN and PNN | |
Liu | Shortest path selection algorithm for cold chain logistics transportation based on improved artificial bee colony | |
Lin et al. | Efficient reinforcement learning through dynamic symbiotic evolution for TSK-type fuzzy controller design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |