李明磊,章 陽,2,康嘉文,徐敏銳,Dusit Niyato
(1. 武漢理工大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢 430000;2. 南京航空航天大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南京 210016;3. 廣東工業(yè)大學(xué) 自動化學(xué)院,廣東 廣州 510006;4. 新加坡南洋理工大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,新加坡 639798)
隨著無線通信與人工智能技術(shù)的快速發(fā)展,智能互聯(lián)汽車得到迅速推廣與普及。先進(jìn)的車載傳感系統(tǒng)與高級的車載娛樂服務(wù)使智能汽車產(chǎn)生越來越多有價值的數(shù)據(jù)(如交通信息、車載娛樂數(shù)據(jù))。這些數(shù)據(jù)常被收集并共享于其他智能汽車或智能交通設(shè)施,從而構(gòu)建更為先進(jìn)的智能交通系統(tǒng),為智慧城市的建設(shè)打下堅(jiān)實(shí)基礎(chǔ)[1-2]。然而,現(xiàn)有的數(shù)據(jù)共享中心化管理方式容易遭受單點(diǎn)失效、數(shù)據(jù)篡改等安全威脅,系統(tǒng)可靠性難以保障。盡管P2P(Peer-to-Peer)共享網(wǎng)絡(luò)一定程度上克服了單點(diǎn)失效的問題,但由于安全防護(hù)和訪問權(quán)限問題,其在車聯(lián)網(wǎng)場景下并不實(shí)用。
近年來,區(qū)塊鏈技術(shù)因其去中心化、不可篡改、安全可靠等優(yōu)點(diǎn)被廣泛應(yīng)用于構(gòu)建安全可靠的車聯(lián)網(wǎng)數(shù)據(jù)共享系統(tǒng)[3]。文獻(xiàn)[2]提出了基于PoW(Proof of Work)和PoS(Proof of Stake)共識的去中心化可信數(shù)據(jù)管理系統(tǒng),以實(shí)現(xiàn)對車輛數(shù)據(jù)可信度的評估與管理。在文獻(xiàn)[4]中,區(qū)塊鏈技術(shù)被用于解決數(shù)據(jù)交易中缺乏透明性、可追溯性和非授權(quán)數(shù)據(jù)修改等問題,作者設(shè)計了一種基于區(qū)塊鏈的車聯(lián)網(wǎng)數(shù)據(jù)交易通用框架,該框架能實(shí)現(xiàn)車聯(lián)網(wǎng)數(shù)據(jù)安全交易。但上述方法因其共識計算量過大、系統(tǒng)搭建成本過高等問題,并不適用于搭建安全高效的區(qū)塊鏈賦能的車聯(lián)網(wǎng)數(shù)據(jù)共享系統(tǒng)?,F(xiàn)有研究已經(jīng)把高效的DPoS(Delegated Proof of Stake)共識機(jī)制引入到車聯(lián)網(wǎng)中[5-6]。委托權(quán)益證明DPoS共識機(jī)制是PoS共識機(jī)制的一種衍生機(jī)制,其基本思路是先從持有股份的節(jié)點(diǎn)中選出部分代表性節(jié)點(diǎn)作為礦工,再由這些礦工依次充當(dāng)?shù)V工領(lǐng)導(dǎo)者對交易信息進(jìn)行打包,并由礦工領(lǐng)導(dǎo)者與驗(yàn)證者(即剩余的礦工)共同參與區(qū)塊驗(yàn)證,進(jìn)而產(chǎn)生新的區(qū)塊[7]。該機(jī)制不僅能有效解決PoW共識機(jī)制計算資源浪費(fèi)和PoS共識機(jī)制的股份集中化問題,還可以快速地處理交易數(shù)據(jù),并具有較高的系統(tǒng)吞吐量,因此該機(jī)制能很好地匹配車聯(lián)網(wǎng)場景服務(wù)高并發(fā)的需求,具有廣泛的應(yīng)用前景。
然而,傳統(tǒng)的基于DPoS共識算法的區(qū)塊鏈賦能車聯(lián)網(wǎng)系統(tǒng)中區(qū)塊驗(yàn)證者數(shù)量有限(常為21個),容易出現(xiàn)驗(yàn)證者串通合謀、產(chǎn)生錯誤區(qū)塊驗(yàn)證結(jié)果的情況,從而危害區(qū)塊鏈系統(tǒng)的安全性[8]。為了解決驗(yàn)證者串通合謀的威脅,保證區(qū)塊驗(yàn)證的安全性,當(dāng)前礦工領(lǐng)導(dǎo)者產(chǎn)生的區(qū)塊數(shù)據(jù)可由輕節(jié)點(diǎn)充當(dāng)驗(yàn)證者進(jìn)行共同驗(yàn)證和審查[9]。文獻(xiàn)[10]表明智能手機(jī)等邊緣設(shè)備可以充當(dāng)驗(yàn)證者參與區(qū)塊驗(yàn)證。雖然更多的隨機(jī)輕節(jié)點(diǎn)參與區(qū)塊驗(yàn)證能提升區(qū)塊驗(yàn)證的安全性,但因?yàn)閰^(qū)塊驗(yàn)證過程需要消耗算力、帶寬等資源,所以需要設(shè)計有效的激勵機(jī)制鼓勵輕節(jié)點(diǎn)參與到區(qū)塊鏈賦能車聯(lián)網(wǎng)的區(qū)塊驗(yàn)證中。文獻(xiàn)[9]利用契約理論激勵輕節(jié)點(diǎn)參與區(qū)塊驗(yàn)證以防止驗(yàn)證節(jié)點(diǎn)的內(nèi)部共謀,但該機(jī)制無法及時響應(yīng)輕節(jié)點(diǎn)的頻繁變更情況。文獻(xiàn)[11]提出斯坦伯格博弈來權(quán)衡區(qū)塊驗(yàn)證中的安全要求、驗(yàn)證時延和成本,但該博弈模型建立在所有礦工已知完備環(huán)境信息的假設(shè)上,并不適用于輕節(jié)點(diǎn)頻繁更換、環(huán)境信息未知的車聯(lián)網(wǎng)場景。
針對上述研究工作的問題,本文在文獻(xiàn)[11]的基礎(chǔ)上,把智能汽車和DPoS共識算法的礦工間交互過程建模成斯坦伯格博弈模型,并由區(qū)塊鏈用戶(即智能汽車)作為博弈主方提供交易費(fèi)以促進(jìn)礦工快速、安全地完成區(qū)塊的打包、驗(yàn)證。驗(yàn)證者作為博弈從方隨機(jī)招募一定數(shù)量的輕節(jié)點(diǎn)提供驗(yàn)證服務(wù)并賺取交易費(fèi)。此外,車輛的高移動性會導(dǎo)致車聯(lián)網(wǎng)環(huán)境動態(tài)多變[12],傳統(tǒng)的方案并不適用于此類場景,存在效果差、可擴(kuò)展性弱等問題[13],因此,本文提出基于多智能體強(qiáng)化學(xué)習(xí)的方案以有效地解決動態(tài)多變環(huán)境中的區(qū)塊驗(yàn)證決策問題。并可在環(huán)境信息不完備的情況下收斂到接近最優(yōu)策略,從而最大化區(qū)塊鏈用戶與驗(yàn)證者的收益,實(shí)現(xiàn)高效、安全、可靠的區(qū)塊驗(yàn)證。
本文的主要貢獻(xiàn)如下:(1) 將輕節(jié)點(diǎn)引入到基于DPoS共識算法的區(qū)塊鏈賦能車聯(lián)網(wǎng)的數(shù)據(jù)共享區(qū)塊驗(yàn)證過程中,保證了區(qū)塊驗(yàn)證的效率的同時,也提升了區(qū)塊鏈用戶的滿意度。(2) 將智能汽車和驗(yàn)證者之間的交互過程建模成斯坦伯格博弈模型,并通過多智能體近端策略優(yōu)化算法(Multi-Agent Proximal Policy Optimization ,MAPPO)求解上述博弈過程的納什均衡解。(3) 與傳統(tǒng)Deep Q Network (DQN)方案進(jìn)行性能對比,并對MAPPO的收斂性能進(jìn)行了模擬和評估。
如圖1所示,本文考慮的基于DPoS共識算法的區(qū)塊鏈網(wǎng)絡(luò)主要包含以下實(shí)體:(1) 區(qū)塊鏈用戶(智能汽車);(2) 礦工;(3) 輕節(jié)點(diǎn)。其中礦工和輕節(jié)點(diǎn)在區(qū)塊驗(yàn)證階段均為驗(yàn)證者角色[14]。車輛間進(jìn)行數(shù)據(jù)共享交易,并定期將生成的交易記錄廣播到網(wǎng)絡(luò)中的礦工節(jié)點(diǎn)。在DPoS共識算法中,礦工輪流充當(dāng)區(qū)塊生產(chǎn)者,每個礦工在一個時間窗口內(nèi)只能充當(dāng)一次區(qū)塊生產(chǎn)者,其余礦工將充當(dāng)區(qū)塊驗(yàn)證者角色。具體而言,當(dāng)前的區(qū)塊生產(chǎn)者將時間窗口內(nèi)的合格交易記錄放入一個區(qū)塊中,并將該區(qū)塊廣播給其他礦工進(jìn)行驗(yàn)證。與PoW等傳統(tǒng)方案相比,DPoS中的礦工不需要相互競爭來獲得挖礦獎勵,礦工群體在完成區(qū)塊打包和驗(yàn)證任務(wù)后,可分得一定獎勵(用戶交易費(fèi)總和)。為了防止礦工之間驗(yàn)證合謀,礦工將新區(qū)塊隨機(jī)傳播給合作的輕節(jié)點(diǎn)進(jìn)行驗(yàn)證,從而保證區(qū)塊的安全性與可靠性[15]。
圖1 安全數(shù)據(jù)共享系統(tǒng)模型Fig.1 A system model of secure data sharing
與文獻(xiàn)[16-17]類似,基于DPoS的區(qū)塊鏈中的每個礦工都根據(jù)自己的合作輕節(jié)點(diǎn)來分配特定的驗(yàn)證任務(wù)。因此,每個礦工都可以根據(jù)各自的驗(yàn)證貢獻(xiàn),即合作驗(yàn)證者(輕節(jié)點(diǎn))的數(shù)量,從區(qū)塊鏈用戶那里分享到交易費(fèi)用f,而礦工和驗(yàn)證者之間也會存在通信成本。輕節(jié)點(diǎn)完成區(qū)塊驗(yàn)證任務(wù)后會獲得服務(wù)獎勵,并將驗(yàn)證結(jié)果反饋給礦工。
通過多跳中繼與遠(yuǎn)處的驗(yàn)證者進(jìn)行通信,這也會導(dǎo)致更長的區(qū)塊傳播時間[11]。因此,本文定義了一個安全延遲度量 μi來平衡網(wǎng)絡(luò)規(guī)模和礦工i的區(qū)塊傳播時間關(guān)系,μi的表達(dá)式為[11]
區(qū)塊鏈用戶和礦工之間的交互可以表述為一個斯坦伯格博弈,其中區(qū)塊鏈用戶是主方,礦工是從方[11,22]。在第1階段,區(qū)塊鏈用戶設(shè)定支付給礦工們的交易費(fèi),礦工們根據(jù)交易費(fèi)大小在第2階段中以最優(yōu)比例招募驗(yàn)證者。理性的礦工不會以負(fù)利潤參與挖礦,因此假設(shè)區(qū)塊鏈用戶提供的交易費(fèi)大于最小值fmin。主、從雙方的目標(biāo)函數(shù)為[11]
在本節(jié)中,首先介紹多智能體近端策略優(yōu)化算法,然后利用該算法來解決上述斯坦伯格博弈問題。將多用戶參與的斯坦博格博弈轉(zhuǎn)化為局部可觀測的馬爾可夫決策過程,包括狀態(tài)空間、觀測空間、動作空間、獎勵空間和狀態(tài)轉(zhuǎn)移概率。然后讓多智能體在與環(huán)境的交互中進(jìn)行策略迭代與策略提升,找到該博弈的均衡。
多智能體系統(tǒng)是環(huán)境和環(huán)境中的多個智能體組成的集合,其目標(biāo)是將大而復(fù)雜的系統(tǒng)建設(shè)成小而彼此互相通信協(xié)調(diào)的易于管理的系統(tǒng)[23]。在智能體學(xué)習(xí)過程中,智能體首先會觀測當(dāng)前環(huán)境的狀態(tài),然后根據(jù)自身的觀察和策略做出動作,并在環(huán)境中獲得獎勵,最后通過最大化累計獎勵的方式來更新自身的策略。具體如圖2所示。
圖2 多智能體強(qiáng)化學(xué)習(xí)框架Fig.2 The architecture of multi-agent reinforcement learning
考慮到智能體需要同時與環(huán)境和環(huán)境中其他的智能體進(jìn)行交互,智能體在做決策時,其他智能體也在采取動作,因此很難得到一個穩(wěn)定的最優(yōu)的策略[24]。與此同時,多智能體環(huán)境在非平穩(wěn)狀態(tài)下容易導(dǎo)致馬爾可夫性失效,因此直接在多智能體環(huán)境中應(yīng)用單智能體強(qiáng)化學(xué)習(xí)很難保證收斂性[25]。MAPPO是PPO(Proximal Policy Optimization)算法應(yīng)用于多智能體環(huán)境的變種,MAPPO同樣采用actor-critic架構(gòu),不同之處在于critic學(xué)習(xí)的是一個中心化值函數(shù)[26],可以保證更好的收斂性能和樣本復(fù)雜性。
本節(jié)采用仿真的方式評估多智能體強(qiáng)化學(xué)習(xí)算法在上述博弈模型中的相關(guān)性能。
本文仿真實(shí)驗(yàn)環(huán)境是基于gym構(gòu)建的,具體參數(shù)配置見表1。仿真實(shí)驗(yàn)運(yùn)行在配置Intel Xeon CPU@1.6 GHz×12、TITAN X GPU、64 G 內(nèi)存、Ubuntu 18.0.1系統(tǒng)、Pytorch 1.2、Python 3.6的臺式機(jī)上。
表1 仿真參數(shù)設(shè)定[11]Table 1 Parameter Setting in the Simulation
在實(shí)驗(yàn)過程中,對于所提MAPPO算法,本文采用Adam優(yōu)化器,學(xué)習(xí)率(α=β)設(shè)置為3×10?4。策略和值網(wǎng)絡(luò)均采用兩層全連接網(wǎng)絡(luò),其中每層有64個神經(jīng)元,采用ReLU激活函數(shù)。設(shè)置折扣因子γ為0.99,裁剪率?為0.2,GAE截斷系數(shù)λ為0.95,過去經(jīng)驗(yàn)輪數(shù)L為4,批大小為32。本文采用傳統(tǒng)深度強(qiáng)化學(xué)習(xí)Deep Q Network (DQN)算法作為仿真實(shí)驗(yàn)的對比算法,所有智能體的策略網(wǎng)絡(luò)均采用兩層全連接網(wǎng)絡(luò),其中每層有64個神經(jīng)元,采用ReLU激活函數(shù),學(xué)習(xí)率(α=β)設(shè)置為3.5×10?4,折扣因子 γ為0.99,探索率為0.01。同時對上述2種算法進(jìn)行訓(xùn)練,訓(xùn)練輪數(shù)E為100,決策輪次長度K為16。
首先分析所提算法的收斂性能,并進(jìn)一步研究不同礦工數(shù)量對區(qū)塊鏈用戶和礦工的策略的影響。
在仿真中,選取并觀察其中1個區(qū)塊鏈用戶和3個礦工的實(shí)驗(yàn)性能,分別通過MAPPO算法和DQN算法來學(xué)習(xí)區(qū)塊鏈用戶和礦工的安全驗(yàn)證策略。圖3為DQN算法和MAPPO算法的收斂性能對比,其中fbest為最優(yōu)交易費(fèi),n3,best為礦工3最優(yōu)驗(yàn)證者數(shù)量。MAPPO算法在迭代約1 200次后,算法已基本收斂,這是因?yàn)樵谥行幕岛瘮?shù)的指導(dǎo)下,智能體更容易學(xué)習(xí)到兼顧其他智能體的策略,能同時增加區(qū)塊鏈用戶的效用和礦工的個人利潤。與MAPPO算法相比,DQN算法的性能表現(xiàn)較差,這是因?yàn)橹苯訉沃悄芩惴☉?yīng)用到多智能體環(huán)境中會導(dǎo)致其無法收斂。
圖3 DQN和MAPPO的收斂性能Fig.3 The convergence performance of both DQN and MAPPO
隨后,評估不同礦工數(shù)量I對平均招募驗(yàn)證者數(shù)量navg的影響,并將結(jié)果記錄在圖4中。如圖4所示,隨著礦工數(shù)量的增加,驗(yàn)證者的數(shù)量先增加后減少。這是因?yàn)榈V工的收益由其招募的驗(yàn)證者數(shù)量決定,隨著礦工數(shù)量的增加,礦工們?yōu)榱双@得更大的收益,傾向于招募更多的驗(yàn)證者來提供更大的貢獻(xiàn)。但隨著礦工數(shù)量的進(jìn)一步增加,通信和招募成本增加的速度大于收益增加的速度,礦工們的收益減少。圖4同時也顯示了用戶交易費(fèi)對平均招募驗(yàn)證者數(shù)量的影響。隨著用戶交易費(fèi)用的增加,礦工們傾向于招募更多的驗(yàn)證者,這是因?yàn)橛脩艚灰踪M(fèi)用的增加提高了礦工們的期望收益值。
圖4 礦工數(shù)量對平均招募驗(yàn)證者的影響Fig.4 Impact of the number of miners on average number of recruited verifiers
盡管平均招募驗(yàn)證者的個數(shù)隨著礦工數(shù)量的進(jìn)一步增加而下降,但總的驗(yàn)證者數(shù)量nsum卻是在逐漸增加(如圖5所示)。這是因?yàn)榈V工之間的競爭在一定程度上影響了期望回報和招募驗(yàn)證者數(shù)量之間的關(guān)系,使礦工們依舊有獲得回報的動機(jī),這也在一定程度上提高了區(qū)塊驗(yàn)證的安全性。
圖5 礦工數(shù)量對總驗(yàn)證者數(shù)量的影響Fig.5 Impact of the number of miners on total number of recruited verifiers
圖6顯示了總的驗(yàn)證者數(shù)量nsum和礦工收益Um之間的關(guān)系。由于驗(yàn)證者之間存在競爭,當(dāng)總的驗(yàn)證者數(shù)量增加時,礦工的收益減少。此外,本文博弈模型中的礦工利潤比每個礦工招募相同數(shù)量的輕節(jié)點(diǎn)驗(yàn)證者的方案中的礦工利潤高,這是因?yàn)槊總€礦工都可以計算最佳招募驗(yàn)證者數(shù)量來獲得收益最大化。
圖6 驗(yàn)證者數(shù)量對礦工收益的影響Fig.6 Impact of the total number of recruited verifiers on the profit of a miner
本文針對基于DPoS共識算法的區(qū)塊鏈賦能車聯(lián)網(wǎng)數(shù)據(jù)共享的區(qū)塊驗(yàn)證過程中的共謀問題,把輕節(jié)點(diǎn)引入?yún)^(qū)塊驗(yàn)證中,并且將智能汽車和礦工之間的交互建成斯坦伯格博弈模型。通過多智能體近端策略優(yōu)化算法求解斯塔伯格博弈的納什均衡解。實(shí)驗(yàn)結(jié)果表明所提方案可以有效搜索到接近最優(yōu)的策略,從而保證區(qū)塊驗(yàn)證的安全性與可靠性。