李 策,楊 博
(國防大學(xué)聯(lián)合作戰(zhàn)學(xué)院,河北石家莊 050084)
在軟件系統(tǒng)開發(fā)領(lǐng)域,框架是一種包含特定領(lǐng)域應(yīng)用的,具有通用功能、易擴(kuò)展、可復(fù)用和提供外部開發(fā)接口的一種軟件構(gòu)件形式。一個好的框架可提高領(lǐng)域應(yīng)用系統(tǒng)開發(fā)效率、增強(qiáng)系統(tǒng)的靈活性。
陸軍合同戰(zhàn)斗仿真實驗分析中,即使對同一組仿真結(jié)果數(shù)據(jù)集,面向靜態(tài)和動態(tài)、綜合和要素、全程和片段等評估要求,其評估內(nèi)容和評估結(jié)果在表現(xiàn)形式上有很大的不同。隨著各種新型裝備投入使用和新戰(zhàn)法的運用,評估分析的內(nèi)容也會隨之變化,因此需要一種能滿足快速開發(fā)和適應(yīng)變化的軟件開發(fā)基礎(chǔ)框架,以有效提高構(gòu)造評估分析系統(tǒng)的能力。
本文基于框架技術(shù)思想和仿真實驗分析需求,結(jié)合近年來開發(fā)評估分析軟件的經(jīng)驗,抽取陸軍合同戰(zhàn)斗仿真分析中的通用功能,構(gòu)成實驗評估分析框架,通過封裝最基本的一組功能和外部接口,供開發(fā)人員進(jìn)行擴(kuò)展和實例化,滿足快速生成不同評估目的的分析系統(tǒng)。
從應(yīng)用和開發(fā)的視角看,評估分析框架由功能、邏輯和接口三部分組成。
應(yīng)用功能為面向使用者所表現(xiàn)出來的評估功能,主要由靜態(tài)評估顯示、動態(tài)評估顯示、態(tài)勢過程復(fù)現(xiàn)以及評估報告生成等組成,其需要的相關(guān)支持模塊關(guān)系見圖1。

圖1 框架的應(yīng)用功能結(jié)構(gòu)和組成
按照模塊功能獨立、分層的原則,框架的邏輯結(jié)構(gòu)從低層到上層劃分為數(shù)據(jù)資源層、數(shù)據(jù)解析層、模型計算層和展現(xiàn)應(yīng)用層,鄰層之間下層為上層提供支持,各層組成結(jié)構(gòu)見圖2。

圖2 框架的邏輯結(jié)構(gòu)
對外提供的接口主要有圖形顯示、靜態(tài)評估數(shù)據(jù)、動態(tài)評估數(shù)據(jù)、行動過程數(shù)據(jù)、評估模型開發(fā)和報告生成接口,事件管理調(diào)度器用于協(xié)調(diào)內(nèi)部各種數(shù)據(jù)的訪問和解析,其組成結(jié)構(gòu)見圖3。

圖3 框架的接口結(jié)構(gòu)和組成
框架中行動解析器、協(xié)同分析器和跟蹤過濾器位于中間環(huán)節(jié),起著承上啟下的轉(zhuǎn)換連接作用。
行動解析器是以實體編碼、時間、簡令和地點等組合條件為輸入,以具有一定作戰(zhàn)行動軍事含義的結(jié)構(gòu)化數(shù)據(jù)集為輸出的功能模塊,支持行動效果計算和行動過程數(shù)據(jù)展示,其基本結(jié)構(gòu)和組成見圖4。
分類器以實體名稱(編碼)為基本輸入元素,在類別數(shù)據(jù)庫的支持下,通過與指令、時刻等條件組合,對實體的靜態(tài)數(shù)據(jù)和動態(tài)數(shù)據(jù)進(jìn)行分類。實體的靜態(tài)數(shù)據(jù)按照實體的生成時刻、類別、所屬作戰(zhàn)編組、指揮關(guān)系以及支援和保障關(guān)系等進(jìn)行分類。實體的動態(tài)數(shù)據(jù)可按照五個視圖的方式進(jìn)行分類組織。其中,數(shù)據(jù)視圖按照時間軸(空間區(qū)域)給出每個時刻點(或位置點)上人員、裝備和損耗等數(shù)據(jù)。行動視圖按照時間軸(空間區(qū)域)給出每個時刻點(或位置點)上執(zhí)行的行動,也可按照時間區(qū)間(局部區(qū)域)給出相應(yīng)的行動。報告視圖從報文中抽取各種數(shù)據(jù)元素,按照時間軸(空間區(qū)域)給出每個時刻點(或位置點)上的報告數(shù)據(jù)。狀態(tài)視圖反映實體作戰(zhàn)過程中實體的動態(tài)屬性變化,可在時間軸給出狀態(tài)變化的內(nèi)容,也可按照實體的運動軌跡給出發(fā)生變化的屬性。交互視圖反應(yīng)實體在作戰(zhàn)過程中所發(fā)生的己方、敵方以及環(huán)境實體間的交互情況,可按照時間軸和位置軌跡給出交互發(fā)生的行動和效果。關(guān)聯(lián)輸出器的作用是將相對獨立的五個視圖中的數(shù)據(jù)進(jìn)行關(guān)聯(lián)后輸出,如將某實體一個行動的內(nèi)容、執(zhí)行結(jié)果、交互效果和報告數(shù)據(jù)進(jìn)行關(guān)聯(lián)可形成該實體某一方面的完整描述。

圖4 行動解析器的結(jié)構(gòu)和組成
協(xié)同分析器是以作戰(zhàn)階段、協(xié)同內(nèi)容和實體屬性等組合條件為輸入,以具有作戰(zhàn)行動協(xié)同含義的結(jié)構(gòu)化數(shù)據(jù)集為輸出的功能模塊,支持進(jìn)一步的作戰(zhàn)協(xié)同行動效果評估和數(shù)據(jù)效果展示,其基本結(jié)構(gòu)見圖5。其中,分類器的作用是按照不同領(lǐng)域?qū)f(xié)同內(nèi)容具體區(qū)分,在每個領(lǐng)域內(nèi),將該領(lǐng)域相關(guān)實體執(zhí)行模型中的動作、狀態(tài)、報告等數(shù)據(jù)以及接收的指令按照時間軸形成序列化結(jié)構(gòu);時空與目標(biāo)關(guān)聯(lián)解析器通過對這些序列中實體間支援關(guān)系、保障關(guān)系、交戰(zhàn)關(guān)系、相對位置關(guān)系以及搭載關(guān)系進(jìn)行解析,從中析取反映協(xié)同的具體數(shù)據(jù),最后分類輸出相應(yīng)的數(shù)據(jù)集。

圖5 協(xié)同分析器的結(jié)構(gòu)和組成
跟蹤過濾器是按照其他模塊提交的數(shù)據(jù)需求,將行動解析、協(xié)同分析產(chǎn)生的數(shù)據(jù)以及源于方案數(shù)據(jù)庫的設(shè)計數(shù)據(jù)進(jìn)行檢索過濾,以實體為線索將實體的動態(tài)數(shù)據(jù)按照時間變化的順序提供給需求方,其結(jié)構(gòu)見圖6。跟蹤過濾器在工作過程中需要調(diào)用行動解析器和協(xié)同分析器的內(nèi)部接口,分類產(chǎn)生按時間排序的位置、偵察、交戰(zhàn)等類別的數(shù)據(jù)流,再經(jīng)過條件過濾篩選,輸出滿足查詢條件的數(shù)據(jù)流。

圖6 跟蹤過濾器的結(jié)構(gòu)和組成
評估分析框架采用面向?qū)ο蟮能浖O(shè)計方法,首先確定每層對象類的組成,然后建立層之間的交互關(guān)系,其組成結(jié)構(gòu)見圖7。
數(shù)據(jù)資源層主要由實體管理類、實體類、編組類、目標(biāo)類、行動類、任務(wù)類、標(biāo)準(zhǔn)管理類和評估標(biāo)準(zhǔn)類等組成,用于描述實驗方案數(shù)據(jù)、仿真模擬數(shù)據(jù)和方案評估數(shù)據(jù),提供與數(shù)據(jù)解析層、模型計算層和展現(xiàn)應(yīng)用層的各類接口。地形數(shù)據(jù)、氣象數(shù)據(jù)、資料數(shù)據(jù)和其他基礎(chǔ)數(shù)據(jù)的訪問功能由相關(guān)支撐平臺提供。實體管理類EntityManager負(fù)責(zé)實驗各方相關(guān)實體的數(shù)據(jù)管理、評估分析等;實體類Entity描述兵力實體和武器平臺,也是環(huán)境實體的基類;編組類Group描述各作戰(zhàn)編組,由一組實體組成;目標(biāo)類Target描述目標(biāo)的類型、狀態(tài)和毀傷情況等;行動類Action描述實體的作戰(zhàn)行動、保障行動和支援行動;任務(wù)類Mission描述作戰(zhàn)編組和實體的各類任務(wù);評估標(biāo)準(zhǔn)類Standard描述用于評估分析的標(biāo)準(zhǔn)數(shù)據(jù)和參考數(shù)據(jù);標(biāo)準(zhǔn)管理類StandardManager用于實驗評估標(biāo)準(zhǔn)管理。
數(shù)據(jù)解析層主要由行動解析類、協(xié)同分析類和跟蹤過濾類等基類組成,由各實體類、編組類、目標(biāo)類、行動類和任務(wù)類等實現(xiàn),提供與數(shù)據(jù)資源層、模型計算層和展現(xiàn)應(yīng)用層的各類接口。行動解析類ActionAnalysis負(fù)責(zé)對實體的行動執(zhí)行情況進(jìn)行解析,還原行動執(zhí)行的細(xì)節(jié),分析行動的關(guān)聯(lián)影響因素;協(xié)同分析類EntityCooperateEvaluate負(fù)責(zé)對實體間存在的協(xié)同動作進(jìn)行分析,查找動作沖突情況,分析協(xié)同匹配環(huán)節(jié),估算協(xié)同時間,計算協(xié)同效果;跟蹤過濾類Filter負(fù)責(zé)對行動解析,協(xié)同解析產(chǎn)生的數(shù)據(jù)和其他實驗數(shù)據(jù)進(jìn)行過濾跟蹤。
模型計算層主要由評估模型接口、靜態(tài)評估模型工廠、動態(tài)評估模型工廠、各評估模型和評估結(jié)果類等組成。評估模型接口ModelInterface負(fù)責(zé)描述評估模型的各類接口定義;靜態(tài)評估模型工廠PlanEvaModel-Factory負(fù)責(zé)創(chuàng)建靜態(tài)評估模型;動態(tài)評估模型工廠SimEvaModelFactory負(fù)責(zé)創(chuàng)建動態(tài)評估模型;模型類PlanEvaluateModel、SimEvaluateModel是各種評估模型的基類,分別用于靜態(tài)評估和動態(tài)評估,PlanEvaluateModel以實驗方案的決心和任務(wù)數(shù)據(jù)為基礎(chǔ)實現(xiàn)方案的靜態(tài)評估,SimEvaluateModel以模擬過程和行動效果數(shù)據(jù)為基礎(chǔ)進(jìn)行方案的動態(tài)評估;評估結(jié)果類Result負(fù)責(zé)保存評估分析結(jié)果數(shù)據(jù)。
展現(xiàn)應(yīng)用層主要由評估管理、方案管理、評估結(jié)果管理、顯示控制和報告生成等類組成,負(fù)責(zé)與用戶間進(jìn)行交互,展現(xiàn)相關(guān)分析結(jié)果。評估管理類EvaluateManager負(fù)責(zé)總體控制和管理;方案管理類PlanManager負(fù)責(zé)實驗相關(guān)方案數(shù)據(jù)的加載、評估分析的調(diào)度;評估結(jié)果管理類ResultManager負(fù)責(zé)實驗評估分析結(jié)果數(shù)據(jù)的管理;顯示控制類Display負(fù)責(zé)按照需要提供以文、圖、表等形式顯示實驗數(shù)據(jù);報告生成類Report負(fù)責(zé)匯總評估結(jié)果和生成報告文檔。

圖7 評估分析框架的類組成結(jié)構(gòu)圖
框架的實現(xiàn)由評估管理類EvaluateManager進(jìn)行總體控制,可分為數(shù)據(jù)加載、實驗評估和結(jié)果分析三個階段,見圖8。

圖8 評估分析框架的交互實現(xiàn)圖
數(shù)據(jù)加載階段,通過類EvaluateManager、PlanManager和EntityManager的Load()方法加載實驗方案數(shù)據(jù)、實體數(shù)據(jù)、行動數(shù)據(jù)、任務(wù)數(shù)據(jù)和目標(biāo)數(shù)據(jù),保存到方案鏈表PlanList、實體鏈表EntityList、編組鏈表GroupList、任務(wù)鏈表MissionList、行動鏈表ActionList、目標(biāo)鏈表TargetList中。實體鏈表包含實驗方案各實驗方的實體類實例,各實體類包含人員列表、裝備列表、彈藥列表、物資列表和行動列表等,通過Load()等接口與其他模型和顯示等類進(jìn)行交互。
實驗評估階段,通過類EvaluateManager調(diào)度ModelFactory創(chuàng)建評估模型EvaluateModel,由模型類加載所需的評估標(biāo)準(zhǔn)到標(biāo)準(zhǔn)列表StandardList中,并通過Evaluate()方法執(zhí)行評估過程。評估執(zhí)行過程中需要用到實體、目標(biāo)、任務(wù)、行動、協(xié)同分析、行動解析和顯示等類,通過Evaluate()、Filter()等接口進(jìn)行交互合作。
結(jié)果分析階段,通過類EvaluateManager調(diào)度Display的Show()接口,將評估結(jié)果以文、圖、表、態(tài)勢圖等方式展現(xiàn)出來,通過人機(jī)交互接口對評估結(jié)果進(jìn)行數(shù)據(jù)重構(gòu)、原因追溯和統(tǒng)計分析等操作,從時間域、空間域和業(yè)務(wù)域多個方位展示實驗各方實體在戰(zhàn)場空間內(nèi)的交互過程及結(jié)果。
為了滿足各種仿真實驗的不同評估需求,快速構(gòu)建實驗評估分析系統(tǒng),本文基于軟件的構(gòu)件技術(shù)思想,首先從功能、邏輯和接口三個視角描述了評估分析框架的結(jié)構(gòu)組成,重點對構(gòu)成框架關(guān)鍵功能的行動解析器、協(xié)同分析器和跟蹤過濾器等模塊進(jìn)行了結(jié)構(gòu)設(shè)計,最后用面向?qū)ο蟮姆椒ńo出了框架的設(shè)計和實現(xiàn),為評估應(yīng)用開發(fā)設(shè)計了通用基礎(chǔ)部件,有利于實驗評估分析系統(tǒng)開發(fā)效率的提升。