閆志強(qiáng) ,楊翰宇+,程冠杰,劉洪榮 ,鄧水光,劉冠宇 ,楊 明
(1.首都經(jīng)濟(jì)貿(mào)易大學(xué) 管理工程學(xué)院,北京 100010;2.浙江大學(xué) 計(jì)算機(jī)學(xué)院,浙江 杭州 310007;>3.航天神舟智慧系統(tǒng)技術(shù)有限公司,北京 100010)
隨著全球化商業(yè)環(huán)境的日益復(fù)雜以及競(jìng)爭(zhēng)日益激烈,企業(yè)面臨著巨大的挑戰(zhàn),企業(yè)需要業(yè)務(wù)流程管理來(lái)不斷優(yōu)化其業(yè)務(wù)流程。同時(shí),為了保證靈活性,企業(yè)將很多非核心功能外包出去,通過(guò)購(gòu)買(mǎi)服務(wù)并將購(gòu)買(mǎi)的服務(wù)組合成適用的業(yè)務(wù)流程,以這樣的方式來(lái)滿(mǎn)足自己的業(yè)務(wù)需求。但企業(yè)的服務(wù)組合和選取仍需根據(jù)服務(wù)提供商或第三方機(jī)構(gòu)提供的服務(wù)質(zhì)量(Quality of Service,QoS)列表來(lái)決策。而且這些搜集到的服務(wù)的QoS參數(shù)信息的可靠性一直存在疑問(wèn)?;ヂ?lián)網(wǎng)上存在著許多虛假服務(wù),服務(wù)提供商有時(shí)也會(huì)為了追求利益而提供不真實(shí)的QoS值,收集和維護(hù)服務(wù)QoS值的第三方機(jī)構(gòu)(如統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議(Universal Description Discovery and Integration,UDDI))也很難保證其QoS的真實(shí)性。
區(qū)塊鏈技術(shù)起初源自于比特幣網(wǎng)絡(luò)[1],可以替代現(xiàn)有的第三方機(jī)構(gòu)來(lái)收集和維護(hù)服務(wù)的QoS值。區(qū)塊鏈采用分布式存儲(chǔ),每個(gè)節(jié)點(diǎn)都會(huì)存儲(chǔ)一份服務(wù)的QoS值,即使某些節(jié)點(diǎn)出現(xiàn)故障也不會(huì)影響系統(tǒng)穩(wěn)定性。區(qū)塊鏈的共識(shí)機(jī)制保證了一旦服務(wù)的QoS值上傳到區(qū)塊鏈網(wǎng)絡(luò)上,就不能再隨意更改,這將大大提升供應(yīng)商和機(jī)構(gòu)的作弊成本。另外,區(qū)塊鏈的加密機(jī)制也確保了系統(tǒng)的安全性。
區(qū)塊鏈上還可以通過(guò)智能合約(Smart Contract,SC)自動(dòng)簽署服務(wù)合同。SC的概念于1995年由NICK首次提出[2],是一種旨在以信息化方式傳播、驗(yàn)證或執(zhí)行合同的計(jì)算機(jī)協(xié)議。它是一套以數(shù)字形式定義的承諾,是一種運(yùn)行部署在區(qū)塊鏈平臺(tái)上的可執(zhí)行代碼集合[3],SC可以允許在沒(méi)有第三方的情況下進(jìn)行可信的服務(wù)交易,這些交易可追蹤且不可逆轉(zhuǎn)。SC能夠從區(qū)塊鏈中讀取數(shù)據(jù),并在達(dá)到限定條件的情況下自動(dòng)執(zhí)行服務(wù)并將執(zhí)行結(jié)果存儲(chǔ)在區(qū)塊鏈中。也就是說(shuō),運(yùn)行在區(qū)塊鏈平臺(tái)上的SC可以在沒(méi)有可信第三方的情況下強(qiáng)制執(zhí)行服務(wù)購(gòu)買(mǎi)者與提供者之間簽署的服務(wù)協(xié)議。
現(xiàn)階段對(duì)于在區(qū)塊鏈上進(jìn)行QoS綜合評(píng)估的研究相對(duì)較少,VIRIYASITAVAT等[4]提出在區(qū)塊鏈上安全存儲(chǔ)用戶(hù)反饋值的QoS值,并使用其平均值來(lái)確定客觀QoS參考值,重點(diǎn)在于利用區(qū)塊鏈的優(yōu)勢(shì)來(lái)存儲(chǔ)用戶(hù)反饋評(píng)價(jià),主要工作是為在區(qū)塊鏈上存儲(chǔ)用戶(hù)反饋評(píng)價(jià)值,以及部署相應(yīng)SC框架提供思路。而存儲(chǔ)服務(wù)商提供的QoS以及利用兩者進(jìn)行基于區(qū)塊鏈智能合約QoS評(píng)估的機(jī)制并沒(méi)有涉及。
本文針對(duì)以上問(wèn)題主要做了兩方面工作:首先,提出了基于區(qū)塊鏈與SC技術(shù)的存儲(chǔ)服務(wù)屬性、客戶(hù)反饋的QoS客觀評(píng)估框架,對(duì)商家提供的服務(wù)屬性和用戶(hù)對(duì)服務(wù)屬性的反饋評(píng)價(jià),通過(guò)SC進(jìn)行存儲(chǔ)和調(diào)用管理。為了減少數(shù)據(jù)在區(qū)塊鏈存儲(chǔ),無(wú)法防止源頭作弊的弊端,同時(shí)為用戶(hù)提供更高的參考價(jià)值,本文基于該背景和文獻(xiàn)[4]中設(shè)想的QoS區(qū)塊鏈客觀評(píng)估機(jī)制,提出了高斯混合模型估參拆分和復(fù)雜動(dòng)態(tài)賦權(quán)結(jié)合的算法機(jī)制,擬在區(qū)塊鏈上自動(dòng)進(jìn)行該服務(wù)的QoS客觀評(píng)估,并通過(guò)實(shí)驗(yàn)驗(yàn)證了算法的有效性和優(yōu)勢(shì)。該方法在一定程度上改善了業(yè)務(wù)流程管理(Business Process Management,BPM)中服務(wù)選擇流程的多方信任這一基礎(chǔ)問(wèn)題,并進(jìn)一步完善了服務(wù)選擇、服務(wù)QoS評(píng)估的自動(dòng)化、去中心化和互操作性。
區(qū)塊鏈最初在虛擬貨幣、金融、公證與知識(shí)產(chǎn)權(quán)等領(lǐng)域有著廣泛的應(yīng)用。例如區(qū)塊鏈外匯交易公司Cobalt,利用區(qū)塊鏈技術(shù)簡(jiǎn)化外匯交易的流程,并為外匯參與者降低了高達(dá)80%的風(fēng)險(xiǎn)和交易后成本。再如在Ripple[注]Ripple, https://ripple.com/。上,人們可以將現(xiàn)金自由地從一家銀行轉(zhuǎn)移到另一家銀行,并在區(qū)塊鏈上進(jìn)行記錄交易,不需要清算行,進(jìn)而節(jié)省了大量時(shí)間和金錢(qián)。現(xiàn)在,區(qū)塊鏈智能合約的應(yīng)用場(chǎng)景逐漸從虛擬貨幣,金融科技領(lǐng)域擴(kuò)展到工業(yè)制造、供應(yīng)鏈管理、醫(yī)療、物流乃至慈善等越來(lái)越多的領(lǐng)域。例如文獻(xiàn)[5-6]的“區(qū)塊鏈慈善”提出了一種基于區(qū)塊鏈的慈善模式。討論了基于區(qū)塊鏈捐贈(zèng)知識(shí)產(chǎn)權(quán)等無(wú)形資產(chǎn)的可能性以及以區(qū)塊鏈為基礎(chǔ)的慈善機(jī)構(gòu)籌集資金和解決社會(huì)問(wèn)題的新途徑;李琪等[6]提出基于區(qū)塊鏈技術(shù)的慈善應(yīng)用模式與平臺(tái),實(shí)現(xiàn)了善款在捐款人與被捐款人之間的直接劃轉(zhuǎn),并且限制被捐款人對(duì)善款的濫用,與此同時(shí),通過(guò)時(shí)間戳實(shí)現(xiàn)善款追蹤與實(shí)時(shí)更新。薛騰飛等[7]提出基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)共享模型,解決了醫(yī)療機(jī)構(gòu)共享數(shù)據(jù)需要花費(fèi)大量的資源和時(shí)間用于權(quán)限審查和數(shù)據(jù)校驗(yàn)的問(wèn)題。黃涵禧[8]在以太坊錢(qián)包上進(jìn)行了一次簡(jiǎn)易的承兌匯票合約實(shí)踐,并以此分析其優(yōu)勢(shì)與存在的問(wèn)題,探討了當(dāng)前SC與數(shù)字票據(jù)結(jié)合的可能場(chǎng)景。
在業(yè)務(wù)流程管理領(lǐng)域,MENDLING等[9]對(duì)業(yè)務(wù)流程管理與區(qū)塊鏈技術(shù)結(jié)合的可能性進(jìn)行了深刻探討,并提出了其存在的機(jī)遇與挑戰(zhàn)。FRIDGEN等[10]提出以國(guó)際結(jié)算業(yè)務(wù)流程為例的基于區(qū)塊鏈與SC的自動(dòng)化流程模型,該模型可以大大減少不必要的人工成本、時(shí)間成本與紙質(zhì)文檔的使用,降低了重要憑證與關(guān)鍵信息丟失的可能性,并且在一定程度上減少了通知行、開(kāi)證行等第三方機(jī)構(gòu)的介入。DI CICCIO等[11]研究了如何在以區(qū)塊鏈為基礎(chǔ)的供應(yīng)鏈上運(yùn)行業(yè)務(wù)流程,并在其運(yùn)行時(shí)提供完整的流程可跟蹤性,并提出了一種通過(guò)組織間業(yè)務(wù)流程的區(qū)塊鏈進(jìn)行流程跟蹤的解決方案。HAAMANN等[12]提出將區(qū)塊鏈作為中間層加入組織內(nèi)部或上下游組織之間流程的思路,使其在跨組織或跨部門(mén)的業(yè)務(wù)流程中承擔(dān)傳輸存儲(chǔ)重要信息和輔助決策的角色。Orlenys,Luciano等開(kāi)發(fā)了一個(gè)稱(chēng)為CATERPILLAR[注]CATERPILLAR, https://github.com/orlenyslp/Caterpillar。的工具,可以將BPMN轉(zhuǎn)化為以太坊[注]以太坊,Ethereum,區(qū)塊鏈平臺(tái)之一, https://ethereum.org/。上的智能合約語(yǔ)言Solidity,并將該流程在以太坊上進(jìn)行部署。此外,在生活中也已有京東區(qū)塊鏈開(kāi)發(fā)產(chǎn)品供應(yīng)鏈溯源系統(tǒng),普華永道推出區(qū)塊鏈審計(jì)業(yè)務(wù)等成功案例。區(qū)塊鏈的去中心化,不對(duì)稱(chēng)加密,共識(shí)算法等特點(diǎn)使其成為解決企業(yè)業(yè)務(wù)流程中信息傳遞、信息安全、多方信任等問(wèn)題最具潛力的技術(shù)之一。
物聯(lián)網(wǎng)(Internet of Things, IoT)、面向服務(wù)架構(gòu)(Service-Oriented Architecture, SOA)和云技術(shù)等先進(jìn)信息技術(shù)的產(chǎn)生推動(dòng)增加了許多功能類(lèi)似的服務(wù),但這些服務(wù)的QoS值和個(gè)人偏好層面(聲譽(yù),價(jià)位)卻不盡相同。隨著越來(lái)越多的服務(wù)在動(dòng)態(tài)環(huán)境中自主運(yùn)行,這些擁有不同QoS值卻提供著相同或相似功能的服務(wù)使服務(wù)的選擇和組合變得多樣化也更具挑戰(zhàn)[13-14]。每個(gè)企業(yè)都或多或少會(huì)將部分業(yè)務(wù)流程以購(gòu)買(mǎi)服務(wù)的形式進(jìn)行外包,企業(yè)根據(jù)其需求和條件制定不同的服務(wù)選擇策略,因此QoS作為一項(xiàng)重要指標(biāo),在服務(wù)選擇過(guò)程中受到越來(lái)越多的關(guān)注。目前,在Web 服務(wù)QoS領(lǐng)域的研究工作主要分為幾方面:QoS 模型研究、QoS 信息獲取及存儲(chǔ)和QoS屬性度量方法。其中,基于QoS的Web服務(wù)發(fā)現(xiàn)技術(shù)包括QoS屬性的組成、表示、計(jì)算及對(duì)QoS 屬性按一定的規(guī)范化算法和評(píng)價(jià)標(biāo)準(zhǔn)計(jì)算出綜合QoS相對(duì)最優(yōu)服務(wù)[15]。近年來(lái),各種QoS感知評(píng)估與服務(wù)選擇方法被提出。在QoS值感知與評(píng)定方面,如朱連章等[16]提出引入用戶(hù)體驗(yàn)質(zhì)量(Quality of Experience,QoE)并結(jié)合QoS參數(shù)量化用戶(hù)體驗(yàn)質(zhì)量的評(píng)價(jià)模型,更精確地體現(xiàn)用戶(hù)體驗(yàn)質(zhì)量與服務(wù)質(zhì)量的關(guān)系。HUANG[17]提出通過(guò)在線(xiàn)社區(qū)用戶(hù)評(píng)定Web服務(wù)QoS的UsageQoS算法,該方法利用Web服務(wù)的使用頻率計(jì)算社區(qū)內(nèi)Web服務(wù)的QoS的分?jǐn)?shù)并能夠選擇性地將用戶(hù)評(píng)級(jí)作為其初始輸入。王玉標(biāo)等[18]提出一種 Web 服務(wù)動(dòng)態(tài)評(píng)估模型,運(yùn)用灰色系統(tǒng)理論(Grey System Theory,GST) 中的灰色處理方法對(duì)人為主觀評(píng)分?jǐn)?shù)據(jù)進(jìn)行模糊化處理。同時(shí),分別采用層次分析法(Analytic Hierarchy Process,AHP) 和改進(jìn)的熵值賦權(quán)法計(jì)算Web服務(wù)的主客觀因子權(quán)重,將主客觀的權(quán)重進(jìn)行組合,計(jì)算綜合權(quán)重。GUO等[19]提出一種基于人工神經(jīng)網(wǎng)絡(luò)排名的服務(wù)評(píng)估算法。除此之外,還有一些考慮了用戶(hù)偏好的模型,如CAO等[20]提出一種基于QoS和用戶(hù)偏好的Q-WSEM評(píng)估模型,可以根據(jù)不同的用戶(hù)喜好選擇有效的服務(wù),CHOI等[21]提出一種基于服務(wù)質(zhì)量等級(jí)和用戶(hù)QoS屬性偏好的QoS評(píng)估方法,并考慮業(yè)務(wù)間或服務(wù)間上下游關(guān)系提出如Chowdhury的基于混合過(guò)濾的感知分層QoS預(yù)測(cè)方法。服務(wù)選擇和組合方面,現(xiàn)在已有多種方法滿(mǎn)足QoS約束并進(jìn)行動(dòng)態(tài)服務(wù)組合選擇,如以各種啟發(fā)式算法為基礎(chǔ)的根據(jù)用戶(hù)功能需求進(jìn)行服務(wù)篩選的方法,包括改進(jìn)模擬退火算法、局部貪婪算法[22]、遺傳算法等[23]。此外,還有文獻(xiàn)進(jìn)一步考慮到資源服務(wù)之間的關(guān)聯(lián)度對(duì)QoS值的影響,進(jìn)而DENG等[24]提出一種稱(chēng)為相關(guān)感知服務(wù)剪枝(Correlation-Aware Service Pruning,CASP)的方法來(lái)進(jìn)行服務(wù)選擇。這些方法有的將服務(wù)的選擇組合與QoS評(píng)定看作是一種決策優(yōu)化問(wèn)題,有的將其看作是混合整數(shù)規(guī)劃的問(wèn)題來(lái)尋找最佳服務(wù)組合。
然而,對(duì)于這些方法最大的阻礙是QoS值的可靠性。上述文獻(xiàn)中QoS值有的是通過(guò)觀察實(shí)驗(yàn)服務(wù)的單個(gè)個(gè)體得到的,有的是完全依賴(lài)第三方機(jī)構(gòu)提供,有的則在傳統(tǒng)方法的基礎(chǔ)上考慮用戶(hù)的反饋評(píng)價(jià)權(quán)重和歷史數(shù)據(jù)。但實(shí)際應(yīng)用中假定服務(wù)商提供的QoS值完全可信是不明智的,依賴(lài)第三方中心機(jī)構(gòu)也有許多風(fēng)險(xiǎn),如較高的維護(hù)開(kāi)銷(xiāo)、拒絕服務(wù)攻擊(Denial of Service,DoS )、第三方作假欺詐,或單點(diǎn)故障等問(wèn)題,收集用戶(hù)反饋和歷史數(shù)據(jù)雖然在一定程度上緩解了服務(wù)提供者給出QoS數(shù)據(jù)不可靠的顧慮,但不可否認(rèn)的是這些評(píng)價(jià)、反饋或歷史數(shù)據(jù)也有被篡改或偽造的可能性。而區(qū)塊鏈的去中心化、分布式結(jié)構(gòu)以及賬本數(shù)據(jù)庫(kù)的技術(shù)特性使存儲(chǔ)在區(qū)塊鏈上的數(shù)據(jù)永久不可篡改且可信,這為解決這些障礙提供了途徑。本文首先將區(qū)塊鏈技術(shù)與業(yè)務(wù)流程管理相結(jié)合,提出一種基于區(qū)塊鏈對(duì)用戶(hù)反饋數(shù)據(jù)、歷史數(shù)據(jù)以及服務(wù)提供商提供的QoS屬性數(shù)據(jù)進(jìn)行存儲(chǔ)、管理和調(diào)用的流程模型來(lái)解決這些問(wèn)題。但區(qū)塊鏈也有一定的技術(shù)局限性,如無(wú)法防止數(shù)據(jù)源頭作弊,可以通過(guò)后續(xù)的懲罰手段,如當(dāng)用戶(hù)被發(fā)現(xiàn)作弊,則扣除該用戶(hù)在區(qū)塊鏈上的信譽(yù)值,然后將信譽(yù)值與一系列利益活動(dòng)相關(guān)聯(lián)。也可以設(shè)計(jì)一些算法機(jī)制輔助懲罰手段來(lái)規(guī)避這些弊端,因此本文在提出該流程模型的基礎(chǔ)上進(jìn)而提出了相應(yīng)的QoS評(píng)估機(jī)制和算法,在減少源頭作弊可能性的同時(shí)也增加了用戶(hù)使用服務(wù)時(shí)的參考價(jià)值,并使鏈上數(shù)據(jù)更具說(shuō)服力。
在企業(yè)里,一個(gè)抽象服務(wù)代表一個(gè)業(yè)務(wù)的解決方案,可以分為原子服務(wù)和復(fù)雜服務(wù)。原子服務(wù)由一個(gè)任務(wù)構(gòu)成,不可再分,服務(wù)(任務(wù))可由市場(chǎng)上的供應(yīng)商提供。復(fù)雜服務(wù)可以由多個(gè)服務(wù)(任務(wù))組合而成,其組合方式可以用一個(gè)業(yè)務(wù)流程模型來(lái)描述。定義1給出了抽象服務(wù)的形式化描述。圖1是一個(gè)Web搜索與IP地址查詢(xún)的簡(jiǎn)化流程,流程中任務(wù)的執(zhí)行由相對(duì)應(yīng)功能的服務(wù)完成,服務(wù)的接口通過(guò)使用SOA技術(shù)封裝來(lái)標(biāo)準(zhǔn)化。
定義1抽象服務(wù)。一個(gè)抽象服務(wù)是一個(gè)二元組S=(T,proc),其中T={t1,…,t|T|}是具體服務(wù)提供商執(zhí)行的有限任務(wù)集合,proc 表示服務(wù)S對(duì)應(yīng)的業(yè)務(wù)流程,提供了任務(wù)間的結(jié)構(gòu)信息和執(zhí)行方案。
QoS是一組非功能屬性的集合,其中,每個(gè) QoS 屬性表征了服務(wù)某一方面的質(zhì)量信息,具有一個(gè)屬性值,例如可用性、響應(yīng)時(shí)間以及吞吐率等。服務(wù)市場(chǎng)上QoS的提供一般來(lái)源包括第三方機(jī)構(gòu)測(cè)評(píng)、服務(wù)提供商掛售服務(wù)時(shí)提供、用戶(hù)使用后反饋。
定義2服務(wù)質(zhì)量。A代表QoS的屬性集合,QoS為一個(gè)向量Q=(q1,q2…,q|A|),其中:Q表示服務(wù)的各個(gè)維度的屬性值,qk為第k個(gè)QoS屬性值。
服務(wù)購(gòu)買(mǎi)企業(yè)根據(jù)自己的抽象服務(wù)以及抽象服務(wù)中每個(gè)任務(wù)的QoS約束在市場(chǎng)上選擇服務(wù),合成可執(zhí)行的組合服務(wù)(composite service)。用戶(hù)在使用過(guò)服務(wù)后要對(duì)服務(wù)QoS給出反饋評(píng)價(jià)。
定義3組合服務(wù)。組合服務(wù)是抽象服務(wù)的一個(gè)執(zhí)行實(shí)例,是一個(gè)四元組C=(S,P,select,feedback),其中:S是一個(gè)抽象服務(wù);P是服務(wù)提供商的有限集合;select:T→P×QoS是一個(gè)函數(shù),select(tk)=(pk,Qk)代表選擇服務(wù)商pk來(lái)執(zhí)行任務(wù)tk,服務(wù)商提供的服務(wù)質(zhì)量為Qk=(qk,1,qk,2,…,qk,|A|)。feedback:T→P×QoS是一個(gè)函數(shù),feedback(tk)=(pk,F(xiàn)k)代表服務(wù)購(gòu)買(mǎi)者使用過(guò)服務(wù)后,對(duì)服務(wù)商pk執(zhí)行任務(wù)tk服務(wù)質(zhì)量的評(píng)價(jià)為Fk=(fk,1,fk,2…,fk,|A|)。
字面意義上講,區(qū)塊鏈就是由區(qū)塊組成的一個(gè)鏈條。意味著由多個(gè)區(qū)塊前后連接在一起,而交易記錄則保存封裝在每個(gè)區(qū)塊內(nèi)部,相鄰模塊通過(guò)哈希加密關(guān)聯(lián),因此這些記錄變得可追溯和不可更改。從實(shí)質(zhì)上講,區(qū)塊鏈?zhǔn)且粋€(gè)去中心化、分布式的數(shù)據(jù)庫(kù)或賬本,具有以下特征:
(1)去中心化 簡(jiǎn)單地說(shuō),就是在網(wǎng)絡(luò)上一個(gè)或多個(gè)服務(wù)器癱瘓的情況下應(yīng)用或服務(wù)仍然能夠持續(xù)正常地運(yùn)行,且即使每一個(gè)服務(wù)器都有一份數(shù)據(jù)或執(zhí)行程序的副本,但一個(gè)服務(wù)器絕不可能完全控制數(shù)據(jù)和程序的執(zhí)行。
(2)分布式 網(wǎng)絡(luò)上每個(gè)服務(wù)器或節(jié)點(diǎn)相互連接,服務(wù)器之間是多對(duì)多而不是一對(duì)多、一對(duì)一的連接狀態(tài)。
(3)數(shù)據(jù)庫(kù) 指持久化存儲(chǔ)數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行檢索、管理的工具。
(4)賬本 賬本是一種特殊的數(shù)據(jù)存儲(chǔ)方式,他不允許修改歷史數(shù)據(jù),要對(duì)歷史數(shù)據(jù)進(jìn)行修改或更新只能通過(guò)增加記錄的形式繼續(xù)進(jìn)行存儲(chǔ),沒(méi)有任何修改歷史數(shù)據(jù)的可能。
(5)智能合約 區(qū)塊鏈上執(zhí)行的自動(dòng)化腳本,用來(lái)在區(qū)塊鏈上存儲(chǔ)、調(diào)取信息,或者在達(dá)到某些條件時(shí)自動(dòng)觸發(fā)某些行為,可以看作取代人工的自動(dòng)執(zhí)行的合約。
定義4智能合約SC(pi,sj)。 服務(wù)提供商掛售服務(wù)時(shí)提供的智能合約,其中:pi為該服務(wù)市場(chǎng)中的服務(wù)商i,sj為該合約對(duì)應(yīng)的服務(wù),j為服務(wù)編號(hào),用來(lái)區(qū)別不同服務(wù)。
這些特征都是由區(qū)塊鏈的存儲(chǔ)方式、運(yùn)行方式、加密技術(shù)等技術(shù)特性決定的,因此簡(jiǎn)單來(lái)講,區(qū)塊鏈就是一個(gè)去中心化分布式的不可篡改數(shù)據(jù)庫(kù)。利用這些技術(shù)特點(diǎn),區(qū)塊鏈可以使QoS評(píng)定和業(yè)務(wù)流程中服務(wù)的選擇變得更加具有可伸縮性、穩(wěn)定性和高可用性。不存在單點(diǎn)故障的問(wèn)題,也具有較高的可信任性、透明性和公正性。具體來(lái)講,為克服前文提出的障礙,區(qū)塊鏈技術(shù)做出了以下貢獻(xiàn):
(1)在不涉及任何中介或第三方機(jī)構(gòu)的情況下建立未知服務(wù)之間的可信關(guān)系:規(guī)避了DoS(拒絕服務(wù)攻擊)、第三方作假欺詐,或單點(diǎn)故障等第三方問(wèn)題。
(2)在諸多方面降低了流程成本:如一些傳統(tǒng)人工操作成本,第三方機(jī)構(gòu)的中介成本,省去基于QoS屬性的數(shù)字證書(shū)評(píng)定成本,而且為整個(gè)系統(tǒng)層面提供了更高的安全性等級(jí)。
(3)通過(guò)智能合約實(shí)現(xiàn)結(jié)合用戶(hù)反饋?zhàn)詣?dòng)實(shí)時(shí)更新的客觀QoS值認(rèn)證,以及自動(dòng)化執(zhí)行滿(mǎn)足企業(yè)需求的服務(wù)選擇和組合的任務(wù),從而提升整體流程的效率。
(4)數(shù)據(jù)歷史不可篡改。記錄在區(qū)塊鏈上的用戶(hù)評(píng)價(jià)反饋和商家提供的QoS值無(wú)法被修改,可作為有效的防詐騙依據(jù)。
如本文2.2節(jié)所述,在區(qū)塊鏈及相關(guān)技術(shù)走進(jìn)人們視野之前,已有許多學(xué)者對(duì)當(dāng)前網(wǎng)絡(luò)環(huán)境下QoS的綜合評(píng)定方法進(jìn)行了研究,如前文提到針對(duì)服務(wù)提供商和服務(wù)請(qǐng)求者兩方參與者進(jìn)行研究的,考慮第三方評(píng)價(jià)機(jī)構(gòu)參與進(jìn)行三方加權(quán)的研究,基于歷史數(shù)據(jù)統(tǒng)計(jì)對(duì)當(dāng)前QoS數(shù)據(jù)進(jìn)行修正的方法,對(duì)人為主觀評(píng)分?jǐn)?shù)據(jù)進(jìn)行模糊化處理或采用各種啟發(fā)式算法進(jìn)行動(dòng)態(tài)評(píng)估的方法,以及考慮用戶(hù)偏好服務(wù)或偏好QoS屬性來(lái)對(duì)服務(wù)QoS進(jìn)行評(píng)估的方法等。
但上述文獻(xiàn)主要存在的問(wèn)題是,部分文獻(xiàn)根據(jù)服務(wù)提供商給出的QoS或用戶(hù)反饋的QoS進(jìn)行簡(jiǎn)單加權(quán),權(quán)重大小沒(méi)有細(xì)分,其他有的雖然對(duì)加權(quán)方法進(jìn)行了細(xì)化研究,或考慮了主觀和客觀因素綜合評(píng)分,采用了一些修正的反饋機(jī)制,但都未考慮根源問(wèn)題,即服務(wù)提供商、用戶(hù)反饋或第三方提供QoS值的可靠性,對(duì)于惡意評(píng)價(jià)和作弊評(píng)價(jià)不誠(chéng)實(shí)樣本的考慮不夠完善。
于是在此基礎(chǔ)上,前文提出的基于區(qū)塊鏈的QoS評(píng)價(jià)與服務(wù)選擇流程模型首先在一定程度上解決了當(dāng)前環(huán)境下歷史數(shù)據(jù)、用戶(hù)反饋評(píng)價(jià)可篡改、易篡改,無(wú)法作為有效法律依據(jù),QoS值不可信以及第三方風(fēng)險(xiǎn)等問(wèn)題?,F(xiàn)階段對(duì)于在區(qū)塊鏈上進(jìn)行QoS綜合評(píng)估的研究相對(duì)較少,VIRIYASITAVAT[4]提出使用在區(qū)塊鏈上安全存儲(chǔ)的用戶(hù)反饋值的平均來(lái)確定客觀QoS參考值,該文重點(diǎn)在于利用區(qū)塊鏈的優(yōu)勢(shì)來(lái)存儲(chǔ)用戶(hù)反饋評(píng)價(jià),主要工作是為在區(qū)塊鏈上存儲(chǔ)用戶(hù)反饋評(píng)價(jià)值以及部署相應(yīng)智能合約框架提供思路。而存儲(chǔ)服務(wù)商提供的QoS以及利用兩者進(jìn)行基于區(qū)塊鏈智能合約QoS評(píng)估的機(jī)制并沒(méi)有涉及。本文對(duì)此進(jìn)行改進(jìn),提出新的流程以及完成的合約代碼和基于區(qū)塊鏈進(jìn)行綜合評(píng)估算法,使用戶(hù)使用時(shí)能獲取更多參考信息。該機(jī)制(后文稱(chēng)Viriyasitavat機(jī)制)主要在以下方面可以改進(jìn):
(1)完全信任用戶(hù)反饋,忽視用戶(hù)惡意評(píng)價(jià),或商家串通用戶(hù)打高分的行為,區(qū)塊鏈?zhǔn)菬o(wú)法規(guī)避源頭作弊的,雖然信息一旦上傳將被永久記錄,區(qū)塊鏈技術(shù)的防篡改性使鏈上數(shù)據(jù)可作為有效依據(jù)為偵測(cè)和懲處欺詐節(jié)點(diǎn)提供支持,一定程度上減弱節(jié)點(diǎn)參與方的欺詐行為,可作為有效的反欺詐工具,但這也只是后續(xù)懲處手段的基礎(chǔ),應(yīng)盡可能降低源頭作弊出現(xiàn)的概率。
(2)單純考慮用戶(hù)反饋一個(gè)維度的數(shù)據(jù),不能很好地反映真實(shí)QoS的數(shù)據(jù)特征,商家完全沒(méi)有話(huà)語(yǔ)權(quán),在很大程度上造成數(shù)據(jù)特征損失。
因此,仍需考慮進(jìn)一步優(yōu)化區(qū)塊鏈上QoS綜合評(píng)估的機(jī)制來(lái)最大可能地限制參與方源頭作弊的可能性。基于以上思考,本文提出了高斯混合模型估參拆分與復(fù)雜動(dòng)態(tài)賦權(quán)結(jié)合的QoS綜合評(píng)估算法(第4章詳細(xì)介紹),并給出一定的基于區(qū)塊鏈智能合約的實(shí)現(xiàn)思路。
如圖2所示為本文提出的一個(gè)基于區(qū)塊鏈的服務(wù)選擇與評(píng)價(jià)的框架,包括服務(wù)QoS:Q=q(q1…qn)及反饋評(píng)價(jià)Feedback:F=f(f1…n)進(jìn)行存儲(chǔ)、管理和使用兩者進(jìn)行綜合評(píng)估的智能合約流程模型,框架具體描述如下:
(1)首先由服務(wù)提供商p1編寫(xiě)發(fā)布與服務(wù)相應(yīng)的智能合約SC(p1,s1)。
(2)服務(wù)提供商通過(guò)合約寫(xiě)入服務(wù)的QoS屬性QS1,寫(xiě)入屬性的功能限制可使用者地址僅為服務(wù)提供商。
(3)服務(wù)信息同智能合約一起上傳到同類(lèi)服務(wù)池區(qū)塊鏈中。
(4)當(dāng)服務(wù)消費(fèi)者根據(jù)需求選擇該服務(wù)后,服務(wù)消費(fèi)者C(1,s1)聯(lián)系服務(wù)提供商達(dá)成服務(wù)購(gòu)買(mǎi)意向。
(5)完成服務(wù)購(gòu)買(mǎi)后(購(gòu)買(mǎi)流程也可基于區(qū)塊鏈智能合約實(shí)現(xiàn)自動(dòng)支付,邏輯是:當(dāng)確認(rèn)選擇該服務(wù)后,錢(qián)款由服務(wù)消費(fèi)者的錢(qián)包地址轉(zhuǎn)入服務(wù)提供商錢(qián)包地址),服務(wù)提供商提供服務(wù),并發(fā)送包含寫(xiě)入過(guò)信息合約SC(p1,s1)的地址。
(6)用戶(hù)使用服務(wù)。
(7)用戶(hù)調(diào)用合約。
(8)當(dāng)用戶(hù)使用服務(wù)之后,通過(guò)合約地址調(diào)用合約對(duì)相應(yīng)的服務(wù)QoS屬性值進(jìn)行用戶(hù)評(píng)價(jià)反饋,評(píng)價(jià)反饋功能限制可使用者地址為服務(wù)提供商以外的其他地址。
(9)完成評(píng)價(jià)反饋FSIC1后,自動(dòng)執(zhí)行算法結(jié)合歷史上存儲(chǔ)過(guò)的:反饋值FSIC(1….k)、服務(wù)提供商提供QoS值QS1(1…n)得出 QoS綜合評(píng)估值,并將以上提到的值存入?yún)^(qū)塊鏈賬本中。這樣做的目的是防止服務(wù)提供商欺詐,用戶(hù)惡意評(píng)價(jià),以及取代第三方機(jī)構(gòu)。后文會(huì)具體講解該模型為何能夠規(guī)避欺詐、惡意評(píng)價(jià)等風(fēng)險(xiǎn)。
本文的最終目的是設(shè)計(jì)一個(gè)算法機(jī)制,降低上傳存儲(chǔ)到區(qū)塊鏈的用戶(hù)反饋和商家提供的QoS屬性數(shù)據(jù)源頭說(shuō)謊的可能性,同時(shí)綜合給出一組對(duì)未來(lái)服務(wù)購(gòu)買(mǎi)者有決策幫助的客觀綜合分值。這里一階段算法-高斯混合模型估參拆分和二階段算法-復(fù)雜動(dòng)態(tài)賦權(quán)結(jié)合是相輔相成的。在本文實(shí)驗(yàn)中選用期望最大化算法(Expectation-Maximization algorithm,EM)做高斯混合模型估參拆分,主成分分析法(Principal Component Analysis,PCA)算法做復(fù)雜動(dòng)態(tài)賦權(quán)。當(dāng)無(wú)效評(píng)論點(diǎn)少的情況下EM算法會(huì)將該維度下這些評(píng)分異常的分值簇下的無(wú)效評(píng)論樣本組刪除,余下通過(guò)PCA算法分?jǐn)?shù)綜合保證數(shù)據(jù)特征完整性,此情況下主要是EM算法起作用。但當(dāng)q′j(1…k)和f′j(1…k)中某一維度無(wú)效評(píng)論樣本點(diǎn)超過(guò)50%的時(shí)候,EM算法就會(huì)將此維度正常分值簇下的正常樣本組剔除,此維度剩下占比很高的高分作弊點(diǎn)或低分惡意評(píng)價(jià)點(diǎn),此時(shí)PCA就會(huì)起主要作用,因?yàn)榇藭r(shí)另一個(gè)維度方差較大,PCA就會(huì)把另一維度作為主成分,而綜合結(jié)果分值仍會(huì)保持在正常區(qū)間。所以想要大幅提升分值或者大幅拉低分值只能兩維度同時(shí)作弊才能達(dá)成。本文中提到的高斯模型估參拆分和復(fù)雜動(dòng)態(tài)賦權(quán)中的核心算法都是可以根據(jù)目的和需求替換的,如梯度下降法、Gibbs采樣法、TSNE算法等。本章以第5章實(shí)驗(yàn)中使用服務(wù)S2,latency屬性的一組數(shù)據(jù)為例輔助解釋算法流程。
步驟1評(píng)價(jià)數(shù)據(jù)預(yù)處理。
因?yàn)镼oS屬性集合中不同屬性QoS的評(píng)價(jià)指標(biāo)不盡相同,所以要對(duì)FSC和QS中包含的的兩組QoS數(shù)據(jù)針對(duì)其屬性進(jìn)行評(píng)價(jià)數(shù)據(jù)預(yù)處理,本文數(shù)據(jù)預(yù)處理采用最小-最大規(guī)格化方法。FSC和QS通過(guò)歸一化處理后記做F′SC=f′(f′1…f′n)和Q′S=q′(q′1…q′n),如表1所示為服務(wù)S2,latency屬性(以下寫(xiě)作lty)歸一化處理后F′SC和Q′S的數(shù)據(jù)概覽。其中服務(wù)服務(wù)S2,latency屬性在服務(wù)池屬性中歸一化后正常分布區(qū)間在0.5~0.7,用戶(hù)評(píng)價(jià)F′SC有40%的樣本是異常評(píng)價(jià)樣本,即分布不在0.5~0.7內(nèi),以作弊評(píng)價(jià)數(shù)量居多(0.9分以上過(guò)高分評(píng)價(jià)),惡意評(píng)價(jià)較少(0.2分以下,過(guò)低評(píng)價(jià))。這里假定商家完全畏懼失信懲罰,因此提供Q′S,全樣本均為有效樣本(商家虛假評(píng)分情況會(huì)在實(shí)驗(yàn)中討論)。
步驟2對(duì)輸入樣本組F′SC和Q′S中的QoS屬性進(jìn)行高斯混合模型參數(shù)估計(jì)與拆分。
通過(guò)分析探索性數(shù)據(jù),對(duì)于服務(wù)si的n條歷史商家掛售時(shí)提供的Q′Si(1…n)及其對(duì)應(yīng)n個(gè)用戶(hù)評(píng)價(jià)反饋F′sic(1…n)集合中某一QoS屬性j的q′j(1…n)和f′j(1…n)分值可看做兩組高斯混合模型,一般可能會(huì)存在說(shuō)謊作弊打分過(guò)高的分值分布、正常范圍內(nèi)的分值分布、惡意評(píng)價(jià)打分過(guò)低的分值分布,故可能會(huì)出現(xiàn)偏離的2~3個(gè)混合正太分布簇。如圖3所示為數(shù)據(jù)預(yù)處理后樣例數(shù)據(jù)例1中用戶(hù)評(píng)價(jià)F′SC的分布。
將上文提到的q′j(1…n)和對(duì)應(yīng)的f′j(1…n)看作觀測(cè)數(shù)據(jù)y1y2…yn和y′1y′2…y′n進(jìn)行高斯混合模型估參并進(jìn)行拆分。
一階段算法-高斯混合模型估參拆分步驟為:
(1)輸入觀測(cè)數(shù)據(jù)y1y2……yn(y′1y′2……y′n)高斯混合模型。
(2)運(yùn)用算法對(duì)當(dāng)前高斯模型進(jìn)行參數(shù)估計(jì),包括模型中每個(gè)分布簇的分布均值、混合成分的混合概率。
(3)根據(jù)每個(gè)觀測(cè)值yi屬于各個(gè)混合類(lèi)別的后驗(yàn)概率,劃分觀測(cè)值所屬類(lèi)別。
(4)剔除異常樣本?;旌细怕什怀^(guò)50%的混合類(lèi)別看作異常類(lèi)別分布簇,刪除該簇下的觀測(cè)值yi及其對(duì)應(yīng)的y′i。
(5)輸出處理后呈近似正態(tài)分布的新觀測(cè)數(shù)據(jù)模型:q′j(1…k)和f′j(1…k)。
本文采用EM算法來(lái)求解高斯混合型,EM算法處理表1中的混合模型,得到輸出參數(shù),其中mu為分布均值mu1=0.598,mu2=0.944,mu3=0.105的3個(gè)高斯分布,混合概率為prob1=0.596,prob2=0.303,prob3=0.101,處理結(jié)果符合輸入數(shù)據(jù)的基本概況,3個(gè)類(lèi)簇中心為0.598,0.944,0.105,對(duì)應(yīng)3種樣本類(lèi)型,正常樣本(0.5~0.7),作弊樣本(>0.9),惡意評(píng)價(jià)樣本(<0.2)?;旌细怕室不痉陷斎霕颖窘M中異常樣本數(shù)量40%。將混合概率不超過(guò)50%的分布看做異常分值分布簇。
之后計(jì)算每個(gè)觀測(cè)值歸屬于各個(gè)簇的后驗(yàn)概率。根據(jù)每個(gè)觀測(cè)值yi屬于各個(gè)混合成分的后驗(yàn)概率劃分每個(gè)觀測(cè)值所屬類(lèi)別,當(dāng)某一觀測(cè)值的q′ji(f′ji)與其對(duì)應(yīng)同組的f′ji(q′ji)中有一個(gè)屬于異常類(lèi)別,則將該組全部視為無(wú)效評(píng)價(jià),并刪除組的q′ji和f′ji。例如對(duì)于用戶(hù)評(píng)價(jià)數(shù)據(jù)F′SC的樣本f′lty(2)=0.1,經(jīng)過(guò)計(jì)算后得到劃分類(lèi)別為3,f′lty(3)=0.92劃分為類(lèi)別2,f′lty(98)=0.91劃分類(lèi)別為2,f′lty(100)=0.91劃分類(lèi)別為2,后4個(gè)樣本被劃分到異常類(lèi),則刪除f′lty(2),f′lty(3),f′lty(98),f′lty(100)和q′lty(2),q′lty(3),q′lty(98),q′lty(100)。表1標(biāo)框部分即為刪除部分。
表1 S2服務(wù)latency屬性標(biāo)準(zhǔn)化數(shù)據(jù)表
EM算法處理后得到具有相同數(shù)量的q′j(1…k)和f′j(1…k)。
步驟3q′j(1…k)和f′j(1…k)進(jìn)行復(fù)雜動(dòng)態(tài)加權(quán)算法處理。
通過(guò)步驟2處理,得到了剔除疑似異常評(píng)分后的服務(wù)商提供q′j(1…k)和用戶(hù)反饋f′j(1…k),但區(qū)塊鏈?zhǔn)菬o(wú)法避免源頭作弊的,如果忽視后續(xù)懲罰手段的影響,用戶(hù)在上步操作中某一個(gè)維度的數(shù)據(jù)存在大量異常作弊評(píng)分,則其中的正常評(píng)分就會(huì)被剔除,為盡可能避免這種情況帶來(lái)的影響,并為了給用戶(hù)以最少的數(shù)據(jù)量概括該服務(wù)的屬性特征,本文提出復(fù)雜動(dòng)態(tài)加權(quán)算法(算法2)來(lái)對(duì)算法1處理過(guò)后的兩維度數(shù)據(jù)進(jìn)行動(dòng)態(tài)加權(quán)降維,最后得到一組綜合評(píng)分?jǐn)?shù)據(jù),該組數(shù)據(jù)要極大程度地保證原有數(shù)據(jù)的數(shù)據(jù)特征。這里必須選用動(dòng)態(tài)加權(quán)的方法來(lái)確定兩個(gè)維度數(shù)據(jù)的權(quán)重和降維,因?yàn)槿绻L(zhǎng)期通過(guò)固定權(quán)重比來(lái)計(jì)算多個(gè)數(shù)據(jù)源的綜合分值,服務(wù)提供商為提高自身服務(wù)的評(píng)估數(shù)值,只用著力在一個(gè)維度上對(duì)數(shù)據(jù)進(jìn)行作弊就可以達(dá)到提升評(píng)估數(shù)值的效果,例如若用戶(hù)反饋f′j(1…k)的權(quán)重比較高,則商家會(huì)串通客戶(hù)故意提高評(píng)價(jià)值,若商家提供數(shù)值q′j(1…k)的權(quán)重較高,則商家會(huì)冒險(xiǎn)進(jìn)行說(shuō)謊上傳虛假值的行為來(lái)提高評(píng)價(jià)值,從而影響客戶(hù)反饋的真實(shí)性,降低該QoS屬性分值的準(zhǔn)確性。但當(dāng)權(quán)重為未知狀態(tài)時(shí),商家為獲取高數(shù)值只能保證兩個(gè)數(shù)據(jù)維度都作弊,這樣做的風(fēng)險(xiǎn)成本也會(huì)最大化,從而限制了商家作弊的可能。
二階段算法-復(fù)雜動(dòng)態(tài)加權(quán)算法步驟為:
(1)輸入算法1輸出的q′j(1…k)和f′j(1…k)。
(2)對(duì)q′j(1…k)和f′j(1…k)動(dòng)態(tài)加權(quán)或保證最大數(shù)據(jù)特征的降維方法處理。
(3)輸出步驟(2)得到的關(guān)于服務(wù)si第j個(gè)QoS屬性的一組評(píng)估值,如本文使用PCA主成分分析法進(jìn)行處理輸出pcaj(1…k)。
本文采用PCA算法來(lái)進(jìn)行復(fù)雜動(dòng)態(tài)加權(quán)算法處理,如PCA算法處理步驟2的結(jié)果數(shù)據(jù)模型,得到表2的輸出結(jié)果。
表2 PCA算法結(jié)果表
本文采用仿真環(huán)境模擬驗(yàn)證模型的有效性,數(shù)據(jù)來(lái)源模擬數(shù)據(jù)和一部分WS-DREAM站點(diǎn)( http: / /www.wsdream.net) 提供的數(shù)據(jù)集,實(shí)驗(yàn)選擇搜索服務(wù)中S1S2S3S4四個(gè)自服務(wù)的延遲(latency)屬性作為實(shí)驗(yàn)對(duì)象,通過(guò)最大最小值規(guī)格化后,假定S1~S4四個(gè)服務(wù)延遲(latency)歸一化后的標(biāo)準(zhǔn)QoS值域?yàn)镾1:0.7~0.9,S2:0.5~0.7,S3:0.3~0.5,S4:0.1~0.3,試驗(yàn)數(shù)據(jù)包含作弊評(píng)價(jià)或惡意評(píng)價(jià)的比例稱(chēng)為無(wú)效評(píng)價(jià)率。為契合實(shí)際場(chǎng)景,無(wú)效評(píng)價(jià)主要包括過(guò)高打分(作弊評(píng)價(jià))、過(guò)低打分(惡意評(píng)價(jià))和一部分臨近正常值域區(qū)間但不在其中的分值評(píng)價(jià)(正常場(chǎng)景下,這一部分評(píng)價(jià)應(yīng)該看作正常評(píng)價(jià),但實(shí)驗(yàn)為了驗(yàn)證機(jī)制效果,故嚴(yán)格限制正常評(píng)價(jià)分值區(qū)間)。
實(shí)驗(yàn)1本節(jié)實(shí)驗(yàn)先對(duì)不同無(wú)效評(píng)價(jià)率下4個(gè)服務(wù)的用戶(hù)評(píng)價(jià)和商家提供QoS通過(guò)本文提出的EMPCA算法機(jī)制進(jìn)行處理,之后對(duì)得到的綜合評(píng)價(jià)值pcalatency(1…k)的無(wú)效評(píng)價(jià)率進(jìn)行對(duì)比。每次實(shí)驗(yàn)分為4組,將歸一化處理后服務(wù)si延遲屬性的100條q′latency(1…100)和其100條對(duì)應(yīng)的f′latency(1…100)看做一組實(shí)驗(yàn)數(shù)據(jù),q′latency(i)和其對(duì)應(yīng)的f′latency(i)看作一個(gè)輸入樣本組。實(shí)驗(yàn)數(shù)據(jù)輸入EM/PCA算法機(jī)制模型中,輸出一組pcalatency(1…k)綜合評(píng)價(jià)值數(shù)據(jù),其中每一個(gè)pcalatency(i)作為一個(gè)輸出樣本點(diǎn)。輸入樣本中有一定比例的樣本包含無(wú)效評(píng)價(jià),即該樣本組為無(wú)效評(píng)價(jià)樣本組。通過(guò)實(shí)驗(yàn)觀測(cè)輸出樣本點(diǎn)中無(wú)效評(píng)價(jià)率(不在正常值域分布的樣本點(diǎn)占比)相比輸入樣本組的無(wú)效評(píng)價(jià)率有何改變來(lái)驗(yàn)證算法有效性。
圖4是當(dāng)輸入樣本組q′latency(1…100)和f′latency(1…100)中的無(wú)效評(píng)價(jià)率達(dá)到40%的情況下,4個(gè)服務(wù)S1S2S3S4的輸出樣本點(diǎn)的分布圖,輸出的無(wú)效評(píng)價(jià)樣本點(diǎn)個(gè)數(shù)分別為S1:3個(gè),S2:2個(gè),S3:3個(gè),S4:2個(gè),無(wú)效評(píng)價(jià)率均在5%以下。
圖5是極端情況輸入樣本組q′latency(1…100)和f′latency(1…100)中之一的無(wú)效評(píng)價(jià)率高達(dá)60%的情況下(現(xiàn)實(shí)場(chǎng)景中不太可能出現(xiàn)一半以上評(píng)價(jià)都是惡意評(píng)價(jià)或者高分作弊評(píng)價(jià)的情況),當(dāng)輸入樣本組中某一維度無(wú)效評(píng)價(jià)率超過(guò)50%時(shí),機(jī)制仍然有效,此時(shí)PCA算法起到主要作用。4個(gè)服務(wù)S1S2S3S4的輸出樣本點(diǎn)的分布圖,輸出的無(wú)效評(píng)價(jià)樣本點(diǎn)個(gè)數(shù)分別為S1:1個(gè),S2:2個(gè),S3:0個(gè),S4:2個(gè),無(wú)效評(píng)價(jià)率均在5%以下。
圖6為測(cè)試機(jī)制極限,當(dāng)輸入樣本組q′latency(1…100)和f′latency(1…100)無(wú)效評(píng)價(jià)率都超過(guò)50%時(shí),機(jī)制崩潰。圖6所示為當(dāng)輸入樣本組的兩維度無(wú)效評(píng)價(jià)率均為60%時(shí),4個(gè)服務(wù)S1S2S3S4的輸出樣本點(diǎn)的分布圖,輸出的無(wú)效評(píng)價(jià)樣本點(diǎn)個(gè)數(shù)分別為S1:63個(gè),S2:61個(gè),S3:61個(gè),S4:61個(gè),無(wú)效評(píng)價(jià)率均在60%以上,機(jī)制失效。但這種情況在現(xiàn)實(shí)生活中一般不會(huì)出現(xiàn),想要達(dá)到這種效果,商家必須提供半數(shù)以上的虛假Q(mào)oS值,同時(shí)還要買(mǎi)通半數(shù)以上的客戶(hù)給服務(wù)打出高評(píng)價(jià)反饋。
實(shí)驗(yàn)2本實(shí)驗(yàn)主要延續(xù)實(shí)驗(yàn)1的結(jié)果,對(duì)實(shí)驗(yàn)1進(jìn)行100次重復(fù)實(shí)驗(yàn),觀測(cè)其結(jié)果,進(jìn)而驗(yàn)證算法的穩(wěn)定性。
圖7為輸出結(jié)果波動(dòng)情況圖,結(jié)果顯示在輸入樣本組q′latency(1…100)和f′latency(1…100)的無(wú)效評(píng)價(jià)率40%的情況下,重復(fù)100次實(shí)驗(yàn),S1S2S3S4四個(gè)服務(wù)的輸出樣本無(wú)效評(píng)價(jià)率均遠(yuǎn)低于40%且波動(dòng)較小,均基本在15%以下。
實(shí)驗(yàn)3本實(shí)驗(yàn)對(duì)比4個(gè)服務(wù)S1S2S3S4使用本文機(jī)制(新機(jī)制)、Viriyasitavat的機(jī)制(舊機(jī)制)兩種機(jī)制在一定條件下最終輸出結(jié)果的有效性,每次輸入100個(gè)輸入樣本組q′latency(1…100)和f′latency(1…100),輸出一個(gè)客觀評(píng)估值Qs″=m(latency),進(jìn)行100次重復(fù)實(shí)驗(yàn),觀測(cè)本文機(jī)制(新機(jī)制)與Viriyasitavat的機(jī)制(舊機(jī)制)下輸出的客觀評(píng)估值Q″si波動(dòng)情況,及輸入樣本組在不同無(wú)效評(píng)價(jià)率下,得到的客觀評(píng)估值Q″si在該服務(wù)的標(biāo)準(zhǔn)QoS值域內(nèi)外的分布情況,從而觀測(cè)新機(jī)制的穩(wěn)定性。
圖8是S1S2S3S44個(gè)服務(wù)當(dāng)他們的輸入樣本組q′latency(1…100)和f′latency(1…100)無(wú)效評(píng)價(jià)率40%(故意高分的作弊評(píng)價(jià)居多,惡意低分評(píng)價(jià)占比少)時(shí)重復(fù)實(shí)驗(yàn)100次的結(jié)果。其中實(shí)驗(yàn)結(jié)果反饋,Viriyasitavat的機(jī)制(舊機(jī)制)產(chǎn)生的客觀評(píng)估值明顯受到無(wú)效評(píng)價(jià)的影響嚴(yán)重,整體偏高甚至超出正常值域范圍,而新機(jī)制下產(chǎn)生的結(jié)果都在正常值域范圍內(nèi),收斂度更強(qiáng),結(jié)果更加精準(zhǔn),相較于舊機(jī)制,本文機(jī)制(新機(jī)制)受到作弊評(píng)價(jià)打分,惡意評(píng)價(jià)打分的影響效果更低。
圖9是服務(wù)S2當(dāng)輸入樣本組客戶(hù)反饋f′latency(1…100)高分作弊評(píng)價(jià)的無(wú)效評(píng)價(jià)率65%時(shí)(故意高分的作弊評(píng)價(jià)居多,惡意低分評(píng)價(jià)占比少),重復(fù)100次實(shí)驗(yàn)的結(jié)果,經(jīng)過(guò)多次實(shí)驗(yàn)驗(yàn)證,當(dāng)輸入樣本組一個(gè)維度無(wú)效評(píng)價(jià)率超過(guò)50%時(shí),新機(jī)制中的EM算法將該維度中占比較少的正常評(píng)價(jià)視作異常值剔除,而后PCA算法起到主要作用。新機(jī)制的實(shí)驗(yàn)結(jié)果顯示,這種情況下客觀評(píng)估值仍能保持基本分布在正常值域區(qū)間內(nèi),而舊機(jī)制無(wú)法抵御無(wú)效評(píng)價(jià)過(guò)多的影響。
隨著區(qū)塊鏈及相關(guān)技術(shù)逐漸走進(jìn)人們視野,BPM系統(tǒng)對(duì)動(dòng)態(tài)組織間透明、自動(dòng)化的互操作性需求也進(jìn)一步得到滿(mǎn)足,如本文提出,可靠迅速地服務(wù)選擇與組合,公正合理的QoS客觀評(píng)估都是BPM系統(tǒng)服務(wù)選擇組合領(lǐng)域急需解決的問(wèn)題,而愈加完善的區(qū)塊鏈技術(shù)正是解決這些問(wèn)題的關(guān)鍵突破口之一,是值得深入研究的方法之一。本文結(jié)合服務(wù)選擇與組合的流程特點(diǎn)與區(qū)塊鏈的技術(shù)特性,提出了一個(gè)可供參考和優(yōu)化的基于區(qū)塊鏈的服務(wù)選擇流程框架,并提出了基于區(qū)塊鏈智能合約管理用戶(hù)反饋與商家掛出QoS數(shù)據(jù)的可行方法,并進(jìn)一步提出了基于EM算法與PCA主成分分析法在區(qū)塊鏈上進(jìn)行客觀QoS綜合評(píng)估的新算法機(jī)制。最后通過(guò)實(shí)驗(yàn)驗(yàn)證了方法的有效性,為今后在該領(lǐng)域的研究提供了更可靠的基礎(chǔ)和有力的鋪墊。未來(lái)將沿著本文思路對(duì)區(qū)塊鏈結(jié)合QoS評(píng)估、存儲(chǔ),服務(wù)選擇與使用反饋等方面流程進(jìn)行進(jìn)一步探索與優(yōu)化,并對(duì)本文提出的高斯混合模型估參拆分+復(fù)雜動(dòng)態(tài)賦權(quán)的QoS綜合評(píng)估算法進(jìn)行進(jìn)一步改進(jìn)和優(yōu)化,探尋更優(yōu)的解決方案。