第4卷第6期 智能系统学报 Vol.4 No.6 2009年12月 CAAI Transactions on Intelligent Systems Dec.2009 doi:10.3969/i.i8sn.1673-4785.2009.06.007 基于multi-Agent技术的海洋数据 智能采集与传输系统 胡 涛,丁永生12,曾献辉2,许武军12,郝矿荣2 (1.东华大学信息科学与技术学院,上海201620:2.数字化纺织服装技术敕育部工程研究中心,上海201620) 摘要:基于multi-Agent技术研究了海洋数据采集与传输系统的体系结构、协调机制等关键技术,阐述了其中的A 行为模型设计,包括任务分解原则、通信机制及开发路线的选择等,以解决多握手协议、多发送地址的复杂环境 中数据传输问题.系统采用分层设计思想和多线程技术,实验结果显示了这种方法的可行性.基于mti-Aget的智 能数据采集与传输系统提高了系统的自组织、自适应能力,具有较好的通用性和可扩展性。 关键词:multi-Agent;海洋数据传输;分层设计;多线程 中图分类号:TP391文献标识码:A文章编号:16734785(2009)06050805 Intelligent data acquisition and transmission system for oceanic data using a multi-Agent technique HU Tao',DING Yong-sheng'.2,ZENG Xian-hui.2,XU Wu-jun'.2,HAO Kuang-rong.2 (1.College of Information Sciences and Technology,Donghua University,Shanghai 201620,China;2.Engineering Research Center of Digitized Textile Fashion Technology,Ministry of Education,Shanghai 201620,China) Abstract:The authors analyzed the architecture and coordination mechanisms of an oceanic data acquisition and transmission system and developed a design scheme for Agent behavior in such a multi-Agent system.This included principles of task decomposition,communication mechanisms and choices of Agent design routes.As a result,the multi-Agent system can solve data transmission problems in a complex environment using a multi-handshake proto- col and multi-send addresses.A multilayer design concept with multithreading was also introduced in the system. Keywords:multi-Agent;oceanic data transmission;multilayer design;multithread 海洋综合规测与试验平台网络的一体化结构由 对象,为此需要解决多种数据的采集、处理和高效动 3部分组成:无线/卫星通讯网、试验平台系统、基站 态传输等集成技术.本文提出利用muli-Agent系统 控制中心网.基站控制中心不仅能通过无线/卫星等 (MAS)技术,对数据传输系统进行设计,以解决多 通信手段接收海洋综合观测与试验平台的信息,还 握手协议、多发送地址的复杂环境中数据传输问 可以对其进行管理,并根据预定程序发送控制指令, 题261.MAS由多个自主或半自主的Agent组成,每 对海洋综合观测与试验平台上的设备进行控制;试 个Agent或者履行自己的职责,或者与其他Agent 验平台系统负责信息的电子化管理、接收基站控制 通信获取信息并互相协作完成整个问题的求解。 中心的控制命令,为相关设备动作提供依据,进行实 MAS侧重研究一组Agent的行为如何协调,各Agent 时数据的分析与处理等 如何进行通信和协调各自的知识、目标、策略和计划 海洋综合规测网络与试验平台网络是以海底水 等.各Agent在地理上可以是分散的,这无疑对完成 文、气象、温度、声学信号、沉积及泥沙等要素为研究 大规模和复杂的任务是富有吸引力的. 针对海洋数据采集与传输系统的体系结构、协 收稿日期:2009-10-05 调机制等关键技术78],阐述了其中的Agent设计, 基金项目:国家自然科学基金资助项目(60975059):上海市科学技术 委员会重大科技资助项目(06z12009-2-1);上海市科学技 采用分层设计思想和多线程技术,设计了一种较为 术委员会重点基础研究资助项目(08JG1400100);上海市 高效、合理的智能数据采集与传输系统。 人才发展资金资助项目(001). 通信作者:丁永生.E-mail:ysding(@dhu.edu.cm
第6期 胡涛,等:基于muli-Agent技术的海洋数据智能采集与传输系统 ·509· 入CDMA DTU中,通过CDMA实时传送到电信基 1数据采集与传输系统的整体设计 站,作为需要的实时数据.后端的基站控制中心将数 海洋观测系统的数据采集中心由放置在浅海海 据由基站传输给远程多台指定的服务器 底的采集设备负责采集各种海洋信息,然后由光电 基于multi-Agent的数据采集与传输系统结构 适配器转换成光信号,到达海岛后再由光电适配器 如图1所示,它是由多个接收/发送串口和存储设备 转换成电信号.中间的数据传输中心将数据直接接 组成,整个系统共有8个串口。 管理Agent 回馈信息 告知收御数据 回馈信息包 调用、分配 括:数据处 数据处理存理完毕,无可 调送发送 信息L储Agent -川Ant等 Agnet 申口收到 接收数据 传递数据 传递数据 数据发送 CDMA发送数据, 数据 Agnet Agnet 数据处理 与存储Agent 串口发送 数据发送 传递命令 传递命令 接收数据 接收查询命令、 命令 Agnet Agnet 图1基于multi--Agent的数据采集与传输系统结构 Fig.1 The system structure of data acquisition and transmission based on multi-Agent 1.1系统的体系结构 求.信息传递是指发送Agent主动把有关信息传递 在进行multi-Agent系统设计时,首先应确定系 给接受Agent;:服务请求是指发送Agent向接受A- 统的体系结构[4,定义整个系统内个体Agent的相 gent发出请求,要求接受Agent提供所需的服务,并 互关系和功能分配,确定系统和各部分之间的信息 将服务的结果返回给发送Agent.. 流通关系及其逻辑上的拓扑结构,决定任务分解、分 海洋数据采集与传输系统中,各Agent之间消 配、规划、决策及执行等过程的运行机制及系统各部 息传递关系如图2所示.系统的功能就是在各个A 分所担当的角色.系统的体系结构一般可分为集中 gent不断地对其他Agent发送信息或服务请求,或 控制方式、分布控制方式以及集中与分布相结合的 者响应其他Agent的消息过程中得以实现的.图2 混合控制方式3类 描述了各Agent间存在的协作关系,此处仅对图2 海洋数据采集与传输系统主要用于多端口的数 中协作关系“[2]”所代表的端口Agent与管理A- 据接收和发送任务,需要处理各端口在接收/发送数 gent之间存在的协作关系做如下解释说明. 据时的协调和分工、确定接收数据在各端口间的流 [2] 管理Agent 13 向、发送任务的分解以及各端口间的信息交流;因 此,端口的管理十分重要,工作量较大,需要设计专 [] 门的管理单元.为此,采用集中式体系结构,由专门 瑞口Agent [4] 5] 端口Agent 的核心Agent负责各端口的管理,负责接收/发送任 (负责接收数据) 数据 负责发送数据) 16 存储 17 务的分配和调度,并协调各端口Agent之间的通信 单元 方式.但在设计时要保留扩展的接口,以便系统的接 猫口Agent 14 I5]端L口Agent (负责接收数据) (负责发送数据) 口扩充. 1.2系统的通信与协作 图2数据采集与传输系统中Aget间的消息协作关系 在海洋数据采集与传输系统中,Agent之间的 Fig.2 The communication and interaction among Agents 通信行为大致可以分为2类51:信息传递和服务请
510. 智能系统学报 第4卷 图2中“[2]”:所有端口Agent(P)与管理A- 主要功能及设计方案[46)」 gent(M)之间的信息交流. 2.1端▣Agent M-P01:端口当前状况查询; 端口Agent是整个系统的主要功能单元,负责 M-PO2:激活端口线程; 完成数据的接收/发送动作,每个Agent负责一个端 M-PO3:数据发送任务安排计划; 口,使其能根据环境的变化选择合适的功能;端口 P-M03:数据接收 Agent是对端口和其所处环境的整体建模,是对端 为了解决muli-Agent之间的通信,本文采用 口功能进一步地整合,使其模块化,操作更为简单、 KQML通讯语言.当数据存储单元内存有等待发送 快捷 的数据时,管理Agent(IDMA)依次会给所有端口A- 端口Agent包含了接收、发送、与当前环境交流 gent(ID为PA)发送如下信息: 3部分内容,能根据当前环境的不同,灵活地选择接 (ask all 收或发送功能,使串口的利用率得到提高.端口A sender MA gent的设计如下: receiver PA01 1)状态栏.串口的开闭状况、串口的工作状态、 reply_with MAid3 采集的信息类型以及当前所使用的功能等. language C 2)规则库. :content[InformationAbout(“空闲”)]) ①接收数据.根据接收的信息类型分为少量信 如果有处于空闲端口Agent时,空闲端口Agent 息传输和文件传输.对于少量信息传输,端口Aget 即可回应管理Agent,并由管理Agent添加进人空闲 的接收功能直接写人存储单元;当传输文件时,端口 端口队列. Agent将文件接收完成之后,调用文件处理模块,由 (tell 文件处理模块对所接收的文件进行分块处理,最后 sender PA02 再存入存储单元,以利于管理Agent的任务分配,预 receiver MA 防文件过大,造成单个串口工作量过于繁忙。 in_reply_to MAid3 ②数据发送.同接收功能相似,端口Agent的发 language C 送功能也具有发送少量信息和文件2种功能.在文件 :content[...]) 发送中,由于文件较大,一般由多个串口协助发送,多 1.3任务的分配算法 个串口之间的协助关系由管理Agent分配协调. 系统采用基于环结构的并行调度算法,该算法 ③握手协议接收器.为了解决传输环境中协议 能使每个节点的任务数达到较好的负载平衡,能减 过多问题,设置了握手协议接收器,通过接收Agent 少各任务的迁移和通讯总量.在该算法中,根据系统 与传输环境的通信,使环境告知接收Agent新增的 的总任务数,主控节点计算出每个节点的平均任务 协议,增加接收Agent的处理能力. 数,每个节点就可获知是否超载;如果超载,则退出 ④地址添加器.在传输环境中,由于地址是不固 多余的任务数;如果少于平均数,则从主控节点处获 定的,需要及时更新发送的地址,所以在发送Agent 得任务数.当任务不能平均分配时,则主控节点给开 中,设置与外界环境通信的模块,方便于接收环境信 始的某几个节点分配“平均任务数+1”个任务,这 息,解决了环境中的多地址问题. 样它们就比别的站点多一个任务.从而在系统调度 3)通信.端口Agent主要有2种通信:写人存储 阶段的最后时刻,每个节点有几乎相同数目的任 务 单元和接收环境消息.前者是对存储信息的更新,后 者是与当前环境进行交流 2 数据采集与传输系统中Agent的 4)文件处理单元.为了缓解管理Agent任务过 行为模型 重的情况,设置了文件管理单元,并由接收Agent直 接调用,文件管理单元的功能为将文件进行固定大 在系统中,设计了3种Agent单元:端口Agent、 小分块,将每一块作为一个消息存入存储队列,即将 管理Agent和存储Agent.由于Agent的分工不同, 任务细化. 且相互间的任务可以同步完成,所以为每个Agent 2.2管理Agent 创建单独的线程,执行各自的功能,各线程间的通信 管理Agent处于核心地位,负责系统各Agent 协调是本系统的关键所在,以下给出了各Agent的 的协调工作,是各个Agent的连接纽带.管理Agent
第6期 胡涛,等:基于muli-Agent技术的海祥数据智能采集与传输系统 511 有数据传输任务的分配、各指标的识别、对存储单元 尽可能提高资源的利用, 读写的控制等.管理Agent的设计是否合理,直接影 3.2系统实现 响系统的整体性能,也是系统效率的瓶颈所在,故要 海洋数据采集与传输系统提供了数据采集,历 采取合理的方式,缓解管理Agent的工作量.本系统 史数据存储及远程管理等功能,从而将观测数据采 中,专门设计了存储单元Aget和文件单元,专门负 集、通讯传输等系统有效地集成在一起.该软件系统 责信息存储与文件分块,以缓解管理Agent作为中 的界面主要包括3个子界面:实时监视、日志查询和 间环节的工作量过重问题. 自定义方案,如图3~5所示 1)状态栏.包括:串口注册表、接收/发送串口 大X 的工作状态、存储队列的信息数量; 计操害: 停上 2)规则库. ①各串口注册,在系统初始化时,将各串口注册 4 到管理Agent中,由管理Agent负责串口的通信, ②存储单元信息的读写控制. 2 ③任务分配.这是管理Agent最主要的任务,通 早州 过基于环结构的并行调度算法,实现任务的分配,使 图3实时监视界面 各发送串口的任务均衡. Fig.3 Real-time monitoring interface 3)通信.由于本系统的体系结构采用集中式体 系结构,因此,管理Agent在通信中担当着主要角 保才额日有台定火全 看洋来代0置 色,起协调连接作用. 开6白魏时性:成年月前习西站東日呢附调:行2前i四1空 2.3存储Agent 花天m笔 存储Agent是数据的存储单元,各Agent间的 已商 信息传递也可通过存储单元完成,即将信息在各A 和 gent之间的转换独立出来,以细化管理Agent的工 作.在本系统中,存储Agent只接受来自管理Agent 的信息,根据管理Agent的指令,分配存储单元的信 图4日志查询界面 息,接收/发送Agent只有在获得存储Agent的许 Fig.4 Record query interface 可,才能对存储单元进行读写访问. 可位阁转置博日无女X 1)状态栏.主要为存储队列, 2)规则库.包含队列控制单元,对存储队列进 行管理,主要为读取队列,提交给发送Agent.. 1家无 3)通信.存储单元模块只能与管理Agent进行 通信,由管理Agent规划, 3数据采集与传输系统的实现 3.1软件的设计 图5自定义方案 在设计软件过程中,系统整体结构采用分层设 Fig.5 Custom scenarios 计.最低层是串口处理层,负责串口事件,从串口读 本系统每个端口Agent都设计有读写功能,使 入或发送数据:其次是数据分离和数据处理层,负责 得数据传输的通道可以双向传输,与传统的传输系 从串口接收到的原始数据中解析出完整无差错的数 统相比,可以提高串口的利用率,减少对串口的需 据,并将其储存;第3层是数据实时显示层,这一层 求.系统采用自行设计的硬盘文件管理技术,进行历 负责显示收到的数据及相关的系统消息,为用户决 史数据存储,提高存储的效率和系统的可靠性.同时 策提供实时信息 利用实时数据发送与定时历史数据发送的双重机 由于数据传输的不确定性,为使各部分能实时 制,保证采集数据的完整性与实时性.该系统目前已 处理,软件根据并行计算设计理念,采用多线程设 成功应用在某海洋观测系统平台 计,为串口处理层中的每个串口设计了单独的线程
.512. 智能系统学报 第4卷 [6]张洁,高亮,李培根.多Agent技术在先进制造中 4结束语 的应用[M].北京:科学出版社,2004:280-287 随着监控技术、传感器技术的快速发展和普及, [7]宋鹏,严峰斌.基于CDMA的移动无线数据传输系统 数据采集与传输的研究也得到越来越广泛的关注, [J].单片机与嵌入式系统应用,2005,12(2):37-39. 本文基于muli-Agent研究了传输系统的体系结构、 SONG Peng,YAN Fengbin.Mobile data transfer system based on CDMA J].Microcontrollers Embedded Sys 协调机制等关键技术,设计了一种较为高效、合理的 tems,2005,12(2):37-39. 数据智能传输系统,具有较好的通用性.系统采用了 [8]王海涛,段哲民。多路数据采集与网络远程传输系统实 分层设计,为扩展留下了接口,方便了今后的扩展, 现[J].计算机测量与控制,2008,10:421423. 参考文献: WANG Haitao,DUAN Zhemin.Multi-channel data acquisi- tion and long distance internet transmission system[J]. [1]杨士莪.海洋环境及海洋资源调查、监测技术概述[J]· Computer Measurment Control,2008,10:421-423. 舰船科学技术,2008,23(5):17-19. 作者简介: YANG Shie.Ocean expedition and ocean exploitation:a 胡涛,男,1985年生,硕士研究 general review about techniques of ocean inspection and sur- 生,主要研究方向为智能系统等。 vey[J].Ship Science and Technology,2008,23(5):17- 19. [2]PARK S,SUGUMARAN V.Designing multi-Agent sys- tems:a framework and application[J].Expert Systems with Applications,2005,28(2):259-271. [3]MONTANO B R,YOON V.Agent leaming in the multi-A- 丁永生,男,1967年生,教授,博士 gent contracting system[J].Decision Support Systems, 生导师,博士,主要研究方向为智能系 2008,45(1):140-149. 统、网络智能、DNA计算、人工免疫系 [4]王俊松,崔世钢.Muli-Agent技术及应用[J].计算机工 统、生物网络结构、生物信息学、数字化 程与应用,2003,28:6163. 纺织服装等研究. WANG Junsong,CUI Shigang.Multi-Agent technique and its application[J].Computer Engineering and Applications, 2003,28:6163. 曾献辉,男,1974年生,博士研究 [5]夏洪山,许峰.分布式实时系统中的多Agent调度 生,副教授,主要研究方向为智能控制、 [J].南京航空航天大学学报,2004,36(3):302307. 数字化纺织服装、智能决策与分析等. XIA Hongshan,XU Feng.Multi-Agent scheduling in dis- tributed real-time systems[J].Journal of Nangjing Universi- ty of Aeronautics Astronautics,2004,36(3):302-307