版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、可视化多主体系统开发平台VAStudio设计与实现林芬1,2 邱莉榕1,2 贾颖杰1,2 史忠植 基金项目:国家973计划项目(2003CB317004),国家863计划项目(2003AA115220),自然科学基金(60435010),北京科学基金(4052025)作者简介:林芬,硕士生,主要研究方向为智能主体技术、数据挖掘等。1中国科学院计算技术研究所 北京 1000802中国科学院研究生院 北京 100039 linf摘要:多主体系统(Multi-Agent System)开发工具是解决面向主体的程序设计的关键技术,目前开发的多种多主体系统开发工具都尚未满足实际要求或存在某些缺陷,本文设
2、计和实现了可视化多主体系统开发平台VAStudio,为用户提供一个功能强大的可视化多主体系统设计和编程环境,根据用户的需求,可视化智能引导生成主体,方便了基于主体的应用系统的开发,很大程度上提高了多主体系统开发的适应性。本文详细介绍了VAStudio的设计思想包括体系结构和各个功能模块,并以分布式数据挖掘为例验证了该工具的可行性和优越性。关键词:主体 多主体系统 设计工具 开发工具Design and Implementation of Visual Multi- Agent StudioFen Lin1,2 Lirong Qiu1,2 Yingjie Jia1,2 Zhongzhi Shi1
3、 1 (Institute of Computing Technology, CAS, Beijing 100080)2 (Graduate School of Chinese Academy of Science, Beijing 100039)linfAbstract: Multi-Agent Toolkits is an important field in the research domain of agent-oriented software engineering. However there still lies this or that kind of deficits i
4、n most traditional multi-agent toolkits. This paper introduces the implementation of Visual Multi-Agent Studio, which provides an integrated design and programming environment to support generating agents automatically. Also the system makes it easy to develop agent-oriented application system and i
5、mprove its adaptability on a large scale. This paper introduces the design philosophy such as architecture and functional module of VAStudio in detail. Finally it proves the feasibility and superiority of the toolkit by taking Distribute Data Mining for example.Key Words: Agent Multi-Agent System De
6、sign Tool Development Tool1 引言主体和多主体系统经过了20多年的研究和发展,已经成为人工智能甚至计算机科学的研究热点之一,并已经广泛应用到很多领域之中。主体技术被认为是在复杂计算环境下构建可扩展的、健壮的、可重用的、一致的高质量软件系统的最有前途的技术之一。智能主体和多主体系统为开发分布式、智能化、开放性复杂软件系统提供了一种新的实现范型1,2。虽然主体和多主体系统技术受到了越来越多的重视,目前已出现了各种各样的关于主体和多主体系统的理论和开发平台,工业界也开始使用主体技术和多主体系统来开发自己的产品。但是基于主体的系统开发仍然不是一件容易的工作,目前主体开发平台主
7、要提供主体运行环境,缺乏可视化主体设计和开发环境,未能很好的利用面向主体的思想,导致用户理解和应用主体平台开发系统困难度增加,从而使得主体开发平台的适用性大大降低。针对上述种种问题,本文结合面向主体软件工程的思想,分析了已有的主体设计模型和主体体系结构的缺陷和存在的主要问题,设计和实现了相应的可视化主体设计和开发平台VAStudio,为用户提供一个集成的主体设计和编程环境,并在主体支持环境MAGE的支持下运行。MAGE是一种成熟的完全与FIPA规范3兼容的分布式的主体平台,提供主体运行环境许多必不可少的服务,如白页/黄页服务、生命周期服务、通信服务、主体管理服务等。MAGE的详细介绍,请参考4
8、,5,6。2. 相关工作比较自从人们开展对分布式人工智能的研究之时起,多主体系统开发工具就一直是研究重点。本节中主要比较典型多主体系统开发工具,包括采用的优先技术、具有的通用功能以及存在的不足。University of Parma 开发的JADE7, 它将多主体系统的实现简单化,提供了一系列的工具来支持开发和调试,虽然提供了一系列底层支持帮助用户构建主体,但是用户只能自己编码实现没有提供相应的可视化工具。Stanford University 开发的JATLite8适合分布式环境里开发主体系统,提供了基本的主体框架,提供了方便的通信接口,然而也没有提供相应的可视化工具。由British Te
9、lecommunications Laboratory开发的著名的多主体系统开发工具Zeus9,它提供了一个软件构建和工具库能够快速和方便的设计、开发、实现多主体系统。Zeus包含三个主要功能部件:主体构件库、主体开发工具和可视化工具,然而Zeus的学习和使用对于非专业用户来说比较困难,相应的可视化平台并没有提供主体模型设计工具而且功能十分有限,并没有很大程度上方便用户的开发。分析以上多主体系统开发工具,我们发现这些工具都没有提供适用的可视化多主体系统设计和编程环境。因此本文设计和实现了可视化多主体系统开发平台VAStudio,为用户提供一个功能强大的可视化多主体系统设计和编程环境,方便了用户
10、开发基于主体的应用系统,在一定程度上提高了多主体系统开发适应性。在表1中本文将这些工具作了简单的比较(标*表示不明确)。从表中可以看出,VAStudio在可视化主体设计、软件复用和学习曲线方面有特殊优势。表1 多主体系统开发工具评价名 称JADEJATLiteAgentBuilderZEUSVAStudio编程语言javajavajavaJavajava可视化设计不支持不支持不支持部分支持支持软件复用部分支持*支持支持软件构件库提供*不提供提供提供工具集提供*提供提供提供本体编辑支持*支持支持支持学习曲线难难难中易3. 多主体系统层次模型理论与VAStudio设计实现3.1 多主体系统层次模型
11、多主体系统是一个开放的复杂系统。抽象是人们处理复杂系统的一个常用方法。根据多主体系统蕴涵的本质特征和抽象级别,本文提出一个层次开发模型10,由抽象级从低到高分别为遗留构件层、行为层、主体层和主体社会层,如图1所示。组件可以是任何可重用的构件。行为是主体的一个能力单位10。主体可以看成一个软件实体,即可以看成一个黑箱,通过传感器感知环境,通过效应器作用于环境。主体的体系结构主要包括三种:慎思结构、反应式结构、混合式结构11。主体社会层包括各种各样的自治主体,以及主体之间的交互,使用的协议等等。图1 基于复用的多Agent系统层次模型一般来说有两种方式来开发多主体系统,一种是自顶向下,另一种是自底
12、向上。自顶向下是首先对主体社会建模,然后分析所需的主体,最后分析出主体所需的行为。而自底向上是在已有行为的基础上来构建我们所需的主体,在已有主体的基础上构建我们所需的主体社会。在我们的设计中,VAStudio支持两种方式的使用,首先我们采用自顶向下分析出我们所需的行为,放入行为库,然后采用自底向上根据行为库里的行为构建我们所需的应用。3.2 VAStudio的系统设计图2 VAStudio体系结构基于上述思想,本文开发了一个多主体系统工具集VAStudio,设计目标就是提供一个友好的集成环境来支持主体的设计和编程,不仅是系统编程环境,而且是面向主体的设计与编程环境,根据主体模型支持多种图形界面
13、智能引导生成主体方式。同时为软件复用提供了一系列基本工具,如构件库管理工具、行为库、主体库、ADL分析器以及本体编辑器等等。如图2所示:VAStudio主要由四大功能块组成:VAStudio的设计平台,VAStudio的编程平台,VAStudio的运行平台和VAStudio的工具箱。(1)VAStudio的设计平台是针对行为和主体设计的环境,平台采用可视化图像界面智能引导,一步步帮助用户生成智能主体。目前平台支持行为和主体生成的五种方式:有限状态自动机方式,流程图方式,模板库方式,行为描述和主体描述方式11,克隆方式。其中有限状态自动机方式,流程图方式对用户构建主体非常方便。l 有限状态自动机
14、生成方式中支持图形方式对行为通过有限状态自动机来进行定制来生成用户所需的主体l 流程图生成方式中,可以通过对行为流程的定制来生成满足用户需要的主体。l 模板库方式中支持上节层次模型描述的主体多种结构:慎思结构、反应式结构、混合式结构,以及各种功能性主体比如推理主体、移动主体和网格主体。l 行为描述和主体描述声称方式中,行为又可以分为简单行为和复合行为,它们可由实体构件和连接构件通过有限自动机来进行描述,主体描述除了描述主体所具有的能力之外,还需要描述主体名称、目标和所要求的外部资源等。l 克隆生成方式中通过对已有的主体克隆生成新的主体。(2)在VAStudio编程平台支持代码的编辑,编译,调试
15、和测试工具。(3)最重要的平台就是提供后台主体运行的平台也就是主体支持环境MAGE运行环境,将上述智能主体的体系结构和主体设计应用到多主体支持环境MAGE中。(4)VAStudio的工具箱为用户使用提供了极大的方便,支持行为库,主体库,使得用户可以复用已有的资源,支持本体,使得主体之间的通信更加方便,在以后的版本中会逐步加入支持Web服务等。VAStudio作为一个集成的统一的可视化多主体系统设计和编程环境,需要保持各功能模块之间的统一,设计模块需要和编程模块保持动态一致性,图像化智能设计的结果会体现在编程模块的编程环境中,同样编程模块的变化体现在智能化设计界面中。不论是设计和编码的主体运行时
16、都需要通过运行参数设计和运行平台的控制性打交道,将要运行的主体和参数发送到MAGE主体支持平台运行,在运行过程中可能需要加载行为库,主体库,需要加载用到的外部服务比如Web服务,以及用户或者系统定义的本体等。图3 VAStudio主窗口3.3 VAStudio主窗口和主要特点VAStudio主界面如下图3所示。界面主要分为三部分:Society树结构、工作区和控制区。Society树结构包括主体树结构和行为树结构;工作区主要分为设计界面和编程界面;控制区输出编译运行结果,如右图所示。概括起来,VAStudio支持如下主要特征:l 支持软件重用。VAStudio支持重用现有软件实体构件,包括ex
17、e、dll、Java 类等。l 支持多种主体生成方式,有限状态自动机方式,流程图方式,模板库方式,行为描述和主体描述方式,克隆方式l 使用有限状态自动机方式,流程图方式重用行为库构建主体。l 提供了丰富的工具集。如代码编辑器、DFSM编辑器、ADL分析器、本体编辑器、行为库管理工具等。l 用户界面友好且易于普通用户使用。VAStudio支持智能化向导方式生成主体并提供完善的帮助支持。l VAStudio 体系结构中立,完全采用java语言实现,不受平台限制,支持XML语言方便数据交换。4. 分布式数据挖掘4.1 功能概述面对一个实际的挖掘任务,要制定出适合此数据任务特点的的最佳实验方案,事先我
18、们并不能得到理论指导;唯一的方法是,根据实验人员的工作经验,指定出多种供选择的实验方案,再逐个实现这些方案,以选择并确定最佳的部署计划。基于以上的实际需求,该系统主要提供如下两个方面的功能:1、数据挖掘流的设定:提供方便的图形化界面,统一设定供选择的多种数据挖掘方案;2、数据挖掘流的执行:在多主体环境的支撑下,利用mobile Agent技术,在多台PC上并行执行此数据挖掘流;即利用多台PC的计算能力,实现一个统一的数据挖掘计算平台。本文用数据挖掘流来统一描述多个数据挖掘方案12。数据挖掘流一般分为PreProcessing Phase,Training&Testing Phase和E
19、valuating Phase。每个阶段都可以指定不同的step12。以Training&Test Phase为例,该过程有多种分类算法,如:Ripper、SVM、C4.5等,每种算法又可以设定不同的参数;设定好参数的某种算法形成一个step。完成一次挖掘有多条路径,评估这些算法差异需要进行N1××Nk次实验。4.3 在VAStudio中设计主体图4:制定任务流虽然各个数据挖掘phase间具有固定的先后关系,必须串行执行;但同一phase的不同step之间具有天然的并行执行优势。因此我们可以设计一个网格主体:PlanAgent根据目前任务的数目,任务轻重以及参加主机
20、的数目和每台主机的负载情况规划出一系列的子任务主体:MiningTaskAgent1,。,MiningTaskAgentN。这些子任务主体携带自己的任务Task,参数Parameter和数据Data移动到其运行平台去完成任务。如果主体能够顺利完成任务,则完成后返回相应的结果;如果不能顺利完成任务,则可以请求其他主体帮助,让其他主体协助完成任务,再将结果返回,这样PlanAgent接着下一轮任务规划。图5:定制数据挖掘流程首先,采用自顶向下对整个系统建模,如图4定制任务流FlowAgent,分析出我们所需的行为(每一个蓝色的方块代表一个行为),这样VAStudio自动生成了我们所需的行为的代码框
21、架,根据实际功能需要,向代码框架中填入所需的代码,使每个行为具有相应的功能。然后,这些编制好的行为放入行为库中。最后采用上面设计方式中行为主体流程生成方式来生成各种流程的主体,如图5所示(每一个蓝色的方块是左边行为库中的一个行为)。此外,还有控制主体,包括两类:Schedule Agent和Monitor Agent。Schedule Agent负责接受当前Container中Mining Task Agent执行完任务后接着执行下一个Phase请求的任务分配,Monitor Agent负责监控当前主机的资源使用情况和回复各个Container中Schedule Agent请求。这些可采用模板
22、库方式来生成。4.4 运行主体及结果利用MAGE主体支持平台将每台参与计算的主机(Container)连接起来实现上述分布式数据挖掘系统。数据挖掘主体可以在这些Container中运行即运行在不同的主机上,共享不同主机的计算能力。针对上述数据挖掘流,考虑到不同Phase的串行关系和每个Phase中Step的并行关系,可以将每个Phase中的Step根据参与计算的主机负载情况分配到不同主机上运行。这些Step运行时间各不相同,只要得到一个Step结果我们便可以启动下一个Phase,开始运行时,首先FlowAgent根据用户定制的任务流程,将任务发送给PlanAgent进行规划出一系列子任务到各个
23、网格节点上运行,每个任务运行完后返回结果给PlanAgent,PlanAgent根据FlowAgent提供的任务流程和子任务来触发下一阶段的子任务。直到整个流程完成,最后生成一个报表描述整个流程各个路径运行的结果比较。上面例子上面流程共有四条路径,在各个路径算法参数选择不同情况下上面例子的运行结果如下表2所示(也可以图形化显示):可以看出路径S4是可供选择的路径中最好的路径。表2:实例运行结果Scheme pathMining Flow Description:S1:start*Normalization_0*Discretization_0*AttReduct_0*SVM_0 Accurac
24、y=0.029411765S2:start*Normalization_0*Discretization_0*AttReduct_0*Ripper_0 Accuracy=0.6764706S3:start*Normalization_0*Discretization_1*AttReduct_0*SVM_0 Accuracy=0.7058824S4:start*Normalization_0*Discretization_1*AttReduct_0*Ripper_0 Accuracy=0.8235294Normalization_0:flag=0Normalization_1:flag=1low
25、er bound=0.0lower bound=1.0Discretization_0:flag=0Discretization_1:flag=1AttReduct_0:flag=0Ripper_0:minimal number=1SVM_0:c=1.0gamma=0.1255. 小结和进一步工作基于主体模型设计的思想,本文提出了一种分层的方法来建造多主体系统,并设计了相应的可视化多主体系统设计和编程工具VAStudio。目前该工具已应用到各个领域,在各个项目中得到很好的应用。典型的有国家信息产业部基金项目城市应急联动与社会综合服务,开发一个基于主体的智能决策系统,另外还有自然科学基金和中澳特别合作基金项目石油勘探系统,开发一个基于主体的知识发现平台等。以及电力系统容错诊断,中国电力科学院基于上述方法开发了一个基于主体的智能决策支持系统。根据用户的反馈信息,在这些基于主体的应用项目中VAStudio的使用方便了用户使用,提高了开发效率。但是在逐步应用过程中,也发现了一些问题,如主体模型设计界面的优化,确定性有限自动机的描述优化,以及如何提高主体的效率,提供对Web服务的支持。还需要进一步完善,这将是下一步开发重点。 参考文献1 N.R. Jennings. M. Wooldridge. Agent-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026护理核心制度试题及答案
- 2026年长治职业技术学院高职单招职业适应性测试备考试题有答案解析
- 2026年江西环境工程职业学院单招职业技能考试参考题库带答案解析
- 2026年濮阳职业技术学院单招综合素质考试备考题库带答案解析
- 2025年邵阳邵东市人民医院专业技术人员招聘真题
- 2026年江苏安全技术职业学院单招综合素质考试模拟试题带答案解析
- 2025年白城事业单位真题
- 未来五年劳务企业ESG实践与创新战略分析研究报告
- 未来五年新能源汽车连接器企业数字化转型与智慧升级战略分析研究报告
- 未来五年伐木机企业县域市场拓展与下沉战略分析研究报告
- 2025至2030中国细胞存储行业调研及市场前景预测评估报告
- 《中华人民共和国危险化学品安全法》解读
- 水暖施工员考试及答案
- 2025年省级行业企业职业技能竞赛(老人能力评估师)历年参考题库含答案
- 培养员工的协议书
- 1.1《子路、曾皙、冉有、公西华侍坐》教学课件2025-2026学年统编版高中语文必修下册
- 2025天津中煤进出口有限公司面向中国中煤内部及社会招聘第五批电力人才52人(公共基础知识)测试题附答案解析
- 2025至2030氢过氧化叔丁基(TBHP)行业运营态势与投资前景调查研究报告
- 2026年哈尔滨职业技术学院单招职业适应性考试必刷测试卷附答案
- 通信行业项目经理服务水平绩效考核表
- 副高医院药学考试试题题库及答案
评论
0/150
提交评论