王欽釗, 鮑君瀟, 郭傲兵, 萬 琳
(1. 陸軍裝甲兵學院兵器與控制系, 北京 100072; 2. 陸軍裝甲兵學院信息通信系, 北京 100072)
隨著新軍事變革的發(fā)展,戰(zhàn)爭形態(tài)正由機械化向信息化轉變,這對裝甲分隊的戰(zhàn)場信息運用能力和指揮控制水平提出了更高的要求。為了充分感知、運用戰(zhàn)場態(tài)勢信息,大幅提升分隊協(xié)同作戰(zhàn)能力,網(wǎng)絡化作戰(zhàn)思想應運而生[1]。其中,坦克網(wǎng)絡化火力打擊自主規(guī)劃系統(tǒng)在理論上可實現(xiàn)裝甲分隊對地面多目標的感知、識別與火力打擊分配,大幅提升裝甲裝備在信息化條件下的火力打擊效能,而網(wǎng)絡化作戰(zhàn)技術與裝備的運用還需通過科學、全面的作戰(zhàn)試驗來檢驗其戰(zhàn)場適用性[2]。但現(xiàn)實因素的制約使得裝甲裝備網(wǎng)絡化作戰(zhàn)試驗難以順利開展,無法滿足作戰(zhàn)試驗對裝甲裝備和作戰(zhàn)環(huán)境的特殊要求。
計算機仿真技術的快速發(fā)展為網(wǎng)絡化作戰(zhàn)試驗提供了新思路。目前,基于RV游戲引擎的裝甲裝備及火控系統(tǒng)模型仿真[3]能較真實地反映實裝性能;仿真實體在虛擬環(huán)境中的碰撞檢測方法也有較成熟的研究成果[4];裝甲分隊模擬訓練系統(tǒng)[5]能提供沉浸感強的“人在環(huán)”裝甲分隊作戰(zhàn)模擬訓練。但要通過計算機仿真實現(xiàn)網(wǎng)絡化作戰(zhàn)試驗的功能,不僅要構建逼真的戰(zhàn)場環(huán)境和裝備模型,還需對分隊各作戰(zhàn)環(huán)節(jié)所涉及的軟件功能和硬件設備進行模擬仿真,最大程度地還原武器裝備的戰(zhàn)場運用情況。
基于此,筆者從作戰(zhàn)仿真試驗系統(tǒng)對指揮控制分系統(tǒng)的功能需求出發(fā)[6],以網(wǎng)絡化作戰(zhàn)技術與裝備為試驗對象,運用面向服務和組件化模型的設計思想,對面向網(wǎng)絡化作戰(zhàn)試驗的指揮控制仿真原型系統(tǒng)進行設計與實現(xiàn),并通過坦克網(wǎng)絡化火力打擊自主規(guī)劃系統(tǒng)的作戰(zhàn)仿真試驗進行驗證。
隨著網(wǎng)絡化作戰(zhàn)指揮技術的發(fā)展[7],為每類應用搭建特定仿真試驗裝備和戰(zhàn)場環(huán)境在效率和成本上均不現(xiàn)實。因此,設計指揮控制仿真原型系統(tǒng)(以下簡稱“指控系統(tǒng)”),對實現(xiàn)裝甲裝備作戰(zhàn)仿真試驗意義重大。針對網(wǎng)絡化作戰(zhàn)對指揮控制功能的需求,指控系統(tǒng)在設計和開發(fā)時應注重以下方面:
1) 注重指揮控制功能的完備性。指控系統(tǒng)應具備作戰(zhàn)指揮與控制業(yè)務的基本功能,如文電處理、業(yè)務計算、信息共享、方案制定、態(tài)勢處理、態(tài)勢顯示、輔助決策等,可滿足裝備作戰(zhàn)運用的基本需求,以保證網(wǎng)絡化作戰(zhàn)試驗的順利實施。
2) 注重系統(tǒng)信息的互通性。指控系統(tǒng)并不獨立于作戰(zhàn)仿真試驗系統(tǒng)運行,需與其保持數(shù)據(jù)通信和仿真進程同步,實時獲得戰(zhàn)場仿真實體的位置、狀態(tài)和作戰(zhàn)行為信息,以支持指控系統(tǒng)各功能的實現(xiàn)。
3) 注重指揮控制功能的可拓展性。為滿足不同作戰(zhàn)試驗的需求,指控系統(tǒng)在輔助決策、態(tài)勢處理等關鍵功能上要具備合理的數(shù)據(jù)交互協(xié)議和通信接口,方便試驗對象(算法或軟件)的接入與通信。
4) 注重指控系統(tǒng)使用效果的真實性。在現(xiàn)代戰(zhàn)場上,敵我雙方均會運用各種手段隱蔽己方的作戰(zhàn)單位或干擾敵方的戰(zhàn)場感知系統(tǒng)。若直接將作戰(zhàn)仿真試驗進程中所有實體信息通過指控系統(tǒng)顯示在態(tài)勢地圖上,并不符合戰(zhàn)場的實際情況,因此,指控系統(tǒng)應具備情報偵測仿真處理功能,可根據(jù)作戰(zhàn)試驗需求對仿真實體信息進行預處理。
5) 注重人機操作的交互性。指控系統(tǒng)在設計與實現(xiàn)時應考慮人機交互性,符合實際裝備的操作習慣,滿足“人在環(huán)”作戰(zhàn)仿真試驗的使用需求。
6) 體現(xiàn)作戰(zhàn)試驗組織的便捷性。指控系統(tǒng)應具備可視化的能力配置功能,可根據(jù)不同的試驗裝備實現(xiàn)不同指揮控制系統(tǒng)的功能配置,進一步增加作戰(zhàn)仿真試驗系統(tǒng)的適用性和靈活性。
在裝備實際使用中,作戰(zhàn)人員主要通過指揮控制軟件實現(xiàn)指控系統(tǒng)的作戰(zhàn)功能。根據(jù)指控系統(tǒng)的需求分析,采用能力配置和功能組件化的軟件驅動方式[8],實現(xiàn)指控系統(tǒng)的功能應用仿真。充分考慮情報數(shù)據(jù)和戰(zhàn)場特殊環(huán)境對指揮控制行為的影響[9],對指控系統(tǒng)的戰(zhàn)場感知能力和戰(zhàn)場環(huán)境適應性進行可視化配置,驅動軟件加載相應的規(guī)則模型。根據(jù)作戰(zhàn)仿真試驗進程的推進,結合“人在環(huán)”仿真節(jié)點操作,周期性地進行仿真實體的信息更新、解算,以及指揮控制行為信息的獲取、處理和交互。
采用具有觸屏功能的一體式計算機作為指控系統(tǒng)的硬件設備,其計算能力、存儲能力和交互能力均能滿足作戰(zhàn)仿真試驗系統(tǒng)和網(wǎng)絡化作戰(zhàn)試驗的人機交互需求。指控系統(tǒng)作為作戰(zhàn)仿真試驗系統(tǒng)的功能子系統(tǒng)[6],其工作流程如圖1所示,具體如下:
1) 仿真試驗前期?;谠囼炄蝿占皩ο筇岢龇抡嫘枨?,完成指控系統(tǒng)的功能拓展、能力配置以及作戰(zhàn)仿真試驗的原始情報設置。
2) 仿真試驗中期。根據(jù)試驗計劃,結合原始情報數(shù)據(jù)動態(tài)地實現(xiàn)多種指揮控制功能仿真,由 “人在環(huán)”指揮控制節(jié)點的操作推進指揮控制仿真運行。
3) 仿真試驗后期。輸出仿真運行產(chǎn)生的指揮控制過程數(shù)據(jù),包括仿真實體裝備的各類信息參數(shù)、典型指揮控制行為的時間節(jié)點、各仿真節(jié)點間的交互信息和態(tài)勢數(shù)據(jù)處理結果等。所有過程數(shù)據(jù)和試驗回放功能均為試驗后期的分析評估提供支持。
在面向服務的理念指導下,將仿真組件技術引入到指控系統(tǒng)軟件開發(fā)中,構建多層軟件架構模型[10]。通過制定統(tǒng)一、通用的組件接口與數(shù)據(jù)通信協(xié)議,用戶可通過組件繼承和組件重組的方式,完成指揮控制相應仿真功能的開發(fā),以滿足不同試驗對象對指控系統(tǒng)功能的仿真需求。指控系統(tǒng)軟件架構如圖2所示,其在邏輯上由基礎數(shù)據(jù)層、組件支撐層、功能應用層和平臺軟件層組成,這在一定程度上可增強指控系統(tǒng)的穩(wěn)定性和延展性,為系統(tǒng)功能拓展提供了良好的基礎和前提條件。
其中:基礎數(shù)據(jù)層可實現(xiàn)仿真實體狀態(tài)數(shù)據(jù)、戰(zhàn)場情報數(shù)據(jù)和系統(tǒng)交互數(shù)據(jù)等資源的加載、管理和維護;組件支撐層基于Unity游戲引擎[11],采用Visual Studio 2010集成環(huán)境以及C#語言完成指控系統(tǒng)的功能組件開發(fā);功能應用層通過不同組件間的繼承和會聚機制,實現(xiàn)多種指揮控制功能的仿真;平臺軟件層包括連、排長車指揮控制軟件和戰(zhàn)斗車輛指揮控制軟件,通過Unity游戲引擎的UGUI設計功能[12],在既定的軟件界面框架中選擇不同的功能支撐組件進行多種應用服務的組合,實現(xiàn)軟件用戶界面中不同功能窗體的指揮控制功能。
通過軟件架構設計,指控系統(tǒng)軟件各層級、各功能之間劃分明確,有利于提高指揮控制仿真平臺數(shù)據(jù)交互穩(wěn)定性、操作靈活性和功能可拓展性。
以指揮控制能力可視化配置界面開發(fā)為例,介紹指控系統(tǒng)軟件用戶界面(User Interface,UI)的開發(fā)。能力可視化配置界面是根據(jù)作戰(zhàn)仿真試驗便捷性的需求,方便試驗人員完成指揮控制功能的預設與調(diào)整而開發(fā)的,主要包括標題文檔、參數(shù)值滑動條、下拉菜單和按鈕等UI控件。在Unity游戲引擎中建立、編輯用戶界面的基本過程如下:
1) 創(chuàng)建畫布Canvas,并在Hierarchy面板中選擇菜單下的UI→Text,創(chuàng)建用戶界面的標題和所有配置屬性的名稱文檔。
2) 根據(jù)界面設計需求在Inspector面板上調(diào)整標題與各屬性名稱的位置。
3) 在各屬性名稱下添加參數(shù)設置與調(diào)整的控件。以目標識別能力的配置選項為例,根據(jù)功能設計,配置選項為“開啟”和“關閉”,在Hierarchy面板選中已建立的“目標識別能力配置”,創(chuàng)建UI→Dropdown。UGUI將自動創(chuàng)建具有下拉和選擇功能的用戶界面控件,并在Inspector面板→Dropdown(Script)窗口→Option中設置選項名稱。
4) 控件選項的事件綁定。若在“目標識別能力配置”中選擇“開啟”選項,則會驅動軟件后臺的相應事件方法,該方法的具體功能需要開發(fā)者編寫腳本實現(xiàn)。腳本編寫完成后儲存在資源庫(Asset)中,將事件方法從資源庫拖拽至Dropdown控件的None(Sprite)中,即可完成控件選項的事件綁定工作。
指控系統(tǒng)中的能力可視化配置功能類似于想定編輯,是結合網(wǎng)絡化作戰(zhàn)在情報系統(tǒng)和裝備傳感器網(wǎng)絡的使用需求,將復雜的戰(zhàn)場感知、情報獲取過程和環(huán)境影響因素簡化為戰(zhàn)場情報信息處理結果。通過指揮控制能力配置,構建更為逼真的指控系統(tǒng)虛擬使用環(huán)境。完成編輯的指揮控制能力可視化配置界面如圖3所示。
根據(jù)面向服務及組件化的軟件架構設計,指控系統(tǒng)軟件采用主控制器控制軟件運行和功能實現(xiàn),即UI由一個主控制器Main Controller管理軟件運行的主要邏輯,引用并控制其他功能模塊組件。軟件開發(fā)邏輯如圖4所示。
由于軟件使用的交互性,UI中的部分控件一般會處于閑置狀態(tài),只有在“人在環(huán)”節(jié)點操作時才會觸發(fā)相應的功能。因此,在軟件開發(fā)的主程序中加入?yún)f(xié)程類函數(shù)Coroutine,即表明軟件程序在何處暫停等待交互,收到交互信息后在下一幀繼續(xù)執(zhí)行。而對于同一次作戰(zhàn)試驗中包含多次人機交互事件,軟件運行和人機交互是一個迭代的過程,因此運用迭代器IEnumerator作為協(xié)程函數(shù)的返回值,可針對人機操作將軟件運行方向指向不同的功能程序入口。主控制器協(xié)程類函數(shù)的實現(xiàn)方法如下:
public class MainController:MonoBehaviour
{ private void Awake()
{Application.runInBackground = true;}
∥規(guī)定軟件在后臺時也保持運行狀態(tài)
private IEnumerator Start()
∥定義Coroutine類函數(shù),返回值為迭代器
{while (!ConfigManager.instance.isDone)
∥判斷是否完成仿真實體信息的讀取與配置,并暫停等待用戶交互操作的輸入
yield return null;}
∥接收用戶操作將軟件運行方向指向特定功能程序
}
根據(jù)指控系統(tǒng)的設計思路,指控系統(tǒng)軟件運行時將作戰(zhàn)仿真試驗系統(tǒng)的運行數(shù)據(jù)存儲于軟件數(shù)據(jù)庫中,供各功能模塊使用。因此,指控系統(tǒng)與作戰(zhàn)仿真試驗系統(tǒng)不進行數(shù)據(jù)交互,只是軟件內(nèi)部的各功能模塊需要進行數(shù)據(jù)通信與交互,實現(xiàn)指揮控制的相應功能,指控系統(tǒng)軟件數(shù)據(jù)流如圖5所示。
指控系統(tǒng)軟件采用控制選項少、數(shù)據(jù)傳輸延遲小、傳輸效率高的用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP)作為軟件內(nèi)部網(wǎng)絡傳輸層協(xié)議。根據(jù)軟件架構的設計,運用C#語言結合Unity引擎自帶的API函數(shù)完成異步UDP客戶端通信組件(AsynUdpClient)的開發(fā),主要功能函數(shù)如下:
Awake():組件初始化函數(shù),在軟件運行時自動調(diào)用。
OnDestroy():消息響應函數(shù),當通信端口被銷毀時調(diào)用。
FixedUpdate():固定時間刷新數(shù)據(jù)函數(shù),并不受軟件幀率(fps)的影響。
SendData():數(shù)據(jù)發(fā)送函數(shù)。
RecvCallback():接收數(shù)據(jù)異步回調(diào)函數(shù)。
通信管理器是指控系統(tǒng)軟件各功能模塊通信網(wǎng)絡的重要部分,數(shù)據(jù)通信過程非常復雜,需要設計相應功能程序來進行控制,以提高數(shù)據(jù)通信的標準化和自動化程度。根據(jù)軟件功能的通信需求,通信管理器腳本程序的定義元素如下:
AsynUdpClient udpClient:通信傳輸協(xié)議。
separatorChar:數(shù)據(jù)分隔符字符,程序默認使用“,”。
codecName:編碼方式,程序先嘗試獲取通信軟件間的編碼方式,若失敗,則采用UTF8的方式編碼。
IPEndPoint lastRecvEP:數(shù)據(jù)接收網(wǎng)絡端點,由IP地址和端口號組成。
指控系統(tǒng)的軟件功能包括態(tài)勢顯示、態(tài)勢處理、輔助決策和態(tài)勢回放等,在此以態(tài)勢顯示功能為例,介紹軟件功能開發(fā)和腳本編輯過程。
態(tài)勢顯示主要包括目標的類型、狀態(tài)、陣營、位置以及威脅度、打擊決策和人機交互等基本內(nèi)容。針對陸地作戰(zhàn),二維態(tài)勢的武器裝備類型及對應的軍標如表1所示,紅、黃、綠3種軍標顏色分別對應摧毀(0)、損傷(0~1)、完好(1)3種目標狀態(tài)。
表1 武器裝備類型及軍標顯示
同時,為了軟件開發(fā)的規(guī)范性和功能的可拓展性,將指控系統(tǒng)中作戰(zhàn)仿真實體信息數(shù)據(jù)進行統(tǒng)一,“按照<編號,方位x坐標,方位y坐標,方位z坐標,武器攻擊角,陣營,裝備類型,目標狀態(tài)>的數(shù)據(jù)格式記錄與傳輸”,數(shù)據(jù)類型之間以逗號分隔,便于各功能的編碼與解碼。如:態(tài)勢顯示功能在某時刻獲取到某仿真實體信息數(shù)據(jù)為
態(tài)勢顯示過程中,需要將數(shù)據(jù)庫獲得的包含狀態(tài)、陣營等仿真實體信息的字符串數(shù)據(jù)轉換為態(tài)勢顯示功能可運用的狀態(tài)、陣營信息,“目標狀態(tài)”信息轉換的腳本程序如下:
StateToStr(float state)
∥將字符串數(shù)據(jù)轉為目標狀態(tài)信息
{ string stateStr;
int cpR = FloatComparer.Compare(state,0f);
∥判斷狀態(tài)對應字符
if(cpR < 0)
stateStr=“?”;
∥未知狀態(tài)
else if (cpR==0)
stateStr=“損毀”;
∥“損毀”狀態(tài)
else if (FloatComparer.Compare(state,1f)==.1
∥“損傷”狀態(tài)
stateStr=string.Format(“損傷 {0:0.0%}”,1f.state);∥判斷損毀程度
else
stateStr=“完好”;
∥“完好”狀態(tài)
return stateStr;
}
StrToState(string stateStr)
∥將目標狀態(tài)信息轉為字符數(shù)據(jù)
{
float state;
switch(stateStr)
{
case“完好”:state = 1f;break;
case“損傷”:state = 0.5f;break;
case“損毀”:state = 0f;break;
default:state =.1f;break;
}
return state;
}
為驗證指控系統(tǒng)在面向網(wǎng)絡化作戰(zhàn)仿真試驗的實用性與有效性,以坦克網(wǎng)絡化火力打擊自主規(guī)劃系統(tǒng)中目標威脅評估和火力分配算法(以下簡稱“網(wǎng)絡化算法”)為試驗對象,進行單項技術指標作戰(zhàn)仿真試驗,目的是通過靜態(tài)的仿真試驗,檢驗網(wǎng)絡化算法在裝甲分隊作戰(zhàn)運用中的有效性,暴露技術設計缺陷,為下一步研究提供依據(jù)。
根據(jù)技術研究任務書要求,網(wǎng)絡化算法的技術指標包括目標威脅評估置信度、裝甲分隊火力分配解算時間和裝甲分隊最大規(guī)劃目標數(shù)量。由此制定的網(wǎng)絡化算法作戰(zhàn)仿真試驗想定設置如表2所示。
表2 網(wǎng)絡化算法作戰(zhàn)仿真試驗想定設置
根據(jù)試驗想定設置,完成想定文件編輯,明確試驗記錄數(shù)據(jù),按試驗需求分組實施作戰(zhàn)仿真試驗。某次作戰(zhàn)仿真試驗的想定初始態(tài)勢如圖6所示,指控系統(tǒng)軟件操作界面及裝甲分隊火力分配結果如圖7所示,獲得的作戰(zhàn)仿真試驗數(shù)據(jù)如表3所示。
技術指標單項試驗是將仿真試驗獲取的技術指標參數(shù)與技術任務書進行比較,考查網(wǎng)絡化算法是否達到任務書要求。將表3的試驗數(shù)據(jù)進行組織、計算和分析,得到網(wǎng)絡化算法作戰(zhàn)仿真試驗單項技術指標試驗數(shù)據(jù)如表4所示。
根據(jù)網(wǎng)絡化算法的作戰(zhàn)仿真試驗及數(shù)據(jù)分析,可得到如下結論:
1) 在理想情況下,坦克網(wǎng)絡化火力打擊自主規(guī)劃系統(tǒng)中目標威脅評估和火力分配算法的作戰(zhàn)運用指標基本滿足技術任務計劃書指標要求,但還需進一步研究和改進;
技術指標試驗組別試驗項目AB目標威脅評估置信度/%195852909039585裝甲分隊火力分配解算時間/s10.513 30.565 620.503 80.546 730.509 70.579 8裝甲分隊最大規(guī)劃目標數(shù)量/輛11529292631134
表4 單項技術指標試驗數(shù)據(jù)
2) 目標威脅評估置信度隨目標數(shù)量的增大而降低,說明威脅評估算法容量還需進一步擴大,以適用于大規(guī)模作戰(zhàn);
3) 裝甲分隊火力分配解算時間隨目標數(shù)量的增大而增加,試驗結果符合技術預期,但解算時間還受計算機性能的影響,在裝備性能配置時要綜合考慮該因素;
4) 網(wǎng)絡化算法并不會因武器目標數(shù)量超出指標需求而無法完成解算,但目標數(shù)量對解算結果可靠性和時效性影響明顯,在技術改進時需重點關注。
針對網(wǎng)絡化作戰(zhàn)技術和裝備缺乏試驗平臺的現(xiàn)狀,結合裝甲分隊作戰(zhàn)仿真試驗系統(tǒng)對指揮控制分系統(tǒng)的功能需求,設計實現(xiàn)了面向網(wǎng)絡化作戰(zhàn)試驗的指揮控制仿真原型系統(tǒng)。系統(tǒng)軟件采用能力配置和組件化的驅動模式,在保證裝甲裝備指揮控制功能完備性的同時,兼顧了支持網(wǎng)絡化作戰(zhàn)運用和指揮控制功能可拓展的實際需求。運行作戰(zhàn)仿真試驗系統(tǒng)并進行多組多因素的作戰(zhàn)仿真試驗,結果表明:指揮控制仿真原型系統(tǒng)可為裝甲分隊作戰(zhàn)仿真試驗系統(tǒng)提供指揮控制功能的仿真實踐方法,為開展信息化條件下的全要素作戰(zhàn)仿真試驗提供了有力支持。