在单向强连通通信网络中建立双随机通信矩阵的分布式方法与系统

文档序号:196633 发布日期:2021-11-02 浏览:30次 >En<

阅读说明:本技术 在单向强连通通信网络中建立双随机通信矩阵的分布式方法与系统 (Distributed method and system for establishing double random communication matrixes in unidirectional strong communication network ) 是由 李方圆 张起源 刘艳红 秦家虎 马麒超 霍本岩 杨磊 吴振龙 于 2021-07-30 设计创作,主要内容包括:本发明公开了一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法及系统,方法包括根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;根据通信网络的通信拓扑结构计算出通信网络中所有的环路;在通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到单向强连通通信网络的双随机通信矩阵。本发明只需要给出含有一个最大环的强连通的通信网络,不需要其他条件,就可以为通信网络建立双随机通信矩阵,这相比于其他使通信网络双随机化的方法适用性更好,使用范围更加广泛。(The invention discloses a distributed method and a distributed system for establishing a double random communication matrix in a one-way strong communication network, wherein the method comprises the steps of calculating a communication topological structure of the communication network according to a strong communication diagram of the one-way strong communication network; calculating all loops in the communication network according to the communication topological structure of the communication network; and calculating the maximum loop including all nodes in all loops in the communication network, summing and unitizing to obtain the double random communication matrix of the unidirectional strong communication network. The invention can establish the double random communication matrix for the communication network only by providing the strongly-connected communication network with the largest ring without other conditions, and compared with other methods for double randomization of the communication network, the method has better applicability and wider application range.)

在单向强连通通信网络中建立双随机通信矩阵的分布式方法 与系统

技术领域

本发明涉及多智能体系统技术领域,尤其涉及一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法与系统。

背景技术

多智能体系统的相关应用普遍依赖平均一致性算法来协调多个节点的行为,使用平均一致性算法的前提假设是系统中已经建立双随机通信矩阵。然而,在多智能体系统部署的最初阶段,双随机通信矩阵不是自然存在的,需要通过适当的节点协商机制,对接收数据和发送数据分别设置适当的权重,最终得到双随机通信矩阵。也就是说,在多智能体系统部署之初,在多智能体系统内部还没有建立很好的协商机制,很难对接收数据和发送数据本分别设置恰当的权重,因此很难得到双随机通信矩阵,所以,通过对接收数据和发送数据设置权重使通信网络双随机化的方法在实际应用中适用性较差。

发明内容

本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法与系统,有效解决了现有技术中通过对接收数据和发送数据设置权重使通信网络双随机化的方法在实际应用中适用性较差的问题。

为了实现本发明的上述目的,根据本发明的第一个方面,本发明提供了一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法,所述方法包括如下步骤:

S1,根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;

S2,根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路;

S3,在所述通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到所述单向强连通通信网络的双随机通信矩阵。

优选地,假设通信网络中每个节点具有唯一的标识符,记为{p,q};各节点的标识符之间具有能够比较大小的序关系;用(p,q)表示节点p到节点q的有向边,节点p处分别有发送变量Sp、接收变量Rp、本地变量Lp和暂存变量Pp

步骤S1包括:

S11,分别将节点p的发送变量Sp、接收变量Rp、本地变量Lp和暂存变量Pp初始化为Sp[0]、Rp[0]、Pp[0]、Lp[0],初始化公式如下:

其中,表示空集,←表示赋值运算;

S12,将节点p在第k步接收到的数据记为Rp[k],有

其中,若通信拓扑结构中具有有向边(p,q),则Tp,q为全集,否则Tp,q为空集;Np表示节点p的入度邻居集合,∩表示交集运算,∪表示并集运算;

S13,将节点p在第k步接收到的数据Rp[k]进行处理后记录到暂存变量Pp中得到Pp[k],处理公式如下:

其中,(β,α)表示集合Rp[k]中的任意元素;

S14,根据接收到的数据Rp[k]将节点p的本地变量更新为Lp[k],更新公式如下:

Lp[k]←Lp[k-1]∪Pp[k]

S15,将节点p在第k步发送的数据记为Sp[k],则

Sp[k]←Pp[k];

S16,若k<r,则跳转至步骤S12,否则执行步骤S2,其中,r为强连通图的半径。

优选地,步骤S2包括:

S21,根据本地变量Lp[r]建立通信拓扑结构的标识符集合I,其中,

I←{α|(β,α)∈Lp(r)}

设置矩阵D=(0)n×n为n×n维零矩阵,n为标识符集合I中元素的个数;

S22,基于排序算法将标识符集合I排序成列表C,则列表C的长度为n,从而建立映射关系f:C→{1,...,n},则有

f(Ci)=i

其中,Ci是列表C中的第i个元素;

S23,对节点Ci∈I,寻找环路O(Ci),该环路起点为节点Ci;记取列表表头的运算为H:C→I,则有

H([α,C′])=α

其中,C′为任意列表,给O(Ci)赋初值[C′],则有如下相等关系:

S24,若存在唯一(Cj,H(O(Ci)))∈Li(r),即节点H(O(Ci))处只有一个远离该节点的有向边,则

若存在(Cj,H(O(Ci)))∈Li(r)和(Cj′,H(O(Ci)))∈Li(r),且Cj≠Cj′,即节点H(O(Ci))至少有两个远离该节点的有向边,则分别记录环路如下:

S25,若Cj=Ci,且若有Cj′,则Cj′=Ci,即起点为Ci,终点也是Ci,则找到了以节点Ci为起点的所有环路O(Ci,...);否则,跳转至步骤S24。

优选地,步骤S3包括:

S31,建立环路的邻接矩阵B,有

其中,对任意的i,j∈{1,...,n},若有(Cj,Ci)∈O(Ci,...),则令Bi,j=1,否则令Bi,j=0;

S32,若矩阵B满秩,即rank(B)=n,则

D←D+B;

S33,若Ci≠Cn,则

Ci←Ci+1

跳转至步骤S23,否则执行步骤S34;

S34,通过求和及单位化计算得到双随机通信矩阵D,计算公式如下:

或者,

优选地,在步骤S1之前,所述方法还包括:

构建待处理的单向强连通通信网络的强连通图,并获取所述强连通图中每个节点的地址信息。

根据本发明的第二个方面,本发明还提供了一种在单向强连通通信网络中建立双随机通信矩阵的分布式系统,所述系统包括:

拓扑结构计算模块,用于根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;

环路计算模块,用于根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路;

双随机通信矩阵生成模块,用于在所述通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到所述单向强连通通信网络的双随机通信矩阵。

优选地,假设通信网络中每个节点具有唯一的标识符,记为{p,q};各节点的标识符之间具有能够比较大小的序关系;用(p,q)表示节点p到节点q的有向边,节点p处分别有发送变量Sp、接收变量Rp、本地变量Lp和暂存变量Pp

所述根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构包括:

S11,分别将节点p的发送变量Sp、接收变量Rp、本地变量Lp和暂存变量Pp初始化为Sp[0]、Rp[0]、Pp[0]、Lp[0],初始化公式如下:

其中,表示空集,←表示赋值运算;

S12,将节点p在第k步接收到的数据记为Rp[k],有

其中,若通信拓扑结构中具有有向边(p,q),则Tp,q为全集,否则Tp,q为空集;Np表示节点p的入度邻居集合,∩表示交集运算,∪表示并集运算;

S13,将节点p在第k步接收到的数据Rp[k]进行处理后记录到暂存变量Pp中得到Pp[k],处理公式如下:

其中,(β,α)表示集合Rp[k]中的任意元素;

S14,根据接收到的数据Rp[k]将节点p的本地变量更新为Lp[k],更新公式如下:

Lp[k]←Lp[k-1]∪Pp[k]

S15,将节点p在第k步发送的数据记为Sp[k],则

Sp[k]←Pp[k];

S16,若k<r,则跳转至步骤S12,否则根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路,其中,r为强连通图的半径。

优选地,所述根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路包括:

S21,根据本地变量Lp[r]建立通信拓扑结构的标识符集合I,其中,

I←{α|(β,α)∈Lp(r)}

设置矩阵D=(0)n×n为n×n维零矩阵,n为标识符集合I中元素的个数;

S22,基于排序算法将标识符集合I排序成列表C,则列表C的长度为n,从而建立映射关系f:C→{1,...,n},则有

f(Ci)=i

其中,Ci是列表C中的第i个元素;

S23,对节点Ci∈I,寻找环路O(Ci),该环路起点为节点Ci;记取列表表头的运算为H:C→I,则有

H([α,C′])=α

其中,C′为任意列表,给O(Ci)赋初值[C′],则有如下相等关系:

S24,若存在唯一(Cj,H(O(Ci)))∈Li(r),即节点H(O(Ci))处只有一个远离该节点的有向边,则

若存在(Cj,H(O(Ci)))∈Li(r)和(Cj′,H(O(Ci)))∈Li(r),且Cj≠Cj′,即节点H(O(Ci))至少有两个远离该节点的有向边,则分别记录环路如下:

S25,若Cj=Ci,且若有Cj′,则Cj′=Ci,即起点为Ci,终点也是Ci,则找到了以节点Ci为起点的所有环路O(Ci,...);否则,跳转至步骤S24。

优选地,所述在所述通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到所述单向强连通通信网络的双随机通信矩阵包括:

S31,建立环路的邻接矩阵B,有

其中,对任意的i,j∈{1,...,n},若有(Cj,Ci)∈O(Ci,...),则令Bi,j=1,否则令Bi,j=0;

S32,若矩阵B满秩,即rank(B)=n,则

D←D+B;

S33,若Ci≠Cn,则

Ci←Ci+1

跳转至步骤S23,否则执行步骤S34;

S34,通过求和及单位化计算得到双随机通信矩阵D,计算公式如下:

或者,

优选地,所述在单向强连通通信网络中建立双随机通信矩阵的分布式系统还包括:

强连通图构建模块,用于在根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构之前,构建待处理的单向强连通通信网络的强连通图,并获取所述强连通图中每个节点的地址信息

由以上方案可知,本发明提供了一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法及系统,方法包括根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路;在所述通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到所述单向强连通通信网络的双随机通信矩阵。本发明只需要给出含有一个最大环的强连通的通信网络,不需要其他条件,就可以为通信网络建立双随机通信矩阵,这相比于其他使通信网络双随机化的方法适用性更好,使用范围更加广泛。有效解决了现有技术中通过对接收数据和发送数据设置权重使通信网络双随机化的方法在实际应用中适用性较差的问题。由于单向强连通平衡通信网络和双向连通通信网络(也称无向通信/无向图)是一类特殊的单向强连通通信网络,因此本发明的方法与系统同样适用于在单向强连通平衡通信网络、双向连通通信网络中建立双随机通信矩阵。本发明可以应用于多智能体系统部署的初级阶段。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1是本发明一种优选实施方式在单向强连通通信网络中建立双随机通信矩阵的分布式方法的流程图;

图2是本发明一具体实例中在单向强连通通信网络中建立双随机通信矩阵的分布式方法的流程图;

图3是本发明一种优选实施方式在单向强连通通信网络中建立双随机通信矩阵的分布式系统的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。

术语解释:

多智能体系统:由多个自主个体组成的,通过个体间的相互信息通信和交互作用形成的具有一定整体功能的群体系统。

单向强连通通信网络:网络中表示各节点之间通信关系的拓扑图是单向并且强连通的通信网络。

单向强连通平衡通信网络:网络中表示各节点之间通信关系的拓扑图是单向、强连通并且平衡的通信网络。其中平衡是指各节点的出度与入度相等。

双向连通通信网络:网络中表示各节点之间通信关系的拓扑图是双向并且连通的通信网络(也称无向连通通信网络)。

双随机通信矩阵:通信拓扑图对应的邻接矩阵是双随机矩阵,即矩阵中各元素为不小于零的实数,并且各行各列求和均为1。

强连通图:在有向图中,若对于每一对顶点v1和v2,都存在一条从v1到v2和从v2到v1的路径,则称此图是强连通图。

通信拓扑结构:通信拓扑结构是指通信网络中表示各节点之间通信关系的拓扑图。

环路:拓扑图中首尾相连的路径。

最大环路:拓扑图的环路中包含节点最多的环路。

如图1所示,为本发明一种优选实施方式在单向强连通通信网络中建立双随机通信矩阵的分布式方法的流程图,所述方法可以包括如下步骤:

S101,根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;

在多智能体系统部署的最初阶段,双随机通信矩阵不是自然存在的,因此需要在单向强连通通信网络中建立双随机通信矩阵。首先,需要根据预先构建的待处理单向强连通通信网络的强连通图找出通信网络的通信拓扑结构,这是找出通信网络中环路的基础。具体可以是各个节点使用分布式方法通过迭代的方式寻找通信网络的通信拓扑结构。

S102,根据通信网络的通信拓扑结构计算出通信网络中所有的环路;

找出通信网络的通信拓扑结构之后,需要根据得到的通信拓扑结构找出通信网络中所有的环路。具体可以通过迭代的方式寻找通信网络中的所有环路。

S103,在通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到单向强连通通信网络的双随机通信矩阵。

最后,需要根据通信网络中的所有环路,在所有环路中找出包含所有节点的最大环路,并通过求和及单位化的方法根据最大环路计算得到单向强连通通信网络的双随机通信矩阵。

综上所述可知,本实施例提供了一种在单向强连通通信网络中建立双随机通信矩阵的分布式方法,首先根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;然后根据所述通信网络的通信拓扑结构计算出所述通信网络中所有的环路;最后在所述通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,即可得到所述单向强连通通信网络的双随机通信矩阵。本发明只需要给出含有一个最大环的强连通的通信网络,不需要其他条件,就可以为通信网络建立双随机通信矩阵,这相比于其他使通信网络双随机化的方法适用性更好,使用范围更加广泛。

在本发明的其他一些实施例中,在上述实施例的基础上,所述方法还可以包括如下步骤:

在步骤S101之前,构建待处理的单向强连通通信网络的强连通图,并获取所述强连通图中每个节点的地址信息。

下面以具体实例对本发明的在单向强连通通信网络中建立双随机通信矩阵的分布式方法进行详细说明:

如图2所示,为本发明一具体实例中在单向强连通通信网络中建立双随机通信矩阵的分布式方法的流程图。假设通信网络中每个节点具有唯一的标识符,记为{p,q},节点的标识符具体可以是MAC地址或者IP地址等能够表征节点身份唯一性的参数;各节点的标识符之间具有严格的序关系,即各节点的标识符能够比较大小;用(p,q)表示节点p到节点q的有向边,节点p处分别有发送变量Sp(Send)、接收变量Rp(Receive)、本地变量Lp(Local)和暂存变量Pp(Provisional)。建立双随机通信矩阵的具体步骤如下:

步骤1,分别将节点p的发送变量Sp、接收变量Rp、本地变量Lp和暂存变量Pp初始化为Sp[0]、Rp[0]、Pp[0]、Lp[0],初始化公式如下:

其中,表示空集,←表示赋值运算;

步骤2,将节点p在第k步接收到的数据记为Rp[k],有

Rp[k]←∪q∈Nq(Tp,q∩Sq[k])

其中,若通信拓扑结构中具有有向边(p,q),则Tp,q为全集,否则Tp,q为空集;Np表示节点p的入度邻居集合,∩表示交集运算,∪表示并集运算;

步骤3,将节点p在第k步接收到的数据Rp[k]进行处理后记录到暂存变量Pp中得到Pp[k],处理公式如下:

其中,(β,α)表示集合Rp[k]中的任意元素;

步骤4,根据接收到的数据Rp[k]将节点p的本地变量更新为Lp[k],更新公式如下:

Lp[k]←Lp[k-1]∪Pp[k]

步骤5,将节点p在第k步发送的数据记为Sp[k],则

Sp[k]←Pp[k];

步骤6,若k<r,则跳转至步骤S12,否则执行步骤7,其中,r为强连通图的半径;

步骤7,根据本地变量Lp[r]建立通信拓扑结构的标识符集合I,其中,

I←{α|(β,α)∈Lp(r)}

设置矩阵D=(0)n×n为n×n维零矩阵,n为标识符集合I中元素的个数;

步骤8,基于排序算法将标识符集合I排序成列表C,则列表C的长度为n,从而建立映射关系f:C→{1,...,n},则有

f(Ci)=i

其中,Ci是列表C中的第i个元素;

步骤9,对节点Ci∈I,寻找环路O(Ci),该环路起点为节点Ci;记取列表表头的运算为H:C→I,则有

H([α,C′])=α

其中,C′为任意列表,给O(Ci)赋初值[C′],则有如下相等关系:

步骤10,若存在唯一(Cj,H(O(Ci)))∈Li(r),即节点H(O(Ci))处只有一个远离该节点的有向边,则

若存在(Cj,H(O(Ci)))∈Li(r)和(Cj′,H(O(Ci)))∈Li(r),且Cj≠Cj′,即节点H(O(Ci))至少有两个远离该节点的有向边,则分别记录环路如下:

步骤11,若Cj=Ci,且若有Cj′,则Cj′=Ci,即起点为Ci,终点也是Ci,则找到了以节点Ci为起点的所有环路O(Ci,...);否则,跳转至步骤10;

步骤12,建立环路的邻接矩阵B,有

其中,对任意的i,j∈{1,...,n},若有(Cj,Ci)∈O(Ci,...),则令Bi,j=1,否则令Bi,j=0;

步骤13,若矩阵B满秩,即rank(B)=n,则

D←D+B;

步骤14,若Ci≠Cn,则

Ci←Ci+1

跳转至步骤9,否则执行步骤15;

步骤15,通过求和及单位化计算得到双随机通信矩阵D,计算公式如下:

或者,

如图3所示,为本发明一种优选实施方式在单向强连通通信网络中建立双随机通信矩阵的分布式系统的结构示意图,所述系统可以包括:

拓扑结构计算模块201,用于根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;

在多智能体系统部署的最初阶段,双随机通信矩阵不是自然存在的,因此需要在单向强连通通信网络中建立双随机通信矩阵。首先,需要根据预先构建的待处理单向强连通通信网络的强连通图找出通信网络的通信拓扑结构,这是找出通信网络中环路的基础。具体可以是各个节点使用分布式方法通过迭代的方式寻找通信网络的通信拓扑结构。

环路计算模块202,用于根据通信网络的通信拓扑结构计算出通信网络中所有的环路;

找出通信网络的通信拓扑结构之后,需要根据得到的通信拓扑结构找出通信网络中所有的环路。具体可以通过迭代的方式寻找通信网络中的所有环路。

双随机通信矩阵生成模块203,用于在通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,得到单向强连通通信网络的双随机通信矩阵。

最后,需要根据通信网络中的所有环路,在所有环路中找出包含所有节点的最大环路,并通过求和及单位化的方法根据最大环路计算得到单向强连通通信网络的双随机通信矩阵。

综上所述可知,本实施例提供了一种在单向强连通通信网络中建立双随机通信矩阵的分布式系统,通过拓扑结构计算模块根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构;通过环路计算模块根据通信网络的通信拓扑结构计算出通信网络中所有的环路;通过双随机通信矩阵生成模块在通信网络中的所有环路中计算出包含所有节点的最大环路并求和及单位化,即可得到单向强连通通信网络的双随机通信矩阵。本发明只需要给出含有一个最大环的强连通的通信网络,不需要其他条件,就可以为通信网络建立双随机通信矩阵,这相比于其他使通信网络双随机化的方法适用性更好,使用范围更加广泛。

在本发明的其他一些实施例中,在上述实施例的基础上,所述系统还可以包括:

强连通图构建模块,用于在根据单向强连通通信网络的强连通图计算出通信网络的通信拓扑结构之前,构建待处理的单向强连通通信网络的强连通图,并获取强连通图中每个节点的地址信息。

本实施例公开的在单向强连通通信网络中建立双随机通信矩阵的分布式系统的工作原理,与上述在单向强连通通信网络中建立双随机通信矩阵的分布式方法的工作原理相同,在此不再赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

19页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于三角剖分优化的地对空无空洞协同覆盖方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!