韓 敏, 孫國(guó)慶, 鄭丹晨, 周惠巍
(大連理工大學(xué) 電子信息與電氣工程學(xué)部,遼寧 大連 116023)
隨著高速互聯(lián)網(wǎng)技術(shù)發(fā)展及用戶對(duì)軟件需求不斷增加,Web 服務(wù)組合在網(wǎng)絡(luò)技術(shù)研究中發(fā)揮著愈來(lái)愈重要的作用.Web 服務(wù)可以視作網(wǎng)絡(luò)系統(tǒng)功能的基本單元,其遵循標(biāo)準(zhǔn)Internet 協(xié)議和SOAP 協(xié)議,并具有完全開(kāi)放、松散耦合、高度可集成等特性.很多情況下,單一Web 服務(wù)難以滿足用戶的不同實(shí)際需求,服務(wù)組合技術(shù)的出現(xiàn)解決了多功能分布式Web 服務(wù)的集成問(wèn)題,使其組合成結(jié)構(gòu)統(tǒng)一、功能復(fù)雜的綜合服務(wù)系統(tǒng).因此,如何實(shí)現(xiàn)服務(wù)共享和無(wú)縫集成,使單一Web 服務(wù)動(dòng)態(tài)組合起來(lái),構(gòu)成服務(wù)質(zhì)量(quality of service,簡(jiǎn)稱QoS)達(dá)到用戶需求的服務(wù)組合策略(strategy of service composition,簡(jiǎn)稱SSC),是建立網(wǎng)絡(luò)服務(wù)體系的研究重點(diǎn).
目前,國(guó)內(nèi)外學(xué)者在Web 服務(wù)及其組合技術(shù)領(lǐng)域取得了諸多研究成果.這些成果的服務(wù)組合方法通常分為兩大類:基于工作流的服務(wù)組合,如語(yǔ)義描述法[1]和圖搜索方法[2];基于系統(tǒng)建模的服務(wù)組合,如數(shù)據(jù)分析法[3]和人工智能法[4?6].工作流技術(shù)可以利用服務(wù)綁定、流程設(shè)計(jì)、語(yǔ)義描述等對(duì)服務(wù)組合進(jìn)行過(guò)程化處理,但其包含較多的人為參與,系統(tǒng)自動(dòng)化程度和可靠性不高,服務(wù)組合效率偏低;數(shù)據(jù)分析的系統(tǒng)建模方法可以確保理論計(jì)算的正確性,但容易忽略實(shí)際因素的綜合效應(yīng),進(jìn)而導(dǎo)致與預(yù)期結(jié)果產(chǎn)生偏差;人工智能方法也可以實(shí)現(xiàn)Web 服務(wù)的自動(dòng)組合,例如通過(guò)神經(jīng)網(wǎng)絡(luò)模型、智能優(yōu)化算法等方法從各角度對(duì)系統(tǒng)進(jìn)行分析建模和優(yōu)化求解,但其對(duì)應(yīng)的數(shù)據(jù)預(yù)處理和建模轉(zhuǎn)化等環(huán)節(jié)難度較大,因此此類方法對(duì)用戶提出了很高的要求.近些年來(lái),隨著信息量和數(shù)據(jù)量的激增,用戶所需要服務(wù)的數(shù)量也愈加龐大.工作流一類的方法已然不能滿足服務(wù)結(jié)構(gòu)多樣性的要求,而數(shù)據(jù)分析和人工智能也因?yàn)楦髯蕴攸c(diǎn)的限制導(dǎo)致其難以有效解決服務(wù)組合的動(dòng)態(tài)搜索和自適應(yīng)性等問(wèn)題.
Petri 網(wǎng)是一種針對(duì)分布式系統(tǒng)的分析和建模工具,具備異步并發(fā)及圖形化特性,能夠充分表達(dá)系統(tǒng)狀態(tài)變化及信息交互的行為屬性.因此,國(guó)內(nèi)外學(xué)者[7?10]提出利用Petri 網(wǎng)及其擴(kuò)展方法對(duì)Web 服務(wù)組合進(jìn)行系統(tǒng)建模.文獻(xiàn)[7]提出了基于普通Petri 網(wǎng)的Web 服務(wù)組合代數(shù)計(jì)算方法,以Petri 網(wǎng)結(jié)構(gòu)表示服務(wù)系統(tǒng)操作符,通過(guò)形式語(yǔ)義將代數(shù)組合轉(zhuǎn)化為網(wǎng)系統(tǒng)描述,利用Petri 網(wǎng)屬性和基本理論驗(yàn)證了服務(wù)組合規(guī)則及控制流的正確性.但普通Petri 網(wǎng)不能精確表達(dá)服務(wù)組合過(guò)程的消息機(jī)制、功能接口等,無(wú)法構(gòu)建形式化業(yè)務(wù)流程.因此,文獻(xiàn)[8?10]基于普通Petri 網(wǎng)對(duì)其概念進(jìn)行拓展來(lái)表達(dá)服務(wù)組合過(guò)程:文獻(xiàn)[8]使用時(shí)間加權(quán)以分層結(jié)構(gòu)描述服務(wù)操作的功能類別,簡(jiǎn)化服務(wù)觸發(fā)條件,降低了服務(wù)系統(tǒng)的復(fù)雜性,在一定程度上提高了系統(tǒng)的組合效率;文獻(xiàn)[9]利用有色Petri 網(wǎng)描述服務(wù)語(yǔ)義,保證組件服務(wù)的語(yǔ)義一致性,以有色標(biāo)記表示組合服務(wù)的狀態(tài)變遷過(guò)程,實(shí)現(xiàn)多組件服務(wù)數(shù)據(jù)流和控制流的語(yǔ)義規(guī)范;文獻(xiàn)[10]引入了模糊Petri 網(wǎng)語(yǔ)義描述變遷規(guī)則,以模糊命題的隸屬度值表示服務(wù)系統(tǒng)庫(kù)所標(biāo)記,且信任度和閾值通過(guò)映射函數(shù)對(duì)應(yīng),優(yōu)化了系統(tǒng)穩(wěn)定性度量方法,對(duì)提高系統(tǒng)可靠度有一定的作用.所以Petri 網(wǎng)能夠有效地描述Web 服務(wù)及其參數(shù),利用語(yǔ)義和工作流等規(guī)則整合分布式服務(wù),在服務(wù)篩選時(shí)能節(jié)約服務(wù)資源空間,簡(jiǎn)化服務(wù)組合流程,同時(shí)也提高了系統(tǒng)服務(wù)的組合效率,為用戶提供了一種簡(jiǎn)便、高效的Web 服務(wù)組合思路.
Petri 網(wǎng)的出現(xiàn),解決了網(wǎng)絡(luò)大數(shù)據(jù)下Web 服務(wù)種類多樣、參數(shù)復(fù)雜及用戶多元需求服務(wù)量大的問(wèn)題.但組合過(guò)程中,隨著服務(wù)數(shù)增多,組合系統(tǒng)受時(shí)間變化的影響也將不斷增大,時(shí)變因素在服務(wù)組合質(zhì)量評(píng)價(jià)中不可忽略.例如,服務(wù)評(píng)價(jià)指標(biāo)中的服務(wù)可用性和可靠性等參數(shù)具有隨時(shí)間變化而改變的特性,傳統(tǒng)的Petri 網(wǎng)建模方法忽略了這些固有參數(shù)隨時(shí)間變化對(duì)服務(wù)質(zhì)量的影響,已不足以表達(dá)包含時(shí)間因素影響在內(nèi)的服務(wù)組合策略.同時(shí),由于服務(wù)組合時(shí)用戶事先無(wú)法對(duì)各領(lǐng)域中眾多Web 服務(wù)進(jìn)行一一篩選和調(diào)研,若服務(wù)組合時(shí)出現(xiàn)錯(cuò)誤,將直接造成難以估量的人力、物力損失.因此,對(duì)服務(wù)組合過(guò)程進(jìn)行流程正確性驗(yàn)證及系統(tǒng)性能分析是至關(guān)重要的.為了解決時(shí)間變化因素對(duì)服務(wù)組合建模的影響,本文提出一種包含可變時(shí)間參數(shù)的Petri 網(wǎng)建模方法,即時(shí)變Petri 網(wǎng)(time-varying Petri net,簡(jiǎn)稱TVPN),通過(guò)對(duì)組合過(guò)程的時(shí)變參數(shù)描述及組合服務(wù)的流程正確性和系統(tǒng)性能進(jìn)行分析,以實(shí)現(xiàn)組合策略的計(jì)算.時(shí)變Petri 網(wǎng)是時(shí)間Petri 網(wǎng)[8]的高級(jí)拓展,在求解實(shí)際工程問(wèn)題[11]、任務(wù)調(diào)度領(lǐng)域[12]都有廣泛應(yīng)用,適于描述與分析組合服務(wù)過(guò)程狀態(tài)變化.
本文的主要貢獻(xiàn)包括:
(1) 提出一種基于時(shí)變Petri 網(wǎng)的Web 服務(wù)組合過(guò)程建模方法;
(2) 基于所提建模方法計(jì)算用戶反饋評(píng)價(jià),并以實(shí)際電廠信息調(diào)度服務(wù)平臺(tái)進(jìn)行系統(tǒng)性能分析和驗(yàn)證.
本文第1 節(jié)介紹Web 服務(wù)及服務(wù)組合的相關(guān)概念.第2 節(jié)給出時(shí)變Petri 網(wǎng)的定義和性質(zhì),提出基于時(shí)變Petri 網(wǎng)的服務(wù)組合方法.第3 節(jié)通過(guò)算法設(shè)計(jì)對(duì)所提建模方法進(jìn)行QoS 分析驗(yàn)證.第4 節(jié)為仿真驗(yàn)證和結(jié)果分析.最后給出本文總結(jié)及工作展望.
Web 服務(wù)可以看作一系列網(wǎng)絡(luò)應(yīng)用組件程序的數(shù)據(jù)(data)和邏輯(logic)關(guān)系的集合,將服務(wù)S定義為三元組形式,即S=(n,Da,Lc),其中,n為服務(wù)名稱,Da為服務(wù)數(shù)據(jù)流,Lc為服務(wù)邏輯流.數(shù)據(jù)和邏輯關(guān)系是構(gòu)成單一服務(wù)的基本要素.
通過(guò)建立不同服務(wù)之間數(shù)據(jù)和邏輯對(duì)應(yīng)關(guān)系,進(jìn)而完成不同服務(wù)功能之間的組合,稱為組合服務(wù).根據(jù)Web服務(wù)業(yè)務(wù)流程執(zhí)行語(yǔ)言BPEL4WS[13]的相關(guān)描述,服務(wù)數(shù)據(jù)可以表示為一個(gè)二元組,即Da=(Sp,QS),其中,Sp為系統(tǒng)參數(shù),QS為QoS 屬性參數(shù);服務(wù)邏輯可以表示為一個(gè)三元組,即Lc=(I,O,Fl),其中,I為組件服務(wù)的輸入功能集,O為相應(yīng)服務(wù)可用輸出功能集,Fl表示服務(wù)間工作流的映射關(guān)系集.因此,構(gòu)造Web 服務(wù)組合過(guò)程對(duì)應(yīng)了構(gòu)建一定數(shù)量組件服務(wù)的輸入/輸出功能的映射關(guān)系.
定義1(映射規(guī)則).設(shè)服務(wù)S的數(shù)據(jù)流Da和邏輯流Lc已知,Lc中某一輸入功能i∈I及其對(duì)應(yīng)的輸出功能o∈O,則單一輸入i和輸出o以邏輯關(guān)系l∈Lc相對(duì)應(yīng),可記作l:i→o,其描述了由服務(wù)邏輯l建立了一個(gè)由輸入功能i到輸出功能o的映射規(guī)則.由此可知,對(duì)于一組服務(wù)的邏輯關(guān)系,將其形式化定義為三元組形式,即fl=(im,on,ls),其中,im表示組件源服務(wù)的輸入功能,on表示組件目標(biāo)服務(wù)的輸出功能,ls表示當(dāng)前服務(wù)對(duì)應(yīng)的映射關(guān)系,稱為建立的服務(wù)映射規(guī)則,且fl∈Fl,,表示建立一組輸入/輸出功能的服務(wù)映射規(guī)則集.
定義2(服務(wù)候選集).給定若干組件服務(wù)S,根據(jù)用戶需求及服務(wù)功能,可在其基礎(chǔ)上進(jìn)一步得到服務(wù)候選集WS={S1,S2,…,Sn},其對(duì)應(yīng)包含的組件服務(wù)可表示為,其中,規(guī)定為服務(wù)候選集包含的全部服務(wù)名稱集,Da*={∪Dak}為服務(wù)候選集包含的全部服務(wù)數(shù)據(jù)集,Lc*={∪Lck}為服務(wù)候選集中包含的全部服務(wù)邏輯及工作流關(guān)系集.因此,針對(duì)服務(wù)候選集,各組件服務(wù)所包含的全部輸入/輸出功能中,可結(jié)合不同需求由Fl構(gòu)造數(shù)據(jù)、邏輯映射關(guān)系的各種組合,進(jìn)而生成得到特定功能的可執(zhí)行組合服務(wù).
定義3(服務(wù)組合策略).已知服務(wù)候選集WS中包含n個(gè)組件服務(wù),其中第i個(gè)服務(wù)Si作為根據(jù)用戶需求設(shè)定的源組件服務(wù),則可建立服務(wù)Si到其余最多n?1 個(gè)組件服務(wù)的映射規(guī)則,將得到組合服務(wù)集記為St,即
稱Sti為建立的一個(gè)服務(wù)組合策略,St也稱為服務(wù)組合策略集,其中,flij表示單一組件服務(wù)的映射規(guī)則,m是為服務(wù)組合策略的個(gè)數(shù),1≤m≤M,M為滿足用戶需求的最大服務(wù)組合策略數(shù),且M≤(n?1)!.
目前,國(guó)際上針對(duì)Web 服務(wù)組合的相關(guān)研究,通?;诮Y(jié)構(gòu)化信息標(biāo)準(zhǔn)促進(jìn)組織(OASIS[13])發(fā)布的UDDI及SOAP 消息機(jī)制.根據(jù)服務(wù)功能間的異步特性,圖1 為由組件服務(wù)間的映射規(guī)則集Fl構(gòu)建服務(wù)組合策略的一次組合過(guò)程,根據(jù)用戶偏好,兩個(gè)服務(wù)間的功能組合根據(jù)映射規(guī)則的不同而實(shí)現(xiàn)不同組合.每?jī)蓚€(gè)組件服務(wù)間完成一次組合過(guò)程都包括多組輸入/輸出功能的轉(zhuǎn)換及數(shù)據(jù)、邏輯參數(shù)的反復(fù)調(diào)用,每生成一個(gè)服務(wù)組合策略時(shí),都對(duì)應(yīng)生成一組服務(wù)映射規(guī)則集Flk,k=1,2,…,則St對(duì)應(yīng)的全部映射規(guī)則集為Fl*={∪Flk}.
例1(電廠信息調(diào)度服務(wù)平臺(tái)系統(tǒng)):本文采用研究團(tuán)隊(duì)針對(duì)國(guó)內(nèi)某電廠調(diào)度規(guī)程設(shè)計(jì)開(kāi)發(fā)的電廠信息調(diào)度服務(wù)平臺(tái)系統(tǒng)為研究對(duì)象,描述相關(guān)Web 服務(wù)問(wèn)題及組合流程的特性驗(yàn)證.其具體執(zhí)行過(guò)程為:首先,用戶發(fā)布電力信息調(diào)度服務(wù)請(qǐng)求,將所需服務(wù)的邏輯功能和數(shù)據(jù)參數(shù)進(jìn)行處理,并轉(zhuǎn)化為組件服務(wù)操作形式;然后,系統(tǒng)自動(dòng)篩選用戶需求,按調(diào)度功能,將組件服務(wù)劃分為發(fā)電信息服務(wù)(S1)或輸電信息服務(wù)(S2),并通過(guò)一系列數(shù)據(jù)檢索、驗(yàn)證和報(bào)錯(cuò)反饋,自動(dòng)提取一組電力信息調(diào)度服務(wù)(S3)數(shù)據(jù);再根據(jù)電廠工作人員使用該服務(wù)平臺(tái)系統(tǒng)的反饋評(píng)價(jià),綜合分析各項(xiàng)服務(wù)質(zhì)量數(shù)據(jù),以保證用戶方案的正確性,執(zhí)行一組可調(diào)用的信息評(píng)估方案組合服務(wù)(S4);最后,篩選得到的綜合評(píng)估方案,利用策略選擇服務(wù)(S5)獲取并發(fā)布當(dāng)前最滿足用戶需求的信息調(diào)度服務(wù)組合策略.電廠信息調(diào)度平臺(tái)的服務(wù)流程優(yōu)先級(jí)可用(S1∨S2) 電廠信息調(diào)度服務(wù)平臺(tái)系統(tǒng)能提供完備的信息調(diào)度服務(wù)流程,基本服務(wù)候選集為WS={S1,S2,S3,S4,S5},其中,各基本服務(wù)以SOAP 消息機(jī)制和UDDI 協(xié)議實(shí)現(xiàn)功能編碼和數(shù)據(jù)流、控制流交互,通過(guò)不同建模方法實(shí)現(xiàn)特定功能服務(wù)的發(fā)布與綁定,建立服務(wù)邏輯和映射規(guī)則二者之間的對(duì)應(yīng)關(guān)系.以發(fā)電信息服務(wù)為例,其可以用S1=(n1,Da1,Lc1)進(jìn)行描述.其中,n1={發(fā)電信息}表示服務(wù)名稱集;Da1=(Sp1,QS1)表示數(shù)據(jù)集合,其中Sp1={發(fā)電方式,發(fā)電量,功率,…},QS1={服務(wù)執(zhí)行費(fèi)用,服務(wù)時(shí)間開(kāi)銷};Lc1=(I1,O1,Fl1)表示邏輯集合,發(fā)電信息服務(wù)屬于一類系統(tǒng)源組件服務(wù),可知輸入功能集I1=?,輸出功能集O1={執(zhí)行調(diào)度信息服務(wù)},Fl1為映射規(guī)則集,基本控制流邏輯結(jié)構(gòu)包括順序、選擇、分支并發(fā)、邏輯循環(huán)這 4 種,對(duì)應(yīng)了調(diào)用下一組件服務(wù)的工作流對(duì)應(yīng)關(guān)系.因此,根據(jù)此電廠信息調(diào)度服務(wù)的功能順序分別選擇不同服務(wù)執(zhí)行,該服務(wù)平臺(tái)共可生成個(gè)服務(wù)組合策略,即St={St1,St2,St3,St4,St5,St6,St7,St8}. Fig.1 Mapping rules to input/output functions of component services圖1 組件服務(wù)輸出/輸入功能的映射規(guī)則 Fig.2 Services flow of the system of information dispatching platform for power plant圖2 電廠信息調(diào)度服務(wù)平臺(tái)系統(tǒng)的服務(wù)流程 Petri 網(wǎng)是一類狀態(tài)變遷模型,可用于描述系統(tǒng)中各異步成分之間的關(guān)系,允許系統(tǒng)并發(fā)執(zhí)行各個(gè)狀態(tài)的變遷.Petri 網(wǎng)通過(guò)無(wú)孤立點(diǎn)的有向二分圖來(lái)描述系統(tǒng)結(jié)構(gòu),利用標(biāo)識(shí)符反映系統(tǒng)狀態(tài). 定義4(有向網(wǎng)[13]).當(dāng)且僅當(dāng)三元組N=(P,T,F)滿足如下條件時(shí),稱N為一個(gè)有向網(wǎng). (1)P∪T≠?,P∩T=?; (2)F?{(P×T)∪(T×P)}; (3)P∪T={x|?y:(x,y)∈F}∪{y|?x:(x,y)∈F}.其中,P為有限庫(kù)所(place)集,T為有限變遷(transition)集,F為基于P和T建立的有向弧集合,表示有向網(wǎng)中的工作流關(guān)系. 定義5(輸入集和輸出集[13]).對(duì)于?x∈P∪T,稱′x={y|(y∈P∪T)∧((y,x)∈F)}為x的輸入集;稱x′={y|(y∈P∪T)∧((x,y)∈F)}為x的輸出集. 定義6(Petri 網(wǎng)[13]).當(dāng)且僅當(dāng)滿足下列條件時(shí),稱二元組PN=(N,M)為一個(gè)Petri 網(wǎng). (1)N=(P,T,F)是一個(gè)有向網(wǎng). (2)M:P→N+是PN的標(biāo)識(shí)函數(shù),M0為初始標(biāo)識(shí),N+為正整數(shù)集. (3) 觸發(fā)規(guī)則: ①如果?p∈′t:M(p)≥1 時(shí),稱變遷t是使能的,表示為M[t〉. ② 如果狀態(tài)標(biāo)識(shí)M下t是使能的,則稱t可以觸發(fā),且觸發(fā)后得到的后繼標(biāo)識(shí)為M′,記作M[t〉M′.且有: 定義7(可達(dá)標(biāo)識(shí)集[13]).若Petri 網(wǎng)系統(tǒng)PN=(N,M)中存在t∈T,使得M[t〉M′,則稱M′是從M可達(dá)的.則PN中從M可達(dá)的全部標(biāo)識(shí)的集合稱為可達(dá)標(biāo)識(shí)集,記作R(M),且滿足M0∈R(M);同時(shí),對(duì)于?t∈T,若?M∈R(M),則必?M′∈R(M). 定義8(關(guān)聯(lián)矩陣[13]).若Petri 網(wǎng)PN=(N,M)中,N=(P,T,F),P={p1,p2,…,pm},T={t1,t2,…,tm},則PN中有向網(wǎng)N可以表示為一個(gè)n行m列的矩陣A=[aij]n×m,當(dāng)且僅當(dāng)A滿足下列條件時(shí),稱A為PN的關(guān)聯(lián)矩陣. 定義9(遷移矩陣[13]).當(dāng)且僅當(dāng)矩陣K=A?diag(t1,t2,…,tn)A+滿足如下條件時(shí),稱K為Petri 網(wǎng)PN的遷移矩陣. (1) |ti|=1,變遷觸發(fā); (2) |ti|=0,變遷失效. 其中,ti是PN中的變遷,i=1,2,…,n. 時(shí)變Petri 網(wǎng)是在包含時(shí)間因素影響的時(shí)間Petri 網(wǎng)基礎(chǔ)上拓展而來(lái)的,通過(guò)描述系統(tǒng)中可變時(shí)間函數(shù)對(duì)綜合性能和邏輯層次的變遷過(guò)程,以Petri 網(wǎng)有向二分圖的網(wǎng)狀結(jié)構(gòu)性質(zhì),在庫(kù)所中用包含時(shí)間參量的標(biāo)識(shí)符函數(shù)狀態(tài)記錄時(shí)間變化對(duì)節(jié)點(diǎn)結(jié)構(gòu)的影響;同時(shí),對(duì)時(shí)間并發(fā)性以及邏輯異步特性也能夠進(jìn)行很好地描述. 為了便于描述可變時(shí)間函數(shù)與Petri 網(wǎng)中庫(kù)所、變遷等基本元素關(guān)系,用符號(hào)p|δ表示庫(kù)所p在時(shí)間函數(shù)表達(dá)式下對(duì)變遷觸發(fā)產(chǎn)生的作用.令p|δ=Yt,則Yt表示庫(kù)所p在時(shí)間參量影響下標(biāo)識(shí)符函數(shù)狀態(tài)發(fā)生變化的度量;令p|δ=Nt,則Nt表示庫(kù)所p在時(shí)間參數(shù)影響下不可觸發(fā)變遷,即時(shí)間參量不影響系統(tǒng)狀態(tài).當(dāng)系統(tǒng)某一變遷使能時(shí),將根據(jù)時(shí)間函數(shù)中輸入功能時(shí)變因子δi和輸出功能時(shí)變因子δo對(duì)功能庫(kù)所的狀態(tài)標(biāo)識(shí)函數(shù)集,及可變時(shí)間參量進(jìn)行相應(yīng)記錄和調(diào)整,以便于確保系統(tǒng)下次觸發(fā)的基本條件. 對(duì)一個(gè)已知建立在普通Petri 網(wǎng)PN 基礎(chǔ)上的系統(tǒng),將時(shí)變Petri 網(wǎng)給出下面的定義形式. 定義10(時(shí)變庫(kù)所).對(duì)?p∈P,若系統(tǒng)中存在輸入/輸出功能的時(shí)變因子δ可觸發(fā)其狀態(tài)的變遷,即滿足成立,則稱該庫(kù)所p為庫(kù)所集p中的時(shí)變庫(kù)所. 定義11(時(shí)變函數(shù)表達(dá)式).對(duì)于時(shí)變庫(kù)所p∈P,記fδ為庫(kù)所p在狀態(tài)M下的時(shí)變函數(shù)表達(dá)式,則有: 其中,M(p)=1 表示標(biāo)識(shí)符函數(shù)M滿足時(shí)變庫(kù)所p的時(shí)變參量影響條件,M(p)=0 表示標(biāo)識(shí)符函數(shù)M不滿足時(shí)變庫(kù)所p的時(shí)變參量影響條件. 定義12(時(shí)變Petri 網(wǎng)).當(dāng)且僅當(dāng)滿足如下條件時(shí),五元組TVPN=(P,T,F,M,)稱為一個(gè)時(shí)變Petri 網(wǎng). (1)p是一個(gè)庫(kù)所集合,其中包含的全部時(shí)變庫(kù)所構(gòu)成的集合是p的一個(gè)子集; (2)T是一個(gè)變遷集合,滿足P∪T≠?;且對(duì)于?t∈T的前置集′t和后置集t′,滿足′t∩t′=?;同時(shí),變遷t的觸發(fā),與所對(duì)應(yīng)的時(shí)變庫(kù)所時(shí)變函數(shù)表達(dá)式fδ有關(guān),并對(duì)應(yīng)引導(dǎo)標(biāo)識(shí)符函數(shù)的變化; (3)F?{(P×T)∪(T×P)}表示一個(gè)包含時(shí)間因素的有向弧集合; (4)M表示TVPN 中狀態(tài)標(biāo)識(shí)符函數(shù)集合,且滿足M0∈R(M),M(p)表示庫(kù)所p中包含的標(biāo)識(shí)符函數(shù)值; (5)Fδ表示TVPN 中時(shí)變函數(shù)式集合,分別包含變遷t所對(duì)應(yīng)的時(shí)變輸入功能函數(shù)式集合FIδ和時(shí)變輸出功能函數(shù)式集合FOδ,且Fδ=FIδ∪FOδ,Fδ中函數(shù)式及其值均為時(shí)變的,即與時(shí)間因子δ有關(guān); (6) 變遷觸發(fā)規(guī)則:對(duì)?t∈T,令,若fIδ|M=Yt,則稱變遷輸入′t滿足狀態(tài)M 下的時(shí)間因式fIδ,也稱t在M下可觸發(fā);當(dāng)t在M下觸發(fā)后,由時(shí)變輸出fOδ引導(dǎo)并演變?yōu)樾碌臉?biāo)識(shí)M′: 其中,m,n∈N+為系統(tǒng)中組件服務(wù)對(duì)應(yīng)的全部輸入/輸出功能數(shù)量. 在TVPN 中,當(dāng)某一變遷觸發(fā)時(shí),會(huì)受到系統(tǒng)局部外延和時(shí)變因子δ的影響,若在表示變遷觸發(fā)的有向弧上添加包含時(shí)變輸入功能函數(shù)fIδ和時(shí)變輸出功能函數(shù)fOδ,有利于清晰描述變遷使能條件及系統(tǒng)時(shí)變參數(shù)引發(fā)的輸入/輸出功能庫(kù)所狀態(tài)特性的相應(yīng)變化. 本文中在對(duì)時(shí)變Petri 網(wǎng)及其結(jié)構(gòu)進(jìn)行描述時(shí),庫(kù)所利用實(shí)線圓圈進(jìn)行表示,時(shí)變庫(kù)所利用虛線圓圈進(jìn)行表示,操作變遷利用矩形框進(jìn)行表示,服務(wù)變遷利用梯形框進(jìn)行表示,標(biāo)識(shí)符利用圓點(diǎn)表示.對(duì)于TVPN 中基本元素的圖形化描述,將時(shí)變輸入函數(shù)表達(dá)式fIδ和時(shí)變輸出表達(dá)式fOδ標(biāo)注在變遷觸發(fā)的有向弧上,用于表示受可變時(shí)間因素影響的狀態(tài)觸發(fā)及部分系統(tǒng)外延結(jié)構(gòu),其基本元素的功能關(guān)系如圖3 所示. Fig.3 Kinds of time-varying transitions of TVPN圖3 TVPN 中的時(shí)變功能變遷類型 圖3(a)為普通Petri 網(wǎng)的功能變遷結(jié)構(gòu),變遷觸發(fā)不受時(shí)間因素影響,只與庫(kù)所及標(biāo)識(shí)狀態(tài)有關(guān);圖3(b)表示時(shí)變Petri 網(wǎng)結(jié)構(gòu)中,變遷由時(shí)變輸入fiδ影響觸發(fā),且變遷發(fā)生后由時(shí)變輸出fOδ引導(dǎo)指向下一時(shí)變庫(kù)所;圖3(c)表示時(shí)變庫(kù)所的變遷只由時(shí)變輸入fiδ觸發(fā),不存在時(shí)變輸出fOδ影響,其指向不包含時(shí)間因素的庫(kù)所;圖3(d)表示變遷不受時(shí)變輸入fiδ影響,只受時(shí)變輸出fOδ引導(dǎo),并指向當(dāng)前的時(shí)變庫(kù)所. 在Web 服務(wù)及其組合過(guò)程中,很多情況下使用到的Web 服務(wù)源自很多各類領(lǐng)域,因此與之相對(duì)應(yīng)服務(wù)的篩選配置時(shí)間也有顯著差異.如果設(shè)定的組合流程中可隨機(jī)選擇有限服務(wù)集,則通過(guò)組合組件服務(wù)得到的綜合QoS 值和用戶反饋評(píng)價(jià)指標(biāo)將受到時(shí)變函數(shù)因素的較大的影響.在組件服務(wù)本身性能的約束條件下,QoS 值直接決定了組合服務(wù)是否能夠執(zhí)行并達(dá)到預(yù)期效果.因此,考慮利用時(shí)變Petri 網(wǎng)建模分析服務(wù)組合問(wèn)題并對(duì)分析計(jì)算時(shí)變函數(shù)對(duì)QoS 的影響,進(jìn)而可以實(shí)現(xiàn)在將結(jié)果發(fā)布到實(shí)際系統(tǒng)前,對(duì)組合服務(wù)的流程正確性和QoS 量化值進(jìn)行評(píng)估. 定義13(Web 服務(wù)組合的時(shí)變Petri 網(wǎng)模型).稱六元組SC-TVPN=(WS,Fl,St,N,M,)為一個(gè)基于時(shí)變Petri 網(wǎng)的服務(wù)組合模型,當(dāng)且僅當(dāng)滿足如下條件時(shí)成立. (1)WS為服務(wù)候選集,其包含了n個(gè)基本服務(wù)S1,S2,…,Sn; (2)Fl為組合服務(wù)過(guò)程對(duì)應(yīng)的映射規(guī)則集; (3)St為基于服務(wù)流程算法的組合服務(wù)策略集; (4)N表示一個(gè)有向Petri 網(wǎng)系統(tǒng),其對(duì)應(yīng)包含了時(shí)變庫(kù)所集、有限變遷集和工作流關(guān)系; (5)M表示網(wǎng)系統(tǒng)中庫(kù)所和時(shí)變庫(kù)所的標(biāo)識(shí)符狀態(tài)函數(shù)集; (6)Fδ表示組件服務(wù)功能庫(kù)所間所包含的時(shí)變函數(shù)式集合,時(shí)變輸入功能函數(shù)式集用FIδ表示,時(shí)變輸出功能函數(shù)式集用FOδ表示. 在SC-TVPN 中,對(duì)其基本要素包含下述幾點(diǎn)說(shuō)明. (1) 庫(kù)所集合P中包含服務(wù)的數(shù)據(jù)流庫(kù)所pD和服務(wù)的邏輯流庫(kù)所pL,上述兩類庫(kù)所對(duì)應(yīng)的子集分別為PD和PL,滿足,且PD∩PL=?,pi為不包含時(shí)間因子的一般庫(kù)所.前者中存在兩個(gè)特殊庫(kù)所——源組件服務(wù)庫(kù)所(只含輸出功能)和終止組件服務(wù)庫(kù)所(只含輸入功能),普通數(shù)據(jù)流庫(kù)所用于存儲(chǔ)服務(wù)及組合過(guò)程中的數(shù)據(jù)和功能;后者主要用于記錄服務(wù)組合時(shí)的參數(shù)轉(zhuǎn)換、功能執(zhí)行等邏輯過(guò)程. (2) 在變遷集合T中,對(duì)于?t∈T,′t和t′都至少包含1 個(gè)時(shí)變函數(shù)式引導(dǎo)的時(shí)變庫(kù)所. (3)Fδ中包含一組時(shí)變的功能函數(shù)集,其用于表示SC-TVPN 描述服務(wù)組合過(guò)程對(duì)應(yīng)的時(shí)間參數(shù)驅(qū)動(dòng)Petri網(wǎng)系統(tǒng)使能.組件服務(wù)間的庫(kù)所和變遷觸發(fā)都需要滿足Fδ的約束條件. (4) 基于BPEL4WS 相關(guān)描述,在SC-TVPN 的服務(wù)組合邏輯流包含了順序、并發(fā)、分支選擇和邏輯循環(huán)共4 種控制結(jié)構(gòu),如圖4 所示. 為了表達(dá)引入時(shí)變函數(shù)關(guān)系導(dǎo)致的Petri 網(wǎng)異構(gòu)變化特性,本文采用Petri 網(wǎng)標(biāo)記語(yǔ)言(Petri net markup language,簡(jiǎn)稱PNML)[13]來(lái)描述時(shí)變Petri 網(wǎng)服務(wù)組合模型的邏輯結(jié)構(gòu).其中,PNML 是一種基于XML 的Petri網(wǎng)系統(tǒng)信息交互形式,包含可讀性、通用性及相關(guān)性這3 方面設(shè)計(jì)原則,以元模型、類型定義接口、特性定義接口等形式清晰表達(dá)Petri 網(wǎng)及其拓展模型的結(jié)構(gòu),是Petri 網(wǎng)交換格式標(biāo)準(zhǔn)的一種解決方案. 本文以服務(wù)組合過(guò)程中組合流程的正確性驗(yàn)證,及用戶反饋評(píng)價(jià)服務(wù)質(zhì)量中時(shí)間屬性為研究重點(diǎn).可將QoS 定義為一組服務(wù)的非功能屬性集合,根據(jù)用戶偏好,包含一系列評(píng)價(jià)指標(biāo).根據(jù)本文服務(wù)系統(tǒng)構(gòu)造及電廠調(diào)度信息服務(wù)的用戶需求,對(duì)所做研究針對(duì)的服務(wù)質(zhì)量作出如下定義. 定義14(服務(wù)質(zhì)量).四元組QoS=(Ps,Ts,As,Rs)為用戶反饋的服務(wù)質(zhì)量,其中包含一組服務(wù)組合策略的非功能屬性數(shù)據(jù).在用戶組合服務(wù)整個(gè)過(guò)程中:Ps為服務(wù)執(zhí)行費(fèi)用(單位:元,CNY);Ts為服務(wù)執(zhí)行的時(shí)間開(kāi)銷(單位:s,秒);As為服務(wù)可用性,表示系統(tǒng)提供可用組件服務(wù)的能力;Rs為服務(wù)可靠性,即系統(tǒng)成功執(zhí)行組合服務(wù)的概率.對(duì)服務(wù)時(shí)間開(kāi)銷Ts,其值為SC-TVPN 系統(tǒng)內(nèi),構(gòu)建組合服務(wù)的全部組件服務(wù)所包含的變遷觸發(fā)及外延時(shí)間變化中,所有時(shí)變輸入功能函數(shù)式和時(shí)變輸出功能函數(shù)式的函數(shù)值代數(shù)之和. 將服務(wù)系統(tǒng)中的組件服務(wù)及組合服務(wù)策略的QoS 屬性記作四維列向量qj形式,則對(duì)于一組包含n個(gè)組件服務(wù)的服務(wù)候選集WS={S1,S2,…,Sn},可將其全部服務(wù)的QoS 屬性記為一個(gè)n×4 階矩陣Q=Qij,其中,i,j,n為根據(jù)用戶需求設(shè)定的自然數(shù),且1≤i≤n,1≤j≤4,表示服務(wù)組合策略中包含的組件服務(wù)屬性數(shù)據(jù). 根據(jù)基本工作流關(guān)系,將服務(wù)質(zhì)量的非功能屬性設(shè)置為隨機(jī)變量,對(duì)其數(shù)據(jù)采用隨機(jī)變量組合法進(jìn)行度量和計(jì)算.表1 為SC-TVPN 服務(wù)組合系統(tǒng)下,用戶所提偏好及約束條件的QoS 計(jì)算方法,其中,αi為分支選擇結(jié)構(gòu)第i個(gè)組件服務(wù)操作被調(diào)用的概率系數(shù),i=0 時(shí),表示跳過(guò)組件;i=1 時(shí),表示選擇該組件服務(wù). Fig.4 Structures of logic in SC-TVPN圖4 SC-TVPN 中的邏輯結(jié)構(gòu)類型 Table 1 Calculation methods of random variable data of non-functional properties on QoS表1 QoS 的非功能屬性隨機(jī)變量數(shù)據(jù)計(jì)算方法 由于QoS 各屬性量綱不一致,無(wú)法通過(guò)4 個(gè)屬性值直接衡量用戶滿意度及使用評(píng)價(jià),因此需要對(duì)各維屬性參數(shù)進(jìn)行量化處理.對(duì)于服務(wù)執(zhí)行費(fèi)用和時(shí)間開(kāi)銷指標(biāo),隨著參數(shù)值越大,QoS 越低,屬于負(fù)相關(guān)性影響指標(biāo);對(duì)于服務(wù)可用性和可靠性指標(biāo),隨著參數(shù)值越大,服務(wù)質(zhì)量越高,屬于正相關(guān)性影響指標(biāo).對(duì)正、負(fù)相關(guān)性指標(biāo)分別用公式(1)和公式(2)進(jìn)行量化. 其中,V(t)(Pr)為量化結(jié)果.然后,對(duì)量化數(shù)據(jù)采取誤差標(biāo)準(zhǔn)化處理,其實(shí)現(xiàn)過(guò)程如公式(3)所示. 其中,Pr(u,i)為用戶對(duì)第i個(gè)服務(wù)反饋的服務(wù)數(shù)據(jù)量化值,Si為組件服務(wù)數(shù)據(jù)的誤差率,θ為誤差容錯(cuò)限值,di為參數(shù)標(biāo)準(zhǔn)化權(quán)值.再根據(jù)用戶偏好,設(shè)置服務(wù)非功能屬性匹配權(quán)值ω,令ωi=di,且ωi∈[0,1],,并計(jì)算QoS 數(shù)據(jù)歸一化值,用V(QoS)表示,計(jì)算過(guò)程如公式(4)所示. 最后,根據(jù)得到的歸一化值V(QoS)及用戶匹配權(quán)值ω,由公式(5)計(jì)算該組合服務(wù)的綜合服務(wù)質(zhì)量值Ψ. 其中,Ψ∈[0,1].由計(jì)算過(guò)程可知,其值越大,表示組合服務(wù)策略越能滿足用戶特定需求,越接近用戶的期望滿意度. 為了驗(yàn)證所提模型在服務(wù)質(zhì)量(QoS)的時(shí)間開(kāi)銷屬性上具有有效性和可行性,本節(jié)首先說(shuō)明服務(wù)組合對(duì)語(yǔ)義和流程正確性檢驗(yàn)的必要性;然后給出時(shí)變Petri 網(wǎng)下,隨著時(shí)間參數(shù)變化導(dǎo)致庫(kù)所的狀態(tài)變遷觸發(fā)條件,使服務(wù)系統(tǒng)滿足狀態(tài)可達(dá)性,即實(shí)現(xiàn)服務(wù)組合驅(qū)動(dòng)條件;并提出一種基于服務(wù)路徑回溯檢驗(yàn)的魚(yú)群組合算法,該算法能有效減小服務(wù)候選集的檢索空間,避免服務(wù)庫(kù)所的冗余利用,可實(shí)現(xiàn)大規(guī)模服務(wù)候選集中,高效檢索組件服務(wù),快速構(gòu)建組合服務(wù)輸入/輸出功能匹配及用戶需求QoS 度量值的服務(wù)組合策略. 服務(wù)組合模型的性能分析,主要從兩方面檢驗(yàn)[14,15]. (1) 語(yǔ)義規(guī)范性.服務(wù)組合的PNML 語(yǔ)義描述滿足設(shè)定的匹配規(guī)范,即在語(yǔ)義上能夠滿足參數(shù)統(tǒng)一、操作協(xié)同、節(jié)點(diǎn)狀態(tài)穩(wěn)定及觸發(fā)條件充分等要求;同時(shí),通過(guò)對(duì)組合控制邏輯和QoS 屬性的語(yǔ)義一致性檢驗(yàn),保證流程上能夠正確執(zhí)行. (2) 流程正確性.通過(guò)對(duì)建模流程進(jìn)行驗(yàn)證,進(jìn)而保證工作流語(yǔ)義描述正確性、系統(tǒng)狀態(tài)可達(dá)性、邏輯流程死鎖性及系統(tǒng)邊界性等要求. 結(jié)合服務(wù)本身特性分析,戶反饋評(píng)價(jià)及服務(wù)質(zhì)量主要依賴模型語(yǔ)義描述和功能參數(shù),與此同時(shí)參數(shù)調(diào)配、映射規(guī)則、時(shí)變參數(shù)、變遷觸發(fā)、操作條件等也都可能對(duì)性能產(chǎn)生一定的影響. 為了清晰地明確組合服務(wù)性能分析的相關(guān)概念,考慮對(duì)時(shí)變Petri 網(wǎng)服務(wù)模型進(jìn)行簡(jiǎn)化.若一個(gè)給定的服務(wù)候選集WS={S1,S2,…,Sn},其對(duì)應(yīng)的映射規(guī)則集合為建立的某一服務(wù)組合策略Sti以S0為起始服務(wù).由時(shí)變Petri 網(wǎng)特性,令該服務(wù)模型抽象為四元組TVPN=(N,M,L,Fδ).其中, ·Fδ表示時(shí)變輸入/輸出函數(shù)集合; ·M表示功能標(biāo)識(shí)符函數(shù)集合,Mk(S)表示對(duì)調(diào)用某服務(wù)狀態(tài)的輸入/輸出功能標(biāo)記; ·L表示時(shí)變Petri 網(wǎng)的有向弧集合,有向弧對(duì)應(yīng)包含了服務(wù)間的控制邏輯和功能屬性信息;同時(shí),其表示為三元組l′=(oi,ij,fl),其中,oi表示此前服務(wù)的輸出,ij表示與此前服務(wù)相匹配的后一服務(wù)輸入,fl為其包含邏輯關(guān)系所對(duì)應(yīng)的服務(wù)映射規(guī)則. 為了方便討論服務(wù)節(jié)點(diǎn)使能狀態(tài)與時(shí)變函數(shù)觸發(fā)庫(kù)所變遷的關(guān)系,首先需在組件服務(wù)的組合過(guò)程進(jìn)行聲明,避免組合過(guò)程中冗余服務(wù)重復(fù)調(diào)用導(dǎo)致系統(tǒng)效率降低,引入回溯網(wǎng)絡(luò)節(jié)點(diǎn)定理對(duì)組件服務(wù)節(jié)點(diǎn)作出標(biāo)記,即定理1 用于判斷是否存在冗余服務(wù)操作類型,建立控制流的基本邏輯關(guān)系. 定理1(回溯網(wǎng)絡(luò)節(jié)點(diǎn)定理).對(duì)于一個(gè)時(shí)變Petri 網(wǎng)服務(wù)組合模型SC-TVPN,若有向弧l′=(oi,ij,fl)滿足M(pin∩sk)?M(p),且任意以is為輸入功能的終止服務(wù)sn至少具備1 條最簡(jiǎn)有向路徑使服務(wù)組合策略成立,其中,li,lj,ls表示被有向路徑L覆蓋的有向弧,li表示源組件服務(wù)輸出功能指向的有向時(shí)變函數(shù)弧,ls表示終止服務(wù)所包含時(shí)變函數(shù)的輸入功能有向弧,則其余非最簡(jiǎn)有向路徑L′上的任一有向弧l對(duì)應(yīng)的標(biāo)識(shí)集滿足: 其中,L′為有向弧L上以第j個(gè)服務(wù)為起始服務(wù)的回溯子弧,i,j,s,n∈N+. 為保證組合服務(wù)策略分支流程是正確的,當(dāng)執(zhí)行前i個(gè)服務(wù)的輸出功能組合操作時(shí),需檢驗(yàn)此前組件服務(wù)功能路徑的動(dòng)作過(guò)程,將這一過(guò)程稱為回溯檢驗(yàn).構(gòu)建含n個(gè)組件服務(wù)的策略則需進(jìn)行n?(n?1)/2 次回溯檢驗(yàn),且需要對(duì)每條有向弧回溯路徑對(duì)應(yīng)的QoS 屬性進(jìn)行一致性驗(yàn)證. 定理2(系統(tǒng)狀態(tài)可達(dá)性定理).設(shè)時(shí)變Petri 網(wǎng)服務(wù)組合模型SC-TVPN 中,若時(shí)變函數(shù)集Fδ={fδ1,…,fδn}在?ti∈T,pj∈P都滿足關(guān)聯(lián)矩陣Aij對(duì)應(yīng)的功能映射關(guān)系,且至少存在1 條從p0到pn的有向回溯路徑,使其滿足狀態(tài)遷移矩陣K,且?M∈R(M),?pk∈P,使Mk[tk.fδk.pk〉Mp. 證明:令Mp為SC-TVPN 中構(gòu)建的某一服務(wù)組合策略St所包含第i個(gè)組件服務(wù)Si的起始輸出功能狀態(tài)或前一服務(wù)Si?1的終止輸入功能狀態(tài).在時(shí)變函數(shù)作用下,只有Si?1的輸出功能庫(kù)所和Si的輸入功能庫(kù)所具有時(shí)間關(guān)聯(lián),其他服務(wù)不受時(shí)變函數(shù)fδk的影響,每發(fā)生一次狀態(tài)觸發(fā),用一個(gè)標(biāo)識(shí)符函數(shù)相對(duì)應(yīng),構(gòu)建系統(tǒng)關(guān)聯(lián)矩陣表示組件服務(wù)功能調(diào)用的概率,則只有當(dāng)狀態(tài)滿足Mk[tk.fδk.pk驅(qū)動(dòng)節(jié)點(diǎn)Mp狀態(tài)使能時(shí),系統(tǒng)狀態(tài)滿足可達(dá)性.因此,當(dāng)前i?2 個(gè)組件服務(wù)組合后,Si庫(kù)所可以遷移至狀態(tài)Mk,并使其能夠到達(dá)任意組件服務(wù)狀態(tài). 定理2 表明SC-TVPN 實(shí)現(xiàn)服務(wù)組合過(guò)程中,若某一服務(wù)節(jié)點(diǎn)狀態(tài)在時(shí)變函數(shù)下使能,則與其有時(shí)間關(guān)聯(lián)特性的庫(kù)所周期狀態(tài)將由變遷條件等待觸發(fā). 為了進(jìn)一步說(shuō)明服務(wù)組合的邏輯流控制過(guò)程及QoS 計(jì)算方法,假設(shè)服務(wù)候選集中,由前一組件服務(wù)S1的輸出功能和后一服務(wù)S2的輸入功能構(gòu)造一次服務(wù)節(jié)點(diǎn)組合匹配.構(gòu)造服務(wù)S1到S9的組合服務(wù),可由中間路徑的任意服務(wù)實(shí)現(xiàn),則選取兩個(gè)功能相同,組件服務(wù)不同的組合服務(wù)進(jìn)行QoS 計(jì)算,相應(yīng)的QoS 綜合值記為Ψ1和Ψ2.則經(jīng)回溯過(guò)程所求得的用戶綜合QoS 評(píng)價(jià)值分別為,ωk為根據(jù)用戶設(shè)定權(quán)值,則系統(tǒng)中庫(kù)所的基本控制流和數(shù)據(jù)流邏輯關(guān)系如圖5 所示. Fig.5 Logical relationship of control flow and data flow in service model圖5 服務(wù)模型中的邏輯關(guān)系 組合服務(wù)過(guò)程中,后一服務(wù)S2的時(shí)變輸入功能集fIδ與前一服務(wù)S1的時(shí)變輸出功能fOδ以映射規(guī)則集中的服務(wù)規(guī)則fl相對(duì)應(yīng).對(duì)服務(wù)組合的回溯過(guò)程即對(duì)已組合部分的輸入/輸出映射關(guān)系檢驗(yàn)的過(guò)程,這個(gè)過(guò)程可通過(guò)檢測(cè)對(duì)應(yīng)輸入/輸出功能集中的參數(shù)值獲取. 依據(jù)SC-TVPN 中服務(wù)控制流邏輯結(jié)構(gòu),引入組合成功率TR[16]的概念,用于比較構(gòu)建組合服務(wù)時(shí),表示不同方法下組件服務(wù)的可用性及可靠性對(duì)組合服務(wù)可成功執(zhí)行的概率大小.本文中,組合成功率TR由公式(6)計(jì)算求得. 其中,li表示滿足組合服務(wù)功能的有向弧路徑長(zhǎng)度;M(s)表示標(biāo)識(shí)符函數(shù)狀態(tài)集;t表示可觸發(fā)變遷;ω為回溯路徑涵蓋的組件服務(wù)中,QoS 屬性的用戶匹配權(quán)值,表示該組件服務(wù)在用戶需求功能的作用比重. 為使服務(wù)候選集中,組件服務(wù)均能以特定服務(wù)選取概率進(jìn)行調(diào)用,因此需要對(duì)候選組件服務(wù)實(shí)現(xiàn)全局遍歷,記錄服務(wù)信息和節(jié)點(diǎn)狀態(tài).鑒于此,本文考慮在人工魚(yú)群算法[17]的基礎(chǔ)上利用人工魚(yú)個(gè)體信息對(duì)應(yīng)地記錄服務(wù)的輸入/輸出功能、QoS 數(shù)據(jù)及性能屬性.感知周圍環(huán)境信息的特點(diǎn)為基礎(chǔ),提出一種遍歷服務(wù)庫(kù)所及組合操作變遷的服務(wù)組合流程驗(yàn)證及策略計(jì)算算法.該算法中,人工魚(yú)個(gè)體分別用于記錄組件服務(wù)的輸入/輸出功能、QoS 數(shù)據(jù)及性能參數(shù)等信息,通過(guò)建立的服務(wù)映射規(guī)則,對(duì)不同服務(wù)模型下建立的服務(wù)組合策略各項(xiàng)指標(biāo)進(jìn)行選擇和計(jì)算,進(jìn)而實(shí)現(xiàn)全局服務(wù)的篩選和優(yōu)化配置. 本文算法采用自頂而下的設(shè)計(jì)西路解決服務(wù)組合問(wèn)題.首先,根據(jù)服務(wù)數(shù),將一定數(shù)量的人工魚(yú)個(gè)體置于服務(wù)候選集中,其用于記錄單一服務(wù)的性能參數(shù)、時(shí)變函數(shù)式及狀態(tài)信息,當(dāng)系統(tǒng)使能,滿足組合操作變遷觸發(fā)條件時(shí),根據(jù)個(gè)體記錄的服務(wù)空間、時(shí)變庫(kù)所及變遷狀態(tài),即可實(shí)現(xiàn)對(duì)遍歷至當(dāng)前位置狀態(tài)的檢驗(yàn);然后,固定當(dāng)前服務(wù)狀態(tài)xi,根據(jù)設(shè)定的調(diào)用概率實(shí)現(xiàn)下一服務(wù)的調(diào)用,或?qū)σ呀M合的服務(wù)策略進(jìn)行遍歷檢驗(yàn),以得到與當(dāng)前服務(wù)狀態(tài)匹配的最優(yōu)組件服務(wù). 由于人工魚(yú)的主要活動(dòng)受限于巡視視野內(nèi)的位置狀態(tài),通過(guò)與當(dāng)前位置進(jìn)行比較,選擇最優(yōu)動(dòng)作作為下一時(shí)刻的活動(dòng)方向.因而,考慮將尋找最優(yōu)服務(wù)策略與人工魚(yú)搜索更高濃度食物生存行為[16]建立聯(lián)系,則每個(gè)人工魚(yú)個(gè)體都將以向食物濃度更高的位置運(yùn)動(dòng)作為目標(biāo). 鑒于此,為了提升服務(wù)組合模型的組合效率和可靠度,并從含大量組件服務(wù)的候選集中取得滿足要求的服務(wù)組合策略,需要有效提升個(gè)體的全局搜索能力,克服原始算法精度低和后期收斂速度慢等問(wèn)題.因此,本文以基本魚(yú)群算法為基礎(chǔ),在人工魚(yú)個(gè)體位置更新過(guò)程中引入已知全局最優(yōu)的服務(wù)信息,進(jìn)而改善了個(gè)體遍歷的效率,其可以利用公式(7)~公式(9)進(jìn)行表示. 其中,Val表示個(gè)體的視野范圍;Sp表示隨機(jī)移動(dòng)的步長(zhǎng);Ra(?)表示變量函數(shù)在區(qū)間[0,1]上服從隨機(jī)分布,其對(duì)應(yīng)服務(wù)組合時(shí),滿足回溯條件的服務(wù)調(diào)用概率;Xi(t)是人工魚(yú)的當(dāng)前狀態(tài);Xi(t+1)是個(gè)體尋優(yōu)下一位置的狀態(tài);ΔXi(t+1)由當(dāng)前狀態(tài)和較優(yōu)狀態(tài)X′(t+1)的差值決定. 為保證組合策略St能反映真實(shí)系統(tǒng)的性能,在尋優(yōu)過(guò)程中,需要結(jié)合實(shí)際情況對(duì)服務(wù)參數(shù)設(shè)置可靠性和可用性等約束條件,刪除不滿足最低用戶需求的服務(wù)策略,進(jìn)而保證服務(wù)組合的效率,即滿足: 此方法用于檢驗(yàn)時(shí)變庫(kù)所的狀態(tài)和變遷操作正確性,并可以用于計(jì)算不同模型下生成服務(wù)組合策略的綜合QoS 值,并在此基礎(chǔ)上依據(jù)用戶偏好性能提供一種最優(yōu)服務(wù)組合策略.基于服務(wù)組合的語(yǔ)義描述和邏輯結(jié)構(gòu),我們將算法流程驗(yàn)證和組合計(jì)算歸納為如下步驟. (1) 利用PNML 慣例文檔描述服務(wù)數(shù)據(jù)和邏輯功能,將服務(wù)系統(tǒng)轉(zhuǎn)化為時(shí)變Petri 網(wǎng)結(jié)構(gòu)框架.其中,para為組件服務(wù)性能參數(shù),data為服務(wù)基本信息或數(shù)據(jù);fδk(p,n)為受n個(gè)時(shí)變參數(shù)影響的第k個(gè)服務(wù)庫(kù)所,e(t〉)表示操作變遷t在fδk下使能,M為時(shí)變標(biāo)識(shí)符的集合. (2) 遍歷服務(wù)系統(tǒng)中的時(shí)變參數(shù)庫(kù)所及服務(wù)變遷操作,計(jì)算Petri 網(wǎng)系統(tǒng)的狀態(tài)可達(dá)圖. (3) 檢驗(yàn)服務(wù)系統(tǒng)是否滿足語(yǔ)法正確性、狀態(tài)可達(dá)性及變遷死鎖性[16]. (4) 檢驗(yàn)組合策略的功能特性、執(zhí)行順序和QoS 一致性. (5) 計(jì)算并輸出全部服務(wù)組合策略,生成服務(wù)組合策略集合. 具體流程見(jiàn)算法1. 算法1.服務(wù)性能檢驗(yàn)及組合分析算法. 輸入:服務(wù)候選集WS,服務(wù)映射規(guī)則,服務(wù)性能參數(shù). 輸出:組合分析檢驗(yàn)結(jié)果,服務(wù)組合策略St和對(duì)應(yīng)結(jié)果. 上述過(guò)程通過(guò)服務(wù)組合性能模型和時(shí)變Petri 網(wǎng)的狀態(tài)可達(dá)性對(duì)服務(wù)對(duì)象加以分析.基于當(dāng)前狀態(tài)xi及對(duì)應(yīng)集合中其他狀態(tài)及映射規(guī)則,進(jìn)行完整地遍歷搜索.因此,可以實(shí)現(xiàn)對(duì)描述服務(wù)數(shù)據(jù)、邏輯的元素進(jìn)行正確性和一致性檢驗(yàn),進(jìn)而保證各項(xiàng)性能參數(shù)滿足QoS 需求.假設(shè)服務(wù)集中的服務(wù)數(shù)目表示為n,服務(wù)映射規(guī)則數(shù)目表示為m,人工魚(yú)個(gè)體檢索的最大循環(huán)次數(shù)為lmax,則所提算法對(duì)應(yīng)的最大時(shí)間復(fù)雜度為O(n),空間復(fù)雜度為O(m×lmax).同時(shí),函數(shù)Test(ServiceFlow)可以保證系統(tǒng)性能評(píng)價(jià)的準(zhǔn)確性,函數(shù)Check&Calculation(St)則從QoS 屬性方面檢驗(yàn)時(shí)變Petri 網(wǎng)服務(wù)模型的組合一致性,函數(shù)Genaration(St)可以高效計(jì)算系統(tǒng)效率及組合成功率. 本節(jié)根據(jù)時(shí)變Petri 網(wǎng)特性對(duì)服務(wù)組合過(guò)程進(jìn)行建模.首先,在服務(wù)系統(tǒng)中,對(duì)功能相同的Web 服務(wù)通過(guò)不同方法進(jìn)行語(yǔ)義綁定、參數(shù)設(shè)置、文檔發(fā)布,使其作為已發(fā)布的組件服務(wù)可任意調(diào)用;然后,對(duì)多功能分布式服務(wù)進(jìn)行組合,在不同方法下實(shí)現(xiàn)功能相似的組合服務(wù)構(gòu)建過(guò)程,并獲取相應(yīng)服務(wù)綁定數(shù)據(jù);對(duì)于用戶,則可任意調(diào)用系統(tǒng)發(fā)布的組合服務(wù),并給出相應(yīng)的用戶反饋評(píng)價(jià);在大量數(shù)據(jù)提取及分析統(tǒng)計(jì)后,可表明時(shí)間因素對(duì)服務(wù)組合用戶反饋評(píng)價(jià)的影響;同時(shí),為了進(jìn)一步證明時(shí)變Petri 網(wǎng)服務(wù)模型的有效性,本節(jié)通過(guò)實(shí)驗(yàn)數(shù)據(jù)分析,定量說(shuō)明本文方法在服務(wù)組合過(guò)程中時(shí)間表達(dá)的突出特性;最后,與包含普通Petri 網(wǎng)建模的服務(wù)組合方法對(duì)比,說(shuō)明時(shí)間因素對(duì)用戶反饋評(píng)價(jià)的重要性及本文方法的可行性. 基于算法1 及用戶目標(biāo)需求分析,為了充分證明本文方法的可行性和有效性,采用研究團(tuán)隊(duì)開(kāi)發(fā)的基于開(kāi)發(fā)網(wǎng)絡(luò)環(huán)境下,松散耦合的B/S 結(jié)構(gòu)服務(wù)信息調(diào)度應(yīng)用系統(tǒng)來(lái)綜合分析模型性能.在此電廠信息調(diào)度服務(wù)平臺(tái)中,采用隨機(jī)法獲取37 640 個(gè)組件Web 服務(wù),用于構(gòu)建6 000 組電力信息組合服務(wù),其中,組件服務(wù)包含服務(wù)數(shù)據(jù)、控制邏輯及用戶評(píng)價(jià)的QoS 歷史數(shù)據(jù)等基本信息,用戶數(shù)據(jù)由電廠各部門(mén)289 名工作人員在6 個(gè)月內(nèi)使用此平臺(tái)的情況來(lái)采集.針對(duì)電廠信息調(diào)度服務(wù)平臺(tái)中電力信息的5 個(gè)基本服務(wù),通過(guò)BPEL 流程進(jìn)行調(diào)用,其中的服務(wù)執(zhí)行參數(shù)由調(diào)度費(fèi)用、時(shí)間開(kāi)銷、服務(wù)可用性和可靠性組成,且各參數(shù)隨時(shí)間動(dòng)態(tài)變化,將電廠用戶每執(zhí)行一次服務(wù)的參數(shù)記錄下來(lái),以TVPN 對(duì)服務(wù)參數(shù)進(jìn)行描述,由Petri 網(wǎng)結(jié)構(gòu)對(duì)各服務(wù)節(jié)點(diǎn)實(shí)現(xiàn)參數(shù)最優(yōu)化的選取和匹配,將服務(wù)組合轉(zhuǎn)化為節(jié)點(diǎn)路徑優(yōu)化問(wèn)題. 基于模型流程,設(shè)置系統(tǒng)時(shí)變函數(shù)集Fδ=FIδ∪FOδ,將自然數(shù)集N={1,…,1000}視作有限時(shí)變庫(kù)所集,其每個(gè)元素對(duì)應(yīng)狀態(tài)表示個(gè)人在一段時(shí)間內(nèi)使用組合服務(wù)的次數(shù).時(shí)變函數(shù)式與組件服務(wù)的輸入/輸出功能相對(duì)應(yīng),表示服務(wù)狀態(tài)變遷觸發(fā)或外延.為了便于采集實(shí)驗(yàn)數(shù)據(jù),設(shè)定1/4組件服務(wù)包含時(shí)變輸入/輸出影響,1/4只包含時(shí)變輸入影響,1/4 只包含時(shí)變輸出影響,其余不受時(shí)間變化參數(shù)影響.將服務(wù)平臺(tái)基本流程轉(zhuǎn)化為時(shí)變Petri 網(wǎng)模型,其邏輯執(zhí)行過(guò)程如圖6 所示. Fig.6 Services workflow of the platform of power plant information based on SC-TVPN圖6 電廠信息調(diào)度服務(wù)的SC-TVPN 網(wǎng)流程 本實(shí)驗(yàn)在對(duì)應(yīng)的實(shí)際系統(tǒng)中,將時(shí)變Petri 網(wǎng)的時(shí)變函數(shù)表達(dá)式與特定服務(wù)條件綜合進(jìn)行討論,設(shè)置部分組件服務(wù)的文檔為其他建模類型,用于實(shí)驗(yàn)對(duì)比或測(cè)試.實(shí)驗(yàn)中用到的信息調(diào)度服務(wù)平臺(tái)搭建在IBM X260 服務(wù)器上,實(shí)驗(yàn)的CPU 為Dual-Core E6500@2.93GHz,內(nèi)存4GB RAM,系統(tǒng)軟件開(kāi)發(fā)環(huán)境為Visual Studio 2010,數(shù)據(jù)庫(kù)采集系統(tǒng)利用SQL Server 2008 開(kāi)發(fā)搭建,使用到的組件服務(wù)主要為涉及電廠工作流程的基本信息調(diào)度規(guī)程. 為了驗(yàn)證本文所提時(shí)變Petri 網(wǎng)服務(wù)組合方法的可行性和有效性,根據(jù)采集的實(shí)驗(yàn)數(shù)據(jù),通過(guò)設(shè)計(jì)的服務(wù)流程驗(yàn)證及組合算法,由比較調(diào)用的組合服務(wù)QoS 指標(biāo)實(shí)現(xiàn),并綜合計(jì)算各方法下構(gòu)建組合服務(wù)的組合成功率TR0,可直觀得出不同方法對(duì)組合服務(wù)系統(tǒng)建模的作用及有效性比較. 表2 為不同服務(wù)組合方法下,在服務(wù)集S1與S2中獲取服務(wù)組合策略的QoS 可描述性及組合成功率的對(duì)比情況.其中,在構(gòu)建的組合服務(wù)策略集St上,先選取4 000 個(gè)組合服務(wù)作為服務(wù)測(cè)試集S1,將其余2 000 個(gè)組合服務(wù)作為服務(wù)比較集S2.對(duì)于S1和S2中的電力信息調(diào)度服務(wù),分別劃分組別,并以包含數(shù)目為10 個(gè),20 個(gè),50 個(gè),100個(gè),500 個(gè)映射規(guī)則實(shí)現(xiàn)綜合調(diào)度信息服務(wù)的組合.組合過(guò)程采用服務(wù)編碼文檔綁定及在線發(fā)布形式,功能相同的服務(wù)分別由基本工作流法(BPEL[18])、基于普通Petri 網(wǎng)(PN[13])的BPEL、模糊理論組合法(Fuzzy[19])、基于PN/TVPN 的Fuzzy、服務(wù)功能組合法(AOWSC[20])、基于PN/TVPN 的AOWSC 等組合方法實(shí)現(xiàn)建模和發(fā)布.由服務(wù)實(shí)際發(fā)布的功能可知,上述方法均能表達(dá)服務(wù)的并發(fā)異步特性,可實(shí)現(xiàn)不同功能的服務(wù)組合過(guò)程.得到的服務(wù)組合策略中,根據(jù)功能不同,服務(wù)數(shù)為10 個(gè)~1 000 個(gè).對(duì)于用戶而言,各組合/組件服務(wù)可循環(huán)執(zhí)行且優(yōu)先調(diào)用QoS 中可用性較高的執(zhí)行.然后依據(jù)算法1 計(jì)算St1~St10這10 組服務(wù)組合策略的時(shí)間開(kāi)銷屬性Ts,并計(jì)算各方法下的組合成功率TR0. Table 2 Comparison of the composition evaluation with different services composition methods表2 不同服務(wù)組合方法的組合評(píng)價(jià)比較 在使用不同組合方法構(gòu)建組件服務(wù)并進(jìn)行組合時(shí),不同服務(wù)數(shù)下時(shí)間開(kāi)銷對(duì)QoS 影響比重V(Ts)/Ψ的計(jì)算結(jié)果.可知,使用BPEL,Fuzzy 和AOWSC 這3 種方法均可進(jìn)行服務(wù)描述,但由于時(shí)變Petri 網(wǎng)在變遷引發(fā)操作中考慮了時(shí)變參數(shù)函數(shù)作用,對(duì)QoS 時(shí)間開(kāi)銷屬性具有更好的描述能力,因此比普通Petri 網(wǎng)構(gòu)建的服務(wù)組合策略具有更高的組合成功率.隨著服務(wù)數(shù)增多,系統(tǒng)檢索服務(wù)候選集的時(shí)間與服務(wù)間功能組合所存在的特定時(shí)延都會(huì)增加.通過(guò)時(shí)變Petri 網(wǎng)的時(shí)間參數(shù)表達(dá)式,將時(shí)間因數(shù)與本體服務(wù)建立關(guān)聯(lián),構(gòu)造一個(gè)與服務(wù)本身特性相關(guān)的隨機(jī)變量,并計(jì)算服務(wù)組合總時(shí)間開(kāi)銷. 基于SC-TVPN 方法在不同服務(wù)組合建??蚣芟露寄茌^好描述服務(wù)數(shù)與時(shí)間開(kāi)銷的近似線性增長(zhǎng)特性,本文采用BPEL 進(jìn)行服務(wù)組合功能邏輯和數(shù)據(jù)流描述,并結(jié)合時(shí)變Petri 網(wǎng)描述服務(wù)異步組合過(guò)程,在電廠信息調(diào)度服務(wù)數(shù)據(jù)下,得到了比Fuzzy 和AOWSC 方法更高的組合成功率.當(dāng)服務(wù)較少時(shí),時(shí)間開(kāi)銷占QoS 的比重為11.37%;隨著服務(wù)數(shù)增多,該比重趨于穩(wěn)定到45%,說(shuō)明時(shí)間開(kāi)銷對(duì)服務(wù)組合的質(zhì)量評(píng)價(jià)具有重要作用.同時(shí),隨著服務(wù)數(shù)增多,用戶對(duì)服務(wù)組合策略的滿意度也有較高要求,當(dāng)用戶需求和候選集中可選擇執(zhí)行的服務(wù)輸入/輸出功能一定時(shí),則可選擇執(zhí)行一組組合成功率高且時(shí)間開(kāi)銷低的服務(wù)組合策略.因此,與已有服務(wù)組合模型相比,本文組合方法在評(píng)價(jià)時(shí)間開(kāi)銷對(duì)用戶反饋服務(wù)質(zhì)量評(píng)價(jià)的影響上具有有效性. 圖7 表明,構(gòu)建同一個(gè)服務(wù)組合方案時(shí),使用不同服務(wù)集構(gòu)建該方案的執(zhí)行時(shí)間也不同.隨著方案中服務(wù)數(shù)的增多,根據(jù)回溯算法計(jì)算服務(wù)組合方案所需的執(zhí)行時(shí)間也將增加.此外,當(dāng)一個(gè)方案服務(wù)數(shù)較少時(shí),構(gòu)建組合方案的算法執(zhí)行時(shí)間在兩組服務(wù)集上無(wú)明顯差異;反之,方案服務(wù)數(shù)較多時(shí),包含服務(wù)數(shù)目較少的服務(wù)集S1在執(zhí)行時(shí)間上顯然效率更高. Fig.7 Contrast of service time consumption and efficiency for different methods on the same service set圖7 不同方法在相同服務(wù)候選集下的時(shí)間開(kāi)銷及系統(tǒng)效率對(duì)比 第4.2 節(jié)的實(shí)驗(yàn)是針對(duì)同一個(gè)服務(wù)候選集,采用不同服務(wù)建模方法進(jìn)行實(shí)驗(yàn)的,目的是為了通過(guò)比較得出本文方法在描述QoS 的時(shí)間開(kāi)銷屬性上具有一定優(yōu)勢(shì),同時(shí)具有較高的組合成功率.為了進(jìn)一步說(shuō)明在不同服務(wù)候選集下,本文方法同樣具備有效性和可行性,本節(jié)在同一服務(wù)候選集下進(jìn)行實(shí)驗(yàn),并比較使用不同的服務(wù)映射規(guī)則構(gòu)建不同服務(wù)組合策略St1和St2時(shí)得到的用戶滿意度來(lái)證明.表3 為設(shè)定不同服務(wù)組合策略中的服務(wù)數(shù),通過(guò)實(shí)驗(yàn)獲得的100 組用戶反饋評(píng)價(jià)情況. Table 3 Feedback of users for different service compositions on the service set表3 同一候選服務(wù)集下構(gòu)建不同服務(wù)組合方案的用戶評(píng)價(jià) 表3 反映了在時(shí)變Petri 網(wǎng)構(gòu)建的服務(wù)組合模型中,使用包含不同服務(wù)數(shù)的同一候選服務(wù)集和服務(wù)映射集合構(gòu)建不同服務(wù)組合策略的用戶反饋情況.可以看出,隨著服務(wù)候選集包含的服務(wù)數(shù)增多,使用本文所提模型建立的服務(wù)策略在用戶反饋通過(guò)數(shù)上呈降低趨勢(shì),說(shuō)明服務(wù)搜索空間越大,構(gòu)建使用戶滿意的服務(wù)策略難度越大. 圖8 為在同一個(gè)候選服務(wù)集下,用8 組服務(wù)映射規(guī)則構(gòu)建兩組不同服務(wù)數(shù)的服務(wù)組合策略,在用戶反饋通過(guò)數(shù)與組合服務(wù)時(shí)間開(kāi)銷指標(biāo)的對(duì)比情況. Fig.8 Contrast of service time consumption of different service compositions under the same amount of services圖8 相同服務(wù)候選集下的不同服務(wù)組合時(shí)間開(kāi)銷 可知,服務(wù)策略包含的服務(wù)數(shù)是影響用戶反饋評(píng)價(jià)的主要因素.另外,在同一服務(wù)候選集中,構(gòu)建服務(wù)數(shù)不同的服務(wù)策略時(shí),用戶反饋通過(guò)數(shù)相差不大,若用相對(duì)通過(guò)率來(lái)表示用戶對(duì)組合服務(wù)滿意程度的對(duì)比,則該數(shù)值可保持在1.5 以下.根據(jù)文獻(xiàn)[21]方法可知,本文建模方法是可行的. 使用本文方法進(jìn)行電廠信息調(diào)度服務(wù)應(yīng)用時(shí),應(yīng)充分考慮使用最少服務(wù)數(shù)的服務(wù)候選集來(lái)滿足用戶的使用需求即可.當(dāng)組合方案中服務(wù)數(shù)一定時(shí),時(shí)間開(kāi)銷是影響用戶滿意度的重要參考指標(biāo).由調(diào)度平臺(tái)的實(shí)際運(yùn)行過(guò)程,使用本文所提建模方法,在宏觀上可以有效提高電廠工作人員的信息服務(wù)滿意度;同時(shí),可以根據(jù)用戶對(duì)信息調(diào)度服務(wù)的使用偏好,我們可以進(jìn)一步調(diào)整該信息調(diào)度平臺(tái)的服務(wù)結(jié)構(gòu),通過(guò)合理的資源配置方式,將軟硬件性能與組件服務(wù)的執(zhí)行效率相結(jié)合,即可實(shí)現(xiàn)平臺(tái)的最優(yōu)利用價(jià)值. 用戶反饋QoS 評(píng)價(jià)方法是反映系統(tǒng)提供組合服務(wù)策略是否達(dá)到用戶期望值的重要衡量指標(biāo),而服務(wù)的時(shí)間開(kāi)銷特性對(duì)本文研究的電廠信息調(diào)度服務(wù)平臺(tái)具有重要參考價(jià)值,電廠系統(tǒng)以省時(shí)省力的調(diào)度信息服務(wù)規(guī)程為基準(zhǔn),因此用戶更多考慮的是如何節(jié)約服務(wù)調(diào)用的時(shí)間開(kāi)銷.本文根據(jù)Web 服務(wù)具有異步并發(fā)、協(xié)同操作等特點(diǎn),考慮到目前僅有較少研究針對(duì)特定服務(wù)組合的時(shí)間開(kāi)銷特性,提出一種基于時(shí)變Petri 網(wǎng)的系統(tǒng)結(jié)構(gòu)用于描述服務(wù)組合建模過(guò)程.該模型面向服務(wù)組合策略計(jì)算,根據(jù)組合服務(wù)庫(kù)所回溯理論對(duì)服務(wù)策略執(zhí)行正確性檢驗(yàn),降低系統(tǒng)普遍存在的服務(wù)重用問(wèn)題,能有效提高服務(wù)組合效率,使系統(tǒng)具有較高的穩(wěn)定性和組合成功率. 本文提出一種由時(shí)間Petri 網(wǎng)拓展得到的時(shí)變Petri 網(wǎng)服務(wù)組合建模方法,并在一組實(shí)際電廠信息調(diào)度服務(wù)平臺(tái)提供的Web 服務(wù)下進(jìn)行實(shí)驗(yàn)分析,給出不同服務(wù)建模方法在組合成功率上的對(duì)比情況,說(shuō)明該方法能夠達(dá)到較好的效果.此外,使用不同規(guī)模的服務(wù)候選集進(jìn)一步通過(guò)實(shí)驗(yàn)數(shù)據(jù),說(shuō)明時(shí)間開(kāi)銷特性對(duì)服務(wù)組合策略的效率及用戶滿意度的影響.在日益復(fù)雜的網(wǎng)絡(luò)環(huán)境中,使用一種簡(jiǎn)單、高效的服務(wù)組合方法是滿足企業(yè)級(jí)用戶需求的前提條件.今后,我們將研究影響服務(wù)組合質(zhì)量的其他因素對(duì)系統(tǒng)性能的影響,并考慮通過(guò)建立更高效的Petri 網(wǎng)拓展模型結(jié)構(gòu)來(lái)描述系統(tǒng)性能,為服務(wù)系統(tǒng)綜合分析做進(jìn)一步探索和研究. 作者注 本文是我們于2016 年6 月30 日投到《軟件學(xué)報(bào)》的論文.該文是大連理工大學(xué)大學(xué)韓敏(本文第一作者)老師指導(dǎo)的2017 屆(2017 年6 月)畢業(yè)的研究生孫國(guó)慶(本文第二作者)的碩士學(xué)位論文《基于時(shí)變Petri網(wǎng)的Web 服務(wù)組合研究與應(yīng)用》工作成果的一部分,特此說(shuō)明.2 時(shí)變Petri 網(wǎng)與服務(wù)描述
2.1 Petri網(wǎng)及其特性
2.2 時(shí)變Petri網(wǎng)及服務(wù)描述
2.3 基于時(shí)變Petri網(wǎng)的Web服務(wù)組合模型
3 服務(wù)組合模型的性能分析
3.1 組合服務(wù)性能分析的前提
3.2 服務(wù)流程驗(yàn)證及組合算法
4 仿真實(shí)驗(yàn)及結(jié)果分析
4.1 實(shí)驗(yàn)條件
4.2 服務(wù)組合的有效性實(shí)驗(yàn)
4.3 同一服務(wù)候選集下構(gòu)建服務(wù)組合策略
5 總結(jié)