这篇系统结构论文范文属于硕士论文免费优秀学术论文范文,系统结构类有关毕业论文,与基于Multi―Agent的电网故障精确诊断系统的相关硕士论文书写。适合系统结构及故障及计算机应用方面的的大学硕士和本科毕业论文以及系统结构相关开题报告范文和职称论文写作参考文献资料下载。
【摘 要 】提高电网故障智能诊断系统的精确性能够帮助工作人员更加快速、准确的判断故障类型与故障元件,做出更具针对性的决策,缩短事故处理的时间,有效地预防和控制突发事故.本文提出一种基于多Agent系统的电网故障精确诊断方法和系统结构,并采用FIPA ACL专用语言对Agent间的通信与写作进行程序编写,并将模糊算法和神经网络混合诊断策略应用于该系统,有效提高诊断系统的实时性与精确性.
【关 键 词 】Agent,电网系统,故障诊断,精确
1.电网故障精确诊断系统的整体设计
电网故障诊断系统的多Agent模型包括数据采集层、数据处理层、故障诊断层、故障决策层、检修计划层,系统的整体结构如图1所示.
图1 基于Multi-Agent的电网故障精确诊断系统结构
各Agent的功能描述如下:
(1)实时数据采集Agent:从SCADA系统中获取电网状态的数据并对数据整理传至故障诊断Agent,同时监听故障跳闸事件,唤醒结线分析Agent与故障诊断Agent.
(2)结线分析Agent:确定并显示停电区域,对该区域接线进行局部结线分析.
(3)故障类型库、故障诊断Agent与诊断结果评估Agent:这是整个诊断系统的核心部分.故障类型库多个Agent并行工作,根据开关跳闸信号,来判断可能的故障类型,故障诊断Agent求得故障隶属度最大的故障,初步确定故障类型,诊断结果评估Agent则得到故障的严重程度.
(4)案例分析Agent:是通过实时数据得到的诊断结果处理成案例,为以后的诊断工作提供辅助.
(5)规则库管理Agent:提供诊断规则,对规则库的维护和管理.
(6)接线图生成Agent:自动生成厂站接线图,以便故障类型库调用,在故障发生后,可以将故障跳闸区域显示在屏幕上.
2.电网故障诊断系统的核心部件设计
2.1 故障类型库
诊断Agent内部结构如图2所示:
图2 故障分析Agent内部结构
主要部件功能如下:
(1)控制部件:对Agent的动作及任务进行分析、优化、监控以及执行.
(2)数据存储器:负责存储收到的用于诊断的故障数据,以及诊断过程中产生的中间结果.
(3)推理机控制器:实现对多Agent协作的联合调度,负责启动、监控、终止推理机的工作,并对诊断结果进行评价.
(4)推理机:利用数据及知识对故障进行诊断.启动执行面向基本活动的计算,推理产生的中间结果送入数据存储器,最终结果送给推理机控制器.
2.2 故障诊断Agent与结果评估Agent
故障诊断评估过程如图3所示:
图3 故障诊断评估过程
模糊算法是通过对现实对象的分析,处理数据并构建模糊型数学模型,用隶属关系将数据元素集合灵活成模糊集合,确定隶属函数,获得现实对象的隶属度.
设给定论域U,U在闭区间[0,1]中的任一映射μA.
可确定U的一个模糊子集A.
μA(x)称为A的隶属函数,μA(xi)称为元素xi的隶属度.当μA(xi)等于1时,则xi完全属于模糊集合A,当μA(xi)等于0则xi完全不属于模糊集A.μA(xi)越接近于1,xi属于A的程度就越大.
BP网络是一种误差反向传播的神经网络,BP算法的基本思想是梯度下降法,它采用梯度搜索技术,以期使网络的实际输出值与期望输出值的误差均方值为最小.输入样本的预测权重处理方法对BP神经网络进行训练能够进一步确认故障类型并很好地区分故障的严重的程度.
采用下述方法获得多组预测组合的样本输出Q:
n为该样本采用的预测个数,m为该故障的最大预测数.
其中:
3.诊断系统的通信与编码实现
(1)由图2与图3所示,系统的通信采用FIPA ACL通信语言编程实现.FIPA ACL通信语言是智能物理Agent基金会(FIPA)做的对Agent通信语言标准化的工作,其特点是层次结构清晰,由通信层、消息层、内容层组成,具有可行前提条件和预期通信效果并且具有标准EBNF格式语法,具有标准化内容语言.
FIPA规定了22个通讯动作.如图4所示FIPA请求协议的通信行为:
图4 FIPA请求协议
(2)故障类型库Agent的故障类型推理部分使用PROLOG语言进行编程,PROLOG语言是一种说明性语言,具有表达能力强、坚实的数学基础(一阶谓词逻辑)、自动回溯、支持递归调用等特点,广泛应用于AI领域,只要给出求解问题所需要的事实和规则,PROLOG就能使用演绎推理的方法去解决问题.
其余采用JA语言编程实现,利用JA的多线程编程接口,开发人员可以方便得写出支持多线程的应用程序,提高程序执行效率.多线程关键代码如下:
创建线程之后,可用getName()或setNam ()来创建线程名字.通过start()来激活线程,Thread.sleep()来让线程等待.线程在执行之后消除,也可以终止线程.
4.结论
本文研究设计了电网的故障诊断系统,并将Multi-Agent技术应用其中,满足诊断对象的网络分布化、故障多元化的要求,使用多种语言混合编程,可以互相弥补缺点,发挥优势,提高Agent系统的质量,并使用多线程技术提高系统效率,采用模糊-神经算法的混合诊断策略,提高系统的诊断精度.