, ,
(石家莊鐵道大學 信息科學與技術學院,河北 石家莊 050043)
隨著功能相同而非功能屬性(QoS)不同的Web服務的增多,如何從中準確地選出滿足用戶需求的最優(yōu)服務是研究領域的一個熱點。很多學者開始研究以QoS屬性作為選擇服務指標的各種方法[1-4],并取得了一定的成果。
最初的服務選擇方法是基于QoS屬性值計算的,通過構建數(shù)學模型計算出每個候選服務的屬性值,選擇屬性值最大的服務作為最佳服務[1],該法缺少語義支持不利于實現(xiàn)服務的自動發(fā)現(xiàn)。為解決上述問題,研究者開始將語義中的本體技術應用到服務選擇研究中[2],致力于構建QoS本體,設計基于本體的服務選擇方法。L Taher et al提出基于QoS相似度的Web服務選擇方法[3-4],但它只是考慮了服務QoS 數(shù)值方面的匹配,缺乏考慮QoS參數(shù)概念的語義相似度。
上述方法的缺點導致用戶花費時間和精力卻篩選不到更符合自身需求的服務。對語義和數(shù)值進行綜合考量并考慮服務請求者的個性化需求,提出了一種基于語義和數(shù)值綜合匹配的Web服務選擇方法,包含QoS語義和數(shù)值綜合匹配、構建多屬性決策矩陣、個性化服務選擇這幾個階段。
考慮到QoS參數(shù)包括QoS概念和QoS數(shù)值兩部分,因此QoS的綜合相似度是由QoS屬性概念的語義相似度和QoS屬性的數(shù)值相似度共同決定的。首先進行了兩個QoS參數(shù)的語義匹配,當語義上存在可比性時,才進行下一步的數(shù)值處理和數(shù)值匹配。
在QoS本體樹中語義相似度可以用來衡量兩個概念的相關程度。語義相似度隨著語義距離的增大下降速度很快,采用下式為語義相似度的計算公式[5]
S(ci,cj)=1/edis(ci,cj)
(1)
式中,dis(ci,cj)為本體樹中概念詞ci與概念詞cj之間的語義距離;S(ci,cj)為本體樹中概念詞ci與概念詞cj之間的語義相似度。式(1)取值在[0,1]區(qū)間內,α為可調節(jié)參數(shù)。如果ci=cj則dis=0,S(ci,cj)=1; 如果ci≠cj則dis(ci,cj)采用通用余弦相似度度量距離算法[6]計算,如果dis(ci,cj)=∞,S(ci,cj)=0。
在實際選擇過程中,很多不相關QoS屬性參數(shù)作為本體樹中的節(jié)點存在有限語義距離,導致兩者之間語義相似度不為0。如“吞吐率”和“價格”在語義概念上來看是沒有任何比較意義的,但是在本體樹中,若二者存在語義距離,這導致語義相似度不為0,因此設計一個QoS屬性參數(shù)之間的相容性參數(shù)u來描述兩個語義概念是否有比較的必要性。u的取值取決于dis(ci,cj)是否大于由QoS本體的設計者根據(jù)實際經(jīng)驗給出的語義距離的臨界值L,當兩個QoS屬性參數(shù)之間的語義距離大于L時,u=0;否則,u=1。 因此,語義綜合相似度函數(shù)SSem(ci,cj)為相容性參數(shù)u和語義相似度S(ci,cj)相乘的積,如公式(2)所示。
SSem(ci,cj)=uS(ci,cj)
(2)
式中,S(ci,cj)為兩個QoS屬性參數(shù)之間的相似度,u為兩個QoS屬性參數(shù)之間的相容性參數(shù)。引入此公式后,避免了那些沒有比較意義的QoS屬性比較過程,提高了效率。
本文支持單值、模糊單值、區(qū)間值三種QoS數(shù)值表達方式。如,響應時間為單值屬性;安全性描述為一個集合{高,中,低}對應的數(shù)值描述為{3,2,1},為模糊單值屬性;價格區(qū)間100元以內,為區(qū)間型屬性。本文將數(shù)值進行統(tǒng)一劃歸成精確型單值數(shù)據(jù)來表示。
2.2.1 QoS數(shù)據(jù)去模糊化
不同QoS屬性參數(shù)特性不同,成本型QoS屬性值越小代表Web服務質量水平越好,例如響應時間、費用等;效益型QoS屬性則正好相反,例如吞吐量、可用性等QoS屬性參數(shù)。去模糊化的過程中要對這兩種類型的屬性分別處理。
假設有m個具有相同功能的Web服務集合為S={S1,S2,…,Sm}。QoS屬性參數(shù)集合為Q={Q1,Q2,…,Qn}。其中qij=[qijL,qijR]為Web集合中第i個Web服務的第j個QoS屬性的區(qū)間值,i=1,2,…,m;j=1,2,…,n。轉化后的相應實數(shù)值設為qij′。
對于效益型QoS區(qū)間屬性數(shù)據(jù)轉化為實數(shù)。轉化公式如下
(3)
對于成本型QoS區(qū)間屬性數(shù)據(jù)轉化為實數(shù)。轉化公式
(4)
2.2.2 QoS數(shù)據(jù)預處理
最終是通過多個屬性綜合值來評判服務的質量,采用多屬性決策理論中的比重變換法對QoS數(shù)據(jù)進行歸一化處理
(5)
式中,qij′表示經(jīng)過歸一化處理后的QoS數(shù)據(jù);對于效益型數(shù)據(jù)qij表示W(wǎng)eb服務集合中第i個Web服務中第j個QoS屬性參數(shù)的取值;對于成本型數(shù)據(jù),qij表示W(wǎng)eb服務集合中第i個Web服務中第j個QoS屬性參數(shù)取值的倒數(shù)。Q表示效益型和成本型數(shù)據(jù)集合。
2.2.3 QoS數(shù)值匹配
在進行完上述兩步處理后,再計算精確型QoS數(shù)值相似度比較簡單,公式如下
(6)
式中,i∈[1,m],j∈[1,n];DSem(mr,mp)表示QoS數(shù)值相似度函數(shù);mr表示服務請求者請求的QoS數(shù)值約束;mp表示服務提供者提供的QoS數(shù)值約束;rj表示服務請求者所請求的第j個QoS屬性參數(shù)的取值;qij表示第i個候選Web服務中的第j個QoS屬性參數(shù)的取值。
矩陣M說明如下:
(1)行表示候選Web服務,列表示每個候選Web服務的一種QoS屬性參數(shù)。
(2)Mm×n中的元素qij表示服務請求者請求的QoS屬性參數(shù)與第i個候選Web服務中的第j個QoS屬性參數(shù)相匹配的綜合相似度。
(3)元素qij作為QoS的綜合相似度是由概念語義綜合相似度和數(shù)值相似度共同決定的。QoS綜合相似度函數(shù)QMatch(mr,mp)為QoS語義綜合相似度SSem(mr,mp)與QoS數(shù)值相似度DSem(mr,mp)的聚合乘積。當QoS語義可比時,數(shù)值匹配才有意義。當QoS語義相似度SSem(mr,mp)不變,QoS數(shù)值相似度越大越匹配;當QoS數(shù)值相似度DSem(mr,mp)不變,語義相似度越大越匹配。因此QoS綜合相似度函數(shù)如下所示
QMatch(mr,mp)=SSem(mr,mp)×DSem(mr,mp)
(7)
式中,mr表示服務請求者定義的QoS屬性參數(shù);mp表示具有相同功能的候選Web服務集合中提供的QoS屬性參數(shù)。
考慮服務請求者的個性化需求,采用權重分配法來描述請求者的愿望。將所構建的多屬性決策矩陣與服務請求者所設定的權重分配數(shù)值進行相乘然后再將計算出的單個QoS屬性評價結果相加,得到Web服務綜合評價值。如評價公式(8)所示
(8)
式中,Sorce(Si)為綜合評價函數(shù),i=1,2,…,m;qij表示服務請求者請求的QoS屬性參數(shù)與第i個候選Web服務中第j個QoS屬性參數(shù)相匹配的綜合相似度;wj表示服務請求者對所請求的QoS屬性參數(shù)中第j個QoS屬性的關注程度,且滿足w1+w2+…+wn=1。第j個QoS屬性的權重wj其取值范圍在[0,1]區(qū)間內,如果值越趨近于1,則表示服務請求者的個性化需求對此項的要求越高。
采用Protégé3.4.8構建簡單的QoS屬性本體樹;使用Jena2.6.2對本體樹中的層次進行驗證,如WatingTime 和ExecutionTime為ResponseTime的兩個并列子節(jié)點。假設用戶請求的Web服務r對于QoS屬性參數(shù)要求為:費用(Price)為10元、兼容性(Compatibility)為0.12至0.20之間、吞吐率(Throughput)為11.7和響應時間(ResponseTime)為0.8 s。具體候選QoS屬性參數(shù)如表1所示。
基于QoS綜合匹配的語義Web服務選擇方法過程中,兩個QoS屬性參數(shù)之間相關性的臨界距離L,本文將其設定為1。QoS語義匹配成功后,對相應的QoS數(shù)值進行匹配。
若服務請求者對于所請求的Web服務需求的權重分配為:費用(Price)占0.4、兼容性(Compatibility)占0.1、吞吐率(Throughput) 占0.2.和響應時間(ResponseTime)占0.3。根據(jù)用戶分配權重得出的Web服務評價結果:S1=0.759 93,S2=0.705 45,S3=0.987 90,S4=0.577 75,S5=0.449 44,S6=0.646 85,S7=0.757 47,S8=0.454 05,S9=0.618 33,S10=0.869 55??梢奡3為最符合該用戶需求的候選服務,S10較符合用戶要求。
表1 候選Web服務的QoS屬性參數(shù)值
若用戶權重分配依次為:0.1、0.2、0.3、0.4,則得出的評價結果:S1=0.813 28,S2=0.588 25,S3=0.981 62,S4=0.601 53,S5=0.421 00,S6=0.618 70,S7=0.748 18,S8=0.442 31,S9=0.530 62,S10=0.933 18??梢奡3為最符合該用戶需求的候選服務,S10較符合用戶要求。
從以上兩次用戶權重的分配來看,S3均很好的滿足了用戶的需求,這表明S3在這四個屬性中的匹配度均高于其他的服務?,F(xiàn)在人為來考慮單個屬性值在QoS數(shù)值上的相似程度。費用數(shù)值相似程度S3>S2>S9>S10,由于S3=10恰好跟用戶需求相同所以匹配度為1;兼容性在數(shù)值上沒有擴大范圍的候選服務有S3、S5、S8、S9,S3恰為單值數(shù)據(jù)可以看作恰好滿足了區(qū)間型數(shù)據(jù)的核;吞吐量數(shù)值相似程度S3>S10>其他服務;響應時間需求為0.8 s可以看到S3=0.82 s,完全可以匹配用戶需求而且相較于其他服務而言為精確型單值數(shù)據(jù)。請求者期望所選擇的服務中QoS屬性的側重度為費用大于其他三種屬性所占比例時,結果明顯S3從各個方面來說是最滿足服務請求者需求的服務。
根據(jù)算法仿真實驗,本文提出的方法可以有效的給用戶推薦滿足且服務質量較高的Web服務。
本文提出了一種多屬性QoS綜合匹配方法用于解決Web服務選擇問題。在語義匹配后給出QoS數(shù)值相似度計算方法,采用去模糊化方法將異構QoS數(shù)值參數(shù)統(tǒng)一轉化為單值型QoS數(shù)值,解決異構QoS參數(shù)值之間的匹配問題。構建多屬性決策矩陣解決QoS屬性多樣化,并考慮了服務請求者個性化需求。本方法側重于區(qū)間型QoS數(shù)值,對于參數(shù)值得確定人為因素影響也較大,還需要進一步的考慮。
參 考 文 獻
[1]王安華,國林,曉娟,等.基于服務質量的Web 服務發(fā)現(xiàn)研究與實現(xiàn)[J〗.計算機工程與設計,2007(21):5112-5114.
[2]CHEN ZHOU,LIANG TIEN CHIA,BU SUNG LEE.DAML-QoS ontology for web services[C]//Proceedings of the International Conference on Web Services(ICWS04).San Diego,California:IEEE Computer Society,2004:472-479.
[3]Taher L, Khatib H El .A framework and QoS matchmaking algorithm for dynamic web services selection[C]//Proceedings of the 2 nd International Conference on Innovations in Information Technology (IIT'05).[S.l.]:[s.n.],2005.
[4]MICHAEL MAXIMILIEN E,MUNINDAR P S.Toward autonomic web services trust and selection[C]//Proceedings of the 2nd International Conference on Service Oriented Computing.New York:ACM Press,2004:212-221.
[5]GANJISAFFAR Y,ABOLHASSANI H,NESHATI M.A similarity measure for OWL-S annotated web services[C]//Proceedings of IEEE/WIC/ACM International Conference on Web Intelligence.Hong Kong:IEEE Computer Society,2006:621-624.
[6]Ganesan P,Garcia-Molina H,Widom J. Exploiting hierarchical domain structure to compute similarity[J]. Transaction on Information Systems, 2003.21(1):64-93.