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

圖1 框架的應用功能結構和組成
按照模塊功能獨立、分層的原則,框架的邏輯結構從低層到上層劃分為數據資源層、數據解析層、模型計算層和展現應用層,鄰層之間下層為上層提供支持,各層組成結構見圖2。

圖2 框架的邏輯結構
對外提供的接口主要有圖形顯示、靜態評估數據、動態評估數據、行動過程數據、評估模型開發和報告生成接口,事件管理調度器用于協調內部各種數據的訪問和解析,其組成結構見圖3。

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

圖4 行動解析器的結構和組成
協同分析器是以作戰階段、協同內容和實體屬性等組合條件為輸入,以具有作戰行動協同含義的結構化數據集為輸出的功能模塊,支持進一步的作戰協同行動效果評估和數據效果展示,其基本結構見圖5。其中,分類器的作用是按照不同領域對協同內容具體區分,在每個領域內,將該領域相關實體執行模型中的動作、狀態、報告等數據以及接收的指令按照時間軸形成序列化結構;時空與目標關聯解析器通過對這些序列中實體間支援關系、保障關系、交戰關系、相對位置關系以及搭載關系進行解析,從中析取反映協同的具體數據,最后分類輸出相應的數據集。

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

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

圖7 評估分析框架的類組成結構圖
框架的實現由評估管理類EvaluateManager進行總體控制,可分為數據加載、實驗評估和結果分析三個階段,見圖8。

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