(计算机应用技术专业论文)基于移动agent的分布式数据查询研究与应用(1).pdf_第1页
(计算机应用技术专业论文)基于移动agent的分布式数据查询研究与应用(1).pdf_第2页
(计算机应用技术专业论文)基于移动agent的分布式数据查询研究与应用(1).pdf_第3页
(计算机应用技术专业论文)基于移动agent的分布式数据查询研究与应用(1).pdf_第4页
(计算机应用技术专业论文)基于移动agent的分布式数据查询研究与应用(1).pdf_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河海大学顺十学位论文皋于移动a g e n t 的分布式数据查嘲 f f 究与应用 摘要 随着网络的用户数和信息量爆炸性的发展,传统的分布式数据查洵技术旱现 出效率低下、制约发展的征兆,因此也激励人们研究和开发新的、更加高效的分 布式数据查洵模型。 移动a g e n t 技术是一种新型的分布式计算技术,是分布式技术与a g e n t 技术 相结合的产物。移动a g e n t 技术涉及到计算机网络、分布式系统及人工智能等诸 多领域,由于其移动性、自主性和协调性等特点,己经在分布式系统中得到应用 并展现出巨大的应用前景和优越性。 本论文重点研究和探讨如何将移动a g e n t 技术应用于分布式数据查询中,并 进行了一些初步的尝试。首先分析了传统的分布式数据查询技术,介绍了移动 a g e n t 的概念、移动a g e m 系统的体系结构和关键技术,然后描述了基于移动 a g e r t t 技术的软件设计方法,并结合移动a g e n t 技术和分布式数据查询技术,设 计了基于移动a g e n t 的分布式数据查询模型,阐述了实现这个模型需要解决的关 键技术。最后介绍了一个基于移动a g e r i t 技术的分布式数据查询原型系统 m a b d d q s 的设计和开发。 关键词:分布式数据查询模型移动a g e n t 原型系统 河海大学硕学位论文基十移动a g e n t 的分布式数据查询研究1 j 应用 a b s t r a c t w i t ht h el a r g en u m b e ro fu s e r sa n de x p l o s i v ei n f o r m a t i o no nn e t w o r k ,t h e t r a d i t i o n a ld i s t r i b u t e dd a t aq u e r yt e c h n i q u ei si n e f f e c t i v ea n db l o c k st h ed e v e l o p m e n t o fn e t w o r ks oi tp r o m o t e sp e o p l et or e s e a r c ha n dd e v e l o pan e wa n dm o r ee f f e c t i v e d i s t r i b u t e dd a t aq u e r ym o d e l m o b i l ea g e n tt e c h n o l o g yi san e wk i n do ft e c h n o l o g yo fd i s t r i b u t e dc o m p u t a t i o n , i t i sac o m b i n a t i o no fd i s t r i b u t e dt e c h n i q u ea n da g e n tt e c h n i q u e m o b i l ea g e n t s i n v o l v e sm a n yt e c h n o l o g yd o m a i n s ,s u c ha sc o m p u t e rn e t w o r k s ,d i s t r i b u t e ds y s t e m s u n d e rt h ei n t e r n e te n v i r o n m e n tf o ri t sc h a r a c t e r i s t i co fm o v i n g ,a u t o n o m ya n d c o l l a b o r a t i o n ,a n dm a n i f e s t e dg r e a ta p p l i c a t i o np e r s p e c t i v e sa n da d v a n t a g e s t h i st h e s i sm a i n l ye x p l o r e sh o wt oa p p l ym o b i l ea g e n tt od i s t r i b u t e dd a t aq u e r y a r e a ,a n dm a k e ss o m ee l e m e n t a r ya t t e m p to nt h i sp r o b l e m t h i st h e s i sf i r s t l ya n a l y s e s t h ea r c h i t e c t u r eo ft r a d i t i o n a ld i s t r i b u t e dd a t aq u e r yt e c h n i q u e ,i n t r o d u c e st h e c o n c e p t i o no f m o b i l ea g e n t 、t h ea r c h i t e c t u r ea n dt e c h n i q u eo f m o b i l ea g e n t ,d e s c r i b e s i nd e t a i lt h es o f t w a r ed e v e l o p m e n tm e t h o db a s e do nm o b i l ea g e n tt e c h n o l o g y , t h e n d e s i g n sam o d e lo fm o b i l ea g e n tb a s e dd i s t r i b u t e dd a t aq u e r ys y s t e mb yc o m b i n i n g t h em o b i l ea g e n tt e c h n i q u ea n dd i s t r i b u t e dd a t aq u e r yt e c h n i q u e ,a n di l l u s t r a t e st h e r e q u i r e dt e c h n i q u e st oi m p l e m e n tt h i sm o d e l i nt h ee n d ,t h i st h e s i si n t r o d u c e st h e d e s i g na n di m p l e m e n t a t i o no fa m o b i l ea g e n tb a s e dd i s t r i b u t e dd a t aq u e r yp r o t o t y p e s y s t e m :m a b d d q s k e yw o r d s :d i s t r i b u t e dd a t aq u e r y , m o d e l ,m o b i l ea g e n t ,p r o t o t y p es y s t e m i i 河海人学硕十学位论史基于移动a g e n t 的分布式数据查询研究畸麻用 第一章引言 1 1 研究背景与研究动因 分布式数据查询是用户与分布式数据的接口,传统的分布式数据查询实现技 术对网络的依赖性很强,需要建立持续稳定的连接;而且,由于数据的分布性, 程序员只有通过编写大量的代码来对每一个数据端服务器进行连接和访问,才能 得到一个汇总的查询结果。由此可见,传统技术存在着一些难以克服的缺陷,需 要有新技术的引入来弥补传统技术的不足。 移动a g e m 的概念是由2 0 世纪9 0 年代初的g e n e r a lm a g i c 公司在商业系统 t e l e s c r i p t 中提出的口4 1 。它是一种软件程序,具有自主的决策能力,可以感知软 件资源和网络状态,并对外部的重大事件做出适当的反应;它能够在网络上从一 台主机迁移到另一台主机,代表用户完成备项任务。移动a g e n t 技术能节省网络 带宽,减少费时的网络传输,避免中间数据的传输延迟,降低响应时间,支持离 线操作和移动计算。 根据移动a g e n t 的上述特点,如果将它应用到分布式数据查询中来,通过发 送移动a g e n t 到数据端服务器进行本地查询来返回相对少量的查询结果,这样就 可以节约大量的网络带宽。并且移动a g e n t 在服务器上执行时不需要与客户机持 续地连接,具有更大的灵活性和可靠性。由此可见,基于移动a g e m 的分布式数 据查询是一个值得探索的研究课题。 1 2 国内外研究现状 分布式数据查询是当前研究较为活跃的领域,在现实中的应用也十分广泛。 分布式数据查询有很多实现技术,当前领域内研究最多的有m e d i a t o r 和w e b s e r v i c e 等。这些实现技术通过为每个数据源创建包装器( w r a p p e r ) 或w 曲服务( w e b s e r v i c e ) 来屏蔽数据源的异构性,以达到优化查询,提高查询效率的目的。但是, 传统技术也存在一些难以克服的缺陷,这些技术都只适合稳定的网络环境,由于 需要在网络上传输大量数据,因此对网络的依赖性较高,一旦网络发生故障,查 询任务将很难实现。 目前,国内外对移动a g e n t 技术的研究日趋深入。移动a g e n t 具有自主性、协 作性和移动性等特点,可以代替用户去完成所需的任务,而且它能根据各种用户 需求及实际情况在网络中自主地迁移,因此,十分适用于分布式应用。国内外比 较著名的移动a g e n t 系统有:斯图加特大学开发的m o l e i l l ,g e n e r a lm a g i c 公司开 河海人学硕士学位论文 基于移动a g e n t 的分布式数据查询研究与应用 i 佝t e l e s c r i p t t ,i b m 东京实验室开发i 拘a g l e t 1 2 j 和南京大学开发的m o g e n t 等。由 于j a v a 语言所具有的平台无关、动态性和安全性,它在a g l e t 及其它多数移动a g e n t 产品中被采纳为a g e n t 的实现语言【1 4 1 。 美国的达特茅斯( d a r t m o u t h ) 大学和明尼苏达( m i n n e s o t a ) 大学曾经对将移动 a g e n t 应用到分布式数据查询中进行过研究 6 l ,但研究的主要目的并不是为了提 高查询的效率,而只是对他们各自开发的移动a g e n t 平台d a g e n t 和a j a n i t a 进行 测试。 文献f 8 】介绍了一种个性化的查询系统a m a l t h a e a ,它自主地从分布资源上找 出满足用户兴趣的信息并以摘要的形式提交给用户。 文献p j 提出的s a v v y q u e r y 系统针对局域网内的数据查询提出了解决办法,它 的特点是设计了移动a g e n t 安全方案并部分实现了该方案。 近几年来,国内高校也对该领域开展了研究,例如电子科技大学在他们丌发 的d l i s 系统【46 j 中就把移动a g e n t 引入对远程教育资源的查询中。 虽然国内外对基于移动a g e n t 的分布式数据查询的研究e t 益深入,但是,就 目前的研究现状而言,各研究机构只是针对各自领域内的应用进行系统分析设 计,并没有抽象出一个基于移动a g e n t 的分布式数据查询模型,而这正是本文所 重点研究的。本文认为,一个基于移动a g e n t 的查询系统的设计需要遵循通用的 基于移动a g e n t 的分布式数据查询模型,这样才有可能规范各领域内系统的设计 标准。 1 3 论文主要工作 本论文所做的主要工作就是在对传统的分布式数据查询技术进行深入分析 总结的基础上,采用移动a g e n t 技术,设计了一种新的基于移动a g e n t 的分布式 数据查询模型,并开发了一个实验性的原型系统m a b d d q s ( m o b i l e a g e n t b a s e d d i s t r i b u t e dd a t aq u e r ys y s t e m ) 。本人主要完成的工作有以下几方面: 1 介绍了分布式数据查询的相关技术,对分布式数据查询的分类和实现技术进 行了阐述并对现有技术的优点和存在的缺陷进行了分析: 2 研究了移动a g e n t 的相关知识,详细分析了移动a g e n t 的定义、特征、体系 结构、关键技术和常用平台ag l e t ; 3 提出了一个基于移动a g e n t 的分布式数据查询模型,在此模型的基础上,设 计了一个实验性的原型系统m a b d d q s 。同时,对这个系统的总体架构、工 作流程、模块设计等方面进行了详细地说明; 4 采用面向a g e n t 的程序设计方法在i b ma g l e t 平台上实现了m a b d d q s 系 统。 2 河海大学硕士学位论文基于移动a g e n t 的分布式数据查询研究与成用 1 4 论文结构 本文共分为六章: 第一章:引言。本章介绍了本课题的研究背景、动因和现状,说明了本人在 课题中所做的实际工作,最后列出了论文的组织结构; 第二章:分布式数据查询相关技术研究。本章全面介绍了分布式数据查询的 相关技术,重点阐述了分布式数据查询的分类和实现技术并对现有技术的优点和 缺陷进行了分析; 第三章:移动a g e n t 技术。本章系统地研究了a g e n t 和移动a g e n t 的相关技 术,详细分析了移动a g e n t 的定义、特征、体系结构、关键技术和常用平台 a g l e t ,为模型的提出和系统的设计打下了坚实的基础; 第四章:基于移动a g e n t 的分布式数据查询模型与系统设计。本章提出了一 种基于移动a g e n t 的分布式数据查询模型,分析了该模型在分布式数据查询中的 优势,在并在此模型的基础上,设计了一个实验性的原型系统m a b d d q s 。同 时,对这个系统的总体架构、工作流程、模块设计等方面进行了详细地说明; 第五章:基于移动a g e n t 的分布式数据查询系统实现。本章依托前几章的理 论基础,采用面向a g e n t 的程序设计方法,在i b m a g l e t 平台上实现了m a b d d q s 系统; 第六章:总结与展望。本章对论文的内容进行了总结,指出了存在的问题, 并展望了今后需要进一步完善和开展的工作。 i j 海大学硕上学位论文基于移动a g e n t 的分布式数据查询研究与应用 第二章分布式数据查询相关技术研究 分布式数据查询是当前研究较为活跃的技术,在现实中的应用也十分广泛。 随着用户要求不断提高,实现方法目益增多,分布式数据查询技术也在不断向前 发展。 2 1 分布式数据查询概述 分布式数据包括分布式的结构化数据( 保存在d b m s 中的数据) 、半结构化 数据( x m l 文档或普通文件) 以及非结构化的数据( 文本或图形) 等【2 4 】。分布 式数据查询是针对上述不同类型数据的查询,由于数据库仍是分布式数据最常见 的存储和管理工具,在诸多领域中有着十分广泛的应用,所以本文所研究的分布 式数据查询主要是针对数据库的查询。 分布式数据查询有局部查询和远程查询i 玎】。局部查询是在本地站点上执行的 查询,即查询本站点上存放的数据。远程查询是在某一远程站点上执行的查询, 查询的数据在另远程站点上存放。远程查询关键是如何选择最近的站点数据以 减少通信代价。分布式数据查询处理的可选方案很多,这就存在一个查询优化的 问题,优化的算法直接影响到查询处理的效率。 2 2 分布式数据查询的特征 分布式数据查询具备以下特征【2 6 】: 正确性:分布式数据查询系统必须保证返回给用户的是用户需求的正确的查 询结果,整个分布式数据查询系统正确性依赖于正确的查询分解、正确的局 部查询和正确的查询结果汇总; 透明性:分布式数据查询系统必须提供查询的透明性,就是说用户不必了解 分布式系统的节点分布状况,甚至不用知道系统是分布的,就可以提出正确 的查询要求并由系统透明地返回查询结果; 优化性:这是分布式数据查询的最重要的课题之一,分布式数据查询系统必 须能够尽量减少对系统资源的浪费和用户的等待时间。 4 河海人学石贞士学位论文皋于移动a g e n t 的分布式数据查淘研究与应用 2 3 分布式数据查询分类 2 3 。1 分布式数据库查询 在分布式数据库中,数据分布对用户一般是透明的,用户向系统提出查询请 求时,不必关心所涉及的关系是否分割、有无复本、存于何处等问题,可以象集 中式数据库一样,用关系而不是裂片表达查询。分布式查询从结构上可分为四个 层次,包括查询分解、数据本地化、全局优化、局部优化,如图2 1 所示1 4 4 1 。 分布式查询) + |查询分解j (全局模式 数据本地化i 弋分布模式 片段查询) 一 全局优化k 一 片段统计 盏磊差善誊墨 - r 石磊磊瓦 一( 部查丽 垡些竺望竺奎塑一 图2 i 分布式数据库查询 ( 1 ) 查询分解:将一全局查询语句进行词法分析、语法分析转化为一全局 查询树,再将全局查询树转化为段查询树。 ( 2 ) 数据本地化:对查询所要访问的每个关系进行具体化,落实到合适 ( 使尽可能做到本地化或近地化) 片段上的查询。如果对每一个查询所访问的关 系只认定一个副本,则成为非冗余具体化,否则称为冗余具体化。 ( 3 ) 全局优化:全局优化是指找到分片查询的最佳操作次序,使得代价函 数最小。代价函数一般是i o 、c p u 和通信代价之和。全局优化输出的是一个优 化的、片段上的关系代数查询。所需要的信息来自数据库的统计信息,包括各站 点片段统计信息、资源信息和通信信息等。 ( 4 ) 局部优化:局部优化在各个本地站点执行,由各个站点上的d b m s 进行 优化,采用集中式数据库的优化算法。 河海大学硕士学位论文基于移动a g e n t 的分布式数据查询研究与应用 2 3 2 联邦数据库查询 联邦数据库是由多个既协作又自治的数据库组成,它没有全局模式,成员库 町以自由地加入或退出联邦。单个成员结点有权拒绝或允许其它成员结点对它的 访问,联邦数据模式由本库数据模式和异地数据模式组成,系统支持基于联邦模 式的多库查询。 联邦数据库的三个主要特征是:( 1 ) 分布性:数据可以存放在多个地域分散 的计算机系统中,通过通信系统互相连接;( 2 ) 异构性:系统的差别可以来自硬 件、系统软件( 如操作系统) 和通信系统,而数据库系统的异构可以划分为数据 库管理系统( d b m s ) 的不同和数据语义的不同;( 3 ) 自治性:包括设计自治性、 通信自治性、执行自治性和联合自治性。 联邦数据库中的数据查询如图2 2 所示【4 8 】。 图2 2 联邦数据库查询 ( 1 ) 筛选处理器:用来选择可以传送到另一处理器的命令或数据,有命令 筛选处理器和数据筛选处理器。其中联邦命令筛选处理器按联邦模式分析外模式 查询命令,将合格的查询命令提交构造处理器:联邦数据筛选处理器按照外模式 组织需要的数据提交用户。成员命令筛选处理器按成员模式分析输出模式命令, 河海大学硕i 学位论文基于移动a g e n t 的分布式数据查询研究与应用 将合格的查询命令提交转换处理器;成员数据筛选处理器按照输出模式将有用的 数据提交给构造处理器。 ( 2 ) 构造处理器:把由一个处理器提交的查询划分为可以由两个以上处理 器接收的查询,并且把由几个处理器提供的数据合并为能由另外的单一处理器使 用的数组。 ( 3 ) 转换处理器:完成不同查询语言或不同格式数据间的转换,从而提供 数据模型透明性。有命令转换处理器和数据转换处理器。命令转换处理器把成员 模式的查询命令转换为局部模式的查询命令;而数据转换处理器反之,它把以局 部模式表示的数据转换成用成员模式表示的数据。 ( 4 ) 访问处理器:在成员d b 中完成相应的查询功能,并将查得的数据按 局部模式送数据转换处理器。 2 3 3 数据仓库查询 数据仓库是支持管理决策过程的、面向主题的、集成的、随时间而变的、持 久的数据集合。它存储供查询和决策分析用的集成化数据,包括三个基本的功能 部分:数据获取、数据存储和管理、信息访问。 从本质上看,数据仓库是一个使用其自身数据管理系统的数据库系统,该数 据库系统从其它支持日常业务的运行数据库中获取数据,利用不同的传播和复制 方法保持数据在所有数据库中的一致性,实现从一个数据库向另一个数据库抽取 和加载1 4 5 j 。 数据仓库中的数据查询如图2 3 所示。 图2 3 数据仓库查询 河海大学硕士学位论文基于移动a g e n t 的分布式数据查询研究与应用 数据仓库的查询需要建立一个存储数据的仓库,由e t l ( e x t r a c t ,t r a n s f o r m , a n dl o a d ) 工具定期从数据源过滤数据,然后装载到数据仓库,供用户查询。 存储数据的仓库定期对数据源中的所有信息进行预处理,形成符合仓库模式 的信息,然后下载数据到数据仓库。对数据源中信息的预处理及数据仓库的更新 一e 要是通过e t l 工具。这种方法的主要好处是查询处理性能高,但主要缺点是 数据可能不是最新的,如果仓库模式设计成静态的,当有新数据源加入或已有数 据源发生变化时对仓库的修改代价比较高。 2 4 分布式数据查询实现技术 对分布、异构数据的查询有很多实现技术。m e d i a t o r 和w e bs e r v i c e 是其中 出现较新,研究较深入,应用较广泛的两种技术。同时,它们自身也在不断完善 和发展之中。下文将对这两种技术作简要介绍。 2 。4 1m e d i a t o r 图2 4 是基于中介器( m e d i a t o r ) 技术的分布式数据查询示意图。该技术的主要 实现部分是中介器和针对每个数据源的包装器( w r a p p e r ) 。这里中介器的功能是 接收针对全局模式生成的查询,根据数据源描述信息及映射规则将接收的查询分 解成每个数据源的子查询,再根据数据源描述信息优化查询计划,最后将子查询 发送到每个数据源的包装器。包装器将这些子查询翻译成符合每个数据源模型和 模式的查询,并把查询结果返回给中介器。中介器将接收的所有数据源的结果合 并成一个结果返回给用户【2 4 j 【2 ”。 图2 4 基于m e d i a t o r 技术的查询 河海人学硕士学位论文 基于移动a g e n t 的分布式数据查询研究与应用 该技术的核心是全局模式,系统通过全局模式将各数据源的数据集成起来, 而数据仍存储在局部数据源中,通过各数据源的包装器对数据进行转换使之符合 全局模式。用户的查询基于全局模式,不必知道每个数据源的特点,中介器将基 于全局模式的查询转换为基于各局部数据源的模式查询,它的查询执行引擎再通 过各数据源的包装器将结果抽取出来,最后由中介器将结果集成并返回给用,t 。 这种技术有效地解决了数据的更新问题。 但是各个数据源的包装器都要分别建立,这无疑给查询系统带来了很大的复 杂性。 2 4 2w e bs e r v i c e 图2 5 是基于w e bs e r v i c e 技术的分布式数据查询示意图。 图2 5 基丁w e bs e r v i c e 技术的查询 在基于w e bs e r v i c e 技术的分布式数据查询中,对每个数据源都为其创建一 个w e b 服务,然后使用w s d l 向u d d i 注册中心注册。用户在进行查询操作时, 首先通过查询接口向u d d i 注册中心发送查找请求,选择绑定并调用相应的w e b 服务,由该w e b 服务从数据源中获取数据,并以s o a p x m l 的方式返回给查询 接口,完成整个查询任务【4 7 】。 河海大学硕士学位论文 基于移动a g e n t 的分布式数据查询研究与应用 这种技术中,各数据源的w e bs e r v i c e 具有统一的形式,实现较方便。但是, w e bs e r v i c e 不具有移动性,网上数据交换比较频繁,对网络的要求较高,如果 网络发生故障,查询将难以实现。 2 5 本章小结 本章全面介绍了分布式数据查询的相关技术,重点阐述了分布式数据查询的 分类和实现技术,并对现有技术的优点和缺陷进行了分析,为把移动a g e n t 技术 引入分布式数据查询打下理论基础。 河海人学硕士学位沦文基于移动a g e n t 的分布式数据盎脚研究与应 第三章移动a g e n t 技术 a g e n t 技术来源予人工智能,其概念在7 0 年代就已提出来了,但其真正发展 是在9 0 年代,现在正向计算机领域的各方面渗透。目前,国内外广泛开展基于 a g e n t 技术研究和应用系统的开发,取得了丰硕的成果。移动a g e n t 是一种新型 的a g e n t 技术,它扩展了a g e n t 的功能,具有移动性、智能性和异步计算等特点, 本章将对a g e n t 相关理论和移动a g e n t 技术进行论述和分析。 3 1a g e n t 相关理论 a g e n t 思想的诞生可归功于j o h n m c c a r t h y 在2 0 世纪5 0 年代末提出的“t h e a d v i c et a k e r ”系统,该系统被设想为具有目标性,系统内实体间用人类的术语 进行交流,它们能从用户利益来考虑,完成各种任务。2 0 世纪9 0 年代,随着计 算机网络、计算机通讯技术的发展,a g e n t 技术的研究在世界范围内得到了迅猛 的发展。a g e n t 技术快速发展的一个主要原因是i n t e r n e t 和w e b 的广泛普及。w e b 上信息资源的迅猛增长使得许多w e b 用户感到信息超载,这种超载使得人们希 望通过使用a g e n t 技术来减轻w e b 用户的负担。 3 1 1a g e n t 的定义 a g e n t 一词直译为“代理”,也有人把它称为“智能代理”,广义上它是 指具有智能的任何实体,包括人类、智能硬件( 如机器人) 和智能软件。 到目前为止,许多研究者提出了各自对a g e n t 的定义,但是至今没有个被 大多数人认可的统一的a g e m 的定义,不同研究领域的学者考虑各自领域的技术 特点。对a g e n t 给出的典型定义大致有两种: ( 1 ) a g e n t 是驻留在环境中的实体,它可以解释从环境中获得的反映环境中所 发生事件的数据,并执行对环境产生影响的行为。 这一定义出自f i p a ( f o u n d a t i o nf o ri n t e l l i g e n tp h y s i c a la g e n t ) ,它是一个致力 于a g e n t 技术标准化的组织。在这个定义中,a g e n t 被看作是一种在环境中“生 存”的实体,它既可以是硬件( 如机器人) ,也可以是软件。 而软件a g e n t 的研究者则对a g e n t 进行了如下定义: ( 2 ) 智能软件a g e n t 是能为用户执行特定的任务、具有一定程度的智能以允许 自主执行部分任务并以一种合适的方式与环境相互作用的软件程序。 在更多的应用领域中,研究者把凡是具有智能行为和交互特征的分布式实体 都称为a g e n t 。在这种假设下,人类、机器人、智能嵌入式设备、计算机或智能 河海大学硕士学位论文 基于移动a g e n t 的分布式数据查询研究与应用 软件程序都可以是a g e n t 。本文讨论的a g e n t 是指具有自主性的分布式智能软件。 3 1 2a g e n t 的特征 从a g e n t 的定义可以知道,a g e n t 首先是智能的,它对环境具有响应性、自 主性和主动性;同时,a g e n t 也是具有社会性的。下面对这些属性进行解释: ( 1 ) 代理性( a g e n t ) 代理性体现在: 它是“代表用户”工作的; 它可咀把其他资源包装起来,引导并代替用户对这些资源进行访问,成为便 于联系这些资源的枢纽和中介。 ( 2 ) 智能性( i n t e l l i g e n c e ) 在这方面智能a g e n t 可以做很多有高技术含量的工作。例如,理解用户用自 然语言表达的对信息资源和计算资源的需求:帮助用户在一定程度上克服信息内 容的语言障碍;捕捉用户的偏好和兴趣;推测用户的意图并为其代劳等等。 ( 3 ) 自主性( a u t o n o m y ) 一个智能a g e n t 应该是一个独立自主的计算实体。它应能在无法事先建模的、 动态变化的信息环境中,独立规划复杂的操作步骤,解决实际问题,在用户不参 与的情况下,独立发现和索取符合用户需求的可利用资源与服务。 ( 4 ) 机动。| 生( m o b i l i t y ) 在网络计算环境下,一个a g e n t 可以看成是代表用户驻网络的常设机构,它 可以在网络上灵活机动地访问各种资源和服务,还可以就完成特定任务同其他智 能a g e n t 进行协商和合作,甚至把自己“迁移”到网络中的其他主机上去执行任 务。这样的“精灵”在网络上游弋,是对网络安全性、个人隐私性和管理方面的 巨大挑战。 3 1 3a g e n t 的分类 软件a g e n t 领域的研究者对a g e n t 的分类提出了多种方法。 把a g e n t 技术按功能划分,可以分为:信息i n t e r n e t a g e n t ( i n f o r m a t i o n i n t e m e t a g e n t ) 、界面a g e n t ( i n t e r f a c ea g e n t ) 和任务a g e n t ( t a s ka g e n t ) ;按属性划分, 可以分为:反应a g e n t ( r e a c t i v ea g e n t ) 、审慎a g e n t ( 审慎a g e n t ) 、合作a g e n t ( i n t e r a c t i v ea g e n t ) 和混合a g e n t ( h y b r i d a g e n t ) ;按研究角度划分,可以分为: 自主a g e n t ( a u t o n o m o u sa g e n t ) 、多a g e n t ( m u l t i a g e n t ) 并b 助手a g e n t ( a s s i s t a n t a g e n t ) 1 7 1 。 1 2 河海人学硕士学位论文 皋于移动a g e n t 的分布式数据查询研究与廊用 3 1 4 软件a g e n t 的体系结构 软件a g e n t 的体系结构描述了a g e n t 的功能模块和这些功能模块一起运作的 方式。根据a g e n t 的特征,软件a g e n t 的体系结构包含以下几个基本模块f 3 0 l :环 境感知模块、执行模块、通讯模块、信息处理模块、决策与智能控制模块、知识 j e a n 任务表。其结构如图3 3 所示。 厂、 图3 1a g e n t 的基本结构 环境感知模块、执行模块和通信模块负责与系统环境和其它a g e n t 进行交 互,任务表为该a g e n t 所要完成的功能和任务。信息处理模块负责对感知和接受 到的信息进行初步地加工处理和存储,决策与智能控制模块是赋予a g e n t 智能的 关键部件。它运用知识库中的知识对信息处理所得到的外部环境信息和其它 a g e n t 的通讯信息进行进一步的分析、推理,为进一步的通讯或从任务表中选择 适当的任务供执行模块执行作出合理的决策。 3 1 5 面向a g e n t 的程序设计 面向a g e n t 的程序设计是一种使用各种不同的a g e n t 框架作为设计系统的 结构组件而构造软件系统的方法,它代表一个作为自治a g e n t 相互交互的计算机 系统,利用在a g e m 理论研究中得出的a g e n t 思维状态性质的意识态度来直接设 计a g e n t 和对a g e n t 编程。 3 1 5 1 与面向对象方法的比较 面向对象编程( o o p ) 技术是当今软件开发的主流技术,o o p 将系统看成是由 相互通信以执行外部计算的对象所构成的,面向a g e m 编程( a o p ) 贝u 是o o p 技 术的进一步发展,a g e n t 可以被看成活动的对象,即具有精神状态的对象。两种 方法都利用消息传递的方式进行通信,并且都具有继承和聚集的能力。可以利用 面向对象方法设计面向a g e n t 的系统。但在设计过程中,对象与a g e n t 主要有 三个方面的区别: 河海大学领上学位论文 基于移动a g e n t 的分布式数据查陶研究与麻用 1 白治程度的区别:a g e n t 不去调用彼此的方法而是通信请示动作的执行, 在o o p 中,是否调用方法的决定权在于调用方法的对象,而在a o p 中决定权在 于接收到请求的a g e n t 是否愿意相应请求。 2 消息传递机制的区别:虽然o o p 和a o p 的运行机制都是消息的传递和 响应,但是它们对消息的定义和处理方法却不同。o o p 中的消息定义包括目的 对象名、消息类型和参数表,对象的响应是执行在编译过程中就事先映射好的方 法,消息的类型未加限制,对消息的解释则依赖于编程时所定义的相应方法。在 a o p 中使用基于行为语言原理的消息进行通信,因而其消息类型是高度抽象化 的,比如通知、请求、承诺等,更像一种简化的自然语言,它比o o p 中消息表 达能力强很多,并且可以利用相关领域对象的描述给出更具体的消息定义和含义 解释。 3 对于对象来说,类和继承是其主要特征,而对于a g e n t 来说,类及其继 承性是非本质特征,并且不同的a g e n t 个体往往并发地运行,甚至处于不同的机 器上,要实现父类代码的共享是不容易做到的。 3 1 5 2 现有的面向a g e n t 的程序设计方法 现有的利用面向对象的方法扩展设计面向a g e n t 的系统的程序设计方法有: 面向a g e n t 的程序分析与设计方法( a g e n to r i e n t e da n a l y s i sa n dd e s i g n ) ,b d i a g e n t 系统的建模技术( a g e n tm o d e l i n gt e c h n i q u ef o rs y s t e m so fb d ia g e n t s ) , m a s b ( m u l t i a g e n ts c e n a r i o b a s e dm e t h o d ) 以及面向a g e n t 的企业建模方法 ( a g e n to r i e n t e dm e t h o d o l o g yf o re n t e r p r i s em o d e l i n g ) 。 3 2 移动a g e n t 技术 3 2 1 移动a g e n t 概述 移动a g e n t 的概念是由g e n e r a lm a g i c 公司于2 0 世纪9 0 年代在商业系统 t e l e s c r i p t 中提出来的。它的技术起源是早期的过程移动、远程计算和移动对象, 其目标是提高分布式程序设计的远程过程调用( r p c ) 的能力。简单地说,移动 a g e n t 是具有移动特。i 生( m o b i l i t y ) 的智能a g e n t ,它能在异构的网络中自主地从一 台主机迁移到另一台主机,并可与其它a g e n t 或资源交互的程序p “。 一般移动a g e n t 还具有与其它a g e n t 进行自主地通信的能力。这样用户的任 务就可由一组移动a g e m 协作完成。 移动a g e n t 通常由三个部分组成【3 j :代码状态( p r o g r a ms t a t e ) 、数据状态( d a t a s t a t e ) 和执行状态( e x e c u t i o ns t a t e ) 。代码状态指所属a g e n t 的实现代码;数据状态 包含全局变量和a g e n t 的属性;执行状态包含局部变量值、函数参数值和线程状 河海大学坝1 学位沦文皋f 移动a g e n t 的分布式数据查询研究与j 衄用 态等。 移动a g e n t 一般具有如下3 个特征【5 1 = ( 1 ) 满足软件a g e n t 的目标驱动特征: ( 2 ) 能够转移到不同的地址空间中执行;( 3 ) 转移后其执行状态是连续的,即从转 移的下一条指令继续执行,转移过程中保持自身的状态。 移动a g e n t 的工作过程如图3 2 所示。 a g e n t 初始地 土机l主机2主机3 输入信息输入信息输入信息 迁移i迁移 迁移 rr 数据 数据 i 数据 处理处理处理 a g e n t 目的地 初始状态结果状态 图3 2 移动a g e n t 的s i 作过程 移动a g e n t 的工作过程可描述为:移动a g e n t 被本地主机转移到远程主机上。 远程主机将会为移动a g e n t 提供一个合适的运行环境,移动a g e n t 在此环境中完 成收集信息、修改自身状态等操作后,移动到下一个远程主机上。移动a g e n t 重复的执行工作过程,直到回到本地主机。 移动a g e n t 是a g e n t 技术与分布式技术相结合的产物【1 训,它的应用是一种分 布式应用。在概念上,一个基于移动a g e n t 的应用由一组移动a g e n t 构成( 正如 一个面向对象的应用由一组对象构成) ,每一个a g e n t 根据自身的目标和环境的 状况移动至拥有计算所需资源的节点上,进行计算。计算的过程中,可能需要与 其它a g e n t ( 可以是同一应用中的其他a g e n t 也可以是运行系统提供服务的公共 设施a g e n t ,甚至可能是其他应用的a g e n t ) 进行通信协作。这一步的计算完成 以后,该移动a g e n t 自主地决定下一步的动作,直至其任务完成。 目前移动a g e n t 系统的应用包括分布式数据查询、电子商务、并行处理、个 人助理、信息发布、监视和通知、安全中介和工作流应用等等。 3 2 2 移动a g e n t 技术的优点 移动a g e n t 技术给分布式系统的设计、实现和维护都带来了新的活力。它在 技术方面有着多方面的优点1 4 3 1 : 减轻网络负载:移动a g e n t 技术能较大地减轻网络上的原始数据的流量。分 布式系统通常依赖于通信协议,这些协议在完成给定任务的过程中涉及多次 交互行为,这将导致网络交通拥挤。移动a g e n t 使我们可以将一个会话过程 河海大学硕士学位论文 基于移动a g e n t 的分布式数据查询研究与麻月 打包,然后将其派遣到目的主机上去进行本地交互。此外,当进行远地主机 的大量数据处理时,这些数据不应在网络上传来传去,而应在本地被处理完 成。理由很简单:应把计算移到数据上去运行,而不是把数据移到计算中来。 支持离线计算:这可以满足无线通信的特性要求,移动设备同网络的连接是 通过低速、不可靠、高延迟的无线网络,而在移动a g e n t 系统中,用户派出 a g e n t 之后,可以断开网络连接,a g e n t 在网络上自主的运行,当a g e n t 完成 任务之后,通过转接机$ 4 ( d o c k i n g ) 监视用户是否在线,当它发现用户在线时, 就返回计算结果。因此,移动a g e n t 可以很好地支持移动计算机的分布式应 用。 支持实时远程交互:在些远程控制系统中,实时性非常重要,但是网络的 延迟使远程实时控制变得十分困难。将移动a g e n t 发送到远端系统,代替人 在远端完成各种控制活动,可以从根本上解决网络延迟的问题。 支持并行任务求解:在分布式环境中,移动a g e n t 具有较好的并行性和并行 任务求解能力。移动a g e n t 不需统一调度,用户创建的a g e n t 可以异步地在 不同节点上运行,任务完成后将结果传送给用户。为完成某项任务,用户可 创建多个a g e n t 同时在一个或若干个节点上运行,形成并行求解。 具有较强应变能力:移动a g e n t 具备感知其运行环境,并对环境变化作出反 应的能力。多移动a g e n t 拥有在网络主机之间动态合理分布自身的独特能力, 比如按一定规则来维持解决某个特定问题的最优配置。 具有自然异构性:网络计算平台往往是异构的。由于移动a g e n t 通常是独立 于计算机和传输层,而仅仅依赖于其运行环境,所以移动a g e n t 提供了无缝 系统集成的最优条件。 总之,移动a g e n t 的优点不是它形成了一个新的分布式的应用,而是能在一 个单一的通用的框架结构下,有效地简单地实现大范围内的分布式应用。 3 2 3 移动a g e n t 系统 移动a g e n t 系统由移动a g e n t 和移动a g e n t 平台( 也可称为:移动a g e m 环 境、移动a g e n t 服务器、移动a g e n t 主机等) 两部分组成。 移动a g e n t 平台是一个分布在网络上各种计算设备上的软件系统【25 j ,它能为 a g e n t 提供安全、正确的运行环境,实现移动a g e n t 的移动、移动a g e n t 执行状 态的建立、移动a g e n t 的启动、实施移动a g e n t 的约束机制、容错策略、安全控 制、通信机制,并提供基本服务模块 2 2 1 ,如:事件服务( e v e n ts e r v i c e ) 、黄页服 务( y e l l o wp a g es e r v i c e ) 、事务服务( t r a n s a c t i o

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论