您好,欢迎来到独旅网。
搜索
您的当前位置:首页分布式虚拟环境中的聊天机器人的研究

分布式虚拟环境中的聊天机器人的研究

来源:独旅网
维普资讯 http://www.cqvip.com

分布式虚拟环境中的聊天机器人的研究 戴开宇张申生王淼 (上海交通大学计算机集成技术开放实验室,上海200030) E-mail:dai—ky@cs tu.edu.cn 摘要诙文撵素了通过自然语言界面从基于Web的应用中菝取知识的一种方法。舟铝了一些著名聊是机器人程序 着重给出了基于A1ML的聊天机器人A.L.I.C.E的运行机制.并分析了其适寺于分布式应用的特点。通过对其进行改进 将其蛄夸进分布式虚拟环境中.构造了一个基于Web的分布式虚担环境中的聊天机器人。 关■词 聊天机器人分布式虚拟环境 自然语言界面 A珊L A.LI.C E 文章蠕号lOO2_833l一(2O02)O7—0ol3—04 文献标识码A 中圉分类号TP39l Research on Chat Bot in Distributed Virtual Environment Dai Kaiyu Zhang Shensheng Wang Miao (Computer Integrated Technology I且b of Shanghai Jiaotong University.Shanghai 2OOO30) Abstract:The paper explores an approach of obtaining knowledge from Web-based applicalion with natural language interface Some famous chat bet programs are introduced.The mechanism behind chat bet A.L.I.C.E which is based on AIML is analyzed,especially its features that let it suiiabh for distributed application.The aulhors improve on it and integrate it into a distributed virtual environment.thus build a chat but in Web-based distributed virtual environment. Keywords: Chat bet,Distributed virtual environment,Natural Language Interface(NPI),AnL%ila Intelligence Markup Language(MML).Artiifcial Linguistic Interact Computer Entity(A.L.IC.E) l引言 计算机应用功能的日益增强和硬件设备尺寸的减小,使得 操作变得相当复杂。具有自然语言界面的人机接口是解决这个 矛盾的最有前景的方法。事实上,通过自然语言和计算机进行 交流,一直是人们的一个梦想。1950年AIan Turing在论文[2】 中预言,50年后,人们将难以区分与之对话的是计算机还是真 人.并给出了著名的图灵测试方法。然而到现在,也没有一个完 聊天,可以回答关于BBS这个特定应用的一些问题 Rex是由 Western Australia大学智能信息处理中心的Jason Hutcbens创 作的聊天机器人.能处理不同情况下程序应该采取的行为.比 如用户长时间没有回答会进行提示等,Hex赢得了1996年专 门为年度图灵测试最成功的程序设立的Loebuer奖。 A.LI.C.E是由宾夕法尼亚洲Leash大学的Richard s_ Wa1lce博士开发的聊天机器人,a它是遵循GNU通用公共许可 善的解挟方法,证明了这个问题的复杂性。 这里所说的聊天机器人(chat but)是指一段程序.人们能 协议的开放源代码.有300多人对其发展做出了自己的贡献。 因为其卓越的设计和强大的功能赢得了2OOO年度以厦2001 通过计算机界面使用自然语言文字与之聃天,而聊天机器人可 以给人以逼近真人的回答。在过去的几十年中,许多学者在这 个方向上做出了有益的探索。Jaseph Wdzenaum在1956年创 h造的Eliza ̄是第一个聊天机器人。Eliza扮演一个心理学者的角 色,具有这个方面的一些特定领域知识,Eliza的原理是,根据 用户转人语句中的关键词搜索保存在数据文件中的知识,找到 与之匹配的回答。但Eliza一个明显的弱点是当发现用户转人 中的一个关键词便立翔寻求回答.而不继续寻找用户句子中的 年度的Loehner奖 文章分析了A.LIc.E的机制,并对其进行 改进,将它结合进基于web的分布式虚拟现实环境中,构造了 一个具有自然语言交互功能的虚拟智能人物。 2基于AIML的A LI.C.E 2.1 A.LI.C E简介 A.L.I.C.E是Anillcila Ijn ljstic Internet ComImter Entity 的简称.其知识描述语言使用AIML(Ani ial Intelligence Markup Language),最初于1995年使用一种基于集合理论和 数理逻辑的语言s口 实现。1998年第一攻使用Java实现,称 为Program A。1999年AIML使用XML表示,称为Program B。 2O90年,Jaeoo Bikkvr创造了第一个C/C++语言实现的AIML, 称为Progrm C,广泛应用于C 脚本以及IaRC等。2O00年, Jon Baer应用Java 2技术重写了Progrm B.a是目前的最新版 其它关键词.这样使得一些优先级别比较低的模式几乎永远不 会被匹配到 Brian MeLaughlin所写的Claade也是一个使用标 准的模式匹配寻找合适回答的聊天机器人.通过将用户转人的 语句进行拆分,分别找到匹配后再构造回答。然而Claude注重 了回答语句语法以及语义的正确性,如通过分类规定哪些动词 可以和哪些类的名词结合.使得内容很有限而且很多回答毫无 意义。Richard wau 刨作的SHAMpage应用于在BBS上与人 基金项目:目家863高科技CIMS项目资助 本,称为Program D。Program D因为基于Java和xML实现.具 作者筒介:藏开宇.计算机应用博士生,主要研究方向:共享虚拟现实,智能代理。张申生,教授、博士生导师.主要研究方向:计算机辅助技术与信 息集成,分布式计算环境 计算机工程与应用 00Z07 13 维普资讯 http://www.cqvip.com

有讯奸的平市性,在WjndoWS Linux等操作系统中只要安 在<paRem>中小包含匹配符号 或 一,而敏肯category允 装丁Java牖拟机 就日n 运行A 1.1 c 笔者他}}I Pm ̄am I】 许<patlem>包告一个匹配符号 使得科于符台 个更加一般的 进打 发 横式的H|户输^u J以进f r 眦 m 递归i'ategory府H|<srai>,bli A.J l c 给定制聊天机器^的 主人”(1 0【mas )提供r 蒜将H|户的输^转移到另外一1、<pattern>进f r 眦 递归 一系列方便的T只,包括增加修改知识库 政变操作界山使用 catego ̄-是基于这样一个 实 对于许多小刷句子的用rl输入 的语言 以及 ̄,tll天记录进{r分析Ij;; A LI.C E an 作为独正 实际代表的是I司一个含义 可以采用相M的回答 例如对用rl 的Java麻用 J 在 机上运 r.也町以作为嵌^浏览器的弛 输^的 bye bye ” you later good bye 等都口fl 采川同 O-的客f 端Applet运行 最甫要的.它可以通过Web发布 远 样晌一种问聿竽策略 如“s∞ ̄OI1 ne xl time” 端时机器通过网络 A.1 .』 c. 相往 输入和显示都存 户端 l象r P述的儿个基本标签外 AIMI 定艾r丰富的标答.使 J 分析等操作在脓舟器端 这样.给基于Web岫鹿 挺供了上 得A.1 1 c 具有并种拟人的智能。下 介绍r A.1 1.c 具有 限的可能忭 一些智能 同时给出了州麻的实现标褡。 2.2 A L_I C E的原理 (1)学 能力 上垂里所指的学 能力足扩充知t}{的能 . A1 1 c. 使用AIMI 表币其知酿.而Java作为 I擎对用 <learn l ̄lenarae='X >表示将名为x的AIML艾件中的知识载 输入进行分析 住知识库中寻找最弁适的叫答井返 蛤用f ^内打 标准版本的A JM1 中已经包含r超过22 000十的 A Ll C.E背后井没有复杂的算法.事实上也足秉用丁模 眦 eategoD' 的方法束找到晟台适的凹答 但A.L.I.c E采用r~种很好的 (2)心弩能力。<think>..</think>标茬丧示了A.I¨I C E的 扩党机制.AIMI 义件可以进行内眭.这样 许多包古特殊领域 思弩{" 实际效果足解析标簪巾晌内容,但结果不显示出来. 妇l f A1ML文件口『以方便地合并成一个吏大的知议庠 同 而是仃^内存巾 A.LI.C E通过对聊黄记录进行分析,口『以得到尚H没有IiI】 (3)判断能力 <condition>…</condition>标签表币根据条 确叫答的 题。并给出建波的模式 这样、通过把A 1 1.C. 件执 r梢麻操作一 列断讯据的条件 “是前而存入内存中的 Web卜发布,'吐广大的用户群与其对话 然后让A J.1 c. 对聊 一些佑息 天'己录进{r分析,日『以不断地 充翔l谢 从这个意义上来说 (4) 忆能力 <sel_xxx></set xxx> ̄l<get—xxx>…</get— A_l1.I C E采用了 干实例的推理方法(CBR)i J XXX>袤示将u一 信息存人 xx l从xxx滨}IJ ]lotma. ̄etr可以I't MMI 是采用XMI 标准应用于人T智能的讲. .它采用r 己定义新的变付 另外 丝些变付足 户相j∈的 XMI 的浯法来存储知识,具有自已的I)TD和Sehema XMl其 (5)上下文柑兕语言能 。存真实朋聊天叶1 聊天怕内容足 结构清晰、劫于扩充、和HTML很好的结合荐持点.使得埘 见肓一定的 下史相关的 这是判别谈|壬是否逼真的 要I tt。rMl l 法比较熟悉的用 l1|可以很快地理解和使用XMI与 末 扯AIMI 的I殳.十中.充讣考虑r这一点,|殳计r丰富的标签 HIlⅧ 晟大的 硝点是允许定义自己的标簦( Fag) AIMI定义 来加强A 1.1 C E晌智能性  ̄ll<seljI>.</set—it>g1<get—it>… 一螭套具有特定含义的标签,使得A LI.c.E具有强大的功 </get_it>将特指的某件事物存^和从it代诃巾取出 <pemotW> 能、同时.采用XML的另外一个优点足口『以利IL}】l 富f内XMI 和<pemon2/>足实现存人称巾进行转化的标誉 <tepJe> I且 H时与.1ava语. 完美的结台,适台于Weh膻嗣 具有锻 好的平立性 同时具有很好的 充性 用户 r 定义山自 </topic>可用米追踪谈话的话题 <that index=”nx n,.)表 A. 1 .1.C 前面所说过的I壬.而<input index= number"/>表 用r1 已底抖J解释的新标答。 前而 兑址的话 用l是一个简单完整的AIMI 请 i例子 标签<alice>. <lalJce>袭币描述的是一1、聊天机器人A.J¨l c <eategory>标 l二而彳卜绍的足一些主要的标爷。另外.A.L.I.C E还设it了 。 功能强大的标签. ̄<javascript>…</javascfipt> ̄用沭j陛人 等击明过足一 个AIML的categor.y cateogry足击示j=¨诂{的最小 儿Category巾还有一个<pattern>和一个<template>标簪 Javaserlpt代码 <system>X</system>运行shell命令X,<gossip> <fmttern>表 用 输^需要进行匹配的摸式 而<template>标 x</gossip>将X存成辩言 <random>..</random>iJ :A.1 1.c 鉴表币匹配J成功后 用中间的文字进行 答 可以认为这是- 随机地选择同并,从巾j使对同一个问题具柯多种阀并 不至于 t 于刺激(s[1muIIls)一反戊(Response)f 小系统 让用 觉得回答呆板同定 虽然A 1 1 C.E没有用诸如抻经网络之类的传统人T智能 f 法,但衡茸一个聊天机器^的智能性应该是看其效果 文 章《基于Java和VRML的共字虚拟环境粱构的研究》指出A L <ca regory 刺激( ;ti U2us) 聿侧 ∞1)H【t attcfl l c. 具有的是一种表 的智能 但由于其优良的I殳计方弦 使 外界 得它成为 个非常优秀的聊天机器人软件 。反应( 2 3 A L_I.c.E的运行机制 RegD e J }【州 Hell。 e </category> -1f论的AIMI 给IlJ r A.1 1 C.E的知识袭 以及如何 ● - 应州这些知识的提示 具体如何来应州这些知识和挺示.钊 对用户的不州输^给出台适的同臀.则山使州Jaya语言编写 圈I~个简单的ATMT 示倒 的.at l l C.E引擎实现 无论用,、一是通过本地还是网络将聊天 的内容f々到A1 I.C.E引擎,A~I l c.E的棱心处理方法是 变 所冉的AIML巾的eategm2,-.属于下而一类:娘子ealegog 的 通过剖析A.LI c E的娠代蚂,造 给出了A.LI.C.E引擎_Jl 缺省calegoi3, 及递归ea'tegory 原子eategoB,姐i 例所示 作的{市 如图2所示: 14 200207计算机工程与应用 维普资讯 http://www.cqvip.com

i。酉……………………… 改进 图3表示了这个改进过程。(a)图代表了改进前的AI-lCE, (b)图表示改进后的应答流程。其中①表示客户端通过浏览器 从服务器端下载网页,未改进前的(a)图由A.LI.C,E模拟的一 个简单Web服务器来实现,客户端得到的网页很筒单,而且支 持内容以及协议都很有限;而(b)图可以从商业的大型Web服 务器上下传网页,中间可以包含任意丰富的内容,同时下载了 A LI……………………….C j .笔者编写的Java App ̄t。第( 步由客户端将用户聊天内容发 送给A.LI.C.E服务器。第④步是A.LI.C.E将回答的内容返回 给用户。改进前的A.IJ_1.C.E通过在找到的应答前后加上HTML 文件标志构造一个完整的网页给客户端,使客户端浏览器重新 刷新网页实现将ALIC.E的回答显示在客户端的浏览器上, 而改进后的A.LI.C.E不再充当Web服务器,它在进行搜索匹 配得到合适的应答后,建立一个包含了该应答的Socket返回 给用户,而客户端将应答显示到相应的App ̄t的聊天版面空 间上,包括了虚拟场景的其它的HTML,内容不需要重新更新。 改进后使网络的数据传}禽量减少,同时还减轻了A.LI.C.E服 务器端的负荷,使得运行效率增加。 田2 A LI.C.E的运行机村 从图1可以看出,这里将A.LI.C E的核心处理引擎分为 前置处理模块、搜索和匹配模块、后置处理模块.另外,A.LI.c.E 内存用来存储知识和聊天过程中的上下文信息。 第1步,A.LI.C.E将AIML文件表示的知识读人内存中. 如果是基于Web发布的话,A.LI-c_E同时启动Socket监听线 程,准备接受用户j茸人。 第2步,A.LI.CE接收用户的输入,并对用户的输入进行 前置处理。把用户j茸人的语句根据标点、语法分成一个或儿个 的甸子。对每个句子进行预处理,例如把一些缩语或是不 规范的单词变成标准、规范的单词 同时将所有的单词转换为 大写。这个阶段又成为标准化阶段。 第3步,A.LI.C 将处理好的句子和知识库里的每个cat— egory里的pattern进行比较,根据匹配规则找出最匹配的一个 category,并取出其中的template处理其中的标签,如遇到 ra . .</smi>标签则进行递归处理。把得到的结果存人缓冲区。 第4步,A.LIC.E将所有输出的句子合并,并进行后置处 理,例如将首字母大写、对换行进行检查等 并将结果返回给 用户。 圈3 A.I¨1.cE周络应答协诚的改进 A.LI C.E最初是使用IP地址来记住不同对话期问的谈话 对象,但对于动态IP地址的用户来说,口地址不是固定的。A 3分布式虚拟现实中的聊天机器人设计 分布式虚拟环境是虚拟现实技术和网络技术发展和结合 的产物。分布式虚拟环境的目标是利用计算机模拟真实世界. 地理上分布的多个用户可以通过网络共享该环境,并选择一个 虚拟化身代表自己与该环境进行交互。在分布式虚拟环境中. 构造由计算机控村的可以自治而且智能地和用户交互的虚拟 人物具有重要意义。他们事实上代表了一种服务,提高了虚拟 环境的交互性和智能性。自然语言能力对于构造这样的虚拟人 物是根关键的。笔者将AIML进行改进、结合进一个基于Web 的分布式虚拟环境,使里面的智能虚拟人物具有了和用户进行 自然语言交流的能力。 LI c.E做了改进,采用了一种虚拟lP地址来对应不同用户,将 该信息写入浏览器,初始取值真实IP值。这样做仍然是有问题 的,当同一个用户登陆不同的浏览器就可能出现问题。在笔者 设计的分布式虚拟现实中,采用了全局唯一的ID来标志用户, 在进入分布式虚拟环境之前要进行身份认证。笔者据此改进了 A.LI.C E的做法,在用户通过身份认证后,他的m号就和他这 次谈话的IP相对应。在每次A.L.I.C 服务器接收到客户端的 Socket的时候,可以从中得到IP,映射到固定不变的m上面, 从而准确地判断当前聊天的对象。即使下次用户的IP地址发 生改变,但在登陆时候仍然与固定的ID对应。这些与ID对应 的信息写入文件 便不同谈话期间可以“记住 用户信息。 3.1 对A.L-I.C.E的改进 A.LI.C.E提供了一个很筒单的支持多线程的Web服务 器。它接收从客户端铡览器发过来的包含了用户聊天内容的请 求,通过A.L.I.C.E引擎得到台适的回话.然后构造一个包含了 A L.IC.E回话的HTML返回给客户端浏览器。这样,每次的回 话都要返回整个HTML网页给客户端刷新铡览器。从而使得客 户端浏览器的内容不可能包含其它的内容 另外,A.LI.C.E对 HTML的支持很有限,不支持多媒体等内容,更加不具备一般 Web服务器的配置等功能。在笔者设计的基于Web的分布式 3_2在分布式虚拟环境中的应用 笔者设计的基于web的分布式虚拟环境是采用通用铡览 器作为客户端,通过浏览器插件解释VRML文件构造虚拟环 境,而以Java为语言的EAI改变该虚拟环境包括控村其中的 虚拟人物的运动等 在服务器端的Java应用程序通过与各个 客户端的Applet通讯来协调,使得整个世界保持一致。其中虚 拟人物的行为选择等也在服务器端决定并通知各个客户端的 App ̄t,通过EAI来控制该虚拟人物。将改进的A.LI.C.E融合 人该环境,如图4所示: 分布式虚拟环境服务器中有一个线程称为虚拟人物控制 虚拟环境中(参见文章《基于Java和VRML的共享虚拟环境架 构的研究》).在铡览器中包古了使用VRML构造的虚拟场景 以及Applet的操作界面,所以无法使用A.L-I.c E提供的简单 的Web服务器 这里对A.LI.C.E引擎和Web服务器进行了 器.专门用来作为虚拟人物的“大脑 ,进行计划和决策,决定虚 拟人物要采取的行为 A.LlC 服务器给虚拟环境中的虚拟智 能人物增加了与用户进行自然语言交流的功能。同时,A.LI.C. 计算机工程与应用2002.07 15 维普资讯 http://www.cqvip.com

服务器迁可以和虚拟^物控制器进行通汛,用于协调虚拟人 物的行为和语言。 (Believable intell[genl ent)具有甫要意义 在电子商务的住 线咨询白动麻蒋、网络教学等麻用中有着r泛的前景 同时也 足埘F-tt人机界面的一种探索、提供了一种通过自然语言界 面从基于web的碰用中莸取知识的方法。如何在A.I .I.C.E服 务{}{}和虚拟人物控制器间建 协殴以实现更好的虚拟人物语 l 蠹一 一一一一,l 竺 }睡舞黧麴糯睽驻蕊麓 寸一 一l : : l丹布式盎蚣韩境l蛹舞 言和 f为的 调.使萁体现更强的智能性.值得进一步的深^ 研究 (收稿日期:2002年I川) — 一一一 蘩萋 竭 - ALLcE 1 服务器 Il 服务器端 . 茸“j ~——k洲龋嚣 客户蛐 一 参考文献 I Wal[ ̄ R S【 n1 read一^_l I.CE.帅(I AIⅥl dl 2Turlng A M.Computing maehine ̄and intelligencelJ|.Mind.59(236): ,133—46O 器圈 tm n2000 围4 A.L1.CE与分布式虚拟环境的结台 3 W…nt ¨m J.Ellza—a ̄)mputer progr ̄1 for the study of natural language communicafitm fiet ̄een man and machine Communication of 4结束语 通过对A.LI c.E进行改进,将A.LI.C E结台进分布式虚 拟环境,给分布式虚拟环境中的虚拟智能^物增加r I'1然 . 交流的功能。这对于构造具啊令人置信的智能代理 the A…al m for Computing Maeh ̄nery 9:36—45 4 Thomas llJngate ALICE AIML Refe ̄nee Manualmvo51且ble On Iine 5 Brara R ̄ijmans.Believable Agents[Ⅱl Ma. ̄ter thsis 2001 I 惠州帕需 、该文柱不同粒度上探讨了l觇频较骏模型妁并钎赍 源,升简要介绍丁为实现MPEG_4实时处理.所需的并 调度 策略和数据划分方式。为避一步的研究打下了基础 (收稿日期:2002年1月) 参考文献 J IS0/IEC.Information t ̄'hnology—Coding of audio—visual objects—Part 2:Visual Amendment l:Visual extensions{S].1TC J/sc29/wG¨W3056 (a A1pha平面 2000 J 囵曩燕圈 p1 2.ISO/IEC MPEG一4 Vide0 Verification Mod I version J801s1 JTCI/SC 29/WG1.N3908.200I I 3J—I Kim B L EvansSystem modeling and implementation of gene6 ̄: video codeclCJ.Pr,n ̄.I ̄:EE Workshop on Multimedia Signal Pr(we ̄ing, p2 I埘Aageles、CA I998【2:3_J—3 J6 4Yong Ite.I Ahmad.M I Li哪A S w日 一Lmsed MPEG一4 Video En— p3 coder using ParMlel Processing[J]IEEE Tr ̄saetions on Circuits and Sy …ofr ̄ideo Technology 1998;8(7)・909—920 m.Real-Time Interaefive MPEG一4 Svs一 5 ̄ong He.I Ahnmd.M L fc)扩展A1 pha平面 (dj重定义的A1pha于平面 田8形状自适应数据划分 m Encdero using a Cluster of Workstation ̄J]IEEE Tr 曲sa ti0ns on Multimedia.1999.6 5结论 随着多媒体技术和网络技术的飞速发展,电信 计算机和 电视/电影等产业投^丁太量的人力物力和财力.致力于新 6A Hamosfakidis.Y Paker.J Cosmas. ̄study of Concu ̄ency in MPEC—4 V】d∞Encod ̄'fC1.IcMcs 8,Austin.Texas,USA,1998 7.T Olivares.F Qui .P Cuenca et al Study of Data Distribution ch— niques for the Implemenfion of Bn MPEG一2 Video EneoderlCl Pm— ceeding of the lASTED l毗 m时ion日I Conference!P口r ld nd Distil— 多媒体标准MPEG_4的研究。由于MPEG-4具有基于内容的 描述和编码特性,并采用丁复杂的技术以达到较高的压缩比, 导致r较大的复杂性.从而引起r对更高计算能力的需求。 相对于普通文件,视频文件数据量大且带宽要求高。一般 文件的长度都在GB的数量级,并且视频数据对实时性敏感。 若视频处理是在单处理机系统环境下,采用串行程序设计方法 b0ted Computing皿d Sy kms,MIT,Boston,USA,1999 Il 8D T A】 Hr Y PakerMiaimum Overhead Data Partitionig Alngorithms r Parallel Vi wich.】998 7 Pro('essingIC]DDIl—Eleventh International Gin一  ̄rence on Domain Decomposition Methods.Tbe Lnlversity of Green- 进{ ,几乎是不可能达到实时处理的要求 因此,MPEG-4缟解 码器应有较高的灵活性和可扩展性。这就要求处理器有较高柏 性能。 9. ̄ong Ik.I ̄.hmad M L Liou^Shape-Adaptive Partitioning Method r MPEG一4 Video Encoding[C1.Proc of the IEEE InternatiorI丑1 Co口一 of ”n Electronics.Circuits and Systems(ICECS 98),Lisbon. 卜 为r实现MPEG-4的实时处理,提高编码速度,满足 同 tugal,1998 9;2:239—242 16 2002.07 计算机工程与应用 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dcrkj.com 版权所有 赣ICP备2024042791号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务