徐享忠, 楊建東, 湯再江
(1. 陸軍裝甲兵學(xué)院裝備指揮與管理系, 北京 100072; 2. 中國(guó)衛(wèi)星海上測(cè)控部, 江蘇 江陰 214431)
本體(ontology)源于哲學(xué)問題,用來表示世界本源的存在,后來被引入計(jì)算機(jī)領(lǐng)域,表達(dá)人們對(duì)領(lǐng)域知識(shí)的共同理解。目前,獲得學(xué)術(shù)界廣泛認(rèn)可的本體的定義是:“出于共享的目的,對(duì)領(lǐng)域術(shù)語的語義做出的明確的、規(guī)范的概念化表示”[1]。本體已在人工智能、知識(shí)工程和圖書情報(bào)等領(lǐng)域得到廣泛應(yīng)用。近年來,本體也在軍事領(lǐng)域的語義互操作[2]和仿真想定[3]等方面得到應(yīng)用。
本體可以使領(lǐng)域?qū)I(yè)術(shù)語所包含的信息資源的語義“顯性”化,而不是隱式地嵌入式地包含在語法和數(shù)據(jù)結(jié)構(gòu)中,從而有助于改善信息系統(tǒng)的可擴(kuò)展性,并促進(jìn)信息的智能處理。若應(yīng)用在軍事領(lǐng)域,則有助于計(jì)算機(jī)生成兵力理解語義。
本體作為知識(shí)共享、語義互操作和系統(tǒng)工程的基礎(chǔ),必須經(jīng)過精心的設(shè)計(jì)。實(shí)際上,本體構(gòu)建是一個(gè)費(fèi)時(shí)費(fèi)力的過程,因此建立本體模型需要遵循一定的原則。其中,較有影響的是GRUBER[4]在1994年提出的構(gòu)建本體模型的5條原則。
1)清晰性(clarity):構(gòu)建領(lǐng)域本體之前,應(yīng)該采用客觀、明確的自然語言定義相關(guān)概念,以完整、清晰地表達(dá)其含義。
2)一致性(coherence):語義推理的結(jié)論與術(shù)語本身的含義具有一致性。
3)最大單調(diào)可擴(kuò)展性(maximum monotonicity extendibility):向本體中添加通用或?qū)S酶拍钚g(shù)語時(shí),不需要修改本體已有的內(nèi)容。
4)編碼偏好程度最小(minimal encoding bias):概念描述不應(yīng)依賴某種特殊符號(hào)層的表示方法。
5)本體約定最小(minimal ontological commitment):本體約定只要能夠滿足特定的知識(shí)共享需求即可。
本體描述語言是用于構(gòu)建本體的形式化語言,都應(yīng)該提供本體建模原語,充當(dāng)本體從自然語言的表示格式轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的邏輯表示格式的工具,可為本體在系統(tǒng)之間的導(dǎo)入與導(dǎo)出提供標(biāo)準(zhǔn)的機(jī)讀格式,有助于實(shí)現(xiàn)系統(tǒng)之間的互操作。
為進(jìn)行語義描述,W3C(World Wide Web Consortium)結(jié)合RDF(Resource Description Framework)/RDFS(RDF Schema)、DAML(DARPA Agent Markup Language)+OIL(Ontology Interchange Language)、KIF(Knowledge Interchange Format)等本體描述語言的優(yōu)勢(shì),于2004年發(fā)布了Web本體語言(Ontology Web Language,OWL)[5]。OWL的語義以描述邏輯為基礎(chǔ),本體組織方式受到框架的影響,以RDF/XML為語法。依據(jù)語義表達(dá)與推理能力的不同,OWL涵蓋3種子語言,能力由弱到強(qiáng)分別為OWL Lite、OWL DL和OWL Full。
2012年,W3C又提出了OWL2[6],以改進(jìn)OWL的語法增強(qiáng)語義表達(dá)能力。OWL2也定義了3種不同的配置語言,由簡(jiǎn)單到復(fù)雜分別為OWL2 EL、OWL2 QL和OWL2 RL。雖然OWL2在類、屬性、個(gè)體及數(shù)據(jù)值的基礎(chǔ)上添加了一些新的功能,增強(qiáng)了對(duì)屬性表達(dá)、數(shù)據(jù)類型擴(kuò)展以及注釋的支持,但基于OWL2的本體實(shí)際應(yīng)用與語義網(wǎng)構(gòu)想還有相當(dāng)大的差距[7]。
領(lǐng)域本體的直接建模方法主要包括九步法、七步法、骨架法和MCSC2O(Methodology for Constructing a Simple Command and Control Ontology)法、骨架法、九步法。這些方法的優(yōu)、缺點(diǎn)如表 1所示。
表1 本體模型構(gòu)建方法比較
能夠進(jìn)行自動(dòng)語義推理是基于OWL的本體模型的重要優(yōu)勢(shì)。本體的語義推理可分為基于概念的推理和基于個(gè)體的推理2大類,以提高本體模型的質(zhì)量,并保證運(yùn)行過程中交互數(shù)據(jù)的正確性,分別對(duì)應(yīng)TBox和ABox,其中:TBox上的推理主要是檢測(cè)概念的可滿足性和包容性;ABox上的推理主要是實(shí)例檢查和檢索。基于OWL的本體的語義推理具備以下特點(diǎn):1)以描述邏輯為語義基礎(chǔ),因而只能進(jìn)行單調(diào)推理;2)遵從開放世界假設(shè)(Open World Assumption,OWA);3)不遵從唯一命名假設(shè)(Unique Name Assumption,UNA)。
國(guó)內(nèi)外許多研究機(jī)構(gòu)研發(fā)了多種本體推理系統(tǒng),如HermiT、Racer、Pellet、FaCT++等,它們都可以在一定程度上支持本體的語義推理。
本文基于OWL,采用改進(jìn)的“七步法”,通過斯坦福大學(xué)最新發(fā)布的本體建模工具——Protégé Desktop 5.0[8],建立了坦克排戰(zhàn)斗隊(duì)形本體模型。
“七步法”由斯坦福大學(xué)提出,主要面向領(lǐng)域本體建模,其詳細(xì)闡述了本體建模的有關(guān)方法和技術(shù),并考慮了軟件的復(fù)用性,不過沒有涉及評(píng)價(jià)和優(yōu)化步驟。
為此,本文根據(jù)軍事領(lǐng)域的需求,運(yùn)用DL query(描述邏輯查詢語言)加強(qiáng)對(duì)所建立領(lǐng)域本體模型的一致性評(píng)價(jià)及優(yōu)化,對(duì)“七步法”進(jìn)行改進(jìn)。具體來說,采用2級(jí)有效性驗(yàn)證方法:利用在本體模型基礎(chǔ)上生成的XML Schema,對(duì)XML交互數(shù)據(jù)進(jìn)行一般有效性驗(yàn)證,保證交互數(shù)據(jù)在文檔結(jié)構(gòu)、元素類型和元素屬性類型等方面的正確性;同時(shí),利用本體的邏輯推理機(jī)制對(duì)領(lǐng)域本體實(shí)例進(jìn)行概念沖突檢測(cè)、知識(shí)冗余檢測(cè)和實(shí)例一致性驗(yàn)證等有效性驗(yàn)證。
Protégé是一個(gè)圖形交互式本體設(shè)計(jì)和基于知識(shí)的開發(fā)環(huán)境,是語義網(wǎng)中本體模型的核心開發(fā)工具。提供的本體模型編輯器包括Protégé-Frames和Protégé-OWL,通過slot widgets類和tab等后端插件支持不同格式的本體,用戶不需要掌握復(fù)雜的本體描述語言,只需要在概念層次上構(gòu)建領(lǐng)域本體模型。其主要特點(diǎn)為:強(qiáng)大的本體存儲(chǔ)功能;可提供豐富的知識(shí)模型框架;易擴(kuò)展;graphviz插件可交互式地生成OWLViz類的直觀可視化關(guān)系結(jié)構(gòu)圖;豐富的導(dǎo)入及導(dǎo)出文件格式;可檢索和瀏覽本體;支持多個(gè)推理引擎。
本文以仿真試驗(yàn)系統(tǒng)中坦克排計(jì)算機(jī)生成兵力(Computer Generated Forces,CGF)對(duì)戰(zhàn)斗隊(duì)形相關(guān)語義的理解為簡(jiǎn)要想定背景,來闡述本體構(gòu)建與推理過程。
戰(zhàn)斗隊(duì)形,指戰(zhàn)斗時(shí)兵力兵器展開所形成的隊(duì)形,分為陸上戰(zhàn)斗隊(duì)形、海上戰(zhàn)斗隊(duì)形和空中戰(zhàn)斗隊(duì)形。坦克排常見的戰(zhàn)斗隊(duì)形包括一字隊(duì)形、一路隊(duì)形、人字隊(duì)形、前三角隊(duì)形、后三角隊(duì)形、左梯次隊(duì)形、右梯次隊(duì)形。
坦克排執(zhí)行戰(zhàn)斗任務(wù)時(shí),時(shí)常伴隨著戰(zhàn)斗隊(duì)形的變換。例如考慮如下典型場(chǎng)景:紅方坦克一排(計(jì)算機(jī)生成兵力)可能接到上級(jí)(連長(zhǎng)席位)下發(fā)的機(jī)動(dòng)作戰(zhàn)命令:“T時(shí)由出發(fā)陣地以行軍隊(duì)形機(jī)動(dòng)到W位置,展開為前三角戰(zhàn)斗隊(duì)形,而后向位于W位置前方2 km的藍(lán)方步兵支撐點(diǎn)進(jìn)行突擊,以支援自己的右翼——步兵一排(計(jì)算機(jī)生成兵力)?!币虼?,為正確執(zhí)行上述機(jī)動(dòng)作戰(zhàn)命令,坦克排計(jì)算機(jī)生成兵力、指揮控制系統(tǒng)都需要理解戰(zhàn)斗任務(wù)之間的先后次序以及戰(zhàn)斗隊(duì)形的語義。
為了使戰(zhàn)斗隊(duì)形等作戰(zhàn)術(shù)語所包含的信息資源的語義“顯性”化,而不是隱式地嵌入式地包含在語法和數(shù)據(jù)結(jié)構(gòu)中,可以建立坦克排戰(zhàn)斗隊(duì)形本體模型。
3.3.1 類層次結(jié)構(gòu)
筆者梳理了坦克排戰(zhàn)斗隊(duì)形本體模型涉及的基本概念,建立了這些概念之間的層次結(jié)構(gòu)。所建立的坦克排戰(zhàn)斗隊(duì)形本體模型包括作戰(zhàn)任務(wù)、參戰(zhàn)單位、戰(zhàn)斗隊(duì)形、編配裝備等基本概念以及這些概念的子概念。該本體的類層次結(jié)構(gòu)及可視化效果如圖1所示。
圖1 坦克排戰(zhàn)斗隊(duì)形本體模型
3.3.2 顯式語義網(wǎng)絡(luò)結(jié)構(gòu)
坦克排戰(zhàn)斗隊(duì)形本體模型的類、實(shí)例以及相互之間的聯(lián)系,構(gòu)成了一個(gè)復(fù)雜的網(wǎng)狀概念結(jié)構(gòu),在OntoGraf中的可視化效果如圖2所示(節(jié)點(diǎn)左上角的“+”表示該節(jié)點(diǎn)尚可以展開)。
圖2 坦克排戰(zhàn)斗隊(duì)形本體模型的網(wǎng)狀結(jié)構(gòu)
由圖2可見:
1)“排”分為“坦克排”與“步兵排”2種類型,各有1個(gè)實(shí)例“坦克一排”與“步兵一排”;
2)“坦克一排”編配了3輛坦克及1輛步戰(zhàn)車,要執(zhí)行“開進(jìn)”“展開為前三角隊(duì)形”“突擊藍(lán)方步兵支撐點(diǎn)”3個(gè)作戰(zhàn)任務(wù)(作戰(zhàn)任務(wù)之間先后次序的這種語義可被顯式表達(dá),并將在第4節(jié)通過模型驗(yàn)證進(jìn)行語義推理);
3)戰(zhàn)斗隊(duì)形考慮了2個(gè)子類“前三角戰(zhàn)斗隊(duì)形”和“后三角戰(zhàn)斗隊(duì)形”,并定義了戰(zhàn)斗隊(duì)形的2個(gè)實(shí)例“戰(zhàn)斗隊(duì)形1”和“戰(zhàn)斗隊(duì)形2”。
3.3.3 坦克排戰(zhàn)斗隊(duì)形的量化
假設(shè)坦克排往北開進(jìn),建立如下坐標(biāo)系:以1號(hào)車(頭車)為原點(diǎn),1號(hào)車運(yùn)動(dòng)方向?yàn)閅軸正方向(正北),X軸正方向指向正東;1號(hào)車左翼為2號(hào)車,1號(hào)車右翼為3號(hào)車。若考慮容許的偏差,則坦克排的常見戰(zhàn)斗隊(duì)形相互距離及方位可用表2來描述。
表2 坦克排戰(zhàn)斗隊(duì)形定量描述
OWL提供了對(duì)象屬性及數(shù)據(jù)屬性來描述這些定量關(guān)系。
3.3.4 坦克排戰(zhàn)斗隊(duì)形的定義
以坦克排前三角戰(zhàn)斗隊(duì)形和后三角戰(zhàn)斗隊(duì)形為例,采用OWL提供的建模手段,對(duì)這2種典型的隊(duì)形進(jìn)行了定義,如圖3所示。
圖3 坦克排戰(zhàn)斗隊(duì)形的定義
為驗(yàn)證所建立坦克排戰(zhàn)斗隊(duì)形本體模型的有效性,可以進(jìn)行語義推理,包括作戰(zhàn)任務(wù)次序的推理、戰(zhàn)斗隊(duì)形的推理、執(zhí)行單位的推理、裝備編配關(guān)系的推理和友鄰關(guān)系的推理等,語義推理的結(jié)果均與軍事專家的預(yù)期相符。下面簡(jiǎn)要介紹前3項(xiàng)推理的過程及結(jié)果。
任務(wù)次序主要推理步驟如下:1)定義對(duì)象屬性“執(zhí)行單位”,以描述某個(gè)作戰(zhàn)任務(wù)的執(zhí)行單位;2)通過添加該對(duì)象屬性的斷言,以描述“坦克一排”所擔(dān)任的作戰(zhàn)任務(wù);3)定義對(duì)象屬性“前置任務(wù)”(該對(duì)象屬性具備傳遞關(guān)系),以描述“坦克一排”所擔(dān)任的某個(gè)作戰(zhàn)任務(wù)的前置任務(wù);4)描述作戰(zhàn)任務(wù)之間的先后次序,即先開進(jìn)到W位置,后展開為前三角隊(duì)形,而后向藍(lán)方步兵支撐點(diǎn)發(fā)起突擊;5)運(yùn)行TBox推理,得出“開進(jìn)到W位置也是向藍(lán)方步兵支撐點(diǎn)發(fā)起突擊的前置任務(wù)”,如圖4所示。
圖4 任務(wù)次序的推理結(jié)果
1)定義戰(zhàn)斗隊(duì)形的2個(gè)實(shí)例“戰(zhàn)斗隊(duì)形1”和“戰(zhàn)斗隊(duì)形2”,如圖5所示。
2)運(yùn)行ABox推理,得出實(shí)例“戰(zhàn)斗隊(duì)形1”、實(shí)例“戰(zhàn)斗隊(duì)形2”分別屬于前三角隊(duì)形和后三角隊(duì)形,如圖6所示。
3)通過運(yùn)行DL query,同樣可以得出實(shí)例“戰(zhàn)斗隊(duì)形1”、實(shí)例“戰(zhàn)斗隊(duì)形2”分別屬于前三角隊(duì)形和后三角隊(duì)形的結(jié)果,如圖7所示,可見推理結(jié)果一致。
圖5 “戰(zhàn)斗隊(duì)形”實(shí)例的定義
圖6 “戰(zhàn)斗隊(duì)形”實(shí)例的推理結(jié)果
圖7 在DL query中查詢戰(zhàn)斗隊(duì)形的推理結(jié)果
1)假設(shè)突擊任務(wù)只能由“坦克一排”來執(zhí)行,而不能由其他單位來完成。這種制約關(guān)系的定義如圖8所示。
圖8 突擊任務(wù)只能由“坦克一排”而非其他單位來執(zhí)行的定義
2)要是定義“突擊藍(lán)方步兵支撐點(diǎn)”任務(wù)由“步兵一排”來執(zhí)行(圖9),就會(huì)引發(fā)不一致情形。而這種不一致也可通過語義推理被檢測(cè)出(這可被用于檢測(cè)想定當(dāng)中某單位是否被不合適地賦予了作戰(zhàn)任務(wù))。
圖9 分配“步兵一排”來執(zhí)行突擊任務(wù)(陳述的事實(shí))
本體模型出現(xiàn)執(zhí)行單位不一致情形的解釋如圖10所示。
圖10 本體模型出現(xiàn)執(zhí)行單位不一致情形的解釋
本文建立了坦克排戰(zhàn)斗隊(duì)形本體模型,并進(jìn)行了作戰(zhàn)任務(wù)次序和戰(zhàn)斗隊(duì)形的推理。實(shí)際上,還可以針對(duì)該模型進(jìn)行其他語義推理,如裝備編配關(guān)系的推理(裝備編配是否符合要求)、友鄰關(guān)系的推理(“步兵一排”是“坦克一排”的右翼,“坦克一排”則是“步兵一排”的左翼)、執(zhí)行單位的推理(裝備編配是否適合所擔(dān)負(fù)的作戰(zhàn)任務(wù))等。下一步,擬研究如何將OWL與語義網(wǎng)規(guī)則語言(Semantic Web Rule Language,SWRL)相結(jié)合,進(jìn)一步增強(qiáng)語義表達(dá)與推理能力,如戰(zhàn)斗隊(duì)形變換等動(dòng)態(tài)過程語義的表達(dá),并研究在構(gòu)建更高層次的本體模型時(shí)如何加強(qiáng)復(fù)用,使計(jì)算機(jī)生成兵力具備更強(qiáng)的語義理解能力。
[1] 甘健侯,姜躍,夏幼明.本體方法及其應(yīng)用[M].北京:科學(xué)出版社,2011:2.
[2] 徐享忠,湯再江,譚亞新.作戰(zhàn)仿真與指控系統(tǒng)語義互操作技術(shù)參考框架研究[J]. 系統(tǒng)仿真學(xué)報(bào),2015,27(8):1735-1739.
[3] 龐天亮,袁修久,趙學(xué)軍,等.基于OWL的仿真想定本體構(gòu)建方法[J].空軍工程大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,13(6):35-40.
[4] GRUBER T. Knowledge level modeling: concepts and terminology[J].The knowledge engineering review,1998,13(1):5-29.
[5] SMITH M K,WELTY C,MCGUINNESS D L.OWL web ontology language[EB/OL].(2004-02-10)[2017-03-09].http://www.w3.org/TR/2004/REC-owl-features-20040210/.
[6] MOTIK B, PATEL-SCHNEIDER P F, PARSIA B. OWL 2 web ontology language: structural specification and functional-style syntax (Second Edition)[EB/OL]. (2012-12-11)[2017-03-09].http://www.w3.org/TR/2012/REC-owl2-syntax-20121211/.
[7] 張曉丹,李靜,張秋霞,等.語義Web本體語言O(shè)WL2研究[J].電子設(shè)計(jì)工程,2015,23(16):28-31.
[8] Stanford University.Desktop protégé[EB/OL].(2016-07-11)[2016-12-01].http://protege.stanford.edu/products.php#desktop-protege.