(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf_第1页
(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf_第2页
(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf_第3页
(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf_第4页
(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机应用技术专业论文)基于移动AGENT的电子市场的设计与研究.pdf.pdf 免费下载

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

文档简介

摘要 随着i n t e r n e t 的蓬勃发展,电子商务也在迅速崛起。b 2 c 成为非常 重要的电子商务模型。市场是人们为了进行交易而进行集会的地方。电 子市场的意义在于用i n t e r n e t 上的电子交易代替现实中的物理交易。在 电子市场中,供应商或代理商给买方提供虚拟商店,让买家可以在线订 购。这为买方的订购提供了极大的方便。然而,想要订购商品,还是要 去各个商务站点来比较、寻找符合自己要求的商品。所以,电子市场还 必须可以让用户只上一个市场站点,就可以得到从多个商家中筛选出来 的、最接近他的要求的商品清单。 这篇论文的目的就是要设计这样一个系统。我们的电子市场可以让 很多商家在其中注册。用户只需要指定他的查询条件,电子市场就会查 询整个市场中的供应商,替用户找出最可能符合要求的结果集。如果没 有精确符合用户条件的供应商,查询算法会智能的调整查询条件,返回 最接近用户要求的查询结果。我们实现的电子市场中,服务器端和客户 端的数据传递没有采用传统的c s ( 客户端朋务器) 模型,而是尝试使 用了一种相对新颖的技术软件a g e n t 。使用a g e n t 实现电子市场增 加了系统的健壮性和灵活性。考虑到基于j a v a 的平台无关性和易用性, 我们选择了基于j a v a 的a g e n t 系统,即i b m 的a g l e t s 。 美蝴:屯亏商务,耕牛砂勺谐勺 计 a b s t r a c t e l e c t r o n i cc o m m e r c eh a ss e e na n e x p l o s i v eg r o w t hi nt h er e c e n tp a s t w i t ht h eb u s i n e s s t o 。c u s t o m e rm o d e l b e i n g t h em o s t p o p u l a ra m o n g i n t e r n e tu s e r s am a r k e t p l a c ei sap l a c ew h e r ep e o p l em e e tf o rt h ep u r p o s e o f t r a d eb yp u r c h a s ea n ds a l e t h ei d e ab e h i n de - m a r k e t si st or e p l a c e p h y s i c a lb u s i n e s st r a n s a c t i o n sw i t he l e c t r o n i cb u s i n e s st r a n s a c t i o n su s i n gt h e i n t e r n e t h e r ev e n d o r sa n d s u p p l i e r sp r o v i d e av i r t u a ls h o pf o r b u y e r s t o p u r c h a s ei t e m so n l i n e t h i sh a sb r o u g h ta b o u tag r e a ti n c r e a s ei nt h eb u y e r s c o n v e n i e n c et os h o p ,h o w e v e r ,t h e b u ) 7 e rs t i l lh a st og ot oe v e r yv e n d o rs i t e t of i n dt h eb e s t b a r g a i n f o ra l li t e m t h en e x t s t e pi ne l e c t r o n i cc o m m e r c e s u g g e s t st h a tt h ec o n s u m e rb ea l l o w e d t og ot oo n l yo n es i t et h a tg i v e sh i m t h eb e s tr e s u l t sf r o m m u l t i p l ev e n d o r si n0 r d e ro f h i sp r i o r i t i e s t h eg o a lo ft h i st h e s i si st od e s i g ns u c ha s y s t e m o u re l e c t r o n i c m a r k e t p l a c e a l l o w sm u l t i p l ev e n d o r st ob er e g i s t e r e do ni t au s e r s p e c i f i e s h i sr e q u i r e m e n t s ,w h i c hi st h e ns a t i s f i e db y s e a r c h i n g a c r o s st h ee n t i r e m a r k e t p l a c ea r r i v i n ga tt h eb e s tp o s s i b l ef i t i fe x a c tm a t c h e s a r en o tf o u n d , t h en e x tb e s to p t i o n sa r er e t u r n e dt ot h eu s e r b yd y n a m i c a l l yi m p r o v i n gt h e i n t e l l i g e n c eo f s e a r c ha l g o r i t h m s i n s t e a do f f o l l o w i n gt h ec o n v e n t i o n a l c l i e n t s e r v e rm o d e lt oi m p l e m e n to u re l e c t r o n i cm a r k e t p l a c ep r o t o t y p e s y s t e m ,w ea r ee x p e r i m e n t i n g w i t hs o f t w a r ea g e n t sf o rt r a n s p o r t i n gd a t a b a c ka n df o r t hb e t w e e nt h em a r k e t p l a c ea n d i t su s e r s a m o n gt h ed i f f e r e n t s o f t w a r e a g e n t st h a t a r ea v a i l a b l e ,0 1 2 r p r e f e r r e dm o d e l i st h ej a v a - b a s e d a g l e t m o d e l t h eu s eo fs o f t w a r ea g e n t st oi m p l e m e n tt h em a r k e tp l a c ea d d s r o b u s t n e s sa n ds c a l a b i l i t yt ot f l es y s t e m w d 似 a 。 a g e n t 框架程序如下: f u n c t i o ns k e l e t o n - a g e n t ( p e r c e p t ) r e t u r na c t i o n s t a t i c :m e m o r y 幸a g e n t 的世界记忆+ m e m o r y - u p d a t e m e m o r y ( m e m o r y ,p e r c e p t ) a c t i o n c h o o s e b e s t - - a c t i o n ( m e m o d , ) m e m o r y 一u p d a t e m e m o r y ( m e m o r y a c t i o n ) r e t l l r na c t i o n 在上述程序中,a g e n t 通过u p d a t e m e m o r y 函数感知修改记忆,反应新的情况。 然后再通过c h o o s e b e s t a c t i o n 函数产生最佳的行为动作作n s f ;, b g 。最后将所 采取的动作保存在记忆中。 2 3 1a g e n t 的三种体系结构 a g e m 的体系结构是指构造a g e m 的特殊方法学,它描述了组成a g e n t 的基本 成分及其作用、各成分的联系与交互机制、如何通过刚刚知道的内部状态确定 a g e m 已采取的不同行为的算法,以及a g e n t 的行为对其内部状态和外部环境的影 响等。目前,人们提出的a g e n t 体系结构一般可以分为以下三类: 1 审慎式体系( d e l i b e r a t i v ea r c h i t e c t u r e ) 该体系结构的特点是:a g e m 中包含了显式表示的符号世界模型,a g e n t 笋j 1 2 策是通过基于模式匹配和符号处理的逻辑( 或准逻辑) 推理做出的,如同人通过 “深思熟虑”做出的决定,因此称为审慎式体系结构。 2 反应式体系( r e a c t i v ea r c h i t e c t u r e ) 该体系结构的特点是:a g e n t o ? 包含了感知内外部状态变化的感知器、一组对 相关事件做出反应的过程和个依据感知器激活某过程执行的控制系统,a g e n t 的活动是由于受到内外部某种“刺激”而产生的,因此称为反应式体系。该体系结 构在目前主流的分布式系统中占主导地位。 3 混合式体系( h y b r i da r c h i t e c t u r e ) a g e n t 中包含了审慎式和反应式两个子系统,通常这两个子系统是分层次的, 前者建立在后者的基础之上。这种体系结构的研究与实验目前在人工智能领域较 为活跃。 第三章移动a g e n t 3 1 移动a g e n t 技术 3 1 1 移动a g e n t 的起源 i n t e m e t 和w w w 已成为世界范围内的电子商务工具。i n t e r n e t 用户的不断增 长给远程学习、电子商务和多媒体通讯等领域带来无限的商机。但是,网络低带 宽,高延时越来越成为限制网络应用和发展的一个瓶颈。在现有的硬件条件下, 人们希望用软件来解决这个矛盾,在这种情况下,发展了移动a g e n t ,一种新的 分布式计算模型。基于移动a g e n t 的分布式计算模式具有统一和灵活的优点。人 们可以用该模式搭建各种分布计算平台和应用。 移动a g e n t 起源于三个早期技术:过程移动、远程计算和移动对象。其目标是 提高分布式程序设计的远程调用能力,同时减少网络传输和异步交互。“移动 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 提出的,用来支持在编程语言级的可移动性。 一般来说,移动a g e n t 是一段可执行的程序代码,它们一般都是以脚本形式 被编写,能够在异构网络中自主地从一台主机迁移到另一台主机,并可与其他 a g e n t 或资源交互,实际上移亏j 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 至l j 需要的资源的所在地,一个a g e m 能够和资源进行交互而 不 需要通过网络传递中间数据,有效地节约了带宽和降低了反应时间。同样,迁移 到一个用户的所在地,一个a g e n t 能够快速地响应用户的行为。即使网络连接暂 时不通的时候,a g e n t 依然能够继续和资源或者用户交互这些特征使移2 :j a g e n t 在移动计算应用中特别有吸引力,它能够在低带宽、高延迟、不可靠的网络中应 用。 2 移动a g e n t 允许传统的客户和服务器互相卸下工作,根据能力和当前的客 户、服务器和网络的负载情况,把工作交给其它的机器。类似地,移动a g e m 允 许一个应用动态的配置它的部件到任意的网络位置,再根据网络情况的变化,再 配置这些部件。 3 许多分布式应用和移动a g e n t 模型自然匹配,因为一个移动a g e n t 能够在一 个机器集合中顺序迁移,或者是发送一群子a g e n t 去并行地访问机器,或者是保 持同远处的资源的静态交互,或者是这三种情况的任意组合a 1 4 3 1 2 与其它网络技术比较 其它进行客户机,服务器交互的网络技术包括:消息传送、r p c 、远程对象调 用( 比如j a v a r m 或者是d c o m 或者是c o r b a ) 、队列r p c 、进程迁移、存 储过程、j a v aa p p l e t s 和s e r v l e t s 、自动安装设备、面向应用程序的查询语言和在 永久网络中面向应用的代理等。 l 与消息传送和远程调用相比较 r p c 在客户机和服务器进程之间提供了一条通道。r p c 参数可以被传输,但 双方必须有一个公共的交互定义。另外如消息传输服务,消息是非直接寻址的, 也就是说:客户端不知道显式的网络地址,甚至不知道识别目的地服务器。地址 的解释是通过中间过程的处理,比如邮局,比较适合于o n e t o m a n y 。 与消息传送和远程调用相比较,移动代码( 包括移动a g e n t ) 能够使一个应 用节省带宽和降低反应时间,因为移动代码能够被发送到资源的所在地。移动代 码为了完成它的任务,可以调用许多服务器的功能,不需要在网络中传递中间数 据。而且,移动代码能够继续进行它的任务即使连接客户机和服务器之间的网络 断掉。 2 与进程迁移相比较 一般来说进程迁移系统不允许进程选择什么时候和迁移到哪里。进程被设计 成透明地从台机器移动到另一台机器用来进行平衡负载另外尽管一些进程迁 移系统允许在异构的机器之间进程迁移,这些工具主要还是为“封闭”的环境而设 计的。移动a g e n t 根据应用的需要,可以在任意时刻移动,可以移动到它们想去 的任何地方。许多移动a g e n t 将把它们自己定位到有它们所需要的信息资源的地 方另外,几乎所有的移动a g e n t 系统被设计成平台独立和在开放环境中安全。 3 与存储过程、a p p l e t s 和s e r v l e t s 相比较 移动a g e n t s 比这些移动代码的形式更加灵活,首先,一个移动a g e n t 能够从 客户端移动到服务器,也可以从服务器移动到客户端。而许多移动代码的其它形 式只允许一个方向的移动。第二,一个移动的a g e n t 能够根据它自己的选择进行 移动。而j a v a a p p l e t s 只有当用户访问一个相关的网页的时候才被下载。第三, 一个移动a g e n t , s 够移动多次。比如:一个移动a g e n t 能够不断地从一个网络位置 移动到另一各位置,来保证它和客户之间的最小的平均响应时间。同时一个客户 端a g e m 能够持续地迁移来获得它需要的资源。 4 与面向应用的解决相比较 专门的查询语言和在专门的网络位置安装的特定代理,移动a g e n t 和它们的 区别在于灵活性和容易实现。一个应用能够发送它自己的代理到任意一个选定的 网络位置并能够随着网络物理情况的变化移动代理。 3 2 移动a g e n t 系统结构 移动a g e n t 系统由移动a g e n t 和移动a g e m 服务设施( 或称a g e n t j 服务器) 两部 分组成移动a g e m 服务设施基于a g e n t 传输协议( a g e m t r a n s f e rp r o t o c 0 1 ) 实现 a g e n t 在主机间的转移,并为其分配执行环境和服务接口。a g e n t 在服务设施中执 行,通过_ a g e n t n _ _ 信语言a c l ( a g e m c o m m u n i c a t i o nl a n g u a g e ) 相互通信并访 问服务设施提供的服务。 如图3 1 所示,移动a g e n t 的体系结构可以定义为以下相互关联的模块:安全代 理、环境交互模块、任务求解模块、知识库、内部状态集、约束条件和路由策略。 体系结构的最外层为安全代理,它是a g e m 与外界环境通信的中介,执行a g e n t 的安全策略,阻止外界环境j c j a g e n t 的非法访问。a g e n t 通过环境交互模块感知外 部环境并作用于外部环境。环境交互模块实现a c l 语义,保证使用相同a c l 的 a g e n t 和服务设施之间的正确通信和协调,而通信内容的语义与a c l 无关。a g e n t 的任务求解模块包括a g e m 的运行模块及a g e n t 任务相关的推理方法和规则。知识 库是a g e n t 所感知的世界和自身模型,并保存在移动过程中获取的知识和任务求 解结构。内部状态集是a g e n t 执行过程中的当前状态,它影响a g e m 的任务求解过 程,同时a g e l 2 t 的任务求解又作用于内部状态。约束条件是a g e n t g l j 建者为保证 a g e n t 的行为和性能而做出的约束,如返回事件、站点停留时间及任务完成程度 等,一般只有创建者拥有对约束条件的修改权限。路由策略决定a g e n t 的移动路 径,路由策略可能是静态的服务设施列表( 适用于简单、明确的任务求解过程) , 或者是基于规则的动态路由以满足复杂和非确定性任务的求解a 外部环境( 服务设施或其他a g e n t ) 图31 移动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 3 移动a g e n t 的迁移与定位机制 本小节讨论移动a g e n t 的迁移方式、定位机制以及存在的问题。 3 3 1 移动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 迁移,则必须等到程序 变为正常状态。图3 2 显示迁移时a g e n t 的状态变化。 状态。图3 2 显示迁移时a g e n t 的状态变化。 幽3 , 2a g e n t 迁移示意图 d e l e t e d ( 2 ) 代码的迁移 a g e n t 不仅仅是由状态构成的,用于运行a g e n t 的代码也必须迁移到新的主 机。一般有两种方式来传递代码。 同每个a g e n t l ) , j 状态一起传递代码 这从根本上把代码和状态紧紧结合在一起。如果许多a g e n t 都被移动到一个 给定的主机,那么代码将是被传递的一个重要部分。 把代码放在一个文件服务器中。并且n a g e n t - - 道仅传递该代码的u r l 。 主机可以根据需要下载代码并可在本地缓存。这种方法允许几个a g e n t 共享相同 的代码,因此更加有效。同时我们也可以通过更新服务器上的a g e n t 代码而更新 a g e n t 。 3 3 。2 移动a g e n t 的定位 如果a g e n t 可以在网络移动,那么追踪它的位置就显得很重要,不然无法和 这个a g e n t 进行通信。用多种方法可以用来对它进行定位,这里介绍一种追踪的 方法,其示意图如图33 所示。 在这种情况下,n a g e n t 从一个主机迁移到另外一个主机时,在其后留下”痕 迹”。n 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 3 追踪示意图 在图3 3 中,客户机向主机1 询i h 7 a g e n t 的位置,如果a g e n t 在主机1 中,立即 返回结果;如果a g e n t ;l ;在主机1 中,则委托主机1 向追踪路径中的下一个主机询 问,即主机2 。由f f z a g e n t 不在主机2 中,询问继续到主机3 。a g e n t 在主机3 中, 所以把当前位置信息返回主机2 ,然后再传给主机1 ,最终传递给客户端。 这种定位方法最大的优点在于简单,但它也存在一些问题。比如所有主机都 要存储a g e n t 的“路径”,当访问该主机 拘a g e n t 数目越多时,所占的空间越大。另 外,如果追踪的路径很长,那么造成延时太长,客户端要等待很长的时间。 3 4a 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 系统( m a s :m u l t i a g e n ts y s t e m ) , 这些a g e n t 的协商、协作已越来越受到有关学者的重视。 多a g e n t 的交互( m u l t i a g e n ti n t e r a c t i o n ) 是指多个a g e n t 通过协调各自的行 为,通过合作完成共同任务。早在2 0 世纪8 0 年代,l i v n y 和m e l m a n 就证明在个 由若干自治处理机组成的分布式系统中,存在着这样种可能性:当提交的任务 在某些处理机上等待排队时,系统中至少有一个处理机却空闲着。这个结论清楚 的表明了实现动态负载共享的必要性和效益。然而,在多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 之间所承担的子计划的关系,m a r t i a l 将自治a g e n t 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 n t 之间豹负载动态调整。它遵循就近原则,在局部范围内寻找最优的合作者, 协作完成子计划,从而平衡负载,降低开销,扩大分布式计算环境的处理能力。 域 首先提出域的概念,用于限定消息的广播范围。使得a g e n t 发送消息时,可 以针对某- - a g e n t 群体。域和a g e n t 具有以下关系: ( 1 ) 全部a g e n t 都属于“w o r l d ”域。w o r l d 域作为缺省域预先存在,所有a g e n t 在产生时都被认为属于w o r l d 域。 ( 2 ) a g e n t 可同时属于若干个域。 ( 3 ) a g e n t 司 执行域上的三个操作:创建域、进入域和退出域。 a g e n t 与域的关系是动态变化的,可根据环境或自身状态的变化进入某个域 或退出某个域,关系较灵活。在分布式问题求解( d p s :d i s t r i b u t e dp r o b l e m s o l v 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 协作策略的目标是:遵循就近原则,在局部范围内找到最 优的合作者,协作完成子计划。通过协作,对系统中的负载情况进行动态调整, 尽量消除或减少系统e 0 a g e n t 负载不均的现象。通过将重载a g e n t 的子计划委托给 轻载a g e n t 执行,平衡系统负载,提高系统的吞吐量,减少系统总开销,从而扩 大分布式系统的处理能力。 协作策略 在基于域的协作中,协作分为两个阶段:即“找合作者”阶段和“协作执行”阶 段。 在第一个阶段中,a g e n t j z _ 取评估函数最小的a g e n t 进行合作,使系统负载更 趋于均衡。当存在多个这样的a g e n t 时,则更倾向于与轻载a g e n t 合作,保证整个 任务的高效执行。在协作执行阶段,a g e n t l n 选定的协作者发确认信息,开始交 互:向域内其它a g e n t 发撤销消息,终止与它们交互。 由于域的特点,保证了域p q a g e n t 之间一般具有正交互关系,合作的可能性 大。因此,a g e n t h m “在较小的范围内找到局部最优的合作者,其效率较高。 3 5 用j a v a 语言开发移动a g e n t 移动a g e n t 作为一种分布式计算模型,其优越的性能受到越来越多的重视。 最早实现移动a g e n t l n 2 2 具语言主要是t c l 、s c h e m e 等,而且只有一个可用的商业 系统t e l e s c r i p t 。j a v a 的出现改变了这一切,它的平台无关性、动态类装载、多线 程编程等特点使它成为适合开发移动a g e n t 系统的语言。目前大部分商业性和研 究性的移动a g e n t 系统都是基于j a v a 语言,例女1 1 g e n e r a lm a g i c 公n 的o d y s s e y i b m 公司的a g l e t s 、o b j e c t s p a e e 公司的v o y a g e r 等。 3 5 1j a v a 开发移动a g e n t 的优势 与其它语言相比,n j a v a n 言开发移动a g e n t 系统具有如下的优势: 平台无关性:j a v a 是基于目标代码共享的,在移植到另外一个平台上无需重 新编译。 良好的安全性:移动代码虽然不像a p p l e t 局限于沙箱( s a n d b o x ) 中运行, 但是它的操作权限完全可以由j a v a 语言内嵌的安全机制来控制,而且对于权限的 修改、分级等也是很方便的。 动态类装载机制:允许虚拟机在运行期间将指定的类动态装载到内存、创 建实例进而运行,并且每个a g e n t n 有独立的类装载器,能有效的分隔a g e n t 。 内建的对象序列化机制:通过这个机制,可以实现a g e n t 本身代码和它所需 要的工作数据在i n t e m e t 上透明传输。 反射机制:j a v a 虚拟机能在运行期间探测到个未知类的值域、方法和构 造函数,使两个相互之间并不了解的移动a g e n t 能通过一种方便的途径通信。 多线程编程:j “a 语言的多线程编程使同一个a g e m 主机上可以同时有多个 a g e n t 独立的运行,j a v a 语言内建的同步机制使这些a g e n t 2 _ 间可以相互通信。 r m i 功能:使用j a v a 语言可以通过r m i 实现对分布式对象的透明存取。 3 5 2j a v a 的动态迁移 j a v a 程序是由若干类组成,运行时对类实例化,即构成对象。对象是一个动 态的概念,有开始点,终止点和运行的状态,对象的成员变量即反映了对象的状 态。如果把一个对象的运行状态记录下来,再发送到另一台机器上,恢复该对象 的状态,则可让该对象接着前面的状态继续运行,这就实现了对象的动态执行。 j a v a 中实现对象的动态迁移方法是:在程序中调用o b j e c t o u t p u t s t r e a m 类中的 w r i t e o b j e e t 0 成员方法即可把对象写到输出流中,调用o b j e c t l n p u t s t r e a m 类中的 r e a d o b j e c t 0 可从输入流中读入对象,这一过程称为s e r i a l i z a t i o n n j 序列化过程。 j a v a r m i 机制的实现,把对象写到网络连接的输出流,再从该连接的另一端 读入对象,从而完成网络中对象的动态传递,实现分布式并行计算。 定义这种可实现对象迁移的类,只需在类中定义s e r i a l i z a b l e 接口,现举例说 明: p u b l i cc l a s sm y a g e n t i m p l e m e m s s e r i a l i z a b l e ) 对象实例化,生成可移动的类实体。 m y a g e n ta g e n t l 2 n e wm y a g e n t 0 ; 一些基- 于j a v a 的移动a g e n t 系统以及其它系统提供p e r s i s t e n ta g e n t 状态信 息。p e r s i s t e n t 是通过记录a g e n t 状态实现的:首先把状态 , p e r s i s t e n ts t o r a g e ,然 后在必要的时候提取出来,用来重建a g e n t 。当一个a g e n t 序歹化过程完成后,就 可以移动到另外的主机上,在到达时重建。 3 5 3r m i 技术 j a v a 的网络通信模块支持套节字( s o c k e t ) 、u r l 通信和分布式对象协议即 r m i ( r e m o t em e t h o d i n v o c a t i o n ) 。用j a v a 编程,可以很容易的实现分布对象间 的通信。通过本地代理完成r m i 对远程对象的控制。 r m i 构成思想是:一个在i m e m e t 上的计算机运行一个程序就能够激活安置在 i n t e m e t 上另个地方运行某个程序的方法。为了实现一个程序能够激发另一个程 序的方法,两个程序必须协定一致的方法名称和参数。j a v a 有一个内置的处理这 种情况的方法,如果定义一个接口的话,它们就可以共同使用了,然后约束名称 和参数匹配。定义接口后,还要实施接口。可以通过扩展u n i c a s t r e m o v e o b j e c t 类,来设计r m i f 艮务器所调用的程序,它将具有接收远程方法的能力。当计算机 接收到远程请求后,就会在注册表中搜索是否有相应的名称,如果有的话,则调 用相应的方法。 当客户机调用方法后,实际调用的是存根类。存根类收集必须的信息,通过 i n t e m e t 传输给服务器上实际的方法。在服务器端,搜索注册表中的方法名称。如 果有的话,可以通过i m e m e t 获取数据,然后传给大纲类。当方法返回时,大纲类 捆绑答复,然后传回给存根类,存根类解绑返回的数据,并将结果传给方法的调 用者。 3 5 4j a v a 的动态转载类机制 j a v a 动态装载类的方式馒代码和状态信息的传递更加便利。j a v a 应用程序中 的类可以在j a v a 的c l a s s p a t h 指定的目录中寻找,也可以通过网络完成。为了 动态的转载移动a g e n t 代码及其引用的类,类转载机制提供一下几种方法引用类: 序列化后的a g e m 包含所有的类和它所引用的类。 a g e n t 的类可以从不同的w e b s e r v e r 上得到。 a g e n t 中类通过指定的c l a s s p a t h 得到。 所有转载的j a v a 类代码都必须遵从安全规则,这对移动a g e m 系统来说是很 重要的,因为它保障t a g e n t 年n 它所在的主机不受非法入侵。j a v a 的安全管理机 制采用安全性可设置的策略。比如,一个用户发出的a g e n t 可以获得文件读写权, 另外一个用户的a g e n t r 能有读文件权,而其他用户的a g e n t 甚至不会得到任何文 件操作权。 3 5 5a g e n t 的发送和接收 j a v a 支持基于w e b 的移动a g e m 系统的开发。a p p l e t 口7 以通过w e b b r o w s e r 发 送移动a g e n t ,也可以在完成指定任务后在把它们接收回来。j a v a 迓i 提供了类似 - = a p p l e t 技术的服务器技术,s e r v e l e t s 功能类c a 于c o m m o n g a t e w a y i n t e r f a c e s c r i p t ,也可发送和接收a p p l e t 。 j a y a 的命名和目录接口j n d i ( j a v an a m e a n dd i r e c t o r y i n t e r f a c e ) 使移动a g e n t 系统在不同的命名规则和目录服务中无缝的连接,并获取信息成为可能。移动 a e e n t 可以通过烈d i 服务提供者获得它所需服务的地址,然后进行连接。 第四章a g e n t 与电子商务及电子市场 4 1 电子商务理论 4 1 1 电子商务的产生及发展 电子商务最早产生于7 0 年代初期,发展于9 0 年代。近3 0 年来,计算机的处理 速 度越来越快。处理能力越来越强,价格越来越低,应用越来越广泛,这为电子商 务的应用提供了基础;同时,由于i m e m e t 逐渐成为全球通信与交易的媒体,全球 上网用户呈级数增长趋势,i m e m e t 快捷、安全、低成本的特点,为电子商务的发 展提供了应用条件;而信用卡的普及应用,也使网上支付成为了可能。所有的这 些条件都促使了电子商务的产生。 电子商务的发展到今天,经历了三个阶段: 1 7 0 年代9 0 年代:基于e d i 的电子商务 电子商务的雏形出现于2 0 世纪7 0 年代大型银行间专用网络中的电子货币交 换即 e f t ( e l e c t r o n i cf u n d st r a n s f e r ) | 据统计,1 9 9 5 年美国联邦政府内部的款项支付 仍有5 5 通过e f t 进行,但其专用性限制了它的推广。7 0 年代初期,人们开始采 用e d i ( e l e c t r o n i cd a t a i n t e r c h a n g e 。电子数据交换) 作为企业之间电子商务的应 用技术。e d i 是将业务文件按个公认的标准从一台计算机传输到另一台计算机 上去的电子传输方法。由于e d i 大大减少了纸张票据,因此,人们也形象的称之 为“无纸交易”或“无纸贸易”。它高效、安全、迅速、自动化程度高,成为电子商 务新方式并得到迅速发展。 然而,e d i 代价昂贵,信息传递相对封闭,基于该技术的电子商务并未得到 广泛使用。 2 9 0 年代以来:基于国际互联网的电子商务 由于使用v a n 的费用很高,仅大型企业才会使用,因此限制了基于e d i 的电 子商务应用范围的扩大。直到9 0 年代,随着开放的i m e m e t 及基于 m e m e t 的w w w 技术的出现并逐渐成熟,电子商务才真正成为电子商务,进入一个全新的时代, 并以前所未有的速度发展。随着网络技术和网际数据库系统的发展与完善,商业 和金融的电子化方兴未艾,各大银行与商家为在激烈的竞争中取得不败之地积累 资本,前所未有地依赖于它们的信息资源。据统计,美国电子市场从1 9 9 4 年至今, 己覆盖服装、图书、声像制品、电子电脑产品、旅游服务等各个方面,其年交易 额更以2 0 0 3 0 0 的速度上升。 由此可见随着信息时代的知识经济和数字经济的到来,电子商务必将在未 来的经济活动中占绝对的主导地位。 3 。电子商务的新发展 随着计算机和计算机网络的应用普及,电子商务不断被赋予新的含义。电子 商务被认为是通过信息技术将企业、用户、供应商及其它商贸活动涉及的职能机 构结合起来的应用,是完成信息流、物流和资金流转移的一种行之有效的方法。 随着i n t e r n e t 的普及以及w w w 服务的提供,可以声、文、图并茂的方式体现商品 的特征,并尽可能地便利用户。由于对i n t e m e t 平d 其他产业潜在的影响,电子商务 被列为未来十大i t 主导技术之,迎接新的“电子商务时代”成为人们讨论的主 题。电子商务具有诱人的发展前景,将是一个巨大的市场,迫切需要研究和开发 专门的技术和系统。 4 1 2 电子商务定义 电子商务在许多情况下被称为电子贸易( e l e c t r o n i cb a d e ) 、无纸贸易 ( p a p e r l e s st r a d e ) 、电于交易( e l e c t r o n i ct r a n s a c t i o n ) 网络贸易等。简单地讲, 电子商务是指利用电子网络进行的商务活动。但电子商务的定义至今仍不是一个 很清晰的概念。各国政府、学者、企业界人士都根据自己所处的地位和对电子商 务的参与程度,给出了许多表述不同的定义。比较这些定义,有助于我们更全面 的了解电子商务。 l 美国学者瑞维。卡拉科塔和安德鲁b 惠斯顿在他们的专著电子商务的前 沿中提出:广义地讲,电子商务是一种现代商业方法。这种方法通过改善产品 和服务质量、提高服务传递速度,满足政府组织、厂商和消费者的建低成本的需 求。这一概念也用于通过计算机网络寻找信息以支持决策。一般地讲,今天的电 子商务通过计算机网络将买方和卖方的信息、产品和服务器联系起来,而未来的 电子商务者通过构成信息高速公路的无数计算机网络中得一条将买方和卖方联 系起来。 2 1 9 9 7 年1 1 月6 日至7 日在法国首都巴黎,国际商会举行了世界电子商务 会议( t h ew o r l db u s i n e s sa g e n d af o re l e c t r o n i c ) 关于电子商务最权威的概念阐 述:电子商务( e l e c t r o n i cc o m m e r c e ) ,是指对整个贸易活动实现电子化。从涵盖 范围方面可以定义为:交易各方以电子交易方式而不是通过当面交换或直接面谈 方式进行的任何形式的商业交易;从技术方面可以定义为:电子商务是种

温馨提示

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

评论

0/150

提交评论