1、个人助手 Agent 的研究与应用个人助手 Agent 是一类典型的应用软件 Agent,它通过建立用户的个性化模型,能够代表用户,自主或者半自主地为用户和其他个人助手 Agent 提供相应的服务。 个人助手 Agent 兴起 自 20 世纪 80 年代以来,随着计算机技术的普及以及办公自动化的发展,人们越来越多地利用计算机软件系统来处理大量信息和日常事务。到了 20 世纪 90 年代中期,网络技术尤其是互联网技术得到迅猛发展,计算机以前所未有的速度在人们的学习、工作和生活中得到迅速推广和应用,这给人们如何有效地使用计算机系统带来了新的挑战。 一方面,互联网的迅速增长使用户可以享受互联网上大量
2、、丰富的资源,然而“人找信息”的服务模式却难以满足用户对资源日益增长的需求,如何有效地共享和综合利用互联网上的海量信息资源成为当前一项挑战性的研究工作; 另一方面,业务应用变得更为复杂,在人与计算机的交互过程中,人仍然要处理大量繁琐的工作,需要明确地告诉计算机系统“要做些什么”以及“如何去做” 。面对庞大、多样化的业务,用户越来越难以有效地驾驭日益复杂的软件系统。在此背景下,个人助手 Agent 应运而生。概括起来,个人助手 Agent 的兴起与发展有以下两方面的因素。 第一是应用需求的牵引,这主要表现在三个方面: 用户需要在与计算机交互的过程中减轻负担。由于软件系统的日趋复杂,用户需要与计算
3、机进行大量的交互,这极大地增加了用户的负担、降低了用户的工作效率。目前,这些应用主要涉及的领域包括网上信息搜索和过滤、日程安排、会议组织、邮件管理、文档格式转换、旅行规划等。人们急切需要将其中的许多工作交由能够代表用户利益、具有一定智能的软件系统来完成。 用户对个性化的需求。相对于海量、无序、不断成长的互联网信息,每个用户真正感兴趣的信息实际非常有限,不同用户的关注内容也有所差别。因此,人们需要一种能够根据用户的特点,自动地组织和调整信息的服务模式。 用户对主动化服务的需求。现阶段大部分计算机系统仍然充当人类“佣人”的角色,人们必须明确告诉它们“做什么”和“如何做” ,人们期望将来的计算机能够
4、作为人类的“管家”或者“助手” ,只需要告知“做什么” ,它们就能知道如何去做,甚至能够自发地为用户提供服务。 第二是技术发展的牵引,这主要依赖于人工智能和分布式人工智能、软件工程、软件 Agent 等技术的发展。智能Agent 是人工智能和分布式人工智能领域的研究热点,它侧重于研究 Agent 的认知、学习、理性决策等方面的技术和能力以自主地进行问题求解,进而来支持智能应用系统的构造和实现。为了支持互联网发展所带来的新颖计算模式以及复杂应用系统的开发,许多学者对 OO 技术和构件技术进行了扩展,并提出了诸如主动对象、主动构件等概念和技术,随之产生了软件 Agent 技术。软件 Agent 技
5、术将 Agent视为是一种新的概念抽象和计算模型,侧重于研究如何构造具有自主性、反应性和主动性等特征的软件系统。总之,智能 Agent 技术和软件 Agent 技术虽然侧重点不同,但均认为 Agent 是具有自主性、主动性和社会性等特点的计算实体,可有效地适应个人助手软件系统的特点,从而为个人助手软件系统的实现和部署提供技术手段。 个人助手 Agent 的研究现状 个人助手 Agent 的研究大致涉及以下三个子部分的内容: 用户模型、领域模型和交互模型。 用户模型 用户模型反映了个人助手 Agent 对用户的“个性化”了解情况。有的实现方法会通过挖掘对话记录集发掘用户的操作习惯,有的通过询问用
6、户获得用户概况数据,有的则通过适应和学习来了解用户的基本知识。从用户信息中构建用户模型是个人助手 Agent 的核心和关键技术。用户模型的质量直接关系到个性化服务的质量,只有当用户的兴趣、偏好和访问模式等用户信息可以很好地被系统“理解”的时候,才可能实现理想的个性化服务。 领域模型 领域模型是对应用领域的描述。例如,一个电子邮件过滤 Agent 可能具有与电子邮件有关的标题、地址、来源等领域模型。领域模型是对领域的抽象表示,通常不会给出领域的所有细节。领域模型一般包括: 服务和功能接口的描述信息、协议规范、使用的领域本体。 交互模型 交互模型规定了个人助手 Agent 与用户、其他 Agent
7、、软硬件服务和功能的交互规范和基本形式。 与用户交互: 一般的做法是在用户和个人助手 Agent 之间增加一个 User Interface Agent,该 Agent 可以通过图形界面、语音、文本等媒体与用户交互,然后将信息转换成Agent 通信语言(如 ACL) ,并发送给个人助手 Agent,其过程如图 1 所示。 与软件交互: 在个人助手 Agent 和软件之间增加一个Wrapper Agent,该 Agent 通过 Agent 通信语言与个人助手Agent 进行交互,然后将相关的意图和目标转换成该软件提供的 API,其过程如图 2 所示。这种做法很适用于遗留系统和异构系统。 与其他
8、Agent 交互 : Agent 之间的协作是一个复杂的过程,多个 Agent 之间的交互通常需要使用 Agent 通信语言进行复杂的对话。交互协议定义了 Agent 之间为了进行协作、实现某个特定的协作目标需要进行交互的结构化消息。目前研究的热点是交互协议的形式化建模和分析,有些学者利用 Petri 网、逻辑、上下文约束来建立 Agent 之间交互协议的形式化模型。 1、电子邮件处理 Maxim 是协助用户处理电子邮件的 Agent,它能够按用户的习惯学习邮件信息,从而进行邮件的分类、删除、转发、分类和存档。它可以与商品化的电子邮件系统通信,其主要学习技术是基于记忆的推理方法。在用户处理电子
9、邮件时,观察用户的动作,以学习和掌握用户的操作习惯和方法,积累相关知识。 2、信息检索与过滤 个人助手 Agent 的研究主要集中于这个领域。LIRA 能够自动搜索页面,通过用户的反馈来学习和更新用户模型,而后将满足用户兴趣的页面推荐给用户。Letizia 可以跟踪用户的浏览行为以学习用户模型,在用户浏览的过程中主动进行宽度优先的前瞻搜索,将用户可能感兴趣的页面推荐给用户。 类似的还有娱乐选择 Agent。它可以根据用户的爱好对互联网的娱乐节目进行个性化的选择。例如,可以按照用户的兴趣对电影、图书、电视和广播进行选择。由于这些娱乐节目更有吸引性,这类 Agent 有着十分广阔的发展前景。3、会
10、议管理与日程规划 这类个人助手 Agent 可以依附于任何脚本化和可记录的应用程序中。它能够帮助用户进行会议及日程的安排,例如接受、回绝、日程规划、再规划以及商讨会议时间等。典型应用包括 CMRadar 和 Meeting Scheduling Agent 等。 4、旅行路线代理 Waszkiewicz 提出了与 FIPA 标准相关的一个旅行规划个人助手 Agent 的实现原型。用户在说明自己的目的地后,该 Agent 就可以为用户推荐具体的航班,它采用学习的方式建立用户模型。目前,国际上各大旅行社都提供这类旅行代理 Agent,比如 China Air Travel Agent 和 Trav
11、el Agent Central 等。 5、文档编辑 Microsoft 公司推出的 Office 在业界得到了广泛的好评,其中的 Office 助手更是迄今为止应用最广泛、影响最大的个人助手 Agent。它的面世,使全球亿万普通用户感受到了个人助手软件的有力作用。Office 助手的优点在于用户不必查阅操作指南,通过使用自然语言方式就可以得到用户所感兴趣的东西。它采用了智能感知技术,其核心算法是贝叶斯推理算法。 6、网上购物 Kasbah 为每个用户提供了一个助手 Agent,用户可以在使用之前设定该 Agent 的交易行为偏好,此后它就可以与其他用户的 Agent 进行买卖的协商。 Sar
12、dine 是一个类似于拍卖的助手 Agent,它根据用户的偏好来购买机票,可以和其他旅行代理 Agent 进行协商以确保用户获得较廉价的机票。 挑战与方向 个人助手 Agent 具有用户和领域的知识,能够自动地为用户提供个性化的服务,可以有效地帮助用户从繁重的操作中解脱出来,使用户更加专注于自身的工作。近年来,学术界、工业界及一些组织对个人助手 Agent 给予了高度的关注和重视,在模型、交互、个性化学习等方面取得了一定的成果,出现了大量的有关个人助手 Agent 的成功应用案例,具有良好的发展和应用前景。 但是,个人助手 Agent 的研究和应用还存在许多问题,面临诸多的挑战,具体表现在:
13、基础理论方面 现阶段作为个人助手 Agent 的理论基础仍然不够完善。虽然 Cohen 服务接口标准; 个人助手Agent 与用户、软件的交互协议。 小资料 1 什么是个人助手 Agent 个人助手 Agent(Personal Assistant Agent)是一类软件Agent,它通过建立用户的个性化模型,能够代表用户,自主或者半自主地为用户和其他个人助手 Agent 提供相应的服务。个人助手 Agent 是 Agent 技术研究中的一个重要分支,也称为接口 Agent( Interface Agent) 。个人助手 Agent 如同用户的秘书,具有用户的个性化信息以及相关领域的知识,能够
14、使用户从繁重的工作中解脱出来。 个人助手 Agent 具有如下一些特点: 自主性、主动性: 个人助手 Agent 能在没有用户或其他Agent 直接干涉的情况下运行,并能根据自身的内部状态和感知的环境输入决定自身的状态,控制自身的行为。而且在某些情况下,它们能够主动地产生目标,采取主动的行为来实现目标。 个性化: 个人助手 Agent 能够通过与用户的交互,理解用户的意图,学习用户的偏好,对用户兴趣的变化能够做出相应的调整,并为用户提供个性化的服务。 领域性: 个人助手 Agent 拥有领域知识,了解领域内的工作流程,能够辅助用户完成该领域中的业务工作。 小资料 2 FIPA FIPA 全称为 Foundation for Intelligent Physical Agents,是一个非营利组织,于 1996 年建立于瑞士日内瓦。建立的目的是提高异构 Agent 系统之间的交互性,并为此制定了一系列的技术规范,从体系结构、通信语言、内容语言到交互协议。