沈陽理工大學(xué)信息科學(xué)與工程學(xué)院 盛建家
?
基于模糊Petri網(wǎng)的語義Web服務(wù)組合
沈陽理工大學(xué)信息科學(xué)與工程學(xué)院 盛建家
【摘要】由于Web服務(wù)組合依賴關(guān)系圖越來越龐大,耗費(fèi)的代價(jià)也日益加重,所以提出了一種建立在模糊Petri網(wǎng)的基本結(jié)構(gòu)上的反向搜索算法,通過建立鄰接矩陣、矩陣命令來根據(jù)目標(biāo)輸出庫所搜索與之相關(guān)的前驅(qū)庫所。通過該算法的運(yùn)行,不僅可以提高計(jì)算效率,同時(shí)也可以在模糊Petri網(wǎng)模型中抽取出一個(gè)子模型,從而把一個(gè)大的、復(fù)雜的系統(tǒng)轉(zhuǎn)化為一個(gè)只與問題相關(guān)的小的系統(tǒng)來處理。
【關(guān)鍵詞】模糊Petri;依賴關(guān)系;反向搜索;服務(wù)組合
隨著Web服務(wù)技術(shù)的日益成熟,面對日益復(fù)雜的Web服務(wù)請求者的請求,這需要將許多功能相同或相似的Web服務(wù)通過一定的控制手段將其整合成能夠滿足服務(wù)請求者需求的Web服務(wù)組合。但是所有Web服務(wù)組合成的Web服務(wù)組合依賴關(guān)系圖規(guī)模比較龐大,其中存在很多對滿足Web請求服務(wù)者請求完全沒用的Web服務(wù)。顯然對于請求服務(wù)者來說,這種Web服務(wù)依賴關(guān)系圖是不能直接被調(diào)用的。當(dāng)請求服務(wù)者執(zhí)行Web服務(wù)時(shí),根據(jù)請求服務(wù)者輸入和期望輸出來對整個(gè)Web服務(wù)關(guān)系依賴圖進(jìn)行反向推理,去除和請求服務(wù)者請求無關(guān)的Web服務(wù),然后將這個(gè)Web服務(wù)依賴關(guān)系子圖返回給請求服務(wù)者,而后請求服務(wù)者按照該Web服務(wù)依賴關(guān)系子圖進(jìn)行Web服務(wù)調(diào)用。
2.1矩陣定義
在對得到的Web依賴關(guān)系圖進(jìn)行反向推理之前,首先要對Web服務(wù)依賴關(guān)系圖矩陣化,然后根據(jù)矩陣表示法來進(jìn)行反向搜索。
2.2運(yùn)算定義
為了充分突出模糊Petri網(wǎng)的模糊推理能力,就必須用將Petri網(wǎng)用矩陣表示出來。在模糊推理之前,必須給出推理所需要的一些有關(guān)矩陣的運(yùn)算。
定義3.1 定義矩陣PtoP[Pi][Pj]為Web服務(wù)依賴關(guān)系圖中庫所之間的鄰接矩陣,矩陣的行與列都代表Petri網(wǎng)中的庫所,在矩陣中的元素Pij’所代表的值若為1,則表示Pj’庫所是Pi’庫所的前驅(qū)庫所;若為0,這表示兩個(gè)庫所間沒關(guān)系。
定義3.2 定義矩陣命令deleteRow(i)是刪除鄰接矩陣中第i行的所有元素,并改變原矩陣的行維數(shù)。
定義3.3 定義矩陣命令deleteCol(i)是刪除鄰接矩陣中第i列的所有元素, 并改變原矩陣的列維數(shù)。
反向搜索算法步驟如下:
步驟1:根據(jù)定義2.13,得到鄰接矩陣PtoP[Pi][Pj]。此時(shí)利用矩陣命令deleteRow和deleteCol刪除全是0的行與列,得到新鄰接矩陣PtoP[Pi][Pj]’。
步驟2:組合服務(wù)的目標(biāo)輸出庫所是在分析請求信息的基礎(chǔ)上得到的。現(xiàn)要求找到目標(biāo)輸出庫所再鄰接矩陣所在那一列,在此列中找到出元素值為1所對應(yīng)的行,此時(shí)行代表的輸入庫所,加入其前驅(qū)庫所集中。若沒有找到,則算法結(jié)束。
步驟3:對步驟2得到的前驅(qū)庫所集中每個(gè)前驅(qū)庫所將其作為目標(biāo)輸出庫所,按照步驟2的方法也分別找出其對應(yīng)的前驅(qū)庫所集,直到已經(jīng)搜索至第一行結(jié)束。
步驟4:將以上所得到的所有庫所保存起來,并在Web服務(wù)依賴關(guān)系圖中刪除那些無關(guān)的庫所,得到反向搜索后的Web服務(wù)依賴關(guān)系子圖,算法結(jié)束。
算法結(jié)束時(shí),如果算法成功返回這代表已經(jīng)從原來的Web服務(wù)依賴關(guān)系圖中找到了一個(gè)符合Web服務(wù)請求者需求的且規(guī)模小的服務(wù)依賴關(guān)系圖。
本文在模糊Petri網(wǎng)的基礎(chǔ)上,使用矩陣這種數(shù)據(jù)結(jié)構(gòu)來精確定義Petri網(wǎng),其中包括Web服務(wù)依賴關(guān)系圖的輸入輸出矩陣和等效輸入輸出矩陣,并介紹了基于描述Web服務(wù)依賴關(guān)系圖的矩陣的基本運(yùn)算的定義,可以進(jìn)行數(shù)學(xué)上的計(jì)算和推理,而后介紹了用于服務(wù)依賴關(guān)系圖生成的矩陣基本運(yùn)算的反向搜索方法。其中反向搜索(推理)算法主要是先減小矩陣規(guī)模,減少計(jì)算量,從而達(dá)到優(yōu)化算法的目的。
參考文獻(xiàn)
[1]劉衛(wèi)寧.面向多任務(wù)的制造云服務(wù)組合[J].計(jì)算機(jī)集成制造系統(tǒng),2013,19(1):199-209.
[2]吳哲輝.Petri網(wǎng)導(dǎo)論[M].北京:機(jī)械工業(yè)出版社,2006: 1-58.
[3]曹利培,孔娟,劉靜.Web服務(wù)組合形式化方法研究[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(25):48-70.
[4]Beth T,Borcherding M, Klein B.Valuation of trust in open network[C].Gollmann D,ed.Proe.of the European Symp.on Research in Security(F.SORICS).Brighton:Springer-Verlag,1994:3-18.
[5]Li Hai-hua,Du Xiao-yong,Tian Xuan.A capability enhanced trust evaluation model for web services[J].Chinese Journal of Computers,2008,31(8):1471-1477.