微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 污水处理智能化系统的Multi-Agent通信技术与实现

污水处理智能化系统的Multi-Agent通信技术与实现

时间:03-12 来源:互联网 点击:
分布式人工智能(Distributed Artificial Intelligence,DAI)理论主要研究在逻辑上或物理上分散的智能系统如何并行地、相互协作地进行问题求解[1]。作为DAI研究的一个重要分支和前沿学科,基于多智能体系统(Multi-Agents System,MAS)的分布式智能系统已受到控制领域研究人员的极大关注[2][4]。MAS的基本思想是将大的复杂系统建造成小的、彼此能相互通信及协调的、易于管理的Agent(智能体,代理)。当单一智能系统没有足够的知识、资源和信息去解决一个复杂的问题时,有必要研究如何使较多的小型智能系统之间相互协调、相互合作,以解决较大规模的复杂问题。本文基于Multi-Agent理论对于复杂系统的强大表现力及其开放性、智能化的特性,提出了一种构建污水处理智能化系统通用模型的新思想,用MAS理论集成污水处理系统中分散分布的众多模型和参数,从而有效解决污水处理这一复杂工业过程的控制问题。
1 基于Multi-Agent的污水处理分布式智能化系统
  基于Multi-Agent的污水处理智能化系统模型结构如图1所示。系统中每个Agent根据环境信息完成各自承担的工作,多个Agent分工协作,形成一个有组织、有秩序的群体,共同完成特定的任务。

执行Agent位于现场层,实现参数采集及现场控制的功能;冲突消解Agent是该智能化系统的核心,其功能是通过对任务规划信息、故障信息、系统状态信息以及其他Agent的协作请求信息等的融合,对 Agent行为所产生的冲突进行消解;数据服务Agent的功能是为其他Agent提供统一、灵活的访问实时数据库的接口;软测量Agent的功能是通过易测变量与难测变量之间的数学关系,实现难测变量的测量;故障诊断Agent是一个专家系统,可对污泥膨胀、污泥解絮、曝气池泡沫等故障现象进行诊断,并提出解决对策。
Agent间相互交换信息、进行协调或合作、解决超出单个Agent能力或知识的问题,并真正具有社会性的关键是Agent间可以通信。因此, Agent通信是Multi-Agent系统研究的重要问题之一。
2 MAS的通信语言
  Agent通信语言(Agent Communication Language,ACL)提供了Agent之间交换信息和知识的工具,使Agent之间相互作用达到求解问题的目的。ACL使Agent通信建立在知识级别(Knowledge Level)上,从而使Agent间的通信效率大大高于传统的分布式计算中的通信。
  目前主要有两种ACL,一种是1993年美国ARPA的KSE 研究小组提出的KQML(Knowledge Query and Manipulation Language);另一种是1997年欧洲的FIPA(Foundation for Intelligent Physical Agents)协会制定的开放性标准FIPA-ACL。FIPA标准由一系列规范组成,用于规范一个应用程序内部Agent之间和不同应用程序Agent之间的互操作,并对多Agent应用程序互操作中相应的功能模块进行标准化。由于FIPA-ACL在构建新的原语方面具有很强的能力,并且采用SL(Semantic Language)作为它的内容语言来描述Agent的状态,所以,FIPA-ACL有逐渐代替KQML的趋势。
2.1 FIPA-ACL的系统组成
  FIPA标准由一系列规范组成,每个规范对多Agent应用程序互操作中相应的功能模块进行标准化。FIPA-ACL规范集合在整个FIPA规范中的位置及其内部的功能规范组成结构如图2所示。

由图2可见,FIPA-ACL规范集合是整个FIPA标准中极其重要的组成部分,它与Agent管理规范集合、Agent消息传输规范集合构成了FIPA标准的主体部分。Interaction Protocols规范集合定义了FIPA-ACL可采用的互操作协议(如请求互操作协议);Communicative Acts规范集合则将Agent在使用FIPA-ACL进行通信过程中的各种语言行为单元(如:request、agree、refuse等)规范为一个CAL(Communicative Acts Library)库规范;Content Languages规范集合定义了应用在FIPA-ACL消息的内容上不同的表示方式(如:SL),它们可提供不同标准的编码形式。
2.2 FIPA-ACL通信机制
  Agent之间的通信是通过构造、封装、传输ACL消息进行的,ACL消息的主要结构如表1所示。

Agent A为了和Agent B进行通信,首先应该构建ACL消息。如果B提供的服务应采用请求互操作协议,则ACL的Protocol参数就设为fipa-request。A是此次互操作对话的发起者,它与B的第一次通信应视为请求互操作协议的第一个请求动作,这在CAL库规范中描述为request行为,所以ACL的performative参数应为request。封装好整个ACL消息后,Agent A选用适当的编码方式将其编码,形成有效载荷(Payload),然后再添加信封,信封中包含A和B进行通信所使用协议对应的协议地址。最后,A采用此传输协议将信息传送给Agent B。Agent B收到A发送的消息并

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top