首页 基于Multi-Agent的煤矿安全监控系统研究硕士毕业论文

基于Multi-Agent的煤矿安全监控系统研究硕士毕业论文

举报
开通vip

基于Multi-Agent的煤矿安全监控系统研究硕士毕业论文 硕 士 学 位 论 文 基于Multi-Agent的煤矿安全监控系统研究A Dissertation in control theory and control engineering Study of coal mine safety monitoring system based on Multi-Agent Candidate: Wang Chunling Supervisor: Huang Yourui School of electric and information enginee...

基于Multi-Agent的煤矿安全监控系统研究硕士毕业论文
硕 士 学 位 论 文 基于Multi-Agent的煤矿安全监控系统研究A Dissertation in control theory and control engineering Study of coal mine safety monitoring system based on Multi-Agent Candidate: Wang Chunling Supervisor: Huang Yourui School of electric and information engineering AnHui University of Science and Technology No.168, Shungeng Road, Huainan ,232001,P.R.CHINA 独 创 性 声 明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方以外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 安徽理工大学 或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名:___________ 日期:____年___月___日 学位论文版权使用授权书 本学位论文作者完全了解 安徽理工大学 有保留、使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属于 安徽理工大学 。学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权 安徽理工大学 可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后适用本授权书) 学位论文作者签名: 签字日期: 年 月 日 导师签名: 签字日期: 年 月 日 摘要 煤炭占我国一次能源消费比例的绝大部分,在国民经济建设中具有举足轻重的地位。随着煤矿安全要求越来越高,新的技术将越来越多的应用在煤矿安全监控系统,Agent的高可靠性和灵敏性,对煤矿安全监控系统有着至关重要的作用,其强集成性和智能性,有利于优化煤矿安全监控系统结构、减少冗繁的数据处理,基于多Agent技术的煤矿安全监控系统在煤矿上将表现出更强适用性和先进性。本文基于Agent技术建立煤矿安全监控系统,进行了以下研究并取得了较好的成果。 (1)系统结构研究 设计了基于多Agent的煤矿安全监控系统模型,该模型由人机界面Agent、主控Agent、管理Agent和监测Agent组成,监测Agent包括瓦斯Agent,温湿度Agent,COAgent和风速Agent。主控Agent和管理Agent之间通过以太网进行通信,管理Agent和监控Agent之间通过无线网络技术进行通信,这四类Agent之间相互协调和合作共同完成煤矿井下安全监控任务。 (2)仿真系统实现 Agent拥有较多的开发平台,本文选取JADE(Java Agent Development Framework)仿真平台与Eclipse开发平台集成,Eclipse开发平台采用JAVA语言进行开发,JADE仿真平台为仿真系统提供了交互协议和合作模型,两种平台互相协作,构成多Agent的仿真系统。把多Agent技术应用到煤矿安全监控领域,充分利用Agent的自治、合作和自适应性;开发了基于Multi-Agent的原型煤矿安全监控仿真系统,并证明了该监测 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 的有效性。 (3)软硬件设计 根据多Agent的煤矿安全监控系统模型,从硬件和软件两方面设计了管理Agent和监测Agent。硬件方面,设计研发了无线网络模块、以太网模块、瓦斯传感器模块、温湿度传感器模块、CO传感器模块和风速传感器模块。在软件方面,实现了无线网络与以太网相结合的通讯方式,保证了多Agent系统的通讯能力。通过硬件和软件的结合,系统采用模块化设计,可以有效地提高数据传输的实时性和可靠性,从而提高了煤矿安全监控系统的及时性和准确性。 综上所述,本文开发的多Agent的应用于煤矿安全监控的系统具有模块化、智能性、网络化、安装方便的特点,在煤矿安全监控领域有一定的实用价值,值得在煤矿安全监控领域推广。 图[50] 表[5] 参[60] 关键词:多Agent煤矿安全监控系统,JADE,及时性,准确性 分类号:TN393.2 Abstract Coal accounts for the vast majority of our primary energy consumption ratio in our country,has pivotal status in the national economy construction. With the increasingly high demand for coal mine safety, the new technology will be more and more applied in the coal mine safety monitoring system. The high reliability and sensitivity of Agent are crucial to coal mine safety monitoring system. And its strong integrity and intelligence is beneficial to optimizing the system structure and reducing the complicated data processing. Coal mine safety monitoring system based on Multi-Agent technology in coal mine generally will show stronger applicability and advancement. Based on Agent technology, this paper established coal mine safety monitoring system and carried out the following research and have achieved good results. (1) the study of system structure Study the characteristics of single Agent and structure, designed the model of coal mine safety monitoring system based on multiple Agents. The model consists of man-machine interface Agent, main control Agent, management Agent and monitoring Agent. The main control Agent contacts with management Agent through the Ethernet and through the wireless network technology to communicate for management Agent and monitoring Agent. Mutual coordination and cooperation among the four types of Agents can finish the coal mine safety monitoring task. (2) the realization of simulation system Agent has many development platforms. This article selects JADE (Java Agent Development Framework) and the Eclipse platform to integrate. The Eclipse development platform using the JAVA language to develop, JADE simulation platform for simulation system provides a communication protocol and the cooperation model. Two kinds of programming language collaborate with each other and then constitute a multi Agents system. The multi Agent technology is applied in the field of coal mine safety monitoring. This makes full use of the Agent's autonomy, cooperation and adaptability. Developed a prototype of coal mine safety monitoring system based on Multi - Agent, and the effectiveness of the proposed monitoring method is proved. (3) the designs of software and hardware According to the designed monitoring system model , from the aspects of hardware and software designed management Agent and monitoring Agent. In the aspect of hardware,designed and developed the wireless network module,Ethernet module,sensor module and other modules. In the aspect of hardware, realized the communication method between wireless network and Ethernet, ensure the ability of communication of multi Agent system. Through the combination of hardware and software,the system adopts modular design, can effectively improve the real-time performance and reliability of data transmission, so as to improve the timeliness and accuracy of the coal mine safety monitoring system. To sum up,the multi Agent applied to coal mine safety monitoring system is modular, intelligent, networked, and can conveniently installed. Has certain practical value in the field of coal mine safety monitoring and is worth popularizing in coal mine safety monitoring field. Figure[50] Table[5] Reference[60] Keywords: multi Agent of coal mine safety monitoring system, JADE, timeliness, accuracy 目录 摘要 I Abstract III 1 绪 论 1 1.1研究背景及意义 1 1.2煤矿安全监控系统发展现状 2 1.3研究目标与研究内容 3 1.4论文组织安排 4 2基于多Agent的煤矿安全监控系统结构 7 2.1 Agent的定义与特征 7 2.2多Agent系统 8 2.2.1多Agent系统的组织结构 8 2.2.2多Agent系统的通信机制 10 2.3基于多Agent的煤矿安全监控系统结构 12 2.3.1基于多Agent的煤矿安全监控系统模型设计 12 2.3.2系统的工作流程 15 2.4 Agent间通信与协作 16 2.4.1协作交互算法 17 2.4.2通信语言 18 2.5本章小结 22 3 基于多Agent的煤矿安全监控仿真系统实现 23 3.1JADE 概述 23 3.2仿真系统的关键技术 25 3.2.1 代理类的继承和实现 25 3.2.2 行为类的继承和实现 25 3.2.3 Eclipse平台与JADE平台的集成 28 3.2.4集成平台与数据库交互 29 3.3关键代码 30 3.4Agent间的通信实现 32 3.5仿真结果和分析 33 3.5.1系统运行界面 33 3.5.2仿真结果分析 36 3.6本章小结 36 4 系统的硬件实现 37 4.1管理Agent的硬件设计 37 4.2监测Agent硬件设计 44 4.3 本章小结 49 5 系统软件实现 51 5.1管理Agent的软件设计 51 5.1.1管理Agent的无线网络软件设计 52 5.1.2管理Agent的以太网软件设计 54 5.2监测Agent的软件实现 61 5.3 本章小结 63 6 总结与展望 65 6.1全文总结 65 6.2 进一步展望 65 参考文献 67 致谢 71 作者简介及读研期间主要科研成果 73 Contents Abstrat(in Chinese) I Abstract III 1 Introduction 1 1.1 The research background and significance 1 1.2 The development status of coal mine safety monitoring system 2 1.3 Research targets and contents 3 1.4 The struction of this paper 4 2 Coal mine safety monitoring and control structure based on multi Agent 7 2.1 The definition and characteristics of Agent 7 2.2 Multi- Agent system 8 2.2.1 The organizational structure of multi- Agent system 8 2.2.2 The communication mechanism of multi Agent system 10 2.3 Coal mine safety monitoring system structure based on multi Agent 12 2.3.1 Design of coal mine safety monitoring system model based on MAS 12 2.3.2 The working flow of the system 15 2.4 Communication and cooperation among Agent 16 2.4.1 Collaborative interaction algorithm 17 2.4.2 Communication language 18 2.5 Chapter summary 22 3 Implementation of the coalmine safety monitoring simulation system based on MAS 23 3.1 JADE summary 23 3.2 The key techniques of simulation system 25 3.2.1 the implementation of the proxy class 25 3.2.2 implementation inheritance behavior class 25 3.2.3 Integrated Eclipse platform and JADE platform 28 3.2.4 Integrated platform and database interaction 29 3.3 Key code 30 3.4 The realization of communication among Agent 32 3.5 The simulation results and analysis 33 3.5.1 The system interface 33 3.5.2 The analysis of simulation results 36 3.6 Chapter summary 36 4 The realization of hardware system 37 4.1 The hardware design of management Agent 37 4.2 The hardware design of monitor Agent 44 4.3 Chapter summary 49 5 The realization of system software 51 5.1 The software design of management Agent 51 5.1.1 Wireless network software design of management Agent 52 5.1.2 Ethernet software design of management Agent 54 5.2 The software design of monitor Agent 61 5.3 Chapter summary 63 6 Summary and prosprct 65 6.1 Full summary 65 6.2 Work prosprct 65 Reference 67 Acknowledgements 71 Author introduction and main scientific research achievements 73 1 绪 论 1.1研究背景及意义 “贫油富煤少气”是我国化石能源结构基本现状,煤炭是我国的支柱能源,并且将长期支撑我国国民经济建设和社会、经济、文化发展,关系到国计民生具有较高的战略地位[1-2]。矿井生产安全不仅直接关系到井下人员人身安全,而且对社会稳定及当地经济发展具有重要影响[3-4]。目前我国煤炭生产以井工开采的方式为主,生产环境复杂、条件恶劣,而井下作业人员多、施工空间小、劳动密集,所以保障矿井生产安全尤为重要[5]。经过国家多年来对煤矿安全的投入,煤炭行业的安全状况有了明显的改善,但是我国煤矿企业由于建设年代、所属企业性质不同,安全设施及系统水平参差不齐,井下伤亡时有发生。2012年我国煤矿百万吨死亡率首次降至0.5以下达到0.374,但是事故仍然造成了1300人左右的死亡。而早在2000年,南非煤矿百万吨死亡率仅为 0.13,波兰为 0.26,美国近十几年来煤矿死亡人数甚至都在30人/年以下,可见中国煤矿安全形势依旧十分严峻[6-8]。煤矿安全事故频繁发生,夺取了无数采矿工人的宝贵生命,也摧毁了无数幸福的家庭。由于矿难导致的企业与工人家庭的纠纷也层出不穷,给社会的稳定和谐带来不安定因素,与我国和谐社会的目标相违背也严重影响中国的国际形象和地位[9]。矿难造成的巨大经济损失,更是煤炭企业、社会经济发展的不可承受之重。我国处于亚洲板块东部边缘,长期的地质板块运动导致煤层赋存条件复杂多变、地质构造较发育。煤层由于沉积年代不同,自然发火期、瓦斯含量、顶底板条件、地温、地压等条件各不相同,致使煤矿生产环境复杂多变,安全问题频繁发生。所以更加科学、系统、完善的矿井安全监测系统,对于改善我国煤炭安全生产落后现状,具有极其重要的作用。所以如何将新技术、新工艺、先进的安全监测系统等应用到煤矿 安全管理 企业安全管理考核细则加油站安全管理机构环境和安全管理程序安全管理考核细则外来器械及植入物管理 系统中,预防并减少各种安全事故的发生,是当前煤炭工业亟需解决的问题[10-11]。 为了有效掌控井下环境,煤矿井巷、硐室、工作面等地点安置了种类、数量众多的传感器节点,包括瓦斯、CO浓度 检测 工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训 传感器、风速、温度测量传感器等[12] [13]。然而,多种监测系统网络往往相互独立,在井下狭小的环境占据大量空间,为生产带来诸多不便;同时由于井下环境复杂、条件恶劣,单一传感器受到温度、湿度、粉尘等的影响可能出现失效或探测不精确,使系统无法对真实条件做出反应,严重时甚至导致灾难的发生。现有系统的请求/问答式监测系统传输了大量无效数据,增加了网络结构,降低了系统安全性和可靠性[14-15]。为了能够更好解决上述问题,本文将Agent (智能代理)技术引入煤矿安全监控领域。 Agent技术起源于20世纪70年代,涉及到众多领域的内容,包括人工智能、信息检索、计算机网络、数据库、数据挖掘、自然语言处理等理论和技术,其核心是对人工智能(Al,ArtifiCialIntelligence)的研究[16]。计算机网络和基于网络分布式计算技术的迅猛发展,带动了Agent技术的研究和应用,使之成为人工智能领域研究的前沿领域及重点拓展方向[17-18]。Agent是一种在某一环境感知环境中成分或条件变化,可以灵活、自主地产生反应进行在预定设计目标下计算的实体或程序[19]。而在同一环境中进行多种因素和变量的监测,就需要引入多Agent系统技术,其不但要求Agent自身的自主性、智能性,还要求Agent之间能够智能和自组织的交流。多Agent理论产生之后,凭借其自主性、智能性的特点,迅速在各领域得到广泛应用[20]。然而,多Agent技术在煤矿安全监控系统中的应用仍在空白,因而填补这一空白,将对煤矿安全监控领域的发展具有非常重要的意义。 本文的研究内容就是在多Agent理论和技术的基础上,设计一套煤矿安全监控系统,包括人机界面Agent、主控Agent、管理Agent和监测Agent[21]。为煤矿井下的生产环境提供集成度高、质量可靠的监控系统,提高煤矿综合管理环境及生产安全率,为取得良好经济效益和社会效益打下坚实基础。 1.2煤矿安全监控系统发展现状 由于欧美国家在计算机、电气自动化、控制技术等方面科学技术的发展,使得其能在煤矿安全监控系统领域走在世界前列。自20世纪60年代,初代煤矿安全监控系统问世,半个世纪以来已经产生了四代[22]。初代检测系统得益于空分制信号传输技术的发展,法国作为传统的工业强国研制出了CTT63/40系统,成为了这代系统的典型之作[23];随后二战后的西德在继承了其德国先进电气通信技术的基础上,采用了频分制的信号传输技术大大简化了数据传输线路,研制了二代监控系统,使TST系统的良好口碑成就了西德西门子公司[24];第三代产品利用时分制的信号传输方式,采用这一技术进一步简化了系统结构、提高了抗干扰性能,英、美、西德在此领域皆有长足的发展并取得了较高成就[25];第四代产品的时分制的传输模式使系统具有开放性、集成性和网络化特征,美国MSA公司DAN6400系统和加拿大Senturion 600 型系统是这代系统的最高水平[26]。是采用频平系统传输模式,我国于上世纪80年代先后从欧美国家引进了多种矿井安全监控系统,并成功在多个国有矿业集团中得到应用[27]。引进并应用的同时,各大研究机构在这些系统的基础上,继续开发创新开发出了KJ2和KJ4系统;随着国内研发水平、电子技术、通信技术、计算机及制造工艺、精度等的提高,满足煤矿企业安全生产需求,各大煤矿设计院、研究院,矿业类院校及具有研发能力的煤炭企业,陆续开发出KJ90、KJ101、KJF2000等一批具有先进水平的监控系统[28]。这些系统装备到国内大中型煤矿企业中,取得了较好的监测效果,为煤矿安全生产提供了有利保障。目前,国内开发的煤矿监测监控系统可以对甲烷、风速、温度、煤尘等进行精确监测,能完成监测结果的及时传输,使监控控制系统快速反应,实现闭锁及电力控制;对于生产设备的运行状态进行监控,及时发现并处理设备故障;使用互联网连接煤矿监测系统及省、市煤矿安全检查部门,实现矿井生产安全监测的透明、即时监测[29]。当前,国内自主研发的安全监测监控系统较多,但用途各异集成性较差,各研发生产单位技术水平良莠不齐,监测精度及可靠性也存在较大差异,综述安全监测现状与煤矿安全高效生产需求存在较大差距,主要问题体现在以下四个方面: (1)煤矿井下传感器由于设计、生产等技术水平不同,导致监测精度、抗干扰能力各不相同,同时不同环境因素的监测有不同的传感器节点及网络,其可靠性及性能有待改善。 (2)煤矿井下安全监控系统多采用有线传输,网络布置复杂,在井下狭窄的生产环境中影响生产,并极易导致系统的破坏。 (3)现有煤矿安全监控系统主要采用请求/问答式的监控模式,只能实现监控信息的的简单采集和报警,其在事故预警、应急救援的决策支持和信息保障功能性差,不具有智能监控和选择性传输能力。 (4)煤矿安全事故发生后,现有煤矿安全监控系统无法提供足够的救援信息,包括井下各类人员的数量、分布、位置,及事故发生地的地质结构等信息。 随着国民经济快速发展,国家对煤矿生产安全要求的不断提高,现有煤矿井下安全监控系统存在的种种不足之处,日益受到安全监督管理部门乃至整个社会的重视。设计一套可以满足煤矿安全生产需求,具有自主性、智能性、高集成性、高可靠性的井下综合监控系统,对于推进矿井安全生产建设十分重要,而多Agent技术为新型煤矿安全监控系统的产生提供了新的技术支持。 1.3研究目标与研究内容 通过以上对现有煤矿监控系统的现状和发展的分析,提出基于多Agent技术的监控系统,充分利用多Agent系统“能够实时、动态、自主地与不断变化着的外部环境进行交互”的性质,对井下环境进行监测并及时反应,采取有效措施避免灾害事故的发生。所以本文的主要研究内容为: 1、建立基于多Agent理论的煤矿安全监控系统模型 采用多Agent理论及技术,结合煤矿井下特殊的温度、湿度、空间等环境特点,建立基于多Agent理论的煤矿安全控制系统。本系统中的Agent具有多个类型负责多种任务,每个Agent都具有学习、记忆等智能属性,通过它们之间的交互协作来共同完成煤矿安全监控的任务。 2、监控系统内部的通信协调机制的确定 多Agent系统中的各Agent之间具有交互、协调性,这是智能体技术最具特色的地方,也是本系统的最大优势。通过多个Agent之间的协商交互等对传感器节点采集的数据进行分析处理,实现对杂问题的优化。其中Agent的交互语言是交互协调的关键,本文选用FIPI-ACL通信语言建立它们之间的通信协调及交互。 3、系统的硬件和软件实现 整个多Agent的煤矿安全监控系统的,硬件方面主要包括芯片的选择和几大功能模块如无线网络模块、以太网模块、传感器模块的设计,以及独立模块设计和模块与模块之间的通信设计,软件方面的实现主要是和硬件部分相吻合的,主要的是实现不同模块之间的通信,即监测Agent和管理Agent的无线通信以及管理Agent和主控Agent之间的以太网通信。通过硬件和软件的结合,系统采用模块化设计,可以有效地提高数据传输的实时性和可靠性,从而提高了煤矿安全监控系统的及时性和准确性。 1.4论文组织安排 本文主要分为六章,具体内容安排如下: 第一章绪论主要介绍本课题研究背景及意义,对国内外研究现状煤矿安全监测系统进行总结,提出研究思路及内容,并对本文主要章节进行介绍。 第二章基于多Agent的煤矿安全监控结构。对Agent的定义和特点及多Agent系统的组织结构、通信机制和协作机制进行阐述,在Agent的理论基础上设计了基于多Agent的煤矿安全监控系统模型,并详细阐述了系统的工作流程及多Agent之间通信语言和交互算法。 第三章基于多Agent的煤矿安全监控仿真系统实现。对前面设计的多Agent煤矿安全监控系统模型在JADE平台进行实现。 第四章系统的硬件设计与实现。首先分析了多Agent系统中管理Agent、监测Agent功能。然后依据管理Agent、监测Agent功能需求,依次进行了管理Agent、监测Agent的硬件设计,包括微处理器的选择、无线网络模块、以太网模块、环境信息采集模块、电源模块几个各模块之间的相互通信的设计。 第五章系统的软件设计与实现。在第四章的基础上,从软件的方面对主体Agent进行设计与实现。因为通信、协作能力是多Agent系统的主要特征,从无线网络和以太网入手,介绍了主体Agent的软件设计流程及相关程序。 第六章总结与研究展望。对本文研究进行总结,并提出了研究仍存在的不足和今后的研究方向。 2基于多Agent的煤矿安全监控系统结构 2.1 Agent的定义与特征 现在,Agent一词在各大行业的新领域中得到广泛使用,但由于其涉及的内容丰富,在定义的确定中存在较大争议,仍没有一个统一而 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 的概念。出现上述的原因是因为不用学科、不同领域内都会出现Agent技术,像人工智能领域、分布式计算领域、网络领域、数据库领域等等[30-31]。因此我们可以从多个方面对Agent进行下定义,以此来研究Agent的特点。我觉得Agent可以定义为:Agent就是在不同的环境中,能够自主的、机灵的设计自己的行为目标,到达满足我们设定的目标的计算机系统。 Agent的结构如图1所示,通过传感器像人的五官一样感受外界环境,效应器像人的肢体一样作用于外界环境,达到自主智能的效果。 图1 Agent的内部结构示意图 Fig1 the internal structure of the Agent 以图1的结构为例,利用多种传感器收集相应矿井巷道环境的信息,诸如瓦斯浓度、CO浓度、温湿度和风速等参数,传感器采集到的环境信息按照知识库和反应库之前定过的标准进行对比分析,将处理后的信息通过效应器作用于环境或者其他Agent。一旦煤矿井下坏境信息超限,效应器立刻利用声光报警器,发出声光报警。Agent应该还具有通信功能,例如Agent与其他Agent、Agent与各基站、Agent与主站的通信功能。这一基本功能是Agent之间进行协商、合作、反应的重要前提,在多Agent系统中极为关键。 通常,Agent具备以下特性: 1、反应性:Agent对自身所在环境具有感知能力,包括物理环境,可以通过及时的分析和处理对环境中变化因素做出即使的反应。 2、自治性:Agent运行过程中,能自行控制自身的行为、其内部状态也具有各自独特的稳定结构,不受人为和其他智能体影响[32]。 3、社会性:Agent与其他Agent构成一个多Agent系统,系统中的Agent之间是互相帮助、除了完成自己的任务外还帮助其他Agent完成一些任务[33]。 4、主动性:Agent对环境的反应是积极的,有针对性的,有目标的,自主的去实现目标[34]。 2.2多Agent系统 从2.1节我们知道单个Agent具有反应性、自治性、社会性和主动性等优点,但是在面对一项很巨大的任务时,凭借单个Agent的能力还是解决不了巨大的问题,这个时候多Agent系统就应运而生。系统内的单个Agent是独立自主的,但是它们不能独立完整的整个复杂的任务,Agent之间互相协调、互相合作共同完成一项单个Agent无法完成的任务[35]。 2.2.1多Agent系统的组织构成 多Agent系统的组织构成主要包括Agent之间的通信和控制模式,不同的组织结构,组织结构内Agent表现的属性也是不相同的,比如Agent的自适应性、自主性、一致性、协调模式和通信方式等[36]。选择什么样的组织结构不但决定了多 Agent系统中Agent 之间的协作与控制关系,也决定了系统中信息的交互和存储方式。通常情况下,按照多Agent组中各Agent成员间相互组织与控制关系可将组织结构分为集中式、分布式和混合式三种,对于我们目前的现实的系统来看,所有的多 Agent系统的组织结构都是分布式[37]。 (l) 集中式结构 集中式结构的多个Agent,必然存在一个可掌控全局的单个特定Agent,对其余的Agent实施管理和指挥。这个多Agent组成一个整体,称为一个单元,多Agent系统由多个单元组成,也必然存在一个可掌控全局的特定单元,对其他单元进行管理,如图2所示为一个集中式多Agent单元 [38]。 图2 集中式Agent 体系结构 Fig2 centralized Agent architecture (2)分布式结构 各Agent单元之间和单元内各Agent均采用此结构,无论是Agent 单元还是 单个Agent间是平等互助的关系,并在某一机制下学习合作。分布式结构中通常需要借助中介服务机构服务于Agent 成员。这种结构的Agent之间没有从属关系,协调互助完成任务,适于松散协调的的工作方式。分布式结构如下图3所示[39]。 图3 分布式Agent 体系结构 Fig3 distributed Agent architecture (3)混合式结构 混合式由集中式和分布式结构混合而成,结合了两种结构的特点。在结构中能够设置管理 Agent对部分Agent强化控制,但总的分布形式是分布式的。混合结构既可以克服分布式结构中Agent“自我中心”导致的协作冲突,又避免了集中式结构Agent不善于自主灵活控制的问题。它集两种结构优点于一体,又最大程度克服两种结构的缺点,是大多数Agent系统优先选择的结构模式,结构体系如下图4所示[40]。 图4混合式Agent体系结构 Fig4 the hybrid Agent architecture 2.2.2多Agent系统的通信机制 在多Agent系统中,Agent之间的交互和协作,不但要求Agent具有用于描述Agent协作的意图和内容通信语言,还需要相应的方式以便用Agent通信语言所描述的消息从一个Agent传递到另外一个Agent,从而实现Agent之间的交互。Agent之间通信方式有以下三种:黑板模式、消息传递模式和邮箱模式。 (1)消息传递(Message passing)模式 消息传递通信方式如下图5所示,信息的传递通道是Agent通信的基础,必须最先建立。通到两端的Agent可以发送也可以接收消息,所以消息传递具有双向性和对等性。 图5 消息传递通信方式 Fig5 message passing communication (2)黑板(Blackboard)模式 下图6即为黑板通信方式,进行信息传递的一组多个Agent有一个共享区域黑板,这组中所有Agent都能够向该区域写入或读取信息,实现Agent之间的通信。 图6 黑板通信方式 Fig6 the blackboard communication (3)邮箱方式 邮箱通信方式的Agent之间,需要建立多个Agent共有的邮件传输通道。消息传输时,需要先将消息打包成邮件,由发送消息的Agent向接收消息的Agent邮箱中发送。作为接收消息的Agent可以随时访问自己的邮箱,处理邮件查看传输的消息,实现个Agent之间的通信。 表1几种典型通信方式的比较 Tab1 comparison of several typical communication modes 通信方式 消息传递 黑板 邮箱 是否需要通信信道 需要 不需要 需要 通道的持续性 持续或者暂时 暂时 接收确认 有 无 无 共享性 不共享 共享 共享 保密性 较好 差 一般 实时性 好 一般 差 典型例子 基于TCP/IP的消息传递,手机通信 基于黑板的教学 电子邮件系统 2.3基于多Agent的煤矿安全监控系统结构 煤矿安全监控系统本身具有分布性,由三个在数据、控制及资源方面都具有独立性的子监控系统构成。现阶段的煤矿安全监控系统经历了几十年的发展,在网络布置、硬件设计制造、软件开发等方面得到了长足的积累,为引入多Agent技术建立的安全监测系统提供了良好的基础。良好的技术基础使现有系统通过较小的改进就能够封装成一个Agent,在它们的有机组合及协调合作实现对整个煤矿生产安全的监控。其次Agent具有自治性和社会性等独特性质,这些特性为其能够实现复杂、庞大的监控系统提供了有力保障。当前煤矿井下监测系统由于传感器种类众多,系统布置复杂,因此异构性极强,因此Agent技术恰好是解决这一问题的强有力工具。与此同时,Agent的智能性也是煤矿安全监测系统迫切需要的,系统自主处理冗余信息,作出正确决策,有利于减少操作人员工作强度,更加迅速地对突发情况作出反应。所以,Agent技术成功应用于煤矿安全监控系统,可能够充分利用Agent的各种特点,满足煤矿安全的监控要求。 2.3.1基于多Agent的煤矿安全监控系统模型设计 本章基于上节多Agent技术及理论的分析,对多Agent的煤矿安全监控系统设计进行探讨。本系统按照监控系统级别可分为人机界面Agent、主控Agent、管理Agent和监测Agent。这种基于多Agent的煤矿监控系统与现有的煤矿井下监控系统是相匹配的,各Agent通过互相协同帮助共同完成来自监控系统的需求。各Agent的具体功能如下。 图7 多Agent煤矿安全监控系统模型 Fig7 coal mine safety monitoring system model of multi -Agent 人机界面Agent是用户与煤矿安全监控系统进行交互的接口,为用户提供对监控系统监控和管理的接口,协助用户与整个监控系统的交互。用户通过人机界面Agent为多Agent的煤矿安全监控系统提供任务,它接收用户的请求,将任务发送给主控Agent,最后主控Agent将执行的结果反馈给人机界面Agent,人机界面Agent的作用是人机界面Agent的主要功能是对各类信息的输入和显示、收集来自操作人员对系统发布的命令,根据操作人员需要,按照预先设定的路线执行监控任务,交给主控Agent执行。如:在本平台中人机界面Agent应具有用户查询煤矿危险信息,危险信息单打印,统计分析,危险信息处理功能。 主控Agent实际上是一台PC机,负责对整个煤矿安全监控区域内的所有Agent进行监测和控制,同时建立数据库。主控Agent主要用于对井下环境信息(瓦斯,CO、温度、压力)进行远程监控;实现网络传输和网络资源的共享;它主要有俩个功能:一方面接收系统的任务,另一方面对来自各管理Agent的信息进行分析处理,将处理后的结果反馈给人机界面Agent,通过人机界面Agent反馈给用户,一旦出现危险,及时将危险信息发送给相应的管理人员,完成对煤矿监控系统的实时监控。 管理Agent位于各终端监测Agent和主控Agent之间,在整个系统中的作用是组织协调控制的功能,同时是井下安全监控与地面监控中心之间的传输枢纽,一方面完成无线网络的组建、运行、维护,对监控区域内的监测Agent进行控制,完成对井下环境信息的采集与处理,另一方面利用以太网技术与主控Agent进行通信,把处理后的信息传给主控Agent。煤矿安全监控系统能否实现煤矿井下环境信息的实时采集取决于管理Agent能否有效地工作,管理Agent在煤矿安全监控中起到了决定的作用。 监测Agent接收到管理Agent的请求后,执行来自主控Agent的监控任务,然后将采集的煤矿井下环境信息发送给管理Agent,完成对瓦斯浓度、CO含量、温湿度和风速等信息的实时监控。监测Agent有以下几种,分别是瓦斯Agent、CO Agent、温度Agent、风速Agent,它们的作用是用于对煤矿井下危险环境信息进行实时监控。监测Agent一方面完成煤矿生产过程中对危险源的信息进行实时采集、检测和处理,另一方面是进行初步分析和预测,并对生产过程可能发生的危险做出判断,并向管理Agent进行汇报。 本文提出的多Agent的煤矿安全监控系统的突出特点很多,为了便于直观的观察,列表如下。 表2 多Agent的煤矿安全监控系统突出特点 Tab2 coal mine safety monitoring system features of Multi- Agent 模块性 各Agent独立工作,但又统一在一个系统中,能够根据环境和资源重构数据处理系统。 智能型 Agent拥有知识库,根据知识解决局部问题,各Agent之间通过协商完成全局任务。 动态性 能根据环境的变化,利用现有的资源,动态的组织单元来完成任务,实现组织结构的动态性,最大限度地满足要求。 柔性 使得数据处理系统能够有效地响应数据结构的格式变化、传输地址更新以及其他各种例外事件的能力,从而提供控制系统的柔性。 自主性 各单元Agent之间既合作又竞争,增强了Agent的自主性和系统的开放性。 开放性 多Agent系统是一个非常开放的系统,其结构只具有相对稳定性。它因任务而产生,也因任务的结束而解散,即使在任务的执行过程中,也可根据情况的变化而增加或删除某些Agent。 2.3.2 系统的工作流程 系统的流程图如下图8所述。 图8 多Agent的煤矿安全监控系统工作过程 Fig8 coal mine safety monitoring system for the working process of multi Agent the working process of coal mine safety monitoring system of multi Agent 整个系统的工作过程可以详细的描述如下。 Setp1 用户通过人机界面Agent向主控Agent发布对煤矿井下环境信息进行监控的请求信息,发布的信息具有一定的格式,便于检索和浏览; Setp2 人机界面Agent了解用户偏好,并详细描述用户需求,并将描述的需求信息转发给主控Agent。 Setp3主控Agent对用户需求进行任务分析,确定系统其他Agent的任务并激活完成任务所涉及的Agent,并负责整个多Agent系统的资源分配。 Setp4主控Agent分解任务后,通过查询其控制的管理Agent是否有完成分解以后的子任务的能力。 Setp5当主控Agent发现其控制的管理Agent不具备完成用户的任务的能力,则反馈给用户,无法完成任务。 Setp6当主控Agent发现其控制的管理Agent能完成任务,则将任务分配给适合的管理Agent。 Setp7启动系统, Setp8管理Agent召集自己管理的监测Agent, Setp9管理Agent将自己的任务进行分解,再根据监测Agent与任务的匹配度,将分解后的子任务分配给适合的监测Agent来完成,监测Agent通过互动机制与其管理Agent进行协作来完成自己的任务,实现信息和资源的共享。 Setp10当某个管理Agent(例如:管理Agent2)发生故障时,主控Agent首先根据检测到的故障信息做出相应的诊断决策,然后将管理Agent的控制权限转交给其它管理Agent或者进行任务的重新分配,从而使整个系统仍能正常执行。这样就实现了依靠各Agent之间的协作来提高整个系统的可靠性,而不是通过单个Agent的可靠性的冗余。 Setp11监测Agent完成来自管理Agent的分配任务后,将自己采集到的煤矿井下信息(例如瓦斯信息)反馈给自己控制的管理Agent, Setp12管理Agent将来自自己控制的监测Agent的信息进行融合处理,将处理后的干净、准确、简化的信息通过工业以太网发送给主控Agent,同时查询知识库的知识,当发现自己管辖区域煤矿环境危险时(例如:瓦斯超限)时,立即报警,并将危险信息反馈给主控Agent,由主控通知相关工作人员处理。。 Setp13主控Agent将来自自己控制的管理Agent的信息进行融合处理,处理后反馈给人机交互Agent,同时根据知识库的知识进行判断,当发现煤矿环境危险时,立即报警,并通知相关工作人员处理。 Setp14人机交互Agent将监控到的煤矿井下复杂的环境信息反馈个用户或者相关管理人员。 2.4 Agent间通信与协作 在多Agent系统中,因为各Agent之间由于其结构和行为的相关性,他们之间的通信及协作存在相互推动作用,也存在相互的影响,必须对这些通信及协作进行协调管理才能保证系统运行正常[32]。Agent间的协作通过通信实现,所以Agent的成功协作,需要在他们之间建立通信机制、通信语言和信息表示形式。如图9所示就是Agent之间的通信结构图。 图9 Agent之间交互与协作模型 Fig9 interaction and cooperation model between Agents 由于煤矿井下环境信息复杂,单个Agent的智能性有限,受煤矿井下环境条件的约束无法完成煤矿井下环境信息的监控,因此需要考虑多个Agent间的协调与合作。在煤矿监控环境中,由于每个Agent的属性是不一样的,因此要选择最佳的Agent来完成监测任务,例如考虑Agent的资源利用率高的因素,这就是Agent的协调问题。在复杂的监测问题及监测系统中,必须基于多Agent的理论和技术,必须对复杂问题分解并运用多种方法进行监测,这就是多Agent如何使用的问题。为了实现煤矿安全监控任务,需要所有Agent的团结协作,因此要求Agent之间对彼此的功能、效率充分了解。在系统设计时,必须收集、归纳所有Agent的资料集中于数据库内,实际情况变化时Agent能够对涉及自身的数据进行修改,并重新寻找合作对象解决问题。 2.4.1协作交互算法 Agent的行为通过协作交互算法表现出来,其中既包括单个Agent行为又包括由多个Agent合作的行为。它采用传递函数,实现各Agent间的信息交换,多Agent系统中问题求解过程中协作交互算法如下所示。 设A为所有Agent的集合,A = {a1,a2,…,an},则Ai,Aj表示A的不同的子集,Ai,Aj∈A。具体的交互算法如下流程图所示。 图10交互算法流程图 Fig10 flow chart of interactive algorithm 2.4.2通信语言 本文设计的多Agent的煤矿安全监控系统中各Agent之间使用FIPA规范的通讯语言进行信息的交互,Agent间的通信机制层次模型如下图11所示。 图11 遵循FIPA规范的Agent间的通信模型 Fig11 the communication model between Agents following the FIPA specification 该模型自底向上:共分7层:网络基础设施层、传输层、报文传输协议层、消息封装层、Agent通信语言层、内容语言层、会话层。 其中,网络基础设施层与传输层属于网络基础知识范畴,本书不作赘述。下面对其他层次做以介绍。 1、保报文传输协议层(Message Transport Protocol) 报文传输协议层对Agent间的消息传输做出了下列规定: (1)每个Agent的名字都是唯一的、固定的; (2)每个Agent都对应一个或者多个传输描述(transport description),用来描述与传输相关的消息,如传输的种类、传输地址等。 (3)每一个传输描述都与一种传输形式相关,如IIOP、SMTP等。 2、消息封装层(Message Envelope) 消息封装层负责在消息传送时将消息封装成消息的有效负载payload,并加入到消息的传输队列中。消息编码使用适合传输的编码表示机制进行编码。消息的封装过程如图14过程。 3、Agent通信语言层(Agent Communication Language) Agent通信语言层用以表达他关于通信内容的观点及态度、并将其传输给会话方的媒介或工具。 4、内容层(Content Language) 内容层指明消息内容用什么语言来表达,在FIPA规范中,常见的内容语言有SL,CCL,KIF,RDF等。 5、会话层(Conversation) 会话层是Agent用以管理整个会话过程的结果、规则和有关的会话策略。会话由一个或者多个消息组成,遵循Agent交互协议AIP。 Agent之间通信基于言语行为理论,其基本原理是:说话人所说的话语不仅仅陈述一个事实,而且是说话人作出的带有某种意图的动作。消息即表示一种言语行为,用Agent通信语言ACLA编码。可以将消息形式为 其中:i是言语行为的发起,即消息;act表示行为的名称,向听众传达说话人的意图;j是消息的目标受众;c是消息的语义内容。 交际行为也称为原语,是消息的核心,常用的原语有:query、inform、request、agree、refuse等,见表3的说明。 表3消息原语 Tab3 message primitives 消息示例 原语类型 Is the door open? Query Open the door(for me) Request OK!I’ll open the door Agree the door is open Inform I am unable to open the door Failure I will not open the door Refuse Say when the door becomes open Subscribe Anyone wants to open the door cfp(call for proposal) I can open the door for you..at a price Propose Door? What’s that?Don’t understand… not-understood 消息的构成如图12所示。 图12消息的构成 Fig12 the structure of the message 消息结构中的主要参数如表4所列。 表4 ACL 消息中的主要参数 Tab4 the main parameters of ACLmessages 参数 参数的含义 Performative 指明ACL消息的通信动作类型,它是ACL唯一要求的必备参数。 Sender 表明消息的发信者。如以匿名发送,则可以忽略。 Receiver 表明消息的预期接受者。可以不唯一,如隐含在内容中,则可以忽略。 Reply-to 表明这次会话过程中接下来到达的消息将送向哪个Agent。 Content) 制定消息的内容,它的含义将被消息接受者所解释。 Language 制定内容是以什么语言表达的,如果接收者已经知道,则可以忽略。 Encoding 指定内容的编码方式,如忽略,则在封装 ACL 消息的信封中指出。 Ontology 消息本体,双方都能够理解的消息内容的概念说明和语言描述 Protocol 指定 ACL 消息中使用的互操作协议。此参数非空的 ACL 消息被认为是属于同一个会话过程,且必须遵循以下规则: 1协议会话的发起者必须指定一个非空的 Conversation-id 参数; 2在使用相同协议的会话中,接下来的消息都必须包含相同值的Conversation-id 参数。 3在使用相同协议的会话中,必须制定 reply-by 参数来指定下一条消息出现的超时值。 Conversation-id 指定消息所属的会话过程。它必须是全局唯一的。 在构建ACL消息的基础上,实现Agent之间通信。如果两个Agent之间其中一个提供的服务是请求互操作协议(FIPA),那么另一个Agent是此次互操作对话的发起者,它们首次的通信被看作请求互操作协议的第一个请求动作,在ACL库规范中将这一动作描述为request行为,所以ACL的performative参数应为 request。详细的ACL消息如表4所示。 Agent 消息传输的参考模型如图13。 图13消息传输参考模型 Fig13 the message transmitted reference model Agent 将自己要发送的 ACL 数据包经过编码形成有效载荷(Payload),再通过 MTS (Message Transport Service)封装信封(Envelope)发送到目的Agent。 2.5本章小结 Agent是一个抽象的实体,具有反应性、自主性、自适应性和社会性的功能特征,它可以作用于自身和周围环境,并能对周围环境做出反应。与此同时Agent还具有知识和目标,可以和其他Agent进行交互和通信,具有解决问题的能力,在理论的基础上,综合现有的煤矿安全监控系统的物理结构,构建了多Agent的煤矿安全监控系统模型,并详细阐述了多Agent的煤矿安全监控系统的工作流程。 3 基于多Agent的煤矿安全监控仿真系统实现 本章根据前章构建的基于Agent的煤矿安全监控系统模型的总体框架,进行平台系统实现,实现多Agent系统的搭建。 3.1JADE 概述 JADE是一款遵循FIPA准则,采用java语言进行编写的开发平台,JADE平台拥有完善的图形界面,通过界面可以启动、删除、挂起Agent,还可以通过图形界面和其他Agent进行信息的交互[41-42]。每个JADE平台都有一个主容器(Main-Container),每个主容器都有三种特殊的Agent,分别为:图形控制台(RMA)、Agent的管理系统(AMS)、目录服务(DF),三者在系统中都有独特的用途。RMA为管理和控制图形的界面,AMS为智能体提供命名服务,df为其它智能体提供服务,通过JADE平台,可以对我们设计系统中的其他功能Agent注册,如下图14、图15所示。 图14主容器 Fig14Main-Container 图15 JADE图形界面的行为 Fig15 the behavior of JADE GUI 遵守FIPA标准的Agent平台模型如下图16所示。 图16 基于FIPA标准的Agent平台参考结构 Fig16 the Agent platform reference architecture based on FIPA standard 上图16为基于FIPA标准的Agent平台参考结构,展示的依次为Agent的管理系统AMS(Agent Management System),其不但可以访问JADE上的Agent,并可以使用它,当然由于处于管理地位,主要任务还是对Agent监督和控制,对于每一个JADE来说这个管理系统是唯一的。任何一个Agent想要执行相应操作,都需要获得一个特有的AID,这些AID通过在AMS上注册得到。 图16中的目录服务器(DF,Directory Facilitator)是一个在平台中提供默认黄页服务的Agent,即为其它的智能体提供帮助的智能体。智能体可以从DF上执行注册、注销、修改和搜索的行为。 图16中的消息传输系统(MTS,Message Transport System)也称为Agent通信信道,是一个用于控制平台中全部消息交换的软件组件。对于Agent间的通信具有非常重要的作用,Agent间交互的信息就是通过MTS进行传送的。 3.2仿真系统的关键技术 3.2.1 代理类的继承和实现 在MAS的建模过程中,首先需要完成的两个步骤就是Agent的划分、定义和Agent的属性设定,这些步骤都需要通过继承JADE的代理类来完成。 例如通过继承jade.core.Agent类构造了一个名为HelloWorld Agent的类,并且将HelloWorld Agent类的nickname定义为HelloWorld,那么以下将是我们应该看到的代理建立过程(例子中通过jdae.Boot启动JADE平台,通过参数HelloWorld: HelloWorld Agent设定HelloWorld Agent随着平台一块启动,并且它的nickname为HelloWorld)代码如下。 import jade.core.Agent; public class HelloWorldAgent extends Agent { protected void setup() { System.out.println("Hello World! My name is "+getLocalName()); } } 这个最简单的Agent输出“Hello World”后,输出它的名字。 3.2.2 行为类的继承和实现 在JADE中,一个代理默认只能占据一个Java线程,而且代理中的行为都是独占式的,当一个行为处于运行状态时,这个代理的其他行为都无法运行,JADE行为又分为只执行一次的行为,循环执行的行为,和一般的行为。可以将这些行为组合起来以实现更复杂的功能。 1 一次性行为(OneShotBehaviour) 此行为的特点是它的done()方法的返回值永远为True,即action()方法仅执行一次,举例如下。 package jade.core.behaviours; import jade.core.Agent; public abstract class CyclicBehaviour extends SimpleBehaviour { public CyclicBehaviour() { super(); } public CyclicBehaviour(Agent a) { super(a); } public final boolean done() { return false; } } 2 循环执行的行为(Cyclic Behaviour) 此行为的特点是它的done()方法的也必用编程,它的action()方法循环被利用并执行相同的行为,举例如下。 package jade.core.behaviours; import jade.core.Agent; public abstract class CyclicBehaviour extends SimpleBehaviour { public CyclicBehaviour() { super(); } public CyclicBehaviour(Agent a) { super(a); } public final boolean done() { return false; } } 3 一般的行为(Generic Behaviour) 这种类型的行为都包含了一个状态值,并依据这个状态值执行不同的操作。这种行为通常是一个大的switch语句,当满足某个条件时,这个行为就结束了。 例如下所示: private class FourStepBehaviour extends Behaviour { private int step = 1; public void action() { switch (step) { case 1: // Perform operation 1: print out a message System.out.println("Operation 1"); break; case 2: // Perform operation 2: Add a OneShotBehaviour System.out.println("Operation 2. Adding one-shot behaviour"); myAgent.addBehaviour(new OneShotBehaviour(myAgent) { public void action() { System.out.println("One-shot"); } }); break; case 3: // Perform operation 3: print out a message System.out.println("Operation 3"); break; case 4: // Perform operation 3: print out a message System.out.println("Operation 4"); break; } step++; } public boolean done() { return step == 5; } 3.2.3 Eclipse平台与JADE平台的集成 Eclipse是一个能跨平台的采用Java语言开发的,开源代码的开发平台,还具有插件开发环境[43-44],而JADE是一个完全分布式系统,具有灵活的基础设施,通过附加模块进行扩展就可以实现多Agent系统,但是当一个系统复杂时,往往是需要通过编程工具来编程,通过编程工具来启动一个JADE平台,并创建一个JADE运行支撑环境来运行他们,本文借助于Eclipse工具的语言优势,将JADE当做一个中间件来开发的多agent煤矿安全监控仿真系统,JADE提供了一个in-process接口,允许JADE作为一个类库实用,用于从外部程序Eclipse来启动JADE。俩这的集成过程我们用一个例子来介绍,假设我们要通过Eclipse来启动一个Jade,具体过程如下。 (1)下载安装Jade (2)Eclipse下新建一个Java Project,项目名称设置为FirstAgent; (3)导入JADE库文件; 图17 JADE以库的方式插入到Eclipse平台中 Fig17 insert the JADE into the Eclipse platform in the form of libraries (4)创建Agent类文件;编辑代码,选择要覆盖的方法为setup(); INCLUDEPICTURE "Eclipse%20Jade_files/3b109255-c9b3-3730-b805-d1935d0f076b.jpg" \* MERGEFORMAT 图18创建Agent类文件 Fig18 create a Agent class file (5)运行参数配置。 INCLUDEPICTURE "Eclipse%20Jade_files/8ea20db1-7a65-3fc3-b025-636f765b3951.jpg" \* MERGEFORMAT 图19 参数配置 Fig19 parameter configuration (6)运行,在控制台上输出信息,Eclipse和Jade集成成功。 3.2.4集成平台与数据库交互 3.2.3配置好的集成平台直接访问Eclipse平台的数据库进行操作,下面是连接数据库的工具类,其他与数据连接的类可以通过继承此类实现与数据库的连接。过程如下。 Package 包名: Import java.sqL*;’ Public class Connection Db: Static Connection Db: Public ConnectionDb(){ Try{ //注册JDBC驱动,本文是采用JDBC-ODBC方式与数据库相连的 Class.forName(“com.microsoft.jdbc.sqlserver/SQLServerDriver”); String url=”jdbc:” Microsoft: sqlserver://localhost:1433; User=201; Password=******; Database=数据库名; Conn=DriverManager.getConnection(url); } Catch(ClassNotFoundExceptione){ e.printStack Trace(); } Catch(SQL Exceptione1 ) { E1.printStack Trace(); } } } 3.3关键代码 监测Agent主要负责从传感器提取数据后分析处理,然后把处理后的数据信息传递给管理Agent。 Public class Monitor Agent extendsAgent { Private Analysition anal=new Analysition(…); Protected void setup() { addBehaviour(newTickBehaviour(this,3000) { Protected void onTiek() {…; //读取感应器的数据, }; }); } …//其他属性和方法 } 管理Agent完成无线网络组网功能代码如下所示: import jade.core.Agent; import jade.core.AID; import jade.domain.AMSService; import jade.lang.acl.*; import jade.lang.acl.ACLMessage; public class rmsender extends Agent{ protected void setup(){ long i=1000 AMSAgentDescription[]agents=null;//将管理agent控制的agent放在数组agents[]中; AID rams=new AID(“ams@wang-PC:1099/JADE”);设置远程agent的ams,在远程机器上搜索所有的Agent Rams.addAddress(“http:// wang-PC:9987/acc”); Try{ SearchConstraints c=new SearchConstraints(); c.setMaxResults(i); agents= AMSService.search(this,rams,new AMSAgentDescription(),c);} catch(Exception e){System.out.println(e.toString()); e.printStackTrace();} ACLMessage msg new ACLMessage(ACLMessage.INFORM); msg.setContent(“I am trying”); for(int j=0;jProtocol==ARP_ETHCODE) //确认是不是ARP即数据包 {NETWORK_RECEIVE_INITIALIZE(frame->buf_index): if(frame-> frame_slze<(2*MAXHWALEN+2*MAXPRALEN+2+6)) //帧长度小于规定值 {ARP_DEBUGOUT(“Corrupted ARP paeket\n\r”)://输出数据包被破坏 return (TRUE);} …… if(RECEIVE_NETWORK_B()==oxoo) //判断是请求报文还是请求应答报文 {temp=RECEIVE_NETWORK_B()://得到操作吗 if(temp==ARP_REQUEST) //如果是ARP请求报文 {ARP_DEBUGOUT (“ARP REQUEST Received..\n\r”)://输出ARP请求报文收到 arp_send_response();}//发送响应ARP即报文 else if(temp==ARP_REPLY) //如果是请求应答报文 {ARP_DEBUGOUT(“ARP Response Received..\n\r”)://输出ARP请求应答报文己收到 arp_get_response();} //从回应的ARP即数据报中提取数据 }retum(TRUE); }retum(FALSE):} 网络层有IP协议、ICMP协议和IGMP协议,本文采用的是IP协议实现管理Agent和主控Agent之间的IP数据包传递,整个过程是在ATmega128L单片机上完成的。 IP数据报发送流程如图47所示。 图47 IP数据报发送流程图 Fig47 the sending flow chart of the IP datagram IP协议数据报的接收流图如图48所示。 图48 IP数据报接收流程图 Fig48 The receiving flow chart of the IP Paeket flow IP协议提供了两种接口函数process-ip-0ut()和process-ip-in(),process-ip-0ut()接收运输层传来的数据,添加校验和、协议类型等报头后,转交给下一层进行处理。当NE64接收到数据后,数据传送到网络层,就需要运用process--in--in()函数进行解析,其代码如下所示: INT16 process_ip_in (struct Ethernet_frame*frame) {…… If(frame->protocol !=PROTOCOL_IP) //判断是否是IP协议 Return(-1); IP_DEBUGOUT(“It’s IP\n\r”): //输出“It’s IP) …… NETWORK_RECEEIVE_INITALIZE (frame->buf_index)://开始解析IP报头 received_ip_packet.vihl=RECEIVE_NETWORK_B(): if((received_ip_packet.vihl & oxF0)!二0x40)//判断是否是IPV4版本 {IP_DEBUGOUT(“ERROR:IP is not version4!\n\r”): return(-l):} IP_DEBUGOUT (“IP Version 4 OK!\n\r”): …… received_ip_packet.tos =RECEIVE_NETWORK_B();//解析IP报头,解析服务类型 received_ip_packet.tlen =RECEIVE_NETWORK_W();//解析报文长度 received_ip_packet.id =RECEIVE_NETWORK_W();//解析标识符 received_ip_packet.frags = RECEIVE_NETWORK_W()://解析标识符 received_ip_packet.ttl = RECEIVE_NETWORK_B()://解析生存时间 received_ip_packet.protoeol =RECEIVE_NETWORK_B()://解析协议类型 received_ip_packet.checksum =RECEIVE_NETWORK_W();//解析校验和 received_ip_packet.sip =(((UINT32)RECEIVE_NETWORK_B())<<24);//解析IP源地址 received_ip_packet.sip =(((UINT32)RECEIVE_NETWORK_B())<<16); received_ip_packet.sip =(((UINT32)RECEIVE_NETWORK_B())<<8): received_ip_packet.sip= RECEIVE_NETWORK_B(); received_ip_packet.dip =(((UINT32)RECEIVE_NETWORK_ B())<<24): //解析IP目的地址 received_ip_packet.dip =(((UINT32)RECEIVE_NETWORK_ B())<<16): received_ip_packet.dip =(((UINT32)RECEIVE_NETWORK_ B())<<8): received_ip_packet.dip =RECEIVE_NETWORK_B(): …… if((received_ip_packet.dip!=localmachine.localip)&&//判断目的地址是否是本机 (received_ip_packet.dip!=IP_BROADCAST_ADDRESS)) {IP_DEBUGOUT(“IP address does not match!\n\r”): …… IP_DEBGOUT (“Validating the IP cheeksum...\n\r)://校验校验和 if( ip_cheek_cs(&received_ip_packet)!= TRUE) {IP_DEBUGOUT (“IP Cheeksum Corrupted..\n\r”); retum (-l):} IP_DEBUGOUT (“...Checksum OK!\n\r”): ……} 传输层主要是为管理移动Agent和主控移动Agent之间数据交互时提供通信,目前比较广泛应用的有UDP协议和TCP协议,二者都有各自的优缺点,考虑煤矿安全监控中要求以太网有很高的数据传输速率,便于主控移动Agent能够及时现实煤矿精心环境信息同时为了减少 ATmega128L内部资源,提高处理效率,综合考虑以上原因,决定采用UDP协议作为管理移动Agent和主控移动Agent之间的通信协议。 本设计在软件实现UDP发送数据报和接收数据报流程如图49和50所示。 图49 UDP数据报发送流程 Fig49 the Sending flow chart of of UDP datagram 图50 UDP数据报接收流程图 Fig50 the receiving flow chart of UDP datagram 管理Agent通过UDP发送和接收数据主程序的代码如下所示: localmachine.localip=((UINT32*)ip_address)://赋值IP地址 localmachine.defgw =*((UINT32*)ip_gateway);//赋值网关地址 localmachine.netmask=*(( UINT32*)ip_netmask)://赋值子网掩码 localmachine.localHW[0]=hard_ addr[0]://赋值MAC地址 …… localmachine.localHW[5]=hard_ addr[5]://赋值MAC地址 timer_pool_init();//初始化系统 mBufinit ()://初始化缓冲器 Etherlnit()://初始化网络 __asmCLI;//使能中断 (void)udp_nit()://初始化UDP (void)udp_demo_init ()://UDP发送初始化 …… for (;;) if (gotlink) //如果连接到网络 {if(NETWORK_CHECK_IF_RECEIVED()==TRUE) //如果收到数据 {switch(received_frame.protocol) {case PROTOCOL_ARP: //如果收到的是ARP协议数据包 process_arp(&received_rame): //处理ARP数据包 break; case PROTOCOL_IP: 如果收到的是IP数据包 …… switch (received_ip_packet.protocol) {case IP_ICMP: //如果接收的是ICMP报文 process_icmp_in(&received_ip_packet,len): //处理ICMP报文 break; case IP_UDP: //如果收到的是UDP报文 process_udp_in (&received_ip_paeket,len); //处理UDP数据包 break; default: break:}} arp_manage();//管理ARP地址列表 udp_demo_run ():}}} 本文基于可靠、简单、便于以后扩展的准则设计了煤矿安全监控系统中管理移动Agent和主控移动Agent的通信格式,只要事先申明好他们的通讯格式后才能进行通信,这样才能在通信中彼此识别对方属于哪一种类型的Agent,本文设计的格式如下表10所示。 表5 管理移动Agent与主控移动Agent 之间的通讯数据格式 Tab5 the data communication format between manage Agent and control Agent 4字节 1字节 1字节 4字节 长度可变 4字节 长度可变 管理Agent的ID号 数据包长度 数据包类别 对象1的ID号 对象1的数据 … 对象n的ID号 对象n的 数据 表中的ID号在整个系统中代表的是一个Agent的身份,通过Agent ID就可以区别是那种类型的Agent,不同的Agent在这个系统中的ID号是唯一的,通信数据格式的首4个字节表示的管理Agent的ID,紧接着就是管理Agent发送的数据包长度和数据包的长度,对象的ID号表示的管理Agent管理的监测Agent的标识符,由于监控Agent的种类不同,监测的数据信息可以是瓦斯浓度,温湿度信息、CO信息和风速信息等,不同的数据随着其内容不同,数据的长度是可变的。经过实践证明,此设计的通信格式是可靠的,出错率很低,适合在煤矿井下多变的环境中运用。 5.2监测Agent的软件实现 监测Agent软件方面主要实现俩大功能,一方面是如何加入无线网络,另一方面是加入网络后如何实现数据的采集。整个监测Agent的实现过程流程图如下图51所示。 图51 监测Agent 流程图 Fig51 the flow chart of monitor Agent 首先要进行整个系统硬件初始化。网络初始化,CC2530初始化,然后监测Agent请求加入监测任务的行列中,一旦管理Agent同意某个监测Agent执行任务,那时监测Agent就成功加入网络,指示灯亮,然后监测Agent的会对煤矿井下环境信息进行采集,然后将采集的数据通过无线网络模块传递给管理Agent,同时监测Agent根据知识库进行判断,采集的数据是否异常,出现异常,立马报警,并通过管理Agent通知相关人员进行管理。 监测Agent加入监测网络的程序如下: If(!idRxffEmpty()) //判断接收寄存器是否收到ID信息 {load_ptr=&payload [0]; Load=idGetRxPacket(); //读取接收寄存器中的数据 *load_ptr=0x22; // 22H表示瓦斯信息 aplFmtSendMsg() //发送数据包 APL_Data, //标识该数据类型为应用层数据 0 //管理Agent的短地址 Load_ptr //数据包信息包括数据包类型、ID号 0x07, //数据包长度 0}; //不需要ACK请求 If{!nwkBusy()nwkFSM(); //等待完成 idFreeRxPacket(); //清空接收寄存器 } 5.3 本章小结 本章主要对多Agent的煤矿安全监控系统中的最主要的管理Agent和监测Agent进行软件实现,监测Agent主要是完成对煤矿井下环境信息的采集,管理Agent完成对其监控的Agent进行组成,分配任务,完成对其监测Agent采集的数据进行融合处理,然后将处理的信息上传给主控Agent。 6 总结与展望 6.1全文总结 本文在研究多Agent系统技术基础上,构建出基于MAS技术的煤矿安全监控系统模型,开发了基于 Multi-Agent 的原型煤矿安全监控仿真系统,并从硬件和软件方面进行了系统的实现。 论文主要结论有如下3点: (1)首先阐述了多Agent的技术和现有煤矿安全监控系统存在的问题,设计了一个多Agent的智能煤矿安全监控模型,系统构建了多种类型的Agent,对每种Agent进行分工,每个Agent执行制定的任务,同时每个Agent通过Agent通信语言进行通信与信息交互、相互配合,共同完成煤矿安全监控任务,并提高系统的执行效率和响应速度。并给出了系统的工作流程。 (2)其次本文在JADE平台上验证了前文构建的多Agent的煤矿安全监控系统的可行性。 (3)最后给出了系统中主要的管理Agent和监测Agent硬件和软件实现。硬件方面主要包括芯片的选择和几大功能模块如无线网络模块、以太网模块、传感器模块的设计,包括独立模块设计和模块与模块之间的通信设计,软件方面的实现主要是和硬件部分相吻合的,主要的是实现不同模块之间的通信,如监测Agent和管理Agent的无线通信以及管理Agent和主控Agent之间的以太网通信。通过硬件和软件的结合,系统采用模块化设计,可以有效地提高数据传输的实时性和可靠性,从而提高了煤矿安全监控系统的及时性和准确性。 6.2 进一步展望 本文通过对现有的煤矿安全监控系统进行改进,融合多Agent技术设计了基于Multi-Agent的煤矿安全监控系统,得到了一些初步结论,但是还有一些不足。 (1)多Agent的煤矿安全监控系统仿真系统主要是实现各种Agent的通信与交互,能体现一些Agent的特性,但是没有充分的体现煤矿复杂环境下Agent的学习性。后期将着中从复杂多变的煤矿环境下Agent如何体现他们的智能型来研究。 (2)多Agent的软硬件实现部分,管理Agent和主控Agent之间采用的TCP/IP传输时,数据传输层采用的是UDP协议,并不安全可靠,接下来将从整个系统的安全性能方面来深入研究。 参考文献 [1]李雪梅.基于无线传感器的煤矿远程安全监控系统研究[J].煤炭技术,2013, 32(005):83~85 [2]陈坤华. 基于以太网的煤矿瓦斯监测报警系统[D].上海:东华大学,2013 [3]刘成.煤矿高低浓度瓦斯安全监控系统[D].山东:山东大学,2011 [4]原冬梅. 煤矿安全监控系统的现状和发展[J]. 科技创新与应用, 2013 (25): 146~146. [5]孔祥铸. 分析我国目前高效的井工开采技术与发展前景[J]. 科技致富向导, 2012 (5). [6]乔钢柱.基于无线传感器网络的煤矿安全综合监控系统设计与关键技术研究[D].兰州:兰州理工大学,2012 [7]莫夫.无线传感器网络的煤矿安全监控系统开发与设计[J]. 煤炭技术,2013,32(010):71~72. [8]刘凯,夏继强.基于Zigbee和CAN总线的煤矿井下人员定位系统[J]. 单片机与嵌入式系统应用,2013,13(5):56~58 [9]杨君.美国法治矿难的成功经验及借鉴[J].理论探讨,2010(5):166~169. [10]白景峰.田陈煤矿安全管控体系构建研究[D].山东:山东大学,2012 [11] 李淑英.地方煤矿安全管理方法研究[D].山东:中国海洋大学,2008 [12]王其军,程久龙.基于信息融合技术的瓦斯传感器故障诊断研究[J]. 工矿自动化,2008(02):22~25. [13]陈磊. 智能瓦斯检测系统的研制[D].西安:西安科技大学,2010 [14]胡必玲. 基于无线传感器网络的动态数据融合算法研究[D]. 电子科技大学,2012. [15]孙践知,韩忠明,陈丹等. 灾难场景下基于分组策略的机会网络路由算法[J]. 计算机工程,2011,37(23):79~82. [16] 李伟超等. 智能代理技术分析及应用[J]. 情报杂志,2003(06) [17]马琴,程大章. 多Agent技术在智能建筑系统集成中的应用[J]. 低压电器,2008,16:1~4+46 [18]胡建中. 基于多智能体技术的故障诊断理论与方法研究D].南京:东南大学,2003 [19]蒋伟进, 许宇胜, 孙星明等. 多智能体的分布式智能故障诊断[J]. 控制理论与应用, 2005, 21(6): 945~950. [20]宋彬彬. 智能 Agent 技术在高校网络教育中的应用[J]. 数字技术与应用, 2012 (2): 199~199 [21]张烈平,张云生,程大方. 基于多 Agent 的洗衣粉生产过程监控系统研究[J]. 化工自动化及仪表,2009,36(4): 80~83. [22]徐竟天. 基于ARM9 嵌入式和工业以太网的矿井瓦斯监控系统研究 [D]. 西安科技大学,2011. [23]王件,马小军,王健等. 基于光纤以太环网和现场总线的煤矿安全监控系统的应用[J]. 测控技术,2013,32(5): 82~84. [24]洪炎.基于 ARM 的嵌入式网络控制系统在馈电开关中的应用与研究[D].安徽:安徽理工大学,2007 [25]佟德林. 煤矿安全监控系统展望[J]. 工矿自动化, 1990 (03): 006 [26]余学明.潘一矿安全监控系统[J].煤矿设计,1996(10) [27]周邦全. 煤矿安全监测监控系统的发展历程和趋势[J]. 矿业安全与环保, 2007, 34(B06): 76~77 [28]李保利. 浅谈煤炭企业中机电一体化技术应用[J]. 科海故事博览,2012 (8) [29]崔文彬,张跃文, 吴桂涛等. BP 神经网络在远洋船舶远程监控中的应用研究[J]. 哈尔滨工程大学学报,2009,30(8): 935~939 [30]李霞. AGENT 技术在 Internet 中的应用[J]. 山东省农业管理干部学院学报,2008, 23(6): 167~171 [31]郭颂,李朝纯,杨开英. 基于 Agent 系统再励学习的应用[J]. 计算机应用与软件,2005,22(4): 67~69 [32] Gawali R.D,Meshram B.B. Agent-based autonomous Examination Systems[C]. 2009 International Conference on Intelligent Agent and Multi-Agent Systems, IAMA 2009, 2009: 1~7 [33]Laavola T, Haataja K, Mielikainen J. Designing and implementing an intelligent X-10-enabled home: Studies in home intelligence [C] 4th IEEE/IFIP International Conference in Central Asia on Internet, ICI 2008, 2008: 1~6 [34]吴迪. 基于Cougaar的智能Agent 研究与实现[D]. 哈尔滨:哈尔滨工业大学,2006 [35]马琴,程大章.多 Agent 技术在智能建筑系统集成中的应用[J]. 低压电器,2008 (16): 1~4 [36]陈炜,汪辉,何艳等. 基于聘用关系网的多 Agent 系统协作研究[J]. 武汉理工大学学报,2009 (18): 138~141 [37]谢永红,徐新华,杨炳儒. 分布式综合知识发现系统结构研究[J]. 计算机工程与设计,2007, 28(6): 1248~1250 [38]黄敏,佟振声.分布式多Agent 系统的研究[J].电力情报,2002 (1): 65~68 [39]Lichen H, Li L, Yu D, et al. A multi-agent based equipment bidding system on the Web[J]. Systems Engineering and Electronics,Journal of, 2002, 13(4): 46~55 [40]张峰.多代理技术在网络管理中的应用[D] .北京:北京邮电大学,2007 [41]孔川川. 基于多智能体的牛奶质量监控系统[D].内蒙:内蒙古大学,2013. [42]刘贤斐. 服务 Agent 的建模与规划调度系统[D].上海 上海交通大学, 2009. [43]于卫红,陈燕.轻量级嵌入式 Agent 在 Android 平台上的实现[J]. Computer Engineering, 2013, 39(7) [44]李晓波.基于多Agent 的业务过程集成框架的实现[D].天津:天津大学, 2008. [45]王斌, 盛津芳, 王建新等. 基于通信的 MAS 内多 Agent 自动协商[J].小型微型计算机系统, 2005, 26(1): 26-31. [46]阮若林.基于多Agent 的远程协同教学环境的研究与设计 [D]. , 2004. [47]于卫红.基于 JADE 的海上搜救智能决策支持系统[J]. 计算机应用与软件, 2011, 28(8): 237-239. [48]刘舒舒, 杨鹤标.基于多Agent 的医保欺诈检测系统的研究[J]. 计算机技术与发展 ISTIC, 2013 (12). [49]吴元忠, 胡钢. 基于 ATmega128L 的瓦斯检测报警装置的设计[J]. 工矿自动化, 2007 (1): 68-70. [50]李金凤, 刘沁, 张治国, 等. 基于无线传感器网络的矿井瓦斯监测系统[J]. 仪表技术与传感器, 2013 (9): 73-76. [51]Zhang W C, Yu X W, Li Z C. Wireless Network Sensor Node Design Based on CC 2 S 30 and ZigBee Protocol Stack[J]. Jisuanji Xitong Yingyong- Computer Systems and Applications, 2011, 20(7): 184-187. [52] Yuan W, Keshan C, Chao X, et al. Design and implementation for ZigBee long-distance wireless data transmission system[C]//Electronic Measurement & Instruments (ICEMI), 2011 10th International Conference on. IEEE, 2011, 1: 61-64. [53]Jianming F J W. Design of wireless monitoring system for environment status of museum based on CC2530 [J]. Electronic Measurement Technology, 2011, 6: 030. [54]Fu X, Li W, Yang L. Design and Implementation of Fire-Alarming System for Indoor Environment Based on Wireless Sensor Networks[C]//Proceedings of 2013 Chinese Intelligent Automation Conference. Springer Berlin Heidelberg, 2013: 457-468. [55]万静华,丁亚军. 以太网控制器的嵌入式设备网络互连[J]. 单片机与嵌入式系统应用, 2001 (12): 41-43. [56]万静华, 丁亚军. 以太网控制器的嵌入式设备网络互连[J]. 单片机与嵌入式系统应用, 2001 (12): 41-43. [57]王春玲, 唐超礼, 黄友锐, 等. 基于移动 Agent 的煤矿瓦斯浓度监测系统设计[J]. 仪表技术与传感器, 2013 (8): 103-104. [58]MENG C, LI M, LI A. Digital Temperature and Humidity Sensor SHT11 Based on I~ 2C Bus and Its Application in the Single-chip Microcomputer System [J]. International Electronic Elements, 2004, 2: 016. [59]李国才, 张文栋, 胡杰, 等. 煤矿环境探测机器人的多传感器系统设计[J]. 矿山机械, 2013, 41(8): 127-130. [60]Peter Z, Géczy A, Illes B, et al. Pressure measurements in a batch type Vapour Phase Soldering Station[C]//Design and Technology in Electronic Packaging (SIITME), 2012 IEEE 18th International Symposium for. IEEE, 2012: 163-166. 致谢 “参天之木,必有其根,怀山之水,必有其源”这篇看似简短的硕士论文凝聚了安徽理工大学对我七年的培养之恩和所有老师谆谆教诲之情,对于母校和老师的恩情,我永生铭记。三年以来,学习上,导师黄友锐教授渊博的学识,敏捷的思维,严谨的治学,高尚的师德将我顺利的引向电气知识的海洋;在工作上,恩师雷厉风行的作风深深影响了我对事情的处理态度和结果;生活上,恩师情操高尚、从严律己、一丝不苟、宽厚待人,时刻关心我们的生活,为我们解决了很多生活上的困难,既是我们的良师又是益友。本文从文献查阅、论文选题、资料收集、论文编写及修改,没有一处不凝聚恩师的心血,在此,再次向恩师表示由衷的敬意和诚挚的感谢! 此外,我还要感谢我的同窗们,请允许我用“我们”来表达你们和我之间的联系。作为同龄人,我们在彼此的身上看到自己的影子。我们思想接近,我们比其他人更容易彼此理解。三年以来,我们互相学习,互相竞争,互相鼓励,共同进步。三年以来,快乐的时候我们在一起,徘徊的时候我们在一起,沮丧的时候我们在一起。在这里我要特别感谢孙小茜、龚大伟、张俊卿、何凯、王丽娜等兄弟姐妹们对我的大力支持和帮助。在这个时刻,向我亲爱的同学们道一声珍重,祝你们在人生的路上一帆风顺! 父母养育之恩,所有家人的慷慨相助,二十年来在我求学路上默默的支持,这在我的生命中是必须永恒铭记的,已经无法用感谢表达我内心的感激之情。在这里,请让我给每一个爱我、关心我的亲人献上一个祝福,在未来的岁月里幸福安康! 最后有些遗憾,由于本人工作的疏忽,不能一一列举本文中引用参考文献的作者们以及百忙之中抽出时间帮我审阅论文的评审们,在此我只能向各位老师们致以诚挚的问候:你们辛苦了! 作者简介及读研期间主要科研成果 作者简介: 王春玲(1989-),女,汉族,安徽安庆,安徽理工大学电气与信息工程学院硕士研究生,主要研究方向是智能体技术。 读研期间公开发表的论文及专利: [1]《基于移动Agent的煤矿瓦斯监测系统设计》,《仪表技术与传感器》,第一作者; [2]《基于移动Agent的煤矿瓦斯监测系统研究与实现》,《煤矿工程》,第一作者; [3]《Modeling and Simulation Research of Virtual Environment System of Complex Coalmine Using Multi-Agent》,《Environment Engineering and Management Journal》已录用,第二作者; [4]一种多Agent的煤矿井下温度监测系统,专利号:201320047588.9,第一; [5]基于移动Agent的煤矿瓦斯信息监测系统,专利号:201320022618.9,第一; [6]多Agent的煤矿巷道风量信息监控系统,专利号:201320047593.8,第一。 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作 者 签 名:       日  期:        ​​​​​​​​​​​​ 指导教师签名:        日  期:        使用授权说明 本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:        日  期:        ​​​​​​​​​​​​ 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权      大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名: 日期: 年 月 日 导师签名: 日期: 年 月 日 注 意 事 项 1.设计(论文)的内容包括: 1)封面(按教务处制定的标准封面格式制作) 2)原创性声明 3)中文摘要(30 0字 个人自传范文3000字为中华之崛起而读书的故事100字新时代好少年事迹1500字绑架的故事5000字个人自传范文2000字 左右)、关键词 4)外文摘要、关键词 5)目次页(附件不统一编入) 6)论文主体部分:引言(或绪论)、正文、结论 7)参考文献 8)致谢 9)附录(对论文支持必要时) 2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。 3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。 4.文字、图表要求: 1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写 2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画 3)毕业论文须用A4单面打印,论文50页以上的双面打印 4)图表应绘制于无格子的页面上 5)软件工程类课题应有程序清单,并提供电子文档 5.装订顺序 1)设计(论文) 2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订 3)其它 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作 者 签 名:       日  期:        ​​​​​​​​​​​​ 指导教师签名:        日  期:        使用授权说明 本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:        日  期:        ​​​​​​​​​​​​ 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权      大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名: 日期: 年 月 日 导师签名: 日期: 年 月 日 独 创 声 明 本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议。尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。 本声明的法律后果由本人承担。   作者签名: 二〇一〇年九月二十日   毕业设计(论文)使用授权声明 本人完全了解**学院关于收集、保存、使用毕业设计(论文)的规定。 本人愿意按照学校要求提交学位论文的印刷本和电子版,同意学校保存学位论文的印刷本和电子版,或采用影印、数字化或其它复制手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用。 (保密论文在解密后遵守此规定)   作者签名: 二〇一〇年九月二十日 基本要求:写毕业论文主要目的是培养学生综合运用所学知识和技能,理论联系实际,独立分析,解决实际问题的能力,使学生得到从事本专业工作和进行相关的基本训练。毕业论文应反映出作者能够准确地掌握所学的专业基础知识,基本学会综合运用所学知识进行科学研究的方法,对所研究的题目有一定的心得体会,论文题目的范围不宜过宽,一般选择本学科某一重要问题的一个侧面。 毕业论文的基本教学要求是: 1、培养学生综合运用、巩固与扩展所学的基础理论和专业知识,培养学生独立分析、解决实际问题能力、培养学生处理数据和信息的能力。2、培养学生正确的理论联系实际的工作作风,严肃认真的科学态度。3、培养学生进行社会调查研究;文献资料收集、阅读和整理、使用;提出论点、综合论证、总结写作等基本技能。 毕业论文是毕业生总结性的独立作业,是学生运用在校学习的基本知识和基础理论,去分析、解决一两个实际问题的实践锻炼过程,也是学生在校学习期间学习成果的综合性总结,是整个教学活动中不可缺少的重要环节。撰写毕业论文对于培养学生初步的科学研究能力,提高其综合运用所学知识分析问题、解决问题能力有着重要意义。 毕业论文在进行编写的过程中,需要经过开题报告、论文编写、论文上交评定、论文答辩以及论文评分五个过程,其中开题报告是论文进行的最重要的一个过程,也是论文能否进行的一个重要指标。 撰写意义:1.撰写毕业论文是检验学生在校学习成果的重要措施,也是提高教学质量的重要环节。大学生在毕业前都必须完成毕业论文的撰写任务。申请学位必须提交相应的学位论文,经答辩通过后,方可取得学位。可以这么说,毕业论文是结束大学学习生活走向社会的一个中介和桥梁。毕业论文是大学生才华的第一次显露,是向祖国和人民所交的一份有份量的答卷,是投身社会主义现代化建设事业的报到书。一篇毕业论文虽然不能全面地反映出一个人的才华,也不一定能对社会直接带来巨大的效益,对专业产生开拓性的影响。但是,实践证明,撰写毕业论文是提高教学质量的重要环节,是保证出好人才的重要措施。 2.通过撰写毕业论文,提高写作水平是干部队伍“四化”建设的需要。党中央要求,为了适应现代化建设的需要,领导班子成员应当逐步实现“革命化、年轻化、知识化、专业化”。这个“四化”的要求,也包含了对干部写作能力和写作水平的要求。 3.提高大学生的写作水平是社会主义物质文明和精神文明建设的需要。在新的历史时期,无论是提高全族的科学文化水平,掌握现代科技知识和科学管理方法,还是培养社会主义新人,都要求我们的干部具有较高的写作能力。在经济建设中,作为领导人员和机关的办事人员,要写指示、通知、总结、调查报告等应用文;要写说明书、广告、解说词等说明文;还要写科学论文、经济评论等议论文。在当今信息社会中,信息对于加快经济发展速度,取得良好的经济效益发挥着愈来愈大的作用。写作是以语言文字为信号,是传达信息的方式。信息的来源、信息的收集、信息的储存、整理、传播等等都离不开写作。 论文种类:毕业论文是学术论文的一种形式,为了进一步探讨和掌握毕业论文的写作规律和特点,需要对毕业论文进行分类。由于毕业论文本身的内容和性质不同,研究领域、对象、方法、表现方式不同,因此,毕业论文就有不同的分类方法。 按内容性质和研究方法的不同可以把毕业论文分为理论性论文、实验性论文、描述性论文和设计性论文。后三种论文主要是理工科大学生可以选择的论文形式,这里不作介绍。文科大学生一般写的是理论性论文。理论性论文具体又可分成两种:一种是以纯粹的抽象理论为研究对象,研究方法是严密的理论推导和数学运算,有的也涉及实验与观测,用以验证论点的正确性。另一种是以对客观事物和现象的调查、考察所得观测资料以及有关文献资料数据为研究对象,研究方法是对有关资料进行分析、综合、概括、抽象,通过归纳、演绎、类比,提出某种新的理论和新的见解。 按议论的性质不同可以把毕业论文分为立论文和驳论文。立论性的毕业论文是指从正面阐述论证自己的观点和主张。一篇论文侧重于以立论为主,就属于立论性论文。立论文要求论点鲜明,论据充分,论证严密,以理和事实服人。驳论性毕业论文是指通过反驳别人的论点来树立自己的论点和主张。如果毕业论文侧重于以驳论为主,批驳某些错误的观点、见解、理论,就属于驳论性毕业论文。驳论文除按立论文对论点、论据、论证的要求以外,还要求针锋相对,据理力争。 按研究问题的大小不同可以把毕业论文分为宏观论文和微观论文。凡届国家全局性、带有普遍性并对局部工作有一定指导意义的论文,称为宏观论文。它研究的面比较宽广,具有较大范围的影响。反之,研究局部性、具体问题的论文,是微观论文。它对具体工作有指导意义,影响的面窄一些。 另外还有一种综合型的分类方法,即把毕业论文分为专题型、论辩型、综述型和综合型四大类: 1.专题型论文。这是分析前人研究成果的基础上,以直接论述的形式发表见解,从正面提出某学科中某一学术问题的一种论文。如本书第十二章例文中的《浅析领导者突出工作重点的方法与艺术》一文,从正面论述了突出重点的工作方法的意义、方法和原则,它表明了作者对突出工作重点方法的肯定和理解。2.论辩型论文。这是针对他人在某学科中某一学术问题的见解,凭借充分的论据,着重揭露其不足或错误之处,通过论辩形式来发表见解的一种论文。3.综述型论文。这是在归纳、总结前人或今人对某学科中某一学术问题已有研究成果的基础上,加以介绍或评论,从而发表自己见解的一种论文。4.综合型论文。这是一种将综述型和论辩型两种形式有机结合起来写成的一种论文。如《关于中国民族关系史上的几个问题》一文既介绍了研究民族关系史的现状,又提出了几个值得研究的问题。因此,它是一篇综合型的论文。 写作步骤:毕业论文是高等教育自学考试本科专业应考者完成本科阶段学业的最后一个环节,它是应考者的 总结 性独立作业,目的在于总结学习专业的成果,培养综合运用所学知识解决实际 问题 的能力。从文体而言,它也是对某一专业领域的现实问题或 理论 问题进行 科学 研究 探索的具有一定意义的论说文。完成毕业论文的撰写可以分两个步骤,即选择课题和研究课题。 首先是选择课题。选题是论文撰写成败的关键。因为,选题是毕业论文撰写的第一步,它实际上就是确定“写什么”的问题,亦即确定科学研究的方向。如果“写什么”不明确,“怎么写”就无从谈起。 教育部自学考试办公室有关对毕业论文选题的途径和要求是“为鼓励理论与工作实践结合,应考者可结合本单位或本人从事的工作提出论文题目,报主考学校审查同意后确立。也可由主考学校公布论文题目,由应考者选择。毕业论文的总体要求应与普通全日制高等学校相一致,做到通过论文写作和答辩考核,检验应考者综合运用专业知识的能力”。但不管考生是自己任意选择课题,还是在主考院校公布的指定课题中选择课题,都要坚持选择有科学价值和现实意义的、切实可行的课题。选好课题是毕业论文成功的一半。 第一、要坚持选择有科学价值和现实意义的课题。科学研究的目的是为了更好地认识世界、改造世界,以推动社会的不断进步和发展 。因此,毕业论文的选题,必须紧密结合社会主义物质文明和精神文明建设的需要,以促进科学事业发展和解决现实存在问题作为出发点和落脚点。选题要符合科学研究的正确方向,要具有新颖性,有创新、有理论价值和现实的指导意义或推动作用,一项毫无意义的研究,即使花很大的精力,表达再完善,也将没有丝毫价值。具体地说,考生可从以下三个方面来选题。首先,要从现实的弊端中选题,学习了专业知识,不能仅停留在书本上和理论上,还要下一番功夫,理论联系实际,用已掌握的专业知识,去寻找和解决工作实践中急待解决的问题。其次,要从寻找科学研究的空白处和边缘领域中选题,科学研究。还有许多没有被开垦的处女地,还有许多缺陷和空白,这些都需要填补。应考者应有独特的眼光和超前的意识去思索,去发现,去研究。最后,要从寻找前人研究的不足处和错误处选题,在前人已提出来的研究课题中,许多虽已有初步的研究成果,但随着社会的不断发展,还有待于丰富、完整和发展,这种补充性或纠正性的研究课题,也是有科学价值和现实指导意义的。 第二、要根据自己的能力选择切实可行的课题。毕业论文的写作是一种创造性劳动,不但要有考生个人的见解和主张,同时还需要具备一定的客观条件。由于考生个人的主观、客观条件都是各不相同的,因此在选题时,还应结合自己的特长、兴趣及所具备的客观条件来选题。具体地说,考生可从以下三个方面来综合考虑。首先,要有充足的资料来源。“巧妇难为无米之炊”,在缺少资料的情况下,是很难写出高质量的论文的。选择一个具有丰富资料来源的课题,对课题深入研究与开展很有帮助。其次,要有浓厚的研究兴趣,选择自己感兴趣的课题,可以激发自己研究的热情,调动自己的主动性和积极性,能够以专心、细心、恒心和耐心的积极心态去完成。最后,要能结合发挥自己的业务专长,每个考生无论能力水平高低,工作岗位如何,都有自己的业务专长,选择那些能结合自己工作、发挥自己业务专长的课题,对顺利完成课题的研究大有益处。 致 谢 这次论文的完成,不止是我自己的努力,同时也有老师的指导,同学的帮助,以及那些无私奉献的前辈,正所谓你知道的越多的时候你才发现你知道的越少,通过这次论文,我想我成长了很多,不只是磨练了我的知识厚度,也使我更加确定了我今后的目标:为今后的计算机事业奋斗。在此我要感谢我的指导老师——***老师,感谢您的指导,才让我有了今天这篇论文,您不仅是我的论文导师,也是我人生的导师,谢谢您!我还要感谢我的同学,四年的相处,虽然我未必记得住每分每秒,但是我记得每一个有你们的精彩瞬间,我相信通过大学的历练,我们都已经长大,变成一个有担当,有能力的新时代青年,感谢你们的陪伴,感谢有你们,这篇论文也有你们的功劳,我想毕业不是我们的相处的结束,它是我们更好相处的开头,祝福你们!我也要感谢父母,这是他们给我的,所有的一切;感谢母校,尽管您不以我为荣,但我一直会以我是一名农大人为荣。 通过这次毕业设计,我学习了很多新知识,也对很多以前的东西有了更深的记忆与理解。漫漫求学路,过程很快乐。我要感谢信息与管理科学学院的老师,我从他们那里学到了许多珍贵的知识和做人处事的道理,以及科学严谨的学术态度,令我受益良多。同时还要感谢学院给了我一个可以认真学习,天天向上的学习环境和机会。 即将结束*大学习生活,我感谢****大学提供了一次在**大接受教育的机会,感谢院校老师的无私教导。感谢各位老师审阅我的论文。 _1456584474.vsd � 传感器� 知识库与反应规划库 信息处理 效应器 外 部 环 境� 通 信 模 块 其 他Agent _1456604446.vsd � _1456727285.vsd _1456771729.vsd � � 将来自传输层的UDP协议的数据封装成IP数据报格式� 计算IP数据报首部校验和,填入IP首部检验和字段� 调用驱动程序中发送数据函数,进行以太网数据发送� 结束� 开始� _1456834245.vsd 人机界面Agent 主控Agent 管理Agent1 管理Agent2 监测Agent11 监测Agent13 …… 完 成 任 务 管理Agent3 监测Agent31 监测Agent33 …… 完 成 任 务 完 成 任 务 协 作 与 交 互 …… 完成任务 _1456903337.vsd � � � 开始� 硬件初始化� CC2530初始化� 网络初始化 寻找网络并提出加入网络申请 是否加入网络� 点亮指示灯 MCU对传感器发出对环境进行采集的命令 采集数据是否异常 将采集的数据存储到外扩中,并报警 将采集的数据存储到外扩中 将采集的数据发送给管理Agent 结束 Y N N Y _1456762701.vsd � � 开始� 将数据按UDP格式进行封装成UDP数据报 将数据按IP格式进行封装成IP数据报 调用IP数据报发送流程 结束 _1456763520.vsd � � � 开始� 调用IP数据报接收流程� 分离UDP数据报首部并进行校验 校验正确� 丢弃该数据报 端口号及I� 分离出有效数据并处理 结束 _1456728023.vsd � RESETn VREG-EN TX-ACK-DONE SFD FIFOP CSn SI SO SCLK CC2530 PD7 PB5 PE5 ICP1 INT4 PB0 MOSI MISO SCK ATmega128L _1456660781.vsd _1456666727.vsd _1456652141.vsd � � � 开始 从数据链路层接收以单播方式传输的数据� 分离出数据类型� 判断据缨类型� ARP� IP� ARP处理� IP版本号一致� 分离出IP首部并校验� 校验正确� 丢弃该报文� 根据上层UDP进行分用� 结束 _1456585802.vsd � MCU� 电源模块 存储器 传感器模块 无线模块 _1456589897.vsd Agent _1456591592.vsd � 管理Agent上电初始化后开始建立无线网络� 申请加入网络的监测Agent向空中发送一列广播帧 收到广播帧的管理Agent上也会相应回应一列广播帧 管理Agent会分配给申请加入监测Agen� 无线网络组建完毕 收到回应广播帧的要申请加入网络的监测Agent会选择信号最强的管理Agent,并向这个管理Agent发送自己的ID号 _1456603374.vsd _1456589997.vsd Agent Platform Agent Agent1 Message Transport Service Message Transport Service Agent Platform Message Payload Message Payload _1456589860.vsd Agent1 Agent2 Agentn _1456586828.vsd � � � 开始� 硬件初始化� 搜索周围的监测Agent 组建无线网络 管理Agent接收监测agent发送的数据 将处理后的结果存储在外部扩展的数据存储器中,并将结果显示在1602中,同时将结果发送给主控Agent� 所属管理Agent将接收到的数据进行数据融合处理� 所属管理Agent向监测Agent发送没有接收到数据的数据包,监测Agent再重新发送数据给所属管理Agent 是否接收到数据 是否接收到数据 处理后的结果是否存在异常 结束 将处理后的结果存储在外部扩展的数据存储器中,并将结果显示在1602中,命令相应执行器采取相应措施,同时将结果发送给主控Agent� Y N Y N N Y _1456585628.vsd � MCU� _1456585778.vsd _1456585393.vsd � MCU 供电模块 程序存储模块 无线网络模块 以太网模块 _1453465669.vsd � Network Infrastructure (网络基础设施)� Transport and Signaling (信令传输)� Message Transport Protocol(保报文传输协议)� Message Envelope(消息封装层)� Agent Communication Language(Agent通信语言)� Content Language( 内容语言)� Conversation( 会话)� _1456519241.vsd Agent1 Agent2 Agentn 管理控制Agent _1456575323.vsd � 管理Agent 监测Agent 主控Agent _1456502064.vsd � � � 初始化,A状态为idle Ai接收任务 Ai能否单独完成任务 寻找Aj协助 接收任务,状态改为active Aj能否单独完成任务 寻找Ai协助 Ai完成任务,状态改为idle Aj完成任务,状态改为idle Aj完成任务,将结果反馈给Ai 结束 _1456505907.vsd Agent Agent Management System Directory Facilitator Message Transport System Agent Platform _1455551740.unknown _1451305369.vsd � Agent Communication Language Performative Communicative Act Content Ontology Name FIPA.Acl KQML Message contains expressed in has a 0.. 1..n contains _1451412688.vsd 先 进 先 出 和 帧 管 理 射频寄存器 CSMA/CA 滤波处理 射频数据接收 解调器 合成器 调制器 射频 接收 频率 合成器 射频 发送 RF_P RF_N _1451412725.vsd � AN1 11 LNA PA LOGC 7 15 4 3 2 5 6 BIAS BIAS HGM BALUN RF_P RXTX RF_N RAEN EN _1451305364.vsd � 黑 板� Agent 1� Agent 2� Agent 3� Agent 4� _1234567890.vsd 发送方先以广播形式式先以太网的每一台计算机发送一个ARP请求报文(arp_send_req) 接收到请求报文的计算机都会从报文中提取IP地址与本机的IP地址相比较,如果不相同不做处理,若相同则发送一个应答报文,其中包含了本机的48位MAC地址 接受到ARP应答数据报后,发送主机会处理分析ARP数据包(process_arp),提取应答数据中MAC地址(arp_get_response)并缓存起来。
本文档为【基于Multi-Agent的煤矿安全监控系统研究硕士毕业论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
不系舟红枫
从教近30年,经验丰富,教学水平较高
格式:doc
大小:6MB
软件:Word
页数:0
分类:工学
上传时间:2019-01-22
浏览量:16