牟星宇,廖祎瑋,趙國生,王 健
1(哈爾濱師范大學(xué) 計算機科學(xué)與信息工程學(xué)院,哈爾濱150025)2(哈爾濱理工大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,哈爾濱 150080)
群智感知是通過用戶的參與來收集大量數(shù)據(jù)的一種機制,是物聯(lián)網(wǎng)與眾包思想的結(jié)合.隨著智能手機,可穿戴移動設(shè)備等移動智能感知計算設(shè)備的發(fā)展普及,傳統(tǒng)的數(shù)據(jù)收集方式已經(jīng)完全不能滿足目前互聯(lián)網(wǎng)應(yīng)用對數(shù)據(jù)的實時性要求,并且它本身就存在著成本太高、部署困難等問題,群智感知的技術(shù)應(yīng)運而生.
群智感知需要大量智能移動設(shè)備和用戶的參與,即基本單元的感知節(jié)點通過人與智能終端混合的形式存在[1]用戶需要投入時間精力和承擔(dān)設(shè)備損耗等資源,這影響了用戶參與感知任務(wù)的積極性也降低了用戶提供高質(zhì)量感知數(shù)據(jù)的積極性.因此需要用戶激勵機制來激勵用戶積極的參加并上傳高質(zhì)量數(shù)據(jù).
群智感知激勵機制的研究成為群智感知網(wǎng)絡(luò)的熱點研究方向,獲得了較多的研究成果.劉媛妮等[2],提出了以任務(wù)為中心的逆向競拍激勵機制,針對最大化用戶轉(zhuǎn)換率為目標(biāo),用戶執(zhí)行任務(wù)時可轉(zhuǎn)售任務(wù)給新用戶,從而最大化用戶效用.童海等[3],提出了匿名競拍的雙向拍賣激勵機制,通過采樣進行用戶篩選,然后預(yù)估用戶報酬,這樣既最大化了用戶效用又保證了交易的公平性.傳統(tǒng)的激勵機制從降低成本出發(fā),忽視了數(shù)據(jù)質(zhì)量問題的影響,用戶上傳感知數(shù)據(jù)質(zhì)量越高其投入的成本越高,理應(yīng)給與其更多的報酬.
針對數(shù)據(jù)質(zhì)量及其成本問題,Reddy等[4]指出基于報酬支付的激勵形式,提出了使用微支付方式的激勵模型,定義了一套指標(biāo)用于評估激勵措施的有效性,得出基于報酬支付的激勵形式效果更好.南文倩等人[5]通過對任務(wù)代價和用戶能力的分析,結(jié)合系統(tǒng)、感知任務(wù)和用戶之間的交互來激勵用戶上傳高質(zhì)量感知任務(wù).Jaimes等[6]設(shè)計了基于多輪逆向競拍的激勵機制,鼓勵用戶參與需要連續(xù)和定期抽樣的感知計劃.該機制在選擇用戶時不僅考慮了用戶的競價也考慮了用戶的地點,實驗結(jié)果表明,該機制在實現(xiàn)最優(yōu)預(yù)算利用率的同時確保感知區(qū)域被覆蓋并保證每一輪競拍有足夠的用戶.Luo等人[7]提出了最大化收益的拍賣激勵方法,通過感知任務(wù)的特點設(shè)計的刺激貢獻函數(shù),傳統(tǒng)拍賣方法只考慮如何降低成本,忽視了數(shù)據(jù)質(zhì)量問題.該方法為提供高質(zhì)量感知數(shù)據(jù)的用戶給與更多酬金獎勵,實驗表明該方法可以明顯提升用戶收益.Wang等[8]定義了用戶的信譽模型,綜合考慮了用戶和感知平臺兩方面,使用戶的報酬和系統(tǒng)數(shù)據(jù)質(zhì)量都得到了提高.
上述的激勵機制中,都需要可信第3方或半可信第3方參與報酬交付流程.由于用戶必須先對通信實體進行驗證,將感知數(shù)據(jù)傳遞給對方.這個過程中,用戶所提交的感知數(shù)據(jù)很容易被截獲.感知數(shù)據(jù)中可能包含用戶位置和其他敏感信息,面臨引入第3方參與的隱私安全問題.為了保持用戶的積極性和可持續(xù)性,實施隱私保護措施是必須的.
研究人員的研究方向開始轉(zhuǎn)向分布式系統(tǒng).S.Goldwasser等[9]提出了零知識證明(zero-knowledge proof),屬于分布式證明系統(tǒng),廣泛應(yīng)用于區(qū)塊鏈技術(shù).是一種不透露自己的任何信息,卻能證明自己擁有某個屬性的方法.借助這一理論,Zk-snarks技術(shù)[10]允許將任何復(fù)雜的驗證問題轉(zhuǎn)化為一個多項式驗證問題,再利用橢圓曲線上的指數(shù)知識困難假設(shè)[11]和同態(tài)隱藏手段,以及Fait-Shamir轉(zhuǎn)換技術(shù),獲得最終形式的一種簡潔且非交互式的零知識證明.Lu等[12]依據(jù)這一理論設(shè)計了一種匿名機制,防止惡意用戶利用匿名機制實現(xiàn)雙花,但該機制未考慮惡意攻擊者上傳病毒后對系統(tǒng)整體造成的損害.此時,Li等[13]利用區(qū)塊鏈的去中心化特性,提高了網(wǎng)絡(luò)安全性.但其并未考慮數(shù)據(jù)加密與區(qū)塊鏈的用戶唯一秘鑰之間存在的的矛盾關(guān)系.
針對上述問題,本文提出基于Tangle網(wǎng)絡(luò)的群智感知激勵方法(Tangle-net Crowd Sensing,TCS),在該方法中,感知平臺發(fā)布感知任務(wù),用戶上傳感知數(shù)據(jù),感知平臺交付報酬等操作都被相應(yīng)記錄,Tangle網(wǎng)絡(luò)不需要第3方介入,有效解決了引入可信第3方面臨的安全問題.在TCS方法中,網(wǎng)絡(luò)能夠保持完全去中心化,不需要礦工傳遞信任,也不需要支付交易手續(xù)費,可以最大程度提高用戶報酬.TCS方法在保證用戶安全隱私的前提下進一步提高了用戶參與的報酬收益,兩者有機結(jié)合,提高用戶參與感知任務(wù)的積極性.本文主要貢獻有2個方面:
1)提出基于Tangle網(wǎng)絡(luò)的群智感知激勵方法,利用Tangle去中心化網(wǎng)絡(luò)的安全屬性保護用戶隱私安全,通過模擬攻擊驗證系統(tǒng)健壯性.
2)利用Tangle網(wǎng)絡(luò)無需交易摩擦費用的特性,實現(xiàn)最大化用戶參與感知任務(wù)的報酬,提升用戶參與感知任務(wù)的積極性.
群智感知的經(jīng)典結(jié)構(gòu)[14]由數(shù)據(jù)使用者、感知平臺、用戶3部分組成,感知任務(wù)執(zhí)行過程[15]如下:
1)感知平臺發(fā)布感知任務(wù)、激勵獎勵和數(shù)據(jù)要求,對用戶提交的數(shù)據(jù)進行考量評估并根據(jù)貢獻給與報酬.
2)用戶攜帶智能感知移動設(shè)備,用戶在收到任務(wù)后需要預(yù)估感知報酬R和消耗代價C,當(dāng)R>C時用戶執(zhí)行感知任務(wù).
3)感知平臺通過用戶提交的感知數(shù)據(jù)的質(zhì)量和感知代價綜合考量報酬,選定用戶中的1個子集執(zhí)行感知任務(wù).對于子集中的每一個用戶根據(jù)其有效工作量給予一定量的報酬.激勵機制的設(shè)計直接決定著用戶的積極性及感知任務(wù)質(zhì)量[16],是群智感知模型的最重要的研究.
在Tangle中,交易相互關(guān)聯(lián),就像一個大的網(wǎng)絡(luò)糾纏在一起.沒有“塊”的概念.該技術(shù)本身基于有向Acylic圖.有向圖DAG(Directed Acyclic Graph)是由有限數(shù)量的邊和頂點組成.DAG的組成單元是一筆筆的交易,每個單元記錄的是單個用戶的交易,這樣就省去了打包出塊的時間.驗證手段則依賴于后一筆交易對前一筆交易的驗證這種驗證手段,使得DAG可以異步并發(fā)的寫入很多交易,并最終構(gòu)成一種拓?fù)涞臉錉罱Y(jié)構(gòu),能夠極大地提高擴展性.
通過DAG,Tangle網(wǎng)絡(luò)通過平行驗證能實現(xiàn)較高的交易吞吐,無需等待塊開采.交易幾乎會實時進行驗證,一次可以提供更快的交易速度和更多的交易.網(wǎng)絡(luò)中的每個有效節(jié)點都可以有效地對交易進行驗證,無需支付交易費.Tangle網(wǎng)絡(luò)會激勵越來越多的用戶都將發(fā)起交易,促使整個系統(tǒng)變得越來越安全和快速.確認(rèn)時間會縮短,交易也完成的越來越快,更能保證交易結(jié)算的安全性和數(shù)據(jù)完整性.
本文的TCS方法使用Tangle網(wǎng)絡(luò)來保證用戶遵循交易規(guī)則.TCS方法無需礦工驗證交易,通過每個可發(fā)起交易的人負(fù)責(zé)驗證其他交易.所以整個網(wǎng)絡(luò)中沒有礦工,發(fā)出交易的人就無需支付交易的手續(xù)費.用戶收益增加,更能激勵用戶高質(zhì)量的完成感知任務(wù).基于Tangle網(wǎng)絡(luò)的群智感知模型圖見圖1.首先感知平臺上傳感知任務(wù),用戶接收到感知任務(wù),完成后選擇路徑并校驗,將數(shù)據(jù)發(fā)送給相互關(guān)聯(lián)的節(jié)點直至尾部,尾部驗證數(shù)據(jù)質(zhì)量并量化貢獻給出交易報酬同時將報酬發(fā)到感知平臺,感知平臺通過驗證后支付給用戶報酬并直接轉(zhuǎn)入用戶賬戶.
圖1 基于Tangle網(wǎng)絡(luò)的群智感知模型Fig.1 Crowd sensing model based on Tangle network
從感知平臺發(fā)布任務(wù)直到交付給用戶報酬,該過程視為一次交易,在進行一次交易的同時需要將上一筆交易信息發(fā)給尾部節(jié)點,通過尾部節(jié)點進行數(shù)據(jù)對比,間接校驗了舊的交易,保證了感知過程的可靠性,由于不需要可信第3方參與交易,擺脫了中心交易帶來的隱私安全等問題.
本文方法通過3個階段來處理感知任務(wù):
1)發(fā)布任務(wù)階段:感知平臺S發(fā)布N個不同的感知任務(wù),包括任務(wù)名稱、任務(wù)功能、要求等信息,并給定具體的報酬標(biāo)準(zhǔn)、評估標(biāo)準(zhǔn),不同標(biāo)準(zhǔn)等級的數(shù)據(jù)給予不同的報酬R,允許用戶U={u1,u2,…,un}來接收和完成任務(wù).
2)用戶評估任務(wù):用戶收到感知任務(wù)后進行評估任務(wù),根據(jù)用戶ux的感知數(shù)據(jù)dataux判斷用戶ux的工作量Qux.用戶通過對比代價C和報酬R來決策是否參與任務(wù),用戶都是貪婪的,會最大化自身利益,用戶ux所得收益為Earnings(ux)=Rux.
3)參與及上傳數(shù)據(jù)階段:用戶評估感知代價后,決定是否參與任務(wù)以及上傳感知數(shù)據(jù).當(dāng)該任務(wù)符合條件報酬Qux≤Rux時,用戶上傳感知數(shù)據(jù).感知平臺驗證用戶ux的感知數(shù)據(jù)dataux后,再通過工作量Qux判斷用戶ux能否得取相應(yīng)報酬Rux,確認(rèn)后支付相應(yīng)報酬Rux.
用戶上傳感知數(shù)據(jù)后,由感知平臺的尾部節(jié)點(Tip)對數(shù)據(jù)進行驗證評估并作為用戶報酬發(fā)放標(biāo)準(zhǔn),通過劃分不同工作量標(biāo)準(zhǔn)匹配不同酬金來激勵用戶提高數(shù)據(jù)質(zhì)量.文獻[17]采用的EM算法[18]進行迭代計算,但該方法計算過于復(fù)雜,在獲得E步積分顯示比較困難.為解決該問題,本文采用MCEM算法[19]來預(yù)估用戶的工作量,MCEM算法是將EM算法中的E步拆分為E1和E2兩步,并加入Monte Carlo模擬方法來實現(xiàn)E步積分求解,相較于EM算法該方法具有更快的計算速度和收斂特性.
記Ei為第i+1次迭代開始的估計值,隨機的抽取n個隨機數(shù)k1,k2,k3,…,kj,…,kn,則第i+1次迭代的E1步、E2步和M步為:
(1)
(2)
(3)
(4)
設(shè)新發(fā)布的任務(wù)驗證過程中被重復(fù)驗證的用戶記為集合A,概率記為p1,即驗證了集合A又驗證了新用戶的記為p2.這里p1和p2的關(guān)系式如下:
(5)
(6)
所以D(t)微分方程如下:
(7)
(8)
(9)
(10)
報酬交付前需要對節(jié)點進行可信度計算,交易的可信度是確認(rèn)它的tip的數(shù)值.并非所有tip都被認(rèn)為是同等的.本試驗在模擬中增加了可信度.可信度超過51的交易周圍有加粗邊框來加重顯示.
在圖2的Tangle網(wǎng)絡(luò)中,4條tips中的2條確認(rèn)了交易9.如果我們使用統(tǒng)一的隨機tip選擇,它將有一個精確的50的可信度.然而,確認(rèn)它的tips顯然比沒有的tip要更新,這就提高了可信度.本試驗采用協(xié)調(diào)器協(xié)調(diào)機制.每隔兩分鐘,感知平臺創(chuàng)建一筆里程碑交易,所有經(jīng)它確認(rèn)的交易立即被認(rèn)為具有100的可信度.協(xié)調(diào)器在Tangle網(wǎng)絡(luò)中充當(dāng)了一種保護機制,直到完整的Tangle網(wǎng)絡(luò)分布式共識算法開始發(fā)揮作用時,感知平臺將關(guān)閉協(xié)調(diào)器,讓Tangle網(wǎng)絡(luò)完全依靠自身來演化和發(fā)展.這將在迭代階段發(fā)生,當(dāng)網(wǎng)絡(luò)成熟到可以擺脫協(xié)調(diào)員時,網(wǎng)絡(luò)本身也會立即變得更加效率.
圖2 Tangle網(wǎng)絡(luò)交易示例圖Fig.2 Tangle network transaction example diagram
在不破壞任務(wù)數(shù)據(jù)的可用性的前提下保護用戶隱私是亟需解決的問題[20].在TCS方法中,用戶在對數(shù)據(jù)進行簽名時需要匿名[21],且由新加入的用戶來確認(rèn)身份,這在一定程度上保證了用戶的隱私安全.在群智感知激勵框架中,惡意篡改和偽造數(shù)字簽名會對用戶和感知平臺造成損失.在TCS方法中,所有交易都以地址為唯一識別標(biāo)識,具有不可篡改的特性,也進一步的提升了安全性.
TCS方法的結(jié)構(gòu)特性決定了它不存在因第3方發(fā)生的安全問題,具有系統(tǒng)健壯性,每個節(jié)點平等且獨立生存,部分節(jié)點遭受攻擊也不會影響其他節(jié)點和系統(tǒng)的正常運轉(zhuǎn),Tangle網(wǎng)絡(luò)對交易數(shù)據(jù)的驗證特性也有效的避免了用戶可能受到酬金分配不平等問題.
這里通過設(shè)計一個攻擊方案來驗證安全性.
1)攻擊者完成感知平臺的任務(wù)后,在感知平臺認(rèn)為交易已經(jīng)獲得了足夠大的累積權(quán)重之后,攻擊者拿到了報酬;
2)接下來攻擊者發(fā)布帶有攻擊者簽名的一筆雙重支付的報酬支付請求;
3)同時使用攻擊者全部的計算能力來大量的發(fā)出小規(guī)模交易,并且這些交易不去直接或者間接驗證原始的交易,而是去驗證那筆雙重支付的交易;
4)這里假定攻擊者擁有大量的女巫攻擊身份,并且他可以繞開節(jié)點進行驗證;
5)攻擊者期望他的sub-DAG超越主體DAG,從而使得DAG持續(xù)從攻擊者的雙重支付交易進行增長,以便使得之前合法的支付交易被拋棄掉.
上述攻擊方案較為極端,但在數(shù)學(xué)模型的“理想”情況下,這種攻擊總是可以成功的,這里進行計算該攻擊成功的幾率.
(11)
(12)
仿真分析通過采用真實數(shù)據(jù)集的方式對本文TCS方法進行驗證,真實數(shù)據(jù)集選用GeoLife來模擬用戶的行動[22],數(shù)據(jù)集收錄了182名用戶的軌跡數(shù)據(jù).數(shù)據(jù)包含了一系列以時間為序的點,并記錄了用戶的活動軌跡,比如購物、旅游、遠(yuǎn)足等活動.本試驗在Ubuntu系統(tǒng)下通過Python模擬試驗得出仿真結(jié)果,參數(shù)設(shè)置見表1.
表1 仿真參數(shù)設(shè)置Table 1 Simulation parameter setting
為了方便處理將整個過程的開始時間記為00:00:00.仿真任務(wù)信息見表2.
表2 任務(wù)時間設(shè)置Table 2 Simulation task information
要得到更多高質(zhì)量的數(shù)據(jù),首先要保障有足夠的用戶數(shù)據(jù)量[23].所以本文主要針對用戶數(shù)據(jù)量這個方面來進行仿真試驗,來驗證TCS方法在群智感知中對用戶數(shù)據(jù)量的提升起到的積極作用,并且與Luo團隊[7]提出的RSFP方法和南文倩等人[5]提出的CSII方法進行對比試驗.用戶的數(shù)量是感知數(shù)據(jù)“量”的基礎(chǔ),激勵方法的本意也是激勵更多的用戶加入到執(zhí)行任務(wù)的行列,用戶加入感知任務(wù)的積極性也可以通過備選人員的人數(shù)來更直觀的體現(xiàn)出來.
圖3表示了在相同環(huán)境不同感知任務(wù)的情況下,相對于不使用TCS方法,使用TCS方法會增加更多備選人員.證明了通過使用激勵方法TCS可以明顯的提升用戶參與感知任務(wù)的積極性.
圖3 不同激勵環(huán)境下備選人員對比Fig.3 Comparison of candidates
為了更直觀的凸顯該方法優(yōu)點,這里設(shè)用戶能力相同且平均交易摩擦費用為10費用.從第一次交易后每4次進行交易費用的累計.交易費用以及以太坊手續(xù)費參照以太坊2019年7月1日交易費用.這里選取Ethereum和Litecoin兩種電子貨幣作對比,結(jié)果如圖4所示,TCS方法中不需要礦工傳遞信任,無需支付交易手續(xù)費.不難看出TCS方法交易費用遠(yuǎn)低于Ethereum和Litecoin的交易費用.TCS方法的成本優(yōu)勢可見一斑.
圖4 不同交易類型的交易費用對照Fig.4 Comparison of different types of transaction fees
同時用戶收益和任務(wù)候選人數(shù)是影響用戶響應(yīng)感知任務(wù)的重要條件.感知任務(wù)的候選用戶越多,用戶參與感知任務(wù)的機會就越大.由圖5所示,感知任務(wù)用戶增加,候選人數(shù)也隨之明顯增加.證明了候選者數(shù)量會隨著參與感知任務(wù)的用戶數(shù)量的增加而增加.不難看出,TCS方法的候選人數(shù)增加量在參與任務(wù)人數(shù)達(dá)到35后逐漸與CSII和RSFP方法拉開差距,這是由于候選人數(shù)不斷增多,使得整個網(wǎng)絡(luò)面臨的壓力也不斷增加并會增加感知任務(wù)成本.TCS方法在用戶收益方面具有巨大優(yōu)勢,所以會增加用戶參與感知任務(wù)的積極性,更利于感知平臺獲得更多的用戶以及更高質(zhì)量的感知數(shù)據(jù).
圖5 候選者人數(shù)對比Fig.5 Comparison of the number of candidates
TCS方法中,所有上傳感知任務(wù)的用戶都可以根據(jù)對感知數(shù)據(jù)的工作量來獲得相應(yīng)報酬,由于TCS方法采用無礦工參與的分布式記賬管理,不存在交易摩擦費用,可以提高用戶的收益,從而提升用戶加入群智感知任務(wù)的積極性.圖6是用戶執(zhí)行感知任務(wù)的收益情況對比.可看出在TCS方法中用戶收益明顯高于RSFP和CSII兩種激勵方法,這是因為RSFP方法采用報酬支付標(biāo)準(zhǔn)為多人競爭,勝者獨享;在CSII方法中參與感知任務(wù)的用戶都可以獲得報酬獎勵,提升了所有參與任務(wù)的用戶的收益,但會降低個人收益;而在TCS中,參與感知任務(wù)的每個用戶都會根據(jù)感知任務(wù)代價的不同獲得不同報酬,按勞分配.這樣的支付方案能夠提高用戶個人收益,更有利于提高用戶參與感知任務(wù)的積極性.
圖6 用戶收益情況對比Fig.6 User revenue comparison
TCS方法通過可信度來衡量用戶的可靠性,每次用戶完成感知任務(wù)后,感知平臺都會對其進行可信度的衡量,綜合權(quán)重得出用戶的可信度,使得感知網(wǎng)絡(luò)更安全,減少惡意節(jié)點的存在.在TCS方法中,為避免λw>μ的情況發(fā)生,這里認(rèn)為可信度高于51即為可信節(jié)點. 圖7表示試驗隨機選取30名用戶各完成50次任務(wù),用戶參與任務(wù)獲得的可信度.試驗結(jié)果表明有26名用戶的可信度高于51,杜絕了λw>μ的情況發(fā)生,進一步保證了網(wǎng)絡(luò)的安全性.
圖7 用戶可信度Fig.7 User credibility index
TCS方法通過提高用戶收益與保護用戶隱私這兩方面來激勵用戶參與感知任務(wù).圖8是通過隨機選出30名用戶參與50次感知任務(wù)后的任務(wù)完成情況來計算用戶參與度.在這個基礎(chǔ)上,計算平均用戶參與度,與TCS方法做差值,如表3所示,與RSFP方法和CSII方法相比,TCS方法在用戶參與度上分別提升了0.404和0.092.CSII方法在任務(wù)預(yù)算高的前提下,無論參與者是否完成感知任務(wù)都會得到相應(yīng)的任務(wù)補償,而RSFP方法沒有任務(wù)補償.雖然CSII方法和TCS方法都提高了任務(wù)報酬獎勵,但CSII方法是通過信譽度的高低來優(yōu)選參與者,導(dǎo)致參與任務(wù)的要求變高,將未參與感知任務(wù)或參與感知任務(wù)次數(shù)較少的參與者拒之門外.TCS方法通過引入可信度避免了上述情況的發(fā)生,每個用戶都有參與感知任務(wù)的機會,降低了參與感知任務(wù)的門檻,提高了用戶參與感知任務(wù)的積極性.
表3 平均用戶參與度Table 3 Average user engagement
圖8 用戶參與度Fig.8 User engagement index
為了滿足群智感知技術(shù)在發(fā)展中對用戶參與度提升的需求,提出了基于Tangle網(wǎng)絡(luò)的群智感知用戶可信激勵方法.所提方法使感知網(wǎng)絡(luò)完全去中心化,不需要礦工傳遞信任,也不需要支付交易手續(xù)費,降低了任務(wù)成本,同時利用匿名技術(shù)來保護用戶的隱私,提高了用戶參與感知任務(wù)的積極性.所提方法采用模擬攻擊證明了該機制的安全性,然后通過用戶執(zhí)行感知任務(wù)的來驗證該方法的可行性.最后采用仿真分析證明使用所提方法可降低感知任務(wù)成本,讓用戶的參與報酬最大化的同時使用戶參與感知任務(wù)的積極性顯著提高.下一步工作將利用Tangle網(wǎng)絡(luò)的安全優(yōu)勢結(jié)合更高效的任務(wù)分配算法,來應(yīng)對更復(fù)雜的群智感知網(wǎng)絡(luò).