孫海文,謝曉方,孫 濤,王誠(chéng)成
(海軍航空大學(xué),山東 煙臺(tái) 264000)
在艦艇防空作戰(zhàn)中,隨著各種高新技術(shù)在兵器研制中的廣泛應(yīng)用,空中目標(biāo)的技術(shù)性能和空襲戰(zhàn)術(shù)發(fā)生了很大變化。在技術(shù)性能方面,目標(biāo)的速度、射程、機(jī)動(dòng)能力、抗干擾能力以及隱身能力都得到了較大提升;在空襲戰(zhàn)術(shù)方面,目標(biāo)更多地實(shí)施低空、超低空突防,實(shí)施飽和攻擊以及防區(qū)外攻擊[1]。這就使得傳統(tǒng)單型號(hào)單平臺(tái)艦空武器控制系統(tǒng)開始轉(zhuǎn)向多型號(hào)多平臺(tái)艦空武器綜合控制系統(tǒng)。此外,未來(lái)防空作戰(zhàn)中,一方面防空系統(tǒng)要面對(duì)復(fù)雜多變的空襲環(huán)境,來(lái)自各傳感器的信息量將非常龐大[2];另一方面要控制多種型號(hào)武器的火力單元,平臺(tái)數(shù)量大。傳統(tǒng)的人工判斷分析已無(wú)法滿足防空作戰(zhàn)的實(shí)時(shí)性和適應(yīng)性的需求。隨著計(jì)算機(jī)和人工智能技術(shù)的發(fā)展,基于知識(shí)的智能系統(tǒng)已成為武器控制系統(tǒng)研究的熱點(diǎn)之一[3-6]。
為了提高艦艇防空系統(tǒng)的實(shí)時(shí)性和適應(yīng)能力,提出了一種基于知識(shí)的艦空武器智能綜合控制系統(tǒng)的設(shè)計(jì)方法。該方法將目標(biāo)信息、裝備信息以及作戰(zhàn)原則以特定的知識(shí)方式存放在不同的知識(shí)庫(kù)中,變動(dòng)更新數(shù)據(jù)只需將信息以特定的知識(shí)表示格式存儲(chǔ)到知識(shí)庫(kù)中即可,從而使得整個(gè)作戰(zhàn)系統(tǒng)具有較強(qiáng)的擴(kuò)展性,適應(yīng)性強(qiáng)。知識(shí)庫(kù)的構(gòu)建是整個(gè)系統(tǒng)的設(shè)計(jì)核心之一,針對(duì)該問(wèn)題,本文全局采用Petri網(wǎng)[7]來(lái)設(shè)計(jì)系統(tǒng)的目標(biāo)任務(wù)處理流程;局部采用面向?qū)ο蟆⑦壿嬕约爱a(chǎn)生式規(guī)則來(lái)進(jìn)行混合知識(shí)表示;最后,通過(guò)Visual Prolog智能語(yǔ)言構(gòu)建艦空武器智能綜合控制系統(tǒng)的知識(shí)庫(kù),驗(yàn)證了該設(shè)計(jì)思想的可行性和表示方法的有效性。
艦空武器智能綜合控制系統(tǒng)能夠?qū)⒏鱾鞲衅鳙@得有效信息存放到事實(shí)庫(kù)中,并根據(jù)規(guī)則庫(kù)和推理機(jī),確定目標(biāo)任務(wù)的執(zhí)行序列,適時(shí)調(diào)用各功能模塊,完成威脅評(píng)估、火力分配以及重分配等功能。該系統(tǒng)可以綜合控制多型號(hào)多平臺(tái)武器系統(tǒng),同時(shí)對(duì)連續(xù)多批次目標(biāo)進(jìn)行持續(xù)性梯次攔截。具體功能如下:
1)系統(tǒng)具有良好的人機(jī)交互界面,根據(jù)作戰(zhàn)需要輸入相關(guān)信息,并能通過(guò)圖形、數(shù)據(jù)、表格形式顯示目標(biāo)、各火力資源以及作戰(zhàn)過(guò)程中主要狀態(tài)和參數(shù)信息。
2)具有知識(shí)庫(kù)管理功能,可以根據(jù)需要維護(hù)和完善知識(shí)庫(kù)。使得系統(tǒng)具有較強(qiáng)的作戰(zhàn)靈活性,可根據(jù)不同的作戰(zhàn)任務(wù)和不同的艦空導(dǎo)彈火力資源配置,快速調(diào)整完善知識(shí)庫(kù)的數(shù)據(jù)信息。
3)預(yù)留網(wǎng)絡(luò)串口,可實(shí)時(shí)接收各傳感器以及上級(jí)傳入的數(shù)據(jù)信息,并從中獲取有用的知識(shí)信息,對(duì)知識(shí)庫(kù)進(jìn)行更新。
4)具有模型庫(kù)和方法庫(kù),根據(jù)推理規(guī)則,在不同情況下,選擇調(diào)用不同的模型和相應(yīng)的求解方法進(jìn)行行動(dòng),使得系統(tǒng)具備綜合控制多型艦空導(dǎo)彈武器系統(tǒng)對(duì)連續(xù)多批次空襲目標(biāo)進(jìn)行梯次攔截的能力。
Petri網(wǎng)[8]是一種可用圖形表示的組合模型,其不僅可以用于靜態(tài)結(jié)構(gòu)分析,也可用于動(dòng)態(tài)行為分析。隨著Petri網(wǎng)理論及應(yīng)用的不斷擴(kuò)展,近年來(lái),Petri網(wǎng)在知識(shí)表示及推理領(lǐng)域被廣泛應(yīng)用。本文結(jié)合艦空武器智能綜合控制系統(tǒng)的功能特點(diǎn),利用Petri網(wǎng)構(gòu)建了系統(tǒng)任務(wù)處理流程。如圖1所示。

圖1 基于Petri網(wǎng)的目標(biāo)任務(wù)處理流程
圖1中的庫(kù)所及變遷含義如表1所示。

表1 庫(kù)所及變遷的含義
系統(tǒng)任務(wù)處理的具體流程如下:
1)發(fā)現(xiàn)并跟蹤目標(biāo)
輸入:來(lái)襲目標(biāo)狀態(tài) (雷達(dá)探測(cè)并跟蹤)
輸出:目標(biāo)類型、位置信息、運(yùn)動(dòng)特征、目標(biāo)攻擊意圖以及目標(biāo)狀態(tài)轉(zhuǎn)到已被發(fā)現(xiàn)并跟蹤的目標(biāo)狀態(tài)。
2)威脅判斷
輸入:目標(biāo)類型特征(目標(biāo)類型、干擾能力量化值)、位置信息(目標(biāo)高度、目標(biāo)方位角、目標(biāo)距離)、運(yùn)動(dòng)特征(目標(biāo)徑向速度、航路捷徑)、目標(biāo)攻擊意圖量化值等。
輸出:各目標(biāo)的威脅值,并且目標(biāo)狀態(tài)轉(zhuǎn)到等待被分配火力通道的目標(biāo)狀態(tài)。
3)火力分配方案制定
輸入:目標(biāo)的威脅值、目標(biāo)的類型、目標(biāo)的位置信息、目標(biāo)的運(yùn)動(dòng)特征、火力資源的狀態(tài)信息、戰(zhàn)技指標(biāo)、作戰(zhàn)空域信息。
輸出:目標(biāo)狀態(tài)轉(zhuǎn)到已分得火力通道的目標(biāo)狀態(tài)和非分得火力通道的目標(biāo)狀態(tài)(即生成攔截方案),將未分得火力通道的目標(biāo)轉(zhuǎn)轉(zhuǎn)到已發(fā)現(xiàn)并跟蹤的目標(biāo)狀態(tài)。
4)分配方案開始執(zhí)行
輸入:當(dāng)前時(shí)間(到達(dá)方案執(zhí)行時(shí)刻)
輸出:目標(biāo)狀態(tài)轉(zhuǎn)到正在被攔截的目標(biāo)狀態(tài)。
5)攔截評(píng)估
輸入:當(dāng)前時(shí)間(到達(dá)目標(biāo)與導(dǎo)彈遭遇的時(shí)刻)。
輸出:目標(biāo)是否被攔截成功,若成功攔截,則該目標(biāo)任務(wù)結(jié)束;否則轉(zhuǎn)到待再次攔截目標(biāo)狀態(tài)。
6)同一火力通道進(jìn)行二次攔截
輸入:目標(biāo)位置信息、該火力通道作戰(zhàn)空域信息(目標(biāo)處于該火力打擊范圍內(nèi))。
輸出:目標(biāo)狀態(tài)轉(zhuǎn)到正在被攔截的目標(biāo)狀態(tài)。
7)更換火力通道進(jìn)行二次攔截
輸入:目標(biāo)位置信息、該火力通道作戰(zhàn)空域信息(目標(biāo)不處于該火力打擊范圍內(nèi))。
輸出:目標(biāo)狀態(tài)轉(zhuǎn)到已發(fā)現(xiàn)并跟蹤的目標(biāo)狀態(tài)。
根據(jù)7個(gè)任務(wù)處理過(guò)程和6個(gè)目標(biāo)任務(wù)狀態(tài)來(lái)進(jìn)行知識(shí)的獲取與表示,進(jìn)而構(gòu)建知識(shí)庫(kù)。
艦空武器智能綜合控制系統(tǒng)主要包括知識(shí)庫(kù)和推理機(jī)兩部分。其中,知識(shí)庫(kù)的構(gòu)建是整個(gè)系統(tǒng)的核心部分,其構(gòu)建的完備程度直接影響到系統(tǒng)的智能決策能力。知識(shí)庫(kù)用于存放兩種知識(shí),一種是陳述性知識(shí)包括目標(biāo)事實(shí)庫(kù)、艦艇事實(shí)庫(kù)、火力資源事實(shí)庫(kù)以及輔助資源事實(shí)庫(kù);另一種是過(guò)程性知識(shí)包括在線任務(wù)規(guī)劃規(guī)則庫(kù)、威脅評(píng)估規(guī)則庫(kù)以及火力分配規(guī)則庫(kù)。知識(shí)庫(kù)的構(gòu)建需4個(gè)層次,知識(shí)獲取;獲取知識(shí)后,通過(guò)知識(shí)表示單位進(jìn)行知識(shí)預(yù)處理;然后,一系列最小知識(shí)單位構(gòu)成知識(shí)單元;最后,一系列知識(shí)單元組合構(gòu)成知識(shí)庫(kù)。層次結(jié)構(gòu)關(guān)系如圖2所示。

圖2 知識(shí)庫(kù)構(gòu)建層次圖
知識(shí)獲取是構(gòu)建知識(shí)庫(kù)的關(guān)鍵性步驟[9]。其通過(guò)特定方式從知識(shí)源中提取出有用的知識(shí)和經(jīng)驗(yàn),并將知識(shí)和經(jīng)驗(yàn)通過(guò)編碼轉(zhuǎn)化為知識(shí)庫(kù)中的知識(shí)結(jié)構(gòu)存儲(chǔ)起來(lái)。知識(shí)主要從以下3個(gè)方面獲取:
1)獲取各傳感器探測(cè)到的信息,并經(jīng)過(guò)數(shù)據(jù)處理,提取出有用的知識(shí),將其轉(zhuǎn)化為知識(shí)庫(kù)信息。
2)根據(jù)文檔、書籍以及數(shù)據(jù)庫(kù)記錄等具體規(guī)則規(guī)范,人工提取有用信息,轉(zhuǎn)化為知識(shí)庫(kù)信息。
3)從專家知識(shí)及經(jīng)驗(yàn)中提取有用信息,轉(zhuǎn)化為知識(shí)庫(kù)信息。
獲取知識(shí)后,提取有用的知識(shí),將其用知識(shí)單位進(jìn)行表示。知識(shí)單位是指表示知識(shí)的最小單位,這其中包括:值、域、屬性、謂詞、關(guān)系、公式。
1)值:具體數(shù)值或可信度。
2)域:表示值的范圍或基本數(shù)據(jù)類型。
3)屬性:用于描述對(duì)象的某一特征。
4)謂詞:用于定義對(duì)象間的邏輯關(guān)系或是動(dòng)作行為。
5)關(guān)系:用于表示各屬性值的二元關(guān)系,包括:=,<,>等。
6)公式:數(shù)學(xué)模型。
將各知識(shí)單位通過(guò)一定的表達(dá)方式組合起來(lái)就構(gòu)成了知識(shí)單元。常用的表達(dá)方式有框架[10]、語(yǔ)義網(wǎng)絡(luò)[11]、產(chǎn)生式規(guī)則[12]、邏輯[13,14]以及面向?qū)ο骩15]等。這些表示方法都存在各自的優(yōu)缺點(diǎn),為了更好地表示復(fù)雜武器控制系統(tǒng)的知識(shí),本文提出了一種將面向?qū)ο蟆⑦壿嬕约爱a(chǎn)生式規(guī)則相結(jié)合的混合知識(shí)表示方法。
1)面向?qū)ο?類和對(duì)象)。對(duì)象是客觀事物的抽象,類是對(duì)象的抽象。類是一種抽象的數(shù)據(jù)類型。對(duì)象是類的實(shí)體,類是對(duì)象的模板。一個(gè)類可以有多個(gè)子類,但一個(gè)類最多有一個(gè)父類。子類可以繼承父類所有的屬性,并可保留自己獨(dú)有的屬性。不同類之間通過(guò)屬性之間的關(guān)系進(jìn)行聯(lián)系,從而構(gòu)成了一個(gè)類知識(shí)網(wǎng),充分表達(dá)對(duì)象之間的關(guān)系。特點(diǎn):描述事物的內(nèi)部結(jié)構(gòu)以及事物間的類屬關(guān)系。具體結(jié)構(gòu)如下。
對(duì)象標(biāo)識(shí)符:
類屬:
屬性1:子屬性1:
子屬性2:
屬性2:…
2)產(chǎn)生式規(guī)則。其結(jié)構(gòu)為if 前提條件,then結(jié)果、結(jié)論或執(zhí)行動(dòng)作。每個(gè)前提條件和結(jié)論都是由一個(gè)或多個(gè)邏輯子句構(gòu)成,各邏輯子句由and/or進(jìn)行連接。
具體結(jié)構(gòu)如下。
if子句1 or/and 子句2,then子句3 or/and 子句4。
3) 邏輯子句是一個(gè)邏輯句,其定義對(duì)象的動(dòng)作、對(duì)象屬性與值之間的關(guān)系、對(duì)象屬性與屬性之間的關(guān)系等。
針對(duì)某一領(lǐng)域的問(wèn)題,將求解該問(wèn)題的所有知識(shí)按照一定的結(jié)構(gòu)形式組織起來(lái)形成知識(shí)庫(kù)。其中包括事實(shí)庫(kù)和規(guī)則庫(kù)。陳述性知識(shí)通過(guò)面向?qū)ο髽?gòu)建事實(shí)庫(kù);過(guò)程性知識(shí)通過(guò)產(chǎn)生式規(guī)則以及邏輯子句構(gòu)建規(guī)則庫(kù)。
Visual Prolog[16]是一種可視化邏輯程序設(shè)計(jì)語(yǔ)言。它不僅可以用于邏輯程序設(shè)計(jì),而且還支持模塊化和面向?qū)ο蟪绦蛟O(shè)計(jì)。它是一個(gè)融合邏輯、函數(shù)、過(guò)程和面向?qū)ο蟮瘸绦蛟O(shè)計(jì)為一體的綜合型程序設(shè)計(jì)語(yǔ)言。創(chuàng)建一個(gè)工程來(lái)產(chǎn)生一個(gè)類的對(duì)象。其中,有三個(gè)文件
1)域段(domains) 域是用于描述變量值得取值范圍或是謂詞的類型的。常見的域有整數(shù)域、實(shí)數(shù)域、類型名、復(fù)合域、表域、謂詞域等,域的聲明有很多,適用于代碼的各種應(yīng)用。
2)常數(shù)段(constants) 常數(shù)是一個(gè)程序中始終取相同的變量,主要使程序容易理解。常數(shù)段用于定義程序中常用的數(shù)值段,可以對(duì)當(dāng)前范圍聲明一個(gè)或多個(gè)常數(shù)。
3)事實(shí)段(facts) 事實(shí)用于描述對(duì)象或類的一個(gè)或多個(gè)屬性值。事實(shí)有兩類,一類是事實(shí)變量,用于表示單個(gè)屬性值;另一類是事實(shí)函子,用于表示多個(gè)屬性值。Prolog中的事實(shí)存放在數(shù)據(jù)庫(kù)中,每個(gè)事實(shí)都擁有自己的數(shù)據(jù)庫(kù)。
事實(shí)段用來(lái)聲明存放在當(dāng)前范圍內(nèi)一個(gè)事實(shí)數(shù)據(jù)庫(kù)中的事實(shí)。事實(shí)數(shù)據(jù)庫(kù)既可存在于類的級(jí)別上也可存在于對(duì)象的級(jí)別上。若是對(duì)象級(jí)別的事實(shí),則需調(diào)用對(duì)象謂詞進(jìn)行事實(shí)的添加、更改或刪除;若是類級(jí)別的事實(shí),則需調(diào)用類謂詞進(jìn)行事實(shí)的添加、更改或刪除。
4)謂詞段(predicates) 謂詞段用于在當(dāng)前范圍中聲明一組對(duì)象或類的謂詞,謂詞是由事實(shí)和規(guī)則定義的。Visual Prolog中有很多內(nèi)建謂詞,其不需要在謂詞段進(jìn)行聲明,而要在子句段中定義新的謂詞,必須要在謂詞段進(jìn)行聲明,否則該謂詞不能被識(shí)別執(zhí)行。
5)子句段(clauses) 子句段顧名思義包含一系列子句。一個(gè)程序中可包含多個(gè)子句段,子句段用于定義謂詞的實(shí)現(xiàn)和初始化事實(shí)。一個(gè)子句段可以包含若干謂詞或事實(shí),而一個(gè)謂詞或事實(shí)的所有子句必須在同一個(gè)子句段中集中起來(lái),不能插入別的謂詞或事實(shí)子句。一個(gè)謂詞是由一個(gè)或多個(gè)子句定義的,每個(gè)子句按順序執(zhí)行,直到執(zhí)行完當(dāng)前范圍的所有子句。
6)目標(biāo)段(goal) 目標(biāo)段定義了Visual Prolog中程序的起始入口。Visual Prolog的程序是需要編譯的,之后執(zhí)行的程序都是經(jīng)過(guò)編譯器編譯的程序。為了得到編譯過(guò)的程序,專門有一個(gè)以關(guān)鍵字goal開始的特殊段。這個(gè)段包含了一個(gè)特殊謂詞run,此謂詞是一個(gè)程序執(zhí)行的起點(diǎn),所有目標(biāo)段就是一個(gè)程序的入口。
這里采用Visual Prolog來(lái)構(gòu)建知識(shí)庫(kù),進(jìn)行系統(tǒng)開發(fā)。以艦空武器綜合控制系統(tǒng)開發(fā)為例,具體開發(fā)工作如下。
1)分析艦空武器綜合控制系統(tǒng)需要用到的相關(guān)領(lǐng)域概念以及相互關(guān)系。
2)定義相關(guān)域和屬性。域:string、integer、float以及boolean等;屬性包括目標(biāo)狀態(tài)、目標(biāo)類型、目標(biāo)位置以及火力資源狀態(tài)等屬性。
3)采用面向?qū)ο筮M(jìn)行事實(shí)庫(kù)的構(gòu)建,包括目標(biāo)事實(shí)庫(kù)和艦船事實(shí)庫(kù)。事實(shí)庫(kù)的結(jié)構(gòu)形式如表2和表3所示。
4)采用邏輯及產(chǎn)生式規(guī)則進(jìn)行規(guī)則庫(kù)構(gòu)建,這里以整個(gè)系統(tǒng)在線任務(wù)規(guī)劃規(guī)則為例,規(guī)則結(jié)構(gòu)如表4所示。
5)對(duì)規(guī)則進(jìn)行語(yǔ)法和完備性檢查,并通過(guò)Visual Prolog的深度優(yōu)先搜索進(jìn)行推理。

表2 目標(biāo)知識(shí)表示

表3 艦艇知識(shí)表示
本文提出了一種基于知識(shí)的艦空武器智能綜合控制系統(tǒng)的設(shè)計(jì)方法。該方法對(duì)系統(tǒng)整個(gè)運(yùn)作過(guò)程進(jìn)行了規(guī)劃設(shè)計(jì);與此同時(shí),提出了一種適用于該系統(tǒng)知識(shí)庫(kù)構(gòu)建的混合知識(shí)表示方法,其將面向?qū)ο蟆⑦壿嬕约爱a(chǎn)生式規(guī)則3種知識(shí)表示方法相結(jié)合;最后,利用Visual Prolog智能語(yǔ)言完成了對(duì)系統(tǒng)知識(shí)庫(kù)的構(gòu)建。該設(shè)計(jì)方法可以使艦艇防空系統(tǒng)綜合控制多型號(hào)多平臺(tái)武器系統(tǒng),同時(shí)對(duì)連續(xù)多批次目標(biāo)進(jìn)行持續(xù)性梯次攔截;此外,還可以通過(guò)更新知識(shí)庫(kù)使其具有較強(qiáng)的作戰(zhàn)適應(yīng)能力。本文為今后艦載防空武器控制系統(tǒng)的設(shè)計(jì)提供了一種可參考的研究思路。

表4 在線任務(wù)規(guī)劃規(guī)則表示