專利名稱::基于語(yǔ)義搜索的推理方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及基于語(yǔ)義搜索方法,特別是涉及一種基于語(yǔ)義搜索的推理方法。
背景技術(shù):
:網(wǎng)絡(luò)的出現(xiàn),極大地改變了人們的生活,豐富了人們的交流方式,增加了人們獲取資料的途徑,加速了信息的流通,影響了人們的休閑方式,等等,可以說(shuō),網(wǎng)絡(luò)是二十世紀(jì)后期以來(lái)對(duì)人們影響最大的技術(shù)。但是目前的網(wǎng)頁(yè),其表達(dá)語(yǔ)言為超文本標(biāo)記語(yǔ)言,即HTML,在發(fā)明之初,是面向人的,即網(wǎng)頁(yè)的內(nèi)容通過(guò)瀏覽器,展示給人,這導(dǎo)致其內(nèi)容不能很好的被機(jī)器所理解,影響了網(wǎng)頁(yè)內(nèi)容處理的自動(dòng)化。隨著網(wǎng)絡(luò)信息的急劇增長(zhǎng),人們從海量的信息中有效地獲取知識(shí)變得困難?,F(xiàn)有的搜索,特別網(wǎng)頁(yè)搜索,其方法是基于文本的,即對(duì)文本進(jìn)行分詞,然后再對(duì)這些文本中的詞語(yǔ)建立索引,以提高搜索的效率。但是,這種方式的搜索,雖然極大程度上提高了人們查找資料、獲取信息的方便性,也存在著天生的缺陷,即無(wú)法處理語(yǔ)義相關(guān)的信息。比如,如果需要了解浙江省內(nèi)的紡織企業(yè)信息,以關(guān)鍵字"浙江紡織"進(jìn)行搜索,發(fā)現(xiàn)不了那些介紹杭州紡織企業(yè)的相關(guān)網(wǎng)頁(yè),除非這些網(wǎng)頁(yè)中直接出現(xiàn)"浙江紡織"這兩個(gè)關(guān)鍵字。為了處理網(wǎng)頁(yè)的語(yǔ)義信息,語(yǔ)義網(wǎng)技術(shù)在網(wǎng)頁(yè)中增加了元數(shù)據(jù),用以對(duì)網(wǎng)頁(yè)中的資源進(jìn)行說(shuō)明。如果要運(yùn)用這些元數(shù)據(jù),來(lái)提高搜索的質(zhì)量,必須要根據(jù)這些知識(shí),進(jìn)行推理,以發(fā)掘隱式的知識(shí)。為了讓機(jī)器能夠更好的處理網(wǎng)絡(luò)資源。萬(wàn)維網(wǎng)的創(chuàng)始人TimBerners-Lee在"科學(xué)美國(guó)人"上對(duì)下一代的網(wǎng)絡(luò)作了描繪,認(rèn)為下一代網(wǎng)絡(luò)的將是語(yǔ)義網(wǎng)(SemanticWeb)。運(yùn)用語(yǔ)義網(wǎng),能夠極大地加強(qiáng)知識(shí)的共享,提高知識(shí)處理的自動(dòng)化程度。語(yǔ)義網(wǎng)的邏輯基礎(chǔ)是描述邏輯(DescriptionLogic,DL)。如果語(yǔ)義網(wǎng)需要對(duì)其表達(dá)的知識(shí)進(jìn)行推理,發(fā)現(xiàn)其中的隱含知識(shí),則需要運(yùn)用描述邏輯的推理能力。目前的研究表明,對(duì)于普通表達(dá)能力的描述邏輯語(yǔ)言ALC來(lái)說(shuō),其復(fù)雜度是pspace-complete,因此,如果不加以優(yōu)化,很難應(yīng)用在網(wǎng)絡(luò)化的環(huán)境當(dāng)中。目前已有一些優(yōu)化策略被應(yīng)用于描述邏輯的推理過(guò)程中,比如緩沖(cache),延遲展開(LazyUnfolding)等,但是對(duì)于ALC這樣表達(dá)能力較弱的描述邏輯來(lái)說(shuō),其復(fù)雜度已經(jīng)是pspace-complete。現(xiàn)有的這幾種優(yōu)化策略,推理效率低,時(shí)間復(fù)雜度高,使得描述邏輯的應(yīng)用受到了很大的制約,很難在網(wǎng)絡(luò)搜索中應(yīng)用。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種基于語(yǔ)義搜索的推理方法,是用于語(yǔ)義搜索的推理步驟中的,采用近似化的方法來(lái)提高推理效率,對(duì)ABox和TBox推理進(jìn)行算法復(fù)雜度評(píng)估,當(dāng)算法復(fù)雜度大于一定的閾值時(shí),釆用近似推理方法計(jì)算,并對(duì)近似推理所得的推理結(jié)果進(jìn)行修正,得到最終的推理結(jié)果。本發(fā)明采用的技術(shù)方案是1.該方法的步驟如下(1)設(shè)定閾值,對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,當(dāng)算法復(fù)雜度大于閾值時(shí),繼續(xù)執(zhí)行,否則,執(zhí)行步驟(3);(2)采用推理方法進(jìn)行推理,執(zhí)行步驟(4);(3)采用FaCt++推理機(jī)中的推理方法進(jìn)行推理,得到最終推理結(jié)果,結(jié)束;(4)對(duì)步驟(2)所得的推理結(jié)果進(jìn)行修正,把修正后的結(jié)果作為最終推理結(jié)果,結(jié)束。2.根據(jù)1所述步驟(l)中對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,具體包括如下步驟(1)對(duì)ABox推理的算法復(fù)雜度評(píng)估,首先,對(duì)ABox進(jìn)行Precompletion處理,并對(duì)Precompletion的算法復(fù)雜度進(jìn)行評(píng)估,ABox在經(jīng)過(guò)Precompletion處理之后,對(duì)ABox的推理就歸約到對(duì)TBox的推理;(2)對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估。3.根據(jù)2所述步驟(l)中對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估;TBox記為TB,ABox記為AB,概念記為C,個(gè)體記為a,用C(a)表示個(gè)體a屬于概念C,用函數(shù)T(C(a))表示對(duì)TB,AB—C(a)判定的時(shí)間估算,運(yùn)算符"|="為ABox—致檢査中分類優(yōu)化的重構(gòu)運(yùn)算符,對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估,依次按照如下步驟進(jìn)行算法評(píng)估,并且循環(huán)執(zhí)行如下步驟,直到AB沒有擴(kuò)展的規(guī)則為止,具體包括如下步驟(1)Precompletion過(guò)程的規(guī)則1為,AB+£{o:C}UAB,其時(shí)間復(fù)雜度為T(C(a))=0,其中U是描述邏輯中的Disjunction運(yùn)算符,"o:C"表示概念C中的所有個(gè)體o;(2)Precompletion過(guò)程的規(guī)則2為AB^fl{o:Cl,o:C2)UAB,其時(shí)間復(fù)雜度為T(C(a))-2+T(C1(a))+T(C2(a)),其中門是描述邏輯中的Conjunction運(yùn)算符,Cl,C2表示概念,且滿足C-Clf!C2,T(Cl(a))和T(C2(a))將被遞歸計(jì)算;(3)Precompletion過(guò)程的規(guī)則3為AB+U{o:D}UAB,其時(shí)間復(fù)雜度為T(C(a))=2+T+T(Cl(a))+T(C2(a)),其中T表示當(dāng)前的T(C(a))的值,概念D,C,Cl,C2之間滿足C-C1UC2,D-C1或者D-C2,T(Cl(a))和T(C2(a))將被遞歸計(jì)算;(4)Precompletion過(guò)程的規(guī)則4為AB》V{o,:D}UAB,其時(shí)間復(fù)雜度為T(D(a))=n+n*T(D(a))+T(tc,.(a)),其中V為描述邏輯中的全稱量詞,上述規(guī)則的應(yīng)用必須滿足C-VR.D,并且在AB中有n個(gè)斷言R(a,oi')和Q(a),C=VR.D表示關(guān)系R對(duì)概念D的值約束為概念C,R(a,oi')表示個(gè)體a和個(gè)體oi,通過(guò)關(guān)系R相關(guān)聯(lián)。4.根據(jù)2所述步驟(2)中對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估,采用基于WacheH.定義的啟發(fā)式①函數(shù)的改進(jìn)函數(shù)對(duì)概念E進(jìn)行評(píng)估,啟發(fā)式①函數(shù)的改進(jìn)函數(shù)具體包括O(A):l;①("A)-0,其中,是描述邏輯中的Negation運(yùn)算;①(CDD)=2+①(C)十①(D);①(CUD)-(J)+2+0(C)+0(D),其中(t)是當(dāng)前的①(E)的值;C)(3R.C)=2+(D(C)*n,其中3為描述邏輯中的存在量詞,3R.C表示關(guān)系R對(duì)概念C的存在約束,n是GCI中VR.D形式的表達(dá)式的個(gè)數(shù),GCI是概念包含公理的簡(jiǎn)稱;①(VR.C)-n+n*O(C)其中n是E當(dāng)中的存在量詞的數(shù)目以及GCI當(dāng)中3R.D形式的概念的個(gè)數(shù);依次使用上述啟發(fā)函數(shù),直到?jīng)]有啟發(fā)函數(shù)可用,評(píng)估終止。5.根據(jù)1所述步驟(2)中的推理方法具體包括如下步驟(l)記概念為C,概念C對(duì)應(yīng)的個(gè)體集合為CI,所有個(gè)體集合為O,RI為個(gè)體之間的角色關(guān)系集合,采用如下規(guī)則進(jìn)行計(jì)算,規(guī)則一如果c-cinc2,那么ci=ciinc2i;規(guī)則二如果C-C1UC2,那么CI=C1IUC2I;規(guī)則三如果C-,C1,那么CI-O-CII;規(guī)則四如果C=3R.C1,那么CI={xeOI存在一個(gè)yeO,滿足〈x,y^RI,而且yeCl仏規(guī)則五如果C-VR.Cl,那么CI-(xeOlxeO,并且xeVR.C2,并且C2GCl;(2)使用德摩根定律,將概念C轉(zhuǎn)換成-CinC2的形式,其中,C1是TB中的一個(gè)概念,此時(shí)獲取到C1I;(3)對(duì)于TB中的任意一個(gè)概念D,如果D的后繼都包含于概念C2,那么檢查DsC2,如果D的個(gè)體包含于CI,那么DeC21,檢查下一個(gè)概念;(4)如果DI-C21,那么DcxC2,其中CI和DI是推理中獲得的屬于概念C和D的個(gè)體;如果DIsC2I,并且DI,C2I的個(gè)體數(shù)大于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,那么推理結(jié)果用PsC2表示,對(duì)于DI,C2I的個(gè)體數(shù)小于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,采用?八(:丁++推理機(jī)進(jìn)行DsC2的判斷;(5)得到C2的所有子概念集合,C2的個(gè)體集合C2I為所有子概念的個(gè)體的總和,CI=ClinC2I。6.根據(jù)1所述步驟(4)中,對(duì)歩驟(2)中計(jì)算所得的結(jié)果進(jìn)行修正,記通過(guò)步驟(2)獲取的個(gè)體集合為(t),進(jìn)行TB,AB卜C(t)運(yùn)算。與
背景技術(shù):
相比,本發(fā)明具有的有益效果是-自適應(yīng)的返回精確推理結(jié)果還是近似推理結(jié)果,提高了推理的效率,降低了推理的時(shí)間復(fù)雜度。附圖是本發(fā)明的推理流程圖具體實(shí)施例方式本發(fā)明是用于語(yǔ)義搜索的推理步驟中的,下面將以官方網(wǎng)站上的數(shù)據(jù)作為具體實(shí)施例的待推理數(shù)據(jù),包括http:〃protege.cim3.net/file/pub/ontologies/travel/travel.owl,簡(jiǎn)稱travel,其概念禾口個(gè)體數(shù)為48個(gè);http:〃protege.cim3.net/file/pub/ontologies/wine/wine.owl,簡(jiǎn)禾爾wine&food,其概念和個(gè)體數(shù)為345個(gè);http:〃protege.cim3.net/file/pub/ontologies/not.galen/not-galen.owl,簡(jiǎn)禾爾not-galen,其概念和個(gè)體數(shù)為1977個(gè)?;谡Z(yǔ)義搜索的近似化推理方法的具體流程參照推理流程圖。l.該方法的步驟如下(l)設(shè)定閾值,對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,當(dāng)算法復(fù)雜度大于閾值時(shí),繼續(xù)執(zhí)行,否則,執(zhí)行步驟(3);(2)采用推理方法進(jìn)行推理,執(zhí)行步驟(4);(3)采用FaCt++推理機(jī)中的推理方法進(jìn)行推理,得到最終推理結(jié)果,結(jié)束;(4)對(duì)步驟(2)所得的推理結(jié)果進(jìn)行修正,把修正后的結(jié)果作為最終推理結(jié)果,結(jié)束。2.根據(jù)1所述步驟(l)中對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,具體包括如下步驟(1)對(duì)ABox推理的算法復(fù)雜度評(píng)估,首先,對(duì)ABox進(jìn)行Precompletion處理,并對(duì)Precompletion的算法復(fù)雜度進(jìn)行評(píng)估,ABox在經(jīng)過(guò)Precompletion處理之后,對(duì)ABox的推理就歸約到對(duì)TBox的推理;(2)對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估。3.根據(jù)2所述步驟(l)中對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估;TBox記為TB,ABox記為AB,概念記為C,個(gè)體記為a,用C(a)表示個(gè)體a屬于概念C,用函數(shù)T(C(a))表示對(duì)TB,ABI《(a)判定的時(shí)間估算,運(yùn)算符"|="為ABox—致檢查中分類優(yōu)化的重構(gòu)運(yùn)算符,對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估,依次按照如下步驟進(jìn)行算法評(píng)估,并且循環(huán)執(zhí)行如下步驟,直到AB沒有擴(kuò)展的規(guī)則為止,具體包括如下步驟(1)Precompletion過(guò)程的規(guī)則1為,AB分s{o:C}UAB,其時(shí)間復(fù)雜度為T(C(a))=0,其中U是描述邏輯中的Disjunction運(yùn)算符,"o:C"表示概念C中的所有個(gè)體o;(2)Precompletion過(guò)程的規(guī)則2為AB">fl{o:Cl,o:C2}UAB,其時(shí)間復(fù)雜度為T(C(a))=2+T(Cl(a))+T(C2(a)),其中fl是描述邏輯中的Conjunction運(yùn)算符,Cl,C2表示概念,且滿足C-C1DC2,T(Cl(a))和T(C2(a))將被遞歸計(jì)算;(3)Precompletion過(guò)程的規(guī)則3為AB^U{o:D}UAB,其時(shí)間復(fù)雜度為T(C(a))=2+T+T(Cl(a))+T(C2(a)),其中T表示當(dāng)前的T(C(a))的值,概念D,C,Cl,C2之間滿足OClUC2,D^C1或者D-C2,T(Cl(a))和T(C2(a))將被遞歸計(jì)算;(4)Precompletion過(guò)程的規(guī)則4為AB^V(o,:D)UAB,其時(shí)間復(fù)雜度為T(D(a))=n+n*T(D(a))+T(tc,(a)),其中V為描述邏輯中的全稱量詞,上述規(guī)則的1=1應(yīng)用必須滿足C-VR.D,并且在AB中有n個(gè)斷言R(a,oi,)和C;(a),C=VR.D表示關(guān)系R對(duì)概念D的值約束為概念C,R(a,oi')表示個(gè)體a和個(gè)體oi'通過(guò)關(guān)系R相關(guān)聯(lián)。4.根據(jù)2所述步驟(2)中對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估,采用基于WacheH.定義的啟發(fā)式0>函數(shù)的改進(jìn)函數(shù)對(duì)概念E進(jìn)行評(píng)估,啟發(fā)式巾函數(shù)的改進(jìn)函數(shù)具體包括0(A)=1;。OA)=0,其中,是描述邏輯中的Negation運(yùn)算;①(C(1D)=2+①(C)+①(D);①(CUD)-(i)+2+cD(C)+①(D),其中(b是當(dāng)前的①(E)的值;0(3R.C)=2+0(C)*n,其中3為描述邏輯中的存在量詞,3R.C表示關(guān)系R對(duì)概念C的存在約束,n是GCI中VR.D形式的表達(dá)式的個(gè)數(shù),GCI是概念包含公理的簡(jiǎn)稱;0(VR.C)=n+一①(C)其中n是E當(dāng)中的存在量詞的數(shù)目以及GCI當(dāng)中3R,D形式的概念的個(gè)數(shù);依次使用上述啟發(fā)函數(shù),直到?jīng)]有啟發(fā)函數(shù)可用,評(píng)估終止。5.根據(jù)1所述歩驟(2)中的推理方法具體包括如下步驟(1)記概念為C,概念C對(duì)應(yīng)的個(gè)體集合為CI,所有個(gè)體集合為O,RI為個(gè)體之間的角色關(guān)系集合,采用如下規(guī)則進(jìn)行計(jì)算,規(guī)則一如果c:cinc2,那么ci=ciinc2i;規(guī)則二如果C-C1UC2,那么CI=C1IUC2I;規(guī)則三如果O,Cl,那么OO-CII;規(guī)則四如果C-SR.Cl,那么CI={xeO|存在一個(gè)yeO,滿足〈x,y^RI,而且yeClI〉;規(guī)則五如果C-VR.Cl,那么CI={xeOIxeO,并且xeVR.C2,并且C2GC1;(2)使用德摩根定律,將概念C轉(zhuǎn)換成-CinC2的形式,其中,C1是TB中的一個(gè)概念,此時(shí)獲取到C1I;(3)對(duì)于TB中的任意一個(gè)概念D,如果D的后繼都包含于概念C2,那么檢査D-C2,如果D的個(gè)體包含于CI,那么DsC21,檢査下一個(gè)概念;(4)如果DIcrC21,夷P么DcC2,其中CI和DI是推理中獲得的屬于概念C和D的個(gè)體;如果Dl£C2I,并且DI,C2I的個(gè)體數(shù)大于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,那么推理結(jié)果用D=C2表示,對(duì)于DI,C21的個(gè)體數(shù)小于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,采用?八(3丁++推理機(jī)進(jìn)行DeC2的判斷;(5)得到C2的所有子概念集合,C2的個(gè)體集合C2I為所有子概念的個(gè)體的總和,ci=cnnc2i。6.根據(jù)1所述步驟(4)中,對(duì)步驟(2)中計(jì)算所得的結(jié)果進(jìn)行修正,記通過(guò)步驟(2)獲取的個(gè)體集合為(U,進(jìn)行TB,AB卜C(t)運(yùn)算。三個(gè)實(shí)施例實(shí)施結(jié)果如表l,表2所示。表1為近似化推理的個(gè)體獲取召回率,召回率是檢索出的相關(guān)個(gè)體和庫(kù)中所有的相關(guān)個(gè)體的比率,是用戶衡量檢索系統(tǒng)查全率的。由表1可知三個(gè)具體是實(shí)施例的召回率針對(duì)n、U、3運(yùn)算符都是比較高的,對(duì)V運(yùn)算符來(lái)說(shuō)召回率較低。但是,V運(yùn)算符組成的是復(fù)雜的表達(dá)式,而在現(xiàn)有的網(wǎng)絡(luò)搜索中,關(guān)鍵字大多為兩至三個(gè),多為簡(jiǎn)單查詢,因此,在語(yǔ)義化的搜索中,雖然個(gè)別復(fù)雜表達(dá)式的召回率低,絕大多數(shù)簡(jiǎn)單査詢召回率高,是符合實(shí)際需要的。表l近似化推理的個(gè)體獲取的召回率<table>tableseeoriginaldocumentpage11</column></row><table>表2為近似化推理的計(jì)算結(jié)果,?3"++為目前流行的語(yǔ)義推理工具,從表2,可知采用近似化推理方法,進(jìn)行測(cè)試判斷的次數(shù)明顯小于采用?^1++推理的測(cè)試判斷次數(shù),并且,采用近似化推理方法的推理時(shí)間也明顯小于釆用Fact++推理的時(shí)間,同時(shí)錯(cuò)誤率也控制在比較小的范圍內(nèi)。表2近似化推理的計(jì)算結(jié)果<table>tableseeoriginaldocumentpage12</column></row><table>總之,本發(fā)明的試驗(yàn)實(shí)施的實(shí)施例是成功的,實(shí)現(xiàn)了發(fā)明目的。權(quán)利要求1.一種基于語(yǔ)義搜索的推理方法,其特征在于該方法的步驟如下(1)設(shè)定閾值,對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,當(dāng)算法復(fù)雜度大于閾值時(shí),繼續(xù)執(zhí)行,否則,執(zhí)行步驟(3);(2)采用推理方法進(jìn)行推理,執(zhí)行步驟(4);(3)采用Fact++推理機(jī)中的推理方法進(jìn)行推理,得到最終推理結(jié)果,結(jié)束;(4)對(duì)步驟(2)所得的推理結(jié)果進(jìn)行修正,把修正后的結(jié)果作為最終推理結(jié)果,結(jié)束。2.根據(jù)權(quán)利要求1所述的一種基于語(yǔ)義搜索的推理方法,其特征在于所述的步驟(l)中對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,具體包括如下步驟(1)對(duì)ABox推理的算法復(fù)雜度評(píng)估,首先,對(duì)ABox進(jìn)行Precompletion處理,并對(duì)Precompletion的算法復(fù)雜度進(jìn)行評(píng)估,ABox在經(jīng)過(guò)Precompletion處理之后,對(duì)ABox的推理就歸約到對(duì)TBox的推理;(2)對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估。3.根據(jù)權(quán)利要求2所述的一種基于語(yǔ)義搜索的推理方法,其特征在于所述的步驟(l)中對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估;TBox記為TB,ABox記為AB,概念記為C,個(gè)體記為a,用C(a)表示個(gè)體a屬于概念C,用函數(shù)T(C(a))表示對(duì)TB,AB卜C(a)判定的時(shí)間估算,運(yùn)算符"|="為ABox一致檢查中分類優(yōu)化的重構(gòu)運(yùn)算符,對(duì)ABox的Precompletion處理過(guò)程進(jìn)行算法復(fù)雜度評(píng)估,依次按照如下步驟進(jìn)行算法評(píng)估,并且循環(huán)執(zhí)行如下步驟,直到AB沒有擴(kuò)展的規(guī)則為止,具體包括如下步驟(1)Precompletion過(guò)程的規(guī)則1為,AB》s{o:C}UAB,其時(shí)間復(fù)雜度為T(C(a))=0,其中U是描述邏輯中的Disjunction運(yùn)算符,"o:C"表示概念C中的所有個(gè)體o;(2)Precompletion過(guò)程的規(guī)則2為AB^n{o:Cl,o:C2}UAB,其時(shí)間復(fù)雜度為T(C(a))=2+T(Cl(a))+T(C2(a)),其中fl是描述邏輯中的Conjunction運(yùn)算符,Cl,C2表示概念,且滿足C-CinC2,T(Cl(a))和T(C2(a))將被遞歸計(jì)算;(3)Precompletion過(guò)程的規(guī)則3為AB>>U{o:D}UAB,其時(shí)間復(fù)雜度為T(C(a))=2+T+T(Cl(a))+T(C2(a)),其中T表示當(dāng)前的T(C(a))的值,概念D,C,Cl,C2之間滿足OClUC2,D-C1或者DK:2,T(Cl(a))禾卩T(C2(a))將被遞歸計(jì)算;(4)Precompletion過(guò)程的規(guī)則4為AB今V{o,:D}UAB,其時(shí)間復(fù)雜度為T(D(a))=n+n*T(D(a))+T(tc,(a)),其中V為描述邏輯中的全稱量詞,上述規(guī)則的,'=1應(yīng)用必須滿足C-VR.D,并且在AB中有n個(gè)斷言R(a,oi,)和C;(a),C=VR.D表示關(guān)系R對(duì)概念D的值約束為概念C,R(a,oi')表示個(gè)體a和個(gè)體oi,通過(guò)關(guān)系R相關(guān)聯(lián)。4.根據(jù)權(quán)利要求2所述的一種基于語(yǔ)義搜索的推理方法,其特征在于,所述的步驟(2)中對(duì)以tableaux算法為基礎(chǔ)的TBox推理進(jìn)行算法復(fù)雜度評(píng)估,采用基于WacheH.定義的啟發(fā)式O函數(shù)的改進(jìn)函數(shù)對(duì)概念E進(jìn)行評(píng)估,啟發(fā)式O函數(shù)的改進(jìn)函數(shù)具體包括0)(A)=1;O("A)=0,其中,是描述邏輯中的Negation運(yùn)算;①(C門D)=2+①(C)+①(D);0(cUd)=4)+2+0(C)+0(D),其中(t)是當(dāng)前的①(e)的值;0(3R.C)=2+0(C)*n,其中3為描述邏輯中的存在量詞,3RX表示關(guān)系R對(duì)概念C的存在約束,n是GCI中VR.D形式的表達(dá)式的個(gè)數(shù),GCI是概念包含公理的簡(jiǎn)稱;①(VR.C)=n+n*cD(Q其中n是E當(dāng)中的存在量詞的數(shù)目以及GCI當(dāng)中3R.D形式的概念的個(gè)數(shù);依次使用上述啟發(fā)函數(shù),直到?jīng)]有啟發(fā)函數(shù)可用,評(píng)估終止。5.根據(jù)權(quán)利要求1所述的一種基于語(yǔ)義搜索的推理方法,其特征在于,所述的步驟(2)中的推理方法具體包括如下步驟(l)記概念為C,概念C對(duì)應(yīng)的個(gè)體集合為CI,所有個(gè)體集合為O,RI為個(gè)體之間的角色關(guān)系集合,采用如下規(guī)則進(jìn)行計(jì)算,規(guī)則一如果c-cinc2,那么CK:iinc2i;規(guī)則二如果C-C1UC2,那么CI=C1IUC2I;規(guī)則三如果C-,Cl,那么CI-O-CII;規(guī)則四如果(:=311.<:1,那么CI={xeO|存在一個(gè)yeO,滿足〈x,y^RI,而且yeClI);規(guī)則五如果C-VR.Cl,那么CI={xeOIXeO,并且xeVR.C2,并且C2^C1;(2)使用德摩根定律,將概念C轉(zhuǎn)換成-CinC2的形式,其中,C1是TB中的一個(gè)概念,此時(shí)獲取到C1I;(3)對(duì)于TB中的任意一個(gè)概念D,如果D的后繼都包含于概念C2,那么檢查DcC2,如果D的個(gè)體包含于CI,那么DsC21,檢查下一個(gè)概念;(4)如果DI(zC21,夷,么DczC2,其中CI和DI是推理中獲得的屬于概念C和D的個(gè)體;如果DIsC2I,并且DI,C2I的個(gè)體數(shù)大于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,那么推理結(jié)果用DeC2表示,對(duì)于DI,C21的個(gè)體數(shù)小于ABox中每個(gè)概念擁有個(gè)體數(shù)的平均值,采用?入<:丁++推理機(jī)進(jìn)行D=C2的判斷;(5)得到C2的所有子概念集合,C2的個(gè)體集合C2I為所有子概念的個(gè)體的總和,ci=ciinc2i。6.根據(jù)權(quán)利要求1所述的一種基于語(yǔ)義搜索的推理方法,其特征在于,所述的步驟(4)中,權(quán)利要求1所述步驟(2)中計(jì)算所得的結(jié)果進(jìn)行修正,記通過(guò)權(quán)利要求1所述步驟(2)獲取的個(gè)體集合為{0,進(jìn)行TB,AB卜C(t)運(yùn)算。全文摘要本發(fā)明公開了一種基于語(yǔ)義搜索的推理方法。該方法的步驟如下(1)設(shè)定閾值,對(duì)ABox和TBox的推理進(jìn)行算法復(fù)雜度評(píng)估,當(dāng)算法復(fù)雜度大于閾值時(shí),繼續(xù)執(zhí)行,否則,執(zhí)行步驟(3);(2)采用推理方法進(jìn)行推理,執(zhí)行步驟(4);(3)采用Fact++推理機(jī)中的推理方法進(jìn)行推理,得到最終推理結(jié)果;(4)對(duì)步驟(2)所得的推理結(jié)果進(jìn)行修正,把修正后的結(jié)果作為最終推理結(jié)果。本發(fā)明能夠自適應(yīng)的返回精確推理結(jié)果還是近似推理結(jié)果,提高了推理的效率,降低了推理的時(shí)間復(fù)雜度。文檔編號(hào)G06F17/30GK101281533SQ20081006201公開日2008年10月8日申請(qǐng)日期2008年5月21日優(yōu)先權(quán)日2008年5月21日發(fā)明者芳唐,李山亭,銘蔡,趙國(guó)榮,剛陳申請(qǐng)人:浙江大學(xué)