陳文宇,張忠全,向 濤,桑 楠
(電子科技大學計算機科學與工程學院 成都 610054)
基于相似度的語義Web服務發(fā)現(xiàn)技術研究
陳文宇,張忠全,向 濤,桑 楠
(電子科技大學計算機科學與工程學院 成都 610054)
針對傳統(tǒng)Web服務在服務發(fā)現(xiàn)中存在效率低的問題,應用語義Web技術和本體理論,提出了一種基于相似度的語義Web服務發(fā)現(xiàn)模型。采用Web本體語言(OWL-S)描述Web服務,發(fā)布服務時包含充分的語義信息,在服務搜索中加入本體推理過程,綜合度量服務的功能匹配程度和信譽值。實驗結(jié)果表明,語義Web服務發(fā)現(xiàn)方法的查準率和查全率高于UDDI基于關鍵字的查找方法。
本體; 信譽; 語義Web; 服務發(fā)現(xiàn); Web服務
Web服務是一種面向服務架構(gòu)的技術,通過標準的SOAP協(xié)議提供服務,保證分布式和異構(gòu)環(huán)境下的應用可以互操作。Web服務具有跨平臺、復用性高、成本低和使用簡單等優(yōu)點,所以其應用范圍非常廣泛,特別是在電子商務領域[1]。但其也面臨一些挑戰(zhàn),如怎樣從龐大的Web服務庫中準確地搜索到所需的服務,即服務發(fā)現(xiàn)等。傳統(tǒng)的Web服務將描述服務信息的WSDL發(fā)布到UDDI,通過關鍵字匹配的方式查找服務[2-3]。該服務的發(fā)布和發(fā)現(xiàn)方式不支持基于語義的模糊匹配,不能選出與檢索詞同義和相關的服務,不利于實現(xiàn)服務的自動組合,難以構(gòu)建高效、動態(tài)的系統(tǒng)。語義Web服務技術的誕生解決了傳統(tǒng)服務發(fā)現(xiàn)的局限性,具有更好的信息表達能力和語義推理能力。目前,對語義Web服務的研究取得了部分進展[4],但對語義Web服務發(fā)現(xiàn)機制的研究尚處于起步階段。
本文引入語義Web服務技術,比較了傳統(tǒng)Web服務和語義Web服務;引入本體理論,采用OWL_S替代WSDL描述帶語義的Web服務;分析了文獻[5]中的服務發(fā)現(xiàn)算法的不足,提出了基于功能相似度和信譽度的服務發(fā)現(xiàn)方法,給出了影響功能和信譽的各個因素以及它們之間的聯(lián)系,并通過實驗說明了該方法的可行性。
互聯(lián)網(wǎng)應用的快速發(fā)展使現(xiàn)有技術的局限逐漸顯現(xiàn)出來。當前互聯(lián)網(wǎng)技術沒有描述信息的含義,也不關心信息的具體內(nèi)容,導致信息處理的智能化水平較低[6]。為改變該狀況,文獻[7-8]提出了語義Web技術。語義Web通過在Web資源中加入語義信息,擴展當前Web的自描述能力。在Web服務中引入語義Web技術,可以解決傳統(tǒng)服務中不含語義信息,計算機之間不能相互理解和操作的問題,并能將Web服務的功能和信譽信息轉(zhuǎn)化為格式化的語義信息,方便機器的自動識別和匹配,提高服務查找的精確度。
語義Web服務是語義Web和Web服務兩種技術的融合,是Web服務發(fā)展的新方向。表1給出了語義Web服務與傳統(tǒng)Web服務相比較的優(yōu)點[9]。
表1 傳統(tǒng)Web服務和語義Web服務的比較
語義Web建立在本體論的基礎上,本體定義了事物的屬性、約束、類以及類之間的關系等信息,在Web服務中引入本體可以增加描述服務的語義信息。由于本體具有清晰的概念層次結(jié)構(gòu),并支持邏輯推理,所以可以檢測請求服務和待選服務的一致性,使檢索出來的信息更符合要求,增強服務自動發(fā)現(xiàn)的能力并提高服務查全率。為了進一步達到服務的自動發(fā)現(xiàn)和執(zhí)行,還需要加強對Web服務語義信息的描述,因此催生了OWL_S。OWL_S是基于OWL的Web服務本體,其標記語言結(jié)構(gòu)準確地刻畫了Web服務的功能和屬性。OWL_S不僅支持基于語義的推理機制,而且對信息的表達能力也比WSDL強,其主體結(jié)構(gòu)如圖1所示[10]。
圖1 OWL_S主體結(jié)構(gòu)
從圖1可以看出,Service Model、Service Gounding和Service Profile是OWL_S的主體結(jié)構(gòu)的3個組成部分,它們分別通過屬性describedBy、supports和presents描述Web服務的語義信息,包括質(zhì)量語義、數(shù)據(jù)語義和功能語義等,這些語義信息組合起來為服務發(fā)現(xiàn)提供依據(jù)。
文獻[5]提出了一種基于功能相似程度進行匹配的服務發(fā)現(xiàn)方法,其中評價服務請求和待選服務之間的功能相似程度是通過它們之間的公有信息進行的。分別計算OWL_S對象的Service Gounding、Service Profile和Service Model以決定待選服務是否匹配服務請求,但該發(fā)現(xiàn)方法存在以下缺點[11-12]:(1)需要參照Service Gounding、Service Profile和Service Model的信息,計算比較復雜,模型實現(xiàn)困難;(2)篩選服務時沒有考慮其信譽度的因素,可能導致某些信譽低下,沒有達到指定閾值的服務也被篩選出來;(3)性能和查全率低,尤其在海量服務庫中查找時比較明顯。
為解決以上問題,本文采用本體推理理論和語義Web技術,提出一種新的服務發(fā)現(xiàn)方法。本文的服務發(fā)現(xiàn)主要關注服務的功能語義相似程度和服務提供方的信譽值,并加入性能度量,不再考慮時效性和安全等其他非功能性因素。
假定服務請求和服務公告分別用request和advertise表示,它們的相似度用similarity(request,advertise)表示,請求服務和待選服務之間的功能相似度和信譽度相似度分別用similarityfunction(request,advertise)和similarityreputation(request,advertise)表示。請求服務和待選服務的相似度定義為:
輸入、輸出、前置條件和效果是影響功能相似度的4個主要因素(簡稱IOPE)。服務請求和服務公告的功能相似度定義為:
可用性、響應時間和價格是影響服務信譽度的3個主要因素。分別用similarityA、similarityT和similarityP表示可用性相似度、響應時間相似度和價格相似度。信譽度相似度為:
服務發(fā)現(xiàn)的具體步驟如下:
(1)遍歷服務庫中登記的所有Web服務的公告,通過語義推理過濾與請求服務在功能上不相似的服務,得到有效的待選服務集合;
(2)依次查找有效的待選服務,篩選淘汰信譽值低下的服務;
(3)計算各個待選服務的功能語義相似度;(4)計算各個待選服務的信譽度相似度;(5)計算整體相似度,并按照相似度從大到小的順序排列;
(6)返回相似度達到指定閾值的服務列表,并選擇相似度最大的服務作為最佳匹配的服務。
以查找汽車銷售服務為例說明服務匹配過程。假定服務注冊庫中有SA銷售自行車、SB售火車票、SC銷售轎車、SD只銷售本田汽車、SE銷售所有類型的車等5個滿足本體規(guī)范的有效服務。定義如下的本體實例:
注冊服務中的SB銷售火車票,與請求服務-汽車銷售在概念和功能上不一致,所以經(jīng)過語義推理分析,排除該項服務,剩余的4個服務都是有效的待選服務。
3.2.1 計算功能相似值
影響功能相似度的輸入、輸出、前置條件和效果等參數(shù)如表2所示,假設輸入對于所有的服務都是相同的。
表2 功能參數(shù)等級表
假定輸入、輸出、前置條件和效果的權重分別為0.3、0.3、0.2、0.2。根據(jù)式(2),采用加權平均值計算出各個服務的功能相似值為:
3.2.2 計算信譽度相似值
服務SA、SC、SD和SE的響應時間、可用性、價格等信譽參數(shù)如表3所示,并且它們的權重分別為0.5、0.3和0.2。根據(jù)式(3),計算出各個服務的信譽值為:
假設信譽的閾值為0.65,即認為低于該信譽值的服務包含有虛假信息,不將其添加到待選服務列表中,故丟棄服務SD。
表3 信譽等級表
3.2.3 整體語義相似度
假定功能相似度和信譽相似度的權重分別是0.7和0.3,根據(jù)式(1),計算出各個服務的整體相似度分別為:
綜合考慮功能相似度和信譽度,得出各個服務的整體相似度。各服務相似度從大到小的排序以次是SC、SE、SA。所以對本例而言,應該首選SC作為最佳匹配的服務。
仍然用汽車銷售實例驗證前文所提模型的可行性。實驗環(huán)境配置為本體建模工具Protege3.1、本體編輯工具OWL_S Editor、推理機Jena+RACER Pro1.9、私有注冊中心jUDDI 0.9rc3、應用服務器Jakarta Tomcat5.0、數(shù)據(jù)庫服務器MySQL5.1和開發(fā)平臺Eclipse。
先編寫相應的服務并在UDDI中注冊,如圖2所示。
圖2 Web服務注冊
圖3 Web服務的查詢結(jié)果
圖2左側(cè)窗口中列出了5個與汽車銷售相關服務,右側(cè)窗口是對這些服務信息的詳細描述。要得到所需Web服務列表,用戶需要提供必要的信息如Service Name、Description、Inputs和Outputs等給請求代理,代理根據(jù)語義推理和信譽度度量過濾淘汰不相關和虛假的服務,然后按服務相似度匹配程度返回滿足要求的Web服務列表。如圖3所示。
目前還沒有統(tǒng)一的計算Web服務發(fā)現(xiàn)性能的標準,本文將采用查準率和查全率作為評價依據(jù)。
由于本文實驗的服務集數(shù)量有限,不能有效地驗證服務發(fā)現(xiàn)性能。為收集大量的試驗數(shù)據(jù),從uddi.ibm.com等站點下載了110個描述Web服務的WSDL文件和40個OWL_S文件。服務主要有汽車銷售、股票行情、航班查詢和數(shù)字圖書館查詢服務等。用工具OWL_S Editor對WSDL文件進行了轉(zhuǎn)化,得到150個OWL_S文件,然后分別基于UDDI、Semantic進行100次有效的服務請求,服務匹配結(jié)果如圖4所示。
圖4 兩種方法查全率和查準率的比較
圖4表明,基于關鍵字查找的查準率和查全率(48%,41%)遠低于基于OWL_S語義相似度查找的查準率和查全率(78%,85%),原因是UDDI基于關鍵字的服務發(fā)現(xiàn)機制不支持自動化的服務發(fā)現(xiàn),查詢結(jié)果需要人工處理,才能確定服務是否和查詢條件相匹配。而基于語義的Web服務發(fā)現(xiàn)機制能夠自動查找并返回與所要查找內(nèi)容在功能和信譽方面達到指定相似度的Web服務。
傳統(tǒng)的基于關鍵字和簡單分類的Web服務發(fā)現(xiàn)存在查準率和查全率低下的缺點。本文提出了一種基于相似度的語義Web服務發(fā)現(xiàn)方法,該方法在服務發(fā)現(xiàn)過程中增加了語義信息,通過語義推理增強服務的信譽度相似度和功能相似度,從而提高服務發(fā)現(xiàn)和匹配的精確程度。實驗驗證了該方法的可行性和相對于傳統(tǒng)方法的優(yōu)越性。進一步的研究包括充分利用本體推理機制優(yōu)化語義Web服務發(fā)現(xiàn)算法,并提高語義Web服務發(fā)現(xiàn)的性能。
[1]FEI Chun, TANG Xue-fei. Research on the E-learning application of web service[J]. Journal of Electronic Science and Technology of China, 2005, 3(3): 218-221.
[2]鄭向宏, 李院春, 李增智, 等. 面向語用Web服務的Qos評價模型研究[J]. 電子科技大學學報, 2007, 36(6): 1477-1480.
ZHENG Xiang-hong, LI Yuan-chun, LI Zeng-zhi, et al.Research on pragmatic web-oriented Qos evaluation model[J]. Journal of University of Electronic Science and Technology of China, 2007, 36 (6): 1477-1480.
[3]趙文峰, 孟祥武, 陳俊亮. 信息提供類Web服務與RDF數(shù)據(jù)源的集成[J]. 北京郵電大學學報, 2008, 31 (6): 109-112.
ZHAO Wen-feng, MENG Xiang-wu, CHEN Jun-liang.Integration of information-providing web services and RDF data sources[J]. Journal of Beijing University of Posts and Telecommunications, 2008, 31(6). 109-112.
[4]PAPAZOGLOU M P, GEORGAK O D. Service oriented computing[J]. Communication of the ACM, 2003, 46 (10):25-28.
[5]DAY J, DETERS R. Selecting the best web service[C]//Proceedings of the 2004 Conference of the Centre for Advanced Studies on Collaborative Research Tabel of Contents. Markham: [s.n.], 2004.
[6]林清瀅. 基于UDDI的語義Web服務發(fā)現(xiàn)研究[J]. 計算機工程與設計, 2006, 27(12): 2215-2217.
LIN Qing-ying. UDDI based semantic web service discovery research[J]. Computer Engineering and Design,2006, 27(12): 2215-2217.
[7]KAMVAR S D, SCHLOSSER M T. In: Reputation management in P2P networks[C]//Proc of the 12th World Wide Web Conference. Hawaii: ACM Press, 2004: 123-134.
[8]RAMA A. RICHARD C. A method for semantically enhancing the service discovery capabilities of transaction on web service, 2003, 3(3): 310-323.
[9]艾未華, 宋自林, 魏 磊, 等. 基于領域本體的Web服務發(fā)現(xiàn)[J]. 電子科技大學學報, 2007, 36(3): 506-509.
AI Wei-hua, SONG Zi-lin, WEI Lei, et al. Web service discovery based on domain ontology[J]. Journal of University of Electronic Science and Technology of China,2007, 36(3): 506-509.
[10]王 慧, 王金華, 趙煜輝, 等. 基于信譽的語義Web服務發(fā)現(xiàn)[J]. 計算機科學, 2007, 34(8): 130-134.
WANG Hui, WANG Jin-Hua, ZHAO Yu-Hui, et al.Reputation-based semantic web service discovery[J].Computer Science, 2007, 34(8): 130-134.
[11]CURBERA F, KHALAF R, MUKHI N. The next step in web service[J]. ACM, 2003, 46(10): 29-34.
[12]白東偉, 劉傳昌, 陳俊亮. 一種增強語義精確度的Web服務匹配方法[J]. 北京郵電大學學報, 2006, 29(5): 40-44.
BAI Dong-wei, LIU Chuan-chang, CHEN Jun-liang. A web services matchmaking method with enhanced semantic precision[J]. Journal of Beijing University of Posts and Telecommunications, 2006, 29(5): 40-44.
編 輯 漆 蓉
Research on Similarity-Based Semantic Web Services Discovery
CHEN Wen-yu, ZHANG Zhong-quan, XIANG Tao, and SANG Nan
(School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 610054)
Aiming at the problems of low efficiency in service discovery of traditional web service, a similarity-based semantic web service discovery model is proposed, with the application of semantic web technology and ontology. The mechanism uses Ontology Web Language for Service (OWL_S)to describe web service and publishes service with semantic information. Ontology reasoning is added into service searching to measure its degree of functional matching and reputation value. The experiments suggest that the proposed method is better than that of Universal Description Discovery and Integration (UDDI)in precision and recall ratio.
ontology; reputation; semantics Web; service discovery; Web services
TP311
A
10.3969/j.issn.1001-0548.2010.06.019
2009- 04- 17;
2010- 03- 28
國家863計劃 (2007AAO1Z131)
陳文宇(1968- ),男,博士,副教授,主要從事編譯技術、模式識別、形式語言與自動機方面的研究.
book=910,ebook=354