秦媛媛
(中國電子科學研究院,北京 100041)
?
作戰實體的行為建模設計與實現
秦媛媛
(中國電子科學研究院,北京100041)
摘要:作戰模擬訓練系統中用戶戰術戰法和作戰規則多種多樣,這導致作戰實體行為建模過程異常繁瑣,且基于事件驅動的任務執行過程中實體行為模型的可重用性差。針對這些等問題,本文給出了組合構造的行為建模方法,從某型作戰模擬訓練系統中的實際應用效果來看,任務模型的構建十分靈活而且易于操作,模型的重用率高,可以靈活構建訓練內容,降低了系統的設計開發成本。
關鍵詞:作戰實體; 行為建模; 任務模型
1技術背景
在作戰模擬訓練系統設計過程中,作戰實體的建模和實體作戰行為的建模是兩大核心內容。實體的行為表示是否準確、行為模型是否真實,直接影響了訓練的效果。而實際作戰中的作戰行為與軍事背景緊密相關,是靈活多樣、甚至是不可以窮舉的,因此作戰實體行為的建模是作戰模擬訓練中的主要困難之一。
通常行為建模主要由軍事專家和技術開發人員協同完成。首先以具備深厚作戰知識和背景的軍事專家作為主導,分析獲取作戰任務的需求,建立任務知識庫;其次,根據實際情況,選擇一種既方便軍事專家建模又便于技術開發人員理解的建模語言,將任務知識庫中的每一條任務建立作戰任務的抽象概念模型,形成概念模型庫[1]。最后,針對概念模型庫中的每一條作戰任務,技術開發人員將其計算機化,轉化為可以由計算機執行的軟件程序,并且在開發過程中,軍事專家需要核驗軟件程序是否真實的反映了他們最初的意圖,并且需要隨時與技術開發人員進行交互。
依據作戰任務建模通行方案,建立的作戰任務庫大多數是相對固定的,因此訓練存在局限性。可能會由于前期的考慮不周全而導致部分訓練內容沒有被包含到任務庫中,并且當用戶認為當前任務庫中的任務無法滿足訓練要求或者是某些任務的作戰規則發生變化需要改變時,需要先由軍事專家來建立或者修改概念模型,再由技術開發人員編程實現,整個過程十分繁瑣,且難以維護。
而且,仿真實體模型的執行完全依靠仿真引擎的事件驅動完成,自身沒有任何自主執行能力。當一個動作執行結束之后,任務引擎收回裝備實體的控制權,接收該動作執行產生的所有輸出,同時按照當前任務中各動作的邏輯次序關系,為后繼動作收集輸入參數,之后啟動后繼動作并將輸入參數以及控制權交給該后繼動作。在此過程中,仿真實體模型主要依靠仿真引擎給出的事件表,完成任務執行。由于仿真實體模型無法自主執行,各實體模型中沒有給出各動作中的后續動作,現有建模技術無法將不同的狀態、選擇條件串起來完成某個任務,導致已經建立的任務模型無法重用[2]。
本文設計的作戰實體行為模型表示為由動作模型、執行條件和消息模型可視化生成的任務模型,基于事件觸發的高效率任務引擎用于執行實體的行為模型。建立了組合構造的作戰實體行為建模方法,實現了仿真行為資源更細粒度上的重用和更高效的互操作,解決了不同用戶戰術戰法和作戰規則不同導致的實體行為靈活性建模的難題,支持和方便用戶軍事人員根據其作戰規則定制符合自身需要的作戰實體行為模型,提供了所見即所得的實體行為建模能力。
2行為建模技術設計
實體狀態是對作戰實體某一特定時刻的靜態表示,實體行為是實體狀態的變化過程,是狀態轉移的動因和根據。在實體行為的建模中,考慮兩種粒度的行為:動作和任務[3]。
動作(Action):動作定義為任務實施過程中的步驟或工序,是最小的、不可再細分的行為概念;
任務(Task):一項任務定義為執行一個具體的作戰命令的過程,是具有明確作戰意圖的軍事行動,它可由實體的一個或多個動作構成。
編輯形成作戰任務模型主要包括四個階段,其中前三個階段主要完成建立動作庫、消息庫、條件庫、任務庫,具體執行流程見圖1。

圖1 任務引擎執行流程Fig.1 Mission engine implementation flow path
第一階段:在模型服務器建立動作庫、消息庫、條件庫、任務庫4個數據庫,并通過動作導入和編輯模塊、消息導入與編輯模塊、條件編輯模塊分別填寫動作庫、消息庫、條件庫3個庫的數據項。
(1) 動作庫包括序號、名稱、啟動命令、參數4個數據項;
(2) 消息庫包括序號、名稱、內容3個數據項;
(3) 條件庫包括序號、名稱、數據類型、取值范圍5個數據項;
(4) 任務庫包括任務表、動作序列表2個表,任務表包括任務序號、任務名稱、動作序列3個數據項,其中任務表的動作序列為動作序列表的編號。動作序列表包括動作序號、動作名稱、動作類型、動作輸入參數、動作輸出參數、動作處理函數、后繼動作序號6個數據項。動作序列表中的動作類型為條件類型、非條件類型。
由模型建模人員執行動作導入和編輯模塊、消息導入與編輯模塊、條件編輯模塊中填寫動作庫、消息庫、條件庫的記錄,并將動作庫、消息庫、條件庫保存在模型服務器。
第二階段:在模型服務器建立動作的標準化的輸入、輸出接口。
輸入接口包括動作名稱、啟動命令、啟動參數3個數據項;其中啟動命令表示與該動作關聯的命令,當收到該命令時表示需要啟動當前的動作;啟動參數表示該動作在執行過程中需用到的數據,這些數據需要外部輸入,是該動作內部不能自動產生的。
輸出接口包括后繼動作節點啟動參數、公共參數、判斷條件、消息4個數據項。其中啟動參數指該動作執行產生并且可以直接由任務引擎傳遞給其后繼動作使用的一組參數;公共參數指該動作執行產生,需要傳遞給任務引擎使用的一組參數,由任務引擎負責這組參數的保存和使用;判斷條件指該動作執行產生,需要傳遞給任務引擎使用的一組參數,任務引擎根據這組參數判斷決定任務執行的流程;消息指在動作執行過程中根據分析決策得到的需要向上級報告的情報或者是需要向下級下達的命令。
第三階段由模型建模人員在模型服務器平臺,選擇動作和條件構成任務,并填充任務庫。在任務編輯模塊中,用戶從動作庫中選擇特定動作,從條件庫中選擇邏輯判斷條件,并在此工具提供的流程圖的界面中,將動作和條件組織成為一個特定的作戰任務,形成任務庫中的一條記錄,并保存在任務庫中。
第四階段為仿真實體模型執行的過程。包括仿真實體模型從模型服務器中的任務庫中獲取任務,并執行任務。
用戶給仿真實體模型下達命令,仿真實體模型接收命令,從模型服務器中的任務庫查找得出特定任務后,根據特定任務表序號,取出其中的動作序列。根據概念模型服務器中的動作序列表,獲取動作順序執行。具體分為6個步驟,具體執行流程如圖2所示。
第1步:從動作序列表中提取第一個動作,將用戶輸入命令中的參數作為輸入參數,執行動作處理函數后,得出動作輸出參數。運行第2步。

圖2 仿真實體模型執行流程Fig.2 Simulation entity implementation flow path
第2步:從動作序列表中提取第i個(i>1)動作,判斷第i個動作的動作類型是否是條件類型?如是,進入第3步,否則進入第4步。
第3步:根據第i個動作的動作輸出參數、動作輸出參數與后繼動作的映射表,選擇滿足條件的后繼動作,運行第5步。
第4步:選擇第i個動作的所有后繼動作,運行第5步。
第5步:判斷當前選取的后繼動作是否為空值?如是,則結束,否則運行第6步。
第6步:將用戶輸入命令中的參數、第i個動作的輸出參數作為后繼動作的輸入參數,運行后繼動作的動作處理函數,如果后繼動作為多個,則所有后繼動作同時執行對應的動作處理函數,運行第2步。
通過以上階段和步驟,用戶建立了自己所需要的作戰任務模型。如果需要建立新的作戰任務,或者是已有作戰任務等規則等發生了變化,則只要在流程圖上重新進行編輯形成任務模型即可實現。
3應用與實例
以坦克連“沖擊某地面目標”的作戰任務為例,共分4個階段執行。
第一階段:在模型服務器建立行為庫、消息庫、條件庫、任務庫4個數據庫,并填寫完成動作庫、消息庫、條件庫3個庫。
動作庫包括機動、更新狀態、搜索目標、更新速度、開火、遭遇襲擊、報告敵情等動作;消息庫包括發現敵情、道路受阻等消息;條件庫包括是否鎖定目標、是否可還擊、是否遭遇襲擊等條件[4]。
第二階段:在概念模型服務器建立了動作標準化的接口,包括輸入、輸出接口。
在模型服務器建立“搜索目標”動作的輸入、輸出接口。
第三階段:
(1) 用戶從動作庫中選擇動作,在此沖擊作戰任務中,包括更新狀態、機動、搜索目標、更新速度、開火、遭遇襲擊、更改速度、報告敵情等動作。
(2) 在條件庫中選擇邏輯判斷條件,包括“是否鎖定目標”條件。
(3) 組合特定動作和條件,形成沖擊任務的概念模型流程,如圖3所示。
(4)將沖擊任務形成任務庫中的一條記錄,保存在任務庫。
第四階段:
坦克連裝備實體模型收到沖擊命令后,執行沖擊任務,從任務庫中提取對應的“沖擊”任務表以及動作序列表,具體包括6個步驟。

圖3 作戰任務概念模型流程Fig.2 Combat mission concept model flow path
第1步:從執行動作1“更新狀態”開始,根據沖擊命令內容,得到“任務類型、通信電臺狀態”的具體參數。執行動作1的動作處理函數UpdateState,得出輸出參數為更新成功,使模型從待命狀態為沖擊狀態。
第2步:判斷第1個動作為非條件動作。
第3步:根據第1個動作的動作輸出參數、動作輸出參數與后繼動作的映射表,選擇滿足條件的后繼動作為第2、3個動作,即“機動”、“搜索目標”2個動作同時運行,順序執行。
第4步:分2個并行執行子步驟,第1個子步驟執行機動動作的動作處理函數MoveMent后,得出輸出參數。
第5步:執行搜索目標動作的動作處理函數ScanTarget。
第6步:判斷第2個動作為非條件動作,根據第2個動作的后續動作為NULL,結束。
4結束語
基于本方法,用戶可以根據實際的需要來靈
活定制和重用、重構實體所承擔的作戰任務,從而實現了整個作戰任務域的柔性可擴展。本方法在某型作戰模擬訓練系統中的實際應用過程中,任務模型的構建十分靈活而且易于操作,模型的重用率高,可以靈活構建訓練內容,降低了系統的開發成本和訓練成本。
參考文獻:
[1]趙杰,林輝.基于AGENT的防空作戰CGF行為建模研究[J].系統仿真學報,2007,19(10):2321-2323.
ZHAOJie,LINHui.Researchofactionmodelingofair-defensecombatCGFbasedonagent[J].JournalofSystemSimulation,2007,19(10):2321-2323.
[2]徐潤萍,王樹宗,顧健.基于Agent的作戰單元行為規劃方法研究[J].系統工程與電子技術,2005,27(5):844-847.
XURunping,WANGShouzong,GUJian.Agent-basedactionplanningmethodofthefightunit[J].SystemEngineeringandElectronics.2005,27(5):844-847.
[3]馮磊,查亞兵,胡記文,等.CGF中的協同行為建模技術[J].系統仿真學報,2013,25(4):1056-1058.
FENGLei,ZHAYabing,HuJiwen,etal.cooperativebehaviormodelingtechnologyinCGF[J].JournalofSystemSimulation,2013,25(4):1056-1058.
[4]陳彩輝.任務空間概念模型(CMMS)淺析[J].電子科學技術評論,2004(2):57-60.
CHENCaihui.Conceptmodelofmissionmpace[J].ReviewofElectronicsScienceandTechnology,2004(2):57-60.

秦媛媛女(1984-),北京人,碩士,工程師,主要研究方向為系統建模與仿真方面的研究工作。
中圖分類號:TP 391
文獻標識碼:A
Designing and Implementation ofCombat Entity Behavior Modeling
QIN Yuanyuan
(ChinaAcademyofElectronicsandInformationTechnology,Beijing100041,China)
Abstract:There are different varieties of user′s tactics and operational rules in the combat simulate training system,as a result,combat entity behavior modeling was a complex process.Additionally,the reusability of model is poor in the event-driven mission implementation.Aiming at these problems,the association combat entity behavior modeling method was introduced in this paper.From the application effect in a certain combat simulate training system;the behavior modeling construction was flexible and easy to operate.In addition,this method can construct the training content conveniently and can reduce the cost of designing and development of the system.
Key words:combat entity; behavior modeling; mission model