古凌嵐
(廣東輕工職業(yè)技術(shù)學(xué)院 計(jì)算機(jī)工程系,廣東 廣州510300)
Web服務(wù)組合現(xiàn)已成為面向服務(wù)的計(jì)算模式下應(yīng)用構(gòu)造的主要方式,隨著面向服務(wù)技術(shù)的廣泛應(yīng)用,功能相似性能相異的Web服務(wù)也越來(lái)越多,使得用戶需要花費(fèi)大量時(shí)間搜索自己滿意的服務(wù),因此,在匹配功能需求的前提下,如何快速有效地發(fā)現(xiàn)服務(wù)質(zhì)量(quality of service,QoS)良好、適合用戶個(gè)性化需求的Web服務(wù),已成為Web服務(wù)組合技術(shù)成功應(yīng)用的關(guān)鍵和研究熱點(diǎn)。目前,許多研究成果對(duì)此進(jìn)行了闡述,如文獻(xiàn)[1,2]在功能匹配的基礎(chǔ)上,結(jié)合用戶QoS約束和QoS屬性偏好,更好地滿足了用戶對(duì)服務(wù)質(zhì)量的要求。文獻(xiàn)[3,4]基于聚類思想,對(duì)于功能相似而QoS不同的語(yǔ)義Web 服務(wù)先分類后排序,縮小了搜索范圍,在滿足功能和質(zhì)量要求的同時(shí),提高了服務(wù)發(fā)現(xiàn)的效率。文獻(xiàn)[5]以語(yǔ)義Web服務(wù)發(fā)現(xiàn)的結(jié)果為基礎(chǔ),利用用戶和服務(wù)的情境信息、預(yù)定義的情境規(guī)則和規(guī)則等級(jí),進(jìn)一步篩選和排序得到適應(yīng)用戶情境的Web服務(wù),提高了用戶滿意度。通過(guò)分析發(fā)現(xiàn)已有研究存在以下不足:
(1)對(duì)用戶信息的利用不充分。Web服務(wù)資源的迅速膨脹,使得用戶的個(gè)性化需求逐漸成為服務(wù)發(fā)現(xiàn)的重要依據(jù),但目前主要從當(dāng)前用戶背景和QoS屬性偏好來(lái)考慮,較少關(guān)注歷史數(shù)據(jù)(如歷史用戶評(píng)價(jià)、歷史用戶信息等)的利用,而歷史數(shù)據(jù)反映了用戶的行為習(xí)慣和服務(wù)體驗(yàn)的滿意度,對(duì)于發(fā)現(xiàn)用戶個(gè)人偏好具有重要的價(jià)值。
(2)忽視了服務(wù)動(dòng)態(tài)性和網(wǎng)絡(luò)特性對(duì)于QoS 的影響。已有研究中多采用服務(wù)提供者提供的原始QoS值,由于服務(wù)的動(dòng)態(tài)性和網(wǎng)絡(luò)的不確定性,QoS的許多指標(biāo)是動(dòng)態(tài)變化的,直接影響了服務(wù)發(fā)現(xiàn)的有效性。
針對(duì)Web服務(wù)組合過(guò)程中服務(wù)發(fā)現(xiàn)的問(wèn)題,本文提出一種基于情景的Web服務(wù)推薦方法,構(gòu)建情境模型刻畫(huà)用戶和服務(wù)的信息,利用服務(wù)歷史執(zhí)行信息建立和更新服務(wù)緩存,采用K-MEANS算法實(shí)現(xiàn)服務(wù)情境聚類,并進(jìn)行服務(wù)查找和初步QoS約束篩選;綜合用戶特征和用戶評(píng)價(jià)相似性,結(jié)合服務(wù)聚類集,進(jìn)行用戶情境聚類,利用情境相似用戶的預(yù)測(cè)和使用頻率優(yōu)化初步推薦結(jié)果,從而最大限度地滿足了用戶個(gè)性化需求,同時(shí)也提高了服務(wù)發(fā)現(xiàn)的效率。
情境是用來(lái)描述任何一個(gè)實(shí)體情況的所有信息,本文總結(jié)文獻(xiàn)[6,7]情境的定義及分類工作,把情境分為用戶特征情境、服務(wù)情境和用戶評(píng)價(jià)情境3個(gè)部分。用戶特征情境包括用戶背景和平臺(tái)環(huán)境,其中用戶背景是指用戶的基本特征,包括姓名、性別、年齡、職業(yè)和民族。平臺(tái)環(huán)境是指用戶所在位置、硬件設(shè)備和網(wǎng)絡(luò)狀態(tài),硬件設(shè)備是指用戶所使用的設(shè)備,如PDA 或PC,網(wǎng)絡(luò)狀態(tài)包括網(wǎng)絡(luò)帶寬、延遲和安全性。服務(wù)情境包括服務(wù)描述和QoS 情境。其中服務(wù)描述包括服務(wù)名、輸入/輸出屬性、前提和結(jié)果。QoS情境是指經(jīng)過(guò)一段時(shí)間統(tǒng)計(jì)到的服務(wù)質(zhì)量有關(guān)屬性,包括響應(yīng)時(shí)間、服務(wù)費(fèi)用、可用性和可靠性。用戶評(píng)價(jià)情境是指用戶對(duì)于服務(wù)的滿意程度,包括服務(wù)標(biāo)識(shí)、用戶標(biāo)識(shí)和用戶評(píng)分。
為了充分利用情境信息,需要建立統(tǒng)一的描述和表示模型,以刻畫(huà)服務(wù)、用戶特征和用戶評(píng)價(jià)信息,給出以下定義:
定義1 服務(wù)情境模型定義為SC=(SInfo,QoS,TStat),其中SInfo={Name,Inpu,Outp,Cond,Effe}表示服務(wù)描述,包括服務(wù)名、輸入屬性、輸出屬性、前提和結(jié)果集,QoS={Time,Cost,Avai,Reli}表示服務(wù)質(zhì)量,包括響應(yīng)時(shí)間、費(fèi)用、可用性和可靠性,TStat為更新時(shí)間。
定義2 用戶特征情境模型定義為UC=(Feat,Plat)。其中Feat={Name,Gend,Age,Prof,Nati}表示用戶背景,包括姓名、性別、年齡、職業(yè)和民族,Plat={Loca,Devi,NStatu}表示平臺(tái)環(huán)境,包括用戶所在位置、硬件設(shè)備(PDA/PC)和網(wǎng)絡(luò)狀態(tài),NStatu={NBand,NDela,NSecu}表示網(wǎng)絡(luò)狀態(tài),包括網(wǎng)絡(luò)帶寬、網(wǎng)絡(luò)延遲和網(wǎng)絡(luò)安全性。
定義3 用戶評(píng)價(jià)情境模型定義為UR =(Uid,Sid,Score),其中Uid、Sid 和Score 分別表示用戶標(biāo)識(shí)、服務(wù)標(biāo)識(shí)和用戶評(píng)分。
本文方法的基本思路是:①構(gòu)建情境模型描述用戶特征、服務(wù)和用戶評(píng)價(jià)信息;②收集服務(wù)運(yùn)行時(shí)信息,建立和更新服務(wù)緩存;③對(duì)于相似情境的服務(wù)和用戶進(jìn)行聚類;④基于服務(wù)情境發(fā)現(xiàn)符合功能和QoS 要求的初步結(jié)果;⑤基于用戶情境進(jìn)一步推薦符合用戶偏好的候選服務(wù),從而得到最適合用戶的推薦結(jié)果。服務(wù)推薦框架如圖1所示。
圖1 Web服務(wù)推薦框架
圖1中各部分的主要功能:
服務(wù)代理:負(fù)責(zé)解析用戶提出的服務(wù)請(qǐng)求,向服務(wù)推薦引擎提交其可識(shí)別的功能需求和QoS約束描述,返回服務(wù)推薦結(jié)果給用戶,并負(fù)責(zé)捕獲服務(wù)執(zhí)行信息,收集用戶的使用評(píng)價(jià),提交給推薦引擎。
服務(wù)推薦引擎:由服務(wù)情境推薦、用戶情境推薦、服務(wù)緩存管理、服務(wù)聚類和用戶聚類模塊組成。事先服務(wù)聚類和用戶聚類模塊分別利用服務(wù)信息、用戶評(píng)價(jià)和用戶信息庫(kù),對(duì)相似情境的服務(wù)和用戶進(jìn)行聚類。用戶提出請(qǐng)求時(shí),服務(wù)情境推薦模塊負(fù)責(zé)查找功能匹配服務(wù)所在類,若查找失敗,則通過(guò)UDDI注冊(cè)中心搜尋并返回功能和QoS匹配的具體服務(wù),服務(wù)推薦結(jié)束;若查找成功,則計(jì)算其總的QoS值,按QoS降序排序,并剔除小于QoS約束最低容忍度的服務(wù),得到初步推薦結(jié)果集。用戶情境推薦模塊負(fù)責(zé)查找用戶所在類,結(jié)合預(yù)測(cè)評(píng)價(jià)和使用頻率降序排序,得到最終推薦結(jié)果集,提交給服務(wù)代理。服務(wù)緩存管理模塊負(fù)責(zé)建立和更新服務(wù)緩存,包括QoS參數(shù)的更新。
UDDI注冊(cè)中心:負(fù)責(zé)Web服務(wù)的發(fā)布,并提供服務(wù)查詢功能。
為了提高服務(wù)查詢效率,本文引入了服務(wù)緩存機(jī)制。每當(dāng)服務(wù)被調(diào)用時(shí),服務(wù)代理主動(dòng)進(jìn)行監(jiān)測(cè),收集該服務(wù)執(zhí)行時(shí)信息,包括服務(wù)標(biāo)識(shí)、服務(wù)描述、響應(yīng)時(shí)間、費(fèi)用、可用性和可靠性,保存在服務(wù)信息庫(kù)作為服務(wù)緩存。當(dāng)用戶請(qǐng)求服務(wù)時(shí),服務(wù)推薦引擎先查詢服務(wù)緩存,查找成功則進(jìn)入推薦的下一步工作,只有查詢不成功時(shí),才需要通過(guò)UDDI注冊(cè)中心發(fā)現(xiàn)服務(wù),隨著服務(wù)緩存中數(shù)據(jù)的不斷積累,服務(wù)查詢效率將會(huì)不斷提高。
由于Web服務(wù)的動(dòng)態(tài)性,服務(wù)緩存中的數(shù)據(jù)需及時(shí)更新,一方面,對(duì)于長(zhǎng)時(shí)間無(wú)人訪問(wèn)的服務(wù)或是服務(wù)質(zhì)量低下的服務(wù)定期進(jìn)行刪除;另一方面,根據(jù)每次服務(wù)執(zhí)行情況,需重新評(píng)估QoS各參數(shù),以保證QoS的時(shí)效性。QoS數(shù)據(jù)是本文初步推薦服務(wù)的主要依據(jù),下面重點(diǎn)對(duì)于QoS參數(shù)評(píng)估的方法進(jìn)行說(shuō)明。
由于Web服務(wù)的動(dòng)態(tài)性,使得QoS 值也隨之不斷變化,越近時(shí)間得到的QoS數(shù)據(jù)對(duì)于服務(wù)質(zhì)量評(píng)估的貢獻(xiàn)越大,為此,引入時(shí)間衰減因子λ,每當(dāng)服務(wù)被調(diào)用時(shí),利用每次服務(wù)執(zhí)行時(shí)收集的QoS數(shù)據(jù),結(jié)合λ對(duì)QoS的各參數(shù)進(jìn)行重新評(píng)估
式中:qijold、qij′——緩存中服務(wù)QoS參數(shù)、最新評(píng)估的服務(wù)QoS參數(shù),qij——服務(wù)執(zhí)行時(shí)QoS 參數(shù),λ——時(shí)間衰減因子,值域?yàn)椋?,1],為了盡量準(zhǔn)確地反映服務(wù)當(dāng)前的狀態(tài),忽略時(shí)間跨度很近的衰減影響,取λ=0.5,而時(shí)間跨度過(guò)大的QoS 已無(wú)太大價(jià)值,取λ=1,因此,λ計(jì)算公式如下
式中:tcur、told——當(dāng)前、QoS統(tǒng)計(jì)時(shí)間,T——有效時(shí)間跨度,T0——可忽略衰減的時(shí)間跨度,λ越大,則qijold的重要性越低。
由于QoS參數(shù)包括成本型和效益型兩種,成本型包括服務(wù)費(fèi)用和響應(yīng)時(shí)間,取值越大,質(zhì)量越低;效益型包括可用性和可靠性,取值越大,質(zhì)量越高。為了便于計(jì)算和比較,在計(jì)算服務(wù)總的QoS之前還需要對(duì)QoS 各參數(shù)進(jìn)行歸一化處理,將其規(guī)格化到相同量綱上。本文采用的歸一化公式如下
式中:qij′、qij″——某QoS參數(shù)處理前、后的值,、——該項(xiàng)參數(shù)最大、最小值,式(a)用于成本型參數(shù),式(b)則應(yīng)用于效益型參數(shù)。
聚類算法通過(guò)對(duì)n 個(gè)對(duì)象不斷地分類,形成若干個(gè)聚類集合,同一類中對(duì)象的相似度較高,而不同類中對(duì)象的差別較大。本文采用K-MEANS聚類算法,通過(guò)計(jì)算服務(wù)情境相似性,對(duì)于服務(wù)進(jìn)行聚類。
服務(wù)相似性通過(guò)服務(wù)情境信息中服務(wù)描述屬性的語(yǔ)義相似度來(lái)體現(xiàn),計(jì)算公式如下。
式中:w1~w5——服務(wù)名稱、輸入/輸出、前提和結(jié)果屬性的權(quán)重,式中的本體間距離和屬性間語(yǔ)義相似度的計(jì)算參考文獻(xiàn)[6]中方法。
服務(wù)情境聚類的算法描述:
算法1:服務(wù)情境聚類
輸入:服務(wù)情境集合SC={sc1,sc2,…,scn}。
輸出:服務(wù)類的集合C={C1,C2,…,Ck}。
(1)任意選K 個(gè)相互間相似度小于閾值δ的服務(wù),將其服務(wù)情境向量作為初始的聚類中心,記為c={c1,c2,…,ck};
(2)初始化服務(wù)類的集合C;
(3)REPEAT
協(xié)同過(guò)濾推薦算法是基于用戶評(píng)價(jià)項(xiàng)目相似性計(jì)算用戶相似性,來(lái)發(fā)現(xiàn)目標(biāo)用戶的最近鄰,從而成功地預(yù)測(cè)用戶感興趣的項(xiàng)目。本文將其用戶相似度計(jì)算方法引入用戶情境聚類中,綜合用戶評(píng)價(jià)相似性和用戶特征相似性度量用戶情境相似度,考慮到實(shí)際上用戶評(píng)價(jià)服務(wù)的數(shù)量偏少所引起的數(shù)據(jù)稀疏性對(duì)于計(jì)算準(zhǔn)確性的影響,在服務(wù)聚類基礎(chǔ)上,先計(jì)算各服務(wù)類內(nèi)的用戶情境相似度,以減少相似用戶搜尋空間,而后據(jù)此進(jìn)行類之間聚合,最終得到用戶聚類的集合。
(1)用戶評(píng)價(jià)相似性采用常用的Person 相關(guān)系數(shù)度量,該方法是基于用戶共同評(píng)分過(guò)的服務(wù)集合來(lái)計(jì)算的,為了避免共同評(píng)分服務(wù)較少時(shí)出現(xiàn)相似性度量的偶然性,總結(jié)文獻(xiàn)[8]工作,引入評(píng)分服務(wù)交集最小閾值η對(duì)于相似度計(jì)算進(jìn)行修正
(2)對(duì)于用戶特征相似性,本文假設(shè)用戶特征的各屬性均可量化,包括數(shù)值型和區(qū)間型兩類,而數(shù)值型屬性分為成本型和效益型,為了便于計(jì)算采用式(3)進(jìn)行了規(guī)范化處理。用戶特征相似度包括數(shù)值型和區(qū)間型屬性相似度計(jì)算。
數(shù)據(jù)型屬性相似度
區(qū)間型屬性相似度。
采用相對(duì)長(zhǎng)度法計(jì)算區(qū)間型屬性的相似度,計(jì)算公式為
式中:L(ui)、L(vi)和L(ui∩vi)——u 和v 的第i 個(gè)屬性區(qū)間長(zhǎng)度,以及兩個(gè)屬性間重疊長(zhǎng)度。
(3)根據(jù)用戶評(píng)價(jià)相似性和用戶特征相似性的度量方法,可得到用戶情境相似性計(jì)算公式為
式中:w1,w2——權(quán)重系數(shù),w1+w2=1,且w1>w2,k是聚類數(shù)。
服務(wù)情境和用戶情境聚類無(wú)實(shí)時(shí)性要求,可采用離線方式,在服務(wù)推薦處理之前完成。算法描述如下:
算法2:基于情境的Web服務(wù)推薦算法
輸入:服務(wù)類的集合C、用戶類的集合U、用戶標(biāo)識(shí)v、服務(wù)功能需求Sreq、服務(wù)QoS約束Qreq和用戶QoS偏好權(quán)重w。
教學(xué)手段和方法的創(chuàng)新 基于前述搭建的虛擬共享實(shí)訓(xùn)平臺(tái),本改革對(duì)變速箱拆裝實(shí)訓(xùn)課程的教學(xué)手段和方法進(jìn)行創(chuàng)新,將整個(gè)拆裝實(shí)訓(xùn)課程劃分為課前、課中和課后三個(gè)階段(如圖1所示)。
輸出:滿足用戶個(gè)性化需求的服務(wù)集合RSfinal。
1.For each cluster Ci∈C do i∈{1,…,k} //在服務(wù)類的集合中查找功能匹配的服務(wù)
2.For si∈S do//對(duì)于功能匹配的服務(wù)計(jì)算QoS
If(qi>Qreq)//若大于QoS約束則結(jié)合用戶QoS偏好計(jì)算服務(wù)總的QoS
S′=S′∪scj;//將功能匹配且大于QoS約束的服務(wù)加入S′
3.RSfirst=sort(S′,Q);//按服務(wù)總的QoS 降序排序,得到初步推薦結(jié)果
4.For 1to m do
find v∈Ui;Ui∈U//查找用戶v所在的類
5.For each user uj∈Uido//計(jì)算RSfirst預(yù)測(cè)評(píng)價(jià),統(tǒng)計(jì)使用頻率
6.If Frsi=0filter(rsi,RSfirst);//剔除頻率為0的服務(wù)
7.For each service rsi∈RSfirstdo
EFrsi=αQi+βPrsi,v+γFrsi;//計(jì)算每個(gè)服務(wù)得到的總體評(píng)價(jià),權(quán)重α+β+γ=1
8.RSfinal=sort(RSfirst,EFrsj);//按總評(píng)價(jià)降序排序,得到最終推薦結(jié)果
下面以一實(shí)例說(shuō)明本文Web服務(wù)推薦的方法。假設(shè)有50個(gè)Web服務(wù),包括5個(gè)酒店訂房服務(wù)、10個(gè)訂票服務(wù)、10個(gè)天氣預(yù)報(bào)服務(wù)和25個(gè)景點(diǎn)查詢服務(wù),這些服務(wù)均已被使用過(guò),其中酒店訂房服務(wù)有6人使用過(guò),包括一名學(xué)生u6。他現(xiàn)準(zhǔn)備在酒店訂房,并希望酒店提供訂票服務(wù)。表1描述了酒店訂房服務(wù)使用情況,各服務(wù)的QoS和業(yè)務(wù)特點(diǎn),假設(shè)已通過(guò)情境聚類得到了服務(wù)類的集合C 和用戶類的集合U(表2),為了減少計(jì)算復(fù)雜度,QoS僅列出響應(yīng)時(shí)間和服務(wù)費(fèi)用屬性量化后的值,U 僅包含使用過(guò)酒店訂房服務(wù)的用戶類,用戶情境也僅列出用戶背景的職業(yè)屬性。
表1 用戶使用酒店訂房服務(wù)的評(píng)價(jià)(平均評(píng)分/使用次數(shù))
表2 用戶類的集合和服務(wù)類的集合列表
采用本文方法推薦Web服務(wù)的過(guò)程:
(1)在服務(wù)類的集合C 中發(fā)現(xiàn)酒店訂房服務(wù)所在類C1,得到候選服務(wù)sc1,sc2,sc3,sc4,sc5;
(2)計(jì)算各服務(wù)總的QoS值,假設(shè)sc5總的QoS值小于用戶QoS約束被剔除,則得到sc1,sc2,sc3,sc4各自總的QoS值排名(3,1,1,2);
(3)按QoS 降序排序,得到初步推薦結(jié)果sc2,sc3,sc4,sc1;
(4)在用戶類的集合U 中發(fā)現(xiàn)用戶所在類U2;
(5)計(jì)算u6對(duì)服務(wù)sc2,sc3,sc4,sc1的預(yù)測(cè)評(píng)分(4.1,4.3,0,3.2);
(6)統(tǒng)計(jì)U2使用服務(wù)sc2,sc3,sc4,sc1的頻率(11,6,0,9);
(7)剔除頻率為0 的服務(wù)sc4,設(shè)α=0.5,β=0.3,γ=0.2,計(jì)算U2對(duì)sc2,sc1,sc3的總評(píng)價(jià)為(3.52,2.92,2.57);
(8)按總評(píng)價(jià)降序排序;
(9)得到最終推薦結(jié)果sc2,sc1,sc3返回給用戶u6。
用戶u6可優(yōu)先選sc2,其次sc1,通過(guò)本文的服務(wù)推薦算法,為用戶提供了功能匹配、達(dá)到QoS約束要求,且滿足用戶個(gè)性化需求的服務(wù)。
為了進(jìn)一步驗(yàn)證本文方法的可行性和有效性,本文設(shè)計(jì)了3組實(shí)驗(yàn)。
實(shí)驗(yàn)環(huán)境:2臺(tái)服務(wù)器CPU Intel Core 2Duo 2.1GHz,內(nèi)存4G,操作系統(tǒng)Window Server 2003,數(shù)據(jù)庫(kù)SQL Server 2008。1臺(tái)PC 機(jī)CPU Intel Core 2 1.86GHz,內(nèi)存2G,操作系統(tǒng)Window XP。服務(wù)器1、2 分別用于配置Web服務(wù)和運(yùn)行本文的Web服務(wù)推薦算法,Web服務(wù)代理也配置在服務(wù)器2上。PC用于用戶提出請(qǐng)求。
實(shí)驗(yàn)數(shù)據(jù):鑒于現(xiàn)在沒(méi)有標(biāo)準(zhǔn)的測(cè)試數(shù)據(jù)集,實(shí)驗(yàn)數(shù)據(jù)均以模擬方式產(chǎn)生,共生成200個(gè)Web服務(wù)。服務(wù)的QoS屬性包括響應(yīng)時(shí)間、費(fèi)用、可用性和可靠性,在一定范圍內(nèi)隨機(jī)生成。500個(gè)用戶已使用過(guò),用戶評(píng)價(jià)在[0,5]整數(shù)范圍內(nèi)隨機(jī)生成。實(shí)驗(yàn)以響應(yīng)時(shí)間為例進(jìn)行測(cè)試,事先以隨機(jī)次數(shù)調(diào)用每個(gè)Web服務(wù),以獲得真實(shí)響應(yīng)時(shí)間參數(shù)。
實(shí)驗(yàn)1:QoS動(dòng)態(tài)變化對(duì)服務(wù)推薦的影響
設(shè)T0=60s,T=250s,響應(yīng)時(shí)間約束Time=40s,選取9個(gè)功能相同的Web服務(wù)(sc1~sc9),且sc4~sc9均滿足QoS約束。利用程序模擬延遲1s,對(duì)于服務(wù)sc1~sc3減少響應(yīng)時(shí)間,對(duì)于sc4~sc6增加響應(yīng)時(shí)間,對(duì)于sc7~sc9不做改變,對(duì)9個(gè)服務(wù)的QoS值進(jìn)行計(jì)算排序,得到最初推薦結(jié)果,共進(jìn)行5次實(shí)驗(yàn)。
分析表3數(shù)據(jù),當(dāng)某次服務(wù)被調(diào)用時(shí)QoS 發(fā)現(xiàn)變化,該服務(wù)情境的QoS響應(yīng)時(shí)間屬性也被重新評(píng)估,間隔越久的原有QoS數(shù)據(jù)重要性越低,當(dāng)再次請(qǐng)求時(shí),若重新評(píng)估后的響應(yīng)時(shí)間不能滿足QoS約束最低容忍度,將被剔除,如服務(wù)sc4在第一次延遲后其響應(yīng)時(shí)間大于40s,第二次請(qǐng)求時(shí)被剔除,實(shí)驗(yàn)結(jié)果表明,利用每次服務(wù)運(yùn)行時(shí)QoS數(shù)據(jù)動(dòng)態(tài)更新服務(wù)QoS參數(shù),保證了提供給用戶的QoS數(shù)據(jù)的真實(shí)性、可信性。
表3 QoS變化時(shí)對(duì)服務(wù)推薦的影響
實(shí)驗(yàn)2:本文方法與其它方法在準(zhǔn)確性上的比較
初選20個(gè)服務(wù),之后每次增加20 個(gè)服務(wù),對(duì)于本文方法與通過(guò)功能和QoS匹配方法 (FQM)進(jìn)行比較,圖2表明,由于本文方法中服務(wù)QoS參數(shù)得到了及時(shí)更新,在服務(wù)推薦過(guò)程中從歷史數(shù)據(jù)挖掘用戶偏好,發(fā)現(xiàn)的候選服務(wù)數(shù)相對(duì)較少,為用戶提供了滿意度較高的服務(wù),并且隨著服務(wù)數(shù)量的增加,其效果更加明顯。
圖2 服務(wù)推薦的準(zhǔn)確性比較
實(shí)驗(yàn)3:本文方法與其它方法在時(shí)間開(kāi)銷上的比較
初選20個(gè)服務(wù),之后每次增加20 個(gè)服務(wù),比較本文方法與FQM 發(fā)現(xiàn)候選服務(wù)所用的時(shí)間,圖3 表明,由于FQM 需通過(guò)服務(wù)器1查找候選服務(wù),隨著服務(wù)數(shù)量增多服務(wù)發(fā)現(xiàn)所用的時(shí)間大幅度增加,而本文方法由于引入了緩存機(jī)制,僅在緩存查找失敗時(shí),才需要訪問(wèn)服務(wù)器1,并且事先對(duì)服務(wù)信息庫(kù)中的服務(wù)進(jìn)行了聚類處理,使得服務(wù)推薦的實(shí)時(shí)性得到了明顯改善。
圖3 服務(wù)推薦的時(shí)間開(kāi)銷比較
服務(wù)發(fā)現(xiàn)是Web服務(wù)組合成功應(yīng)用的關(guān)鍵,為了解決服務(wù)發(fā)現(xiàn)的效率和用戶滿意度問(wèn)題,本文提出了基于情境的服務(wù)推薦方法。該方法建立情境模型描述服務(wù)執(zhí)行信息和用戶相關(guān)信息,利用服務(wù)歷史執(zhí)行信息建立和更新服務(wù)緩存,采用K-MEANS算法進(jìn)行相似情境服務(wù)的聚類,基于功能和QoS匹配實(shí)現(xiàn)初步服務(wù)推薦,通過(guò)綜合用戶特征和用戶評(píng)價(jià)相似性度量用戶情境相似度,先計(jì)算各服務(wù)類內(nèi)的用戶相似度,而后據(jù)此進(jìn)行類之間聚合,實(shí)現(xiàn)用戶情境聚類,利用用戶所在類對(duì)初步結(jié)果的預(yù)測(cè)評(píng)價(jià)和統(tǒng)計(jì)使用頻率,使得推薦結(jié)果得到了進(jìn)一步精化和優(yōu)化,實(shí)例分析和實(shí)驗(yàn)結(jié)果表明,本文方法能夠快速有效地發(fā)現(xiàn)質(zhì)量良好、滿足用戶個(gè)性需求的服務(wù)。下一步工作重點(diǎn)是服務(wù)組合過(guò)程中服務(wù)發(fā)現(xiàn)的安全性問(wèn)題。
[1]WANG P.QoS-aware Web services selection with intuitionistic fuzzy set under consumer’s vague perception [J].Expert System with Applications,2009,36 (3):4460-4466.
[2]FENG Jianzhou,KONG Lingfu.Research on web service composition based on fuzzy QoS and preference weight[J].Journal of Chinese Computer Systems,2012,33 (7):1517-1521 (in Chinese). [馮建周,孔令富.基于模糊QoS 和偏好權(quán)重的Web服務(wù)組合方法研究 [J].小型微型計(jì)算機(jī)系統(tǒng),2012,33(7):1517-1521.]
[3]BAI Wen,LI Shuyu,DU Xuezhi.Fuzzy C-means clustering semantic web service discovery [J].Computer Engineering and Design,2012,33 (11):4183-4186 (in Chinese).[白雯,李蜀瑜,杜學(xué)智.模糊C-均值聚類語(yǔ)義Web服務(wù)發(fā)現(xiàn) [J].計(jì)算機(jī)工程與設(shè)計(jì),2012,33 (11):4183-4186.]
[4]MA Hua,LI Jianhua,CHEN Songqiao,et al.Business useroriented service discovery model based on ontology clustering[J].Computer Engineering,2007,33 (4):215-217 (in Chinese).[馬華,李建華,陳松喬,等.基于本體聚類的面向業(yè)務(wù)用戶服務(wù)發(fā)現(xiàn)模型 [J].計(jì)算機(jī)工程,2007,33 (4):215-217.]
[5]FENG Zaiwen,HE Keqing,LI Bing,et al.A method for semantic web service discovery based on context inference [J].Chinese Journal of Computers,2008,31 (8):1354-1363 (in Chinese).[馮在文,何克清,李兵,等.一種基于情境推理的語(yǔ)義Web服務(wù)發(fā)現(xiàn)方法 [J].計(jì)算機(jī)學(xué)報(bào),2008,31 (8):1354-1363.]
[6]ZOU Jin’an.Exploration of semantic web service discovery based on QoS [J].Journal of Computer Applications,2009,29 (10):2844-2846 (in Chinese).[鄒金安.基于聚類的QoS語(yǔ)義Web服務(wù)發(fā)現(xiàn)研究 [J].計(jì)算機(jī)應(yīng)用,2009,29 (10):2844-2846.]
[7]YANG Yueming,CHEN Lichao,XIE Binhong,et al.Study on approach of web services discovery based on clustering of users’context information [J].Computer Engineering and Design,2012,33 (4):1442-1446 (in Chinese).[楊岳明,陳立潮,謝斌紅,等.基于用戶情境聚類的Web服務(wù)發(fā)現(xiàn)方法研究 [J].計(jì)算機(jī)工程與設(shè)計(jì),2012,33 (4):1442-1446.]
[8]HUANG Chuangguang,YIN Jian,WANG Jing,et al.Uncertain neighbors collaborative filtering recommendation algorithm [J].Chinese Journal of Computers,2010,33 (8):1369-1377 (in Chinese).[黃創(chuàng)光,印鑒,汪靜,等.不確定近鄰的協(xié)同過(guò)濾推薦算法[J].計(jì)算機(jī)學(xué)報(bào),2010,33(8): 1369-1377.]
[9]ZHU Hongkang,YU Xueli.Research on recommendation of web services based on QoS execution information [J].Computer Engineering and Applications,2010,46 (18):237-239(in Chinese). [朱紅康,余雪麗.基于服務(wù)QoS執(zhí)行信息的Web服務(wù)推薦研究 [J].計(jì)算機(jī)工程與應(yīng)用,2010,46 (18):237-239.]
[10]WANG Guoxia,LIU Heping.Survey of personalized recommendation system [J].Computer Engineering and Applications,2012,48 (7):66-76 (in Chinese). [王國(guó)霞,劉賀平.個(gè)性化推薦系統(tǒng)綜述 [J].計(jì)算機(jī)工程與應(yīng)用,2012,48 (7):66-76.]
[11]WEN Junhao,QIN Jia,LIU Ling.Approach to web services selection under uncertain user preferences [J].Application Research of Computers,2010,27 (6):2147-2149 (in Chinese).[文俊浩,秦佳,柳玲.一種在用戶偏好不確定情況下的Web服務(wù)選擇方法 [J].計(jì)算機(jī)應(yīng)用研究,2010,27 (6):2147-2149.]
[12]Blake M B,Nowlan M F.A web service recommender system using enhanced syntactical matching [C]//Salt Lake City,Utah,USA:Proceedings of International Conference on Web Services,2007:575-582.
[13]Aciar S,Zhang D,Simoff S,et al.Informed recommender:Basing recommendations on consumer product reviews [J].IEEE Intelligent Systems,2007,22 (3):39-47.
[14]Sufyan Beg MM,Nesar Ahmad.Web search enhancement by mining user actions [J].Information Science,2007,177(23):5203-5218.
[15]ZHU Zhengzhou,WU Zhongfu,WU Kaigui,et al.E-learning services discovery algorithm based on user satisfaction [J].Computer Engineering,2009,35 (3):71-73(in Chinese).[朱鄭州,吳中福,吳開(kāi)貴,等.基于用戶滿意度的學(xué)習(xí)服務(wù)發(fā)現(xiàn)算法[J].計(jì)算機(jī)工程,2009,35 (3):71-73.]
[16]Laddawan Kulnarattana,Songsak Rongviriyapanish.A client perceived QoS model for web services selection [C]//6th International Conference on Electrical Engineering/Electronics,Computer,Telecommunications and Information Technology,2009:731-734.