姚 喜,寧玉輝,趙淑芳,孫 磊
(1.山東省水利勘測設計院 勘測處,山東 濟南 250013;2.山東省人防指揮保障中心 應急保障科, 山東 濟南 250014;3.山東協和學院 計算機學院,山東 濟南 250107)
隨著信息技術的不斷發展,Web服務種類與數量不斷增多。這一方面提高了Web服務滿足用戶需求的能力;另一方面也增大了服務發現和服務組合的計算難度,對服務查準率和服務計算效率帶來了一定影響[1]。
為了提高服務發現效率,服務池、服務簇[2]和服務社區[3]等概念被提出。其思想為縮小服務發現基數,但因Web服務數量不斷增多,單一依靠服務聚類顯然不能有效滿足用戶需求。為了提高服務發現精度,基于Qos的服務發現方法被提出[4,5]。因Web服務Qos屬性組成較為復雜,且Qos中的屬性賦值缺少統一標準,影響了技術應用效果。文獻[6]在進行服務發現時,將“語義”引入到Web服務發現中,定義了服務本體、構建了本體詞匯樹;進而基于輸入輸出參數的相似度比較,發現與用戶需求匹配度最優的Web服務。因服務本體較為抽象,其形式化定義還需要進一步清晰化。文獻[7]利用Petri網對Web服務進行形式化建模,將Web服務的輸入、輸出參數形式化為Petri網的輸入庫所和輸出庫所,統一了Web輸入、輸出接口。此類方法提高了服務查準率,但對于優化服務查找效率缺少考慮。另外,粒子群[8]、遺傳算法[9]、神經網絡[10]等智能尋優技術被引入,但也存在諸如粒子群算法在Web服務發現中容易陷入局部最優解等問題。
在上述背景下,本文提出了一種基于服務組合簇集的Web服務組合綁定方法。給出了Web服務、服務組合簇、五維坐標系、用戶需求、用戶滿意度等概念的形式化定義,利用邏輯Petri網(LPN)[11]對Web服務進行了形式化描述,構建了面向Web服務集合的LPN模型,進而形成了服務組合庫。在面向五維坐標系的Web服務坐標映射基礎上構建了Web服務組合簇集合;在考慮Web服務最大并發數的基礎上,面向多用戶需求對基于服務組合簇集合的服務組合發現方法進行了闡述。最后,實驗驗證了本文技術的有效性及先進性。
定義1 Web服務:五元組Wservice=(Identity,Inputs,Outputs,QoS,Com) 為一個Web服務,其中,
(1)Identity唯一標識了一個Web服務;
(2)Inputs={Input1,Input2,…,Inputj} 標識了Web服務的輸入參數集;
(3)Outputs={Output1,Output2,…,Outputk} 標識了Web服務的輸出參數集;
(4)QoS標識了此Web服務的服務質量,且0≤QoS≤1,規定此值越大則代表服務質量情況越優;
(5)Com標識了此Web服務的最大并發執行數,且1 假設一個Web服務集合由若干Web服務組成,對Web服務集合進行形式化建模,首先要對單個Web服務進行形式化建模,其方法如算法1所示。 算法1:Web服務的邏輯Petri網建模算法 輸入:一個Web服務Wservicem=(Identity,Inputs,Outputs,Qos,Com)。 輸出:Web服務的邏輯Petri網模型。 (1)新建一個邏輯Petri網LPNa=(P,T;F,fI,fO,M)。 假設Wservicem.Inputs={Input1,Input2,…,Inputi},Wservicem.Outputs={Output1,Output2,…,Outputj}, 在LPNa中新建一個變遷t∈TD,標記為Wservicem.Identity;令t的前置庫所有i個,分別標記為Input1,Input2,…,Inputi, 后置庫所有j個,分別標記為Output1,Output2,…,Outputj。 (2)遍歷LPNa.P,假設當前元素為pi,若pi的標記為a,且a還被pj∈LPNa.P標記,且pj不等于pi,則在LPNa.P中刪除pi,并將與庫所pi相連的弧連接到庫所pj上。令LPNa的初始標識LPNa.M0全部清零。 (3)輸出邏輯Petri網LPNa。 算法1給出了Web服務的LPN模型構建方法,將Web服務的服務動作形式化為邏輯Petri的變遷觸發動作,將Web服務的輸入、輸出參數分別映射為邏輯Petri網變遷的前置庫所和后置庫所。Web服務集合的LPN構建方法如算法2所示。 算法2:Web服務集合的邏輯Petri網建模算法 輸入:Web服務集合Q。 輸出:Web服務集的邏輯Petri網模型。 (1)新建一個邏輯Petri網LPNa=(P,T;F,fI,fO,M)。 假設Web服務集Q={Webservice1,Webservice2,…,Webservicem}, 則由算法1為Web服務集合中的全部Web服務構建LPN模型,假設得到LPN模型集合LPNs={LPN1,LPN2,…,LPNm}。 (2)將LPN集合中的m個Web服務形式化模型合并到LPNa中。首先,將LPNs中所有的變遷合并到LPNa.T中,即LPNa.T=LPNa.T∪LPN1.T∪LPN2.T∪…∪LPNm.T; 將LPNs中所有的庫所、弧合并到LPNa,基本原理同上。 (3)遍歷LPNa.P,假設當前元素為pi,若pi的標識為a,且a還被pj∈LPNa.P標識,且pj不等于pi,則在LPNa.P中刪除pi,與pi相連的弧連接到pj上。令LPNa的初始標識LPNa.M0全部清零。 (4)輸出邏輯Petri網LPNa。 算法2給出了Web服務集合的LPN模型構建方法,將Web服務集合中的元素分別進行LPN建模后,再將多個LPN模型的合并,進而生成Web服務集合的LPN模型。 定義2 服務組合庫:兩元組Scomlry=(C_LPNs,C_Relations) 為一個服務組合庫,其中, (1)C_LPNs為Web服務集的邏輯Petri網模型; (2)C_Relations為一個有限集,標識了Web服務集的邏輯Petri網模型中的輸入參數、輸出參數、Web服務ID序列、Qos之間的關系; (3)C_Relations中元素的格式定義為 由定義2可知,服務組合庫集成了面向Web服務集合的服務組合所有情況,并融入服務組合質量屬性,其構建方法如算法3所示。 算法3:服務組合庫構建算法 輸入:Web服務集及其邏輯Petri網模型LPNi。 輸出:服務組合庫Scomlry。 (1)新建一個服務組合庫Scomlry,令C_LPNs為LPNi。假設LPNi中所有變遷的前置庫所集合為P={p1,p2,…,pj}, 令p1,p2,…,pj的組合情況有e種,分別為y1,y2,…,ye, 依次遍歷e種組合情況。 (2)假設當前元素為yi,新建LPNi的初始標識M0,令M0(p)=1, 且p∈yi。 由邏輯Petri網的可達性動態分析方法[12],獲取LPNi在初始標識M0下的所有可達標識及其變遷觸發序列,假設可達標識集合為Ms={M1,M2,…,Mk}。 (3)遍歷Ms,假設當前元素為Mj,新建C_Relations的一個元素item,由系統生成唯一的檢索號并賦值給item.CID,令item的輸入參數集為M0中標識為1的庫所集合,令item的輸出參數集為Mj中標識為1的庫所集合,假設標識M0到Mj觸發的變遷序列為tg,th,…,ti, 則由變遷標記得到Web服務的調用序列及其ID號,假設tg,th,…,ti所標記的Web服務的Qos值依次為Qosg,Qosh,…,Qosi, 則item.Qos的計算公式為 (1) (4)輸出服務組合庫Scomlry。 算法3給出了服務組合庫的構建方法,利用邏輯Petri網的可達性分析方法獲取了服務組合簇集LPN模型的全部服務組合情況,并根據服務組合庫的形式化結構對相關屬性進行賦值。 定義3 五維坐標系:五元組Zb={inputs,outputs,Noi,Noo,Qos} 為一個五維坐標系,其中inputs,outputs,Noi,Noo,Qos為5個坐標軸,各坐標軸的值均為實數。 算法4:服務組合在五維坐標系的映射算法 輸入:服務組合庫中的服務組合item,基準詞匯Word。 輸出:坐標值Zbi。 (1)新建一個五維坐標Zbi= (2)文獻[9]給出了基于語義的詞匯相似度計算公式 sim(a,b)=(dismax-dis(a-b))/(dismax-dismin) (2) 其中,a,b為兩個語義詞匯,dis(a-b) 為兩個語義詞匯在本體詞匯樹中的語義距離,dismax為最大語義距離,dismin為最小語義距離。基于式(3)給出Zbi.inputs的計算公式 Zbi.inputs=dis(Inputa,Word)*wa+dis(Inputb,Word)*wb+…+dis(Inputc,Word)*wc (3) 其中,Inputa,Inputb,…,Inputc為Web服務組合的輸入參數,wa,wb,…,wc為權值,且wa+wb+…+wc=1。 基于式(3)給出Zbi.outputs的計算公式 Zbi.outputs=dis(Outputd,Word)*wd+dis(Outpute,Word)*we+…+dis(Outputf,Word)*wf (4) 其中,Outputd,Outpute,…,Outputf為Web服務組合的輸出參數,wd,we,…,wf為權值,且wd+we+…+wf=1。 由式(3)得到Zbi.inputs;由式(4)得到Zbi.outputs。 (3)將item.CID標記到Zbi,并輸出五維坐標Zbi= 算法4給出了服務組合在五維坐標系中的映射算法,基于文獻[9]定義的服務本體及其詞匯樹,將詞匯語義距離應用到坐標值的計算中;通過計算服務組合輸入參數、輸出參數、輸入參數個數、輸出參數個數、服務組合質量的坐標值,達到服務組合的坐標映射效果。服務組合簇集的構建方法如算法5所述。 定義4 服務組合簇:八元組Wcluster=(Id,inputs,outputs,Noi,Noo,R,Qos,Zbs) 為一個服務組合簇,其中: (1)Id唯一標識一個服務組合簇; (2)inputs標識了服務組合輸入參數的語義相對值; (3)outputs標識了服務組合輸出參數的語義相對值; (4)Noi標識了服務組合輸入參數個數; (5)Noo標識了服務組合輸出參數個數; (6)R標識了服務組合簇的聚類半徑; (7)Qos標識了服務組合簇中服務組合服務質量的最小值; (8)Zbs標識了服務組合簇中的服務組合五維坐標值集合。 算法5:服務組合簇集構建算法 輸入:服務組合庫Scomlry,聚類半徑Rt,服務組合質量閥值Qosmin。 輸出:服務組合簇集合Wclusters。 (1)新建一個服務組合簇集合Wclusters=?,新建一個坐標集合Q=?,遍歷服務組合簇集合Wclusters中C_Relations的各個元素,假設當前元素為item。由算法4將服務組合item映射在五維坐標系中,得到坐標 (2)遍歷集合Q中的坐標元素,假設坐標元素中Noi的最大值為Inmax,最小值為Inmin;Noo的最大值為Outmax,最小值為Outmin。inputs的最大值為Inputsmax,最小值為inputsmin;outputs的最大值為Ouputstmax,最小值為Outputsmin。Fori=InmintoInmax,j=OutmintoOutmax,k=inputsmintoInputsmax,h=OutputsmintoOuputstmaxdo,設定k、h的步長均為Rt,新建服務組合簇Wcluster=(Id,inputs,outputs,Noi,Noo,R,Qos,Zbs), 系統生成唯一的檢索號賦值給Wcluster.Id,令Wcluster.inputs=k,Wcluster.outputs=h,Wcluster.Noi=i,Wcluster.Noo=j,Wcluster.Qos=Qosmin,Wcluster.R=Rt。 (3)遍歷集合Q中的坐標元素,假設當前元素為Zbi= (4)將服務組合簇Wcluster放入服務組合簇集合Wclusters中。令Wcluster.Qos=0; 遍歷Wcluster,若當前元素為Zbi,由Zbi標記的服務組合ID獲取對應的服務組合Qos值K,若K (5)輸出服務組合簇集合Wclusters。 算法5給出了服務組合簇集的構建方法,首先將服務組合庫中的所有元素映射到五維坐標系中,然后根據服務組合坐標的分布情況,將坐標按照空間位置聚合成簇。由算法5可知,相同簇中的服務組合,其輸入參數個數相同、輸出參數個數相同、服務組合的Qos值均大于同一閥值,且輸入參數集合的語義距離在同一閥值范圍內,輸出參數集合的語義距離也在同一閥值范圍內。 定義5 用戶需求:四元組Udemand=(Id,Uinputs,Uoutputs,Qos) 為一個用戶需求,其中: (1)Id唯一標識一個用戶需求; (2)Uinputs={Input1,Input2,…,Inputj}標識用戶需求輸入參數的一個有限集合; (3)Uoutputs={Output1,Output2,…,Outputk} 標識用戶需求輸出參數的一個有限集合; (4)Qos標識用戶對服務組合服務質量的要求,且0≤QoS≤1。規定此值越大則代表服務質量情況越優; (5)用戶需求的輸入、輸出參數概念范圍與Web服務的輸入、輸出參數概念范圍相一致。 定義5給出了用戶需求的形式化定義,由定義5可知,本文將Web服務形式化為輸入參數、輸出參數和服務組合質量,下面對用戶需求的滿足規則進行定義,并給出用戶需求的可滿足定理。 定義6 用戶需求的滿足規則:給定Web服務集合Q及用戶需求Udemand=(Id,Uinputs,Uoutputs,Qos)。 如果用戶需求Udemand的輸出參數Uoutputs,能夠根據用戶需求的Uinputs,通過調用Web服務集合Q中的Web服務得到,且調用的Web服務Qos的平均值大于等于Udemand.Qos。則用戶需求Udemand對于Web服務集合Q是可滿足的。 定義7 運算符“?”:令LPNm為一個Web服務集的邏輯Petri網模型,假設P={p1,p2,…,pm} 為其庫所集,且M∈R(M0)。Q為LPNm.P的一個庫所集合。運算符“?”的規則為:M?Q=M,其中,對于j∈{1,2,…,m} (5) 定理1 用戶需求的可滿足定理:Udemandi=(Id,Uinputs,Uoutputs,Qos) 為一個用戶需求。LPNj為給定Web服務集合Q的邏輯Petri網模型,且Ma∈R(M0), 其中M0為LPNj的初始標識。用戶需求Udemandi在Web服務集合Q下是可滿足的,當且僅當: (1) (M0?Uinputs)[t1t2…ti>(Ma?Uoutputs); (2)變遷t1t2…ti標記的Web服務Qos值和的平均值大于等于Udemand.Qos; (3)變遷t1t2…ti標記的Web服務在用戶調用時其并發數小于最大并發數。 證明:[必要性]由定義5可知,Udemandi.Uinputs、Udemandi.Uoutputs屬于LPNj的庫所集中的元素。由定義7可知,Ma?Uinputs得到一個LPNj的標識,此標識蘊含了用戶需求Udemandi的輸入參數信息。M0?Uoutputs得到一個LPNj的標識,此標識蘊含了用戶需求Udemandi的輸出參數信息。因為用戶需求Udemandi在Web服務集合Q下是可滿足的。由定義6可知,用戶需求Udemand的輸出參數Uoutputs,能夠由用戶需求的輸入參數,并通過調用Web服務集合Q中的Web服務得到。則對于邏輯Petri網LPNj,標識M0?Uoutputs能夠從標識Ma?Uinputs到達,即 (M0?Uinputs)[t1t2…ti>(Ma?Uoutputs)。 因Web服務能夠被調用,所以Web服務在用戶調用時其并發數小于最大并發數。因滿足用戶需求,故由定義2可知,所調用的Web服務Qos值和的平均值大于等于Udemand.Qos。 [充分性]因為 (M0?Uinputs)[t1t2…ti>(Ma?Uoutputs), 即 (Ma?Uoutputs)∈R(M0?Uinputs), 則對于邏輯Petri網LPNj,標識M0?Uoutputs能夠從標識Ma?Uinputs到達。因變遷t1t2…ti標記的Web服務在用戶調用時其并發數小于最大并發數,故服務均可被調用。因變遷t1t2…ti標記的Web服務Qos值和的平均值大于等于Udemand.Qos,故滿足用戶對于服務質量的要求。由定義7可知,Ma?Uinputs得到一個LPNj的標識,此標識蘊含了用戶需求Udemandi的輸入參數信息。M0?Uoutputs得到一個LPNj的標識,此標識蘊含了用戶需求Udemandi的輸出參數信息。則用戶需求Udemand的輸出參數Uoutputs,能夠由用戶需求的輸入參數Uinputs,并通過調用Web服務集合Q中的Web服務得到。由定義6,用戶需求Udemandi在Web服務集合Q下是可滿足的。[證畢] 定義8 用戶滿意度:百分數變量Percent為用戶滿意度。其賦值規則為:給定一個用戶需求Udemandi=(Id,Uinputs,Uoutputs,Qos), 假設其在五維坐標系中的坐標值為Zbi= (6) 定理1給出了用戶需求的可滿足定理,明確了滿足用戶需求的相關條件,定義8給出了用戶滿意度的計算方法,為面向多用戶的服務組合發現尋優提供了評價參考。 算法6:用戶需求在五維坐標系的映射算法 輸入:用戶需求Udemand,基準詞匯Word。 輸出:坐標值Zbi。 (1)新建一個五維坐標Zbi= (2)由式(3)得到Zbi.inputs;由式(4)得到Zbi.outputs。 (3)將UID標記到Zbi,并輸出五維坐標Zbi= 定義9 坐標點的簇內相似度:在服務組合簇中存在兩個坐標點Zbj,Zbi, 假設由Zbi標記的服務組合ID對應的服務組合為 (7) 由定義1可知,本文將Web服務調用最大并發數引入系統中,則在進行面向多用戶的Web服務組合綁定時在同一時刻,系統中可能會出現一個具有相同優先級的用戶需求集合,同一個Web服務可能會同時被不同的用戶所調用,且一個Web服務的調用并發數可能會達到上線。 算法7:多用戶服務組合綁定算法 輸入:用戶需求集合Udemands,Web服務集合Q,并發數閥值S。 輸出:服務組合綁定集合。 (1)Web服務集合Q的動態調整。若?Ws∈Q, 且S≤(Ws.Com-Value), 則在Q中刪除Ws,Value為Ws當前服務并發數。由算法5構建服務組合簇集合Wclusters。 (2)新建服務組合綁定集合Binds=?,遍歷用戶需求集合Udemands,假設當前元素為Udemand,由算法6將用戶需求Udemand映射到五維坐標系中,并獲取坐標Zbi= (3)遍歷服務組合簇集合Wclusters,假設當前元素為服務組合簇Wcluster=(Id,inputs,outputs,Noi,Noo,R,Qos,Zbs), 若Zbi.Noi==Wcluster.Noi, 且Zbi.Noo==Wcluster.Noo, 且Wcluster.R≤|Zbi.Inputs-Wcluster.inputs|, 且Wcluster.R≤|Zbi.outputs-Wcluster.outputs|, 則鎖定服務組合簇Wcluster。 (4)新建一個變量flag=0;遍歷Wcluster.Zbs,假設當前元素為Zbj= (5)假設flag標記的坐標為Zbi,將Zbi標記的服務組合放入集合Binds中,并由系統向用戶反饋服務組合信息。 (6)輸出Binds。 實驗硬件環境為i7-6500U CPU @ 2.50 GHZ 2.50 GHZ,8.0 GB內存。仿真平臺運行頁面的設計如下所述。在VS 2010中建立C#的項目,進行Winform桌面控件的選擇及布局。仿真平臺頁面如圖1所示。 圖1 實驗平臺頁面 軟件代碼的編寫與按鈕功能實現如下所述。 (1)生成Web服務功能。首先在Web服務個數輸入框內輸入需生成的Web服務個數,當點擊生成Web服務按鈕時觸發生成Web服務程序。生成Web服務編程的基本思想是:首先按照本文定義1的結構定義Web服務類,輸入、輸出集定義為鏈表類型,同步在SQL數據庫中構建Web服務數據表,表的屬性結構與Web服務類中的參數一致。程序循環次數是需生成的Web服務個數,對于程序的每一次循環都要生成一個Web服務。ID號、Qos、Com隨機生成,Web服務的輸入、輸出參數集的生成思想是:字母“a”到字母“z”的ASSIC碼區間為97至122。程序中利用Random.Next(1,100)函數隨機確定將要構建的參數集中的參數個數;利用Random.Next(1,50)函數隨機確定某個參數的長度;利用Random.Next(97,123)函數隨機確定某個參數的組成元素,將組成元素的ASSIC碼值的和定為詞匯語義值;生成Web服務結束后利用MessageBox.Show()函數彈出提示框。 (2)生成用戶需求功能。首先在用戶需求個數文本框內輸入需生成的用戶需求個數。當點擊生成用戶需求按鈕時觸發生成用戶需求程序。用戶需求的生成思想與Web服務的生成思想相似。 (3)按照本文技術路線實現多用戶服務組合發現按鈕功能,按照算法2、算法3和算法5構建服務集合的LNP模型、服務組合庫及服務組合簇集,按照算法7進行服務組合發現。按照文獻[13-15]的技術路線分別實現基于服務簇、服務組合簇頭、相似度的服務發現按鈕功能。 服務發現效率計算的思想是:在點擊相應的服務查找按鈕后,利用System.Diagnostics.Stopwatch類中的start方法開始計時;當服務發現結束后,利用Stopwatch類中的stop方法結束計時;然后,讀取Stopwatch類中的ElapsedMilliseconds屬性值獲取服務查找運行的總時間。服務發現精確度按照本文定義8給出的用戶滿意度進行計算,并通過在程序中設置斷點、提示框輸出等方式對生成的Web服務、用戶需求、服務組合庫、服務組合簇集、服務組合發現效果等進行復核。 實驗1:在Web服務總數不變,用戶需求個數變化的情況下進行Web服務組合查找實驗及比較。首先生成兩萬個Web服務,用戶需求個數依次為一至八百個。每次輸入用戶需求個數后,點擊生成用戶需求按鈕生成用戶需求,再點擊4個服務發現按鈕對方法性能進行獲取。實驗一的效率統計結果如圖2所示,精度統計結果如圖3所示。 圖2 實驗一效率結果 圖3 實驗一精度結果 從圖2可知,在服務總數不變時,隨著用戶需求個數的增多,基于4種方法的服務查找時間都增多。對4種方法實驗結果進行比較可知,本文所述方法的效率較優,并且隨著用戶需求個數的增多,本文所述方法的優越性越明顯。 從圖3可知,在服務總數不變時,隨著用戶需求個數的增多,基于4種方法的服務查找精確度變化幅度較小。對4種方法實驗結果進行比較可知,本文所述方法的精度較優。 實驗2:在用戶需求個數不變,Web服務總數變化的情況下進行Web服務查找實驗及比較。固定生成用戶需求為300個,生成Web服務個數依次為1~8萬個。實驗二效率結果如圖4所示,精度結果如圖5所示。 圖4 實驗二效率結果 圖5 實驗二精度結果 從圖4可知,在用戶需求個數不變,Web服務總數變化的情況下,隨著服務個數的增多,基于4種方法的服務查找時間不斷變大,服務查找效率不斷降低。對4種方法實驗結果進行比較可知,本文所述方法的服務組合發現效率較優。 從圖5可知,在用戶需求個數不變,Web服務總數變化的情況下,隨著服務個數的增多,基于4種方法的服務查找精確度有增大趨勢。對4種方法實驗結果進行比較可知,本文所述方法的精度較優。 理論分析:本文所述方法在效率上的理論優越性體現在:①本文利用邏輯Petri網的可達性分析方法獲取了面向服務集合的全部服務組合,依據聚類半徑構建了結構化的服務組合簇集合,從服務集合整體角度優化了服務發現的基數。②本文構建了五維坐標系,將服務組合及用戶需求映射為坐標數據,為服務發現進行充分的數據預處理。并利用計算坐標距離的方法實現服務組合發現,簡化了服務組合發現環節。 本文所述方法在精度上的理論優越性體現在:①本文對服務組合的服務質量計算方法進行了形式化定義,服務組合綁定中,對服務組合的輸入、輸出參數進行了基于語義的全匹配,并考慮了服務質量,優化了服務查準率。②本文從多用戶需求角度出發,在進行服務組合發現時考慮了服務最大并發數,并動態更新了Web服務集合,降低了用戶服務組合調用失敗的幾率,增大了用戶滿意度。③本文所述方法是基于服務組合簇集的。服務組合簇集覆蓋了服務集合內輸入、輸出組合關系,羅列了所有輸入、輸出可能的對應情況,并且明確了從某一輸入到某一輸出的服務調用序列。用戶需求在服務組合簇集中進行服務查找,可最大程度找到滿足用戶需求的服務組合。 為優化服務發現效率及精度,本文提出了一種基于服務組合簇集的多用戶Web服務組合綁定方法。構建了服務集合的LPN模型及服務組合庫,并將服務組合映射到五維坐標系中;利用基于語義的詞匯距離計算方法構建服務組合簇集合。最后,考慮Web服務的最大并發數,并利用語義相似度計算方法,在Web服務組合簇集合中動態發現了滿足用戶需求的服務組合。實驗驗證了本文方法在優化服務組合發現性能上具有優越性。下一步將對基于WSDL的Web服務描述特征提取進行研究。1.2 構建Web服務組合庫
1.3 構建Web服務組合簇集合
2 多用戶Web服務組合發現

3 仿真實驗
3.1 搭建實驗仿真平臺

3.2 實驗比較及分析




4 結束語