張 磊,魏成昊
(1.海軍指揮學(xué)院,江蘇 南京 210016; 2.海軍潛艇學(xué)院,山東 青島 266071)
兵力行動(dòng)知識(shí)管理的一個(gè)很重要的方面,就是如何保留住知識(shí),并提高知識(shí)使用的效率和頻度。從這個(gè)角度來講,知識(shí)管理的解決方案從本質(zhì)上來說是一個(gè)輔助決策的系統(tǒng),它利用所包含的知識(shí)來為決策者在兵力行動(dòng)管理中提供決策支持,決策支持可理解為通過知識(shí)推理解決大量的基于規(guī)則的兵力行動(dòng)管理,這樣兵力行動(dòng)建模就能通過知識(shí)推理模型得出參考決策,提高兵力行動(dòng)決策的效率。
兵力行動(dòng)建模與相關(guān)的領(lǐng)域知識(shí)密不可分。對(duì)于行動(dòng)建模來說,獲取領(lǐng)域知識(shí)是進(jìn)行知識(shí)表示的基礎(chǔ),兵力行動(dòng)建模描述的是作戰(zhàn)單元對(duì)戰(zhàn)場(chǎng)態(tài)勢(shì)的評(píng)估、各作戰(zhàn)單元作戰(zhàn)任務(wù)的規(guī)劃與協(xié)同,以及根據(jù)戰(zhàn)場(chǎng)環(huán)境所進(jìn)行的實(shí)時(shí)決策等,模型的復(fù)雜性很高,因此,對(duì)知識(shí)的表示要求也很高。兵力行動(dòng)建模領(lǐng)域的知識(shí)需要從軍隊(duì)條令條例以及有關(guān)的作戰(zhàn)指揮人員、參謀人員處來獲取,信息量很大,采用何種方法來對(duì)這些知識(shí)進(jìn)行有效的表示,將是兵力行動(dòng)建模的一個(gè)必不可少的組成環(huán)節(jié)。知識(shí)獲取和知識(shí)表示在兵力行動(dòng)建模中的一般流程如圖1所示。
圖1 兵力行動(dòng)建模的知識(shí)獲取和知識(shí)表示流程
目前,比較成熟的知識(shí)工程建模技術(shù)主要包括:有限狀態(tài)機(jī)、產(chǎn)生式規(guī)則、黑板系統(tǒng)、面向?qū)ο蟮闹R(shí)庫(kù)等建模技術(shù)。其中,有限狀態(tài)機(jī)與產(chǎn)生式規(guī)則是比較成熟、并且得到廣泛運(yùn)用的技術(shù),下面將這兩種技術(shù)進(jìn)行有效地結(jié)合,提出了一種有限狀態(tài)機(jī)加規(guī)則的特種作戰(zhàn)兵力的行動(dòng)建模方法,并相應(yīng)地提出行動(dòng)模型結(jié)構(gòu)。
當(dāng)兵力在某一個(gè)狀態(tài)下有事件發(fā)生時(shí),根據(jù)當(dāng)前狀態(tài)和輸入的不同,選擇如何處理該事件以及判斷是否需要轉(zhuǎn)換下一個(gè)狀態(tài)。兵力行動(dòng)狀態(tài)機(jī)包含五個(gè)部分:一組兵力狀態(tài)的集合 S,一組輸入集合 C,輸出集合W,以及兩種映射關(guān)系λ、μ。
式中,λ是狀態(tài)遷移映射;μ是輸出映射。
在使用有限狀態(tài)機(jī)進(jìn)行行動(dòng)建模時(shí),我們需要確定在當(dāng)前狀態(tài)下,當(dāng)環(huán)境發(fā)生變化時(shí)如何動(dòng)作以及是否進(jìn)行狀態(tài)轉(zhuǎn)移。因?yàn)闋顟B(tài)轉(zhuǎn)移也可以認(rèn)為是一種特殊的動(dòng)作,所以問題就可以用產(chǎn)生式規(guī)則解決。
對(duì)于狀態(tài)轉(zhuǎn)移映射 λ :S( t + 1 )= λ (S( t), C( t ))。
由于觸發(fā)狀態(tài)轉(zhuǎn)移的條件在不同的情況下是不同的,而實(shí)現(xiàn)狀態(tài)轉(zhuǎn)移的動(dòng)作則是通用的,所以相應(yīng)規(guī)則的一般形式為:
兵力行動(dòng)有限狀態(tài)機(jī)當(dāng)前處于狀態(tài)S( t):
IF C( t)THEN “設(shè)置狀態(tài) S( t+1)” 。
其中,C( t)可以由返回值為Boolean的條件函數(shù)來實(shí)現(xiàn)。建立規(guī)則庫(kù)時(shí)根據(jù)當(dāng)前狀態(tài)選擇所需的條件函數(shù),系統(tǒng)運(yùn)行時(shí)條件函數(shù)根據(jù)任務(wù)和從裝備模型獲取戰(zhàn)場(chǎng)態(tài)勢(shì)做出判斷。而S( t+1)可以由行動(dòng)函數(shù)來實(shí)現(xiàn)。
類似的μ的映射 μ : W ( t)= μ( S ( t), C( t))。
可以表示為:兵力行動(dòng)有限狀態(tài)機(jī)當(dāng)前處于狀態(tài)S( t):
IF C( t)THEN “執(zhí)行動(dòng)作W( t)”。
三值邏輯神經(jīng)網(wǎng)絡(luò)(Three-valued Neural Logic Network,簡(jiǎn)稱Neulonet)最早是新加坡國(guó)立大學(xué)的研究學(xué)者提出的模型。它具有強(qiáng)大的知識(shí)表示能力,僅通過一系列純數(shù)字的連接權(quán)值就可表示有語義的人類邏輯規(guī)則,使其能模擬各種偏好的、主觀的人類決策制定。同時(shí)它又是一種模糊知識(shí)的表達(dá)方式,對(duì)不完整數(shù)據(jù)有很好的容忍性。Neulonet是一種結(jié)合了三值邏輯的符號(hào)表示和神經(jīng)網(wǎng)絡(luò)的連接及傳播結(jié)構(gòu)的模型,它包含一些結(jié)點(diǎn)和連接弧,通過調(diào)整連接權(quán)值,可以表示出較復(fù)雜且有語義的邏輯操作。其特點(diǎn)主要有:1)它的符號(hào)表示使用三值邏輯;2)它通過類似人工神經(jīng)網(wǎng)絡(luò)的形式表示;3)它是以上兩者的完美結(jié)合。
與通常的神經(jīng)網(wǎng)絡(luò)類似,Neulonet包括一系列的輸入結(jié)點(diǎn),連接弧和一個(gè)輸出結(jié)點(diǎn)。結(jié)點(diǎn)上附有激活值,連接弧上標(biāo)有連接權(quán)值。不同的是這些激活值和連接權(quán)值都是有序的實(shí)數(shù)對(duì)(見圖 2)。經(jīng)典的布爾邏輯只包括兩個(gè)值:真值(True)和假值(False),分別由1和0表示。然而在實(shí)際應(yīng)用中存在大量模糊的值,它們無法被輕易地定義為真或假,因此人們引入了三值邏輯。它包括‘真 ’、‘假’和‘不確定',依次由(1,0),(0,1)和(0,0)表示。同經(jīng)典邏輯一樣,三值邏輯也可以定義與(AND),或(OR)和非(NOR)的操作。事實(shí)上,“不確定”的使用大大加強(qiáng)了邏輯表示的靈活性和復(fù)雜性,布爾邏輯僅有24=16個(gè)二元操作,而三值邏輯則共有38=6561個(gè)有意義的二元操作。
圖2 邏輯神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)圖
如圖2所示,Q是輸出節(jié)點(diǎn),P1,P2……Pn是輸入節(jié)點(diǎn)。與節(jié)點(diǎn)Pi相關(guān)的輸入值為(ai,bi),Pi到Q的連接權(quán)值表示為(αi,βi)。傳播函數(shù)定義如下:
激活的規(guī)則定義如下(λ是閾值,通常被設(shè)為1):
我們將任何一個(gè)作戰(zhàn)單元遂行特定作戰(zhàn)使命的過程表述為若干個(gè)時(shí)序上順序執(zhí)行的戰(zhàn)術(shù)任務(wù)過程,以任務(wù)過程名表述:
首先,將這些任務(wù)過程名按照從后到前的順序壓入堆棧,作戰(zhàn)單元執(zhí)行使命過程的過程就是按照時(shí)間邏輯從堆棧中順序地彈出逐個(gè)任務(wù)過程名進(jìn)行解釋執(zhí)行的過程。
由于在對(duì)作戰(zhàn)單元進(jìn)行使命任務(wù)規(guī)劃時(shí)對(duì)戰(zhàn)場(chǎng)環(huán)境感知的限制,以及作戰(zhàn)執(zhí)行過程中戰(zhàn)場(chǎng)出現(xiàn)態(tài)勢(shì)變化使作戰(zhàn)單元獲得新的戰(zhàn)場(chǎng)感知,可能使作戰(zhàn)單元針對(duì)出現(xiàn)的新情況,暫時(shí)中斷當(dāng)前的任務(wù)過程,轉(zhuǎn)入新的作戰(zhàn)過程,只有在該過程完成后,作戰(zhàn)單元才會(huì)恢復(fù)到原來的作戰(zhàn)過程。因此每個(gè)作戰(zhàn)過程TaskNamei(i=1,2,…,n)除了必須具備確實(shí)執(zhí)行的作戰(zhàn)過程外,還可能存在一個(gè)或多個(gè)備用的作戰(zhàn)過程:
當(dāng)根據(jù)判斷決策在執(zhí)行新的作戰(zhàn)過程TaskName_Bakij前,將原來執(zhí)行的作戰(zhàn)過程TaskName_Execi重新壓入堆棧,轉(zhuǎn)入新的作戰(zhàn)過程TaskName_Bakij,新的作戰(zhàn)過程TaskName_Bakij完成后,從堆棧中彈出原來的作戰(zhàn)過程 TasNamek_Execi進(jìn)行執(zhí)行。這一方法可能出現(xiàn)多重嵌套,但采用堆棧的管理方式能夠有效地解決多重嵌套問題。
每個(gè)任務(wù)過程具有戰(zhàn)法標(biāo)識(shí)和可能的陣地或者行動(dòng)路線:
其中,戰(zhàn)法Tactics由標(biāo)識(shí)、目的、一組規(guī)則組成:
兵力在使命遂行過程中可能根據(jù)戰(zhàn)場(chǎng)感知對(duì)任務(wù)過程重新進(jìn)行規(guī)劃,這時(shí)對(duì)Mission進(jìn)行重新處理。
以海軍特種作戰(zhàn)分隊(duì)對(duì)敵重要目標(biāo)實(shí)施偵察,并引導(dǎo)我導(dǎo)彈部隊(duì)進(jìn)行打擊任務(wù)為例,其作戰(zhàn)想定表述為如圖3所示。
圖3 海軍特戰(zhàn)分隊(duì)執(zhí)行引導(dǎo)打擊任務(wù)規(guī)劃示例
應(yīng)用以上規(guī)則,我們就能以Neulonet的形式構(gòu)建‘與’、‘或’和‘非’等操作,如圖 4 所示。Neulonet上的連接權(quán)值可以通過一些構(gòu)建算法得出,這樣,這些權(quán)值不再是任意數(shù)字的組合,而是表示一定語義的操作。
Neulonet通過不同的權(quán)值對(duì)集合可以對(duì)應(yīng)不同的邏輯操作,因此我們可以將知識(shí)庫(kù)中的任意規(guī)則映射到簡(jiǎn)單的具有相同語義的 Neulonet形式:這樣每個(gè)Neulonet規(guī)則可以有兩個(gè)相應(yīng)的形式,文本形式和圖形形式。另一方面,兵力行動(dòng)知識(shí)的連接邏輯有時(shí)要比傳統(tǒng)的‘與’和‘或’邏輯要復(fù)雜。有些兵力行動(dòng)知識(shí)可能是從過去的演習(xí)或?qū)崙?zhàn)中提煉出的規(guī)則,因此具有較強(qiáng)的主觀性和隨意性。同時(shí)由于不同的指揮員可能對(duì)于不同的影響因素有不同的喜好程度,因此兵力行動(dòng)知識(shí)也是有偏好的。通過稍微調(diào)整Neulonet的連接權(quán)值,或者將一系列的“規(guī)則單元”連接起來,它們可以用來表示有一些難度的兵力行動(dòng)規(guī)則。如在兵力行動(dòng)決策中經(jīng)常使用的“少數(shù)服從多數(shù)”規(guī)則,即最終的決定取決于大多數(shù)因素的暗示。顯然,傳統(tǒng)邏輯很難表示這一規(guī)則,但是利用Neulonet強(qiáng)大的知識(shí)表示能力,可以很輕易地做到。
對(duì)于一些埋藏在軍事人員頭腦中的隱性知識(shí)或者潛規(guī)則,人們雖然意識(shí)到了它們的存在,但是很難對(duì)其加以總結(jié)概括。Neulonet繼承了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力,它可以通過以往的數(shù)據(jù)進(jìn)行訓(xùn)練,來確定連接權(quán)值,從而實(shí)現(xiàn)這部分隱性知識(shí)的顯性化。圖5給出的是一些在兵力行動(dòng)建模中經(jīng)常使用的邏輯規(guī)則的Neulonet形式。
圖4 ‘與’和‘或’操作的Neulonet表示
圖5 兵力行動(dòng)建模中常見邏輯Neulonet表示
有關(guān)于兵力行動(dòng)的一系列的或然陳述,并且被當(dāng)成擁有背景知識(shí)而被要求預(yù)測(cè)結(jié)果,我們就需要通過一系列的推理,只要給出了足夠的信息,就能得出結(jié)論。使用Neulonet,我們可以構(gòu)建這樣的一個(gè)推理過程的表示,根據(jù)其他兵力的已知情況,確定特戰(zhàn)分隊(duì)是否可召喚航空兵力執(zhí)行支援任務(wù)的例子:
? 如果特戰(zhàn)分隊(duì)請(qǐng)求空中支援,條件滿足航空兵力行動(dòng)條件,那么航空兵力進(jìn)行空中支援;
? 除非水面艦艇執(zhí)行其他作戰(zhàn)任務(wù),否則特戰(zhàn)分隊(duì)一定呼叫水面艦艇進(jìn)行支援;
? 艦艇兵力可以執(zhí)行支援任務(wù),只要潛艇兵力和電子對(duì)抗兵力不能執(zhí)行支援任務(wù);
? 除非潛艇兵力必須進(jìn)行支援,否則潛艇兵力進(jìn)行隱蔽待機(jī);
?如果特戰(zhàn)分隊(duì)請(qǐng)求電子支援,條件滿足電子對(duì)抗兵力行動(dòng)條件,那么電子對(duì)抗兵力進(jìn)行支援;
? 只要潛艇兵力進(jìn)行支援,電子對(duì)抗兵力可以不參加支援;
? 如果行動(dòng)條件允許,那么潛艇兵力可以進(jìn)行支援。
最后要決定航空兵力是否執(zhí)行支援任務(wù),而已知的是潛艇兵力和電子對(duì)抗兵力不能執(zhí)行支援任務(wù)。相應(yīng)的Neulonet推理過程表示如圖6所示。
圖6 兵力行動(dòng)推理示例圖
圖5中的過程類似于人類推理并得到結(jié)論過程。其中每一個(gè)節(jié)點(diǎn)都代表一個(gè)命題,推理時(shí)只有一個(gè)輸入結(jié)點(diǎn),被賦予(1,0)值,表示潛艇和電子對(duì)抗兵力不能執(zhí)行掩護(hù)任務(wù);其余的結(jié)點(diǎn)都是輸出結(jié)點(diǎn),初始時(shí)被賦予(0,0),推理過程中新的值會(huì)通過傳播函數(shù)計(jì)算。推理結(jié)束后,如果輸出節(jié)點(diǎn)仍然為(0,0),表示沒有足夠的信息得出結(jié)論;否則,網(wǎng)絡(luò)將會(huì)產(chǎn)出True=(1,0)或 False=(0,1)。連接權(quán)值是根據(jù)為兵力行動(dòng)設(shè)計(jì)的邏輯操作分配的。值得一提的是,非標(biāo)準(zhǔn)的邏輯操作,如‘除非’、‘只要’在這個(gè)模型中都可以被表示出來。在本例中,將輸入結(jié)點(diǎn)賦予(1,0)值,最后輸出的結(jié)果是:航空兵進(jìn)行空中支援(1,0)。
本文首先對(duì)兵力行動(dòng)的知識(shí)原理和知識(shí)工程建模方法進(jìn)行了分析,然后重點(diǎn)研究了基于三值邏輯神經(jīng)網(wǎng)絡(luò)模型的兵力行動(dòng)知識(shí)表示和推理方法,并結(jié)合兵力行動(dòng)知識(shí)推理實(shí)例,對(duì)其運(yùn)行機(jī)制給予了說明。
綜上所述,Neulonet作為三值邏輯和神經(jīng)網(wǎng)絡(luò)的結(jié)合,繼承了前者強(qiáng)大的知識(shí)表示能力和后者的學(xué)習(xí)能力。它表示復(fù)雜的人類邏輯時(shí),可用不同的權(quán)值組合來表示偏好性,也可用過去的例子訓(xùn)練來表現(xiàn)主觀性。進(jìn)而還可將一些基本邏輯的規(guī)則單元連接形成推理樹來模擬兵力行動(dòng)中的決策制定過程。這些特點(diǎn)使Neulonet可作為有效的知識(shí)表示和推理方法,被應(yīng)用到軍事領(lǐng)域中。
[1]Jay Liebowitz. Conceptualizing and implementing knowledge management. Management of Knowledge in Project Environments[C].2004:45-52.
[2]孔繁勝. 知識(shí)庫(kù)系統(tǒng)原理[M].杭州:浙江大學(xué)出版社,2000.
[3]向陽,等. 復(fù)雜問題決策支持模式研究[M].北京:科學(xué)出版社,2008.
[4]丁秋林. 推理技術(shù)在決策支持系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用,2004,24(7):141-144.
[5]陳躍新,蘇亮. 正向推理機(jī)系統(tǒng)研究[J].計(jì)算機(jī)工程與應(yīng)用,2002(19):78-80.