羅月童, 孫 靜, 陳 韜
(合肥工業(yè)大學(xué)計(jì)算機(jī)與信息學(xué)院VCC研究室,安徽 合肥 230009)
隨著旅游業(yè)的發(fā)展,虛擬旅游也越來(lái)越受重視,虛擬現(xiàn)實(shí)等計(jì)算機(jī)技術(shù)的發(fā)展更進(jìn)一步推動(dòng)了虛擬旅游業(yè)的進(jìn)步,如日本開(kāi)發(fā)了虛擬東京,美國(guó)利用VR技術(shù)再現(xiàn)古羅馬的Trajan廣場(chǎng),國(guó)內(nèi)浙江大學(xué)開(kāi)發(fā)的數(shù)字故宮、數(shù)字敦煌等[1]。但現(xiàn)有的多數(shù)虛擬旅游系統(tǒng)僅包含景色、建筑等視景信息[2],缺少導(dǎo)游、游客、居民等生命體,而“一個(gè)出色的導(dǎo)游帶來(lái)一次成功的旅游活動(dòng)”、“祖國(guó)江山美不美,全憑導(dǎo)游一張嘴”等說(shuō)法體現(xiàn)了導(dǎo)游在旅游活動(dòng)中的重要地位,所以在虛擬旅游環(huán)境中加入虛擬導(dǎo)游[3]必能提高虛擬旅游系統(tǒng)的真實(shí)性和趣味性,從而推動(dòng)虛擬旅游技術(shù)的發(fā)展。
虛擬導(dǎo)游是虛擬人[4]的一個(gè)特例,虛擬人的研究包括虛擬人幾何建模、虛擬人運(yùn)動(dòng)控制及行為建模[5]三個(gè)方面,其中虛擬人的幾何建模技術(shù)[6]和運(yùn)動(dòng)控制技術(shù)[7]已經(jīng)比較成熟,《最終幻想》、《黑客帝國(guó)》、《青娜》、《指環(huán)王II》等動(dòng)畫(huà)電影就是力證。但關(guān)于通用行為模型的研究尚處于起步階段[4],這主要是因?yàn)槿祟愋袨楸旧矸浅?fù)雜。
本文通過(guò)引入領(lǐng)域知識(shí),發(fā)展針對(duì)虛擬導(dǎo)游的專用行為模型,從而降低了問(wèn)題的難度,但同時(shí)又能滿足發(fā)展智能虛擬導(dǎo)游的需求。本文提出如圖1所示的專用行為模型——基于領(lǐng)域知識(shí)的行為模型,該行為模型包括感知器、領(lǐng)域知識(shí)庫(kù)和決策推理器。

圖1 基于領(lǐng)域知識(shí)的行為模型
行為模型的本質(zhì)就是感知外界信息并做出反應(yīng)——輸出合適的行為,所以感知外界信息是行為模型的重要組成部分。在真實(shí)世界中,人類的感知包括視覺(jué)、聽(tīng)覺(jué)、味覺(jué)、嗅覺(jué)等,但研究表明人類獲取的環(huán)境信息80%來(lái)源于視覺(jué),在旅游中通過(guò)視覺(jué)獲取的信息就更多,所以本文僅考慮視覺(jué)感知。虛擬視覺(jué)模型一般分為兩類:基于渲染的視覺(jué)模型和基于數(shù)據(jù)庫(kù)查詢的視覺(jué)模型。和基于渲染的視覺(jué)模型相比,基于數(shù)據(jù)庫(kù)查詢的視覺(jué)模型具有速度快、易于實(shí)現(xiàn)等優(yōu)點(diǎn),所以本文以基于數(shù)據(jù)庫(kù)查詢的視覺(jué)模型為基礎(chǔ),發(fā)展虛擬導(dǎo)游的感知器。
導(dǎo)游的職責(zé)是帶領(lǐng)游客在景區(qū)游覽并對(duì)著名景點(diǎn)進(jìn)行解說(shuō),所以虛擬導(dǎo)游的感知器要能夠感知虛擬場(chǎng)景中的景點(diǎn)并獲取景點(diǎn)的信息。在加入虛擬導(dǎo)游、虛擬游客的智能虛擬旅游場(chǎng)景中,虛擬導(dǎo)游除了能夠感知景點(diǎn)等靜態(tài)對(duì)象,還應(yīng)該能夠感知游客和導(dǎo)游等運(yùn)動(dòng)對(duì)象,從而做出避讓等動(dòng)作以避免不同對(duì)象之間發(fā)生碰撞。
為了方便虛擬導(dǎo)游感知景點(diǎn)及其他導(dǎo)游,本文提出語(yǔ)義虛擬旅游場(chǎng)景的概念,在虛擬旅游場(chǎng)景中添加語(yǔ)義信息——為景點(diǎn)、虛擬導(dǎo)游、虛擬游客等對(duì)象附加以下信息:
· 語(yǔ)義信息 記錄與該景點(diǎn)相關(guān)的信息,如解說(shuō)詞、解說(shuō)該景點(diǎn)時(shí)虛擬導(dǎo)游的動(dòng)作特點(diǎn)。
· 感知觸發(fā)點(diǎn) 因?yàn)榫包c(diǎn)通常比較大,不便于感知器進(jìn)行檢測(cè),所以需要選擇一個(gè)具有代表性的“點(diǎn)”來(lái)表示景點(diǎn)以便于檢測(cè),稱這個(gè)點(diǎn)為“感知觸發(fā)點(diǎn)”。
· 感知優(yōu)先級(jí) 在景點(diǎn)比較密集時(shí),可能有多個(gè)景點(diǎn)或人物同時(shí)進(jìn)入感知區(qū)域,通過(guò)設(shè)置感知優(yōu)先級(jí)來(lái)解決這種沖突。
將上述信息保存到數(shù)據(jù)庫(kù)中,形成虛擬旅游場(chǎng)景語(yǔ)義數(shù)據(jù)庫(kù),虛擬導(dǎo)游通過(guò)查詢?cè)撜Z(yǔ)義數(shù)據(jù)庫(kù)完成對(duì)場(chǎng)景的感知。如圖2中,設(shè)置虛擬導(dǎo)游半徑為d的外包球,實(shí)時(shí)檢測(cè)場(chǎng)景中有哪些感知觸發(fā)點(diǎn)位于虛擬導(dǎo)游外包球內(nèi),再根據(jù)其感知優(yōu)先級(jí)決定虛擬導(dǎo)游將感知到哪一個(gè)對(duì)象,圖2中景點(diǎn)A、景點(diǎn)B感知觸發(fā)點(diǎn)均位于虛擬導(dǎo)游外包球內(nèi),景點(diǎn)A感知優(yōu)先級(jí)低于景點(diǎn)B,那么虛擬導(dǎo)游將感知到景點(diǎn)B,進(jìn)而對(duì)B進(jìn)行解說(shuō)及觸發(fā)一系列動(dòng)作。
虛擬導(dǎo)游的行為主要取決于兩個(gè)方面的因素:一是感知器從虛擬場(chǎng)景中所獲取的信息,二是導(dǎo)游這一特定群體的行為特點(diǎn)。本文以領(lǐng)域知識(shí)——導(dǎo)游行為規(guī)則描述導(dǎo)游的行為特點(diǎn)。
導(dǎo)游行為規(guī)則庫(kù)中的規(guī)則指明了規(guī)則的激活條件、規(guī)則的觸發(fā)結(jié)果及目標(biāo)轉(zhuǎn)移類型。規(guī)則并不是孤立存在的,而是一定行為目標(biāo)下所遵循的規(guī)則,不同行為下的規(guī)則也是不同的,如導(dǎo)航行為下的規(guī)則與休息行為下的規(guī)則是不同的。本文提出“目標(biāo)-規(guī)則”的概念,目標(biāo)即為一定行為下導(dǎo)游的目的,也可以說(shuō)是一種行為下導(dǎo)游所處的狀態(tài),規(guī)則為該狀態(tài)下導(dǎo)游遵循的狀態(tài)轉(zhuǎn)移原則,感知模型的感知結(jié)果或突發(fā)事件為規(guī)則提供了激活條件,而規(guī)則的觸發(fā)結(jié)果則決定了導(dǎo)游的下一步行為,也既為決策器的決策結(jié)果;GOTO與GOSUB兩種目標(biāo)轉(zhuǎn)移類型是為了實(shí)現(xiàn)目標(biāo)的嵌套而設(shè)定的兩種不同的行為轉(zhuǎn)移方式,如導(dǎo)航行為下遇到知名景點(diǎn)時(shí)導(dǎo)游狀態(tài)由導(dǎo)航變?yōu)閷?duì)景點(diǎn)的解說(shuō),但此時(shí)導(dǎo)航并沒(méi)有結(jié)束,對(duì)景點(diǎn)的解說(shuō)只是導(dǎo)航目標(biāo)下的一個(gè)子目標(biāo),因此GOSUB類型表明所轉(zhuǎn)向的行為目標(biāo)是當(dāng)前目標(biāo)的子目標(biāo),當(dāng)前目標(biāo)并沒(méi)有真正完成,而GOTO類型則表示目標(biāo)的完全轉(zhuǎn)移,如由導(dǎo)航行為結(jié)束后轉(zhuǎn)為休息狀態(tài),此時(shí)導(dǎo)航目標(biāo)已結(jié)束。如表1所示為導(dǎo)游部分典型行為的“目標(biāo)-規(guī)則”。在此基于導(dǎo)游領(lǐng)域知識(shí)建立的“目標(biāo)-規(guī)則”庫(kù)將作為導(dǎo)游行為決策推理的依據(jù)。

圖2 虛擬導(dǎo)游感知過(guò)程示意圖

表1 虛擬導(dǎo)游典型行為及規(guī)則
虛擬導(dǎo)游行為模型如何根據(jù)自身行為規(guī)則及感知模型感知到的結(jié)果完成行為的選擇、激活及終止,也即如何完成行為的決策推理過(guò)程。本文通過(guò)建立目標(biāo)棧輔助行為決策推理,如圖3中,首先建立棧結(jié)構(gòu),用于存儲(chǔ)目標(biāo)及其規(guī)則,稱為目標(biāo)棧,當(dāng)開(kāi)始一個(gè)目標(biāo)時(shí)即將目標(biāo)及其規(guī)則入棧,通過(guò)在一定時(shí)間步下實(shí)時(shí)檢測(cè)當(dāng)前行為下有無(wú)被觸發(fā)的規(guī)則,若有則將轉(zhuǎn)移到下一個(gè)目標(biāo),從而實(shí)現(xiàn)目標(biāo)的轉(zhuǎn)移:若被觸發(fā)的規(guī)則為GOTO類型,則當(dāng)前目標(biāo)結(jié)束,并將當(dāng)前目標(biāo)及其規(guī)則彈出目標(biāo)棧;若為GOSUB類型則當(dāng)前目標(biāo)及規(guī)則并不出棧,而將被觸發(fā)的規(guī)則標(biāo)記為已觸發(fā),使它不會(huì)在當(dāng)前目標(biāo)的堆棧上時(shí)被再次觸發(fā)。
一般復(fù)雜的行為由一系列基本動(dòng)作構(gòu)成,為了增強(qiáng)行為動(dòng)作的逼真性,本文將行為細(xì)分為開(kāi)始start、更新update、結(jié)束finish三個(gè)階段。一個(gè)目標(biāo)動(dòng)作經(jīng)常需要為緊接著的更新做好準(zhǔn)備。在決策過(guò)程中,Start方法會(huì)反復(fù)被調(diào)用,直到它返回false, start返回false時(shí)表明目標(biāo)已經(jīng)被初始化之前,目標(biāo)動(dòng)作的update動(dòng)作不會(huì)被調(diào)用,而其規(guī)則也不會(huì)被檢測(cè)。finish方法也是類似的,當(dāng)規(guī)則被觸發(fā),一個(gè)目標(biāo)轉(zhuǎn)移走時(shí),finish方法被調(diào)用,在其結(jié)束前,控制實(shí)際上還沒(méi)轉(zhuǎn)移,這給了目標(biāo)一個(gè)清理的機(jī)會(huì),讓它在轉(zhuǎn)移控制前進(jìn)入一個(gè)有實(shí)際意義的狀態(tài),從而避免了行為的失真。決策推理流程如圖3所示。該推理機(jī)制基于“目標(biāo)-規(guī)則”在目標(biāo)棧的輔助下完成導(dǎo)游行為的選擇、激活、終止,并實(shí)現(xiàn)動(dòng)作的執(zhí)行,從而有效地實(shí)現(xiàn)導(dǎo)游的行為模擬。
本文建立的虛擬導(dǎo)游行為模型成功應(yīng)用于三河古鎮(zhèn)實(shí)時(shí)漫游系統(tǒng)[8]中導(dǎo)游的化身。圖4所示為虛擬導(dǎo)游在導(dǎo)航行為下部分效果截圖。導(dǎo)游在漫游過(guò)程中,根據(jù)感知模型對(duì)周圍環(huán)境進(jìn)行感知,并由決策器決策并規(guī)劃下一步行為動(dòng)作,如當(dāng)感知到知名景點(diǎn)時(shí),將走到待介紹景點(diǎn)處,做出抬手、擺動(dòng)頭部等基本動(dòng)作,配合音頻對(duì)景點(diǎn)進(jìn)行介紹;如感知到其他運(yùn)動(dòng)著的人物,則繞道行走;在到達(dá)目的地后,導(dǎo)游將做出與游客告別的基本動(dòng)作。

圖4 虛擬導(dǎo)游行為模型部分實(shí)驗(yàn)截圖
在虛擬旅游場(chǎng)景中加入智能虛擬導(dǎo)游能提高虛擬旅游系統(tǒng)的真實(shí)性和趣味性,行為模型是實(shí)現(xiàn)智能虛擬導(dǎo)游的關(guān)鍵技術(shù)。本文提出了基于領(lǐng)域知識(shí)的虛擬導(dǎo)游行為模型,對(duì)感知器、領(lǐng)域知識(shí)和決策推理器都進(jìn)行了深入的研究,并將研究成果應(yīng)用于三河古鎮(zhèn)虛擬旅游系統(tǒng),取得了較好的效果。
但本文采用基于數(shù)據(jù)庫(kù)的虛擬視覺(jué)模型,對(duì)模型的遮攔等問(wèn)題的處理效果不理想,而且關(guān)于領(lǐng)域知識(shí)的歸納總結(jié)也有待進(jìn)一步提高,這些都是今后進(jìn)一步改進(jìn)的方向。
[1]劉 洋, 魯東明, 刁常宇. 敦煌285窟多媒體集成虛擬展示[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2004,16(11): 1528-1534.
[2]蔣文燕, 朱曉華, 陳 晨. 虛擬旅游研究進(jìn)展[J]. 科技導(dǎo)報(bào), 2007, 25(14): 53-57.
[3]孫 靜, 羅月童, 儲(chǔ)昭輝. 基于計(jì)算機(jī)動(dòng)畫(huà)的虛擬導(dǎo)游技術(shù)及其應(yīng)用研究[C]//計(jì)算機(jī)技術(shù)與應(yīng)用進(jìn)展2008, 2008: 80-83.
[4]羅 冠, 郝重陽(yáng), 張 雯. 虛擬人技術(shù)研究綜述[J].計(jì)算機(jī)工程, 2005, 31(18): 7-9.
[5]Stephane Donikian. HPTS: A behavior modeling language for autonomous agents [C]//AGENTS’ 01,Montreal, Quebec, Canada, 2001: 401-408.
[6]王兆其. 虛擬人合成研究綜述[J]. 中國(guó)科學(xué)院研究生院學(xué)報(bào), 2000, 17(2): 89-98.
[7]徐 孟, 孫守遷, 潘云鶴. 虛擬人運(yùn)動(dòng)控制技術(shù)的研究[J]. 系統(tǒng)仿真學(xué)報(bào), 2003, 15(3): 338-346.
[8]徐 偉, 孫 靜. 基于 Ogre的虛擬三河古鎮(zhèn)漫游系統(tǒng)[C]//計(jì)算機(jī)技術(shù)與應(yīng)用進(jìn)展2008, 2008: 44-48.