全球五十强学府权威报告 | VR和人工智能相撞,会擦出什么火花?
━━━━━
前言
━━━━━
VR和人工智能(AI)是今年最火爆的两大前沿科技,但这两方面的研究工作很少有人拿到一起来说。如今,这两个领域的研究出现了融合,主要体现在那些不需要人为干预的应用上,如虚拟人、计算机宠物等,都需要这两项技术进行深入整合,由此也诞生了一个新的名词:智能虚拟环境,这份报告主要讲述如何利用人工智能+虚拟现实,打造一个智能虚拟环境。
报告作者系 英国索尔福德大学虚拟环境中心鲁思•艾利特、 英国华威大学( 全球排名第48,在英国仅次于牛津和剑桥 )计算机科学系迈克尔•鲁克,VR次元独家整理报道。关注VR次元微信公众号(qqtechvr),回复“人工智能”,即可获得报告PDF版本。
━━━━━
第一章:简介
━━━━━
当一些前沿技术领域的研究得到公众关注,并走出实验室,走进人们的日常生活中时,通常能够获得更广泛的发展动力。
事实上,其令人兴奋的应用潜力也正是本文所基于的一个前提的幕后推动力:不同的先进计算与研究团队开始整合其研究成果,例如,AI、人工生活(AL)和虚VR,或虚拟环境(VE)等方面的研究。这些智能技术的结合,体现在自主生物和各种代理上,再加上有效的展示方式和各种互动,正在形成一种新的环境,即智能虚拟环境。
当前有许多条件允许人们在AI和AL的研究中使用虚拟环境。首先,计算机的性能越来越强大,在支持VR的同时,还有足够的计算能力来支持AI。其次,3D图形软件越来越成熟,应用越来越广泛。此外,自然语言处理等AI技术也已经成熟,能够被用于虚拟环境下的一种互动方式。
与此同时,虚拟环境和前沿图形领域的研究人员也在寻求视觉吸引力之外的进步,例如利用智能技术为一个“空的环境”整合物理世界的其他方方面面。这其中可能包括根据人口和交通规划城市发展模式、虚拟人调查、虚拟生物创建等。
一、基本限制
VE与机器人技术至少拥有一处共同点,那就是需要尊重实时处理限制。VE就是一套由渲染周期推动的系统,通常以50或60Hz的频率运行最理想,这能确保变化像动画片一样顺畅,不出现卡顿。如果帧率低于10Hz,就不能持续表达物理世界中的变化,无法让用户感受到自己身处VE中。
在给定的周期内,渲染算法贯穿于一个场景图中——通常是一个递阶结构,VE所有的组成部分都通过连接在一起的不同类型的节点来代表。这种场景图越复杂,渲染算法所需要的计算时间就越长,也就意味着维持这种高帧率就越困难。开发VE的研究人员已经意识到该问题,目前的解决方案是尽量利用通用机制来创建视觉元素。
与机器人技术一样,添加智能元素将占用基本渲染周期的处理能力,因为它要调用同一个处理器。即使用额外的处理器,如果并行处理不能准确地与渲染帧率同步,那同样会影响渲染能力。
下文中将要讨论的许多系统都不是实时渲染,大部分采用离线渲染,然后再像动画片一样运行。这种方式避免了正常的VE交互式使用。因此,虽然处理能力有了提升,渲染算法有了改善,让我们有可能为VE添加智能元素,但是,当前在实验室开发之中的许多系统还是显得力不从心。
二、VE工具
在AI和VR整合过程中,工具和开发环境起着至关重要的角色。在这里,我们有一些不同的问题需要考虑,包括支持级别、添加复杂功能等。
1、支持级别
智能VE的开发还将进一步受到VE开发工具包限制,这些工具包通常趋向于VE的视觉和图形支持,而不是倾向于添加智能元素。
例如,在最低级水平下,一套系统可能使用Open GL或3D系统和C++来开发,但为了实现想要的功能,灵活性通常会受到影响。这种低级水平VE开发的案例就是AReVi开发工具包,提供一套基于代理编程语言oRis的C++工具包。
高级别的开发模式前文已经阐述过,该模式下的VE工具包使用场景图表示法。这是表现物体图形要素的一个比较方便的方法,因为场景图中的节点通常以一系列的多边形来代表图形基本对象。然后,再利用群组节点将这些基本图形要素合成更加复杂的图形对象。
2、整合知识表示
知识表示是指把知识客体中的知识因子与知识关联起来,便于人们识别和理解知识。如果我们要把知识添加到目标对象中,尤其是从知识的层面操控目标,前文提及的场景图形表示法就显得不够方便了,因为我们也不清楚有多少概念目标能够被映射到图形要素中。因此有人认为,VE工具开发包设计人员要整合显性知识表示工具。在这方面,AI将起到帮助作用。
在大多数VE开发工具包中,代表VE用户的目标在系统中具有特权地位。例如,对于VRML’97(虚拟现实建模语言),用户被提供自动化功能来检测与环境中其他部分是否冲突。另外还有动画支持功能,但它以设计师提前计算出的轨迹为导向,而不是基于虚拟传感器所驱动的物体自主运动。
其实,许多VE开发工具包提供传感器。这些传感器虽然不同于机器人所携带的感知类传感器,但却能用于检测用户互动。例如,撞墙后会发出警报。要想在AI场景中添加其他有趣行为,还需要通过工具包所支持的语言进行直接编程。
VRML’97已经将Script节点整合到了场景图表示中,从而为用户添加功能提供一个整洁的界面。这也是为VRML应用添加复杂功能的标准模式,但也有批评者指出,这种方法的节点间流量过多。其中一个解决方案是,将一个神经网络整合到VRML节点中,从而减少节点间的流量加载,让行为响应更迅速。
3、与复杂功能互动
如果我们希望在VE环境中添加更复杂的功能,还将遭遇与“目标和VE互动方式”相关的问题。一般场景中,视觉互动多发生在VE目标和VE用户之间,被用户对目标的整体视觉感受所包围,包括质地、灯光效果和细节程度等。在标准的VE环境中,对象只能在特定范围内相互作用,因为在用户可视范围内,这些对象是相互隐藏的。但是,一旦添加了复杂功能,VE对象之间的相互影响,以及对象和VE本身的相互影响就会明显增大。如今需要解决的问题是:这些互动应该在多大程度上由对象来驱动,以及多大程度上由对象所处的环境来驱动。
到目前为止,这一问题还没有明确的答案。其中一种解决方案是在对象中嵌入与环境互动所需要的功能和知识。例如,IMPROV系统就采用了“逆因果”方法,在对象内部存储对象和虚拟演员之间的互动动画,从而避免了虚拟演员的学习需求。因此,一名虚拟演员指向一个虚拟啤酒瓶,就直接被赋予喝酒的选项,而无需学习这样做所需要的动作。
当考虑到整合物理知识时,例如将重力引入VE环境中,上述场景似乎违背直觉。更可取的方案应该是让VE环境中的所有对象都遵守物理定律,无论是重力条件下的下落,还是无重力情况下的飘动。同一类型的案例包括:如果将一条鱼置于并未装满水的VE环境中,这条鱼应该有怎样的表现。一种方法是提供额外的元素,如外力,允许一个对象以合理的方式与其所处的VE环境进行互动。
总之,需要指出的是,VE开发工具包在设计之初从未考虑过支持本文所讨论的类似功能。因此,如果说本文中所列举的一些问题根本不存在,那基本上是不可能的。开发新一代VE工具需要AI和VE两组开发人员的共同努力。目前,至少在VRML社区内已经取得进展,他们正在考虑VRML的未来。
━━━━━
第二章:自主代理
━━━━━
自主代理是指以物主名义运行的智能代理,无需所有权实体的任何干预。AI与AL融合的同时,VE在代理领域也是无处不在。作为AI领域的一个研究分支,自主代理在过去的5年中得到了长足发展,越来越多的工厂、会议和研究团体涉足该领域。在这里,我们要区分一下自主代理研究和更广泛的多代理系统。后者包括分布式问题解决应用,如网络管理,通常并不涉及VR或VE,而是专注于代理间通信和协商,而自主代理并不涉及这些。
本文中,我们专注于将VE作为一项技术来探索代理行为和代理可信度(将代理作为把VE拓展到新应用领域的一种方式)。这其中包括人造代理、虚拟角色、虚拟人和化身。我们首先讨论自治的属性和作用,然后讨论代理范围,利用情感作为区分他们的手段。
一、自治
对于那些在动态环境中需要有效和独立工作的代理,“自治”变得越来越重要。许多研究都在考虑代理自治方面的问题,包括其属性、需求,以及如何通过代理架构来判断等。具体而言,其中一个问题是虚拟环境下的“自治”是否像其在物理世界中一样实用,是否同样适用于代理。在现实世界中,环境独立于代理之外而运作,代理之间的活动也是相互独立的。在这样的条件下,预测世界很可能会出现错误。而自治是一个适当的响应,因为让代理决定其行动,就允许其考虑到世界的现状,而不是去预测。
在虚拟环境下,情况就完全不同了。设计师对环境和代理拥有一个“上帝视角”,根本不需要区别它们。更重要的是,整个环境都对代理开放,不需要对虚拟世界的模式进行区分。从实用的角度讲,自治看起来就没有必要了。
但是,事实证明,用这种“上帝视角”对待虚拟代理所导致的结果就是效率低下。问题是,如果虚拟代理以一种让用户信服的方式行动,并且在虚拟世界中维持这种存在感,那么它们就像物理世界中的代理一样具有同样的局限性。它们会收集信息,以一种看似可信的方式与对象互动。
这种“上帝视角”的代理管理方式很快还会遇到一系列组合问题,尤其是在必须记录每个代理都掌握哪些内容,能够感知哪些内容时。但是,为每个代理配备虚拟传感器是件很容易的事情,然后利用这些传感器自主地推动其物理表现。因此,与虚拟代理相关的大部分工作都是采取自主模式。
使用这种自主模式还有其他执行层面的优势,尤其是在不同VE环境下代理再利用的潜力,以及在不同处理器上分布个体代理的能力。但是,这些在很大程度上还停留在理论层面,现实中还没有明显的证据。这可能也是目前该领域的研究还不够成熟的体现。另外,自治也可能是代理再利用的先决条件。同样,这一结论目前也没有充分的证据,许多代表性问题也没有得到解决。
二、代理的范围
为了以易处理的方式来划分庞大数量的系统,我们想象一个代理范围。在这个范围的一端(物理端),我们放置物理代理,其主要任务专注于虚拟环境中可信的物理行为。在这方面我们要讨论的内容包括现实运动、物理交互、肢体语言、手势和面部表情。这些代理一般通过虚拟传感器与VE进行互动。
在这个范围的另一端(认知端),我们放置的代理将专注于人类认知行为,以及与使用该系统的用户进行认知交互。这方面的主要内容与自然语言和认知过程有关,如策划。这些代理通常直接从VE中感知信号信息。
在这里我们谈到了代理的范围,是因为有更多的认知代理通常需要与VE进行一定程度的物理交互,因为更多的物理代理通常需要在认知层面进行某种控制。
“认知端”的工作属于由认知向外输出,而“物理端”的工作属于身体向内输入。理想的情况下,虚拟代理应该具有完整的现实运动、物理交互和与人类一样的认知能力。这两端都涉及到解决许多复杂问题,因此研究人员通常专注于其中的一端。这两端的不同在下文的“情感”章节中的许多特定问题中都得以体现。
三、情感
需要指出的是,虚拟代理方面的工作已经赋予了整个代理动机和情感领域以新的发展动力。原因主要有两方面:首先,与一个“无具体体现”的智能代理相比,虚拟环境中的一个“有具体体现”的虚拟代理能为情绪状态的体现提供许多外部渠道,如凝视、面部表情、手势和所有肢体语言。其次,在下文我们还会详细阐述,在许多虚拟代理域中,情绪状态的表达对应用至关重要。在这里,分布式多用户环境中的化身使用已经提供了一种驱动压力。
代理范围认知端工作的重点是将情感作为认知状态,而代理范围物理端工作的重点是将情感作为身体状态。这两种方式也是心理学领域长期存在的一种争论的体现。
相比之下,认知模式更加盛行,其优势是代理经常处于一种明确定义的情绪状态,为外部情绪表现提供清晰的连接。但是,在物理或行为层面,情感是由低级别架构工作生成的。在这样的低级别层面,模拟情感的最简单的方法是为代理配备“标尺”,能够根据与环境、其他虚拟代理或人类用户的互动情况来增加或减少。另一种相对复杂和现实的方法是模拟内分泌系统,这样,情感作为代理与环境整体互动的一部分被体现,而不是为视为认知状态。
━━━━━
第三章:物理代理
━━━━━
本节,我们将讲述物理代理,即物理行为被视为核心问题的虚拟代理。这样的代理不必是人类的形象,它们可以是抽象或机械形象,可以是鸟、鱼或海豚等动物,也可以虚构形象,如天线宝宝。当然,人类形象也很常见,包括虚拟演员、虚拟人或化身。上述所有形象都会面临同样的问题。我们首先讨论关于物理代理的一些比较普遍的问题;然后,我们用两个案例来详细阐述身体是如何动起来的;接下来,我们将讨论与物理代理进行非语言交流的可能性;最后,我们讨论物理代理与其所处环境进行交互式可能产生的一些问题。
一、物理问题
首先,身体运动和移动性问题必须要处理,这通常会引发了重要的身体结构问题。其次,一旦代理拥有移动能力,它们必须要能够避免与环境中的其他目标相撞。最后,还将涉及到控制问题。例如,要在哪个层面进行控制。这其中包括两个层面的控制,一是通过个别肌肉进行控制,二是在整个行为动作层面进行控制,如走路和抓取。当然,有时可能需要在这两个层面同时进行控制。
二、身体运动
物理代理的一部分推动力来自于电影动画。手工制作动画十分费力,且成本高昂。因此,利用计算机来制作是件很自然的事情。最初,计算机仅用于制作手绘帧之间的中间状态,因此工作量不是很庞大。
但是在微软的AGENT编程环境中,计算机制作内容得到了拓展。而且,程序人员还可以调用任何一部分内容,按照需要的顺序进行整合。IMPROV系统在“合成演员”时也采用了类似的方法,只不过变成了3D形式。在该过程中,演员被定义为一个“单一的原子或重复性活动”,不需要“明确的更高层次的意识或有意识的决定”。在IMPROV环境下,动作被分割成若干小组,同一小组的动作是相互排斥的。这允许几个不同的动作同时进行。例如,一个虚拟演员可以在走路的同时嚼着口香糖。
指定整合顺序是一件很复杂的事情。IMPROV提供了一个脚本机制,能够在脚本内引发另一个脚本,或者是针对用户界面控制做出响应。在Persona项目中,这个问题是通过使用脱机AI线性规划程序来解决的。该规划程序以“伪编译”的形式确定顺序。这种方法的优势是代理的身体不需要复杂的结构,也正因为如此,所有这些项目中的代理都不能对环境进行自主控制。
第二种方法是通过物理世界中的人类来推动代理,这种方法被称为“表演动画”。此时,一个穿有特定标记的人会在重要节点上来执行想要的动作。然后再将这些动作重新应用到虚拟代理的身体结构中,从而让虚拟代理来执行动作。在《泰坦尼克》电影中,里面的“数字化轮船”就使用了这种动画手段。这种方法的优势是可以利用计算机轻松地完成,但是需要对代理身体进行准备建模。与第一种方法相比,这种方法的灵活性较差,虽然我们也可以将这两种方法结合起来使用。
一旦代理拥有了逼真的身体结构,下一步工作就是提供自主控制。这样,代理的动作就是由其内部身体结构来控制,而不是外部的身体表面动画。通过这种方法,特佐普罗斯及其位于多伦多的团队制作了关于鱼和其他水栖生物的动画,而拜德勒及其位于宾州大学的团队开发了类人模型JACK。
1、特佐普罗斯的鱼
特佐普罗斯鱼的结构是由一套弹簧模型组成的基本架构,各种弹簧在不同的节点结合在一起,然后利用拉格朗日方程来决定结构动作。当鱼甩动尾巴时,就会带动水的运动,而水的惯性就会对鱼的身体产生反作用力。而鱼的胸鳍被用于控制身体姿态和前进方向。这就会生成逼真的动作,但成本较高。在1998年的里斯本世博会上,引入了一种简单、低成本的方法来制作海豚。这一次,人们通过模拟骨架引入了正弦波传播技术。
初期版本的特佐普罗斯鱼直接从数据结构中调用感知信息,但在后来的版本中引入了生物感知系统。目前,这套感知系统被提议为制作人造动物时的通用系统,虽然当前该领域大部分工作仍在使用相对简单的感知系统。
2、类人模型JACK
在特佐普罗斯的鱼被视为完全自治的代理时,JACK在其商业化应用中已针对人体工程学和工程设计应用。例如,人们可能会尝试一个JACK模型,在一个虚拟的拖拉机驾驶舱内分析各种控制器的布局。高级别的JACK控制可留给用户,无论是通过直接操控,还是通过高级别的行为命令。如果需要,还可以通过编程语言C++或Lisp将JACK变成一个自治代理。
定向应用肯定需要一定的生物真实度,而JACK拥有68个节点,120个自由度可供驱动。虽然不能做到完全准确,但像肩膀等重要节点是可以准确模拟的。此外,JACK采用铰接式眼球,可对视线进行定向。
三、非语言交流
如前文所述,复杂身体结构的发展开启了一个更广泛的非语言交流领域,无论是通过目光、面部表情、手势、姿态,还是整体的肢体语言。该领域的许多工作都涉及到利用化身来代表用户。
非语言交流的一种方式是专注于面部表情。这方面的相关工作不需要依靠一张真实的面孔,我们可以用表情符号来表达情绪。在这方面,在电子邮件中使用标准的键盘符号为我们提供了先例。
面部表情的一个最简单的应用是利用目光来指示一个代理的关注对象。需要指出的是,对于一个使用虚拟传感器的系统,目光只是代理感知系统的一个副产品。但是,当代理的感知系统无法对某些事物做出判断时,就会利用到目光,下文中的STEVE教育系统就是如此。同样,完全依赖用户驱动的化身也需要用户目光的指导。
当然,最令人信服的代理或化身表现还是非语言交流与语音或语调的结合。目前,该领域的工作还处于早期阶段,但已经有研究人员在开发更加生动的会话系统,该系统涉及到使用合成语音、声调、面部表情和手势等。
四、代理与世界结合
到目前为止,我们还没有讨论过物理代理感知世界、并对世界产生实质影响方面的问题,这也是我们前面提到的对象与VE互动的一个特例。从抽象层面讲,感知和行动决定着代理与世界的结合,下面我们分别讨论这两个方面。
在真实世界中,感知是一个相当困难的问题,如果研究过机器人就会感同身受。相比之下,在虚拟世界中,感知不会遇到模糊、噪音或冗长的处理过程等问题。即使是最简单的虚拟传感器也能从代理的眼中找到一丝线索,返回相关信息,给出代表对象身份或属性的数据结构。
相比之下,如前文所述,已经有一些研究工作在为虚拟代理开发貌似可行的生物感知系统。在该系统下,代理的视场被投射到模拟视网膜上,然后利用视觉算法将像素处理成一种代理能够使用的形式。在这两种形式之外,还有虚拟机器人系统。该系统在一定程度上模拟现实,为机器人配备了红外线和超声波传感器。
排除虚拟传感器任何特定系统的生物似真性,我们要知道,感知是一个代理与其所处环境的互动。例如,人们普遍会认为,与一个有灯光房间中的代理相比,在一个黑暗房间中的代理所能“看到”的内容会比较少。要在代理和环境之间进行平衡,就需要用到“知识”。在代理功能级别一致情况下,代理感知系统越简单,就需要从其所感知的对象中传递更多的知识。相反,一个模拟十分准确的鱼的视觉系统,只需要从环境中提取极少的知识。但于此同时,代理内部的处理量会相应地增加。
说完“感知”,我们再说“行动”。感知是被动的,而行动会给世界带来变化,这取决于代理的功能,以及世界的功能和状态。例如,如果一个代理要抓取一个对象,它拿起这个目标的能力取决于该目标的形状、尺寸和重量。而且,目标的重量也会受到其所处位置的影响,如是在地球表面,在太空,还是在海底深处。
从更精细的层面讲,抓取对象等行动在视觉上还要令人信服。例如,手掌不能穿透所抓取的对象,它和被抓取对象的表面的位置看起来要逼真。在该层面下,交互的复杂程度取决多种因素,如力度和各种约束条件(如对象的表面硬度)是否要体现在交互中。
━━━━━
第四章:认知代理
━━━━━
在早期的文章中,贝茨通过代理、表现和戏剧等方面的理论对虚拟环境中的内容和结构进行了细致的研究。这些研究对于VR实现其潜力至关重要。本章节,我们将避开代理研究本身,专注于通过之前的研究工作来讨论虚拟环境的内容和结构,主要是娱乐和戏剧虚拟环境的发展。
与认知端代理的发展和建造相关的问题主要包括以下三方面。首先,必须要有传统的(代理)建筑构件,负责主要的认知功能,如推理、决策、计划和学习等,无论代理是否处于虚拟环境中。
第二方面的问题关于代理在环境中的真实度,主要体现在行为方面,而不是渲染或视觉化。为了确保智能虚拟环境的实际性,它们必须要可信,无论是通过代理本身的行动,还是与其他代理的交互。第三方面的问题是在智能虚拟环境中表达情感影响。
一、艺术和娱乐虚拟环境
在这方面,我们首先谈谈贝茨及其同事在“Oz项目”上的研究工作。该项目试图将当前的技术,尤其是AI技术应用到虚拟环境中。“Oz项目”大部分工作是为非语言、可信代理开发一个广泛的代理架构,被称为“Tok”,以及响应架构和情感架构。在这里,可信度是非常重要,在处理一个实时动画环境时会施加特定的限制。响应架构允许在环境中迅速做出响应,在原始动作只持续100毫秒至150毫秒时,快速响应是必须的。
Tok已被用于创建栖息在智能世界中的多个特定代理。其中一个早期的成果是创建三个实时动画代理,被称为“woggles”。这三个代理各有特色,存在于一个动画虚拟世界中。这三个代理相互互动(有时还通过由鼠标控制的第四个Woggle与用户互动),包括游戏、探索和对抗等。从视觉上看,Woggles是一个简单的圆形,拥有一双极具表现力的眼睛。
此外,Tok还被用于制作Lyotard,一只模拟猫,用来展示情感与反应底物(reaction substrates,参与反应的物质)的结合。目前,该项目已经在开发语言能力方面取得进展。
二、虚拟影院
谈完贝茨的“Oz项目”,我们再来说说海耶斯•罗斯(Hayes-Roth)及其同事的虚拟影院项目。最初,罗斯希望为多代理系统开发一个新的范例。基于“Oz项目”的部分成果,罗斯的项目涉及到提供多媒体环境。在该环境下,用户或代理履行各种角色,包括动画角色。这项工作的动机源自HCI应用对智能代理的需求,旨在与用户互动,实现这一目标的关键是基于情感、情绪和个性开发有效的代理模式。
这项工作已拓展到不同的领域,其中一项是开发复杂或相对简单的计算机角色,另一项是开发特定环境。在第一项中,Tigrito就是一个典范。Tigrito是一只有情感的计算机玩具老虎,主要有三种交互模式。首先,Tigrito可作为一一个虚拟宠物。第二种交互模式涉及到第二只玩具虎(一个化身),它的行动可由用户来决定。 第三种是“电影”模式,用户只能调整老虎的情绪,观看代理自身选择自己的行动。
与专注于代理本身相比,另一项工作是开发一个动画虚拟环境,允许代理展示智能行为。道尔和罗斯的工作基于人机互动,他们所创建的虚拟世界充满注释,包含了情绪响应、其他行动、特定角色功能、问题解决信息和玩游戏等方面的解释,以此来适应特定的环境。这是一种生成虚拟世界中各种行为的一种有效方式,也是对智能虚拟环境的一个更直接的解释。
三、游戏
在这方面,《Creatures》(外星生物)游戏是当之无愧的典范。这是一款非常成功的游戏产品,将该领域之前的研究成果与AL技术相结合。这款游戏中的人工代理居住在一个精心设计的2.5D世界中,这里拥有各种各样的对象,可以与生物(名为“Norns”)以不同的方式进行互动。游戏里有许多自动化对象,如电梯,以及更传统的食物与玩具,还可以下载和添加其他新设备。玩家可以通过鼠标与生物进行互动,如通过抚摸来奖赏它们,通过击打来惩罚它们。
这款游戏之所以超越其他产品,是因为开发时使用了一个由1000个神经元和5000个神经键组成的神经网络,以及一个复杂的生物仿真模型。这些生物能够感知光和声音,虽然这些感知的模拟相对粗糙,但足以够用。另外,这些生物还能学习简单的语言。
《Creatures》是一款广泛发行的商业化产品,在创建令人愉悦的虚拟环境时,使用到了AI和AL技术。正如格兰德和克里夫所说,它可能是到目前为止智能虚拟环境中的最大单一体验。
四、教学代理
除了前文所述的娱乐智能虚拟环境,约翰逊及其同事开发了虚拟教学代理的典范。这项研究基于之前的智能教学系统的研究工作,并结合了智能代理方面的研究,旨在创建出生动的代理,可以利用眼神和肢体语言与学生有效互动。
STEVE(面向虚拟环境的培训专家)是一个教学代理,可以通过虚拟马达行动来监测和控制它。STEVE可以作为学生的导师或合作者,能监测学生们的表现,并为学生提供帮助。STEVE基于VET(虚拟培训环境)软件而开发,人类与虚拟世界互动是通过头戴式显示屏和3D鼠标来进行的。STEVE包括一个认知组件,用于高级别处理;一个感觉运动组件,用于与虚拟世界交互,负责处理感知和马达指令。STEVE可以被渲染成为一个无具体体现的代理(如虚拟手掌,可以抓取对象),也可以被渲染成为一个有具体体现的代理(如人体的局部,包括头和躯干),这些都不会影响其认知水平。
Adele是另一个教学代理,与STEVE运行在一个沉浸式虚拟环境中不同,Adele被设计成运行万维网之上。Adele包括一个推理引擎,一个基于Java程序的生动人物形象,能够监测学生们的表现,并提供反馈。由于采用的是2D图像界面,Adele与STEVE相比还有许多局限性。但不管怎样,它还能是通过目光和手势来改变面部表情,从而激发学生。
━━━━━
第五章:虚拟世界
━━━━━
如果说VE领域的许多工作都转向智能虚拟环境是为了添加特定功能,AI领域的工作考虑的是将虚拟环境作为创建更有趣的智能代理的一种手段,那么AL领域研究人员的野心似乎更大。这其中包括创造包含数字生活的虚拟世界,也可能包括一些物理定律,与真实世界类似。
有人将分布式交互虚拟环境,如Active Worlds,视为开发虚拟世界的基础。《Sims》(模拟人生)就是在该框架下开发的一款游戏产品。相比之下,《Technosphere》就采用了比较新的方式。Technosphere是一个在线虚拟世界,玩家可以建造生物,它们还可以跑动。这些生物故意建造很简单,玩家可以从数据可中选择它们的头、身体和眼睛等,无论是食草动物,还是食肉动物。这些动物可以吃、睡、走动、打架和交配等,当死亡后(或被屠杀),它们的身体还会逐渐腐烂。调查结果显示,在这个虚拟世界中,玩家更倾向于创建食肉动物,而不是食草动物,从而创造一个不稳定的生态系统。
《Technosphere》的开发动机就是以艺术为主,而不是科学,因此大量工作被用于创造在视觉上极具吸引力的自然风光。但是,《Technosphere》不能被实时渲染来进行某种互动。
最后一个案例是《Nerve Garden》项目,这是一套主从式(client-server system,客户端-服务器系统)系统,允许用户利用Lindenmayer
Systems系统生成3D植物模型。然后,用户可以选择一种特定植物,将其置于小岛花园中,用户可以欣赏和更新小岛。用户可以各种视角观看这一虚拟世界,包括从一个飞行的昆虫后背来动态观看,且环绕整个小岛。该项目还添加了声音效果,包括打雷。由于不支持植物生长,以及植物与环境的互动,因此从AL的角度讲,《Nerve Garden》还是一个相对初级的虚拟世界。但是,《Nerve Garden II 》将通过提供一个简单、有效的花园生态系统来增加这些功能。
━━━━━
第六章:方向与问题
━━━━━
作为结论部分,我们讨论智能虚拟环境未来发展方向和可能出现的一些问题。我们先从自治说起,将其作为一个标准来阐述不同的控制级别。
一、自治
从前文的范例中可以得知,物理端的虚拟代理可以代表任何事物,从零自治到完全自治,贯穿各种中间状态。这种自治范围与认知端代理相比具有更高的自治性,虽然它们在所处环境中也可能有一些功能限制。
一个简单的代理模型包括感知、反射和行动,感知和反射直接由用户控制,那么只剩下行动需要自主完成。但是,随着化身变得越来越复杂,代理还可能使用到面部表情、手势和肢体语言,以作为额外的通信渠道。因此,通过鼠标和菜单等标准的方式来控制就显得有些困难。正如人体的意识控制会导致认知超负荷,化身沟通方式的增加也会为用户带来超负荷问题。此时,我们需要更加灵活的直接控制界面,或者是将一些低级别的行为自治整合到化身中。
虚拟角色就是整合了低级别行为自治的代理的一个典范。此时,代理被用户整合到一个被高级别指导环境中,由一名导师来开发一个培训场景。目前,这种系统已经构建并被用于人质释放场景中,以及战场的医疗救护中。在第一个场景中,虚拟演员被用来饰演恐怖分子和大量人质。然后,受训人员以化身的身份进入VE中,通常由耳机或数据手套(data glove,一种多模式的虚拟现实硬件)来驱动。导师通过预先开发的脚本来控制整个场景,而虚拟演员也支持低级别行为,用于执行脚本中的行动,以及对行动作出实时响应。这样,如果受训者或恐怖分子开枪,虚拟人质就会逃跑。
在战场医疗救护场景中,受训人员将再次驱动一个化身,为受伤的虚拟演员提供医疗救护,这是由脚本来决定的。但是,虚拟伤员必须要以现实生活中的实际方式来回应他们所受到的救护:例如,血流必须要停止,意识必须要恢复,面部颜色必须要改变。
相比之下,其他代理可能拥有高度的自治行为,但可能以不同的方式来执行。因为拥有更多的物理代理,自治行动通常依赖于内部驾驭和环境模拟之间的互动。既然代理的驱动(drives)影响其行为,而其行为又影响环境,这就形成了一个持续的反馈环路。
例如,特佐普罗斯的鱼拥有饥饿、恐惧和性欲的内部驱动,分别用来模拟喂食、逃离和交配行为。驱动本身由鱼和所处环境的互动来生成,例如,上一次喂食时间,或者是视线中是否有捕食者。另外,《Virtual Teletubbies》(虚拟天线宝宝)和《Creatures》也采用了类似的方法,前者由饥饿、疲劳和好奇所驱动。
相比之下,在认知代理中可能出现与上文截然不同的方法。例如,STEVE就是任务驱动型,其自治主要基于目标扩张(通过一个AI计划系统)。其行为也根据环境状态进行改变,例如,如果一个受训者取消一项行动,STEVE就会计划重新去做。同样,如果一个受训者没有查看当前子任务的地理位置,STEVE就会要求他们去做。很明显,我们可以将经典的目标驱动方法与前文所说的驱动方法相结合,但目前还没有人这样做。除了这种结合所引发的概念问题,这样做也需要更多的计算资源。
二、结合物理端与认知端
目前该领域的绝大部分工作都可以归类为物理端或认知端这两大范畴,但也有一些工作把二者结合在一起。一个典型的案例就是ALIVE系统,它把物理端和认知端以有效、连贯的方式结合在一起。ALIVE允许人类和一个丰富的图形世界(栖息着自主代理)进行毫无障碍的全身互动,这是通过“镜像模式”来实现的。在该模式下,用户能看到虚拟环境中的自己(代表)。
ALIVE系统的模型是以一种复杂的方式被创建的,通过一款开发工具包,能让代理在做任何事情前都尽可能地去感知。一个代理的设计师可以指定传感器去感知环境,通过释放各种机制来识别行为上的明显刺激(例如,一个人伸手去抓地上的小狗)。
一个3D代理被创建来代表用户,其位置和状态由一个视觉系统(基于摄像头的用户成像)来计算。然后通过视觉识别用户的手、身体姿势和代理内部状态的听觉反馈,完成代理与用户之间的交互。通过这种方式,人造代理能够使用与检测环境中其他对象的同一个虚拟传感器来感知人类用户,这样用户就可以和人造代理与环境一起被渲染。
基于ALIVE系统的应用案例包括一个木偶世界。在该世界中,一个木偶会根据用户的指示来执行面部表情,传递内部状态。在近期的工作中,还有一个虚拟世界包含一只虚拟狗,利用听觉和视觉输入来表达一系列行为,以交互或自主行动方式与用户互动。总之,ALIVE系统代表着该领域的未来发展方向,凸显了AI和AE结合的重要性和实用性。
三、发展前景
如文初所述,资源限制仍是智能虚拟环境所面临的一个突出问题。某些研究中的物理建模方式(例如鱼)需要大量的计算工作,成本昂贵,因为它依赖于强大的分析框架,对处理能力的需求较高。因此,成功的物理建模还需要一种基于本地计算的低成本方案,而引入AL技术可能会提供帮助。另一个方案可能需要从AI中引入定性物理应用,从而获得一个准确的模型。从其他角度讲,支持持续交互的实时渲染必须要以创建成功的虚拟环境为目标,尤其是对于许多娱乐应用。
本文所述的智能虚拟环境是一个新的领域,目前仍处于发展的初期阶段,尚未成熟。但是,人们已经通过许多令人兴奋的创意证明了它的发展潜力。与此同时,这种不成熟也揭示了另一个问题,那就是目前仍缺乏一些高效的通用工具和架构。很明显,这会影响研究人员的创造能力。目前已经有一些工作向这方面努力,如VRML’97标准的开发。但不管怎样,该领域的巨大潜力已经被证明。事实上,如果VR、AI和AL领域的研发人员能够展开更紧密的合作,相关问题就能被更早地结解决,我们也就能更快地看到基于虚拟智能环境技术的新一波应用。(编译/谭燃)