一種基于屬性圖中的冰山頂點(diǎn)集的查詢方法
【專利摘要】本發(fā)明公開一種基于屬性圖中的冰山頂點(diǎn)集的查詢方法,該方法將冰山頂點(diǎn)集查詢問題定義成屬性圖模型,從全局角度求解屬性圖中的冰山頂點(diǎn)集,通過廣度優(yōu)先搜索與前向聚合等策略獲取可行解空間。本發(fā)明能夠形成解決全局情況下屬性圖的冰山頂點(diǎn)集方案,使屬性圖中的冰山頂點(diǎn)集查詢問題在解決過程中在時間和空間復(fù)雜度上得到優(yōu)化,并避免早熟收斂。
【專利說明】
一種基于屬性圖中的冰山頂點(diǎn)集的查詢方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及屬性圖中冰山頂點(diǎn)集的求解方法,主要利用廣度優(yōu)先搜索與前向聚合 等從全局角度求解屬性圖中的冰山頂點(diǎn)集,屬于計算機(jī)技術(shù)、信息技術(shù)、社交網(wǎng)絡(luò)、數(shù)據(jù)挖 掘交叉技術(shù)應(yīng)用領(lǐng)域。
【背景技術(shù)】
[0002] 圖是描述現(xiàn)實(shí)世界各類復(fù)雜系統(tǒng)的一種普適模型,且許多實(shí)際應(yīng)用中的圖是大規(guī) 模的。近些年隨著信息技術(shù)的發(fā)展,現(xiàn)實(shí)世界的圖通常包含豐富的屬性信息,產(chǎn)生了一種新 類型的圖一一屬性圖。
[0003] 在無向?qū)傩詧D中,如何根據(jù)給定的查詢屬性、評分閾值及鄰近相似度閾值,找到所 有符合條件的冰山頂點(diǎn),成為廣泛研究的課題。本發(fā)明主要采用廣度優(yōu)先搜索與前向聚合, 從全局角度求解屬性圖中的冰山頂點(diǎn)集。廣度優(yōu)先搜索,是一種圖形搜索算法,旨在系統(tǒng)地 展開并檢查圖中的所有節(jié)點(diǎn),以找尋結(jié)果。不同于傳統(tǒng)關(guān)系型數(shù)據(jù)庫中的聚合函數(shù),前向聚 合為屬性圖中的每個頂點(diǎn)高效計算其屬性得分。
[0004] 本發(fā)明能夠形成解決全局情況下屬性圖的冰山頂點(diǎn)集方案,使屬性圖中的冰山頂 點(diǎn)集查詢問題在解決過程中在時間和空間復(fù)雜度上得到優(yōu)化,并避免早熟收斂。本發(fā)明給 出一種基于屬性圖模型的冰山頂點(diǎn)集查詢方法,該方法將冰山頂點(diǎn)集查詢問題定義成屬性 圖模型,從全局角度求解屬性圖中的冰山頂點(diǎn)集,通過廣度優(yōu)先搜索與前向聚合等策略獲 取可行解空間。
【發(fā)明內(nèi)容】
[0005] 技術(shù)問題:本發(fā)明要解決一種基于屬性圖中的冰山頂點(diǎn)集的查詢方法,該問題是 指給定一個各頂點(diǎn)注有相應(yīng)屬性的圖,即屬性圖,并給定查詢屬性、評分閾值和鄰近相似度 閾值,從屬性圖里所有頂點(diǎn)中選擇部分頂點(diǎn)構(gòu)成冰山頂點(diǎn)集,使得這些頂點(diǎn)集中每個頂點(diǎn) 的屬性得分大于查詢屬性對應(yīng)的評分閾值。
[0006] 技術(shù)方案:所述屬性圖中冰山頂點(diǎn)集的查詢問題描述如下:設(shè)給定一個屬性圖G = (V,E,A),再給定查詢屬性q、評分閾值Θ及鄰近相似度〇,基于屬性圖模型的冰山頂點(diǎn)集查 詢方法找到所有屬性評分大于評分閾值Θ的頂點(diǎn)。我們假定這些頂點(diǎn)組織在一個屬性圖G = (V,E, A)中,每個頂點(diǎn)看作待查詢的對象,每個頂點(diǎn)都具有0個或者多個屬性,頂點(diǎn)度數(shù)定義 為和該頂點(diǎn)相關(guān)聯(lián)的邊數(shù),每條邊的權(quán)值均相等,任意兩頂點(diǎn)之間的距離定義為通過兩頂 點(diǎn)所需的最少邊數(shù),其中距離小表明兩個頂點(diǎn)之間在空間上更相鄰。我們的目標(biāo)是從所有 頂點(diǎn)中尋找到滿足篩選條件的所有頂點(diǎn),并將其加入解空間,使得最終的每個頂點(diǎn)對應(yīng)的 屬性評分均大于評分閾值。
[0007] 本發(fā)明所述的基于屬性圖模型的冰山頂點(diǎn)集查詢方法,將網(wǎng)絡(luò)中的查詢問題定義 成屬性圖模型,以及采用廣度搜索優(yōu)先與前向聚合等獲得解空間。
[0008] 本發(fā)明所述的基于屬性圖模型的冰山頂點(diǎn)集查詢方法包括以下步驟:
[0009] 步驟1)根據(jù)用戶輸入的信息,構(gòu)建網(wǎng)絡(luò)中的冰山頂點(diǎn)集查詢問題的屬性圖模型G =以3,4);所述¥是頂點(diǎn)集4是邊集4是頂點(diǎn)集¥到屬性集〇的映射;所述映射是指兩個元 素集之間元素相互對應(yīng)的關(guān)系;所述屬性圖模型G=(V,E,A)在建立后,任意頂點(diǎn)的度數(shù)定 義為與該頂點(diǎn)相關(guān)聯(lián)的邊數(shù),具體步驟如下:
[0010] 步驟11)用戶輸入包含查詢屬性、頂點(diǎn)集及每個頂點(diǎn)對應(yīng)的屬性集,給定評分閾值 及鄰近相似度閾值;用戶輸入的查詢屬性記為q,頂點(diǎn)集記為V,屬性集記為Q,頂點(diǎn)集V到屬 性集Q的映射記為A,評分閾值記為Θ,鄰近相似度閾值記為所述α :κ-μ」(£)),〇=Ι^ι, q2,…,qn},qi,q2,…,qn均是屬性,η表示屬性集Q中屬性的個數(shù),Ρ:表示冪集;所述映射是指 兩個元素集之間元素相互對應(yīng)的關(guān)系。
[0011] 步驟12)將頂點(diǎn)集V中所有頂點(diǎn)看作屬性圖模型G =( V,Ε,A)中的頂點(diǎn);
[0012]步驟13)將頂點(diǎn)u和頂點(diǎn)v之間的路徑看作屬性圖模型G=(V,E,A)兩頂點(diǎn)之間的 弧,兩頂點(diǎn)之間的距離作為頂點(diǎn)u和頂點(diǎn)v之間弧的權(quán)值,任意兩頂點(diǎn)之間的距離4?; v)定 義為通過兩頂點(diǎn)所需的最少邊數(shù);所述# 為屬性圖模型G =( V,E,A)中頂點(diǎn)u和頂點(diǎn)v最 短路的權(quán)值,且頂點(diǎn)間的距離滿足三角不等式;所述u,vev;所述三角不等式是指在三角形 中,必然有兩邊之和大于第三邊;
[0013]步驟14)用Pu表示頂點(diǎn)u所代表的頂點(diǎn)具有的屬性集,當(dāng)Pjep u,頂點(diǎn)u具有屬性Pj, 反之當(dāng)0€時,頂點(diǎn)U不具有屬性Pj,所述Pj是指第j個屬性,K j;
[0014] 步驟2)采用廣度優(yōu)先搜索算法,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型上的樞紐 頂點(diǎn)集VP,具體步驟如下:
[0015] 步驟21)對頂點(diǎn)集V中每個未被訪問的頂點(diǎn)V,使用廣度優(yōu)先搜索算法獲得該頂點(diǎn) 的2跳鄰域N2(v);所述2跳鄰域N 2(v)是與頂點(diǎn)v距離為2的所有頂點(diǎn)構(gòu)成的集合;所述廣度優(yōu) 先搜索算法,簡稱BFS,是一種圖形搜索算法,該算法是從根節(jié)點(diǎn)開始,沿著樹的寬度遍歷樹 的節(jié)點(diǎn),如果所有節(jié)點(diǎn)均被訪問,則算法終止;
[0016] 步驟22)對2跳鄰域N2(v)中每個未被訪問的頂點(diǎn)u,檢查NKuWPNKv)是否滿足鄰 近相似度σ,即σ且σ ν多σ ;若滿足鄰近相似度,則將頂點(diǎn)v加入樞紐頂點(diǎn)集,同時標(biāo)記頂點(diǎn) u和ν已被訪問;所述〇u = |Ni(u) ΠΝι(ν) |/|Ni(u) I,〇v= |Ni(u) ΠΝι(ν) |/|Νι(ν) I,所述 |Νι (u) I,是指頂點(diǎn)u的1跳鄰域中所有頂點(diǎn)的個數(shù),同理|NKv) I,是指頂點(diǎn)v的1跳鄰域中所有 頂點(diǎn)的個數(shù);所述iNKu) ΠΝΚν) |,是指頂點(diǎn)u的1跳鄰域與ν的1跳鄰域相交后所得頂點(diǎn)集合 中頂點(diǎn)的個數(shù);所述頂點(diǎn)ν的1跳鄰域是與頂點(diǎn)ν距離為1的所有頂點(diǎn)構(gòu)成的集合;所述頂點(diǎn)u 的1跳鄰域是與頂點(diǎn)u距離為1的所有頂點(diǎn)構(gòu)成的集合;
[0017] 步驟23)經(jīng)過步驟21)~步驟22),求得屬性圖G = (V,E,A)的樞紐頂點(diǎn)集VP;
[0018] 步驟3)采用前向聚合,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型G=(V,E,A)上的解 空間,具體步驟如下:
[0019] 步驟31)對樞紐頂點(diǎn)集VP中的每個頂點(diǎn)ν',求取該頂點(diǎn)對應(yīng)的近似PageRank向量 爲(wèi),所述瓦=;若頂點(diǎn)Vl和頂點(diǎn)w之間存在邊,則%: = ,反之心=0;所述Μ是 指屬性圖G=(V,E,A)的過渡矩陣;所述 <是頂點(diǎn)^的對應(yīng)的頂點(diǎn)度數(shù);所述頂點(diǎn)度數(shù),是指 和該頂點(diǎn)相關(guān)聯(lián)的邊數(shù);
[0020] 步驟32)根據(jù)以上步驟,使甩足并結(jié)合前向聚合方法,求得頂點(diǎn)/對應(yīng)的q屬性評 分scoreqb'),所述該評分等于該頂點(diǎn)的PageRank向量中對應(yīng)黑色頂點(diǎn)的條目之和;所述 黑色頂點(diǎn),是指包含查詢屬性q的頂點(diǎn);所述前向聚合方法,是指一種為屬性圖中的每個頂 點(diǎn)計算其屬性得分的方法;
[0021] 步驟33)如果頂點(diǎn)^對應(yīng)的q屬性評分scored^ )大于評分閾值Θ,則將該頂點(diǎn)加 入解空間Solution;
[0022] 步驟34)檢查樞紐頂點(diǎn)集%中的每個頂點(diǎn)是否均已被遍歷過;若沒有,重復(fù)步驟 31)~步驟33);
[0023]步驟35)確定最終解空間Solute,該解空間中包含所有的冰山頂點(diǎn)集。
[0024] 有益效果:本發(fā)明利用廣度優(yōu)先搜索與前向聚合形成高效的冰山頂點(diǎn)查詢方法。 具體體現(xiàn)如下有益效果:
[0025] 1)本發(fā)明提供一種基于屬性圖模型的冰山頂點(diǎn)集查詢方法,其完整的方法過程包 括將網(wǎng)絡(luò)中的冰山頂點(diǎn)集查詢問題定義成屬性圖模型,以及采用廣度優(yōu)先搜索與前向聚合 獲得解空間。
[0026] 2)本發(fā)明中所述建模過程中,提供一個或一套較為抽象的圖模型,能夠?qū)?shí)際問 題中的相關(guān)求解方法轉(zhuǎn)化為數(shù)學(xué)化的模型形式。
[0027] 3)本發(fā)明中所述模型從全局角度求解屬性圖中的所有冰山頂點(diǎn),使冰山頂點(diǎn)集查 詢問題最終能夠得到所有滿足條件的頂點(diǎn)。
[0028] 4)本發(fā)明采用廣度優(yōu)先搜索算法與向前聚合方法,從提前篩選后的樞紐頂點(diǎn)集中 查找冰山頂點(diǎn),從而有效降低算法時間復(fù)雜和空間復(fù)雜度。
【附圖說明】
[0029] 圖1是基于屬性圖模型的冰山頂點(diǎn)集查詢方法對應(yīng)的流程圖。
[0030] 圖2是屬性圖模型實(shí)例。
【具體實(shí)施方式】
[0031] 下面對本發(fā)明附圖的某些實(shí)施例作更加詳細(xì)的描述。
[0032] 根據(jù)附圖1,本發(fā)明【具體實(shí)施方式】為:
[0033] 1).將網(wǎng)絡(luò)中的冰山頂點(diǎn)集查詢問題定義成屬性圖模型。
[0034] 11).輸入包含一組屬性的查詢屬性集、頂點(diǎn)集及每個頂點(diǎn)對應(yīng)的屬性集等,構(gòu)建 屬性圖模型,同時給定評分閾值及鄰近相似度閾值。
[0035]如圖2所示,在屬性圖模型G=(V,E,A)中,頂點(diǎn)集V中一共有18個頂點(diǎn),且V={a,b, c,d,e,f,g,h,i,j,k,l,m,o,p,q,u,w},查詢屬性q={Q}。其中,在頂點(diǎn)集V中具有查詢屬性 Q的頂點(diǎn)共有8個,分別是{b,c,d,g,i,m,p,u,w},其他頂點(diǎn)均不具有查詢屬性。
[0036] 設(shè)定評分閾值Θ = 5.0,鄰近相似度閾值σ = 〇. 49。
[0037] 12).將頂點(diǎn)集V= {a,b,c,d,e,f,g,h, i,j,k,l,m,o,p,q,u,w}中所有頂點(diǎn)看作屬 性圖模型G=(V,E,A)中的頂點(diǎn)。
[0038] 所述屬性圖模型G=(V,E,A)在建立后,任意兩個頂點(diǎn)之間的最短路都有相應(yīng)的權(quán) 值,定義為通過兩點(diǎn)所需的最少邊數(shù)。
[0039] 2).采用廣度優(yōu)先搜索算法,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型上的樞紐頂 點(diǎn)集V P。具體步驟如下:
[0040] 21).對于頂點(diǎn)集 V= {a,b,c,d,e,f,g,h,i,j,k,l,m,o,p,q,u,w}中的每個未被訪 問的頂點(diǎn),使用廣度優(yōu)先搜索算法獲得該頂點(diǎn)的2跳鄰域N 2(v)。其中,
[0041] 對于頂點(diǎn)a,N2(a) = {b,c,g,u};對于頂點(diǎn)b,N2(b) = {a,c,g,u};對于頂點(diǎn)c,N2(c) = {a,b,d,e,g,u};對于頂點(diǎn) d,N2(d) = {c,e,f,g,q,u};對于頂點(diǎn) e,N2(e) = {c,d,f,g,p,q, u};對于頂點(diǎn) f,N2(f) = {d,e,g,q};對于頂點(diǎn) g,N2(g) = {a,b,c,d,e,f,q,u};對于頂點(diǎn) h,N2 (h) = {i,j,1,m,ο,p,w};對于頂點(diǎn)i,N2(i) = {h,j,1,ο,p,w};對于頂點(diǎn) j,N2(j) = {h,i,1,k, w};對于頂點(diǎn)k,N2(k) = { j,k,l,w};對于頂點(diǎn)l,N2(l) = {h,i, j,k,l,m,w};對于頂點(diǎn)m,N2(m) ={11,1^,1,0,'\¥};對于頂點(diǎn)0,吣(0) = {114,]_,111,口,9,'\¥};對于頂點(diǎn)口,吣(口)= {6,114,0,9};對 于頂點(diǎn) q,N2(q) = {d,e,f,g,o,p};對于頂點(diǎn) u,N2(u) = {a,b,c,d,e,g};對于頂點(diǎn) w,N2(w) = {h,i,j,k,l,m,o}〇
[0042] 22).對2跳鄰域N2(v)中每個未被訪問的頂點(diǎn)u,檢查Ni(u)和他(v)是否滿足鄰近相 似度〇,即o u>o且σν彡〇。若滿足鄰近相似度,則將頂點(diǎn)v加入樞紐頂點(diǎn)集,同時標(biāo)記頂點(diǎn)u和v 已被訪問。其中,
[0043] 第一次訪問頂點(diǎn)a,a的2跳鄰域N2(a) = {b,c,g,u},1跳鄰域Ni(a) = {u},遍歷Ν2 (8) = {13,(3,8,11}中的頂點(diǎn):對于頂點(diǎn)13,13的1跳鄰域1'11(13) = {11}。從而〇£1=1,01)=1,滿足0£1> 〇,〇 1)>〇;對于頂點(diǎn)(3,(3的1跳鄰域沁((3) = {(1,11}。從而〇£1=1,〇。=1/2,滿足〇£1>〇,〇。>〇 ;對于 頂點(diǎn)g,g的1跳鄰域%(>?) =彳丨。從而〇a=l,〇g=l/2,滿足〇3>〇,〇8>〇 ;對于頂點(diǎn)11,11的1跳 鄰域氣(《) = {?,/'<?,}"。從而0£1=1,011=1/2,滿足〇£1>0,0 11>0(^2(&) = {13,(3 4,11}中的頂點(diǎn)遍 歷完畢,并將頂點(diǎn)a加入樞紐頂點(diǎn)集Vp中,并給頂點(diǎn)a打上訪問標(biāo)記,此時樞紐頂點(diǎn)集Vp = {a} 〇
[0044] 同理,繼續(xù)訪問頂點(diǎn)集V={a,b,c,d,e,f,g,h,i,j,k,l,m,o,p,q,u,w}中的其他未 標(biāo)記的頂點(diǎn),所有頂點(diǎn)均被標(biāo)記。
[0045] 23).經(jīng)過步驟21)~步驟22),求得屬性圖G= (V,E,A)的樞紐頂點(diǎn)集VP。,最終得到 樞紐頂點(diǎn)集VP= {a,b,c,d,e,g,o,u,w}。
[0046] 3).采用前向聚合,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型G=(V,E,A)上的解空 間。具體步驟如下:
[0047] 31).對樞紐頂點(diǎn)集¥[)={3,13,(3,(1,6,8,0,11,'\¥}中的每個頂點(diǎn)/£¥ 1),求取該頂點(diǎn)對 應(yīng)的近似PageRank向量化,其中九_=(1-?:·)Λ取.....若頂點(diǎn)Vi和頂點(diǎn)Vj之間存在邊,貝1J = 1 / , s反之姐」=0。其中,
[0048] 對于頂點(diǎn)a,其頂點(diǎn)度數(shù)為1;對于頂點(diǎn)b,其頂點(diǎn)度數(shù)為1;
[0049] 對于頂點(diǎn)c,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)d,其頂點(diǎn)度數(shù)為2;
[0050]對于頂點(diǎn)e,其頂點(diǎn)度數(shù)為4;對于頂點(diǎn)f,其頂點(diǎn)度數(shù)為1;
[0051]對于頂點(diǎn)g,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)h,其頂點(diǎn)度數(shù)為3;
[0052]對于頂點(diǎn)i,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)j,其頂點(diǎn)度數(shù)為2;
[0053] 對于頂點(diǎn)k,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)1,其頂點(diǎn)度數(shù)為3;
[0054] 對于頂點(diǎn)m,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)〇,其頂點(diǎn)度數(shù)為3;
[0055] 對于頂點(diǎn)p,其頂點(diǎn)度數(shù)為2;對于頂點(diǎn)q,其頂點(diǎn)度數(shù)為2;
[0056] 對于頂點(diǎn)u,其頂點(diǎn)度數(shù)為4;對于頂點(diǎn)w,其頂點(diǎn)度數(shù)為4。
[0057] 32).根據(jù)以上步驟,使用九并結(jié)合前向聚合方法,求得頂點(diǎn)^對應(yīng)的q屬性評分 scoreql^v'),其中該評分等于該頂點(diǎn)的PageRank向量中對應(yīng)黑色頂點(diǎn)的條目之和。最終得 到樞紐頂點(diǎn)集VP= {a,b,c,d,e,g,o,u,w}中每個頂點(diǎn)對應(yīng)的屬性得分如下:
[0058] 對于頂點(diǎn)a,其對應(yīng)的q屬性評分scoreq(a) = 3.79;
[0059] 對于頂點(diǎn)b,其對應(yīng)的q屬性評分scoreq(b) = 2 · 93;
[0060] 對于頂點(diǎn)c,其對應(yīng)的q屬性評分scoreq(c) = 5.86;
[0061 ] 對于頂點(diǎn)d,其對應(yīng)的q屬性評分scoreq(d) = 2.93;
[0062] 對于頂點(diǎn)e,其對應(yīng)的q屬性評分scoreq(e) = 4.96;
[0063 ] 對于頂點(diǎn)g,其對應(yīng)的q屬性評分s coreq (g) = 3 · 79;
[0064] 對于頂點(diǎn)〇,其對應(yīng)的q屬性評分scoreq(o) = 5.00;
[0065] 對于頂點(diǎn)u,其對應(yīng)的q屬性評分scoreq(u) = 7.07;
[0066] 對于頂點(diǎn)w,其對應(yīng)的q屬性評分scoreq(w) = 2.93。
[0067] 33).如果頂點(diǎn)ν'對應(yīng)的q屬性評分scoreqb')大于評分閾值Θ,則將該頂點(diǎn)加入解 空間Solute。其中頂點(diǎn)c與u對應(yīng)的q屬性得分均大于評分閾值Θ = 5.0。
[0068] 34).確定最終解空間Sca-F {c,u},該解空間中包含目標(biāo)冰山頂點(diǎn)集。
【主權(quán)項(xiàng)】
1. 一種基于屬性圖中的冰山頂點(diǎn)集的查詢方法,其特征在于該方法包括W下步驟: 步驟1)根據(jù)用戶輸入的信息,構(gòu)建網(wǎng)絡(luò)中的冰山頂點(diǎn)集查詢問題的屬性圖模型G=(v, E,A);所述V是頂點(diǎn)集,E是邊集,A是頂點(diǎn)集V到屬性集Q的映射;所述映射是指兩個元素集之 間元素相互對應(yīng)的關(guān)系;所述屬性圖模型G=(V,E,A)在建立后,任意頂點(diǎn)的度數(shù)定義為與 該頂點(diǎn)相關(guān)聯(lián)的邊數(shù),具體步驟如下: 步驟11)用戶輸入包含查詢屬性、頂點(diǎn)集及每個頂點(diǎn)對應(yīng)的屬性集,給定評分闊值及鄰 近相似度闊值;用戶輸入的查詢屬性記為q,頂點(diǎn)集記為V,屬性集記為Q,頂點(diǎn)集V到屬性集Q 的映射記為A,評分闊值記為Θ,鄰近相似度闊值記為0 ;所述A:レ'一> ,Q = {qi,Q2,…, qn},qi,q2,…,qn均是屬性,η表示屬性集Q中屬性的個數(shù),婷素示幕集;所述映射是指兩個元 素集之間元素相互對應(yīng)的關(guān)系。 步驟12)將頂點(diǎn)集V中所有頂點(diǎn)看作屬性圖模型G=(V,E,A)中的頂點(diǎn); 步驟13)將頂點(diǎn)U和頂點(diǎn)V之間的路徑看作屬性圖模型G=(V,E,A)兩頂點(diǎn)之間的弧,兩 頂點(diǎn)之間的距離作為頂點(diǎn)U和頂點(diǎn)V之間弧的權(quán)值,任意兩頂點(diǎn)之間的距離d(u,v)定義為通 過兩頂點(diǎn)所需的最少邊數(shù);所述d(u,v)為屬性圖模型G=(V,E,A)中頂點(diǎn)U和頂點(diǎn)V最短路的 權(quán)值,且頂點(diǎn)間的距離滿足Ξ角不等式;所述u,vev;所述Ξ角不等式是指在Ξ角形中,必 然有兩邊之和大于第Ξ邊; 步驟14)用Pu表示頂點(diǎn)U所代表的頂點(diǎn)具有的屬性集,當(dāng)pj e Pu,頂點(diǎn)U具有屬性pj,反之 當(dāng)巧€別寸,頂點(diǎn)U不具有屬性W,所述P堤指第j個屬性, 步驟2)采用廣度優(yōu)先捜索算法,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型上的樞紐頂點(diǎn) 集Vp,具體步驟如下: 步驟21)對頂點(diǎn)集V中每個未被訪問的頂點(diǎn)V,使用廣度優(yōu)先捜索算法獲得該頂點(diǎn)的2跳 鄰域化(V);所述2跳鄰域化(V)是與頂點(diǎn)V距離為2的所有頂點(diǎn)構(gòu)成的集合;所述廣度優(yōu)先捜 索算法,簡稱BFS,是一種圖形捜索算法,該算法是從根節(jié)點(diǎn)開始,沿著樹的寬度遍歷樹的節(jié) 點(diǎn),如果所有節(jié)點(diǎn)均被訪問,則算法終止; 步驟22)對2跳鄰域化(V)中每個未被訪問的頂點(diǎn)U,檢查化(U)和化(V)是否滿足鄰近相 似度σ,即且Ον^σ;若滿足鄰近相似度,則將頂點(diǎn)V加入樞紐頂點(diǎn)集,同時標(biāo)記頂點(diǎn)U和V 已被訪問;所述。11= |Ni(u) η化(V) 1/1化(U) I,〇v= |Ni(u) η化(V) |/|Ni(v) I,所述|Ni(u) I, 是指頂點(diǎn)u的1跳鄰域中所有頂點(diǎn)的個數(shù),同理|Ni(v) I,是指頂點(diǎn)V的1跳鄰域中所有頂點(diǎn)的 個數(shù);所述|Ni(u) nNi(v) I,是指頂點(diǎn)U的1跳鄰域與V的1跳鄰域相交后所得頂點(diǎn)集合中頂點(diǎn) 的個數(shù);所述頂點(diǎn)V的1跳鄰域是與頂點(diǎn)V距離為1的所有頂點(diǎn)構(gòu)成的集合;所述頂點(diǎn)U的1跳 鄰域是與頂點(diǎn)U距離為1的所有頂點(diǎn)構(gòu)成的集合; 步驟23)經(jīng)過步驟21)~步驟22),求得屬性圖G=(V,E,A)的樞紐頂點(diǎn)集Vp; 步驟3)采用前向聚合,獲得冰山頂點(diǎn)集查詢問題在屬性圖模型G=(V,E,A)上的解空 間,具體步驟如下: 步驟31)對樞紐頂點(diǎn)集Vp中的每個頂點(diǎn)y/,求取該頂點(diǎn)對應(yīng)的近似化geRank向量A,所 述爲(wèi).=(l-c)J斬若頂點(diǎn)Vi和頂點(diǎn)vj之間存在邊,則.馬=1/馬,反之Mij = 0;所述Μ是指屬 性圖G=(V,E,A)的過渡矩陣;所述是頂點(diǎn)vj的對應(yīng)的頂點(diǎn)度數(shù);所述頂點(diǎn)度數(shù),是指和該 頂點(diǎn)相關(guān)聯(lián)的邊數(shù); 步驟32)根據(jù)W上步驟,使用氣.并結(jié)合前向聚合方法,求得頂點(diǎn)γ/對應(yīng)的q屬性評分 scoreq(v/),所述該評分等于該頂點(diǎn)的化geRank向量中對應(yīng)黑色頂點(diǎn)的條目之和;所述黑 色頂點(diǎn),是指包含查詢屬性q的頂點(diǎn);所述前向聚合方法,是指一種為屬性圖中的每個頂點(diǎn) 計算其屬性得分的方法; 步驟33)如果頂點(diǎn)/對應(yīng)的q屬性評分scoreq(v〇大于評分闊值Θ,則將該頂點(diǎn)加入解空 間 Solution; 步驟34)檢查樞紐頂點(diǎn)集Vp中的每個頂點(diǎn)是否均已被遍歷過;若沒有,重復(fù)步驟31)~步 驟 33); 步驟35 )確定最終解空間Solution,該解空間中包含所有的冰山頂點(diǎn)集。
【文檔編號】G06F17/30GK105975532SQ201610282107
【公開日】2016年9月28日
【申請日】2016年4月29日
【發(fā)明人】陳志遠(yuǎn), 陳志 , 岳文靜, 王宇虹, 陳雨詩, 卜杰, 田思明
【申請人】南京郵電大學(xué)