摘 要:隨著Internet 的迅猛發(fā)展,我國網(wǎng)民的數(shù)量激增,由于網(wǎng)絡(luò)的多變性,傳統(tǒng)的綠色網(wǎng)絡(luò)Web服務(wù)發(fā)現(xiàn)問題的方法無法適應(yīng)綠色網(wǎng)絡(luò)Web服務(wù)需求。提出目標Web服務(wù)描述語言和服務(wù)匹配算法解決綠色網(wǎng)絡(luò)中Web服務(wù)發(fā)現(xiàn)這一問題,有效地提高了綠色網(wǎng)絡(luò)服務(wù)發(fā)現(xiàn)的效率和質(zhì)量,結(jié)合綠色網(wǎng)絡(luò)實際情況實現(xiàn)一個模塊系統(tǒng)。
關(guān)鍵詞:綠色網(wǎng)絡(luò); Web服務(wù); 服務(wù)本體; 服務(wù)發(fā)現(xiàn)
中圖分類號:TP311
文獻標志碼:A
文章編號:1001-3695(2010)02-0594-03
doi:10.3969/j.issn.1001-3695.2010.02.053
Goal Web services description ontology and service discovery model in green network
LONG Long1, HU Qin-bin1, WU Yan-hua1, YUAN Chang-an1, NING Kui2
(1.Dept. of Information Technology, Guangxi Teachers Education University, Nanning 530003, China; 2.Shool of Computer, Electronics Information, Guangxi University, Nanning 530001, China)
Abstract:With the rapid growth of Internet,tradition forecasting methods in green network can not adapt to require of Web services of green network. In green network, firstly proposed a new algorithm of the forecasting algorithm Web services description ontology for green network grid service. The new way could prove effective of the Web services of green network. Applied Web services description ontology for green network, in the end proposed the result of model.
Key words: green network; Web service; service ontology; service discovery
0 引言
“綠色網(wǎng)絡(luò)”的定義尚未明確,一般性地理解為暢通、健康和安全,并可以預(yù)防人群感染上網(wǎng)癮精神病的網(wǎng)絡(luò)。基于行為分析的綠色網(wǎng)絡(luò)系統(tǒng)軟件是為了解除和預(yù)防青少年的網(wǎng)癮而設(shè)計的,對綠色網(wǎng)絡(luò)的建設(shè)具有非常重要的現(xiàn)實意義,并已經(jīng)在實際應(yīng)用中取得了較好的社會和經(jīng)濟價值。綠色網(wǎng)絡(luò)Web服務(wù)系統(tǒng)是為加強基于行為分析的綠色網(wǎng)絡(luò)系統(tǒng)項目的Web服務(wù)能力而設(shè)立的子系統(tǒng)。基于Web綠色網(wǎng)絡(luò)的應(yīng)用為客戶提供了不同類型的綠色網(wǎng)絡(luò)Web服務(wù),而這些服務(wù)具有不同的形式,而且復(fù)雜程度也各不相同。綠色網(wǎng)絡(luò)Web服務(wù)發(fā)現(xiàn),就是綠色網(wǎng)絡(luò)中的服務(wù)請求者以某種方式在不同類型的綠色網(wǎng)絡(luò)Web服務(wù)中,找到所需要的綠色網(wǎng)絡(luò)服務(wù),并可以完成這些服務(wù)。然而,現(xiàn)有的Web服務(wù)描述語言不能完整地描述綠色網(wǎng)絡(luò)中的功能特征、性能特征和語言特征:
a)OWL-S只能描述綠色網(wǎng)絡(luò)Web服務(wù)系統(tǒng)的功能特性與語言特征,缺乏對綠色網(wǎng)絡(luò)性能特征的描述。
b)WSDL只能描述綠色網(wǎng)絡(luò)Web服務(wù)系統(tǒng)的功能
特征,缺乏對性能特征和語義特征的描述,從而導(dǎo)致了現(xiàn)有的綠色網(wǎng)絡(luò)中的Web服務(wù)發(fā)現(xiàn)方法存在兩個方面的問題:
(a)在現(xiàn)有的綠色網(wǎng)絡(luò)系統(tǒng)中采用語義級Web服務(wù)描述語言,由于缺乏綠色網(wǎng)絡(luò)系統(tǒng)服務(wù)質(zhì)量描述和靈活、有效的服務(wù)匹配算法,難以保證綠色網(wǎng)絡(luò)中服務(wù)組合的性能和質(zhì)量,如augment UDDI Registry系統(tǒng)[1,2](基于DAMLB本體的非輕量級DAML-S語言)。
(b)在現(xiàn)有的綠色網(wǎng)絡(luò)系統(tǒng)中采用語法級Web服務(wù)描述語言,由于依賴關(guān)鍵字匹配和語義信息的不足,查準率低,影響了綠色網(wǎng)絡(luò)系統(tǒng)的服務(wù)組合的相容性[3,4]。
1 綠色網(wǎng)絡(luò)系統(tǒng)目標Web服務(wù)描述本體
綠色網(wǎng)絡(luò)系統(tǒng)中目標Web服務(wù)需求分為功能需求和非功能需求,功能需求主要描述系統(tǒng)中目標Web服務(wù)的功能特征,也就是系統(tǒng)的接口信息等,如輸入和輸出參數(shù)、前置條件等,非功能Web服務(wù)的性能特征主要是指服務(wù)質(zhì)量(QoS)等性能指標,如系統(tǒng)中的服務(wù)響應(yīng)時間、使用成本費用等。
把綠色網(wǎng)絡(luò)系統(tǒng)中的Web服務(wù)歸類為輸入?yún)?shù)、輸出參數(shù)、前置條件、效果和QoS組成的實體,Web服務(wù)表示為
WS (I, O, P, E, Q)
其中:I、 O、 P、 E、 Q分別表示輸入?yún)?shù)集、輸出參數(shù)集、前置條件集、效果集和服務(wù)質(zhì)量參數(shù)集。基于上述抽象設(shè)計的目標Web服務(wù)描述本體如圖1所示。
a)輸入?yún)?shù),屬性由hasName、hasType、hasValue組成。其中:hasName是對參數(shù)的語義描述,值表示領(lǐng)域本體中預(yù)先定義的概念;hasType是對參數(shù)數(shù)據(jù)類型的描述;hasValue為動態(tài)驗證發(fā)現(xiàn)的綠色網(wǎng)絡(luò)系統(tǒng)Web服務(wù)所設(shè)置的參數(shù)值。
b)前置條件用于領(lǐng)域本體的概念表示。
c)后置效果用于表示領(lǐng)域本體的概念。
d)輸出參數(shù)由hasName、hasType組成,含義與輸入?yún)?shù)的相同。
e)QoS,綠色網(wǎng)絡(luò)系統(tǒng)中的目標Web服務(wù)的非功能指標非常多,系統(tǒng)設(shè)計時只能考慮可靠性、使用費用和響應(yīng)時間等結(jié)果參數(shù)。綠色網(wǎng)絡(luò)系統(tǒng)中的目標Web服務(wù)的QoS模型是一個一維向量,可以根據(jù)系統(tǒng)實際需要進行擴充。
例如,綠色網(wǎng)絡(luò)中預(yù)定綠色網(wǎng)絡(luò)游戲服務(wù),后要求取消服務(wù),對系統(tǒng)的目標Web服務(wù)功能需求如下:輸入?yún)?shù)為GameServe,輸出參數(shù)為ResultInfo,前置條件為HaveGameServe,效果為NoGameServe。功能需求描述使用的概念主要來自綠色網(wǎng)絡(luò)游戲服務(wù)領(lǐng)域本體,如圖2所示。系統(tǒng)目標Web服務(wù)的非功能需求為:響應(yīng)時間小于2 s,費用為10元/次,可靠性不低于0.3。
根據(jù)綠色網(wǎng)絡(luò)系統(tǒng)中游戲服務(wù)的目標Web服務(wù)實際需求描述本體的定義,需求描述如下
〈?xml version= \"1.0\",encoding= \"UTF-8\"?〉
〈rdf:RDF
Xmlns:goal=\"http://www.nnjy.com.cn/goal.owl\"
Xml:base = \"http://www.nnjy.com.cn/goal.owl\"
xml:domain=\"http://www.nnjy.com.cn/Gameontology.owl#\"〉
〈goal: Goal rdf: ID= \"\"〉
〈goal :hasPrecondition〉
〈goal: has Precondition rdf : ID = \"precondition\"〉HaveGameServe
〈/goal: Precondition〉
〈/goal: hasPrecondition〉
〈goal: has Input〉
〈goal: has Input rdf:= \"input\"〉
〈goal: has Name〉GameServe〈/goal: has Name〉
〈goal: has Type〉Class〈/goal: has Type〉
〈goal: hasValue〉
〈GamemNumber〉100〈/GamemNumber〉
〈setClass〉100〈/setClass〉
〈hasTimeOfIssue〉Time〈/hasTimeOfIssue〉
〈has Person name 〉PersonNameInstance〈/has Person name 〉
〈has FormOfPayment〉CreditCardInstance〈/has FormOfPayment〉
〈has ID card〉IDCardInstance〈/has ID card〉
〈has Game〉GameInstance〈/has Game〉
〈/goal: has Value〉
〈/goal: Input〉
〈/goal: has Input〉
〈goal: has Output〉
〈goal: Output rdf: ID= \"output\" 〉
〈goal: has Name〉 OperationResult 〈/goal: has Name〉
〈/goal: Output〉
〈/goal: has Output〉
〈goal: has Effect〉
〈goal: Effect rdf: ID = \"effect\"〉NoGameServe〈/goal: Effect〉
〈/goal: has Effect〉
〈goal: has Qos〉
〈goal: has Response time〉2〈/goal: has Response time〉
〈goal: has Cost〉10〈/goal: has Cost〉
〈goal: has Reliability〉0.3〈goal: has reliability〉
〈/goal: has Qos〉
〈/goal: Goal〉
〈/rdf : RDF〉
2 綠色網(wǎng)絡(luò)系統(tǒng)目標Web服務(wù)發(fā)現(xiàn)實際應(yīng)用模型
2.1 系統(tǒng)中Web服務(wù)特征元素數(shù)據(jù)庫設(shè)計
根據(jù)系統(tǒng)Web服務(wù)描述本體和發(fā)現(xiàn)算法的實際需要,設(shè)計Web服務(wù)特征元素數(shù)據(jù)庫如圖3所示,由五個表構(gòu)成:WebService、InputParameter、OutPutParameter、Precondition、Effect。
WebService表存儲Web服務(wù)的各種參數(shù)的個數(shù)、性能特征以及動態(tài)執(zhí)行時需要的參數(shù);InputParameter、OutPutParameter、Effect和Precondition分別存儲Web服務(wù)的輸入?yún)?shù)、輸出參數(shù)、效果和前置條件。
2.2 系統(tǒng)中本體概念間語義匹配
領(lǐng)域本體中概念之間的語義匹配度是計算Web服務(wù)功能特征匹配度的基礎(chǔ),計算式定義為
sim(Ci,C’i)=ακ+α
其中:sim(Ci,C’i)表示概念Ci和C’i 的語義匹配度;Ci和C’i分別屬于系統(tǒng)中目標Web服務(wù)需求描述和Web服務(wù)特征數(shù)據(jù)庫中使用的概念,sim(Ci,C’i)的取值為[0,1]。如果兩個概念語義相等,則其匹配度為1;如果兩個概念之間不滿足包含關(guān)系,則匹配度為0。其中,α是一個可調(diào)節(jié)的參數(shù);κ是一個整數(shù),取值隨著Ci屬于I、O、P、E的不同而變化。
Ci屬于I或P、K的取值定義可以用式(1),如果Ci屬于O或E,K的取值可以用式(2)。
k=0 if Ci=C11 if CiCi2 if CiCi(1)
k=0 if Ci=Ci1 if CiCi2 if CiCi(2)
2.3 系統(tǒng)中Web服務(wù)功能特征的匹配
WSg(Ig,Qg,Pg,Eg,Qg)和WSj(Ij,Qj,Pj,Ej,Qj)表示系統(tǒng)中任意兩個Web服務(wù),它們之間的功能特征匹配度計算公式定義可以表示為
functionMatch(WSg,WSj)=λi×SimI(Ig,Ij)+λo×SimO(Og,Oj)+λp×SimP(Pg,Pj)+λe×SimE(Eg,Ej)
輸入?yún)?shù)匹配度為
simI(Ig,Ij)=1|Ij||Ij|i=1sim(Ci,C’i),Ci∈Ig,Ci∈Ij
輸出參數(shù)匹配度為:
simO(Og,Oj)=1|Og||Og|i=1Sim(Ci,C’i),Ci∈Og,C’i∈Oj
前置條件匹配度:
simP(Pg,Pj)=1|Pj||Pj|i=1sim(Ci,C’i),Ci∈Pg,C’i∈Pj
效果匹配度為
simE(Eg,Ej)=1|Eg||Eg|i=1sim(Ci,C’i),Ci∈Eg,C’i∈Ej
其中:λi、λo、λp、λe分別表示綠網(wǎng)系統(tǒng)輸入?yún)?shù)匹配度、系統(tǒng)輸出參數(shù)匹配度、系統(tǒng)前置條件匹配度和效果匹配度在綠網(wǎng)Web服務(wù)功能特征匹配度中所占比重,λi+λo+λp+λe=1,0≤λi≤1,0≤λo≤1,0≤λp≤1,0≤λe≤1。
2.4 系統(tǒng)中Web服務(wù)的非功能特征的匹配
系統(tǒng)中非功能特征的匹配結(jié)果有兩種情況,一種是成功,另一種是失敗。定義成功時的匹配值為1,失敗時的匹配值為0。匹配算法如下:
qosMatch (goalWS,WS){
qosMatchDegree=0;
if(goalWS.responseTime>=WS.responseTimegoalWS.cost>=WS.cost
goalWS.reliability<=WS.reliability)
then qosMatchDegree=1;
return qosMatchDegree;}
2.5 系統(tǒng)中Web服務(wù)匹配算法
在實際需求上,對綠色網(wǎng)絡(luò)系統(tǒng)中的Web服務(wù)客戶來說,找到一個能夠滿足其需要的服務(wù),而不是一定要找出最優(yōu)的那個服務(wù)即可。因為要找出最優(yōu)服務(wù)而要付出的時間代價,這是非常不可取的,特別是在備選Web服務(wù)數(shù)量較大的情況下。所以在設(shè)計系統(tǒng)匹配算法時遵循以下兩個原則:盡可能提高服務(wù)發(fā)現(xiàn)效率,即縮短服務(wù)發(fā)現(xiàn)的時間;盡可能提高服務(wù)發(fā)現(xiàn)的質(zhì)量,保證系統(tǒng)中匹配Web服務(wù)的可有性。系統(tǒng)中的Web服務(wù)匹配包括功能特征匹配和非功能特征匹配,與目標Web服務(wù)相匹配的Web服務(wù)滿足以下兩個條件:系統(tǒng)功能特征的匹配度小于系統(tǒng)設(shè)置的最小功能特征匹配度;非功能特征的匹配度為1。
系統(tǒng)Web服務(wù)匹配算法流程如圖4所示。
3 系統(tǒng)的實現(xiàn)
系統(tǒng)Web服務(wù)實現(xiàn)的系統(tǒng)結(jié)構(gòu)如圖5所示。
綠色網(wǎng)絡(luò)領(lǐng)域本體是對綠色網(wǎng)絡(luò)服務(wù)領(lǐng)域內(nèi)概念關(guān)系的精確描述,是描述系統(tǒng)Web服務(wù)的語義特征基礎(chǔ)。綠色網(wǎng)絡(luò)服務(wù)領(lǐng)域本體的一個片斷如圖2。綠色網(wǎng)絡(luò)客戶使用目標Web服務(wù)描述本體和綠色網(wǎng)絡(luò)服務(wù)本體定義的概念,來描述系統(tǒng)Web服務(wù)需求。系統(tǒng)的需求解析引擎對綠色網(wǎng)絡(luò)中Web服務(wù)需求進行解析,并把解析結(jié)果作為服務(wù)匹配引擎的輸入。系統(tǒng)的服務(wù)匹配引擎使用該Web服務(wù)匹配算法,在實例庫WS中找到滿足需求的Web服務(wù)。語義推理引擎使用RACER推理機制[5]獲得綠色網(wǎng)絡(luò)領(lǐng)域本體內(nèi)概念之間的關(guān)系,并完成概念間語義匹配度的計算。動態(tài)執(zhí)行引擎使用Web服務(wù)調(diào)動框架(WSIF)動態(tài)地執(zhí)行Web service,以此來驗證服務(wù)的可用性。
4 結(jié)束語
綠色網(wǎng)絡(luò)Web服務(wù)發(fā)現(xiàn)是綠色網(wǎng)絡(luò)系統(tǒng)一個重要組成部分。系統(tǒng)設(shè)計者設(shè)計一個能從功能特征、性能特征和語義特征幾個方面來描述綠色系統(tǒng)Web服務(wù)需求的目標Web服務(wù)描述本體,提出了基于Web服務(wù)特征元素的服務(wù)發(fā)現(xiàn)算法。算法充分利用了綠色網(wǎng)絡(luò)中Web服務(wù)的特征元素和領(lǐng)域本體概念間的語義關(guān)系,縮短了綠色網(wǎng)絡(luò)系統(tǒng)中服務(wù)發(fā)現(xiàn)的時間,保證服務(wù)的可用性,并結(jié)合綠色網(wǎng)絡(luò)服務(wù)領(lǐng)域?qū)崿F(xiàn)系統(tǒng)。
綠色網(wǎng)絡(luò)智能Web服務(wù)目標還包括綠色網(wǎng)絡(luò)服務(wù)發(fā)現(xiàn)、綠色網(wǎng)絡(luò)服務(wù)調(diào)用、綠色網(wǎng)絡(luò)組合、服務(wù)執(zhí)行監(jiān)控的自動化。研究綠色網(wǎng)絡(luò)服務(wù)組合及綠色網(wǎng)絡(luò)執(zhí)行監(jiān)控的自動化是未來本系統(tǒng)的主要方向之一。
參考文獻:
[1]
MASSIMO P,TAKAHIRO K,PAYNE T R,et al. Importing the semantic Web in UDDC[C]//Proc of Web Service,E-business and Semantic Web Workshop. 2002:225-226.
[2]SIVASHANMUGAM K, VERMA K. Speed-R: semantic P2P environment for diverse Web service registries[D]. [S.l.]:Department of Computer Science, University of Georgia,2002.
[3]ANTONIO J, SILVA C.Quality of service and semantic composition workflowers[D]. [S.l.]:Department of Computer Science, University of Georgia,2002.
[4]劉傳昌,陳俊亮.目標Web服務(wù)描述本體和服務(wù)發(fā)現(xiàn)模型[J].計算機工程,2007,33(9):187-189.
[5]邱莉榕, 史忠植, 林芬. 基于本體的語境信息模型與推理[J].計算機工程,2007,33(22):37-39.