摘 要:近年来,迅速发展的Internet技术极大地改变了人们处理信息的方式。过去主要用于科研领域和收发电子邮件的Internet,成了电子商务的重要平台,从而推动了移动Agent技术的进一步研究和应用。本文介绍了Agent的优点和应用范围。
关键词:移动;Agent技术
1.移动Agent
随着网络技术的发展,可以让Agent在网络中移动并执行,完成某些功能,这就是移动Agent(Mobile Agent)的思想。移动Agent是一个能在异构网络中自主地从一台主机迁移到另一台主机,并可与其他Agent或资源交互的程序,实际上它是Agent技术与分布式计算技术的混血儿。
移动Agent具有很多优点,移动Agent技术通过将服务请求Agent动态地移到服务器端执行,使得此Agent较少依赖网络传输这一中间环节而直接面对要访问地服务器资源,从而避免了大量数据地网络传送,降低了系统对网络带宽的依赖。 移动Agent不需要统一的调度,由用户创建的Agent可以异步地在不同结点上运行,待任务完成后再将结果传送给用户。为了完成某项任务,用户可以创建多个Agent,同时在一个或若干个结点上运行,形成并行求解的能力。此外它还具有自治性和智能路由等特性。
2.移动Agent的分布式计算模式
移动Agent模式的关键特性就是网络中的任一主机都拥有处理资源、处理器和方法的任意组合的灵活性[2]。方法(在移动Agent)的形式下)没有锁定在一台主机上,而是在整个网络内可共享。
3.移动Agent的主要优点
降低网络负载:这一特征概括了基于移动Agent的分布式计算的特点,即将计算移往数据,而并非把数据移往计算。这样做所带来的好处是可以减少网上原始数据的流量。
克服网络延迟:在一些系统应用中,对环境做出实时反应是极为重要的,对此移动Agent技术提供了一个很好的解决方法,可以由中央处理器将移动Agent派遣到系统局部,直接执行控制器的指令,从而消除网络延迟带来的隐患。
包装不同协议:,移动Agent可以移动到远程主机上,通过专用协议建立私有数据交换通道。
异步和主动执行功能:移动设备通常依赖昂贵而脆弱的网络连接进行工作。移动Agent便可以独立创建它的进程,异步、自主地完成所肩负的任务;移动设备则可以在这之后再连接上网络,收回Agent,取得服务结果。
动态适应环境:移动Agent具有感知运行环境和对其变化做出自主反应的能力。由于移动Agent往往独立于特定的主机和传输层协议,而仅仅依赖于它的执行环境(已屏蔽各平台的差异),因而为进行无缝的系统集成提供了极为有利的条件。
健壮性和容错性:由于移动Agent具有对不利的情况和事件动态做出反应的能力,因而减小了建立健壮和容错的分布式系统的难度。在一台主机被关闭以前,可以给正在运行的移动Agent发出警告,它们可在很短的时间内移动到网络上其他主机上,且继续运行。
4. 移动Agent的应用范围
由于移动Agent所具有的优越性,使它在以下应用中具有很大的潜力。
电子商务:移动Agent非常适合电子商务。交易常常要求实时访问远程信息,如股票报价,甚至是进行实时谈判。不同的Agent拥有不同的目标,并将采取不同的策略以实现各自的目标。可以预想Agent能体现其创建者的意,并能代表他们的各自利益进行谈判。由此可见,移动Agent技术在电子商务领域有着广阔的应用前景。
分布式信息检索:正如在前面分析移动Agent技术优越性时指出的那样,移动Agent派往数据所存放的地方将大大减轻网络负载和消除网络延迟[3]。同时,由于Internet这样的浩如烟海的信息环境中进行分布式信息检索往往需要花费大量的时间,这时如果仍保持网络连接,则需要花费许多费用[1];但是通过使用移动Agent技术,使得创建移动Agent的主机可以与网络断开连接,从而节省大量的连接费用和主机机时。
信息发布:移动Agent可以帮助实现Internet的信息PUSH模型[4]。例如,移动Agent可以将新的软件版本以及安装程序直接带到客户主机,进行自动升级和维护。
个人助手:由于具有在远程主机上运行的能力,使移动Agent具备代表其创建者在网络中完成特定任务的能力。由于不受网络连接的限制,其创建者甚至可以关掉他们的计算机。
安全中介:在合作者之间并不能彼此完全信任的情况下,各方可以将移动Agent派往一台彼此都认为安全的主机(它提供了移动Agent的执行环境)上进行协作,从而不必冒险接受对方的直接访问。
电信网络业务:对先进电信业务的支持和管理,关键在于能够对网络进行动态配置和定制用户业务。庞大的物理网络规模和用户的严格要求,使得只有依靠移动Agent技术才能有效地保证系统的灵活和高效。
工作流应用:工作流应用的特点之一是支持合作者之间的信息流动。对此,移动Agent技术能够提供很好的支持,可以将信息相关的操作封装在移动Agent中,再利用后者的移动性和自主性,让信息在机构内部有效地流动。
并行处理:在并行计算中,可以利用Agent技术把各个需要并发执行的子任务派遣到不同的主机上,以实现并发计算。
总之,Agent特别适合用于解决传统方法中要么代价过于昂贵,要么解决不了的问题,如数据、控制、专家知识和资源分布问题,使大量的数据处理可在数据源进行(因为Agent可以移动),只需交换少量的高层信息,减少了大量原始数据传送到远地的操作,提高了网络的利用率;如果需要人性化的进程,Agent具有观察能力、主动适应能力,而不是通过一些预先严格确定的接口函数与外界进行交互作用,能根据目标主动规范化自己的行为,使用用户界面达到“人性化”;如需要集成旧系统,可通过给旧系统上包装一层Agent外壳,其他系统可以调用旧系统的功能。
参考文献:
[1] 胡于进,凌玲.决策支持系统的开发与应用[M].北京:机械工业出版社,2006-09:124-169.
[2] 庞伟正,金瑞琪,王成武一种规则引擎的实现方法[J].哈尔滨:哈尔滨工程大学学报,2005(6):385-389.
[3]韦鲁玉,丁华福基于Agent的个性化智能信息检索系统[J).信息技术,2007(1);109-111
[4]刘崇学.基于智能搜索引擎的数字书馆个性化服务研究[J].现代情报.2006(11):16-18