[Rahmani, Amirreza and Ji, Meng and Mesbahi, Mehran and Egerstedt, Magnus. Controllability of Multi-Agent Systems from a Graph-Theoretic Perspective. SIAM Journal on Control and Optimization[J]. 48(1):162-186, 2009.]

文章目录

  • Abstract
  • 1. Introduction
  • 2. Notation and preliminaries
    • 2.1 Graphs and their algebraic representation
    • 2.2 Agreement danamics
  • 3. Controlled agreement
    • Definition 3.1
    • Remark 3.2
    • Proposition 3.3
    • Proposition 3.4
  • 4. Reachability
  • 5. Controllability analysis of single-leader networks
      • Proposition 5.1
      • Corollary 5.2
      • Proposition 5.3
      • Proposition 5.4
      • Proposition 5.5
    • 5.1 Controllability and graph symmetry
      • Definition 5.6
      • Definition 5.7
      • Proposition 5.8
      • Proposition 5.9
    • 5.2 Leader symmetry and graph automorphism
      • Definition 5.10
      • Proposition 5.11
    • 5.3 Controllability of special graphs
      • Proposition 5.15
      • Proposition 5.16
      • Proposition 5.17
  • 6. Rate of convergence
    • Proposition 6.1
    • Proposition 6.2
  • 7. Controllability of multiple-leader networks
    • 7.1 Interlacing and equitable partitions
      • Definition 7.1
      • Lemma 7.3
      • Lemma 7.4
  • 8. Simulation and discussions.
    • 8.1 Example 1(single leader with symmetric followers)
  • Appendix
    • A.1 Incidence matrix
    • A.2 Matlab

Abstract

在这项工作中,我们考虑多智能体网络的可控一致性协议问题,其中一组智能体扮演领航者角色,而其余的智能体执行局部的、类一致性的协议。我们的目的是找出图论概念对这类系统理论性质的反映。特别地,我们展示了以自同构群表征的网络的对称结构如何直接关系到多智能体系统的能控性。此外,我们还引入了网络均匀分割(network equitable partitions)的方法,通过这种方法可以将这种可控性描述扩展到多个领航者情况。

1. Introduction

在目前的工作中,我们进一步探讨这一图论观点在多智能体系统可控性方面的分支。首先,我们研究了单领航者网络的图拉普拉斯特征向量和图自同构群的作用。然后,我们将这些结果通过图的均等分割扩展到多领航者。

本文从图的一般动力学的常见形式入手。接下来,我们引入变换,给定领航者节点的位置,产生相应的可控线性时不变系统。然后通过代数图论的工具来研究单领航者系统的能控性。在这里,我们用图自同构的形式给出了系统不可控性的一个充分的图条件。此外,我们还引入了网络均匀分割(network equitable partitions)的方法,通过这种方法可以将这种可控性描述扩展到多领航者情况。

2. Notation and preliminaries

2.1 Graphs and their algebraic representation

这一节主要介绍了图和代数表述的知识。包括邻接矩阵 (adjacency matrix) 和关联矩阵 (incidence matrix) 两种的定义。并介绍了拉氏矩阵 (Laplacian matrix) 分别于关联矩阵和邻接矩阵的关系。最后,简介了费德勒特征值 (Fiedler eigenvalue)。

给出了一种拉氏矩阵关于关联矩阵的计算方法
L(G):=B(G)BT(1)\mathcal{L}(\mathcal{G}) := \mathcal{B}(\mathcal{G}) \mathcal{B}^\text{T} \tag{1}L(G):=B(G)BT(1)

关于关联矩阵(incidence matrix)的解释参考文章末尾附录 A.1。

B=[e1e2e3e4e5e6e7e8v1111v2111v3111v4111v511v611]B = \left[\begin{matrix} & \red{e_1} & \red{e_2} & \red{e_3} & \red{e_4} & \red{e_5} & \red{e_6} & \red{e_7} & \red{e_8} \\ \red{v_1} & 1 & 1 & & & 1 \\ \red{v_2} & 1 & & 1 & 1 \\ \red{v_3} & & & & & 1 & 1 & 1 \\ \red{v_4} & & & 1 & & & 1 & & 1 \\ \red{v_5} & & 1 & & & & & 1 \\ \red{v_6} & & & & 1 & & & & 1 \end{matrix}\right]B=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡​v1​v2​v3​v4​v5​v6​​e1​11​e2​11​e3​11​e4​11​e5​11​e6​11​e7​11​e8​11​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤​

2.2 Agreement danamics

这部分介绍了多智能体系统的一致性问题。以一阶系统为例,其控制输入全部由相邻节点的状态决定。当一阶系统的状态是多个维度时,例如在二维平面运动时,智能体的状态至少有 X 轴和 Y 轴两个维度的状态,系统可通过克罗尼克积进行维度扩展,L:=L⊗Id\mathbb{L} := \mathcal{L} \otimes I_dL:=L⊗Id​。但是,如果系统状态在维度之间是解偶的 (decoupled),那么可以通过研究其中一个维度状态,来反映系统的全部维度状态。

ui=−∑i~j(xi(t)−xj(t))(2)u_i = -\sum_{i ~ j} (~~x_i(t) - x_j(t)~~) \tag{2}ui​=−i~j∑​(  xi​(t)−xj​(t)  )(2)

关于公式(2)的解释,请参考【控制】多智体一致性基础知识

协议(2)写成矩阵形式便为公式(3)
x˙(t)=−L(G)x(t)(3)\dot{x}(t) = -\mathbb{L}(\mathcal{G}) x(t) \tag{3}x˙(t)=−L(G)x(t)(3)

尽管我们的结果可以直接扩展到公式(3)的情况,但是接下来我们将重点关注系统(4)来获得多智能体系统的状态
x˙(t)=−L(G)x(t)(4)\dot{x}(t) = -\mathcal{L}(\mathcal{G}) x(t) \tag{4}x˙(t)=−L(G)x(t)(4)

也就是说,暂时不考虑多个维度的状态,因为可以无缝扩展。

3. Controlled agreement

对关联矩阵做线性变化,将跟随者和领航者重新排列
B(G)=[Bf(G)Bl(G)](5)\mathcal{B}(\mathcal{G}) = \left[\begin{matrix} \mathcal{B}_f(\mathcal{G}) \\ \mathcal{B}_l(\mathcal{G}) \\ \end{matrix}\right] \tag{5}B(G)=[Bf​(G)Bl​(G)​](5)

B(G)=[Bf(G)Bl(G)]=[e1e2e3e4e5e6e7e8v1111v2111v3111v4111v511v611]\mathcal{B}(\mathcal{G}) = \left[\begin{matrix} \mathcal{B}_f(\mathcal{G}) \\ \mathcal{B}_l(\mathcal{G}) \\ \end{matrix}\right] =\left[\begin{matrix} & \red{e_1} & \red{e_2} & \red{e_3} & \red{e_4} & \red{e_5} & \red{e_6} & \red{e_7} & \red{e_8} \\ \red{v_1} & 1 & 1 & & & 1 \\ \red{v_2} & 1 & & 1 & 1 \\ \red{v_3} & & & & & 1 & 1 & 1 \\ \red{v_4} & & & 1 & & & 1 & & 1 \\ \red{v_5} & & 1 & & & & & 1 \\ \red{v_6} & & & & 1 & & & & 1 \end{matrix}\right]B(G)=[Bf​(G)Bl​(G)​]=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡​v1​v2​v3​v4​v5​v6​​e1​11​e2​11​e3​11​e4​11​e5​11​e6​11​e7​11​e8​11​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤​

整理一下有
B(G)=[Bf(G)Bl(G)]=[110010001011000000001110001001010100001000010001]\mathcal{B}(\mathcal{G}) = \left[\begin{matrix} \mathcal{B}_f(\mathcal{G}) \\ \mathcal{B}_l(\mathcal{G}) \\ \end{matrix}\right] =\left[\begin{matrix} 1 & 1 & 0 & 0 & 1 & 0 & 0 & 0 \\ 1 & 0 & 1 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 \\ 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 \\\\ 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 \end{matrix}\right]B(G)=[Bf​(G)Bl​(G)​]=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡​110000​100010​010100​010001​101000​001100​001010​000101​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤​

通过之前的定义和表示,文章中给出了如下关系式
L(G)=[Lf(G)lfl(G)lfl(G)TLl(G)](6)\begin{aligned} \mathcal{L}(\mathcal{G}) &= \left[\begin{matrix} \mathcal{L}_f(\mathcal{G}) & l_{fl}(\mathcal{G}) \\ l_{fl}(\mathcal{G})^T & \mathcal{L}_l(\mathcal{G}) \\ \end{matrix}\right] \end{aligned}\tag{6}L(G)​=[Lf​(G)lfl​(G)T​lfl​(G)Ll​(G)​]​(6)

用跟随者和领航者的关联矩阵,表示跟随者和领航者的拉氏矩阵,有如下关系
L(G)=[BfBfTBlBfTBfBlTBlBlT]\begin{aligned} \mathcal{L}(\mathcal{G}) &=\left[\begin{matrix} \mathcal{B}_f \mathcal{B}^T_f && \mathcal{B}_l \mathcal{B}^T_f \\\\ \mathcal{B}_f \mathcal{B}^T_l && \mathcal{B}_l \mathcal{B}^T_l \\ \end{matrix}\right] \end{aligned}L(G)​=⎣⎡​Bf​BfT​Bf​BlT​​​Bl​BfT​Bl​BlT​​⎦⎤​​

有了以上的分析后,我们跟随者的系统模型就可以转换成如下的形式
x˙f(t)=−Lfxf(t)−lflu(t)(7)\dot{x}_f(t) = -\mathcal{L}_f ~ x_f(t) - l_{fl} ~ u(t) \tag{7}x˙f​(t)=−Lf​ xf​(t)−lfl​ u(t)(7)

Definition 3.1

令 lll 是图的一个 leader 节点,即 l∈Vl(G)l \in \mathcal{V}_l(\mathcal{G})l∈Vl​(G)。指示向量 (indicator vector) δl\red{\delta_l}δl​ 定义为
δl:Vf→{0,1}nf\delta_l : \mathcal{V}_f \rightarrow \{0, 1\}^{n_f}δl​:Vf​→{0,1}nf​

δl(i)≔{1ifi~l,0otherwise\delta_l(i) \coloneqq \left\{\begin{aligned} &1 ~~~ if~ i ~ l, \\ &0 ~~~ otherwise \end{aligned}\right.δl​(i):={​1   if i~l,0   otherwise​

我们注意到 −lfl-l_{fl}−lfl​ 矩阵的每一行都是一个指示向量,i.e.,lfl=[−δ5,δ6]=[−100−10−1−10]l_{fl} = [-\delta_5, \delta_6]=\left[\begin{matrix}-1 && 0 \\ 0 && -1 \\ 0 && -1 \\ -1 && 0 \end{matrix}\right]lfl​=[−δ5​,δ6​]=⎣⎢⎢⎡​−100−1​​0−1−10​⎦⎥⎥⎤​

dil\red{d_{il}}dil​,其中 i∈Vfi \in \mathcal{V}_fi∈Vf​,表示与follower iii 相邻的 leader 的数量。
同时定义 follower-leader degree matrix 为
Dfl(G)≔Diag([dil]i=1nf)(8)\mathcal{D}_{fl} (\mathcal{G}) \coloneqq \text{Diag}([d_{il}]_{i=1}^{n_f}) \tag{8}Dfl​(G):=Diag([dil​]i=1nf​​)(8)

有以下关系
Lf(G)=L(Gf)+Dfl(G)(9)\mathcal{L}_f(\mathcal{G}) = \mathcal{L}(\mathcal{G}_f) +\mathcal{D}_{fl}(\mathcal{G}) \tag{9}Lf​(G)=L(Gf​)+Dfl​(G)(9)

L(Gf)\mathcal{L}(\mathcal{G}_f)L(Gf​) 表示跟随者图 Gf\mathcal{G}_fGf​ 的拉氏矩阵。

Remark 3.2

强调了 Lf(G)\mathcal{L}_f(\mathcal{G})Lf​(G) 与 L(Gf)\mathcal{L}(\mathcal{G}_f)L(Gf​) 的不同。Lf(G)\mathcal{L}_f(\mathcal{G})Lf​(G) 表示原始拉氏矩阵 L(G)\mathcal{L}(\mathcal{G})L(G) 关于跟随者的主对角子矩阵。L(Gf)\mathcal{L}(\mathcal{G}_f)L(Gf​) 是跟随者子图 Gf\mathcal{G}_fGf​ 的拉氏矩阵。为了简化,我们将 Lf(G)→Lf\mathcal{L}_f(\mathcal{G}) \rightarrow \mathcal{L}_fLf​(G)→Lf​,lfl(G)→lfll_{fl}(\mathcal{G}) \rightarrow l_{fl}lfl​(G)→lfl​。

由于拉氏矩阵具有行和为 0 的性质,因此 Lf(G)\mathcal{L}_f(\mathcal{G})Lf​(G) 和 −lfl(G)-l_{fl}(\mathcal{G})−lfl​(G) 的行和都等于 dild_{il}dil​, i.e.,
Lf(G)1nf=Dfl(G)1nf=−lfl(G)1nl(10)\mathcal{L}_f(\mathcal{G})~ 1_{n_f} = \mathcal{D}_{fl}(\mathcal{G}) ~ 1_{n_f} = -l_{fl}(\mathcal{G}) ~ 1_{nl} \tag{10}Lf​(G) 1nf​​=Dfl​(G) 1nf​​=−lfl​(G) 1nl​(10)

如果只有一个 leader,那么根据 indexing convention,leader 的编号就是智能体的数量,Vl={n}\mathcal{V}_l = \{n\}Vl​={n}。在这种情况下,我们有一些特殊的关系等式 lfl(G)=−δnl_{fl}(\mathcal{G}) = -\delta_nlfl​(G)=−δn​ 和 Dfl(G)=Diag(δn)\mathcal{D}_{fl}(\mathcal{G})=\text{Diag}(\delta_n)Dfl​(G)=Diag(δn​)。

Proposition 3.3

如果有一个节点被选做为 leader,原始拉氏矩阵 L(G)\mathcal{L}(\mathcal{G})L(G) 与 follower 拉氏矩阵 L(Gf)\mathcal{L}(\mathcal{G}_f)L(Gf​) 有如下关系
L(G)=[L(Gf)+Dfl(G)−δnδnTdn](11)\mathcal{L}(\mathcal{G}) = \left[\begin{matrix} \mathcal{L}(\mathcal{G}_f) + \mathcal{D}_{fl}(\mathcal{G}) & -\delta_n \\ \delta^T_n & d_n \end{matrix}\right] \tag{11}L(G)=[L(Gf​)+Dfl​(G)δnT​​−δn​dn​​](11)

dnd_ndn​ 表示智能体 nnn 的度。

另一个构造系统矩阵的途径是来自于 original graph
Lf=PfTL(G)Pflfl=PfTL(G)Tfl(12)\begin{aligned} \mathcal{L}_f = P^T_f ~ \mathcal{L}(\mathcal{G}) ~ P_f \\ l_{fl} = P^T_f ~ \mathcal{L}(\mathcal{G}) ~ T_{fl} \end{aligned}\tag{12}Lf​=PfT​ L(G) Pf​lfl​=PfT​ L(G) Tfl​​(12)

这里 PfP_fPf​ 和 TflT_{fl}Tfl​ 比较简单,参考文献即可。

Proposition 3.4

如果一个节点被选择为 leader,
Tfl=(In−P~)1nlfl=−Lf1nf\begin{aligned} T_{fl} = (I_n - \tilde{P}) ~ 1_n \\ l_{fl} = -\mathcal{L}_f ~ 1_{nf} \end{aligned}Tfl​=(In​−P~) 1n​lfl​=−Lf​ 1nf​​

4. Reachability

5. Controllability analysis of single-leader networks

首先通过符号替换,将
x˙f(t)=−Lfxf(t)−lflu(t)(7)\dot{x}_f(t) = -\mathcal{L}_f ~ x_f(t) - l_{fl} ~ u(t) \tag{7}x˙f​(t)=−Lf​ xf​(t)−lfl​ u(t)(7)

转换为状态空间表达式 (state-space) 的形式
x˙(t)=Ax(t)+Bu(t)(17)\dot{x}(t) = A ~ x(t) + B ~ u(t) \tag{17}x˙(t)=A x(t)+B u(t)(17)

系统(17)是不可控的 iff 系统矩阵 AAA 存在一个左特征值 v\mathcal{v}v,i.e.,对一些 λ\lambdaλ 有 vTA=λvT\mathcal{v}^T A = \lambda \mathcal{v}^TvTA=λvT,满足于
vTB=0\mathcal{v}^T B = 0vTB=0

由于 AAA 是对称矩阵,所以左右特征向量是相同的。因此,系统(17)可控的充分必要条件是 AAA 的特征向量不应该同时正交于 BBB 的所有列向量。此外,为了进一步研究可控性,将构造系统的可控性矩阵如下
C=[BAB⋯Anf−1B](18)\mathcal{C} = \left[\begin{matrix} B & AB & \cdots & A^{n_f -1} B \end{matrix}\right] \tag{18}C=[B​AB​⋯​Anf​−1B​](18)

由于 AAA 是对称的,AAA 可以分解为 UΛUU \Lambda UUΛU 的形式,Λ\LambdaΛ 是AAA 的特征值对角矩阵;另一方面,UUU 是由 AAA 的成对正交单位特征向量组成的酉矩阵。由于 B=UUTBB= UU^TBB=UUTB,通过因式分解来自(18)中的左边矩阵 UUU,可控矩阵就有了这样的形式
C=U[UTBΛUTB⋯Λnf−1UTB](19)\mathcal{C} = U \left[\begin{matrix} U^T B & \Lambda U^T B & \cdots & \Lambda^{n_f -1} U^T B \end{matrix}\right] \tag{19}C=U[UTB​ΛUTB​⋯​Λnf​−1UTB​](19)

在这种情况下,UUU 是满秩的,它的存在并不改变(19)中的矩阵乘积的秩。如果 UUU 的其中一列垂直于 BBB 的所有列,那么 C\mathcal{C}C 将有一行等于零,因此矩阵 C\mathcal{C}C 是缺秩的[36]。另一方面,当存在一个 leader 时,如果 AAA 的任意两个特征值是相等的,那么 C\mathcal{C}C 将有两个线性相关的行,可控矩阵再一次变得非满秩。假设 v1,v2\mathcal{v}_1, v_2v1​,v2​ 是关于相等特征值的两个特征向量,并且两个都不正交于 BBB。那么 v=v1+cv2v = v_1 + c v_2v=v1​+cv2​ 同样也是针对于 AAA 的这个特征值的特征向量。这允许我们选择 c=−v1TB/v2TBc = -v_1^T B / v_2^T Bc=−v1T​B/v2T​B,这使得 vTB=0v^T B = 0vTB=0。换句话说,我们能够找到一个正交于 BBB 的特征向量。因此,我们可以得到如下观察结果。

Proposition 5.1

考虑一个 leader-follower 网络(17)。这个系统是可控的 iff 不是所有 AAA 的特征向量都同时正交于 BBB 的所有列。此外,如果 AAA 没有不同的特征值,那么(17)也是不可控的。

命题5.1也适用于有多个 leader 的情况,这意味着在任何有限的时间间隔内,任何的动力学部分都可以独立地从初始状态引导到任意的最终状态,仅仅基于它们与邻居的局部交互。这个可控性结果同样可以在假设 leader 节点状态是非限制的情况下得到验证。

Corollary 5.2

系统(17)只有一个 leader 时,系统可控等价于 AAA 特征向量不正交于 111 向量。

Proposition 5.3

如果系统(17)是不可控的,那么存在一个 AAA 的特征向量 vvv 满足 ∑i~nv(i)=0\sum_{i~n} v(i) = 0∑i~n​v(i)=0。

Proposition 5.4

假设系统(17)是不可控的。那么存在一个 L(G)\mathcal{L}(\mathcal{G})L(G) 的特征向量,这个特征向量有一个 0 分量,且是关于 leader 的索引。

Proposition 5.5

假设所有 L(G)\mathcal{L}(\mathcal{G})L(G) 的特征向量都没有 0 分量。那么系统(7)无论选择哪一个 leader 都是可控的。

5.1 Controllability and graph symmetry

内部交互系统的可控性不仅依赖于内部交互信息的几何形状,还依赖于 leader 在系统关系拓扑中的位置。这一部分,我们研究可控性与网络图属性之间的关系。

Definition 5.6

定义一个置换矩阵,在每一行和列有一个非零元素。

Definition 5.7

系统(17)是锚对称的

Proposition 5.8

如果系统(17)是 leader 对称的,那么不可控。

命题5.8表明了 leader 对称是系统不可控的一个充分条件。这对研究 leader 不对称是否会产生一个可控系统具有指导意义。

Proposition 5.9

leader 对称不是一个系统不可控的充分条件。也就是说,系统不可控,并不一定表明系统是 leader 对称的。

5.2 Leader symmetry and graph automorphism

Definition 5.10

自同构 automorphism

在图论中,图自同构(graph automorphism)是保持自身的顶点与边的连接关系的对称。

正式地说,图 G=(V,E)G=(V,E)G=(V,E) 的自同构是顶点集的置换 σ\sigmaσ ,使得顶点对 (v1,v2)(v_1, v_2)(v1​,v2​) 组成一条边当且仅当 (σ(v1),σ(v2))(\sigma(v_1), \sigma(v_2))(σ(v1​),σ(v2​)) 也组成一条边。也就是说,σ\sigmaσ 是 GGG 到自身的图同构。自同构的这个定义对有向图和无向图都适用。两个自同构的复合仍是自同构,并且给定一个图,其所有自同构的集合在复合运算下构成群,称为这个图的自同构群。反过来,根据Frucht定理,所有群都可以表示成连通图的自同构群。
图自同构(graph automorphism)

Proposition 5.11

5.3 Controllability of special graphs

Proposition 5.15

一个环图,只有一个 leader 的话,永远不可控。

Proposition 5.16

一个路径图当所有 leader 节点的选择都是偶数阶时时可控的。

Proposition 5.17

一个单 leader 的路径图 iff 是 leader 对称时,路径图是可控的。

6. Rate of convergence

Proposition 6.1

可控系统(17)可以任意快的达到一致。

Proposition 6.2

当 leader 传递一个恒定信号时,系统(16)收敛速率位于 μ2(Lr(G))\mu_2(\mathcal{L}_r(\mathcal{G}))μ2​(Lr​(G)) 和 λ2(L(G))\lambda_2(\mathcal{L}(\mathcal{G}))λ2​(L(G)) 之间。

7. Controllability of multiple-leader networks

为了研究多重 leader 网络的可控性,引入了两个新的图论工具,包括公平分割(equitable partitions)和交错理论(interlacing theory)。

7.1 Interlacing and equitable partitions

Definition 7.1

均等分割(equitable)。对所有节点进行一个 rrr 等分,这个等分方案用 π\piπ 表示,分出来的元胞(cell)表示为 C1,C2,⋯,CrC_1, C_2, \cdots, C_rC1​,C2​,⋯,Cr​,当所有 CjC_jCj​ 中的节点,均在其余的元胞 CiC_iCi​ 中有相同邻居节点,那么就是均等分割的。同时,用 r=∣π∣r = |\pi|r=∣π∣ 来表示这个分割方案 π\piπ 的势(cardinality)。

用 bijb_{ij}bij​ 表示 CiC_iCi​ 中的节点在 CjC_jCj​ 中邻居的数量。图 G\mathcal{G}G 针对分割方案 π\piπ 的商(quotient)表示为 G/π\mathcal{G}/\piG/π。一个明显的一般分割就是 nnn 分割n−partitionsn-partitionsn−partitions,π={{1},{2},⋯,{n}}\pi= \{\{1\}, \{2\}, \cdots, \{n\} \}π={{1},{2},⋯,{n}}。如果一个均等分割中至少有一个元胞中是超过了一个节点,那么我们称它为非一般均等分割(NEP,nontrivial equitable partition),并且给出分割商邻接矩阵为
A(G/π)ij=bij\mathcal{A}(\mathcal{G}/ \pi)_{ij} = b_{ij}A(G/π)ij​=bij​

如下图所示的例子而言,分割方案为 π1\pi_1π1​,均等分割成了两部分 {C11,C21}\{C_1^1, C_2^1\}{C11​,C21​},其中 C11C_1^1C11​ 中的节点为 {1,2,3,4,5}\{1, 2, 3, 4, 5\}{1,2,3,4,5},C21C_2^1C21​ 中的节点为 {6,7,8,9,10}\{6, 7, 8, 9, 10\}{6,7,8,9,10}。

通过观察上图可知,C11C_1^1C11​ 中的任一个节点都与 C21C_2^1C21​ 中的节点连接了 1 条线,也就是都有且仅有 1 个邻居,C21C_2^1C21​ 相对于 C11C_1^1C11​ 同理,i.e.,bij=1b_{ij} = 1bij​=1。而在 C11C_1^1C11​ 和 C21C_2^1C21​ 内部,任一个节点都有 2 个邻居节点,i.e.,bii=2b_{ii} = 2bii​=2。通过以上分析,即可得到此种分割方案的邻接矩阵为
A(G/π1)ij=[2112]\mathcal{A}(\mathcal{G}/ \pi_1)_{ij} = \left[\begin{matrix} 2 & 1 \\ 1 & 2 \\ \end{matrix}\right]A(G/π1​)ij​=[21​12​]

接下来看第二种分割方案,这是一种等距离分割。我所理解的就是提前给出了一个分割元胞 C1C_1C1​,之后基于给定的元胞来找寻距离为 1 的节点组成第二个元胞,也就是节点 {5,6,2}\{5, 6, 2\}{5,6,2} 组成 C2C_2C2​,之后再找距离为 2 的节点组成第三个元胞直到全部节点都包含进来,在本图中三个元胞即可全部包含,因此也就等距离分割成了三个元胞。另外,当遇见多路径可达到时,取最短路径。例如从节点 111 到 444 时,可以通过 1→5→41 \rightarrow 5 \rightarrow 41→5→4,也可以通过 1→6→9→41 \rightarrow 6 \rightarrow 9 \rightarrow 41→6→9→4,但是最短路径为 2,因此取第一种方式。

Lemma 7.3

令 PPP 是一个分割方案的特征矩阵,用符号 A^\hat{\mathcal{A}}A^ 表示 A(G/π)\mathcal{A}(\mathcal{G} / \pi)A(G/π)。那么有 AP=PA^\mathcal{A} P = P \hat{\mathcal{A}}AP=PA^ 和 A^=P+AP\hat{\mathcal{A}} = P^+ \mathcal{A} PA^=P+AP,其中 P+=(PTP)−1PTP^+ = (P^TP)^{-1} P^TP+=(PTP)−1PT 是矩阵 PPP 的伪逆(pseudo-inverse)。

P = [1  0  0  00  1  0  00  1  0  00  0  1  00  0  0  1];
A = [0  1  1  0  01  0  0  1  01  0  0  1  00  1  1  0  00  0  0  1  0];
AHat = [0  2  0  01  0  1  00  2  0  10  0  1  0];
A*P
P*AHat
ans =0     2     0     01     0     1     01     0     1     00     2     0     00     0     1     0ans =0     2     0     01     0     1     01     0     1     00     2     0     10     0     1     0
PPos = inv(P' * P) * P'
PPos =1.0000         0         0         0         00    0.5000    0.5000         0         00         0         0    1.0000         00         0         0         0    1.0000
PPos * A * P
ans =0     2     0     01     0     1     00     2     0     00     0     1     0

通过以上 matlab 计算,可以验证引理 7.3 的正确性。

Lemma 7.4

8. Simulation and discussions.

8.1 Example 1(single leader with symmetric followers)

% Controllability of Multi-Agent Systems from a Graph-Theoretic Perspective
% Author: Zhao-Jichao
% Date: 2021-09-06
clear
clc%% Laplacian Matrix
global Lf lfl
Lf= [2 -1 -1  0-1  2  0 -1-1  0  2 -10 -1 -1  3];
lfl=[0  0  0 -1]';%% Initial States
X0 = [30 30 30 30];%% Time Parameters
tBegin = 0;
tFinal = 50;%% Calculate ODE Function
[t,out] = ode45(@ctFun, [tBegin, tFinal], X0);%% Draw Graphs
plot(t,out(:,1), t,out(:,2), t,out(:,3), t,out(:,4), 'linewidth',1.5);
legend('x_1','x_2','x_3','x_4'); grid on%% ODE Function
function out = ctFun(~,X)global Lf lfldX = - Lf * X - lfl * 10';out = dX;
end



Appendix

A.1 Incidence matrix

关联矩阵(incidence matrix)
表示图的另一种常用方式是用关联矩阵。设 G=(V,E)G=(V,E)G=(V,E) 是无向图。设 v1,v2,⋯,vnv_1, v_2, \cdots, v_nv1​,v2​,⋯,vn​ 是顶点 e1,e2,⋯,ene_1, e_2, \cdots, e_ne1​,e2​,⋯,en​ 是边。则相对于 VVV 和 EEE 的这个顺序的关联矩阵是 n×mn \times mn×m 矩阵 M=[mij]M = [m_{ij}]M=[mij​],其中
mij={1,当边 ej关联 vi时0,否则m_{ij} = \left\{\begin{aligned} &1, ~~~~ \text{当边}~ e_j ~\text{关联}~ v_i~ \text{时}\\ &0, ~~~~\text{否则}\end{aligned}\right.mij​={​1,    当边 ej​ 关联 vi​ 时0,    否则​

A.2 Matlab

使用 Matlab 验证了部分结果

>> B = [1 1 0 0 1 0 0 0 1 0 1 1 0 0 0 00 0 0 0 1 1 1 00 0 1 0 0 1 0 10 1 0 0 0 0 1 00 0 0 1 0 0 0 1];
>> B*B'ans =3     1     1     0     1     01     3     0     1     0     11     0     3     1     1     00     1     1     3     0     11     0     1     0     2     00     1     0     1     0     2

【Paper】2009_Controllability of Multi-Agent Systems from a Graph-Theoretic Perspective相关推荐

  1. 【Paper】2009_Controllability of Multi-Agent Systems from a Graph-Theoretic Perspective 精炼版

    详细版请参考:[Paper]2009_Controllability of Multi-Agent Systems from a Graph-Theoretic Perspective 文章目录 5. ...

  2. 【Paper】2013_Cooperative control of multi-agent systems 二阶动态一致性

    Lewis F L, Zhang H, Hengster-Movric K, et al. Cooperative control of multi-agent systems: optimal an ...

  3. 【Paper】2017_Consensus of linear multi-agent systems with exogenous disturbance generated from hetero

    Zhang X, Liu X. Consensus of linear multi-agent systems with exogenous disturbance generated from he ...

  4. 【Paper】2021_Distributed Consensus Tracking of Networked Agent Systems Under Denial-of-Service Attack

    Y. Wan, G. Wen, X. Yu and T. Huang, "Distributed Consensus Tracking of Networked Agent Systems ...

  5. 【Paper】2015_El H_Decentralized Control Architecture for UAV-UGV Cooperation

    Decentralized Control Architecture for UAV-UGV Cooperation 1 Introduction 2 Problem Statement and Ar ...

  6. 【Paper】2017_水下潜航器编队海洋勘测的协调控制方法研究

    友情链接:[paper]2019_Consensus Control of Multiple AUVs Recovery System Under Switching Topologies and T ...

  7. 【Paper】2019_Consensus Control of Multiple AUVs Recovery System Under Switching Topologies and Time D

    Zhang W, Zeng J, Yan Z, et al. Consensus control of multiple AUVs recovery system under switching to ...

  8. 【Paper】2003_Consensus Problems in Networks of Agents with Switching Topology and Time-Delays

    此篇文章主要在于仿真代码,关于文献的解释请参考 [Paper]2003_Murr_Consensus Problems in Networks of Agents with Switching Top ...

  9. 【阅读】A Comprehensive Survey on Distributed Training of Graph Neural Networks——翻译

    转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] (本文中,涉及到公式部分的翻译不准确,请看对应原文.) 另一篇:[阅读]Distributed Graph Neural Networ ...

最新文章

  1. Solr实现SQL的查询与统计--转载
  2. vpython 贞测碰撞_7、Pygame碰撞检测
  3. leetcode刷题:二叉树的中序遍历
  4. 得先好好研究一数据库
  5. apl脚本入门-控制语句
  6. Microsoft Enterprise Library 5.0 系列(二) Cryptography Application Block (高级)
  7. ESP32WebSocket
  8. 2020软考软件设计师--基础知识培训视频-任铄(小任老师)-专题视频课程
  9. Python3中的md5加密
  10. C#|图像快速傅立叶变换与反变换
  11. 山西台达plc可编程控制器_可编程控制器10(PLC)基本指令系统
  12. 5G连通性的未来:14个可能被颠覆的行业
  13. selenium实现163邮箱登录
  14. 浅析LruCache原理
  15. Echarts实现自定义图标——风向图
  16. Ubuntu 安装MTP驱动访问安卓设备
  17. 多么痛的领悟:13 起惨痛的宕机案例
  18. python 图像处理 拉普拉斯算子的实现和改进-LoG和DoG算子
  19. 2021.11.06总结
  20. java webservice实例教程

热门文章

  1. 【BZOJ 1415】 1415: [Noi2005]聪聪和可可 (bfs+记忆化搜索+期望)
  2. QRadioButton Toggled() 使用方法
  3. 2010有道难题练习赛2
  4. 一位程序员的奋斗历程!------转载
  5. 12个高矮不同的人排成两排
  6. UA MATH567 高维统计IV Lipschitz组合9 矩阵函数、半正定序与迹不等式
  7. VC++ 拖放编程简单Demo
  8. javaScript要点总结
  9. Dockerfile命令详解
  10. 焊接产生的问题和解决方法