摘 要:首先由用戶對各個QoS屬性的偏好給出語言描述及其不確定度;然后通過查找對照表將其換算成各個QoS屬性的權重系數;最后使用QoS屬性值和權重系數進行候選服務的綜合評價,得到最接近滿足用戶不確定偏好的候選服務。模擬實驗結果證明了該方法的有效性。
關鍵詞:服務選擇; 服務質量; 用戶偏好; 直覺模糊集
中圖分類號:TP301.6文獻標志碼:A
文章編號:1001-3695(2010)06-2147-03
doi:10.3969/j.issn.10013695.2010.06.043
Approach to Web services selection under uncertain user preferences
WEN Junhaoa, QIN Jiaa, LIU Lingb
(a. College of Computer Science, b. College of Software Engineering, Chongqing University, Chongqing 400044, China)
Abstract:Therefore, the linguistic descriptions and their uncertainty of individual QoS attributes were given by the user at first, and then was to lookup the reference table to convert those into weight factors of the various QoS attributes, the last step was to use the values and weight factor of QoS attribute to evaluate the candidate services comprehensively to get the one which was closest to meets the uncertain user preferences. The results of simulation experiment show the effectiveness of the approach.
Key words:Web services selection; QoS(quality of service); user preferences; intuitionistic fuzzy sets
0 引言
服務提供者將其服務發布到UDDI服務器上;當服務消費者需要調用該服務時,首先向UDDI服務器提交功能性需求,利用UDDI服務器提供的目錄去搜索該服務,得到如何調用該服務的信息,然后根據這些信息去調用服務提供者發布的服務[1]。然而,隨著Web服務應用的逐漸普及,服務的種類和數量不斷增加,可能使得UDDI服務器根據條件返回多個功能相似的服務,需要服務消費者從中挑選最能夠滿足需求的候選服務。因此,就需要利用服務的非功能性屬性,一般即指服務質量QoS,對得到的多個功能相似的候選服務進行選擇。Web服務的QoS屬性主要包括:時延、響應時間、持續時間、補償率、懲罰率、信譽度、異常處理、可靠性、有效性等。文獻[2~4]對Web服務的QoS屬性進行詳細地總結分類和討論。在此研究基礎上,文獻[5~7]指出Web服務還具有一類與特定應用領域相關的QoS屬性。
目前,已有研究提出了一些基于QoS的服務選擇方法。文獻[5]借助QoS本體和XML策略語言,使用服務選擇代理在服務消費者和服務提供者之間交換QoS信息,在此基礎上建立實現動態服務選擇的Web服務代理框架(WSAF)。文獻[7]利用矩陣表示與具體業務領域相關的QoS模型,并在該模型的基礎上提出形式化的動態服務選擇方法。借鑒文獻[7]的研究,文獻[8]進一步擴展已有描述語義Web服務的WSMO模型,加入了QoS相關屬性,提出基于QoS的語義Web服務選擇模型。文獻[9]從服務組合的需求出發,根據多屬性決策(MCDM)思想, 提出整數規劃方法,使用Web服務的多個非功能性屬性作為參考和約束條件來聚合QoS屬性,結合考慮用戶偏好,在執行路徑的每個任務節點對應的一組候選服務中進行選擇,實現組合服務的QoS全局最優。
但是,在上述研究中提出的QoS建模方法都基于一個假設:即其中使用的QoS屬性值和權重系數都必須以實數的形式明確給出。然而,這個假設卻不能滿足實際應用需求,還會喪失大量有用的數據信息。對于某些QoS屬性值或權重系數而言,應該以不確定的描述形式給出,以增強模型的表達能力。文獻[10,11]采用區間型數據描述某些QoS屬性在某一時間段內的突發最大值和最小值,同時采用語言型數據描述那些不能以具體數值表示的QoS屬性;然后建立適用于服務組合的混合QoS模型,并給出基于該模型的語義Web服務組合全局優化決策算法。文獻[12]利用直覺模糊集理論對多個候選服務進行評級分類,根據人對相近事物作出的近似模糊評價進行分析,將評價分為肯定、否定和不確定三種可能情況,計算發生概率,最后得到各個候選服務的綜合評價。文獻[13,14]分別在信息不完整或無法確定的情況下,提出基于不確定知識的多層次的綜合評價方法。
當前基于模糊表達和模糊評價的服務選擇方法大多是集中在關注QoS屬性的本質特征,很少涉及從服務消費者角度出發研究當用戶偏好不確定時的服務選擇問題。由于應用上下文環境的復雜性、人的思維方法的模糊性和QoS屬性的多樣性等原因,服務消費者很難精確地表達對各個QoS屬性的偏好程度。鑒于上述討論,本文在已有研究的基礎上,提出一種新的Web服務選擇方法,以解決在用戶偏好不確定情況下的Web服務選擇問題。該研究將為進一步滿足Web服務選擇的實際應用需求提供新的思路和方法。
1 直覺模糊集與權重系數
模糊集理論為人類處理模糊信息提供了一套有效的方法,Atanassov[15]將模糊集理論加以推廣,提出了直覺模糊集(intuitionistic fuzzy sets,IFSs)的概念。它從隸屬度和非隸屬度兩個方面描述不確定信息,為信息屬性的描述提供了更多的選擇方式,在處理不確定信息時具有更強的表現能力,目前已經在模式識別、神經網絡、模糊優化等領域得到了很好的應用。本文將利用直覺模糊集理論,研究當用戶偏好不確定時的服務選擇問題。
定義1 設X是一個非空有限集合,稱A={(x,μ(x),ν(x))|x∈X}為直覺模糊集。其中:μ(x)和ν(x)分別表示X中的元素x屬于A的隸屬(membership)度μA∶X→[0,1]和非隸屬(nonmembership)度νA:X→[0,1],且滿足條件0≤μA(x)+νA(x)≤1, x∈X。
定義2 對于任意一個直覺模糊集A,稱πA=1-μA(x)-νA(x),x∈X表示X中元素x屬于A的不確定度(或稱猶豫間隙)。其中0≤πA(x)≤1, 任取x∈X。
定義3 X中的元素x屬于A的隸屬度與非隸屬度組成的有序數對[μ(x),ν(x)]稱為直覺模糊數。可以將X上的直覺模糊集A看做是直覺模糊數的集合,記為A={[μ(x),ν(x)]|x∈X}。
例如,用戶對Web服務的某一QoS屬性的偏好記為[0.5,0.4],即表示隸屬度μ=0.5,非隸屬度ν=0.4。根據定義2,可以得到不確定度π=0.1。由定義3推知μA(x)+νA(x)+πA(x)=1,它表示描述直覺模糊集特征的參數x的所有取值都落在斜平面μA(x)+νA(x)+πA(x)=1上。
定義4 權重系數是表示單個QoS屬性在所有QoS屬性中的重要程度。它表示在其他QoS屬性不變的情況下,這個QoS屬性的變化,對綜合評價結果的影響。
定義5 設x1,x2,…,xn為候選服務的一組QoS屬性,w1,w2,…,wn為這組QoS屬性對應的權重系數,wj∈[0,1],∑wj=1,j=1,2,…,n,則加權平均和S=x1w1+x2w2+…+xnwn=∑xjwj。本文使用加權平均和S表示候選Web服務綜合評價。
例如,一組功能相似的候選Web服務ws1,ws2,具有一組QoS屬性,依次為時延、可靠性、信譽度,與其對應的權重系數(w1,w2,w3)=(0.2,0.3,0.5)。第一個服務ws1的QoS屬性組(x1,x2,x3)=(10,20,30),第二個服務ws2的QoS屬性組(x4,x5,x6)=(20,30,10)。根據定義5,計算兩個服務的QoS屬性組的加權平均和,分別為Sws1=10×0.2+20×0.3+30×0.5=23;Sws2=20×0.2+30×0.3+10×0.5=18。因為Sws1>Sws2,所以推知,ws1的性能優于ws2。
2 在用戶偏好不確定情況下的Web服務選擇
設有一組功能相似的候選服務WS=(ws1,ws2,…,wsm),且具有一組QoS屬性C=(c1,c2,…,cn)。其中m,n∈N。不失一般性,假設QoS屬性值均大于0,有關模糊QoS屬性的相關研究不在本文討論范圍。設矩陣Qmn=(qij)m×n,i=1,2,…,m,j=1,2,…,n。其中qij表示在服務組WS中的第i個候選服務的第j個QoS屬性值。矩陣Qmn的表達式為
Qmn=ws1ws2wsmc1c2…cnq11q12…q1nq21q22…q2nqm1qm2…qmn
由于用戶不能確定對各個QoS屬性的偏好程度,根據用戶不確定的偏好得到近似合理的QoS屬性的權重系數,是本文研究的重點內容。
2.1 歸一化處理
由于各個屬性的物理意義不完全相同,計量單位也不一定相同,從而使得屬性值的量綱和數量級可能不同。為了便于數據的評估和比較,需要將矩陣Qmn中的QoS屬性值進行無量綱化(或稱歸一化)處理。使用的處理函數如下所示:
ij=(qij-mini qij)/(maxi) (qij-mini) (qij),當qij是效益型屬性值(maxi) (qij-qij)/(maxi) (qij-mini) (qij),當qij是成本型屬性值
其中:mini qij和maxi qij分別表示在服務組WS中第j個QoS屬性cj的最小值和最大值。效益型的屬性值越大,表明屬性質量越優;反之,成本型的屬性值越小,表明屬性質量越優。
2.2 確定權重系數
由于用戶偏好不確定,無法直接得到QoS屬性的權重系數。根據直覺模糊集的知識,首先給出QoS屬性偏好程度的語言描述對照表,然后由用戶根據實際應用需求對QoS屬性的偏好進行語言描述并給出語言描述的不確定度;接著通過語言描述查找對照表確定與QoS屬性對應的直覺模糊數表達式,最后將不確定度代入表達式把用戶的語言描述轉換為QoS屬性的權重系數,其轉換函數為:wj=μ(qj)ν(qj)×π(qj),其中wj∈[1,1],j=1,2,…,n。QoS屬性偏好程度的語言描述對照表的形式如表1所示[12]。本文后面的實驗部分將以此表為例。
表1 QoS屬性偏好程度的語言描述對照表
QoS屬性偏好程度的語言描述直覺模糊數QoS屬性偏好程度的語言描述直覺模糊數
非常重要(VI)[0.9,0.1π]不重要(U)[0.3,0.7π]
重要(I)[0.7,0.3π]非常不重要(VU)[0.1,0.9π]
一般(M)[0.5,0.5π]未知(N)[0.0,0.0]
在語言描述對照表中,直覺模糊數表達式中的未知變量π表示用戶在對QoS屬性偏好程度給出語言描述時的不確定度,不同的用戶給出的不確定度是不完全相同的。當用戶忽略不確定度時,即有π(qj)=0,可以得到wj=μ(qj)ν(qj)×0=μ(qj)。根據定義5,wj∈[0,1],∑wj=1,j=1,2,…,n。因此,還需要對得到的權重系數進行轉換處理,使得其值落在區間[0,1]上,其轉換函數為j=wj/(w1+w2+…wn)(j=1,2,…,n)。
2.3 綜合評價
最后由定義5中的加權平均和公式,得到候選服務的綜合評價,其綜合評價函數為:Swsi=∑1≤j≤nijj,i=1,2,…,m。其中max(Swsi),對應的候選服務WSi即為最終所求,即在這組候選服務中,綜合評價結果最高的服務WSi的性能優于同組的其他候選服務,最能夠符合用戶對實際應用需求的不確定偏好。
3 實驗分析
根據本文前面的研究內容,使用MATLAB進行數據模擬,通過計算得到最接近符合用戶不確定偏好的候選服務。在實驗中,生成一組功能相似的候選服務WS=(ws1,ws2,ws3,ws4,ws5),且具有一組QoS屬性C=(c1,c2,c3,c4,c5),依次為價格、時延、信譽度、可靠性、有效性。QoS屬性偏好程度的語言描述對照表參見表1。實驗步驟如下:
a)生成一組功能相似的候選服務WS=(ws1,ws2,ws3,ws4,ws5),這組候選服務具有一組QoS屬性C=(c1,c2,c3,c4,c5),其QoS屬性值如表2所示。
表2 候選服務QoS屬性值
候選Web服務價格c1時延c2信譽度c3可靠性c4有效性c5
ws161.242015.005949.40320.06753.5788
ws260.825914.963549.69660.09854.2308
ws361.588714.833649.18940.09663.9619
ws461.230814.886649.36840.29344.3957
ws561.393015.009149.64770.13233.9805
b)為了便于數據的評估和比較,對在步驟a)中得到的QoS屬性值進行歸一化處理,處理結果如表3所示。
表3 候選服務QoS屬性值的歸一化處理結果
候選Web服務價格c1*時延c2*信譽度c3*可靠性c4*有效性c5*
ws10.45450.01800.421600
ws21.00000.25981.00000.13740.7981
ws301.000000.12870.4690
ws40.49820.69780.35291.00001.0000
ws50.256500.90370.28670.4918
c)模擬產生用戶對各個QoS屬性偏好程度的語言描述和用戶對語言描述的不確定度,然后根據2.2節的方法計算出各個QoS屬性的權重系數,如表4所示。
表4 候選服務QoS屬性的用戶偏好轉換
QoS屬性偏好程度不確定度權重系數
價格c1*不重要0.005 90.149 2
時延c2*非常重要0.613 10.612 3
信譽度c3*一般0.189 70.222 4
可靠性c4*非常不重要0.083 20.016 2
有效性c5*未知00
d)根據步驟b)和步驟c)得到的結果,計算候選服務ws1,ws2,ws3,ws4,ws5綜合評價,計算結果如表5所示。
表5 候選服務的綜合評價
候選Web服務綜合評價結果候選Web服務綜合評價結果
ws10.172 6ws40.591 9
ws20.532 9ws50.243 9
ws30.614 4
e)從步驟d)得到的計算結果可以看出,候選服務的性能由優至劣的順序依次為ws3>ws4>ws2>ws5>ws1。由此可知,服務ws3為最能夠符合用戶不確定偏好的候選服務。
4 結束語
用戶偏好不確定是在服務選擇過程中存在的客觀問題,本文在已有研究的基礎上,提出一種近似滿足用戶不確定偏好的服務選擇方法。在本文討論過程中,QoS屬性偏好程度的語言描述對照表是以表1為例的,但是對照表并不是固定的。如何根據實際情況確定恰當的語言描述對照表,需要進行專門的討論。在下一步的研究工作中,將同時考慮QoS屬性中的模糊屬性,然后將用戶偏好不確定問題擴展到Web服務組合中。此外,分析在選擇過程中不確定的表達誤差對真實結果的影響也是值得研究的問題。
參考文獻:
[1]岳昆,王曉玲,周傲英.Web服務核心支撐技術—研究綜述[J].軟件學報,2004,15(3):428-442.
[2]RAN S.A model for Web services discovery with QoS[C]//Proc of ACM SIGecom Exchanges.New York:ACM Press,2003:1-10.
[3]O’SULLIVAN J,EDMOND D,HOFSTEDE A.What’s in a service?[J].Distributed and Parallel Databases,2002,12(2-3):117-133.
[4]MENASCE D A.QoS issues in Web services[J].IEEE Internet Computing,2002,6(6):72-75.
[5]MAXIMILIEN E M, SINGH M P. A framework and ontology for dynamic Web services selection[J].IEEE Internet Computing,2004,8(5):84-93.
[6]楊文軍,李涓子,王克宏.領域自適應的Web服務評價模型[J].計算機學報,2005,28(4):514-523.
[7]LIU Y,NGU A H,ZENG L.QoS computation and policing in dynamic Web service[C]//Proc of the 13th International World Wide Web Conference on Alternate Track Papers Posters.New York:ACM Press,2004:66-73.
[8]WANG X,VITVAR T,KERRIGAN M, et al.A QoSaware selection model for semantic Web services[C]//Proc of ServiceOriented ComputerICSOC 2006.Heidelberg:Springer,2006:390-401.
[9]ZENG L,BENATALLAH B,NGU A H, et al.QoSAware middleware for Web services composition[J].IEEE Trans on Software Engineering,2004,30(5):311-327.
[10]李禎,楊放春,蘇森.基于模糊多屬性決策理論的語義Web服務組合算法[J].軟件學報,2009,20(3):583-596.
[11]楊放春,蘇森,李禎.混合QoS模型感知的語義Web服務組合策略[J].中國科學E輯:信息科學,2008,38(10):1697-1716.
[12]WANG P. QoSaware Web services selection with intuitionistic fuzzy set under consumer’s Vague Perception[J].Expert System with Applications,2009,36(3):4460-4466.
[13]何貴青,陳世浩,田沄,等.多傳感器圖像融合效果綜合評價研究[J].計算機學報,2008,31(3):486-492.
[14]王飛,鄒仕洪,陳山枝,等.基于模糊數學的Web服務QoS建模[J].計算機應用研究,2007,24(4):214-216.
[15]ATANASSOV K T. Intuitionistic fuzzy sets[J].Fuzzy Sets and Systems,1986,20(1):87-96.