[分布式控制浅述] (1) 图论基础

  • [分布式控制浅述] (1) 图论基础
    • 1 前言
    • 2 概述
    • 3 度矩阵(Degree Matrix)
    • 4 拉普拉斯矩阵(Laplacian Matrix)
    • 5 特殊图
      • 5.1 有向图与无向图(directed graph and undirected graph)
      • 5.2 平衡图(balanced graph)
      • 5.3 强连接图(strongly connected graph)
      • 5.4 生成树(spanning tree)

[分布式控制浅述] (1) 图论基础

因为笔者学习和研究的需要,将会开启一个系列博客(如果笔者不咕咕咕),主要讲述现在十分火热的分布式协同控制理论,其应用一个是纯理论性质的一致性问题,另一个则是偏向实际的编队问题。
不过从实际上来说,分布式控制应用还是得有一定的时间,各方面的技术,尤其是定位与通信还没有达到分布式控制所要求的高度。因此说白了目前这些理论算法多难以应用到实际应用,但是从学术的角度来说,还是很值得研究的。笔者曾经利用一致性理论做过大疆M210飞机的编队飞行试验,就结果而言,算法是很好的,但是效果很一般,实际实验中的定位误差和通信丢包阻塞才是更为主要的问题,当然,这可能也和笔者的试验设备通信能力有关。
大疆m210无人机编队试验
首先笔者必须介绍图论,这是本领域的最基础知识,后面将利用笔者浅薄的知识,为读者最为通俗易懂地、介绍一些笔者接触学习和使用过的分布式控制与一致性理论问题。
[分布式控制浅述] (2) 经典一阶系统的一致性问题

1 前言

“History repeats itself twice: the first time as tragedy, the next time as farce. ”
——Karl Marx

图论可谓是分布式控制和一致性理论的基础,下面简单介绍。

2 概述

图论是用于表示多智能体之间通信拓扑的工具。假设有nnn个智能体,他们之间的信息交互可以用一个有向图表示:G={V,E,A}\mathbf{G}=\left\{ \mathbf{V},\mathbf{E},\mathbf{A} \right\}G={V,E,A}。其中V={υi,i=1,⋯,n}V=\left\{ {{\upsilon }_{i}},i=1,\cdots ,n \right\}V={υi​,i=1,⋯,n}为节点集,代表nnn个智能体;E⊆V×V\mathbf{E}\subseteq \mathbf{V}\times \mathbf{V}E⊆V×V为边集,A=[aij]∈Rn×nA=\left[ {{a}_{ij}} \right]\in {{R}^{n\times n}}A=[aij​]∈Rn×n为图的加权邻接矩阵。
在有向图G\mathbf{G}G中,如果从节点υj{{\upsilon }_{j}}υj​到节点υi{{\upsilon }_{i}}υi​存在一条有向边,则表示智能体jjj的信息可以传给智能体iii,同时用(υj,υi)∈E\left( {{\upsilon }_{j}},{{\upsilon }_{i}} \right)\in \mathbf{E}(υj​,υi​)∈E表示。加权邻接矩阵的定义为:
aij>0⇔(υj,υi)∈E{{a}_{ij}}>0\Leftrightarrow \left( {{\upsilon }_{j}},{{\upsilon }_{i}} \right)\in \mathbf{E}aij​>0⇔(υj​,υi​)∈E aij=0⇔(υj,υi)∉E{{a}_{ij}}=0\Leftrightarrow \left( {{\upsilon }_{j}},{{\upsilon }_{i}} \right)\notin \mathbf{E}aij​=0⇔(υj​,υi​)∈/​E一般地,定义aii=0{{a}_{ii}}=0aii​=0,即智能体无自反馈。
智能体iii的邻居智能体为:所有可以传输信息给智能体iii的其他智能体,即:
Ni={j:(υj,υi)∈E}{{\mathbf{N}}_{i}}=\left\{ j:\left( {{\upsilon }_{j}},{{\upsilon }_{i}} \right)\in \mathbf{E} \right\}Ni​={j:(υj​,υi​)∈E}相似地,定义:
Oi={j:(υi,υj)∈E}{{\mathbf{O}}_{i}}=\left\{ j:\left( {{\upsilon }_{i}},{{\upsilon }_{j}} \right)\in \mathbf{E} \right\}Oi​={j:(υi​,υj​)∈E}

3 度矩阵(Degree Matrix)

定义节点υi{{\upsilon }_{i}}υi​的出度:
deg⁡(υi)out=di=∑j=1naij=∑j∈Niaij\deg {{\left( {{\upsilon }_{i}} \right)}_{out}}={{d}_{i}}=\sum\limits_{j=1}^{n}{{{a}_{ij}}}=\sum\limits_{j\in {{\mathbf{N}}_{i}}}^{{}}{{{a}_{ij}}}deg(υi​)out​=di​=j=1∑n​aij​=j∈Ni​∑​aij​那么度矩阵为:
D=diag{d1,d2,⋯,dn}=[d10⋯00d2⋯0⋮⋮⋱⋮00⋯dn]D=diag\left\{ {{d}_{1}},{{d}_{2}},\cdots ,{{d}_{n}} \right\}=\left[ \begin{matrix} {{d}_{1}} & 0 & \cdots & 0 \\ 0 & {{d}_{2}} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & {{d}_{n}} \\ \end{matrix} \right]D=diag{d1​,d2​,⋯,dn​}=⎣⎢⎢⎢⎡​d1​0⋮0​0d2​⋮0​⋯⋯⋱⋯​00⋮dn​​⎦⎥⎥⎥⎤​一般地,提到一个图的度和度矩阵都是指出度矩阵。同样还有入度,较少用到,刚好笔者最近要使用,就在这里一并列出:
deg⁡(υi)in=∑j=1naji=∑j∈Oiaji\deg {{\left( {{\upsilon }_{i}} \right)}_{in}}=\sum\limits_{j=1}^{n}{{{a}_{ji}}}=\sum\limits_{j\in {{\mathbf{O}}_{i}}}^{{}}{{{a}_{ji}}}deg(υi​)in​=j=1∑n​aji​=j∈Oi​∑​aji​

4 拉普拉斯矩阵(Laplacian Matrix)

Laplacian matrix在一致性理论中十分重要,几乎所有的证明和推导都包含这个矩阵。
定义:
L=D−AL=D-AL=D−A
即:
L=[∑j=1na1j−a12⋯−a1n−a21∑j=1na2j⋯−a2n⋮⋮⋱⋮−an1−an2⋯∑j=1nanj]L=\left[ \begin{matrix} \sum\limits_{j=1}^{n}{{{a}_{1j}}} & -{{a}_{12}} & \cdots & -{{a}_{1n}} \\ -{{a}_{21}} & \sum\limits_{j=1}^{n}{{{a}_{2j}}} & \cdots & -{{a}_{2n}} \\ \vdots & \vdots & \ddots & \vdots \\ -{{a}_{n1}} & -{{a}_{n2}} & \cdots & \sum\limits_{j=1}^{n}{{{a}_{nj}}} \\ \end{matrix} \right]L=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡​j=1∑n​a1j​−a21​⋮−an1​​−a12​j=1∑n​a2j​⋮−an2​​⋯⋯⋱⋯​−a1n​−a2n​⋮j=1∑n​anj​​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤​Laplacian matrix有以下重要性质:

  1. Laplacian matrix为半正定的。
  2. 特征值0出现的次数就是图连通的区域。
  3. 最小特特征值为0(因为每行和均为0,且图最少有一个连通区域)
  4. 最小非0特征值是图的代数通达度。

对控制而言,其中最重要的就是其性质中的半正定性了,这对于稳定性证明十分重要。

5 特殊图

从严格角度来说有向图最弱,有:
有向图<强连接图<生成树<平衡图<无向图有向图<强连接图<生成树<平衡图<无向图有向图<强连接图<生成树<平衡图<无向图:关于强连接图和生成树的条件强度比较可以详见下面文献的Remark 1:
R. Olfati-Saber, J. A. Fax, and R. M. Murray, “Consensus and cooperation in networked multi-agent systems,” Proc. IEEE, vol. 95, no. 1, pp. 215–233, 2007.

5.1 有向图与无向图(directed graph and undirected graph)

顾名思义,无向图有:
aij=aji{{a}_{ij}}={{a}_{ji}}aij​=aji​而有向图上式不一定成立。
值得一提的有向图的性质:

  1. 邻接矩阵和拉普拉斯矩阵都是对称的
  2. 出度和入度相同,很好理解,因为对称,即:
    deg⁡(υi)out=∑j=1naij=∑j=1najideg⁡(υi)in\deg {{\left( {{\upsilon }_{i}} \right)}_{out}}=\sum\limits_{j=1}^{n}{{{a}_{ij}}}=\sum\limits_{j=1}^{n}{{{a}_{ji}}}\deg {{\left( {{\upsilon }_{i}} \right)}_{in}}deg(υi​)out​=j=1∑n​aij​=j=1∑n​aji​deg(υi​)in​

5.2 平衡图(balanced graph)

平衡图是指对任意iii和jjj,有:
∑i≠jaij=∑j≠iaji\sum\limits_{i\ne j}{{{a}_{ij}}}=\sum\limits_{j\ne i}{{{a}_{ji}}}i​=j∑​aij​=j​=i∑​aji​可以知道,平衡图可以是一个有向图。

5.3 强连接图(strongly connected graph)

简单的说,图中任意两个节点有一条通路,即为强连接图。

5.4 生成树(spanning tree)

简单的说,图中存在一个节点,对所有节点都可达(包括间接可达)。那么其Laplacian矩阵有且仅有一个0特征值,其特征向量为1向量,即L1n=0nL{{\mathbf{1}}_{n}}={{\mathbf{0}}_{n}}L1n​=0n​,且其他非零特征值均有负实部。性质的证明可以参考Wei Ren教授的文章Lemma 3.3:
Wei Ren, Randal W. Beard, ”Consensus Seeking in Multiagent Systems UnderDynamically Changing Interaction Topologies”, IEEE Transactions on automatic control, 2005

[分布式控制浅述] (1) 图论基础相关推荐

  1. [分布式控制浅述] (3)简单分布式事件触发控制

    [分布式控制浅述] (3)简单分布式事件触发控制 [分布式控制浅述] (3)简单分布式事件触发控制 1 前言 2 分布式事件触发控制 3 稳定性分析 [分布式控制浅述] (3)简单分布式事件触发控制 ...

  2. [分布式控制] (4) 刚性图论基础和仿射编队

    [分布式控制] (4) 刚性图论基础和仿射编队 [分布式控制] (4) 刚性图论基础和仿射编队 0 概念 1 一般的(Generic) 2 等价与全等(Equivalent and Congruent ...

  3. 幼师学计算机的基础知识,幼师专业计算机教学浅述.doc

    幼师专业计算机教学浅述 幼师专业计算机教学浅述 摘要:随着我国社会经济的快速发展,人民的生活水平得到不断的提高.人们对于教育的关注度也日渐增强.作为未来会进入教育行业的幼师专业学生来讲,其能力和水平受 ...

  4. CV学习笔记-浅述CV方向

    浅述CV方向 一.浅述人工智能的一些术语 1. 人工智能初探 人工智能是通过机器来模拟人类认知能力的技术 人工智能最核心的能力就是根据给定的输入做出判断或预测 关键时间节点:1956年,达特茅斯会议, ...

  5. 浅提计算机未来的想法,浅述未来计算机的发展趋势论文

    计算机技术的趋未来发展势将面向智能化模式.多极化发展模式.网络化模式这三种主要模式.下面是学习啦小编给大家推荐的浅述未来计算机的发展趋势论文,希望大家喜欢! 浅述未来计算机的发展趋势论文篇一 < ...

  6. 面试归来——梳理社招面试以及浅述对程序员职业生涯的看法

    原谅我是一个后知后觉的人,已经在新的岗位工作了两个月,才写这篇文章. 本文会先讲述博主一个月的面试经历,梳理一下技术面试,浅述关于程序员职业生涯的一些看法. 从创业到再就业 大概4个月以前,终止创业已 ...

  7. 转:解救西西弗斯- 模型驱动架构(MDA,Model Driven Architecture)浅述

    原文: 解救西西弗斯- 模型驱动架构(MDA,Model Driven Architecture)浅述 前言 西西弗斯是古希腊神话中的科林斯国王,他被罚将一块巨石推到山上,但无论西西弗斯如何努力,每次 ...

  8. 自动驾驶轨迹预测任务浅述

    注:本文只用来记录我实习过程中积累的粗浅理解,平时抽空写写,不一定正确和全面.随着认识的增多我会不断更新修正本文内容,也欢迎大家帮我指正问题. 目录 1. 自动驾驶任务浅述 2. 轨迹预测任务 2.1 ...

  9. 计算机网络测试预算,计算机网络技术专业工程预算教学浅述.doc

    计算机网络技术专业工程预算教学浅述 计算机网络技术专业工程预算教学浅述 摘要:为了解决计算机网络技术专业<工程预算>课程实践性强.知识抽象.难于理解的问题,帮助学生易于学习理解,保证教学质 ...

最新文章

  1. 【Spring】事务控制API
  2. [POJ-3237] [Problem E]
  3. C++的字符串分割函数
  4. Arm发布v9体系架构:Cortex-X2、Cortex-A710和Cortex-A510
  5. iOS百度地图的相关开发(一)
  6. 基于BS模式的航材电子商务交易平台(1)
  7. 1064. 朋友数(20)-PAT乙级真题
  8. 定时自动清除tmp工具tmpwatch
  9. 大漠综合工具取点阵显示不全_利用pyfolio工具评价回测资金曲线
  10. HW浮动静态路由及负载均衡
  11. 将csv文件存入mysql数据库_将csv文件导入到mysql数据库
  12. ECSHOP4.0 H5端源码运行环境安装
  13. [人工智能-综述-3]:人工智能与硅基生命,人类终将成为造物主
  14. 消息中间件----ActiveMQ
  15. qq邮箱 服务器认证失败怎么回事,为什么我的QQ邮箱登录不了 QQ邮箱无法登陆怎么解决...
  16. MBA-day21 假言推理-练习题
  17. 关于vlc编解码器暂不支持: VLC 无法解码格式“MIDI” (MIDI Audio)解决
  18. 全球最大湾区|微信大数据:《粤港澳大湾区智慧生活圈报告》
  19. CSR蓝牙开发资源大全(软件代码资料)
  20. 在html5页面中添加canvas,HTML页面中添加Canvas标签示例

热门文章

  1. linux命令系列 alias,alias命令
  2. 京东金融布局:8.8%+白条+网银钱包
  3. SVN访问You don't have permission to access this resource 403错误
  4. js快速查看用户ip地址是哪个省份城市的
  5. petalinux中加入驱动模块
  6. Elasticsearch:对搜索结果排序 - Sort
  7. 读点大脑科学,学会变得更聪明
  8. 桌面日历的手机APP
  9. 路由组件的lazyLoad
  10. 街舞学习APP基础教程开发