[發明專利]關鍵字驅動的Web服務自動組合方法有效
| 申請號: | 201910003351.0 | 申請日: | 2019-01-03 |
| 公開(公告)號: | CN109688014B | 公開(公告)日: | 2022-04-08 |
| 發明(設計)人: | 張蕾;俞東進;孫笑笑;侯文杰;應鈺柯 | 申請(專利權)人: | 杭州電子科技大學 |
| 主分類號: | H04L41/5054 | 分類號: | H04L41/5054;H04L67/02;H04L41/142 |
| 代理公司: | 杭州君度專利代理事務所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310018 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 關鍵字 驅動 web 服務 自動 組合 方法 | ||
1.關鍵字驅動的Web服務自動組合方法,其特征在于,包括如下步驟:
步驟(1).輸入Web服務庫W、語義本體Ont以及基于關鍵字的Web服務組合請求R={IR,OR,KR,QR};其中IR表示用戶提供的初始輸入;OR表示用戶期待的最終輸出;KR={k1,k2,...,kn}是用戶查詢的關鍵字的集合,n≥1,表示Web服務組合方案中應包含的關鍵服務功能;Web服務庫W中的每個Web服務都有相應的關鍵字,關鍵字從服務描述文件中獲取,用以描述服務的功能信息;QR表示特定關鍵字之間的執行順序;
步驟(2).根據IR、OR以及語義本體Ont對服務之間的輸入輸出參數進行語義匹配,將離散的Web服務逐層連接,構建服務初始匹配圖GI=(V,E);其中V=S∪P是節點的集合,S表示Web服務節點集合,P表示數據傳輸過程中的I/O參數節點集合;S=SR∪{so,sd},其中SR表示服務初始匹配圖中包含的Web服務節點;so、sd是兩個特殊的虛擬服務節點,分別對應于服務初始匹配圖中的頭尾節點;so不包含任何輸入,它的輸出是IR;sd不包含任何輸出,它的輸入是OR;E=SP∪PS是有向邊的集合,表示服務節點與I/O參數節點之間的依賴關系;
步驟(3).對服務初始匹配圖進行預處理,預處理過程包括檢測并去除死鎖、合并等效橋接服務、去除冗余服務節點;
步驟(4).為服務初始匹配圖中的每個Web服務節點構建索引LNP以記錄每個服務的必經前驅關鍵字節點集合;構建索引MND以記錄每個服務節點與頭節點so之間的最短距離及最短路徑上包含的服務集合;
步驟(5).在服務初始匹配圖中運行DP-DFS啟發式關鍵字搜索算法來生成最終的最優服務組合GF;
DP-DFS啟發式關鍵字搜索算法的具體執行過程如下:
1)從初始匹配圖的尾節點sd開始,逆向進行關鍵字搜索;將sd的每個輸入參數添加到棧Inun中;初始化鍵值對集合Kselk,v,其中k表示某個待查詢的關鍵字,v表示關鍵字對應的服務節點;初始化最優服務組合GF服務個數的上限值upper-bound為無窮大;初始化當前部分解決方案GP=Inun,Ssel,Ksel,LNS并將其添加到棧Tps中,其中Ssel和Ksel分別表示部分解決方案中已包含的服務集合和關鍵字集合,LNS是為部分解決方案中每一個尚未處理的服務節點構建的索引,用來記錄服務節點的必經后繼關鍵字節點,其中尚未處理的服務節點表示仍含有未匹配輸入的服務;
2)從棧Tps中彈出一個待擴展的部分解決方案進行如下判斷:首先,根據以下預測函數計算其最小服務個數值f(GP):
f(GP)=g(GP)+h(GP)
其中,g(GP)表示部分解決方案中已包含的服務節點個數;h(GP)表示從當前部分解決方案擴展到完整解決方案的啟發式預估最小成本,最小成本為包含的最小節點個數;若f(GP)大于upper-bound,則返回步驟2);若當前部分解決方案沒有未解決的輸入參數且它包含了所有查詢關鍵字,則將其作為當前的最優服務組合方案GF并更新upper-bound值為該組合方案中包含的服務個數,返回步驟2);
3)從Inun中取出一個未解決的輸入參數i,并獲取與i連接的所有前驅服務節點作為它的候選服務節點集合CANDIDATE(i);
4)對i的每一個候選服務節點進行如下操作:若該候選服務節點的前驅必經關鍵字已包含在當前部分解決方案中,或者該候選服務節點的前驅必經關鍵字與部分解決方案中已有關鍵字之間不符合時序要求,或者選擇該候選服務節點會造成循環,則從CANDIDATE(i)中移除該服務節點;所述的候選服務節點的前驅必經關鍵字由索引LNP得出;
5)在CANDIDATE(i)剩余的服務節點中選擇與頭節點so之間的最短距離最大的服務節點s進行如下操作:生成當前部分解決方案的副本并將該候選服務節點添加進來;更新相關變量Inun、Ssel、Ksel以及LNS;將新生成的部分解決方案壓入棧Tps中;
6)重復步驟5),直到CANDIDATE(i)中不存在未被處理的服務節點;
7)重復步驟2)~步驟6),直到Tps中不包含任何待擴展的部分解決方案;
8)輸出此時的最優服務組合方案GF。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州電子科技大學,未經杭州電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910003351.0/1.html,轉載請聲明來源鉆瓜專利網。





