匡圖上青 ,祁 宏 ,周盛文 ,段桂華 ,段紅松
(1.中南大學 計算機學院,湖南 長沙 410012;2.中國電子科技集團公司第四十八研究所,湖南 長沙 410111)
2020 年,中國提出“新基建”方案,新能源電動車及其充電樁作為七大建設內容之一后[1],新能源電動車的產品市場高速增長,預計到2020 年結束,中國各類電動汽車保有量將超過 500 萬輛[2],電動車及其充電樁市場發展迅速,但也存在大量問題,出現了有車無樁、有樁無電;充電設施無人監管、企業監管成本高、政府難以監管;充電設施企業品牌繁雜,企業間難以共享資源和數據,造成行業壁壘;用戶找不到合適的充電樁、充電程序繁瑣;交易信息不透明、隱私數據難以得到保護;閑置私人充電樁未被利用,造成社會資源浪費等一系列負面情況。
區塊鏈是“互聯網+”行業新形勢下一種新興的應用技術,具有去中心化、不可篡改、容錯性強、可塑性強的特點。 已延伸到物聯網、智能制造、供應鏈管理、數字資產交易等多個領域。 區塊鏈本質上是數據去中心化,是一串使用密碼學方法相關聯產生的數據塊,每個數據塊中包含網絡交易的信息,用于驗證其信息的有效性和生成下一個區塊。由于它具有自由開放、容錯性強、信息保密等特點,可以便捷安全地實現信息傳遞和節點加入,適用于共享經濟模式,在市場上的電力交易、能源分量交換等能源交易互聯的場景中都可以被廣泛應用,貼合新能源電動車和充電樁管理的需求。 因此,本文提出了一種基于區塊鏈的新能源電動車充電樁共享管理方案,利用于區塊鏈技術,首先進行整體框架設計,構建聯盟鏈模塊,將不同角色用戶加入聯盟鏈節點; 在此基礎上設計充電幣, 建立獎勵機制模塊;同時,針對用戶難以找到充電樁,找到的充電樁不切合要求的問題,提出了路徑推薦算法,為用戶提供個性化充電樁推薦服務,構建了一套較為完整的解決方案,可以較好地解決目前充電樁市場存在的問題。
新能源領域與區塊鏈的結合是一個新興領域,尤其是新能源汽車和充電樁與區塊鏈的結合的相關研究較少。 在新能源應用方面,美國的IDEO Co Lab 首先采用了區塊鏈技術和物聯網設計了基于區塊鏈技術的太陽能電池板設備,保證RECS 市場的透明性。
《能源轉型中的區塊鏈:德國能源行業決策調查》一文中指出[3],區塊鏈在能源交易領域的應用應該圍繞建立分布式交易和供應體系展開,指出了區塊鏈與新能源充電樁和電動車結合的可能性與廣闊前景。 SCHWIETERS N 等人提出,利用區塊鏈技術的“去中心化”特性,做到公用充電樁計費的透明和可監控,提出了基于以太坊的電動汽車充電交易方式。
在國內,文獻[3]中采用多代理商節點管理用戶充電方式的選擇及交易,但未提及具體聯盟鏈的實現架構[4]。 文獻[4]針對微網的應用場景,設置電動汽車用戶與分布式能源運營商進行交易。 文獻[5]結合電動汽車充電場景,利用閃電網絡的支付網絡和基于哈希密鑰逐級驗證技術,提出了基于閃電網絡、區塊鏈、智能合約的充電樁共享平臺,具有一定的實踐意義。 但比特幣區塊鏈作為一種公鏈,有吞吐量低、用戶交易隱私公開等弊端,且比特幣擁有人較少,不利于應用到現實之中[6]。 李剛提出了基于雷電網絡的電動汽車充電交易,對閃電網絡進行了進一步的拓展和修正[7]。 張富寶、天津大學金志剛教授等,都將聯盟鏈應用于電動車和充電樁管理中,解決了權限分配等問題,彌補了公鏈管理系統的 不 足[8,9]。
在張寶富、劉維揚[10]等人的研究中,提出了充電樁領域的“共享”的概念,研究了共享充電樁的系統設計,但是提出的系統中往往缺乏一套結算體系,不具備實際應用場景。 目前的 “共享充電樁方案”沒有考慮到用戶配電設施主要由用戶自己投資建設,資金一次性投入較大的問題。 采用區塊鏈眾籌方式進行投資建設,可以降低客戶負擔,而投資者也可獲得收益。該模式要求提供精確可信的計量數據和可信的交易,才能保障投資者利益。 基于區塊鏈的眾籌有望成為一種新型商業模式,而在本作品中也采用了這一思想,將充電樁的建設和共享作為聯盟鏈的一部分加入,并納入獎勵機制。
區塊鏈具有去中心化、不可篡改性、容錯度強和可塑度高的特征,因而在市場上,在電力交易、能源分量交換等能源交易互聯的場景[11]可以廣泛地應用。 本文同時開發了一種充電幣系統和推薦算法,以解決部分困難。
區塊鏈的系統結構如圖1 所示,包括數據層、網絡層、共識層、合約層和應用層。在數據層使用了Merkle 樹[12]、非對稱加密、哈希算法等相關技術,確保了不可篡改和無溯源性;網絡層利用P2P 數據傳輸協議,提供一種可行的傳播和驗證方法;共識層采用 PBFT 共識機制算法[13],來實現分布式節點數據間的一致性和真實性;在應用層實現充電幣交易系統以及新能源汽車電量交易方案。
2.2.1 聯盟鏈在新能源汽車充電服務中的應用
本文引入用戶、企業、政府、私人以及充電樁作為不同節點。 其所擁有的權限范圍不同,所以拋棄過于自由開放的公有鏈以及只適用于建立在組織內部的私有鏈,而采用具有更高TPS,并且可以更好滿足充電樁共享中處理交易的聯盟鏈[14]。 將聯盟鏈節點分為管理節點、用戶節點和私有節點。
(1)管理節點主要指充電樁的運營企業以及政府主管部門,管理節點可以向底層區塊鏈寫入或更新數據,此外還能為用戶節點分配權限。
(2)用戶節點指被服務方,只參與交易,享受服務,而不參與底層數據的更新記錄。 但普通用戶節點可以查看部分區塊鏈上的記錄數據,并讀取對應的交易記錄。
(3)私有節點指的是將私有資源貢獻出來加入聯盟鏈的用戶。 用戶擁有創建節點、修改創建節點的相關數據等權限,但不參與全部區塊鏈數據的更新。
在此基礎上,本文提出一種基于聯盟鏈的電量交易模型[15],如圖 2 所示。
該交易模型使得各充電運營企業的服務和部分數據互聯互通,從而能夠提升充電設施的利用率。而對電動汽車用戶而言,其豐富了用戶的充電途徑,用戶除了在已注冊充電運營商提供的充電站充電,由于可接受的價格而在其他充電運營商提供的充電站充電也是被允許的,如此便提升了用戶充電服務的便利性。
2.2.2 新能源汽車電量交易方案
本文提出的電動汽車充電交易模型[16]如圖3所示。
其執行過程是交易主體在共識機制下創建交易、合約執行、校驗結果、區塊更新入賬的過程:

圖1 區塊鏈架構體系框

圖2 基于聯盟鏈的電量交易模型

圖3 電動汽車充電交易模型
(1)充電運營企業首先讀取偏差電量及相應的電價信息,傳達給該企業的電動汽車用戶,電動汽車用戶提交交易申請和其身份信息。
(2)背書節點將會對用戶身份信息進行驗證,在收到交易請求信息,驗證滿足要求后將數據發送給當前充電樁節點來執行智能合約,合約將匹配合適的充電樁按照車主的信譽值順序,然后下達交易結果記錄。
(3)在用戶和企業達成共識后首先要經過背書節點的驗證,再將驗證結果轉發給用戶,同時使用預留的公鑰確認身份的真實性并創建交易記錄,企業將會收到這一份交易記錄。
(4)充電運營企業節點實施共識。為實現分布式節點間數據的真實和一致的特性,在本文中采用PBFT 共識算法來達成節各節點共識。 具體執行過程如下。
規定:發生交易行為的充電樁作為主節點,新生成的交易數據將會經由該主節點向全網廣播,主節點基于節點自身算力進行交易驗證和工作量證明,對于不認可的節點對交易區塊,主節點將進行二次審計,判斷是否存在節點作惡行為,并接入用戶信譽系統。到此,一次交易執行過程結束,區塊鏈將會等待下一次創建交易的申請。而在這其中主節點的產生是根據系統選舉的結果,通過模運算或者挑選當前存活的節點編號最小的節點作為主節點。 其公式為:

其中:P 為節點的編號,V 為視圖的編號,R 為節點的數量。
取得主節點后,進行 PBFT 共識過程,PBFT 共識中生成一個非惡意區塊的通信次數為:

其中:Pv為 PBFT 生成惡意節點的概率,Cv為從執行PBFT 到節點驗證期間內的通信次數,為不產生惡意節點時的通信次數。
以區塊鏈為底層構建的系統存在無法進行結算,缺乏激勵機制等情況[17],故在聯盟鏈基礎上設計充電幣模塊。 充電幣模塊是本系統實行獎勵機制和結算機制的模塊,是一種量化的用戶工作量證明,由用戶、充電幣賬戶與智能合約構成,建立和運行在聯盟鏈模塊之上,用戶通過聯盟鏈模塊進行充電幣交易,部署智能合約,進行預先設定的合約條款的自動執行。 其目的是完善一個多方共同記賬、共同維護賬本、交易數據隱私保護的充電樁共享生態系統,如圖 4 所示。
用戶的充電幣有兩種獲得途徑:用戶將資金轉入充電幣賬戶;或充電幣賬戶向用戶發送等價的充電幣。
用戶完成智能合約規定任務后,智能合約為用戶自動發放相應充電幣。
充電幣系統的主要組成部分是:電動車用戶、充電幣賬戶、聯盟鏈網絡。

圖4 充電幣運行模式
系統以聯盟鏈網絡作為交易媒介,通過分布式賬本進行充電幣資產的確權,摒棄了傳統的第三方平臺,在保證數據的不可竄改和交易信息的公開透明的同時,也降低了潛在的安全風險[18]。 結合區塊鏈去中心化的特性,充電幣系統中各個節點都具有平等的地位,因此用戶之間能夠進行直接的充電幣交易,打破了以用戶與第三方平臺交易為主的傳統模式,提高了系統中資金的流動性,便于充電幣應用的推廣和資金的籌集。
充電幣模塊建設過程如下:
(1)搭建網絡和智能合約:在區塊鏈模塊中搭建了聯盟鏈網絡,便于充電幣傳輸交易。 同時部署充電幣合約和獎勵合約,實現基本的交易功能。 充電幣合約包括對用戶賬戶、充電幣發放等事物的管理,獎勵合約用于檢測用戶是否做出對系統有利的行為或系統希望用戶達成的行為后,自動為用戶發放充電幣。
(2)設置充電幣基本數據和規則:在充電幣系統中,設置充電幣數量運行之初為 0。 定義一枚電子貨幣就是一條數字簽名鏈,其中含有基本區塊所包含的時間戳、哈希值等數據。
每個擁有者都通過將上一次交易和下一個擁有者的公鑰哈希值的數字簽名添加到此貨幣末尾,將這枚貨幣轉移給下一個擁有者。 收款人可以通過驗證數字簽名來證實其為該鏈的所有者。 根據創建的用戶,生成充電幣交易地址,用于創建和驗證目標交易。 同時系統規定交易類型分為三種:用戶充電操作交易、充電幣結算交易、獎勵機制下智能合約自動發放充電幣。
(3)不同情境下充電幣交易方式:如果是用戶充電操作交易,則將交易中電量變化以及用戶行為這兩個信息作為輸入,代入充電幣獎勵協議中的充電交易表達式,輸出充電幣交易初始值(待解析);如果是用戶充電幣結算的交易,則直接將用戶待處理的充電幣數量進行輸出(待解析);如果是企業進行的充電幣獎勵反饋操作,則將待處理的用戶充電幣數量以及獎勵的方式進行輸入,代入充電幣獎勵協議中的獎勵表達式,輸出充電幣交易初始值(待解析)。
(4)充電幣創建流程:解析充電幣交易初始值為輸入,判斷是否符合數值要求;如果符合數值要求,根據解析的數值進行重新編碼,再根據已創建的充電幣地址生成交易初始腳本;如果數值不符合要求則返回重新生成初始值。
根據交易初始腳本解析、填充用戶私鑰進行加密。 對創建的交易進行用戶的數字簽名。 與充電交易信息一同打包,但保持其驗證部分的獨立性,加入區塊鏈待廣播。
進行區塊驗證步驟,經其他區塊進行驗證后,同區塊廣播入鏈,完成一次創建。
經過對充電樁和電動汽車運行情況的實際調研,總結了以下特點:
(2)電動汽車電量少于30%后,必須盡快充電。
(3)電動汽車充電數據更新快。
(4)用戶的活動區域有一定的規律,其充電地點也往往有很強的地域性特點。
(5)用戶充電行為的時間特性。 充電汽車用戶的充電時間服從正態分布。
推薦算法基于用戶的實際情況,進行個性化推薦,從不同角度分析充電行為,更好地分析在實際應用場景下的算法。
用戶獲取充電樁位置信息的傳統方法較為落后,可能導致在有充電需求時難以找到附近的充電樁[19]。 推薦算法有以下幾種,分別是基于物品和基于用戶的協同過濾算法。 新加入充電系統的用戶沒有形成自己的充電習慣, 使用基于用戶的過濾方法;對于已經形成習慣的老用戶,采用基于物品的協同過濾算法。
假設E‖v2(t)‖,…,E‖vl-1(t)‖都是有界的,其中l-1≥3。現在證明E‖vl(t)‖也是有界的。 如果E‖vl(t)‖無界,則一定存在一個分量k(1≤k≤d)使得根據系統(1)的第2個等式,有
圖5 為考慮了不同類型用戶之后的推薦總流程。

圖5 考慮用戶分類的推薦流程
4.3.1 計算目標相似度
CF 算法的基本思想就是尋找目標之間的相似性。 無論是用戶之間的相似性,還是用戶目標物品的相似性,對于推薦來說都是不可或缺的信息。 因此,CF 算法的第一步就是相似度的計算。 目前成熟的相似度計算方式有多種[20],其中以基于余弦的相似度、基于皮爾遜關聯的相似度和基于調整余弦的相似度為主。 采用余弦相似度進行計算,足以體現用戶之間、充電樁之間的相似度。
首先是基于充電樁的物品推薦,這種“用戶偏好”體現在用戶使用充電樁的次數上,使用次數越多評分越高。
其次是用戶差異,體現在用戶歷史的充電習慣(充電頻率、充電時間段和充電地理位置),也是特征向量方向上的差異。 充電樁推薦模型,需要考慮到用戶行為的時效性。 對于時間點T,i 物品的 ni(T)(T 時間流行度)為:

式中,α 為時間衰減參數,其取值視不同系統而定。三元組(u,i,t)代表了用戶在時刻 t 對 i 號充電樁進行了使用。 如果用戶的充電樁使用情況變化很快,那么α 的取值會較大;如果用戶的使用偏好較穩定,則 α 的取值小。 而對于新用戶,設 α 取值為 1;老用戶的使用偏好較為穩定,α 取值為 0。
加入了時間因素余弦公式如式(3)所示。 將分子對于用戶 u 和 v 共同感興趣的第 i 號充電樁,根據時效性原理,加入了一個衰減因子 α。 當 u 和v選擇第i 號充電樁使用時,若時間比較接近,則用戶相似度越大;如果時間相距越遠,則它們之間的相似度就越小。

4.3.2 設置與提取特征向量
用戶充電次數是主要的權重策略參數。 在歷史數據中檢索用戶充電次數作為特征值輸入模型。 用戶對于某充電樁的偏好度如表1 所示。

表1 特征向量形式
4.3.3 設計協同過濾推薦模型
在實際場景分析中,已經將用戶進行分類為新用戶和老用戶。 老用戶的充電偏好較為穩定,且原本相似度高的老用戶之間的相似度維持率也很高,不需要重復維護相似度集合,所以選擇基于物品的算法能夠降低推薦系統的負載;而新用戶還未有固定的充電偏好,需要頻繁地修改相似度表,由此換用另一種基于用戶的過濾方法,進行拓展性的推薦,同時也促進用戶快速養成充電習慣。
基于用戶的協同過濾推薦設計模型[21]。 首先根據鄰近用戶偏好,向目標用戶推薦相似的選項。 例如,A 為目標,A 與鄰近的 C 在 3 號處充電次數較多,A 與 C 互為鄰的概率較大,A 的偏好預估就可以采用 C 的偏好進行處理; 在此基礎上,A 的新進推薦列表也可以由平常A 使用不多但C 使用頻繁的3 充電樁進行生成,這能夠增加用戶的選項,使推薦更加人性化。 式(4)為推薦矩陣運算轉換關系。

基于用戶的推薦模型的工作流程如下:
(1)公式(2)通過余弦相似度進行計算,其結果通過KNN 分類法,減小鄰近用戶的范圍,并且返回K 個鄰接的用戶。
(2)計算物品的最終推薦列表,刪去重復偏好后反饋給用戶。 表 2 為用戶 1 與其他用戶的余弦相似度關系。

表2 目標用戶1 與其他用戶的相似度
(3)根據Cosine 相似度進行鄰居用戶生成。 Cosine相似度值越大,越接近1,代表用戶越相似,當鄰居數量取 3 時,根據相似度大小,分別取用戶 2、用戶4、用戶 6 作為用戶 1 的鄰居用戶。
基于物品的推薦是以物品為基礎、面向偏好用戶的推薦模型[22],主要分為 4 步:
(1)根據用戶的充電樁使用次數、行為計算偏好矩陣。
(2)根據評分矩陣計算余弦相似度,并將結果表示為物品與物品之間的相似度矩陣。
(3)以相似度矩陣 Mn左乘偏好矩陣 Mu[23],得到初步推薦矩陣(用戶物品,值為推薦權重)。
(4)數據過濾,使用偏好過濾矩陣 Mf來過濾初步推薦矩陣的重復推薦項目(偏好值大于某一閾值時不再推薦),得到最終的推薦矩陣 Mc。
我國新能源充電車的迅猛發展,但與之配套的充電基礎設施卻發展緩慢。 針對出現的種種問題,本文運用區塊鏈技術,輔以推薦算法和獎勵機制,打造一套基于區塊鏈技術的分布式新能源電動車充電管理系統。 利用區塊鏈技術與生俱來的去中心化特性, 增加能源互聯網中多利益主體的相互信任,解決跨平臺的多方行業壁壘,保證用戶及企業相關隱私的安全性和保密性,在獎勵機制和推薦算法的作用下,提高用戶使用度和體驗感,形成系統良性循環。
本方案結合實際情況考慮,具有良好的創新性和實用性。 但在充電樁公司營商之間的統一結算、系統維護、引導用戶習慣等問題仍有待進一步研究探討。