具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法
【專利摘要】一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,包括:對(duì)每個(gè)任務(wù)的候選服務(wù)集合作預(yù)處理,移除候選服務(wù)集合中的冗余服務(wù);判斷用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型;根據(jù)用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型,應(yīng)用CASP方法進(jìn)行服務(wù)選擇。在QoS感知的服務(wù)選擇問題的基礎(chǔ)上,將服務(wù)間的關(guān)聯(lián)關(guān)系考慮在內(nèi),使得產(chǎn)生的組合服務(wù)不但能滿足用戶的功能需求,而且具有最優(yōu)的全局QoS。
【專利說明】具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件優(yōu)化技術(shù),尤其涉及一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法。
【背景技術(shù)】
[0002]服務(wù)組合技術(shù)通過將多個(gè)Web服務(wù)組合成一個(gè)組合服務(wù)來滿足用戶復(fù)雜的功能需求,具體的,根據(jù)已有的工作流程,對(duì)流程中的每個(gè)任務(wù)選擇具體的服務(wù),然后將每個(gè)任務(wù)選擇的單個(gè)服務(wù)組合成一個(gè)組合服務(wù),服務(wù)選擇的目的是使選中的每個(gè)服務(wù)都能完成對(duì)應(yīng)任務(wù)的功能需求。隨著網(wǎng)絡(luò)上可選服務(wù)的增多,組合服務(wù)的質(zhì)量(QoS)越來越受到重視。因此,服務(wù)選擇的目的不僅是使得到的組合服務(wù)能夠滿足用戶的功能需求,而且要使組合服務(wù)具有最優(yōu)的QoS,該問題被稱為QoS感知的組合服務(wù)選擇。
[0003]QoS不同的屬性具有不同的計(jì)算方法,同一屬性對(duì)不同的流程結(jié)構(gòu)的計(jì)算方法也不相同。不同的QoS屬性對(duì)不同流程結(jié)構(gòu)的計(jì)算方法已日漸成熟。因此,目前對(duì)QoS感知的服務(wù)選擇問題的研究集中在研究多維度、多目標(biāo)、多任務(wù)的QoS最優(yōu)規(guī)劃問題(MMMKP)。眾多不同的服務(wù)選擇方法被提出,它們大都假設(shè)服務(wù)的QoS屬性是已知的,利用類貪心算法為工作流中的每一個(gè)任務(wù)選擇QoS最優(yōu)的服務(wù)。但是利用現(xiàn)有的算法仍不能達(dá)到最優(yōu)化。
【發(fā)明內(nèi)容】
[0004]本發(fā)明解決的問題是提供一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,產(chǎn)生的組合服務(wù)不但能滿足用戶的功能需求,而且具有最優(yōu)的全局QoS。
[0005]為解決上述問題,本發(fā)明實(shí)施例提供了一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,包括:對(duì)每個(gè)任務(wù)的候選服務(wù)集合作預(yù)處理,移除候選服務(wù)集合中的冗余服務(wù);判斷用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型;根據(jù)用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型,應(yīng)用CASP方法進(jìn)行服務(wù)選擇。
[0006]可選的,在預(yù)處理之前,還包括:對(duì)所有候選服務(wù)集合中服務(wù)的關(guān)聯(lián)關(guān)系進(jìn)行建模,獲得各個(gè)服務(wù)之間的關(guān)聯(lián)關(guān)系。
[0007]可選的,所述預(yù)處理具體包括:對(duì)于不存在關(guān)聯(lián)關(guān)系的服務(wù),只保留缺省值最優(yōu)的服務(wù),將其它服務(wù)從候選服務(wù)集合中移除;對(duì)于存在關(guān)聯(lián)關(guān)系的服務(wù),根據(jù)用戶偏好q,若服務(wù)Si和~存在關(guān)聯(lián)關(guān)系,存在另外兩個(gè)服務(wù)Sk和S1,其中Si和Sk位于同一個(gè)候選服務(wù)集,Sj和S1位于同一個(gè)候選服務(wù)集,且滿足q(sk.S1) > q(Si.Sj),則將Si和Sj之間的關(guān)聯(lián)關(guān)系刪除,并分別檢查Si和是否還存在其它的關(guān)聯(lián)服務(wù),如果不存在其它的關(guān)聯(lián)服務(wù),則將其從候選服務(wù)集合中移除。
[0008]可選的,所述QoS的關(guān)聯(lián)關(guān)系類型包括關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間和關(guān)聯(lián)關(guān)系存在于任意的服務(wù)之間。
[0009]可選的,當(dāng)關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的具體步驟包括:將第一個(gè)任務(wù)的缺省值最優(yōu)的服務(wù)設(shè)為當(dāng)前最優(yōu)組合服務(wù),并保留所有具有關(guān)聯(lián)關(guān)系的服務(wù)到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù);將當(dāng)前最優(yōu)組合服務(wù)與所有和后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合,并將組合后的服務(wù)保留在組合服務(wù)集中;將當(dāng)前最優(yōu)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合,設(shè)為新的當(dāng)前最優(yōu)組合服務(wù);將上一任務(wù)組合服務(wù)集中的所有組合服務(wù)與其相關(guān)聯(lián)的服務(wù)進(jìn)行組合,并與當(dāng)前最優(yōu)服務(wù)進(jìn)行比較,保留較優(yōu)的組合服務(wù)為當(dāng)前最優(yōu)組合服務(wù),較差的組合服務(wù)移除;繼續(xù)下一個(gè)任務(wù)直到終止任務(wù)。
[0010]可選的,當(dāng)關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的具體步驟包括:將第一個(gè)任務(wù)的缺省值最優(yōu)服務(wù)和有關(guān)聯(lián)關(guān)系的服務(wù)保存到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù);對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中;對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下與后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中;對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)查找是否與當(dāng)前任務(wù)候選服務(wù)集中的服務(wù)存在關(guān)聯(lián)關(guān)系,如果存在則與其進(jìn)行組合并保存到組合服務(wù)集中;每一任務(wù)的服務(wù)組合完成后,查找是否存在關(guān)聯(lián)服務(wù)集相同的組合服務(wù),如果存在,則刪除用戶偏好QoS屬性值較差的組合服務(wù);繼續(xù)下一個(gè)任務(wù)直到終止任務(wù)。
[0011]與現(xiàn)有技術(shù)相比,本技術(shù)方案具有以下優(yōu)點(diǎn):
[0012]本發(fā)明實(shí)施例的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法在QoS感知的服務(wù)選擇問題的基礎(chǔ)上,將服務(wù)間的關(guān)聯(lián)關(guān)系考慮在內(nèi),使得產(chǎn)生的組合服務(wù)不但能滿足用戶的功能需求,而且具有最優(yōu)的全局QoS。
【專利附圖】
【附圖說明】
[0013]圖1是本發(fā)明實(shí)施例的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法的流程示意圖;
[0014]圖2是本發(fā)明實(shí)施例的應(yīng)用CASP方法進(jìn)行服務(wù)選擇的第一選擇方法的流程示意圖;
[0015]圖3是本發(fā)明實(shí)施例的應(yīng)用CASP方法進(jìn)行服務(wù)選擇的第二選擇方法的流程示意圖。
【具體實(shí)施方式】
[0016]現(xiàn)有的算法仍不能達(dá)到組合服務(wù)最優(yōu)化,經(jīng)過研究發(fā)現(xiàn),主要是因?yàn)楝F(xiàn)有的研究都忽略了服務(wù)的QoS之間的關(guān)聯(lián)關(guān)系。服務(wù)的QoS之間的關(guān)聯(lián)關(guān)系對(duì)組合服務(wù)的QoS具有很大影響。服務(wù)的QoS關(guān)聯(lián)關(guān)系在現(xiàn)實(shí)中廣泛存在,比如,如果同時(shí)選擇一個(gè)服務(wù)提供商的兩個(gè)服務(wù),第二個(gè)服務(wù)可能會(huì)在價(jià)格上給一個(gè)折扣;如果連續(xù)調(diào)用同一個(gè)服務(wù)器上的兩個(gè)服務(wù),由于兩個(gè)服務(wù)間的參數(shù)傳遞可以在服務(wù)器內(nèi)部進(jìn)行,因此可以大大減小組合服務(wù)的響應(yīng)時(shí)間。為此,本發(fā)明實(shí)施例提供了一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,在QoS的服務(wù)選擇問題的基礎(chǔ)上,將服務(wù)間的關(guān)聯(lián)關(guān)系考慮在內(nèi),使得產(chǎn)生的組合服務(wù)不但能滿足用戶的功能需求,而且具有最優(yōu)的全局QoS。
[0017]下面結(jié)合附圖,通過具體實(shí)施例,對(duì)本發(fā)明的技術(shù)方案進(jìn)行清楚、完整的描述。
[0018]請(qǐng)參考圖1,為本發(fā)明實(shí)施例的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,包括:
[0019]步驟S101,對(duì)每個(gè)任務(wù)的候選服務(wù)集合作預(yù)處理,移除候選服務(wù)集合中的冗余服務(wù);[0020]步驟S102,判斷用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型;
[0021]步驟S103,根據(jù)用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型,應(yīng)用CASP方法進(jìn)行服務(wù)選擇。
[0022]在本實(shí)施例中,在預(yù)處理之前,還包括:對(duì)所有候選服務(wù)集合中服務(wù)的關(guān)聯(lián)關(guān)系進(jìn)行建模,獲得各個(gè)服務(wù)之間的關(guān)聯(lián)關(guān)系。
[0023]對(duì)于某一功能需求,現(xiàn)實(shí)中可能存在大量的服務(wù)能夠滿足該需求,而大多數(shù)服務(wù)都可以很容易被確定不是最優(yōu)的候選服務(wù),這些服務(wù)被稱為冗余服務(wù)。因此在服務(wù)選擇之前要對(duì)候選服務(wù)集合進(jìn)行預(yù)處理。預(yù)處理的目的是移除候選服務(wù)集合中的冗余服務(wù),以減輕冗余服務(wù)對(duì)服務(wù)選擇造成的大量開銷,提高服務(wù)選擇的效率。
[0024]每個(gè)候選服務(wù)集合都需要根據(jù)用戶要求的QoS屬性進(jìn)行預(yù)處理,移除用戶偏好(q)較差的服務(wù)。在本發(fā)明實(shí)施例中,QoS(Quality of Service)是一組屬性的集合
QoS={q,} ;L,,表示每個(gè)服務(wù)具有多個(gè)不同的QoS屬性,每一個(gè)屬性表示為一個(gè)四元組qi =
(d, c, S1, S2),其中d表示該服務(wù)的屬性qi的缺省值;c表示該服務(wù)的屬性Qi的關(guān)聯(lián)值A(chǔ)1表示可以影響屬性Qi值的服務(wù)的集合;S2表示其屬性qi受到該服務(wù)影響的服務(wù)的集合。
[0025]其中,QoS的缺省值表示沒有相關(guān)聯(lián)的服務(wù)存在時(shí)服務(wù)的QoS值,關(guān)聯(lián)值表示與該屬性相關(guān)的服務(wù)存在時(shí)服務(wù)的QoS值。因此,在用戶調(diào)用一個(gè)服務(wù)之前,如果已經(jīng)調(diào)用過與該服務(wù)相關(guān)的服務(wù),則該服務(wù)的QoS采用關(guān)聯(lián)值,否則采用缺省值。
[0026]對(duì)于不存在關(guān)聯(lián)關(guān)系的服務(wù),顯然用戶偏好q值較優(yōu)的服務(wù),因此可以將q值較差又不存在關(guān)聯(lián)關(guān)系的服務(wù)移除。服務(wù)間的關(guān)聯(lián)關(guān)系可能會(huì)使兩個(gè)q值較差的服務(wù)的組合q值較優(yōu),因此要保留具有關(guān)聯(lián)關(guān)系的服務(wù),但是當(dāng)兩個(gè)任務(wù)的候選服務(wù)集之間存在多個(gè)關(guān)聯(lián)關(guān)系時(shí),較差的關(guān)聯(lián)關(guān)系也可以被移除。
[0027]因此,對(duì)每個(gè)候選服務(wù)集的預(yù)處理具體包括:對(duì)于不存在關(guān)聯(lián)關(guān)系的服務(wù),只保留缺省值最優(yōu)的服務(wù),將其它服務(wù)從候選服務(wù)集合中移除;對(duì)于存在關(guān)聯(lián)關(guān)系的服務(wù),根據(jù)用戶偏好q,若服務(wù)Si和Sj存在關(guān)聯(lián)關(guān)系,存在另外兩個(gè)服務(wù)Sk和S1,其中Si和Sk位于同一個(gè)候選服務(wù)集,Sj和S1位于同一個(gè)候選服務(wù)集,且滿足q(sk.S1) > q(Si.Sj),則將Si和Sj之間的關(guān)聯(lián)關(guān)系刪除,并分別檢查Si和是否還存在其它的關(guān)聯(lián)服務(wù),如果不存在其它的關(guān)聯(lián)服務(wù),則將其從候選服務(wù)集合中移除。
[0028]其中,當(dāng)CS、CS1和CS2是三個(gè)組合服務(wù),并且存在關(guān)系CS = CS1.CS2,其中“.”表示順序組合,那么稱CS1是CS的一個(gè)前綴。服務(wù)選擇是按照工作流程逐個(gè)對(duì)任務(wù)選擇綁定最佳服務(wù)的過程,因此該過程可以看作是逐步延長(zhǎng)最優(yōu)組合服務(wù)的前綴的過程。
[0029]通過預(yù)處理,相當(dāng)數(shù)量的服務(wù)被移除,只有缺省值最優(yōu)的服務(wù)和具有較優(yōu)的關(guān)聯(lián)關(guān)系的服務(wù)還留在候選服務(wù)集中。因此,無論候選服務(wù)集中服務(wù)量大小,通過預(yù)處理過程,只保留以上兩類服務(wù),候選服務(wù)集合中服務(wù)數(shù)量不會(huì)超過一個(gè)上限,該上限與工作流中的任務(wù)數(shù)有關(guān)。因此,預(yù)處理過程大大減小了服務(wù)搜索空間,降低了服務(wù)組合的難度。
[0030]候選服務(wù)集合通過預(yù)處理之后,運(yùn)用CASP(Correlation-Aware ServicePruning)方法進(jìn)行服務(wù)選擇。首先判斷服務(wù)QoS的關(guān)聯(lián)關(guān)系是哪種關(guān)聯(lián)關(guān)系,如果關(guān)聯(lián)關(guān)系僅存在于相鄰服務(wù)中,則采用第一選擇方法進(jìn)行服務(wù)選擇;如果關(guān)聯(lián)關(guān)系僅存在于任意兩個(gè)服務(wù)中,則采用第二選擇方法進(jìn)行服務(wù)選擇。
[0031]在許多情況下服務(wù)的關(guān)聯(lián)關(guān)系只存在于相鄰的服務(wù)之間。比如如果用戶期望得到執(zhí)行時(shí)間最短的組合服務(wù),當(dāng)兩個(gè)相鄰的服務(wù)位于同一個(gè)服務(wù)器上時(shí),參數(shù)傳遞可以在服務(wù)器內(nèi)進(jìn)行,因此可以節(jié)省大量參數(shù)傳遞的時(shí)間,因此只有兩個(gè)相鄰的服務(wù)才會(huì)有時(shí)間上的關(guān)聯(lián)關(guān)系。在這些情況下,可采用簡(jiǎn)單的CASP方法進(jìn)行服務(wù)選擇。
[0032]在一個(gè)任務(wù)進(jìn)行服務(wù)選擇時(shí),對(duì)存在關(guān)聯(lián)關(guān)系的服務(wù)無法確定其是否為最優(yōu)候選服務(wù),由于關(guān)聯(lián)關(guān)系僅存在相鄰的服務(wù)中,因此,在對(duì)下一個(gè)任務(wù)進(jìn)行服務(wù)選擇時(shí),就可以確定該關(guān)聯(lián)關(guān)系包含的兩個(gè)服務(wù)是否為最優(yōu)的組合服務(wù)。此時(shí)可以將此服務(wù)組合與其它的服務(wù)組合相比較,如果較優(yōu)則保留此組合服務(wù)并刪除較差的組合服務(wù),否則刪除此組合服務(wù)。
[0033]因此,當(dāng)關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的第一選擇方法,請(qǐng)參考圖2,具體包括:
[0034]步驟S201,將第一個(gè)任務(wù)的缺省值最優(yōu)的服務(wù)設(shè)為當(dāng)前最優(yōu)組合服務(wù),并保留所有具有關(guān)聯(lián)關(guān)系的服務(wù)到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù);
[0035]步驟S202,將當(dāng)前最優(yōu)組合服務(wù)與所有和后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合,并將組合后的服務(wù)保留在組合服務(wù)集中;
[0036]步驟S203,將當(dāng)前最優(yōu)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合,設(shè)為新的當(dāng)前最優(yōu)組合服務(wù);
[0037]步驟S204,將上一任務(wù)組合服務(wù)集中的所有組合服務(wù)與其相關(guān)聯(lián)的服務(wù)進(jìn)行組合,并與當(dāng)前最優(yōu)服務(wù)進(jìn)行比較,保留較優(yōu)的組合服務(wù)為當(dāng)前最優(yōu)組合服務(wù),較差的組合服務(wù)移除;
[0038]步驟S205,繼續(xù)下一個(gè)任務(wù)直到終止任務(wù),最終獲得的當(dāng)前最優(yōu)組合服務(wù)即為算法得到的最優(yōu)組合服務(wù),反饋給用戶。
[0039]在另一些情況下,關(guān)聯(lián)關(guān)系也會(huì)存在于不相鄰的服務(wù)之間。比如價(jià)格,只要一個(gè)組合服務(wù)調(diào)用了同一個(gè)提供商的兩個(gè)服務(wù),第二個(gè)服務(wù)會(huì)在價(jià)格上給一個(gè)折扣,這兩個(gè)服務(wù)不必是相鄰的服務(wù)。在這種情況下,仍然可用CASP方法進(jìn)行服務(wù)選擇,但是要比相鄰任務(wù)的情況要復(fù)雜。
[0040]由于關(guān)聯(lián)關(guān)系不只存在于相鄰的服務(wù)之間,因此對(duì)于一個(gè)順序的前綴組合服務(wù),其中可能有多個(gè)服務(wù)與后續(xù)任務(wù)的服務(wù)之間存在關(guān)聯(lián)關(guān)系,稱這些服務(wù)的集合為關(guān)聯(lián)服務(wù)集??梢缘贸鼋Y(jié)論:對(duì)于兩個(gè)前綴組合服務(wù)CS1和CS2,用戶偏好q,如果CS1和CS2具有相同的關(guān)聯(lián)服務(wù)集并且q (CS1) > q (cs2),其中符號(hào)“ > ”表示優(yōu)于,則CS1可能會(huì)是最優(yōu)組合服務(wù)的前綴,而CS2 —定不是最優(yōu)組合服務(wù)的前綴,應(yīng)當(dāng)被刪除。
[0041]因此,當(dāng)關(guān)聯(lián)關(guān)系不只存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的第二選擇方法具體包括:
[0042]步驟S301,將第一個(gè)任務(wù)的缺省值最優(yōu)服務(wù)和有關(guān)聯(lián)關(guān)系的服務(wù)保存到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù);
[0043]步驟S302,對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中;
[0044]步驟S303,對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下與后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中;
[0045]步驟S304,對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)查找是否與當(dāng)前任務(wù)候選服務(wù)集中的服務(wù)存在關(guān)聯(lián)關(guān)系,如果存在則與其進(jìn)行組合并保存到組合服務(wù)集中;[0046]步驟S305,每一任務(wù)的服務(wù)組合完成后,查找是否存在關(guān)聯(lián)服務(wù)集相同的組合服務(wù),如果存在,則刪除用戶偏好QoS屬性值較差的組合服務(wù);
[0047]步驟S306,繼續(xù)下一個(gè)任務(wù),當(dāng)服務(wù)選擇進(jìn)行到工作流中的最后一個(gè)任務(wù)時(shí),所有的組合服務(wù)的關(guān)聯(lián)服務(wù)集都相同,即空集,計(jì)算所有組合服務(wù)的用戶偏好QoS值,保留用戶偏好QoS值最優(yōu)的組合服務(wù)即為最優(yōu)組合服務(wù),返回給用戶。
[0048]本發(fā)明雖然已以較佳實(shí)施例公開如上,但其并不是用來限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案做出可能的變動(dòng)和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何簡(jiǎn)單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護(hù)范圍。
【權(quán)利要求】
1.一種具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,包括: 對(duì)每個(gè)任務(wù)的候選服務(wù)集合作預(yù)處理,移除候選服務(wù)集合中的冗余服務(wù);判斷用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型; 根據(jù)用戶偏好的QoS的關(guān)聯(lián)關(guān)系類型,應(yīng)用CASP方法進(jìn)行服務(wù)選擇。
2.如權(quán)利要求1所述的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,在預(yù)處理之前,還包括:對(duì)所有候選服務(wù)集合中服務(wù)的關(guān)聯(lián)關(guān)系進(jìn)行建模,獲得各個(gè)服務(wù)之間的關(guān)聯(lián)關(guān)系O
3.如權(quán)利要求2所述的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,所述預(yù)處理具體包括:對(duì)于不存在關(guān)聯(lián)關(guān)系的服務(wù),只保留缺省值最優(yōu)的服務(wù),將其它服務(wù)從候選服務(wù)集合中移除;對(duì) 于存在關(guān)聯(lián)關(guān)系的服務(wù),根據(jù)用戶偏好q,若服務(wù)Si和~存在關(guān)聯(lián)關(guān)系,存在另外兩個(gè)服務(wù)Sk和S1,其中Si和Sk位于同一個(gè)候選服務(wù)集,Sj和S1位于同一個(gè)候選服務(wù)集,且滿足q (Sk.S1) > q(Si.Sj),則將Si和Sj之間的關(guān)聯(lián)關(guān)系刪除,并分別檢查Si和Sj是否還存在其它的關(guān)聯(lián)服務(wù),如果不存在其它的關(guān)聯(lián)服務(wù),則將其從候選服務(wù)集合中移除。
4.如權(quán)利要求1所述的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,所述QoS的關(guān)聯(lián)關(guān)系類型包括兩種,具體為關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間和關(guān)聯(lián)關(guān)系存在于任意的服務(wù)之間。
5.如權(quán)利要求4所述的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,當(dāng)關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的具體步驟包括: 將第一個(gè)任務(wù)的缺省值最優(yōu)的服務(wù)設(shè)為當(dāng)前最優(yōu)組合服務(wù),并保留所有具有關(guān)聯(lián)關(guān)系的服務(wù)到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù); 將當(dāng)前最優(yōu)組合服務(wù)與所有和后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合,并將組合后的服務(wù)保留在組合服務(wù)集中; 將當(dāng)前最優(yōu)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合,設(shè)為新的當(dāng)前最優(yōu)組合服務(wù); 將上一任務(wù)組合服務(wù)集中的所有組合服務(wù)與其相關(guān)聯(lián)的服務(wù)進(jìn)行組合,并與當(dāng)前最優(yōu)服務(wù)進(jìn)行比較,保留較優(yōu)的組合服務(wù)為當(dāng)前最優(yōu)組合服務(wù),較差的組合服務(wù)移除; 繼續(xù)下一個(gè)任務(wù)直到終止任務(wù)。
6.如權(quán)利要求4所述的具有QoS關(guān)聯(lián)關(guān)系的服務(wù)選擇方法,其特征在于,當(dāng)關(guān)聯(lián)關(guān)系僅存在于相鄰的服務(wù)之間時(shí),應(yīng)用CASP方法進(jìn)行服務(wù)選擇的具體步驟包括: 將第一個(gè)任務(wù)的缺省值最優(yōu)服務(wù)和有關(guān)聯(lián)關(guān)系的服務(wù)保存到組合服務(wù)集中,繼續(xù)下一個(gè)任務(wù); 對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下缺省值最優(yōu)的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中; 對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)與當(dāng)前任務(wù)下與后續(xù)服務(wù)存在關(guān)聯(lián)關(guān)系的服務(wù)進(jìn)行組合并保存到組合服務(wù)集中; 對(duì)上一任務(wù)組合服務(wù)集中的每個(gè)組合服務(wù)查找是否與當(dāng)前任務(wù)候選服務(wù)集中的服務(wù)存在關(guān)聯(lián)關(guān)系,如果存在則與其進(jìn)行組合并保存到組合服務(wù)集中; 每一任務(wù)的服務(wù)組合完成后,查找是否存在關(guān)聯(lián)服務(wù)集相同的組合服務(wù),如果存在,則刪除用戶偏好QoS屬性值較差的組合服務(wù);繼續(xù)下一個(gè)任務(wù) 直到終止任務(wù)。
【文檔編號(hào)】H04L12/24GK103944766SQ201410183917
【公開日】2014年7月23日 申請(qǐng)日期:2014年4月30日 優(yōu)先權(quán)日:2014年4月30日
【發(fā)明者】鄧水光, 吳洪越, 向正哲, 李瑩, 吳健, 尹建偉, 吳朝暉 申請(qǐng)人:浙江大學(xué)