齊禎超 馬良荔 孫煜飛
(海軍工程大學計算機工程系 武漢 430033)
Web仿真中的多分辨率建模研究*
齊禎超 馬良荔 孫煜飛
(海軍工程大學計算機工程系 武漢 430033)
多分辨率建模與仿真技術已經成為系統建模與仿真發展的必然趨勢。介紹了多分辨率建模相關概念,針對基于Web的仿真環境下多分辨率建模與仿真的方法進行研究,并提出了可以動態維護仿真模型分辨率層次視點建模的方法,結果表明能夠在有效提高仿真模型的可重用性和互操作性的同時,減小對服務器資源和網絡資源的占用。
Web仿真; 多分辨率建模; 可重用性
ClassNumberTP391.9
1996年圣地哥的冬季仿真會議,“基于Web的仿真”專題會議第一次召開[1],建立在Internet和Web技術之上的建模與仿真技術逐漸成為當前研究的熱點之一,美國海軍研究生院(NPS)、喬治-梅森大學(GMU)以及SAIC公司等組織機構的研究人員于2002年提出并啟動了可擴展建模與仿真框架(XMSF)。XMSF的出現彌補了高層體系結構(HLA)的不足,代表了未來建模與仿真的發展方向,其核心是使用通用的技術、標準和開放的體系結構促進建模與仿真應用在更大范圍的互操作性和重用性[2]。基于Web瀏覽器三層B/S架構的分布式仿真系統具有易于維護性、跨平臺性、廣泛的互操作性和可重用性等諸多優點,廣泛應用于教學、科研和軍事訓練中[3~4]。但隨著仿真模擬規模擴大及對模擬逼真度要求的提高,考慮到不同用戶對仿真模型有不同分辨率的要求以及網絡負載能力有限,單一分辨率建模已經無法解決模擬復雜性與資源有限性的矛盾[5]。多分辨率建模技術可以有效提高仿真的互操作性和可重用性。目前,多分辨率建模技術的研究還處于起步階段,本文針對Web仿真的特點,研究了Web仿真環境下多分辨率建模的方法并提出了相關的實現方式。
模型分辨率是指在模型和仿真中表示現實世界的詳細和精確程度。不同分辨率的模型之間體現的是一種微觀細節與宏觀世界的一種辯證關系。多分辨率建模[6](Multi-Resolution Modeling,MRM)是指為同一物體或過程建立具有不同分辨率的模型、一個模型族或兩者的組合。國內外學者提出了一些多分辨率建模方法,常見的有聚合解聚法、視點選擇法、一體化層次法等[2]。由于建模與仿真系統應用范圍極廣,大部分多分辨率建模方法都只能針對特定領域而提出并且有相應的不足[7]。比如聚合解聚法使高分辨率模型和低分辨率模型通過聚合和解聚來實現交互,符合軟件開發人員的思維方式,但存在的鏈式解聚問題和暫態不一致性問題不易解決。視點選擇法使模型始終運行在最高分辨率條件下,針對不同的需求生成相應的低分辨率模型,該方法模型的一致性比較容易維護,但系統始終運行高分辨率模型,即使在不需要的情況下,這對系統資源是一種浪費[8]。
模型的屬性分為兩種:相關屬性和無關屬性。相關屬性是與多分辨率建模有關的屬性,當某一分辨率模型的該屬性變化時,其他模型也要改變,無關屬性是指只存在于高分辨率中的屬性,為某高分辨率模型所特有,該屬性的更改只在相應的該分辨率下的更新,不會影響其他模型。假設模型M是一個屬性與狀態S的集合:M={Si},則低分辨率模型M1、M2與高分辨率模型之間的關系為M1、M2?M,如圖1所示。

圖1 不同分辨率模型之間的包含關系
仿真過程中,低分辨率模型M1、M2的屬性值都是高分辨率模型M的相關屬性進行映射得到,映射關系為
ML=K·MH
(1)
K為MH到ML的映射矩陣[9],式(1)寫成向量形式為
(2)
S為多分辨率相關屬性時,kij不全為0,否則全為0,同理其關系也可以寫成
MH=K-1·ML+K0
(3)
K0是對無關屬性進行初始化的映射矩陣。
由于基于Web的模擬仿真系統仿真的運行和交互主要在服務器端運行,客戶端只負責提交控制信息,接受服務器消息,進行仿真結果的顯示。這有可能會增加服務器的負擔和網絡帶寬的要求。本文設計了多層次視點選擇法的建模方式,將模型分辨率由高到低劃分為幾個層次,每個層次的模型又有多個視點的選擇。比如飛機有編隊和每架兩個層次,每架飛機又有本機飛行員和戰友,敵方飛行員等多個視點,不同視點所獲取的該飛機的信息是不一樣的,但本機飛行員掌握的一定是最詳細和精確的信息。該方法是采用類似視點選擇法的多分辨率建模方式,針對不同用戶的需求生成不同分辨率的模型供用戶使用,系統只負責維護運行相對的模型中分辨率比較高的那一個模型,與視點選擇法不同的是,系統中運行的模型的分辨率不是一成不變的,當用戶沒有高分辨率的需求時,系統會放棄維護高分辨率模型,選擇較低分辨率模型進行運行,這樣在滿足對高分辨率要求的用戶的同時,省去了對低分辨率模型用戶多余的不必要的細節的顯示與處理,在提升仿真模型的可重用性與互操作性的同時,可以有效減輕對服務器和網絡造成的壓力。圖2是基于Web的多分辨率模型仿真的系統組成示意圖,有單獨的模型服務器進行多分辨率建模和模型的維護。

圖2 基于Web的多分辨建模與仿真框圖
模型庫中存儲的是各模型的最高分辨率的信息和到各級分辨率的映射方式。仿真開始前,用戶通過TCP/IP協議遠程訪問仿真服務器進行注冊,仿真服務器對用戶身份和權限進行驗證,對用戶請求進行判斷,并將處理結果發送給建模服務器,建模服務器根據用戶的興趣搜索模型庫,生成相關級別分辨率的模型并對模型進行初始化,生成XML文檔,則仿真服務器就可以對該模型進行調用和仿真。Web服務器將模型進行渲染,最終對用戶進行可視化顯示。建模服務器在仿真過程中負責模型的動態生成和注銷,以及對多分辨率模型并發運行時進行維護。
大型軍用仿真中,不同分辨率的模型常常需要進行協同仿真和并行交互。仿真系統多分辨率建模和仿真的運行和維護原理如圖3所示。模型M1和模型M2,模型N1和模型N2都是由高分辨率模型M和N映射得到,稱M、N為元模型。用戶1,用戶2,用戶3,用戶4仿真交互過程中,M1、M2不允許擅自更改屬性值,假如對M1的某個屬性值產生更改,必須對元模型M的相應值進行修改,M修改后對M1、M2進行刷新,則M2的相關屬性和狀態自然也會做相應改變。M1和M2就像M的兩個影子一樣,我們可以將M1、M2稱作是元模型M的影子模型。系統實際上只需要維護最高分辨率的元模型M,N的屬性就可以了。因此采用該方式的多分辨率建模與仿真系統,多分辨率模型并發運行時的模型間的一致性的維護是非常容易的。

圖3 多分辨率模型并發運行
雖然仿真系統的模型庫中存儲的始終是最詳細和最精確的模型,但在仿真中運行和維護的元模型卻不一定是系統能夠創建的最高分辨率的模型,而是相對的高分辨率模型。在圖3中,影子模型M1、M2,都是通過高分辨率元模型M映射得到的兩個低分辨率模型,我們要求M的分辨率級別是能夠映射得到M1、M2的最低分辨率級別,即如果需要,模型庫中仍可能創建更高分辨的模型M0,即元模型并不是特指某一固定的分辨率的模型,而是可能改變的,是當前服務器正在維護和運行的模型。這樣能保證服務器在盡可能小的負荷下運行仿真。基于Web的仿真提升了仿真的動態可擴展性,仿真過程中常常需要不斷的創建和加入新的模型以及注銷原來的模型,針對該情況,下面設計了仿真運行中動態確定和修改元模型M的分辨率的方法。
仿真開始之前,以生成的第一個模型M作為元模型。仿真過程中,需要生成一個新的模型M3時,首先對M3的分辨率層次進行判斷,設M3的分辨率層次表示函數為fR(M3),如果M3分辨率層次比元模型M的分辨率低,即fR(M3)≤fR(M),則M3作為M的影子模型直接由M映射得到,M3=K3·M。否則由模型庫對M3進行創建,并用M對M3進行逆映射,M3=K-1·M+K0,同時M3作為元模型由系統維護并生成對影子模型M1、M2的映射K1和K2,M自動注銷,執行過程如圖4所示。

圖4 添加新模型時流程圖
如果要注銷一個影子模型如M3時,注銷M3并對模型庫進行檢索,如果存在模型M0使剩下的影子模型(M1∪M2)?M0?M,fR(M0)≤fR(M),即存在模型M0的分辨率比元模型M的分辨率低,并且M0能夠映射得到影子模型M1、M2,則由M0作為元模型取代M,M0=K0·M,同時注銷M。之后系統只運行和維護M0。若不存在M0,則M仍為元模型,執行過程如圖5所示。

圖5 注銷舊模型時流程圖
由圖4和圖5可知,仿真運行時,可以根據實際情況對元模型分辨率進行動態維護,這樣系統能夠在滿足仿真要求的情況下使用和維護小分辨率的元模型,可以有效減小仿真開銷。
隨著2012年HTML5相關標準的提出,豐富的交互界面和優秀的通信性能將極大推動Web技術的發展[10],Web服務的全球范圍內動態可接入性使基于Web的仿真的優勢越來越突出。本文結合基于Web仿真的特點對多分辨率建模技術進行分析的基礎上,提出了適合Web仿真的多分辨率建模和模型一致性維護方法,因為元模型的分辨率是動態可變的,可以看出該方法相比于視點選擇法運行的服務器開銷要小,比聚合解聚法等其他方法的模型一致性更容易維護。實際仿真系統由于非常復雜,目前在這方面的研究還遠遠不夠,多分辨率建模仍有很多問題需要發掘和解決。
[1]張聰師,王兵樹,馬永光,等.基于web的在線實時仿真支撐環境研究[J].系統仿真學報,2001,13(4):462-465.
[2]韓超,郝建國,黃健.可擴展建模與仿真框架(XMSF)綜述[J].系統仿真學報,2004,16(6):1150-1154.
[3]Fred Howell, Rose McNab. Simjava: A Discrete Event Simulation Library for Java[C]//The 1998 International Conference on Web-Based Modeling & Simulation,1998,30(1):51-56.
[4]Ilhami Colak, Sevki Demirbas, Seref Sagiroglu. A novel Web-based laboratory for DC motor experiments[J]. Computer Applications in Engineering Education,2011,19(1):125-135.
[5]程旺遲,許瑞明,張最良.多分辨率建模理論方法研究的現狀與發展[J].軍事運籌與系統工程,2003(3):58-61.
[6]劉寶宏,黃柯棣.多分辨率模型系中的一致性問題研究[J].系統仿真學報,2005,17(9):2057-2074.
[7]袁玲,張曉芳,李國輝,等.分布式仿真多分辨率建模方法及一致性維護[J].計算機科學,2011,38(11):141-147.
[8]David P K, Bigelow J. Experiments on Multiresolution Modeling(MRM)[R]. RAND Report-MR1004,1998.
[9]盧志忠,申冬惠,張智.潛艇航行訓練模擬系統層次聯邦設計研究[J].系統仿真學報,2005,17(7):1626-1640.
[10]Robert B. Trelease1, Gary L. Nieder. Transforming clinical imaging and 3D data for virtual reality learning objects: HTML5 and mobile devices implementation[J]. Anatomical Sciences Education,2013,6(4):263-270.
ResearchonMulti-resolutionModelinginWeb-basedSimulation
QI Zhenchao MA Liangli SUN Yufei
(Department of Computer Engineering, University of Naval Engineering, Wuhan 430033)
The multi-resolution modeling and simulation technology has become the inevitable developing trend of system modeling and simulation. The concepts of multi-resolution modeling are introduced, and the simulation environment of Web-based multi-resolution modeling and simulation methods are studied, and the dynamic resolution level maintenance simulation model is put forward, which can view modeling method, effectively improve the reusability and interoperability of simulation model at the same time reduce the server and network resources.
Web simulation, multi-resolution modeling, reusable
2013年10月4日,
:2013年11月21日
齊禎超,男,碩士研究生,研究方向:計算機仿真技術。馬良荔,女,博士,教授,研究方向:計算機軟件與理論、計算機仿真技術。孫煜飛,男,博士研究生,研究方向:計算機軟件與理論。
TP391.9DOI:10.3969/j.issn1672-9730.2014.04.027