《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 基于網(wǎng)格環(huán)境的分布式虛擬戰(zhàn)場(chǎng)模型的UML建模

基于網(wǎng)格環(huán)境的分布式虛擬戰(zhàn)場(chǎng)模型的UML建模

2009-08-19
作者:陳 娟,王汝傳

??? 摘? 要: 介紹利用UML工具設(shè)計(jì)和分析基于網(wǎng)格計(jì)算環(huán)境的虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)模型,,從系統(tǒng)需求和問題領(lǐng)域出發(fā),,分析系統(tǒng)用例圖,并從靜態(tài)和動(dòng)態(tài)方面考慮系統(tǒng)的結(jié)構(gòu)模型,。
??? 關(guān)鍵詞: 虛擬現(xiàn)實(shí)? 網(wǎng)格計(jì)算? 虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)? UML

?

??? 虛擬現(xiàn)實(shí)是一種先進(jìn)的計(jì)算機(jī)用戶接口,,它通過給用戶同時(shí)提供諸如視覺、聽覺,、觸覺等各種直觀而又自然的實(shí)時(shí)感知交互手段,,最大限度地方便用戶的操作。其中分布式虛擬現(xiàn)實(shí)(Distributed Virtual Reality,,DVR)系統(tǒng)是指基于網(wǎng)絡(luò)的虛擬環(huán)境,。在這個(gè)環(huán)境中,位于不同物理位置的多個(gè)用戶或多個(gè)虛擬環(huán)境通過網(wǎng)絡(luò)相聯(lián)接,,并共享信息,。虛擬現(xiàn)實(shí)系統(tǒng)運(yùn)行在分布式環(huán)境下有二方面的原因:(1)充分利用分布式計(jì)算機(jī)系統(tǒng)提供的強(qiáng)大計(jì)算能力。(2)有些應(yīng)用本身具有分布特性,,如多人通過網(wǎng)絡(luò)進(jìn)行游戲和虛擬戰(zhàn)場(chǎng)模擬等,。
??? 網(wǎng)格是一種把地理位置上分散的資源集成起來的基礎(chǔ)設(shè)施。其基本特征是:資源共享,,通過通信網(wǎng)絡(luò)提供了計(jì)算資源,、存儲(chǔ)資源、數(shù)據(jù)資源,、信息資源,、知識(shí)資源、專家資源和設(shè)備資源的全面共享,。網(wǎng)格把同通信手段連接起來的資源無(wú)縫集成為一個(gè)有機(jī)整體,。它給用戶提供一種基于國(guó)際互聯(lián)網(wǎng)的新型計(jì)算機(jī)平臺(tái),即網(wǎng)格計(jì)算(Grid Computing)環(huán)境,,在這個(gè)平臺(tái)上對(duì)來自客戶的請(qǐng)求和提供資源的能力進(jìn)行合理的匹配,,為用戶的請(qǐng)求選擇合適的起源服務(wù),,實(shí)現(xiàn)廣域范圍的資源共享。要想給用戶,、資源提供暢通的渠道,,提供安全、高效,、高質(zhì)量的服務(wù),,網(wǎng)格必須具備4個(gè)基本特點(diǎn):虛擬性、共享性,、集成性和協(xié)商性,。
??? 網(wǎng)格計(jì)算利用分布式計(jì)算(Distributed Computing)機(jī)網(wǎng)絡(luò)處理大計(jì)算量任務(wù),最大限度地利用了現(xiàn)有網(wǎng)絡(luò)的計(jì)算能力,,實(shí)現(xiàn)資源共享,。網(wǎng)格為分布式虛擬現(xiàn)實(shí)提供了強(qiáng)有力的支持,順應(yīng)了當(dāng)前分布式虛擬現(xiàn)實(shí)的發(fā)展,,使得分布式虛擬戰(zhàn)場(chǎng)擁有廣泛的應(yīng)用前景,。
1? 網(wǎng)格環(huán)境分析
??? 網(wǎng)格可以簡(jiǎn)單地劃分為分布式資源、網(wǎng)格系統(tǒng)和網(wǎng)格應(yīng)用3個(gè)層次,。網(wǎng)格應(yīng)用層處于網(wǎng)格的頂層,分布式資源為網(wǎng)格的物理層即為網(wǎng)格底層,,網(wǎng)格系統(tǒng)處在分布式資源和應(yīng)用層之間,,在應(yīng)用層和資源之間起到橋梁作用。完整的網(wǎng)格系統(tǒng)需要有如圖1所示的基本管理功能,。

?


??? (1)信息管理:為網(wǎng)格中的活動(dòng)提供依據(jù),。
??? (2)資源管理:負(fù)責(zé)管理網(wǎng)格中的所有資源。
??? (3)數(shù)據(jù)管理:管理數(shù)據(jù)的存儲(chǔ),、數(shù)據(jù)的標(biāo)識(shí)和副本等,。
??? (4)通信與安全管理:保證網(wǎng)格上的活動(dòng)合法,信息通達(dá),。
??? (5)界面管理:負(fù)責(zé)用戶和網(wǎng)格之間信息的轉(zhuǎn)換和表現(xiàn),。

?? ?(6)作業(yè)管理:支持用戶在計(jì)算資源上運(yùn)行自己的代碼。
??? (7)公共管理:包括用戶的管理,、網(wǎng)格的監(jiān)控,、記賬等。
??? 網(wǎng)格用戶通過界面管理的支持將作業(yè)提交給網(wǎng)格,,最后從網(wǎng)格得到計(jì)算結(jié)果,。網(wǎng)格在提供服務(wù)之前,首先需要通過信息管理確認(rèn)網(wǎng)格中哪些資源目前可用,。分配好可用資源后還需要進(jìn)行資源管理,。在作業(yè)計(jì)算過程中,,需要使用網(wǎng)格中的數(shù)據(jù),網(wǎng)格需要通過數(shù)據(jù)管理傳輸遠(yuǎn)程節(jié)點(diǎn)上的數(shù)據(jù),。整個(gè)過程需要通信和安全管理作保障以防泄漏關(guān)鍵數(shù)據(jù)等,。
2? 基于網(wǎng)格環(huán)境的虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)的具體分析
??? 虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)模型在本文中屬于網(wǎng)格的應(yīng)用,也是本文設(shè)計(jì)的重點(diǎn),。網(wǎng)格應(yīng)用區(qū)別于傳統(tǒng)應(yīng)用的特點(diǎn)在于其運(yùn)行環(huán)境是網(wǎng)格,,而且網(wǎng)格應(yīng)用可以調(diào)用整個(gè)網(wǎng)格上的各種遠(yuǎn)程服務(wù)??偟恼f來,,網(wǎng)格應(yīng)用應(yīng)該具有如下一些特點(diǎn):
??? (1)黏合性。網(wǎng)格應(yīng)用可以通過把不同的網(wǎng)格構(gòu)件黏合在一起來實(shí)現(xiàn),。這些黏合在一起的構(gòu)件可以是不同程序設(shè)計(jì)語(yǔ)言開發(fā)出來的,,可以運(yùn)行在不同的操作系統(tǒng)和硬件設(shè)備上。
??? (2)動(dòng)態(tài)性,。網(wǎng)格應(yīng)用的運(yùn)行環(huán)境是動(dòng)態(tài)的,,即所用資源在網(wǎng)格上的來去是動(dòng)態(tài)的,運(yùn)行應(yīng)用的目標(biāo)機(jī)器的選擇也是動(dòng)態(tài)的,。構(gòu)成一個(gè)網(wǎng)格應(yīng)用的構(gòu)件隨著宿主設(shè)備的進(jìn)入和退出,,網(wǎng)格呈現(xiàn)出的是可用和不可用的動(dòng)態(tài)性。
??? (3)平臺(tái)獨(dú)立性,。網(wǎng)格應(yīng)用應(yīng)該與具體的平臺(tái)無(wú)關(guān),。盡管網(wǎng)格的思想中并不排斥某種特定的運(yùn)行環(huán)境,但這只是從兼容的角度強(qiáng)調(diào)網(wǎng)格上可以運(yùn)行所有的傳統(tǒng)應(yīng)用,。網(wǎng)格應(yīng)用應(yīng)該脫離具體的平臺(tái),,可以在任何具體環(huán)境下運(yùn)行。
??? (4)網(wǎng)格應(yīng)用具有可伸縮性,。在網(wǎng)格資源充裕的情況下,,一個(gè)應(yīng)用可以利用多個(gè)資源實(shí)現(xiàn)自己的操作。如果網(wǎng)格資源比較緊張,,同樣一個(gè)應(yīng)用在少數(shù)幾個(gè)資源上運(yùn)行也可以完成要做的事情,。即網(wǎng)格應(yīng)用對(duì)資源的需求也應(yīng)該有伸縮性。
??? (5)自我管理性,。網(wǎng)格應(yīng)用活動(dòng)涉及網(wǎng)格中的多個(gè)資源,,在很多情況下,應(yīng)用的啟動(dòng)者也難以判斷活動(dòng)在哪個(gè)具體的機(jī)器上執(zhí)行,,一旦出現(xiàn)故障,,就需要應(yīng)用能配合網(wǎng)格管理系統(tǒng)實(shí)現(xiàn)自我管理,做好故障恢復(fù)和處理,,做到不會(huì)影響其他應(yīng)用的正常執(zhí)行,。
2.1 虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)系統(tǒng)需求和問題域分析
??? 該模型在初始化階段需要有一定的安全性,,支持注冊(cè)、登錄,、注銷和退出系統(tǒng)等功能,。登錄上系統(tǒng)的網(wǎng)格用戶可通過EAI(External Authoring Interface)外部編程接口和虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)中的本地虛擬化身交互通信。一方面隨著本地用戶的化身在虛擬戰(zhàn)場(chǎng)中不斷地運(yùn)動(dòng)變化,,一些本地信息如用戶序列號(hào),、方位、旋轉(zhuǎn)角度等都在不斷地發(fā)生變化,,這些信息對(duì)于該網(wǎng)格用戶而言僅僅是需要在網(wǎng)格客戶端本地處理而已,;另一方面在網(wǎng)格客戶端隨著代表該網(wǎng)格用戶的虛擬化身的不斷運(yùn)動(dòng)變化以及與其他虛擬化身的交互,如炮擊對(duì)方,、在線聊天等,,虛擬場(chǎng)景也要做出相應(yīng)的變化。這些數(shù)據(jù)信息都需要通過虛擬組織網(wǎng)格服務(wù)接口將客戶端網(wǎng)格服務(wù)發(fā)布到網(wǎng)格服務(wù)端,,由網(wǎng)格服務(wù)端來管理虛擬戰(zhàn)場(chǎng)應(yīng)用并將其相應(yīng)的各種原語(yǔ)交付給任務(wù)調(diào)度中心和資源管理中心來進(jìn)行統(tǒng)籌調(diào)度處理,。
??? 圖2即為在網(wǎng)格環(huán)境下所要實(shí)現(xiàn)的應(yīng)用系統(tǒng)——虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)的UML用例圖。具體描述如下:

?


??? 普通用戶通過注冊(cè)成為網(wǎng)格用戶,,網(wǎng)格用戶在登錄上系統(tǒng)之后,,可以進(jìn)行注銷、退出系統(tǒng)或是與其他網(wǎng)格用戶進(jìn)行交互,,如發(fā)射武器,、更新其他網(wǎng)格用戶虛擬場(chǎng)景中化身的方位等。這些操作都可被視為網(wǎng)格客戶端信息的處理,。虛擬戰(zhàn)場(chǎng)中的化身亦代表虛擬戰(zhàn)場(chǎng)用戶,它主要是處理無(wú)需通過網(wǎng)格環(huán)境的本地信息,,如更新自身的方位,、旋轉(zhuǎn)角度等。而網(wǎng)格客戶端信息則通過客戶端網(wǎng)格服務(wù)發(fā)布到虛擬組織,,再由VR應(yīng)用管理進(jìn)行資源調(diào)度和任務(wù)調(diào)度等,。
2.2 基于網(wǎng)格的虛擬戰(zhàn)場(chǎng)靜態(tài)模型結(jié)構(gòu)分析?
??? 虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)位于網(wǎng)格系統(tǒng)的應(yīng)用層,對(duì)該戰(zhàn)場(chǎng)的設(shè)計(jì)分為實(shí)現(xiàn)功能設(shè)計(jì)和模型界面設(shè)計(jì),。
??? (1)實(shí)現(xiàn)功能設(shè)計(jì):同一個(gè)局域網(wǎng)共享一個(gè)虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng),,實(shí)現(xiàn)三方軍隊(duì)相互交戰(zhàn),其中所有同在一個(gè)局域網(wǎng)且通過身份驗(yàn)證的用戶均可通過網(wǎng)格環(huán)境參與到該戰(zhàn)場(chǎng)場(chǎng)景中,,此時(shí)該用戶即被稱為在線用戶,。所有在線用戶均可利用某些儀器如鼠標(biāo)、鍵盤等對(duì)虛擬場(chǎng)景進(jìn)行操作,,如代表在線用戶的化身在本地客戶場(chǎng)景中作轉(zhuǎn)身,、移動(dòng)等動(dòng)作,,與此同時(shí)其他在線用戶化身的客戶場(chǎng)景中同樣記錄著這些動(dòng)作信息,并以此改變自身客戶場(chǎng)景中此化身的狀態(tài)變化,。另一方面,,基于虛擬戰(zhàn)場(chǎng)的特性,每個(gè)在線用戶勢(shì)必會(huì)與敵方交戰(zhàn),,他們可以在自身的客戶場(chǎng)景中運(yùn)用鼠標(biāo)和鍵盤熱鍵發(fā)射炮彈,,攻擊對(duì)方等,這些作戰(zhàn)情況都會(huì)記載在本地客戶場(chǎng)景信息中,。另外,,各個(gè)在線用戶因是交互作戰(zhàn),彼此之間的語(yǔ)言交流必不可少,。因此本地客戶場(chǎng)景中應(yīng)集成有在線聊天功能,,便于在線用戶之間的交流。
??? (2)模型界面設(shè)計(jì):虛擬戰(zhàn)場(chǎng)系統(tǒng)共有6個(gè)界面子模塊:用戶登錄界面,、武器選擇界面,、本地化身信息界面、本地化身作戰(zhàn)情況界面,、在線用戶界面和虛擬戰(zhàn)場(chǎng)場(chǎng)景圖,。首先用戶在登錄界面中輸入身份驗(yàn)證信息,通過驗(yàn)證后方可進(jìn)入虛擬場(chǎng)景作戰(zhàn),;同時(shí)在線用戶界面中會(huì)為該合法用戶提供此刻同在虛擬戰(zhàn)場(chǎng)中的各個(gè)在線用戶名,。另外,客戶化身在鼠標(biāo)和鍵盤的控制下,,可以在虛擬戰(zhàn)場(chǎng)場(chǎng)景中隨意暢游,,本地化身信息界面中會(huì)實(shí)時(shí)地記錄下化身的方位數(shù)據(jù)信息,并提供彼此間聊天功能,;而本地化身作戰(zhàn)情況界面也會(huì)在化身之間進(jìn)行交互作戰(zhàn)時(shí),,可視化地顯示出本地化身的作戰(zhàn)情況,如生命值,、得失分情況,、攻擊是否成功等信息。
??? 該虛擬戰(zhàn)場(chǎng)的UML類圖如圖3所示,,其中網(wǎng)格客戶端體系結(jié)構(gòu)使用C/S模式構(gòu)造,,在實(shí)現(xiàn)中分5個(gè)模塊組成:服務(wù)端監(jiān)控中心模塊、多線程發(fā)送器模塊,、本地處理機(jī)模塊,、多線程接收器模塊和后臺(tái)數(shù)據(jù)庫(kù)維護(hù)模塊。由于本地處理機(jī)模塊必須監(jiān)聽各種事件,并做出相應(yīng)的事件處理,,所以需要實(shí)現(xiàn)事件監(jiān)聽接口,。

?


2.3 基于網(wǎng)格的虛擬戰(zhàn)場(chǎng)動(dòng)態(tài)行為模型分析
??? 需要指出的是,本系統(tǒng)使用EAI外部編程接口實(shí)現(xiàn)用戶界面的可視化,,使虛擬現(xiàn)實(shí)場(chǎng)景更利于控制和管理,,這就需要用到Java Applet。由于Applet存在安全性和sandbox(沙盒)機(jī)制問題,,需要有個(gè)服務(wù)器容器作為HTTP SERVER來下載Applet,,初始階段只需在客戶端輸入服務(wù)器的IP地址及文件存放位置,這樣就可以訪問到存放在HTTP SERVER如Tomcat中的HTML,。至此可以在客戶端開始與服務(wù)端和其他客戶的交互,。
??? 以發(fā)射武器為例,由于采用EAI外部編程接口,,武器完全可以在虛擬場(chǎng)景中通過EAI接口動(dòng)態(tài)生成,。網(wǎng)格用戶向VR場(chǎng)景發(fā)送某個(gè)消息表示需要發(fā)射武器,其整個(gè)過程如圖4所示,。具體描述如下:

?


??? (1)網(wǎng)格客戶端創(chuàng)建好線程MultiSender多用戶發(fā)送器,,一個(gè)線程就代表一個(gè)網(wǎng)格用戶。
??? (2)本地處理機(jī)客戶端獲得VRML瀏覽器對(duì)象,,以便通過EAI接口控制VRML場(chǎng)景,。
??? (3)本地處理機(jī)客戶端獲得虛擬戰(zhàn)場(chǎng)用戶化身的節(jié)點(diǎn),由此可以通過節(jié)點(diǎn)的入事件和出事件屬性來監(jiān)視和控制虛擬化身,。
??? (4)本地處理機(jī)客戶端創(chuàng)建線程MultiReceiver多用戶接收器,,接收從其他網(wǎng)格用戶中發(fā)來的更新信息或是虛擬場(chǎng)景中的動(dòng)態(tài)數(shù)據(jù),如由于化身不斷運(yùn)動(dòng)變化而帶來的虛擬場(chǎng)景的更新變化等,。
??? (5)通過對(duì)發(fā)射武器的屬性(如大小,、形狀、顏色等)進(jìn)行描述而動(dòng)態(tài)地在虛擬場(chǎng)景中生成它,。
??? (6)武器生成后需要在各個(gè)在線網(wǎng)格用戶的虛擬場(chǎng)景中發(fā)射,,并沿著一定的軌跡運(yùn)動(dòng)。這些軌跡的位置和轉(zhuǎn)向數(shù)據(jù)的計(jì)算通過網(wǎng)格環(huán)境來解決,。
??? (7)多用戶發(fā)送器將計(jì)算武器發(fā)射軌跡數(shù)據(jù)的操作通過網(wǎng)格服務(wù)發(fā)布接口發(fā)布相應(yīng)的網(wǎng)格服務(wù)。
??? (8)向網(wǎng)格服務(wù)器請(qǐng)求執(zhí)行完成網(wǎng)格服務(wù),。
??? (9)網(wǎng)格服務(wù)完成,,返回結(jié)果。
??? (10)向網(wǎng)格客戶端返回計(jì)算結(jié)果,。
??? (11)線程MultiSender多用戶發(fā)送器向每個(gè)網(wǎng)格用戶的線程MultiReceiver多用戶接收器發(fā)送同步消息,,將武器發(fā)射軌跡數(shù)據(jù)發(fā)送到接收器。
??? (12)接收到武器發(fā)射軌跡數(shù)據(jù)后,通過EAI接口實(shí)時(shí)更新虛擬戰(zhàn)場(chǎng)中的武器發(fā)射軌跡,。
3? 結(jié)束語(yǔ)
??? 網(wǎng)格作為計(jì)算機(jī)發(fā)展的新興技術(shù),,它著眼于高性能和分布式計(jì)算能力。本文簡(jiǎn)單介紹了網(wǎng)格技術(shù),,并著重分析了基于網(wǎng)格環(huán)境的虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)模型的UML建模,。整個(gè)虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)模型建立在網(wǎng)格基礎(chǔ)上。網(wǎng)格應(yīng)用的安全要求并不高,,只需簡(jiǎn)單地進(jìn)行網(wǎng)格用戶身份檢驗(yàn)核對(duì),,因?yàn)榫W(wǎng)格安全工作的核心應(yīng)放在網(wǎng)格基礎(chǔ)安全如CA認(rèn)證等方面。所以下一步的工作就是如何考慮整個(gè)網(wǎng)格的安全如CA認(rèn)證等,。另外,,由于虛擬現(xiàn)實(shí)戰(zhàn)場(chǎng)完全可以充分利用網(wǎng)格環(huán)境中強(qiáng)大的分布式計(jì)算能力,因此該模型的可擴(kuò)展性和實(shí)時(shí)性能都比較理想,。
參考文獻(xiàn)
1?? Ames A,,Nadeau D R,Moreland J.VRML資源手冊(cè).北京:電子工業(yè)出版社,,1998
2?? Julier S,,King R,Colbert B et al.The Software Architecture of a Real-time Battlefield Visualization Virtual Environment.IEEE,,1999,;(13~17)
3?? Zhang B,Chen Ye-sho.Enhancing UML Conceptual Modeling through the Use of Virtual Reality.System Sciences,,2005.HICSS′05.Proceedings of the 38th Annual Hawaii?International Conference on,,2005
4?? Matijasevic M,Gracanin D,,Valavanis K P et al.A Framework for Multiuser Distributed Virtual Environments.Systems,,Man and Cybernetics,Part B.IEEE Transactions?on,,2002,;32(4)
5?? 趙小林.網(wǎng)頁(yè)制作技術(shù)教程——虛擬現(xiàn)實(shí)篇.北京:國(guó)防工業(yè)出版社,2002
6?? 徐志偉,,馮百明,,李偉.網(wǎng)格計(jì)算技術(shù).北京:電子工業(yè)出版社,2004
7?? 冀振燕.UML系統(tǒng)分析設(shè)計(jì)與應(yīng)用案例.北京:人民郵電出版社,,2003
8?? 雷鳴,,馮永浩,張軍.基于VRML技術(shù)的分布交互式虛擬戰(zhàn)場(chǎng)仿真.計(jì)算機(jī)仿真,,2003,;20(11)
9?? 胡少林,吳玲達(dá),張茂軍.3D虛擬戰(zhàn)場(chǎng)環(huán)境構(gòu)造技術(shù)研究.小型微型計(jì)算機(jī)系統(tǒng),,2002,;23(12)

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。