多智能体在Markov切换拓扑下的分组一致控制方法与流程

文档序号:23808555发布日期:2021-02-03 12:14阅读:208来源:国知局
多智能体在Markov切换拓扑下的分组一致控制方法与流程
多智能体在markov切换拓扑下的分组一致控制方法
技术领域
[0001]
本发明涉及多智能体系统控制领域,具体涉及一种多智能体在markov切换拓扑下的分组一致控制方法。


背景技术:

[0002]
近年来,专家学者受到自然界生物群集行为的启发将多智能体系统(multi-agent systems,mass)一致性应用于复杂系统协同控制中,多智能体系统一致性问题在群里控制、传感器网络、分布式计算、群体决策等领域有着重要的应用前景。多智能体系统分组一致性是指多智能体系统内部的同组智能体收敛一致,不同分组智能体达到不同的收敛值,分组一致性能更好解决复杂任务的并行处理。
[0003]
在智能体之间传输信息的过程中,干扰、时延、丢包、链路故障等现象是不可避免的,这些故障现象会导致通信拓扑随时间变化。现有的多智能体系统在切换拓扑下实现一致性的方法主要有三类:
[0004]
(1)一般切换拓扑,只要求联合拓扑结构含有有向生成树。通过智能体的邻居信息计算出平均值并作为控制输入进行状态更新,使系统最终达到平均一致。这种切换方式不考虑系统拓扑之间的转化概率,忽略了子拓扑之间的切换关系;
[0005]
(2)伯努利切换拓扑,可以看成一个独立重复实验,并且切换到各个拓扑结构的概率都是固定不变,这种情况比较特殊,不符合现实复杂系统的需求;
[0006]
(3)markov切换拓扑,其具有无后效性,即未来的状态条件仅依赖于当前状态,与过去的状态无关。多智能体系统受各种环境因素影响系统的拓扑切换具有不确定性,因此,在当前拓扑状态下切换到其他拓扑状态的概率也是不同的。markov切换方式更符合现实复杂系统的需求。
[0007]
目前,对于多智能体协同控制的研究大多数基于同质多智能体系统,即系统内部所多有的智能体具有相同的动力学行为。同时对多智能体系统的拓扑要求较高,例如需要含有向生成树、入度平衡、强连通、对称等,这些特殊条件无法普遍适用于现实复杂的系统。在实际应用中,多智能体系统需要不同类型的智能体分工完成复杂工作,比如蜜蜂的分工建巢行为。此外,在同质多智能体系统中,单一的收敛值限制了系统的处理能力,无法实现多任务并行处理,工作效率低下。
[0008]
对于复杂多智能体系统来说,通过系统内部的耦合作用很难达到一致性,通常需要外部的作用。与控制所有智能体相比较,通过牵制控制部分智能体系统可以达到指定的一致性状态,这种牵制控制方法不仅减少了工作量,而且降低了工作难度和控制成本。
[0009]
上面提及的大多数研究工作都是基于单一的合作关系或者竞争关系,但现实有限的资源引发智能体间的竞争行为以及共同协作的合作行为,使得智能体间合作-竞争关系普遍存在复杂系统中,同时存在的合作-竞争关系更符合现实需求,例如:铁路系统。因此,一种具有合作-竞争关系的多智能体系统在markov切换拓扑状态下如何实现牵制分组一致性,是一个亟待解决的问题。


技术实现要素:

[0010]
为了解决上述问题,本发明提供一种智能体在markov切换拓扑下的分组一致控制方法。
[0011]
一种多智能体在markov切换拓扑下的分组一致控制方法,包括以下步骤:
[0012]
s1、根据异质多智能体系统中智能体之间的信息交互,确定系统的拓扑结构以及系统在收敛一致的过程中出现的子拓扑,计算子拓扑结构之间状态转换的概率,得到子拓扑之间的概率转移矩阵;
[0013]
s2、对异质多智能体系统中的智能体进行分组,将具有合作关系的智能体分为一组,将具有竞争关系的智能体分在不同组,设置每个智能体分组期望的收敛状态值,将由子拓扑结构组成的联合拓扑中入度为零的智能体实施牵制;
[0014]
s3、每个智能体向邻居发送自身的状态信息,智能体在接收到邻居智能体的发送的信息后,根据邻居智能体所在的分组,对收到的信息进行划分,得到相同组智能体的状态信息和不同组智能体的状态信息;
[0015]
异质多智能体系统由一阶智能体和二阶智能体组成,一阶智能体包含位置信息,二阶智能体包含位置信息和速度信息,第i个智能体的位置信息用x
i
(t)表示,速度信息用v
i
(t)表示,任意两个智能体之间存在合作关系或竞争关系,用(x
j
(t)-x
i
(t))表示第j个智能体和第i个智能体的合作关系,用(x
j
(t)+x
i
(t))表示第j个智能体和第i个智能体的竞争关系;
[0016]
s4、设置一致性控制协议,每个智能体根据一致性控制协议分别对相同组智能体的状态信息和不同组智能体的状态信息进行处理,得到该智能体与其邻居智能体的加权状态误差结果;
[0017]
s5、将加权状态误差结果代入动态方程中对智能体的状态进行更新,同时系统根据子拓扑之间的概率转移矩阵进行子拓扑间的切换;
[0018]
s6、切换子拓扑结构后,将每个智能体分组的状态信息分别与对应智能体分组期望的收敛状态值作比较,若每个智能体分组的状态信息达到各自期望的收敛状态值时,则系统达到分组一致;若存在至少一个智能体分组的状态信息未达到各自期望的收敛状态值,则重复上述步骤s2-s5对智能体的状态进行迭代更新,直到每个智能体分组的状态信息达到各自期望的收敛状态值时,异质多智能体系统达到分组一致。
[0019]
进一步的,将由子拓扑结构组成的联合拓扑中入度为零的智能体实施牵制,包括:系统拓扑中入度为零的智能体必须被牵制,其他智能体根据控制成本酌情增加牵制智能体的数量;系统拓扑中入度为零的智能体牵制方式是:
[0020][0021]
其中,d
i
代表第i个智能体的牵制增益,x
i
(t)代表第i个智能体的位置信息,代表第i个智能体所在分组的期望收敛状态值。
[0022]
进一步的,对异质多智能体系统中的智能体进行分组包括:根据异质多智能体系统的系统拓扑对智能体进行分组,具有合作关系的分为同一组,将相互竞争的智能体分成不同组,即同组的智能体之间具有合作关系,不同组的智能体之间具有竞争关系;同组的智能体状态值趋于一致,不同组的智能体状态值趋于相反。
[0023]
进一步的,所述一致性控制协议包括:
[0024][0025]
其中,u
i
(t)是第i个智能体的控制输入,α,β,γ表示系统的控制参数;n
si
表示智能体i在同组内邻居智能体节点的集合,n
di
智能体i在不同组内邻居智能体节点的集合,表示智能体i与智能体j之间在第σ(t)拓扑连接权重;x
j
(t)表示智能体j的位置信息,x
i
(t)表示智能体i的位置信息;d
i
表示牵制增益,如果智能体i被牵制,则d
i
>0,否则d
i
=0;x
σi
表示智能体i所在在分组的期望收敛状态值;v
i
(t)表示二阶智能体的速度信息,分别表示一阶智能体集合和二阶智能体集合,且示一阶智能体集合和二阶智能体集合,且表示所有智能体集合。
[0026]
进一步的,所述动态方程包括:
[0027][0028]
其中,u
i
(t)表示智能体i在t时刻的控制输入,x
i
(t)表示智能体i的位置信息,表示对x
i
(t)求导;v
i
(t)表示二阶智能体的速度信息,表示对v
i
(t)求导;表示所有智能体集合,表示一阶智能体集合,表示二阶智能体集合,且
[0029]
本发明的有益效果:
[0030]
1、本发明的异质多智能体系统中包括合作-竞争关系的多智能体,根据异质多智能体系统中智能体之间的竞争合作关系将智能体分为两个组,每个分组是异质的,即每个分组包括一阶和二阶智能体,这种竞争合作的内部关系相比于单一的合作关系或者竞争关系,更符合现实复杂系统的内部关系,最终使同组智能体收敛到相同值,不同组智能体收敛值相反。
[0031]
2、本发明的多智能体系统是具有markov切换拓扑的时变系统,markov切换是目前最贴近实际系统的切换方法,相比于固定拓扑,markov切换拓扑能更好的检测系统的鲁棒性。
[0032]
3、本发明使用的牵制控制办法,通过牵制部分智能体,使系统收敛到期望值,这不但降低了控制成本,还减少了工作量。
[0033]
4、本发明研究是一般拓扑结构,可以包含孤立节点或者连通分支,释放了一些对系统拓扑的严苛要求条件,系统适用性很广泛。
附图说明
[0034]
下面结合附图和具体实施方式对本发明做进一步详细的说明。
[0035]
图1为本发明实施例的系统控制流程图;
[0036]
图2为本发明实施例的系统收敛过程中可能出现的拓扑图;
[0037]
图3为本发明实施例的智能体位置演变图;
[0038]
图4为本发明实施例的智能体速度演变图。
具体实施方式
[0039]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040]
本发明所指的“多智能体系统”、“系统”均为异质多智能体系统,异质多智能体系统中包括一阶智能体和二阶智能体,一阶智能体的状态值包含位置信息,二阶智能体的状态值包含位置信息和速度信息。
[0041]
本发明所指的异质多智能体系统中的拓扑结构没有严苛的约束条件,有孤立节点(一个节点表示一个智能体),也有连通分支。
[0042]
如图1所示,一种智能体在markov切换拓扑下的分组一致控制方法,该方法包括但不限于如下步骤:
[0043]
s1、根据异质多智能体系统中的智能体之间的信息交互,确定系统的拓扑结构,并利用图论知识描述异质多智能体系统的拓扑关系;确定系统在收敛一致的过程中可能出现的子拓扑结构,计算子拓扑结构之间状态转换的概率,得到子拓扑之间的概率转移矩阵。
[0044]
在异质多智能体系统中,子拓扑结构的切换方式服从markov切换,且各个拓扑状态切换到其他状态的概率均不相同。所述markov切换具有无后效性,下一步切换到的未来状态只与当前状态有关,与过去的状态无关,这种切换方法更加符合现实系统的拓扑变化。
[0045]
利用随机过程中的连续时间马尔科夫链的相关知识对系统的子拓扑间切换进行分析,计算子拓扑结构之间状态转换的概率;
[0046]
p
ij
(h)为概率转移矩阵p∈r
s
×
s
中的其中一个元素,表示从子拓扑i(状态i)切换到子拓扑j(状态j)的转移概率,计算表达式为:
[0047][0048]
其中,p
ij
(h)表示状态i到状态j的状态转移概率,σ(t)是连续时间齐次马尔可夫链,表示t时刻系统目前所在的拓扑状态,例如σ(t+h)=j表示t+h时刻系统所在的拓扑状态是第j个拓扑,σ(t)=i表示t时刻系统所在的拓扑状态是第i个拓扑;π
ij
表示拓扑状态i到拓扑状态j转移速率,且π
ii
=-∑
i≠j
π
ij
,i≠j,h是表示停留在当前拓扑的停留时间,o(h)表示h的高阶无穷小,i,j代表拓扑状态值,s={1,2,

,s}代表切换拓扑集合,又可称作子拓扑的集合,即表示一个智能体系统在收敛过程中有s个子拓扑。
[0049]
s2、对异质多智能体系统中的智能体进行分组,将具有合作关系的智能体分为一组,将具有竞争关系的智能体分在不同组。为系统中的智能体分组设置期望的收敛状态值
将由子拓扑结构组成的联合拓扑中入度为零的智能体实施牵制,实施牵制就是控制智能体系统中的某些智能体,使系统中所有的智能体都达到期望的状态值。系统拓扑中入度为零的智能体必须被牵制,因为系统中入度为零的智能体接收不到其他智能体的信息,但它可以给其他智能体传递信息或者说它可以影响其他智能体,所以通过牵制这些入度为零的智能体,让这些智能体影响其他智能体,最终使所有的智能体趋向指定的状态。除了牵制系统中所有入度为零的智能体外,其他智能体根据控制成本酌情增加牵制智能体的数量。
[0050]
在一个实施例中,智能体在异质多智能体系统内的分组方法包括:根据异质多智能体系统的系统拓扑对智能体进行分组,具有合作关系的智能体分为同一组,将相互竞争的智能体分到不同组,即同组的智能体之间具有合作关系,不同组的智能体之间具有竞争关系;同组的智能体状态值趋于一致,不同组的智能体状态值趋于相反。
[0051]
在一个实施例中,系统拓扑中入度为零的智能体牵制方式是d
i
(x
i
(t)-x
i
),其中d
i
代表第i个智能体的牵制增益,x
i
(t)表示智能体i的位置信息,x
σi
代表第i个智能体所在分组的期望收敛状态值。
[0052]
s3、每个智能体向邻居发送自身的状态信息,智能体在接收到邻居智能体的发送的信息后,根据邻居智能体所在的分组,对收到的信息进行划分,得到相同组智能体的状态信息和不同组智能体的状态信息。
[0053]
s4、设置一致性控制协议,每个智能体根据一致性控制协议分别对相同组智能体的状态信息和不同组智能体的状态信息进行处理,处理的过程包括:对同组的智能体按照合作关系x
j
(t)-x
i
(t),对不同组的邻居智能体按照竞争关系x
j
(t)+x
i
(t)进行控制输入的计算,例如对于第i个智能体,如果具有通信关系的智能体j是智能体i同组或者具有合作关系,则将它们的位置信息相减;如果具有通信关系的智能体j是智能体i不同组或者具有竞争关系,则将它们的位置信息相加。最终得到发送智能体和接受的加权状态误差结果,加权状态误差结果包括位置误差、速度和牵制误差。
[0054]
所述一致性控制协议包括:
[0055][0056]
其中,u
i
(t)是第i个智能体的控制输入,α,β,γ表示系统的控制参数;n
si
表示智能体i在同组内邻居智能体节点的集合,n
di
智能体i在不同组内邻居智能体节点的集合,表示智能体i与智能体j之间在第σ(t)拓扑连接权重;x
j
(t)表示智能体j的位置信息,x
i
(t)表示智能体i的位置信息;d
i
表示牵制增益,如果智能体i被牵制,则d
i
>0,否则d
i
=0;表示智能体i所在在分组的期望收敛状态值;v
i
(t)表示二阶智能体的速度信息,分别表示一阶智能体集合和二阶智能体集合,且表示一阶智能体集合和二阶智能体集合,且表示所有智能体集合。
[0057]
s5、将加权状态误差结果代入动态方程中对系统内的智能体状态进行更新,同时系统根据子拓扑之间的概率转移矩阵进行子拓扑间的切换,系统在进行子拓扑结构切换
时,由于每个子拓扑结构不同,所以每个节点在不同的子拓扑中邻居节点也不相同。
[0058]
所述动态方程为:
[0059][0060]
其中,u
i
(t)表示智能体i在t时刻的控制输入,x
i
(t)表示智能体i的位置信息表示对x
i
(t)求导,v
i
(t)表示二阶智能体的速度信息,表示对v
i
(t)求导,表示所有智能体集合,表示一阶智能体集合,表示二阶智能体集合,且
[0061]
s6、切换子拓扑结构后,将每个智能体分组的状态信息分别与对应智能体分组期望的收敛状态值作比较,若每个智能体分组的状态信息达到各自期望的收敛状态值时,则系统达到分组一致;若存在至少一个智能体分组的状态信息未达到各自期望的收敛状态值,则重复上述步骤s2-s5对智能体的状态进行迭代更新,直到每个智能体分组的状态信息达到各自期望的收敛状态值时,异质多智能体系统达到分组一致。
[0062]
本发明中,当异质多智能体系统满足以下两个条件时,系统中所有的智能体达到牵制分组一致,系统的分组一致性保证了系统内不同分组的智能体收敛到不同的一致性状态值,相同分组中的的智能体收敛到相同的一致性状态值。
[0063]
条件一:系统内同组智能体的位置信息达到牵制期望的收敛状态值;
[0064]
条件二:二阶智能体的速度相同。
[0065]
智能体达到牵制分组一致的表达式如下所示:
[0066][0067]
其中,e[|*|2]表示*的均方,x
i
(t)代表第i个智能体的位置信息,σ
i
为智能体i所在的分组,x
σi
为智能体i所在分组的期望收敛状态值,v
i
(t)表示二阶智能体的速度信息,分别表示一阶智能体集合和二阶智能体集合,是表示所有智能体的集合,且
[0068]
本实施例考虑一个由m+n个智能体组成的多智能体系统,其中m个智能体为一阶智能体,其余n个智能体为二阶智能体。多智能体系统的关系拓扑可以用一个有向加权图g=(v,e,a)表示,每个智能体作为无向加权图g=(v,e,a)的一个节点,其中v={v1,v2,

,v
m+n
}中表示节点的集合,表示边的集合,a=[a
ij
]表示邻接矩阵,其中矩阵元素a
ij
表示智能体节点i到j的连接权重。若节点i与节点j之间存在连接,即e
ij
=(v
j
,v
i
),则a
ij
>0;若节点i与节点j之间无连接,则a
ij
=0。规定a
ij
=0即系统无自环,与节点i相连的节点为节点i的邻居节点,节点i的邻居节点用集合n
i
={v
j
∈v|(v
j
,v
i
)∈e}表示。系统节点的入度矩阵为其中节点v
i
入度表示为入度表示为系统
拓扑的拉普拉斯矩阵为其中l
ij
=-a
ij
,i≠j,l
ii
=∑
i≠j
a
ij

[0069]
为了确保本发明满足了异质多智能体系统的牵制分组一致性条件,下面对其进行证明,包括:
[0070]
定义智能体位置误差:其中x
i
(t)是第i个智能体的位置信息,是它所在分组的期望的收敛值。如果e
i
(t)趋近于0,即表示各个分组可以收敛到一致。
[0071]
定义误差矩阵:e
i
(t)=(e1(t)
t
,e2(t)
t
,、、、,e
m+n
(t)
t
)
t
[0072]
得到误差系统:
[0073][0074]
其中,对误差e
i
(t)求导,α为耦合系数,n
si
表示智能体i在同组内邻居智能体节点的集合,n
di
智能体i在不同组内邻居智能体节点的集合,是代表当前第σ(t)个拓扑拉普拉斯矩阵的元素,d
i
为牵制增益。
[0075]
定义矩阵
[0076]
其中,γ(t)表示系统拓扑关系的误差矩阵,为第一组中的一阶智能体的误差矩阵,为第一组中的二阶智能体的误差矩阵,为第一组中的二阶智能体的速度矩阵,为第二组中的一阶智能体的误差矩阵,为第二组中的二阶智能体的误差矩阵,为第二组中的二阶智能体的速度矩阵。
[0077]
根据面前的控制协议经过矩阵的基本运算,不难得出如下的矩阵关系:
[0078][0079][0080]
其中,对γ(t)求导,θ
σ(t)
是由误差系统推倒出来的误差关系矩阵,表示第一组和第二组中的一阶智能体的关系,表示第一组中一阶智能体和第二组中的
二阶智能体之间的关系,表示第一组中二阶智能体和第二组中的一阶智能体之间的关系,表示第一组中二阶智能体和第二组中的二阶智能体之间的关系。
[0081]
构造李雅普诺夫函数v(t):
[0082][0083][0084]
其中,v
i
(t)表示t时刻第i个系统拓扑的李雅普诺夫函数,s表示系统在收敛过程中能够出现的子拓扑个数,e[γ]表示求γ的期望,γ(t)
t
表示求γ(t)的转置,s表示系统在收敛过程中能够出现的子拓扑集合,表示求v(t)的导数,表示对v
i
(t)求导,π
ij
表示拓扑状态i到拓扑状态j转移速率,v
j
表示第j个拓扑的李雅普诺夫函数,θ
i
表示第i个拓扑的误差系统推倒出来的误差关系矩阵,θ
un
是所有子拓扑结构θ
σ(t)
的并集。
[0085]
根据m矩阵的性质,不难发现θ
un
是正定矩阵,即θ
un
>0,可以推出根据李雅普诺夫稳定性定理,可以得出系统最终会收敛一致。
[0086]
证明过程结束。
[0087]
为了验证提出的合作-竞争牵制二分组一致性算法的效果,运用matlab进行仿真验证。本实施例以图2为实验拓扑图,一个由8个节点组成的异构多智能体系统,系统节点由一阶节点和二阶节点组成,其中节点1、节点2、节点3和节点4为一阶节点,节点5、节点6、节点7、节点8为二阶节点。将系统中的所有智能体分为两组,第一组智能体包括节点1、节点2、节点7、节点8,第二组智能体包括节点3、节点4、节点5、节点6。系统在收敛过程中会出现3个不同的子拓扑,由于系统和每个分组都异质的,且子拓扑结构中含有孤立节点,因此,系统拓扑更一般化。
[0088]
关于系统中的参数值,选择α=1.1,β=0.7,γ=1.8,a
ij
=1,i≠j;随机生成8个智能体的初始位置状态x(0)=(8,-4,5.5,7,6,-5.5,2,-3)
t
和二阶智能体的初始速度状态v(0)=(2.9,3.5,4,1)
t
;设置第一组智能体的预期收敛状态值如果系统实现牵制分组一致性,则第一组智能体和第二组智能体分别收敛到5和-5。
[0089]
状态转移速率矩阵为:
[0090]
[0091]
在本说明书的描述中,所述一个节点表示一个智能体,一阶节点表示一阶智能体,二阶节点表示二阶智能体。
[0092]
仿真实验根据切换的时间步长来计算转移概率。为实现公平性,用一个等概率函数来选取0时刻的拓扑状态,然后根据转移速率矩阵和切换步长计算出的概率转移矩阵进行随机切换,来实现拓扑切换。
[0093]
从仿真结果可以得出,如图3所示展示了所有智能体的位置演化过程。牵制入度为零的2、7、8智能体,不难发现1、2、7、8组智能体位置趋于期望收敛值5。相反的,它的竞争组3、4、5、6智能体趋于相反的收敛值-5。实现了同组智能体趋于一致,不同组趋于相反的收敛值,符合实现了合作-竞争的内部关系。
[0094]
如图4所示展示了二阶智能体速度的演化过程。不难发现,二阶智能体5、6、7、8的速度趋于0,在每次的运行过程中,图示曲线略有细微不同,因为实验模拟的是markov切换拓扑,具有的随机过程的分析,但即便是这样,结果系统依然实现了一致性。
[0095]
经过仿真实验的验证,根据合作-竞争一致性控制协议,可以使系统中同组的智能体状态趋于一致,不同组的智能体状态趋于相反,在牵制2、7、8智能体的情况下,实现了markov切换拓扑下多智能体系统的二分组一致性。
[0096]
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-0nly memory,rom)或随机存储记忆体(random access memory,ram)等。
[0097]
以上所述仅是本申请的具体实施方式,应当指出,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1