韓曉光 徐海剛 吳 晞
(1.海軍陸戰學院模擬訓練中心 廣州 510430)(2.海軍陸戰學院科研部 廣州 510430)
?
基于MAXSIM平臺的兩棲坦克CGF兵力生成方法研究
韓曉光1徐海剛2吳晞1
(1.海軍陸戰學院模擬訓練中心廣州510430)(2.海軍陸戰學院科研部廣州510430)
摘要首先介紹了MAXSIM平臺的主要功能和體系架構,基于MAXSIM自帶實體模型無法完全滿足實際需求的情況,介紹了對平臺實體模型庫進行擴展的基本流程,以兩棲坦克實體模型擴展為例說明了具體實現方法,論文方法對其它類型實體的擴展同樣具有借鑒意義,拓展了MAXSIM平臺本身的適用范圍。
關鍵詞MAXSIM; 兩棲坦克; 實體; 擴展
Using MAXSIM Platform to Generate CGF of Amphibious Tanks
HAN Xiaoguang1XU Haigang2WU Xi1
(1. Simulation Training Center, Naval Marine Academy, Guangzhou510430)
(2. Research Department, Naval Marine Academy, Guangzhou510430)
AbstractThe main features and architecture of MAXSIM platform are described firstly, because MAXSIM’s own entities model library cannot fully meet the actual needs, the basic processes to extend MAXSIM’s entities model library are introduced, extend amphibious tanks entity is taken for example to explain implementation method, this paper’s method also can be used to other types of entities, expanding the scope of MAXSIM platform.
Key WordsMAXSIM, amphibious tanks, entity, expansion
Class NumberTP391.1
1引言
在兩棲作戰模擬訓練系統中,兩棲坦克是一個具有代表性的作戰實體單元[1],兩棲坦克的仿真包含多個方面,既要對其在海上的航行狀態進行仿真,又要對其在陸地上的運動狀態進行仿真;既要對其以單個實體獨立存在時的狀態進行仿真,又要對其與其它作戰平臺(如登陸艦)組成聚合實體時的狀態進行仿真,對兩棲坦克的仿真在整個兩棲作戰模擬訓練系統中具有代表性,對其它實體的仿真具有借鑒意義。MAXSIM仿真平臺是一個開放性的分布式仿真平臺,可以基本滿足兩棲作戰模擬訓練系統對仿真平臺的需求,但其內置的仿真實體數據庫對兩棲作戰車輛的支持不足,在系統實際開發過程中,需對平臺本身的模型庫進行擴展,MAXSIM平臺基于多Agent的建設思想[2],具有強大的擴展功能,本文以兩棲坦克實體擴展為例,介紹對MAXSIM平臺仿真實體庫進行擴展的基本流程和方法。
2MAXSIM平臺體系架構
MAXSIM平臺是一個先進的分布式仿真引擎,是基于多Agent框架體系構建的仿真系統開發平臺,具有很好的開放性,可用于軍用分布式訓練模擬系統的開發,MAXSIM仿真平臺體系組成結構如圖1所示。

圖1 MAXSIM平臺體系結構
各組成結構的功能如下:
1) 通用黑板(GBB)
通用黑板是一個通用庫,它包含了整個仿真執行期間的戰場數據,各個Agent之間數據交互均通過GBB完成,GBB可看作MAXSIM平臺的數據交互中心。
2) 仿真網絡代理(SNA)
仿真網絡代理(SNA)負責將存儲在GBB中的信息分別分發到參與仿真執行的節點中。
3) 記錄器(Logger)
記錄器是一個通用程序,用于在系統運行過程中記錄GBB數據,在MAXSIM中,記錄器記錄了整個仿真執行過程中的想定戰場數據。
4) 玩家(Player)
玩家是一個通用的應用程序,其設計目標是將記錄器中的數據填充到GBB中。
5) 知識庫
知識庫包括技術知識庫(TKB)、行為知識庫(BKB)、想定知識庫,TKB存儲了想定中所有可用平臺類型的技術數據,BKB包含了想定中每個參與方所有可用的戰法。
6) 知識庫編輯器
知識庫編輯器包括想定編輯器(SE)、技術知識庫編輯器(TKE)和行為編輯器(BE),想定編輯器(SE)使用戶可以創建和更新一個想定,這個想定表示了一個仿真戰場的初始狀態,它能夠為實時仿真所用;技術知識庫編輯器(TKE)是一個創建和編輯技術知識庫圖形用戶界面程序,它使用戶可以定義仿真戰場上的可用實體的技術參數;行為編輯器(BE)為用戶創建和編輯行為的圖形用戶界面程序,每個用戶定義的行為都可用狀態機來表示。
7) 仿真模型包
MAXSIM提供一個仿真代理集合,每個代理負責一項特定的仿真任務,這些代理包括:
(1)行為控制代理:用于模擬決策過程和在想定執行過程中對CGF行為進行控制。
(2)物理仿真代理:主要負責物理計算,例如:運動、傳感器探測、武器效果計算等。
(3)通用工具代理:主要用于支持用戶申請、仿真模型的通用工具函數、仿真代理管理等。
3兩棲坦克實體數據的擴展
對MAXSIM可支持的模型數據庫進行擴展包括三方面內容,一是對TKB本身內容進行擴展;二是在GBB中添加擴展實體及其包含的描述符、消息等;三是建立GBB與TKB間實體的映射關系。
3.1TKB中兩棲坦克數據的添加
MAXSIM平臺以.XML文件格式對裝備數據信息進行存儲,裝備類型數據存儲在TKB.XML文件中,其存儲方式如圖2所示,要添加新的裝備類型,僅需參照原有實體類型的存儲格式,在相應父類下輸入新裝備類型的實體信息,添加兩棲坦克類型的文本格式如下:
〈Node ID = “1050101023” NameEN = “Amphibian Tank”〉
對修改后的TKB.XML文件進行保存,使用TKB文件編輯工具TKE新建一個TKB文件數據庫,可以在TKE工具左側實體類型的樹形列表中發現新加的實體類型,以上便完成了在TKB數據庫中添加新實體類型的工作,在兩棲坦克類型已建立的基礎上,可以利用TKE工具生成具體的兩棲裝甲實體,圖3是添加好的兩棲坦克實體類型及具體實體的效果。

圖2 TKB中存儲裝備信息格式
3.2GBB中兩棲坦克描述符的添加方法
上節完成了對技術知識庫中兩棲坦克數據的添加,但是,技術知識庫僅用于存儲實體類型所包括的各種參數的基本信息,其所包括的數據不可用于系統內部各Agent之間的信息交互,MAXSIM平臺中各Agent間的信息交互是通過GBB來完成的,只有在GBB內添加了新的實體類型信息,該實體才可用于各Agent間的數據交互。
1) 在GBB中添加兩棲坦克實體類型

圖3 TKE中實體顯示列表
對于擴展的實體類型,必須利用GBB文件編輯工具(GBB Editor)手動添加新建的實體類型,GBB文件主要包括實體、描述符和消息等內容,實體與描述符、實體與消息之間并不是一一對應,一個描述符可以屬于多個實體、一個消息也可屬于多個實體、一個實體可以包括多個描述符和消息,例如,坦克和人兩種實體均包括PathToFollow描述符。
添加兩棲坦克實體,首先在GBB Editor工具的Entity選項卡內添加實體,并指定其基類、系統中支持的該類型最大實體數量、該類型實體包括的描述符等信息,若系統自帶的描述符列表不足以滿足實際需求,可在Descriptors選項卡內自行添加,但是,自定義的描述符不被MAXSIM平臺自帶的Agent支持,必須自定義相應的Agent以支持新增描述符。

圖4 GBB中添加坦克實體
MAXSIM平臺開發工具包中的InfraSim_HT_GBB_Defs.h文件記錄了平臺自帶的各實體、描述符與消息的枚舉值,通過引用該文件并添加自定義枚舉值以擴展平臺支持的實體、消息與描述符種類,具體實現方法如下:
enum DemoEntityName //擴展實體
{
EntityNewTank = InfraSimMaxEntities + 1,
MaxEntities = InfraSimMaxEntities + 100
};
enum DemoGBBdescriptorName //擴展描述符
{
DescriptorSound = InfraSimMaxDescriptors + 1,
DemoMaxDescriptors = InfraSimMaxDescriptors + 100
};
2) 建立GBB中實體與TKB之間的實體映射關系
GBB與TKB之間的實體映射是由實體生成Agent向GBB發送消息來實現的,實現方法如下:
EntityInfo cTankEntityInfo;
cTankEntityInfo.m_eTKBTypeID = (TKB::TYPE_ID) 1050101023; // 實體類型IDcTankEntityInfo.m_nTKBEntityID = (TKB::ENTITY_ID)1301002330; //實體ID
cTankEntityInfo.m_nTaskForce = 1; //兵力所屬方
status = writeData(nEntityID, HT_GBB::DescriptorEntityInfo, cTankEntityInfo);
實體類型ID與實體ID均通過自定義的TKB文件進行查詢,實體類型ID代表新建實體所屬裝備的分類,實體ID代表新建實體本身的標識,系統中所有實體均有唯一標識,用來區分系統中的各個實體,系統中各Agent向GBB發送信息均通過writeData函數實現。
4兩棲坦克戰法設定
兩棲坦克CGF兵力的主要特點之一是具有自主性,自主性需要較為完備的決策模型庫支撐,其中應包括自主移動、自主射擊、自主決策等多個方面模型[3],MAXSIM平臺對CGF模型自主性的支持是基于有限狀態機原理實現的,將決策流程組織成行為知識庫文件進行存儲,平臺本身已包括許多實用的戰法,開發者也可對戰法庫進行擴展,一條完整的戰法由多個狀態子和它們之間的轉換條件組成,行為知識庫文件可利用BE工具進行修改,這里以坦克射擊戰法為例說明基于MAXSIM平臺開發CGF兵力戰法的主要方法,兩棲坦克的射擊戰法在BE工具中的結構如圖5所示。

圖5 兩棲坦克射擊戰法結構圖
兩棲坦克射擊戰法由三個狀態子(Select Target、Fire Gun、Wait)和它們間的五個轉換條件組成,每個狀態子又包括一系列的動作,具體如表1所示[4]。

表1 狀態子(Select Target、Fire Gun、Wait)包含的動作列表

表2 狀態子(Select Target、Fire Gun、Wait)相互之間的轉換條件
各個狀態子均包含一系列的動作,當實體處于某個狀態子描述的狀態時,其按照動作列表中包括動作的先后順序自主執行相應的動作,實體狀態在各個狀態子之間的切換是通過轉換條件來實現的,各狀態子之間的轉換條件如表2所示[5~6]。
通過以上圖5、表1、表2中對該戰法包括內容和相關解釋的描述,可以很好地理解兩棲坦克射擊戰法的實現方法,基于MAXSIM平臺對實體戰法進行編輯的過程實質上就是建立實體包括的一系列狀態子及其相互間轉換條件的過程[7~8]。
5結語
實戰化訓練標準的提出對模擬訓練平臺提出了更高要求[9],MAXSIM對大規則實體仿真具有很好的支持性,可用作大規模分布式模擬訓練系統的開發平臺,大規則模擬訓練系統牽涉兵力種類多,對開發平臺本身裝備庫進行擴展不可避免[10],本文以兩棲坦克的擴展為例,介紹了對MAXSIM平臺本身實體庫進行擴展的基本方法,希望對軍用訓練模擬系統開發的相關人員有所幫助。
參 考 文 獻
[1] 謝國新.海軍兩棲作戰實驗室體系建設研究[J].海軍學術研究,2011(5):23-25.
XIE Guoxin. Construction of Naval Amphibious laboratory system[J]. Naval Academic Research,2011(5):23-25.
[2] HarTech Technologies. Developer’s Guide For SSG-Based Applications[K]. 2014.
[3] 張志利,陳珊,龍勇,等.基于HLA的某型導彈模擬訓練仿真系統的開發[J].計算機仿真,2007,24(8):75-77.
ZHANG Zhili, CHEN Shan, LONG Yong, et al. Development of Missile Simulation Training System Based on HLA[J]. Computer Simulation,2007,24(8):75-77.
[4] 國海峰,劉澤乾,陳丹強,等.機載武器系統模擬訓練仿真平臺設計[J].計算機測量與控制,2010,18(5):1103-1105.
GUO Haifeng, LIU Zeqian, CHEN Danqiang, et al. Training Simulation System Design of a Certain Airborne Weapon System[J]. Computer Measurement & Control,2010,18(5):1103-1105.
[5] 王欽釗,黃釗,李小龍,等.基于RV的裝甲分隊模擬訓練系統的設計與實現[J].價值工程,2015,(2):194-195.
WANG Qinzhao, HUANG Zhao, LI Xiaolong, et al. Design and Implementation of RV-based Simulation Training System of Armored Unit[J]. Value Engineering,2015,(2):194-195.
[6] 王懷曉,劉建永,陸鶯,等.基于HLA的分布式作戰實體對抗視景仿真[J].計算機應用,2011,31(z1):163-164,167.
WANG Huaixiao, LIU Jianyong, LU Ying, et al. HLA-based distributed visual simulation of operational entity rivalry[J]. Journal of Computer Applications,2011,31(z1):163-164,167.
[7] 李斌,張錦剛,楊超,等.模擬訓練系統中的激光駕束制導導彈彈道仿真[J].現代防御技術,2012,40(5):75-79.
LI Bin, ZHANG Jingang, YANG Chao, et al. Trajectory Simulation of Laser Beam Rider Guidance Gun Launched Missile in Simulation Training System[J]. Modern Defense Technology,2012,40(5):75-79.
[8] 孫永侃,趙國鋼.基于HLA的艦艇CGF研究與實現[J].火力與指揮控制,2007,32(10):72-76.
SUN Yongkan, ZHAO Guogang. Research and Implementation of Warship CGF based on HLA[J]. Fire Control and Command Control,2007,32(10):72-76.
[9] 潘長鵬,張海峰,陳潔,等.基于Agent的分布式海上編隊防空作戰仿真體系[J].火力與指揮控制,2007,32(9):92-94.
PAN Changpeng, ZHANG Haifeng, CHEN Jie, et al. Simulation Design of Distributed Naval Formation Air Defense System based on Agent[J]. Fire Control and Command Control,2007,32(9):92-94.
[10] 劉忠,楊磊,黃金才,等.面向CGF對象的仿真建模方法[J].計算機工程,2007,33(15):101-102,105.
LIU Zhong, YANG Lei, HUANG Jincai, et al. Modeling & Simulation Method for CGF Object[J]. Computer Engineering,2007,33(15):101-102,105.
中圖分類號TP391.1
DOI:10.3969/j.issn.1672-9722.2016.01.006
作者簡介:韓曉光,男,碩士,講師,研究方向:模擬訓練與仿真。徐海剛,男,碩士,副教授,研究方向:模擬訓練與仿真。吳晞,男,教授,研究方向:模擬訓練與仿真。
收稿日期:2015年7月12日,修回日期:2015年8月28日