论文部分内容阅读
多智能体系统(Multi-Agent System,MAS)利用各智能体之间的通信和协调合作来解决大型复杂的作业,在智能电网、智慧交通、无人机编队飞行和多智能机器人等许多实际工程中实现了很好的应用,得到了人工智能和分布式计算等许多相关领域的专家学者的关注。多智能体系统能够通过信息交互和协作在复杂的环境中很好的完成任务,却也会因为其开放性的特点容易受到外部的恶意攻击。因此本文主要围绕多智能体系统的安全问题展开研究。本论文主要研究受到恶意虚假数据注入攻击(False Data Injection Attack,FDI)的多智能体系统,设计相应方法来检测该系统中是否存在FDI攻击以及确定攻击所在的位置即找出被攻击的智能体,并且提出令受损害的多智能体系统可以继续进行协同控制的策略。本文选择分别基于一阶MAS和二阶MAS展开分析讨论,并取得了不错的研究成果。本论文的具体研究内容如下:1.首先研究了受到FDI攻击的一阶多智能体系统,设计了一种监测器用来检测和识别FDI攻击。该监测器主要基于龙伯格观测器,借助分布式控制的思想。我们为每个智能体构建相应的攻击检测滤波器,滤波器的输出为状态残差,利用该残差判断多智能体系统是否受到FDI攻击。由于智能体之间可以互相通信,为了减少邻居节点对识别受攻击智能体产生的影响,我们将每个智能体系统的邻居状态独立出去,在构建攻击识别对应的残差滤波器时也不考虑这一部分,从而使得滤波器的输出可以直接判断该智能体是否被攻击。2.然后对被注入虚假数据攻击的二阶多智能体系统展开研究,关于检测二阶MAS中存在的FDI攻击,我们选择基于未知输入观测器的状态估计方法,并且假设系统中仅有一个智能体被攻击。依次将各智能体的攻击信号从二阶多智能体系统中解耦并看作为未知输入构建未知输入观测器(Unknown Input Observer,UIO),得到状态估计误差,再利用所有智能体对应的误差来判断是哪个智能体被攻击,这是我们提出的一个集中式的攻击检测方法。将该方法进行改进得到分布式的攻击检测方法,即选择将可以构成具有生成树的拓扑网络的每三个智能体分为一个小组,则对于每组只需计算其中两个智能体的残差即可判断该组中是否存在受到FDI攻击的智能体,并依次对每一组都进行同样的判断。接着我们提出另一种分布式攻击检测方法,考虑将UIO和Luenberger观测器结合使用,在该方法中选择将邻居节点的状态当作未知输入构建UIO,再将得到估计状态用于残差滤波器的设计,并利用残差信号判断该智能体是否受到FDI攻击。3.最后提出了一种协同控制策略使得被注入虚假数据攻击的多智能体系统能够摆脱外部的影响,可以继续协作完成任务。根据本文中提到的关于一阶和二阶多智能体系统的攻击检测方法得到相应的攻击集后,我们考虑采用攻击隔离的策略即将所有被FDI攻击破坏的智能体从MAS中剥离出去,令剩余未被攻击的智能体构成新的多智能体网络,并且实现一阶和二阶多智能体系统的状态一致性以可以继续进行协同控制。本文还给出了一阶MAS最终收敛到的状态一致值,和二阶MAS的位置和速度状态实现一致性的值。通过设计实例在MATLAB平台实施仿真实验,证实了本论文中所有相关算法的可靠性和准确性。对于受到FDI攻击的一阶MAS和二阶MAS,都能成功找到被攻击破坏的智能体,并且在实施攻击隔离后系统的状态能重新收敛到同一个值。