(海軍大連艦艇學(xué)院作戰(zhàn)軟件與仿真研究所 大連 116018)
作戰(zhàn)模型是軍用軟件系統(tǒng)做出作戰(zhàn)決策、指揮作戰(zhàn)行動(dòng)的核心技術(shù)手段,是綜合運(yùn)用所屬指揮對(duì)象遂行作戰(zhàn)任務(wù)的形式化描述,是作戰(zhàn)指揮決策和武器控制的經(jīng)驗(yàn)總結(jié)[1]。如果說作戰(zhàn)軟件系統(tǒng)是作戰(zhàn)指揮信息系統(tǒng)的大腦,那么作戰(zhàn)模型則是作戰(zhàn)軟件系統(tǒng)的靈魂。
仿真模型是仿真系統(tǒng)的核心,它抽象描述了人們所關(guān)注的復(fù)雜的現(xiàn)實(shí)系統(tǒng)或人工系統(tǒng)的結(jié)構(gòu)、靜態(tài)屬性和動(dòng)態(tài)行為特征[2],作戰(zhàn)仿真模型[3~5]描述的是作戰(zhàn)指揮信息系統(tǒng)的結(jié)構(gòu)、靜態(tài)屬性和動(dòng)態(tài)行為特征。
從應(yīng)用場(chǎng)景的可替代性來看,如果仿真系統(tǒng)設(shè)計(jì)得當(dāng),作戰(zhàn)模型應(yīng)該可直接應(yīng)用于面向海上及指揮控制研究的仿真系統(tǒng),因此作戰(zhàn)模型可以是作戰(zhàn)仿真模型的子集。另一方面,作戰(zhàn)模型屬于一類知識(shí)密集型產(chǎn)品,存在功能難以展示和有效性難以確認(rèn)的問題[6],作戰(zhàn)仿真系統(tǒng)作為作戰(zhàn)模型的功能展示和驗(yàn)證的有效工具,對(duì)提高作戰(zhàn)模型的質(zhì)量水平具有重要意義。
模型作為真實(shí)世界中的物體或過程的相關(guān)信息進(jìn)行形式化的結(jié)果,可根據(jù)領(lǐng)域背景、研究對(duì)象、建模過程等多種角度對(duì)模型進(jìn)行分類。如根據(jù)領(lǐng)域劃分,應(yīng)用于軍事領(lǐng)域的模型,可統(tǒng)稱為作戰(zhàn)模型;根據(jù)研究對(duì)象不同,模型可分為實(shí)體模型和過程模型。具體到特定實(shí)體和過程,可予以進(jìn)一步細(xì)分,如針對(duì)海上作戰(zhàn),實(shí)體模型有水面艦艇模型、潛艇模型和航空兵模型[7]等,過程模型通常則有算法模型[8](研究對(duì)象為問題求解的過程)、決策分析模型[8](研究對(duì)象是某一個(gè)決策過程)、業(yè)務(wù)邏輯模型[9](研究對(duì)象為特定組織的指揮信息關(guān)系、實(shí)施方法或操作規(guī)程)和效能評(píng)估模型[10](研究對(duì)象為效能評(píng)估的規(guī)程)等。根據(jù)建模過程階段不同,模型具有不同的形態(tài),對(duì)作戰(zhàn)模型而言,根據(jù)其研制過程各階段的工件特點(diǎn),可分為軍事概念模型[11]、數(shù)學(xué)邏輯模型、軟件工程模型和計(jì)算機(jī)程序模型。
另外,模型還有其他分類方法,如根據(jù)建模方法的不同,可分為排隊(duì)論模型、概率論模型和馬爾科夫模型等;根據(jù)模型與研究對(duì)象的相似程度,可分為白盒模型、黑盒模型和灰盒模型等。
總之,根據(jù)應(yīng)用領(lǐng)域背景、研究對(duì)象、模型描述方法及建模過程階段等不同,不同領(lǐng)域及專業(yè)人員根據(jù)其需要,對(duì)模型的概念及分類都有其自己的認(rèn)識(shí),并無統(tǒng)一的分類標(biāo)準(zhǔn)。在軟件工程領(lǐng)域,Bézivin和Gerbé[12]則將模型定義為以目標(biāo)驅(qū)動(dòng)方式創(chuàng)建系統(tǒng)時(shí)對(duì)系統(tǒng)的抽象,認(rèn)為模型應(yīng)能代表要?jiǎng)?chuàng)建的系統(tǒng)。
面向艦艇作戰(zhàn)軟件產(chǎn)品族研制,我們將作戰(zhàn)模型定位為作戰(zhàn)軟件系統(tǒng)的原理性制品,其形成的作戰(zhàn)模型體系應(yīng)可以代表作戰(zhàn)軟件產(chǎn)品族。
圖1 艦艇作戰(zhàn)軟件產(chǎn)品族的結(jié)構(gòu)示意圖
指揮控制系統(tǒng)實(shí)質(zhì)上是一類用于信息和資源的動(dòng)態(tài)管理和分配的人機(jī)系統(tǒng)的統(tǒng)稱[13],艦艇作戰(zhàn)軟件產(chǎn)品涵蓋聯(lián)合機(jī)動(dòng)編隊(duì)、戰(zhàn)術(shù)群和單艦等指揮層級(jí);各指揮層級(jí)內(nèi)部,因?yàn)樗韫芾淼男畔⒑唾Y源不同,對(duì)應(yīng)著不同的型號(hào);相同型號(hào)的艦艇作戰(zhàn)軟件產(chǎn)品,由于研制時(shí)間的不同,又產(chǎn)生了不同的版本,因此,特定型號(hào)艦艇作戰(zhàn)軟件產(chǎn)品可從指揮層級(jí)、應(yīng)用環(huán)境及版本三個(gè)維度來標(biāo)識(shí)。這些艦艇作戰(zhàn)軟件產(chǎn)品綜合在一起,可統(tǒng)稱為艦艇作戰(zhàn)軟件產(chǎn)品族。
艦艇作戰(zhàn)軟件產(chǎn)品族的結(jié)構(gòu),從功能分布來看,同一指揮層級(jí)不同型號(hào)的艦艇作戰(zhàn)軟件功能之間存在交疊,如對(duì)水面艦艇單艦作戰(zhàn)軟件而言,驅(qū)護(hù)艦和導(dǎo)彈艇都有威脅判斷、對(duì)海導(dǎo)彈攻擊等功能;不同的指揮層級(jí)所對(duì)應(yīng)的艦艇作戰(zhàn)軟件,由于指揮層級(jí)分工靈活,以及作戰(zhàn)使用需求都源于海上兵力運(yùn)用方法,不同指揮層級(jí)的艦艇作戰(zhàn)軟件功能之間也存在交疊。從產(chǎn)品的演化過程來看,在海軍戰(zhàn)法、武器裝備和指揮控制系統(tǒng)體系結(jié)構(gòu)保持相對(duì)平穩(wěn)發(fā)展的階段內(nèi),艦艇作戰(zhàn)軟件的下一代產(chǎn)品通常是以前一代產(chǎn)品為基礎(chǔ)進(jìn)行優(yōu)化和改進(jìn),因此各艦艇作戰(zhàn)軟件的產(chǎn)品功能存在交叉和重疊。
作戰(zhàn)模型是艦艇作戰(zhàn)軟件研制過程中的核心工件,其是作戰(zhàn)指揮流程、決策和武器控制領(lǐng)域知識(shí)的形式化描述,是對(duì)作戰(zhàn)要素、過程及規(guī)律的簡(jiǎn)化反映和抽象描述,對(duì)艦艇作戰(zhàn)軟件產(chǎn)品族而言,作戰(zhàn)模型是相對(duì)穩(wěn)定的一類領(lǐng)域知識(shí),其復(fù)用對(duì)提高艦艇作戰(zhàn)軟件的研制質(zhì)量和效率具有重要意義。
作戰(zhàn)模型的研發(fā)活動(dòng)主要是針對(duì)軍事領(lǐng)域需要解決的業(yè)務(wù)問題進(jìn)行建模和驗(yàn)證,作戰(zhàn)模型在艦艇作戰(zhàn)軟件產(chǎn)品族的復(fù)用活動(dòng),主要發(fā)生在如下幾個(gè)維度。
1)應(yīng)用維度:指揮層級(jí)
這個(gè)維度主要是指艦艇作戰(zhàn)軟件系統(tǒng)按照所物化的作戰(zhàn)指揮業(yè)務(wù)邏輯和所服務(wù)的對(duì)象不同,形成了與海上方向指揮層次相對(duì)應(yīng)的體系,包含單艦作戰(zhàn)軟件、戰(zhàn)術(shù)編隊(duì)作戰(zhàn)軟件和聯(lián)合機(jī)動(dòng)編隊(duì)作戰(zhàn)軟件等系統(tǒng),特定作戰(zhàn)模型可能跨層級(jí)復(fù)用于不同的軟件系統(tǒng)。
2)系統(tǒng)維度:應(yīng)用環(huán)境
艦艇作戰(zhàn)軟件系統(tǒng)的功能、行為和性能受到裝備系統(tǒng)的約束。在海上作戰(zhàn)環(huán)境下,艦艇作為搭載作戰(zhàn)軟件的平臺(tái),可能獨(dú)立使用,也可能與其他艦艇組成編隊(duì)聯(lián)合使用,形成復(fù)雜的分散系統(tǒng),共同構(gòu)成艦艇作戰(zhàn)軟件的應(yīng)用環(huán)境,特定作戰(zhàn)模型可能同時(shí)應(yīng)用于不同艦艇上的軟件系統(tǒng)。
3)時(shí)間維度:版本演化
作為指揮信息系統(tǒng)的有機(jī)組成部分,艦艇作戰(zhàn)軟件的生命周期要短于艦艇平臺(tái)的生命周期,因此特定型號(hào)艦艇作戰(zhàn)軟件在時(shí)間維度上會(huì)有不同版本。在特定艦艇作戰(zhàn)軟件系統(tǒng)改版過程中,部分作戰(zhàn)模型會(huì)得以沿用。
4)功能維度:功能類別
艦艇作戰(zhàn)軟件系統(tǒng)按照其所提供的作戰(zhàn)指揮決策支持功能類別,分為威脅判斷、艦艇機(jī)動(dòng)、對(duì)空防御、對(duì)海攻擊和對(duì)潛搜索等功能部件,不同的功能部件可能會(huì)使用到相同的作戰(zhàn)模型,比如艦艇機(jī)動(dòng)和對(duì)海攻擊這兩個(gè)功能部件就同時(shí)使用到“最短時(shí)間到達(dá)指定位置”這個(gè)解算模型。
5)工程化維度:建模階段
作戰(zhàn)模型的工程化過程中,會(huì)形成軍事概念模型、數(shù)學(xué)邏輯模型、工程模型和計(jì)算機(jī)程序模型(原型構(gòu)件)等工作產(chǎn)品等在上述四個(gè)維度的復(fù)用過程中,可能復(fù)用的并非是最終的原型構(gòu)件,而僅僅是對(duì)數(shù)學(xué)邏輯模型的復(fù)用。例如在上述四個(gè)維度的復(fù)用過程中,在決策支持功能需求相同但軟件運(yùn)行平臺(tái)不同的情況下,復(fù)用的就只是數(shù)學(xué)邏輯模型,需要以數(shù)學(xué)模型為基礎(chǔ),針對(duì)不同的軟件運(yùn)行平臺(tái)做相應(yīng)的工程化建模,形成與運(yùn)行平臺(tái)相匹配的軟件工程模型。
作戰(zhàn)模型是體系作戰(zhàn)能力的生成要素之一,從能打仗、打勝仗的角度出發(fā),作戰(zhàn)模型需要滿足如下通用要求。
1)權(quán)威性要求
作戰(zhàn)模型最終將支撐作戰(zhàn)軟件系統(tǒng)為各級(jí)各類指揮員提供輔助決策支持,會(huì)直接或間接地影響到海上戰(zhàn)斗的結(jié)果,因此要求作戰(zhàn)模型具備權(quán)威性。
2)一致性要求
在處理同一個(gè)問題時(shí),不同層次的作戰(zhàn)軟件所給出的輔助決策結(jié)果在整體上應(yīng)保持一致。不同層次的作戰(zhàn)軟件,在同一態(tài)勢(shì)情況下,考慮要素會(huì)不盡相同,使得輸出結(jié)果不一致,此時(shí)不同層次的作戰(zhàn)軟件應(yīng)具備協(xié)調(diào)機(jī)制,使得指揮員能得到整體上一致的決策結(jié)果。如在特定態(tài)勢(shì)下,有關(guān)水面艦艇該如何轉(zhuǎn)向的問題,指控級(jí)作戰(zhàn)軟件和火控級(jí)作戰(zhàn)軟件可能會(huì)給出不一致的結(jié)果,或者防空和反潛相關(guān)作戰(zhàn)軟件也會(huì)給出不一致的結(jié)果,此時(shí)就需要有相關(guān)的協(xié)調(diào)機(jī)制,保證整體上決策結(jié)果的一致性。
3)體系性要求
作戰(zhàn)模型的研究范圍非常廣泛,而我們的研究經(jīng)費(fèi)和力量都是有限的,當(dāng)單個(gè)作戰(zhàn)模型的研究是整個(gè)模型體系研究需求的一部分時(shí),才可最大化研究資源的利用率。而且當(dāng)單個(gè)作戰(zhàn)模型隸屬于整個(gè)模型體系時(shí),會(huì)有利于模型的集中管控。
4)規(guī)范性要求
從有利于作戰(zhàn)模型的評(píng)審驗(yàn)證、模型研究人員復(fù)用已有模型、模型使用方正確選用、在模型發(fā)布之后的維護(hù)升級(jí)等方面出發(fā),要求作戰(zhàn)模型具備形式上的規(guī)范性。
5)可驗(yàn)證要求
作戰(zhàn)模型是否可用,需要通過相應(yīng)的檢驗(yàn)、驗(yàn)證。這就要求作戰(zhàn)模型的研究人員,同時(shí)提供相應(yīng)的驗(yàn)證方法及工具,以便于模型的驗(yàn)證、管理及使用。
6)適應(yīng)性要求
適應(yīng)性要求體現(xiàn)在對(duì)新的海上作戰(zhàn)理論方法的適應(yīng)性、指揮員在使用模型過程中所提意見建議及新的決策理論與方法的適應(yīng)性。事易時(shí)移,作戰(zhàn)模型也需反映新情況,適時(shí)而變。
1)作戰(zhàn)模型需要有組織地進(jìn)行研究。作戰(zhàn)模型是針對(duì)海上作戰(zhàn)的客觀現(xiàn)實(shí),綜合運(yùn)用決策理論與方法、運(yùn)籌學(xué)等知識(shí),形成特定場(chǎng)景下的輔助決策能力。海戰(zhàn)的復(fù)雜性,決定了反應(yīng)海戰(zhàn)理論方法的作戰(zhàn)模型的復(fù)雜性。由于海戰(zhàn)沒有一定之規(guī),且作戰(zhàn)模型的使用時(shí)機(jī)多樣,模型研究容易出現(xiàn)仁者見仁智者見智的情況,當(dāng)作戰(zhàn)模型實(shí)例化為作戰(zhàn)軟件時(shí),可能會(huì)出現(xiàn)針對(duì)同一個(gè)問題提供的輔助決策結(jié)果存在巨大差異。
2)作戰(zhàn)模型需要基于整體規(guī)劃的條件下有組織地進(jìn)行研究。作戰(zhàn)模型的整體規(guī)劃是生成體系作戰(zhàn)能力的要求,從體系作戰(zhàn)的觀點(diǎn)看,各級(jí)各類作戰(zhàn)軟件系統(tǒng)中的作戰(zhàn)模型都是體系作戰(zhàn)能力的生成要素,體系作戰(zhàn)能力生成過程則表現(xiàn)為諸要素的互動(dòng)過程。這就要求對(duì)作戰(zhàn)模型研究的整體規(guī)劃,否則各研究單位只見樹木不見森林,最終會(huì)影響到體系作戰(zhàn)能力的生成。
模型驅(qū)動(dòng)架構(gòu)(Model Driven Architecture,MDA)將軟件系統(tǒng)模型分為三個(gè)大類[14~15],分別是CIM(Computation Independent Model,計(jì)算無關(guān)模型)、PIM(Platform Independent Model,平臺(tái)無關(guān)模型)和 PSM(Platform Specific Model,平臺(tái)相關(guān)模型)。其中CIM是從計(jì)算無關(guān)的角度來觀察一個(gè)系統(tǒng)得到的視圖,它不包括系統(tǒng)結(jié)構(gòu)的具體細(xì)節(jié),僅考慮系統(tǒng)要解決的業(yè)務(wù)問題。CIM又被稱為領(lǐng)域模型,在建模過程中使用的詞匯來自問題領(lǐng)域?qū)<宜煜さ男g(shù)語,CIM中并不包含軟件建模和實(shí)現(xiàn)技術(shù)相關(guān)的知識(shí)。PIM描述了系統(tǒng)的功能和結(jié)構(gòu),但是并不包含與具體實(shí)現(xiàn)技術(shù)相關(guān)的細(xì)節(jié)。PSM描述了系統(tǒng)的實(shí)現(xiàn)技術(shù)以及所有實(shí)現(xiàn)的細(xì)節(jié),可以被轉(zhuǎn)換為具體的代碼[5]。
基于模型驅(qū)動(dòng)的軟件開發(fā)過程,可以看作是建立模型和模型轉(zhuǎn)換的過程,并且模型轉(zhuǎn)換在這個(gè)過程中起到了主要作用。
圖2MDA開發(fā)過程
與傳統(tǒng)的軟件開發(fā)過程類似,基于模型驅(qū)動(dòng)的軟件開發(fā)過程也可以分為需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試和發(fā)布等階段,并且每個(gè)階段都是一個(gè)迭代的過程。圖2展示了基于MDA的軟件開發(fā)流程。從圖中可以看到,需求階段輸出的是計(jì)算無關(guān)模型CIM。一個(gè)CIM是從計(jì)算無關(guān)視角對(duì)系統(tǒng)進(jìn)行描述的一個(gè)視圖。在高層設(shè)計(jì)階段,通過模型轉(zhuǎn)換將CIM生成PIM。在低層設(shè)計(jì)階段,通過模型轉(zhuǎn)換再將PIM生成PSM。最后通過代碼轉(zhuǎn)換將PSM生成基于特定平臺(tái)的系統(tǒng)實(shí)現(xiàn)代碼,經(jīng)迭代測(cè)試后就可以發(fā)布系統(tǒng)了。
圖3 基于仿真引擎的作戰(zhàn)模型研制過程示意圖
作戰(zhàn)仿真系統(tǒng)作為一類軟件系統(tǒng),也可應(yīng)用模型驅(qū)動(dòng)的軟件研制過程來研制。面向支撐艦艇作戰(zhàn)軟件產(chǎn)品族的需求,可基于特定仿真引擎來研制海戰(zhàn)場(chǎng)作戰(zhàn)仿真系統(tǒng),通過系統(tǒng)研制來牽引仿真模型體系建設(shè),同時(shí)仿真模型體系建設(shè)的部分成果可直接應(yīng)用于作戰(zhàn)軟件產(chǎn)品族的研制。在這一指導(dǎo)思想下,基于仿真引擎的作戰(zhàn)模型研制過程如圖3所示。
從此過程可以看出,基于仿真引擎的作戰(zhàn)模型研制過程和傳統(tǒng)作戰(zhàn)模型的研制過程并無本質(zhì)區(qū)別,這一過程可視為模型驅(qū)動(dòng)的軟件研制過程模型在作戰(zhàn)仿真系統(tǒng)研制中的應(yīng)用。
仿真模型庫的建設(shè)過程和艦艇作戰(zhàn)軟件產(chǎn)品族的研制過程是相關(guān)但不完全相同的技術(shù)過程,這兩個(gè)技術(shù)過程之間存在著以“模型標(biāo)準(zhǔn)化提煉”和“模型復(fù)用”為主要內(nèi)容的信息交換(如圖4所示)過程,當(dāng)然從最終目標(biāo)來看,是仿真模型庫應(yīng)用于艦艇作戰(zhàn)軟件產(chǎn)品族的研制。
圖4 作戰(zhàn)模型庫與作戰(zhàn)軟件產(chǎn)品族之間信息交換示意圖
具體而言,在艦艇作戰(zhàn)軟件研制過程中,可按照作戰(zhàn)使用需求,在作戰(zhàn)模型庫中查找能夠匹配并復(fù)用的作戰(zhàn)模型,將其應(yīng)用于在研的型號(hào)軟件研制任務(wù),這個(gè)過程為“模型復(fù)用”;另一方面,在研制時(shí)有意識(shí)帶著復(fù)用的思維,也就是充分分析軟件設(shè)計(jì)和模型補(bǔ)充研制的成果進(jìn)入作戰(zhàn)模型庫的可行性,盡可能地將其納入到作戰(zhàn)模型庫,這個(gè)過程為“模型標(biāo)準(zhǔn)化提煉”。
當(dāng)然,從保持戰(zhàn)法先進(jìn)性,提高作戰(zhàn)方法研究的理論水平角度來看,對(duì)戰(zhàn)法的研究是獨(dú)立于艦艇型號(hào)軟件研制持續(xù)不間斷的工作。其工作結(jié)果產(chǎn)生的作戰(zhàn)概念模型、數(shù)學(xué)模型和相關(guān)算法也會(huì)不斷加入到作戰(zhàn)模型庫中,它們作為共享知識(shí)供艦艇作戰(zhàn)軟件研制復(fù)用。
作戰(zhàn)仿真模型體系建設(shè)是作戰(zhàn)實(shí)驗(yàn)建設(shè)領(lǐng)域的一項(xiàng)重點(diǎn)工作,是以體系化和規(guī)范化方式開展海戰(zhàn)場(chǎng)仿真模型建設(shè)、提高仿真模型權(quán)威性的一項(xiàng)重要舉措。為提高工程建設(shè)的效益,結(jié)合本單位多年來在艦艇作戰(zhàn)軟件方面的工程實(shí)踐和作戰(zhàn)仿真模型建設(shè)的內(nèi)在規(guī)律,我們?cè)O(shè)計(jì)了將仿真模型體系建設(shè)融入到艦艇作戰(zhàn)軟件產(chǎn)品族研制的建設(shè)思路,后續(xù)將結(jié)合艦艇作戰(zhàn)軟件產(chǎn)品族的研制來開展作戰(zhàn)仿真模型體系的建設(shè)工作,力爭(zhēng)在完成好仿真模型標(biāo)準(zhǔn)規(guī)范和研制規(guī)程的制定和仿真模型庫建設(shè)等工作基礎(chǔ)上,還能有效支撐艦艇作戰(zhàn)軟件產(chǎn)品族的研制。