基于移动Agent的虚拟参考咨询组织的设计和构建
2009-01-11姚宇峰
姚宇峰
〔摘 要〕虚拟参考咨询组织是一个连接多个图书馆虚拟参考咨询平台,实现了图书馆的服务和信息共享。本文首先介绍移动Agent的概念、特性,以及采用移动Agent技术构建虚拟参考咨询组织的优势。然后提出使用移动Agent技术构建虚拟参考咨询组织的整体架构;并详细描述了系统工作流程。最后针对移动Agent技术的特性,提出该组织系统今后可以改进的几个功能细节。
〔关键词〕移动Agent;虚拟参考咨询;无缝连接;图书馆
〔中图分类号〕G250.7 〔文献标识码〕B 〔文章编号〕1008-0821(2009)11-0122-03
Analysis and Construction on Virtual Reference
Organization Based On Mobile AgentYao Yufeng
(Library,Ningbo University,Ningbo 315211,China)
〔Abstract〕Virtual reference organization which connects multiple virtual references in each library,implements the sharing of library services and information.This text first introduced the concept and features of the mobile agent,and the advantage of using the mobile agent technology to construct the virtual reference.Then this text proposed the overall architecture of the virtual reference organization built on the mobile agent,and described system work flow in detail.At last,for the features of the mobile agent,this text proposed some of the details in the function of the organization in future.
〔Keywords〕mobile agent;virtual reference;seamless connection;library
随着网络技术的发展,单个图书馆的虚拟咨询平台日趋成熟。但如果要满足读者不受时间和地理上限制可以享受咨询服务,并且可以随意在多个图书馆找到最理想的咨询服务,这就要求我们将不同虚拟咨询平台组织起来,有效地利用各个图书馆的资源。构建虚拟参考咨询组织,就是通过计算机网络将不同地理位置上的咨询者和图书馆连接起来,实现咨询服务人员和信息资源的共享。本文采用移动Agent技术建立一个无缝连接的虚拟参考咨询组织。
1 移动Agent
移动Agent是由一组计算机程序和数据组成的软件实体,可以在一个异构的网络环境中自主从一台计算机迁移到另一台,并可以与其他Agent或资源实体交互,完成客户的目标任务。移动Agent是一种具有自主性、移动性、学习性代理实体,同时移动Agent之间还具有协作性。具体如下:
1.1 自主性
移动Agent可以不直接由人或其他主体控制,自主地决定迁移到时间和路径,对自己的行为和内部状态有一定的控制权。
1.2 移动性
移动Agent在执行过程中,可以在异构的网络平台间,准确地将程序和数据资源从一个平台迁移到另一个平台,并且可以在不同平台上执行任务。
1.3 学习性
移动Agent可根据已有的知识和经验进行推理。移动Agent的智能由3个主要部件来完成,即内部知识库,自适应能力以及基于知识库的推理能力。
1.4 协作性
移动Agent之间可以共享和交流信息,从而完成信息搜索任务,这是移动Agent实体之间应该具有的社会属性。
因此使用移动Agent技术不仅解决整合异构咨询平台的问题,而且还能选择目标平台,最佳路径,并对现有信息的进行推理学习,提高咨询效率和速度。
2 基于移动Agent虚拟参考咨询组织构架
2.1 组织构架
系统拥有两个本地数据库:FAQ库和用户反馈信息库,设置本地FAQ库为了提供迅速快捷的咨询服务,还可以减少网络阻塞,提高系统工作效率。用户反馈信息库用来记录用户基本信息和反馈信息,系统通过这些信息更智能地分派各类咨询信息。系统中同时设置6类Agent,分别是用户Agent、过滤Agent、调度Agent、信息Agent、反馈Agent和移动Agent。
2.1.1 用户Agent
作为用户与咨询系统之间交互的桥梁,为用户提供图形用户接口的交互界面(GUI),让用户能方便、直观地进行交互。接受到用户的问题,用户Agent反映给系统中的过滤Agent,等系统完成问题推送获得信息,用户Agent接受系统中调度Agent创建的信息Agent,经过字段整理以后显示于用户界面。同时用户也可以通过用户Agent对咨询的结果进行反馈。
2.1.2 过滤Agent
一方面负责用户咨询信息的过滤,将非图书馆领域范围或同一用户重复、恶意的问题过滤掉;另一方面负责对用户的回答信息进行过滤,删除部分不满足用户要求,无意义的回答信息。
2.1.3 调度Agent
调度Agent在这个系统中像一个管家,管理这系统中各类Agent(图1)。调度Agent拥有Agent成员登记表,信息库和路由表。Agent成员登记表用于系统现有Agent的情况登记,调度Agent通过对登记表登记、修改和删除,从而注册、启动和注销组织中各种Agent。信息库是用来存储各个Agent信息的数据结构,可以是个向量表或堆栈。调度Agent也根据反馈Agent的信息修改信息库中的目的地选项,提供该问题用户反馈的最佳咨询平台。路由表提供移动Agent的路径,派遣移动Agent到各个异构咨询平台。
2.1.4 信息Agent
负责采集、处理各类信息。信息Agent既可以在本地FAQ库采集到用户需要的回答,也可以将调度Agent抽取出来提问率较高的问题写入FAQ库。同时信息Agent为移动Agent提供信息存储和分析处理功能。
2.1.5 反馈Agent
携带用户反馈信息的一种特殊信息Agent,设有用户基本信息,联系信息等个人信息,并记录对所回答问题的平台、满意程度等反馈信息。调度Agent判断用户反馈信息有无,决定是否产生新的反馈Agent,用来对用户反馈信息库中的数据添加、删除和更新。
2.1.6 移动Agent
负责携带用户所咨询的问题信息到指定的平台,并将答复信息带回系统。在这个过程中,移动Agent不仅可以实现留言版模式咨询,也可以根据问题的难易、缓急程度,由咨询平台的咨询人员启用实时交流工具和用户直接交互,等实时交流之后,由咨询人员将信息总结以后由移动Agent带回系统。
2.2 组织工作流程
咨询业务流程是从用户Agent获得信息开始,具体如下(见图2):
(1)用户Agent获取用户的基本信息和所要咨询问题的信息,并请求调度Agent派发过滤Agent过滤信息。
(2)过滤Agent核实所要咨询问题是否在图书馆咨询领域范围内,问题是否在一定时段里恶意重复等,用户的基本信息是否完整。过滤完毕将信息交于调度Agent。
(3)调度Agent创建一个信息Agent到本地FAQ进行查询,如果找到相同的问题,该信息Agent就将答复信息带回。如果找不相同的问题,则创建一组信息Agent和移动Agent,根据调度Agent自身信息库和路由表,将这组Agent派送到合适的平台。如果所有的咨询平台都没有工作人员提供服务或都有用户正在服务,则将Agent放入等待队列。
(4)信息Agent带回答复信息以后,调度Agent将对相应的Agent进行注销:从各咨询平台带回信息的移动Agent和信息Agent,或是从本地FAQ库带回信息的Agent。同时调度Agent激发过滤Agent对答复信息进行过滤,删除将和问题无关的信息。
(5)过滤Agent将答复信息返回给用户Agent,由用户Agent将答复显示给用户,同时要求用户对答复填写反馈信息。
(6)用户Agent收到用户反馈信息以后,请求调度Agent激活一个反馈Agent,然后将反馈信息交给反馈Agent。
(7)反馈Agent对反馈信息进行筛选,同时申请从调度Agent的信息库中获得用户信息,将两者信息整合后写入用户反馈信息库。若用户没有反馈信息,则向调度Agent申请注销。
(8)调度Agent对系统中不需要的Agent进行注销,至此一次咨询服务完成。
3 结束语
本文指出移动Agent技术的自主性、移动性、学习性和协作性,在整合图书馆虚拟参考咨询组织的优势;描述了此咨询组织的系统架构和咨询服务的详细工作流程。在今后研究中,可考虑移动Agent的社会属性的应用,例如有几个平台协作完成咨询服务;在移动Agent工作中进一步提高其自主性,除了去指定目标完成任务,还可以在环境改变,目标平台发生问题的时候,自主寻找合适的平台完成任务。
参考文献
[1]赵京胜,巩玉玺.基于移动Agent的信息搜索系统的研究[J].计算机工程与设计,2008,(20):5364-5367.
[2]林强.基于智能Agent的用户个性化检索系统的实现[J].图书馆学研究,2005,(5):7-10.
[3]于淑惠.一个基于移动Agent的信息检索系统[J].现代图书情报技术,2004,(10):46-50.
[4]党辰,王嘉祯,王素贞.基于组件的移动Agent平台设计与实现[J].计算机工程与设计,2009,(3):700-702.