鄭婷婷 黃英持 曹偉
摘要:為實(shí)現(xiàn)基于歷史知識(shí)與規(guī)則的Web服務(wù)組合優(yōu)化,對(duì)于待解決的特定任務(wù)和問(wèn)題,提出了一種Web服務(wù)組合優(yōu)化方法。這種方法把Aprior算法應(yīng)用于Web服務(wù)組合,通過(guò)挖掘歷史日志中Web服務(wù)的關(guān)聯(lián)規(guī)則,計(jì)算各種歷史Web服務(wù)組合方案的支持度,生成針對(duì)當(dāng)前問(wèn)題的頻繁項(xiàng)集,并可根據(jù)每種組合的置信度,動(dòng)態(tài)地自動(dòng)選取合適的Web服務(wù),產(chǎn)生推薦的Web服務(wù)組合方案。這種方法可應(yīng)用于流程管理、智能規(guī)劃等領(lǐng)域。
關(guān)鍵詞:Web服務(wù)組合;數(shù)據(jù)挖掘;Aprior算法;關(guān)聯(lián)規(guī)則;頻繁集
中圖分類(lèi)號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)32-0011-03
Abstract:To optimize web service composition based on historical knowledge and rules, an approach of web service composition optimization is proposed for solving specific tasks and problems. The algorithm of Aprior is applied for web service composition. The degree of support for various historical web service composition schemes is calculated and the frequent itemsets for current problems are generated by mining association rules of web services in historical logs. According to the confidence of historical web service compositions, the suitable schemes for web service composition can be selected dynamically and automatically. The approach can be applied in the fields of process management, intelligent planning, etc.
Key words: web service composition; data mining; the algorithm of Aprior; association rules;frequent itemsets
1 引言
Web服務(wù)是平臺(tái)獨(dú)立的、低耦合的、自包含的、基于可編程的Web應(yīng)用程序,可使用開(kāi)放的XML標(biāo)準(zhǔn)來(lái)描述、發(fā)布、發(fā)現(xiàn)、協(xié)調(diào)和配置,能使得運(yùn)行在不同機(jī)器上的不同應(yīng)用無(wú)須借助附加的第三方軟件或硬件, 就可相互交換數(shù)據(jù)或集成,為整個(gè)企業(yè)甚至多個(gè)組織之間的業(yè)務(wù)流程的集成提供了一個(gè)通用機(jī)制[1]。目前,兩種類(lèi)型的Web服務(wù)是最流行和廣泛使用的:基于SOAP的Web服務(wù)和REST(Representational State Transfer)的Web服務(wù)[2]。
隨著互聯(lián)網(wǎng)的快速發(fā)展,單個(gè)Web 服務(wù)有時(shí)不能完全解決用戶(hù)提出的一些請(qǐng)求,而Web服務(wù)組合則可以把各個(gè)功能單一的Web 服務(wù),按照某些有效的方式進(jìn)行組合,從而提高工作效率。如何將這些服務(wù)有效集成,實(shí)現(xiàn)更為復(fù)雜的、功能更豐富的大規(guī)模流程服務(wù),也成為服務(wù)計(jì)算領(lǐng)域的研究熱點(diǎn)[3]。
本文主要從Web服務(wù)之間的關(guān)聯(lián)規(guī)則出發(fā),提出一種基于關(guān)聯(lián)知識(shí)與關(guān)聯(lián)推薦的服務(wù)組合方法,可根據(jù)要執(zhí)行的任務(wù)和待解決的問(wèn)題,動(dòng)態(tài)地自動(dòng)選取合適的Web服務(wù)進(jìn)行自動(dòng)組合,使得Web服務(wù)組合的實(shí)現(xiàn)更加靈活、高效。
2 相關(guān)研究
Web 服務(wù)組合是將若干成員服務(wù)組合成大粒度流程服務(wù)的過(guò)程,工業(yè)界和學(xué)術(shù)界提出了眾多的 Web 服務(wù)組合方法,可根據(jù)不同的分類(lèi)標(biāo)準(zhǔn)進(jìn)行歸類(lèi):按照Web 服務(wù)組合實(shí)現(xiàn)方式可以分為服務(wù)編制(Orchestration)和服務(wù)編排(Choreography);按照Web 服務(wù)組合的動(dòng)態(tài)性程度可以分為靜態(tài)Web 服務(wù)組合和動(dòng)態(tài)Web 服務(wù)組合;按照自動(dòng)化程度可以分為手動(dòng)Web服務(wù)組合、半自動(dòng)Web 服務(wù)組合和全自動(dòng)Web 服務(wù)組合方法;按照Web 服務(wù)組合方法的技術(shù)或理論基礎(chǔ)可以分為基于工作流的服務(wù)組合和基于人工智能的服務(wù)組合等[3]。
Web 服務(wù)組合實(shí)質(zhì)為NP 難問(wèn)題,目前主流算法是智能優(yōu)化算法。近年來(lái),智能算法在Web服務(wù)組合中的應(yīng)用成為Web服務(wù)組合領(lǐng)域的研究熱點(diǎn)之一,包括遺傳算法與協(xié)同過(guò)濾[4]、蟻群算法[5]、粒子群算法[6][7]等,這些算法在解決Web 服務(wù)組合問(wèn)題上非常有研究?jī)r(jià)值。
由于Web服務(wù)組合要遵循一定的知識(shí)與規(guī)則,而傳統(tǒng)的協(xié)同過(guò)濾主要是根據(jù)用戶(hù)的歷史反饋信息,但這種反饋不一定適用于解決當(dāng)前的需求。關(guān)聯(lián)推薦是基于知識(shí)的推薦方法。與傳統(tǒng)的協(xié)同過(guò)濾方式不同,基于知識(shí)的推薦主要根據(jù)知識(shí)表示,更容易產(chǎn)生適用于當(dāng)前問(wèn)題的解決方案。
3 基于關(guān)聯(lián)推薦的Web Service組合優(yōu)化
3.1 關(guān)聯(lián)規(guī)則
Apriori算法是一種用于關(guān)聯(lián)規(guī)則挖掘的代表性算法,現(xiàn)已被廣泛用于社交網(wǎng)絡(luò)[8]、用戶(hù)行為分析[9]等領(lǐng)域。
首先是Web服務(wù)集合及Web服務(wù)組合的定義。
定義1 令當(dāng)前可提供的所有Web服務(wù)全集為I。
定義2 令當(dāng)前所有日志集為D,其包含的所有日志數(shù)量為count(D)。
定義3 若某一Web服務(wù)組合S包含了k個(gè)Web服務(wù),且S?I,則稱(chēng)S為I的k項(xiàng)子集。