《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于網(wǎng)格環(huán)境的分布式虛擬戰(zhàn)場模型的UML建模
基于網(wǎng)格環(huán)境的分布式虛擬戰(zhàn)場模型的UML建模
陳 娟,王汝傳
(南京郵電學(xué)院 計算機(jī)科學(xué)與技術(shù)系,,江蘇 南京210003)
摘要: 介紹利用UML工具設(shè)計和分析基于網(wǎng)格計算環(huán)境的虛擬現(xiàn)實戰(zhàn)場模型,,從系統(tǒng)需求和問題領(lǐng)域出發(fā),,分析系統(tǒng)用例圖,并從靜態(tài)和動態(tài)方面考慮系統(tǒng)的結(jié)構(gòu)模型。
Abstract:
Key words :

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

  虛擬現(xiàn)實是一種先進(jìn)的計算機(jī)用戶接口,,它通過給用戶同時提供諸如視覺、聽覺,、觸覺等各種直觀而又自然的實時感知交互手段,,最大限度地方便用戶的操作。其中分布式虛擬現(xiàn)實(Distributed Virtual Reality,,DVR)系統(tǒng)是指基于網(wǎng)絡(luò)的虛擬環(huán)境。在這個環(huán)境中,,位于不同物理位置的多個用戶或多個虛擬環(huán)境通過網(wǎng)絡(luò)相聯(lián)接,,并共享信息。虛擬現(xiàn)實系統(tǒng)運(yùn)行在分布式環(huán)境下有二方面的原因:(1)充分利用分布式計算機(jī)系統(tǒng)提供的強(qiáng)大計算能力,。(2)有些應(yīng)用本身具有分布特性,,如多人通過網(wǎng)絡(luò)進(jìn)行游戲和虛擬戰(zhàn)場模擬等。
  網(wǎng)格是一種把地理位置上分散的資源集成起來的基礎(chǔ)設(shè)施,。其基本特征是:資源共享,,通過通信網(wǎng)絡(luò)提供了計算資源、存儲資源,、數(shù)據(jù)資源,、信息資源,、知識資源、專家資源和設(shè)備資源的全面共享,。網(wǎng)格把同通信手段連接起來的資源無縫集成為一個有機(jī)整體,。它給用戶提供一種基于國際互聯(lián)網(wǎng)的新型計算機(jī)平臺,即網(wǎng)格計算(Grid Computing)環(huán)境,,在這個平臺上對來自客戶的請求和提供資源的能力進(jìn)行合理的匹配,,為用戶的請求選擇合適的起源服務(wù),實現(xiàn)廣域范圍的資源共享,。要想給用戶,、資源提供暢通的渠道,提供安全,、高效,、高質(zhì)量的服務(wù),網(wǎng)格必須具備4個基本特點:虛擬性,、共享性,、集成性和協(xié)商性。
  網(wǎng)格計算利用分布式計算(Distributed Computing)機(jī)網(wǎng)絡(luò)處理大計算量任務(wù),,最大限度地利用了現(xiàn)有網(wǎng)絡(luò)的計算能力,,實現(xiàn)資源共享。網(wǎng)格為分布式虛擬現(xiàn)實提供了強(qiáng)有力的支持,,順應(yīng)了當(dāng)前分布式虛擬現(xiàn)實的發(fā)展,,使得分布式虛擬戰(zhàn)場擁有廣泛的應(yīng)用前景。
1  網(wǎng)格環(huán)境分析
  網(wǎng)格可以簡單地劃分為分布式資源,、網(wǎng)格系統(tǒng)和網(wǎng)格應(yīng)用3個層次,。網(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)格中的活動提供依據(jù),。
  (2)資源管理:負(fù)責(zé)管理網(wǎng)格中的所有資源。
  (3)數(shù)據(jù)管理:管理數(shù)據(jù)的存儲,、數(shù)據(jù)的標(biāo)識和副本等,。
  (4)通信與安全管理:保證網(wǎng)格上的活動合法,信息通達(dá),。
  (5)界面管理:負(fù)責(zé)用戶和網(wǎng)格之間信息的轉(zhuǎn)換和表現(xiàn),。 (6)作業(yè)管理:支持用戶在計算資源上運(yùn)行自己的代碼。
  (7)公共管理:包括用戶的管理、網(wǎng)格的監(jiān)控,、記賬等,。
  網(wǎng)格用戶通過界面管理的支持將作業(yè)提交給網(wǎng)格,最后從網(wǎng)格得到計算結(jié)果,。網(wǎng)格在提供服務(wù)之前,,首先需要通過信息管理確認(rèn)網(wǎng)格中哪些資源目前可用。分配好可用資源后還需要進(jìn)行資源管理,。在作業(yè)計算過程中,,需要使用網(wǎng)格中的數(shù)據(jù),網(wǎng)格需要通過數(shù)據(jù)管理傳輸遠(yuǎn)程節(jié)點上的數(shù)據(jù),。整個過程需要通信和安全管理作保障以防泄漏關(guān)鍵數(shù)據(jù)等,。
2  基于網(wǎng)格環(huán)境的虛擬現(xiàn)實戰(zhàn)場的具體分析
  虛擬現(xiàn)實戰(zhàn)場模型在本文中屬于網(wǎng)格的應(yīng)用,也是本文設(shè)計的重點,。網(wǎng)格應(yīng)用區(qū)別于傳統(tǒng)應(yīng)用的特點在于其運(yùn)行環(huán)境是網(wǎng)格,,而且網(wǎng)格應(yīng)用可以調(diào)用整個網(wǎng)格上的各種遠(yuǎn)程服務(wù)??偟恼f來,,網(wǎng)格應(yīng)用應(yīng)該具有如下一些特點:
  (1)黏合性。網(wǎng)格應(yīng)用可以通過把不同的網(wǎng)格構(gòu)件黏合在一起來實現(xiàn),。這些黏合在一起的構(gòu)件可以是不同程序設(shè)計語言開發(fā)出來的,,可以運(yùn)行在不同的操作系統(tǒng)和硬件設(shè)備上。
  (2)動態(tài)性,。網(wǎng)格應(yīng)用的運(yùn)行環(huán)境是動態(tài)的,,即所用資源在網(wǎng)格上的來去是動態(tài)的,運(yùn)行應(yīng)用的目標(biāo)機(jī)器的選擇也是動態(tài)的,。構(gòu)成一個網(wǎng)格應(yīng)用的構(gòu)件隨著宿主設(shè)備的進(jìn)入和退出,,網(wǎng)格呈現(xiàn)出的是可用和不可用的動態(tài)性。
  (3)平臺獨立性,。網(wǎng)格應(yīng)用應(yīng)該與具體的平臺無關(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)該脫離具體的平臺,,可以在任何具體環(huán)境下運(yùn)行。
  (4)網(wǎng)格應(yīng)用具有可伸縮性,。在網(wǎng)格資源充裕的情況下,一個應(yīng)用可以利用多個資源實現(xiàn)自己的操作,。如果網(wǎng)格資源比較緊張,,同樣一個應(yīng)用在少數(shù)幾個資源上運(yùn)行也可以完成要做的事情。即網(wǎng)格應(yīng)用對資源的需求也應(yīng)該有伸縮性。
  (5)自我管理性,。網(wǎng)格應(yīng)用活動涉及網(wǎng)格中的多個資源,,在很多情況下,應(yīng)用的啟動者也難以判斷活動在哪個具體的機(jī)器上執(zhí)行,,一旦出現(xiàn)故障,,就需要應(yīng)用能配合網(wǎng)格管理系統(tǒng)實現(xiàn)自我管理,做好故障恢復(fù)和處理,,做到不會影響其他應(yīng)用的正常執(zhí)行,。
2.1 虛擬現(xiàn)實戰(zhàn)場系統(tǒng)需求和問題域分析
  該模型在初始化階段需要有一定的安全性,支持注冊,、登錄,、注銷和退出系統(tǒng)等功能。登錄上系統(tǒng)的網(wǎng)格用戶可通過EAI(External Authoring Interface)外部編程接口和虛擬現(xiàn)實戰(zhàn)場中的本地虛擬化身交互通信,。一方面隨著本地用戶的化身在虛擬戰(zhàn)場中不斷地運(yùn)動變化,,一些本地信息如用戶序列號、方位,、旋轉(zhuǎn)角度等都在不斷地發(fā)生變化,,這些信息對于該網(wǎng)格用戶而言僅僅是需要在網(wǎng)格客戶端本地處理而已;另一方面在網(wǎng)格客戶端隨著代表該網(wǎng)格用戶的虛擬化身的不斷運(yùn)動變化以及與其他虛擬化身的交互,,如炮擊對方,、在線聊天等,虛擬場景也要做出相應(yīng)的變化,。這些數(shù)據(jù)信息都需要通過虛擬組織網(wǎng)格服務(wù)接口將客戶端網(wǎng)格服務(wù)發(fā)布到網(wǎng)格服務(wù)端,,由網(wǎng)格服務(wù)端來管理虛擬戰(zhàn)場應(yīng)用并將其相應(yīng)的各種原語交付給任務(wù)調(diào)度中心和資源管理中心來進(jìn)行統(tǒng)籌調(diào)度處理。
  圖2即為在網(wǎng)格環(huán)境下所要實現(xiàn)的應(yīng)用系統(tǒng)——虛擬現(xiàn)實戰(zhàn)場的UML用例圖,。具體描述如下:

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

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

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

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。