姚傳明,陳悅峰,鄧 晶
(1.中國電子科技集團公司第二十八研究所,江蘇 南京 210007;2.中國人民解放軍63963部隊,北京 100072;3.中國人民解放軍72465部隊,山東 濟南 250022)
古語云,兵貴神速。放眼現(xiàn)代戰(zhàn)爭,賦予其含義是取得對敵信息優(yōu)勢,實現(xiàn)先敵發(fā)現(xiàn)、先敵決策和先敵行動,核心是取得對敵情報優(yōu)勢,關(guān)鍵是指揮信息系統(tǒng)需具備自動分析處理敵情信息的能力,尤其是對敵目標信息的自動識別。目前,研究人員提出多種基于規(guī)則策略方法和神經(jīng)網(wǎng)絡(luò)的目標自動識別方法[1]。前者很難由系統(tǒng)完全枚舉且缺乏靈活的規(guī)則擴展能力,后者技術(shù)尚處于探索中,系統(tǒng)魯棒性無法有效保證。針對上述情況,本文提出一種基于專家推理系統(tǒng)的目標識別方法。專家推理技術(shù)誕生于20世紀60年代,技術(shù)成熟度相對較高且對系統(tǒng)硬件資源要求不高,具有自動化處理推斷能力,實現(xiàn)系統(tǒng)目標識別,同時,提出面向?qū)<彝评硐到y(tǒng)自學(xué)習(xí)方法,實現(xiàn)對目標知識庫的不斷擴充,解決系統(tǒng)知識規(guī)則擴展難的問題,為指揮信息系統(tǒng)實現(xiàn)對目標的自動識別提供一種潛在的途徑。
目標自動識別原理是通過構(gòu)建目標特征級信息知識庫,利用專家推理系統(tǒng),實現(xiàn)對目標類型及相關(guān)屬性的自動識別。該目標識別系統(tǒng)構(gòu)成如圖1所示。系統(tǒng)通過人機交互接口構(gòu)建知識庫和語義庫,利用情報接口將情報信息輸入至語義識別模塊,由語義識別模塊對情報信息進行分析、處理后輸入至推理機,推理機利用知識庫對接收到的情報信息進行推理,從而形成對目標信息情報的識別。
圖1 系統(tǒng)構(gòu)成圖
目標識別系統(tǒng)構(gòu)建過程包括知識庫構(gòu)建、語義庫構(gòu)建、語義識別、知識庫擴充、正向推理和識別確認目標六個關(guān)鍵過程節(jié)點,具體如圖2所示。
步驟1:知識庫構(gòu)建。將已有可表征目標類型及屬性的特征信息,利用產(chǎn)生式規(guī)則進行描述,形成由目標特征信息構(gòu)成的前件和由目標類型及屬性構(gòu)成的后件,按照優(yōu)先級順序排列后由前件和后件共同構(gòu)成目標信息知識庫。
圖2 系統(tǒng)流程圖
步驟2:語義庫構(gòu)建。以軍用數(shù)據(jù)情報及軍語信息為基礎(chǔ),提取出與目標信息相關(guān)的特征詞,格式化特征詞將其形成結(jié)構(gòu)化排列的詞條,該詞條構(gòu)成語義庫的各實體單元。
步驟3:語義識別。指揮信息系統(tǒng)接收到情報信息并解析后,利用步驟2中形成的實體單元逐一與情報進行匹配,若匹配成功,則表明存在目標特征信息,則對該情報標記處理,并利用步驟1的知識信息與之匹配,實現(xiàn)對情報的分詞處理,形成情報的特征詞組,若匹配不成功,則不對該情報進行處理。
步驟4:知識庫擴充。利用步驟3的方法,若情報同時含前件及后件信息,則將該信息增加至知識庫中,實現(xiàn)知識庫的在線擴充。
步驟5:正向推理。利用步驟3,若情報信息僅包含前件,則利用專家系統(tǒng)中正向推理技術(shù),對前件信息進行推理,直到匹配到后件為止。若由指控人員輸入目標前件,系統(tǒng)則亦采用正向推理,匹配后件,以上若匹配不成功,則推理結(jié)果返回空值。
步驟6:識別確認目標。指揮控制人員通過對目標特征信息和步驟5形成的推理的過程分析并確認后,形成目標識別結(jié)果。
需要說明的是,知識庫和語義庫的構(gòu)建可在系統(tǒng)運行過程中不斷學(xué)習(xí)完善,支持系統(tǒng)知識的自增長和擴充。
利用系統(tǒng)人機交互接口,將專家提供的目標類型及屬性信息輸入至知識庫中,知識的描述方式采用產(chǎn)生式規(guī)則,部分如下:
規(guī)則一:A∧B→M
規(guī)則二:C∧M→N
規(guī)則三:A∧B∧C→N
A、B、C為目標特征信息的前件,M、N為目標的后件。如規(guī)則一,前件A和B同時存在,則可推理出后件M;規(guī)則二,前件C和后件M同時存在,可推理出后件N;規(guī)則三,前件A、B和C同時存在,則可推理出N。
信息的前件由目標特征信息,如速度、外形特征等構(gòu)成,后件由目標類型及屬性構(gòu)成,如裝甲類目標、飛行類目標等構(gòu)成。
目標信息的前件和后件分開存儲,通過構(gòu)建前件和后件的映射關(guān)系實現(xiàn)兩者的信息關(guān)聯(lián)。對于前件向后件映射過程中,可能存在同一前件對應(yīng)多個不同的后件,對此沖突關(guān)系,采用優(yōu)先級策略,即先推理到的后件即為最優(yōu)后件,忽略后續(xù)映射關(guān)系。
語義庫的構(gòu)建旨在對情報信息預(yù)處理提供信息支撐。利用人機交互接口,將軍用數(shù)據(jù)報文及軍語信息中與目標信息相關(guān)的特征詞格式化,并由格式化的特征詞按目標特征類別構(gòu)建結(jié)構(gòu)化詞條,如圖3所示。
圖3 目標語義庫構(gòu)成
語義庫中的各特征詞條CHAR成為目標特征信息的實體單元,各實體單元可彼此互斥或互融,以保證信息表征的靈活性。
通過系統(tǒng)的情報接口獲取情報信息后,對該信息進行處理,具體如下:
1)將語義庫中的各實體單元與情報進行匹配;
2)若1)匹配成功,則表明該條情報信息存在目標信息,須對該條情報進行標記,并做分詞處理;
3)若1)匹配不成功,則表明該條情報不包含目標信息,不處理;
4)對2)中分詞處理方法是:利用知識庫中的前件、后件信息與情報信息進行匹配,若匹配結(jié)果同時包含前件信息和后件信息,則將該條信息作為目標特征知識擴充到知識庫中,并形成前件與后件的映射關(guān)系。若匹配結(jié)果僅包含前件信息,則表明該條情報信息需要專家系統(tǒng)進一步推理得到后件(結(jié)果)。
語義識別的關(guān)鍵是對文本的快速匹配。指揮信息系統(tǒng)中,系統(tǒng)接收到的情報特點是單條情報字節(jié)數(shù)均不多。但是,語義庫和知識庫中均包含數(shù)目較多的詞條信息,為實現(xiàn)兩者間的快速匹配,采用字符串快速匹配算法以提高匹配效率。
算法思路:通過將特征詞分解成單字符,由該單字符與情報進行比較,確定單字符在情報中的具體位置,再進行其他字符間的匹配,確保在失配時,特征詞能跳過盡量大的距離,減少不必要的匹配。算法流程如下:
1)設(shè)特征詞為C,長度為m,情報為B,長度為n。令0≤i<m,0≤j<n;
2)若m>n,則特征詞與情報不匹配;
3)若m=n,則C[i]和B[j]逐一比較,兩者相等則匹配,否則不匹配;
4)若m<n,記錄C[m-1]在B[0]至B[n-m-1]中出現(xiàn)的所有位置,構(gòu)成位置序列P[k];
5)分別將C[m-1]與B[P[k]]對齊后,對其余字符從左至右逐個匹配,若匹配成功,則返回True,若不成功則跳轉(zhuǎn)下一個P[k]位置,重復(fù)步驟5)。若始終無法完全匹配,則返回False。
6)返回值為True時,表明該特征詞在情報中;反之,則該情報不含該特征詞。
如上所述,情報信息不限于情報報文信息,亦包括經(jīng)過格式化轉(zhuǎn)換后的傳感器系統(tǒng)信息等。
根據(jù)語義識別相關(guān)方法,若情報同時含前件及后件信息,利用語義識別將前件和后件信息提取出來,擴充到知識庫中,并增加前件與后件的映射關(guān)系,從而實現(xiàn)目標識別系統(tǒng)知識庫的不斷擴充,使之更加貼近作戰(zhàn)應(yīng)用需要。
一般知識推理系統(tǒng)其知識結(jié)構(gòu)往往是固定的,不具備在線擴充和自學(xué)習(xí)能力[2],導(dǎo)致大量系統(tǒng)輸入輸出數(shù)據(jù)無法有效轉(zhuǎn)換成作戰(zhàn)知識。而本目標自動識別系統(tǒng)通過知識庫的自學(xué)習(xí)擴充機制,可在一定程度上增加并完善系統(tǒng)的知識庫,減少系統(tǒng)使用維護人員手工構(gòu)建知識庫的工作量,從而增加系統(tǒng)推廣應(yīng)用的可能性。
正向推理由專家系統(tǒng)推理機實現(xiàn),該推理機作為系統(tǒng)一個獨立的功能模塊,與知識庫是分開設(shè)計的。啟動正向推理的觸發(fā)機制有如下2種。
1)若情報信息經(jīng)語義識別、分析,發(fā)現(xiàn)僅含有目標前件信息時,則觸發(fā)推理機進行正向推理,如圖2流程①;
2)若指揮控制人員人為輸入目標信息前件時,則亦觸發(fā)推理機,如圖2流程②。
推理機運行過程如圖4所示。
圖4 正向推理流程圖
1)讀入目標特征信息事實facts=(F1,F(xiàn)2,…),通過數(shù)據(jù)總線訪問目標知識庫前件forwards,在知識庫規(guī)則rules=(R1,R2,…)中查找符合facts與forwards相匹配的規(guī)則R1,再把R1后件中不在facts中的后件結(jié)論M=(M1,M2,…)中與之匹配的M1添加到facts中,擴充事實facts為facts=(F1,F(xiàn)2,…,M1)。若存在一條可用的知識庫規(guī)則Rx,且Rx的前件也在當前的事實facts中,則采用沖突消解策略,如前文所述的優(yōu)先排列的規(guī)則,即同時有多條規(guī)則滿足匹配條件時,則在知識庫映射規(guī)則rules中選擇第一條作為匹配規(guī)則。
2)對擴充后的事實facts在知識庫rules中查找可用規(guī)則,當找到規(guī)則R1時,由于R1的后件結(jié)論M1已在facts中,故此時忽略規(guī)則R1,繼續(xù)查找符合要求的規(guī)則R。當遍歷到規(guī)則Rx符合要求時,判斷Rx的后件結(jié)論M是否在當前facts中,若在,則忽略,若不在,則將其后件結(jié)論M2添加到facts中,擴充當前facts為facts=(Fx,F(xiàn)y,…M1,M2)。
3)在知識庫rules中查找符合當前擴充后facts的規(guī)則,若規(guī)則Ry的前件在facts中,則表明Ry是可用規(guī)則。當Ry的后件結(jié)論在facts中時,則忽略該規(guī)則,若Ry的后件結(jié)論H1不在當前擴充后的facts中時,則將規(guī)則結(jié)論H1擴充到facts中,使得facts=(Fx,F(xiàn)y,…M1,M2,H1)。
4)不斷在知識庫rules中查找符合當前要求的facts規(guī)則,直到找不到規(guī)則的前件forwards所包含的全部條件與facts相匹配,且rules中的后件結(jié)論亦不在facts中。至此,正向推理結(jié)束。
5)目標信息推理的結(jié)果為rules的后件結(jié)論。該結(jié)論包括目標類型或目標屬性信息。
如圖5所示,正向推理功能模塊由面向?qū)ο蟮慕Y(jié)構(gòu)化編程語言C++編寫,主要包括七個功能函數(shù):1個推理函數(shù),1個調(diào)用函數(shù)和5個判斷函數(shù),各函數(shù)功能定義如圖5所述。
圖5 正向推理各實現(xiàn)模塊功能圖
通過上述5個步驟,目標自動識別系統(tǒng)在后臺基本完成了針對某個或多個目標特征信息的推理,并生成目標類型和相應(yīng)的屬性信息,為確保目標識別系統(tǒng)的可靠性和準確性,必要時可采用人件服務(wù)的理念[3],由指揮人員對推理過程進行核查確認,最終確定目標類型。
實際應(yīng)用時,目標推理結(jié)果可以和情報信息關(guān)聯(lián),當打開情報信息時,系統(tǒng)便會自動給出推理結(jié)果,輔助于指揮控制人員對目標信息的處理,提高知悉信息的能力,為輔助決策提供支撐。
在ReWorks系統(tǒng)上,利用ReDe開發(fā)工具,編寫多目標識別系統(tǒng)軟件,其中,目標特征庫、知識庫和語義庫預(yù)先由SQLite數(shù)據(jù)庫進行編寫,使用過程中可動態(tài)擴展。測試用例:將50組待測固定目標、運動目標特征信息輸入至專家推理系統(tǒng),進行動態(tài)在線測試。測試結(jié)果與預(yù)期結(jié)果一致,正確識別率為100%,且單次推理時間均不超過2 ms,系統(tǒng)推理速度快、魯棒性較好。部分測試結(jié)果見表1。
表1 部分系統(tǒng)應(yīng)用測試結(jié)果
具體推理過程如下:
1)地面^有履帶或四輪以上^有炮塔=>自行武器系統(tǒng)
2)自行武器系統(tǒng)^(炮塔位于車體中央或前部|炮塔可360度旋轉(zhuǎn)|履帶有裙板)=>坦克或步戰(zhàn)車
3)自行武器系統(tǒng)^(炮塔位于車體后部|炮塔高大|有炮口制退器)=>自行火炮
4)坦克或步戰(zhàn)車^(車體高大|有射擊孔)=>步戰(zhàn)車
(5)坦克或步戰(zhàn)車^(車體低矮|炮塔較大而低矮|無尾門)=>坦克
6)空中^快速^可懸停=>直升機
目標自動識別是現(xiàn)代指揮信息系統(tǒng)自動化、智能化最為典型的特征之一,通過采用專家推理系統(tǒng)并進行適應(yīng)性改進,結(jié)合知識庫、語義庫構(gòu)建和語義識別等系列手段實現(xiàn)了基于目標特征信息的目標自動識別,并實現(xiàn)知識庫擴充系統(tǒng),可支撐系統(tǒng)知識的不斷擴充,貼近實戰(zhàn)應(yīng)用,具有一定的實用推廣價值。