杜 楚,杜新新,刁 金
(1.中國電子科技集團公司第五十四研究所,河北 石家莊 050081;2.中國地質(zhì)大學(北京)信息工程學院,北京 100083)
近年來,物聯(lián)網(wǎng)(Internet of Things,IoT)已經(jīng)被廣泛應用到不同的領域(如智能交通系統(tǒng)中的車流量監(jiān)控)[1-2],通過連續(xù)地收集邊緣端的感知數(shù)據(jù),對環(huán)境進行實時監(jiān)控和異常檢測[3]。然而,由于物聯(lián)網(wǎng)節(jié)點能量受限,為了檢測一個異常是否發(fā)生和異常的嚴重程度,云服務器通常不需要一個精確的感知數(shù)據(jù),感知數(shù)據(jù)所屬的區(qū)間足以滿足應用的需求。只有當一個異常已經(jīng)發(fā)生后,才需要將精確的感知數(shù)據(jù)發(fā)送給云服務器,確定異常的詳細信息。如何實現(xiàn)節(jié)能數(shù)據(jù)聚集來支持工業(yè)物聯(lián)網(wǎng)的異常檢測受到了學術界和工業(yè)界的廣泛關注。
現(xiàn)有的感知數(shù)據(jù)聚集技術通常不能兼顧數(shù)據(jù)傳輸?shù)臅r延和能耗。例如,壓縮感知算法通過利用感知數(shù)據(jù)的時空相關性來減少被傳輸?shù)臄?shù)據(jù)量[4]。壓縮感知算法會受到底層路由方法的影響,并且路由方法通常包括基于樹的路由方法[5]和基于簇的路由方法[6]等。本文通過采用基于簇的壓縮感知算法來聚集密集部署的網(wǎng)絡中的二進制類別數(shù)據(jù)[7]。數(shù)據(jù)預測技術通過利用預測值代替真實值,減少網(wǎng)絡中感知數(shù)據(jù)的傳輸[8]。由于數(shù)據(jù)預測模型的精度會影響路由到云服務器感知數(shù)據(jù)的數(shù)量,因此選擇一個合適的數(shù)據(jù)預測模型至關重要。這些策略在確定的條件下能夠獲得非常好的性能,例如,感知數(shù)據(jù)的變化趨勢非常簡單等等。但是,這些方法并不適用于本文的場景。
因此,在密集部署的網(wǎng)絡中,為了對工業(yè)環(huán)境進行實時監(jiān)控和異常檢測,以節(jié)能的方式連續(xù)地收集感知數(shù)據(jù)是一個非常有挑戰(zhàn)性的任務。為了解決這個挑戰(zhàn),根據(jù)異常檢測的特點和數(shù)據(jù)的時空相關性,提出了一個基于壓縮感知的節(jié)能數(shù)據(jù)收集策略,通過利用云邊端的協(xié)作實現(xiàn)節(jié)能的感知數(shù)據(jù)收集來支持工業(yè)物聯(lián)網(wǎng)異常檢測,在保證服務質(zhì)量的同時減少網(wǎng)絡能耗。
目前,針對節(jié)能數(shù)據(jù)收集的研究主要包括基于數(shù)據(jù)壓縮的節(jié)能數(shù)據(jù)收集算法、基于數(shù)據(jù)預測的節(jié)能數(shù)據(jù)收集方法、基于睡眠喚醒的節(jié)能數(shù)據(jù)收集算法和基于移動傳感器路徑規(guī)劃的節(jié)能數(shù)據(jù)收集算法。
基于數(shù)據(jù)壓縮的節(jié)能數(shù)據(jù)聚集研究通過利用數(shù)據(jù)的相關性和數(shù)據(jù)壓縮技術,去除冗余數(shù)據(jù),得到壓縮后的數(shù)據(jù),在保證數(shù)據(jù)恢復精度的同時,減少數(shù)據(jù)量[9-11]。傳統(tǒng)的壓縮算法包括香農(nóng)-范諾編碼[12]、哈夫曼編碼法[13]、預測編碼[14]、基于線性擬合的壓縮算法[15]和主成分分析算法[16]等,這些算法具有壓縮過程復雜、解壓過程簡單的特點,使其在資源受限的邊緣設備上節(jié)能效果并非最優(yōu)。壓縮感知算法具有壓縮過程簡單、解壓過程復雜的特點,使其非常適用于資源受限的邊緣設備。
基于數(shù)據(jù)預測的節(jié)能數(shù)據(jù)聚集機制通過利用數(shù)據(jù)變化的特點,對下一時刻的數(shù)據(jù)進行預測[17]。因此,物聯(lián)網(wǎng)設備不需要連續(xù)地感知和收集環(huán)境信息,可以減少網(wǎng)絡中的數(shù)據(jù)傳輸。在文獻[8]中,一個簡單的線性函數(shù)(DBP算法)同時部署在云端和物聯(lián)網(wǎng)節(jié)點,用于預測感知數(shù)據(jù),只有當預測值不滿足確定應用需求時,才將傳感器節(jié)點的感知數(shù)據(jù)和模型參數(shù)上傳到云服務器,用于和云上的數(shù)據(jù)同步。當數(shù)據(jù)的變化趨勢很簡單并且可預測時,該策略能夠極大地減少網(wǎng)絡傳輸?shù)臄?shù)據(jù)量和網(wǎng)絡能耗。然而,一旦數(shù)據(jù)變化比較劇烈,該策略的性能會急劇降低。
對于不同的物聯(lián)網(wǎng)設備,同一時隙的感知數(shù)據(jù)具有空間相關性,導致網(wǎng)絡中存在大量冗余數(shù)據(jù)。因此,通過利用數(shù)據(jù)的空間相關性,利用近鄰節(jié)點的數(shù)據(jù)估計其他節(jié)點的感知數(shù)據(jù),能夠在一定程度上減少感知數(shù)據(jù)的傳輸。一些學者提出睡眠/喚醒調(diào)度策略[18],使部分傳感器節(jié)點處于睡眠狀態(tài),通過最小化空閑監(jiān)聽時間和減小傳感器節(jié)點狀態(tài)轉(zhuǎn)換次數(shù),極大地降低網(wǎng)絡的能耗。但這類方法存在網(wǎng)絡熱點問題,使一些物聯(lián)網(wǎng)設備過早死亡,導致網(wǎng)絡癱瘓,對網(wǎng)絡生命周期造成一定的影響?;谝苿訁R點的數(shù)據(jù)聚集算法[19]利用系統(tǒng)外部的移動設備能夠成功解決該問題。移動設備的成本高、能耗大,對低成本的應用并不適用。另外,移動設備的移動速度過慢會導致時延增加甚至數(shù)據(jù)包的丟失。
綜上所述,這些方法在特定的場景下節(jié)能效果十分顯著,但是并不適用于本文的場景。因此,迫切需要提出一個節(jié)能數(shù)據(jù)收集算法來支持本文的應用。
本節(jié)介紹物聯(lián)網(wǎng)節(jié)點、物聯(lián)網(wǎng)以及物聯(lián)網(wǎng)節(jié)點分布偏度的具體定義,并給出了本文算法運行網(wǎng)絡的具體構(gòu)建過程和能量模型。
定義1 物聯(lián)網(wǎng)節(jié)點(IoT node)。一個物聯(lián)網(wǎng)節(jié)點是一個元組IoTnd= (id,loc,type,cr,engy,sv),其中,id是物聯(lián)網(wǎng)節(jié)點的唯一標識;loc是物聯(lián)網(wǎng)節(jié)點的地理位置,包括經(jīng)度和緯度;type是物聯(lián)網(wǎng)節(jié)點的類型,可能是智能終端,也可能是邊緣服務器;cr是物聯(lián)網(wǎng)節(jié)點的通信半徑,對于不同類別的物聯(lián)網(wǎng)節(jié)點通信半徑都相同;engy是在當前時隙物聯(lián)網(wǎng)節(jié)點的剩余能量,邊緣服務器的初始能量比智能終端的初始能量更高;sv是物聯(lián)網(wǎng)節(jié)點的感知數(shù)據(jù)。
一個物聯(lián)網(wǎng)包括邊緣網(wǎng)絡和一個云服務器。云服務器負責管理邊緣網(wǎng)絡。在邊緣網(wǎng)絡中,根據(jù)資源數(shù)量的不同,將物聯(lián)網(wǎng)節(jié)點分為智能終端和邊緣服務器。邊緣服務器比智能終端擁有更多的資源并且負責管理其所在邊緣網(wǎng)絡中的智能終端。
定義2 物聯(lián)網(wǎng)(IoT network)。一個物聯(lián)網(wǎng)是一個有向圖,由一個元組表示IoT_net= (ND,LK),其中ND包括一個云服務器和一些物聯(lián)網(wǎng)節(jié)點(包括邊緣服務器和智能終端);LK是ND中物聯(lián)網(wǎng)節(jié)點之間連線的集合。只有當2個節(jié)點之間的距離在通信半徑內(nèi),這2個節(jié)點之間才會有連線。
定義3 偏度(Skewness Degree)。 一個偏度表示物聯(lián)網(wǎng)節(jié)點分布的不均勻情況,網(wǎng)絡偏度的計算公式sd=(dn-sn)÷(dn+sn),式中,dn和sn分別指在密集區(qū)域和稀疏區(qū)域物聯(lián)網(wǎng)節(jié)點的數(shù)量。偏度0%意味著物聯(lián)網(wǎng)節(jié)點均勻且隨機地部署在物聯(lián)網(wǎng)區(qū)域。
在物聯(lián)網(wǎng)中,網(wǎng)絡結(jié)構(gòu)通常包括基于樹的網(wǎng)絡結(jié)構(gòu)和基于簇的網(wǎng)絡結(jié)構(gòu)等。本文中的物聯(lián)網(wǎng)節(jié)點密集部署在物聯(lián)網(wǎng)中。一個基于簇的網(wǎng)絡結(jié)構(gòu)作為本文的網(wǎng)絡模型,該模型的建立過程如下:
① 物聯(lián)網(wǎng)部署:物聯(lián)網(wǎng)節(jié)點部署在二維矩形區(qū)域內(nèi),它可能不均勻地部署在物聯(lián)網(wǎng)區(qū)域并且足夠密集,以協(xié)作的方式來監(jiān)控網(wǎng)絡環(huán)境。無論物聯(lián)網(wǎng)節(jié)點是否均勻地部署在網(wǎng)絡中,構(gòu)建網(wǎng)絡模型的過程都是相似的。本文以在網(wǎng)絡中均勻地部署物聯(lián)網(wǎng)節(jié)點為例介紹網(wǎng)絡的構(gòu)建過程。首先,均勻且隨機地在L×L的正方形區(qū)域內(nèi)部署N個物聯(lián)網(wǎng)節(jié)點,并且為每個物聯(lián)網(wǎng)節(jié)點分配一個唯一的標識符id用于區(qū)分它們。
到目前為止,已經(jīng)提出了一些能量模型用于計算物聯(lián)網(wǎng)中數(shù)據(jù)包傳輸?shù)哪芎?。其中最頻繁使用的一個能量模型是一階無線電模型[20]。在本文中,通過利用該模型,計算網(wǎng)絡中數(shù)據(jù)包傳輸所消耗的能量。該模型的參數(shù)如表1所示。
表1 能量模型中的參數(shù)Tab.1 Parameters in the energy model
ETx(k,d)和ERx(k,d)分別表示傳輸一個k比特的數(shù)據(jù)包到距離為d的物聯(lián)網(wǎng)節(jié)點和從距離為d的物聯(lián)網(wǎng)節(jié)點接收一個k比特的數(shù)據(jù)包,即:
ETx(k,d)=ETx-elec(k)+ETx-amp(k,d)=
Eelec×k+εamp×k×dn,
(1)
ERx(k,d)=ERx-elec(k)=Eelec×k。
(2)
因此,從物聯(lián)網(wǎng)節(jié)點i傳輸一個數(shù)據(jù)包到物聯(lián)網(wǎng)節(jié)點j所需要的總能耗為:
Eij(k,d)=ETx(k,d)+ERx(k,d)。
(3)
需要注意的是,傳輸一個數(shù)據(jù)包到物聯(lián)網(wǎng)節(jié)點所消耗的能量不同于傳輸一個數(shù)據(jù)包到云服務器。通常假設云服務器擁有的能量是不受限的,因此,云服務器接收數(shù)據(jù)包所消耗的能量可以忽略不計。計算Eij(k,d):
(4)
式中,n為傳輸衰減索引的值,該值由周圍的環(huán)境所決定。如果物聯(lián)網(wǎng)節(jié)點在網(wǎng)絡中轉(zhuǎn)發(fā)數(shù)據(jù)包的過程中沒有障礙,將參數(shù)n設置為2;否則,將參數(shù)n設置為3~5的一個值。不失一般性,本文假設網(wǎng)絡部署在無障礙的區(qū)域內(nèi),因此,將n設置為2。
在物聯(lián)網(wǎng)環(huán)境中,考慮到感知數(shù)據(jù)是有時空相關性的。在云端通過利用一個精確的時空數(shù)據(jù)預測模型預測邊緣端物聯(lián)網(wǎng)節(jié)點的感知數(shù)據(jù),并且在物聯(lián)網(wǎng)節(jié)點根據(jù)數(shù)據(jù)的統(tǒng)計特征和時間相關性,將感知數(shù)據(jù)分類和稀疏化編碼,然后發(fā)送到邊緣服務器。在邊緣服務器,利用壓縮感知算法將類別數(shù)據(jù)壓縮后,通過最短路徑發(fā)送給云服務器,作為異常檢測的評判標準。下面將詳細介紹物聯(lián)網(wǎng)節(jié)點、邊緣服務器和云服務器上的執(zhí)行操作和異常感知數(shù)據(jù)路由的過程。
在物聯(lián)網(wǎng)中,物聯(lián)網(wǎng)節(jié)點實時感知環(huán)境信息以獲得數(shù)據(jù),這些感知數(shù)據(jù)構(gòu)建了一個時間序列數(shù)據(jù)。當前時刻的感知數(shù)據(jù)與前一些時刻的感知數(shù)據(jù)有很強的相關性,并且差值可能非常小甚至可能是相等的。按照一定的區(qū)間間隔將其劃分到不同的區(qū)間之后,相鄰時隙的感知數(shù)據(jù)很可能屬于相同的區(qū)間,其類別值可能是一致的。通常情況下在工業(yè)應用中,感知數(shù)據(jù)的類別值的比特數(shù)遠小于感知數(shù)據(jù)的比特數(shù),并且根據(jù)實際應用的需求,自適應地調(diào)整二進制編碼的長度比,用8 bit的固定長度的二進制編碼表示感知數(shù)據(jù)的類別,會使用更少的比特數(shù)?;谝陨戏治觯ㄟ^以下策略將感知數(shù)據(jù)編碼為稀疏的二進制類別數(shù)據(jù)。
首先,根據(jù)數(shù)值區(qū)間將感知數(shù)據(jù)劃分到相應的類別中。利用歷史數(shù)據(jù)的統(tǒng)計特征,將感知數(shù)據(jù)的類別進行稀疏化編碼。假設根據(jù)實際應用需求,需要按照(0,100),(100,200),(200,300),(300,400),(400,500)和(500,+∞),這6個數(shù)據(jù)區(qū)間將感知數(shù)據(jù)進行類別劃分。由于區(qū)間的個數(shù)是6,感知數(shù)據(jù)的類別所對應的二進制編碼為000,001,010,100,011,101,110和111。通過統(tǒng)計歷史時隙的感知數(shù)據(jù),這6個數(shù)據(jù)區(qū)間的頻數(shù)分別為1 000 000,100 000,10 000,1 000,100和10?;跀?shù)據(jù)區(qū)間所對應的二進制編碼和歷史數(shù)據(jù)所屬區(qū)間的頻數(shù),感知數(shù)據(jù)的區(qū)間和稀疏的二進制類別數(shù)據(jù)一一映射,將感知數(shù)據(jù)進行類別劃分并實現(xiàn)對類別數(shù)據(jù)的稀疏化編碼。例如區(qū)間(0,100)的二進制類別編碼為001,區(qū)間(100,200)的二進制編碼為010,具體的區(qū)間和類別編碼之間的映射關系如表2所示。
表2 數(shù)據(jù)區(qū)間和二進制類別數(shù)據(jù)之間的映射表Tab.2 Mapping table between data interval and binary category data
針對確定的應用場景,該過程只需要經(jīng)過簡單的判斷即可將感知數(shù)據(jù)編碼為二進制類別編碼,因此,該代碼能夠在資源受限的智能終端完成。
感知數(shù)據(jù)的類別數(shù)據(jù)被稀疏化編碼完成后,網(wǎng)絡中會存在很多稀疏的二進制類別數(shù)據(jù),促使基于簇的壓縮感知算法在類別數(shù)據(jù)聚集過程中的應用?;诖氐奈锫?lián)網(wǎng)如圖1所示,圖1中黑點代表智能終端,藍色的塔代表邊緣服務器,藍色的云代表一個云服務器,CS代表利用壓縮感知算法壓縮類別數(shù)據(jù)。
首先,根據(jù)物聯(lián)網(wǎng)節(jié)點所在的位置,將網(wǎng)絡區(qū)域劃分為多個簇。在每個簇中,邊緣服務器收集智能設備的稀疏二進制類別數(shù)據(jù),然后利用壓縮感知算法壓縮類別數(shù)據(jù)生成CS測量值,并通過最短路徑將其發(fā)送到云服務器,云服務器利用基追蹤算法(BP)將其解壓后得到所有類別數(shù)據(jù)。
假設在物聯(lián)網(wǎng)區(qū)域內(nèi)部署N個物聯(lián)網(wǎng)節(jié)點,編號1~N,并且這些物聯(lián)網(wǎng)節(jié)點的感知數(shù)據(jù)的類別可以用向量x表示,即x=[x1,x2,…,xi,…,xn],其中xi代表第i個物聯(lián)網(wǎng)節(jié)點的類別數(shù)據(jù),且它的長度是d。例如,如果xi是001,那么d的值是3。如果在x中非0元素個數(shù)是k,那么數(shù)據(jù)x是k稀疏的(如果xi是001,那么k的值是1)。因此,在已知物聯(lián)網(wǎng)節(jié)點的個數(shù)N、類別數(shù)據(jù)的長度d以及類別數(shù)據(jù)的稀疏度k的前提下,可以計算最小的測量數(shù)Mmin:
(5)
式中,a,b,c,d是常數(shù)。根據(jù)M(M≥Mmin)和N(代表數(shù)據(jù)x的長度)的值,利用隨機數(shù)生成器,在每一列中隨機生成一系列確定個數(shù)的非零元素,從而構(gòu)成一個M行N列的稀疏二進制矩陣,作為測量矩陣Φ(Φ∈RM×N(K 在已知向量y和矩陣Φ的情況下,精確地重構(gòu)稀疏的類別數(shù)據(jù)x的過程能夠轉(zhuǎn)換成如下所示的l1-norm最小化問題: (6) 在已知測量矩陣和類別數(shù)據(jù)的情況下,利用矩陣乘法即可得到壓縮后的CS測量值。該過程只需要乘法和加法計算,因此數(shù)據(jù)壓縮過程非常簡單,可以在邊緣服務器上快速完成。 在云服務器上,部署一個精確的時空數(shù)據(jù)預測模型,預測未來時隙的感知數(shù)據(jù)。以智能交通系統(tǒng)為例,不同傳感器所測量不同時隙的車流量數(shù)據(jù)之間具有動態(tài)的時空相關性。為了學習歷史車流量數(shù)據(jù)中的時間和空間特征,基于Attention的時空圖卷積神經(jīng)網(wǎng)絡模型(ASTGCN)被提出來[7]。它能夠同時考慮數(shù)據(jù)的時空相關性、數(shù)據(jù)在時間維度上的周期性和趨勢性,從而更精確地預測未來時隙的車流量。如圖2所示,ASTGCN模型主要包括3個獨立的組件,分別抽取近期、日周期和周周期的數(shù)據(jù)特征。每個組件包括6個主要部分:①Tattention,一個時間attention機制,有效地獲取車流量數(shù)據(jù)的動態(tài)的時間相關性;②Sattention,一個空間attention機制,有效地獲取車流量數(shù)據(jù)的動態(tài)的空間相關性;③GCN,一個圖卷積網(wǎng)絡,有效地獲取圖結(jié)構(gòu)數(shù)據(jù)的空間特征;④Tconv,一個時間維度的卷積網(wǎng)絡,獲取相鄰時隙的數(shù)據(jù)的時間依賴;⑤Rconv,一個殘差卷積網(wǎng)絡,優(yōu)化模型的訓練效率;⑥FC,一個標準全連接網(wǎng)絡,保證模型的輸出維度與預測目標的維度一致。 圖2 ASTGCN框架Fig.2 The framework of ASTGCN 圖2中Dhour代表最近時隙訓練數(shù)據(jù),Dday代表日周期的訓練數(shù)據(jù),Dweek代表周周期的訓練數(shù)據(jù),D12代表接下來12個時隙的預測值,Tattention代表時間attention,Sattention代表空間attention,GCN代表圖卷積網(wǎng)絡,Tconv代表時間卷積,Rconv代表殘差卷積,F(xiàn)C代表標準的全連接。假設當前的時隙是T0,預測窗口的大小是Tp,網(wǎng)絡中所有節(jié)點在過去τ時間片內(nèi)的歷史數(shù)據(jù)為X,將臨近于預測時隙的車流量數(shù)據(jù)Th作為最近時隙組件的輸入,即Dhour;將前一天同一時間段內(nèi)的車流量數(shù)據(jù)Td作為天組件的輸入,即Dday;將上一周同一天同一時間段內(nèi)的車流量數(shù)據(jù)Tw作為周組件的輸入,即Dweek。需要注意的是,Dhour,Dday和Dweek這3個輸入的長度是Tp的整數(shù)倍(本文中Dhour是Tp長度的3倍,Dday和Dweek長度是Tp長度的1倍)。通過利用這3個組件分別從輸入數(shù)據(jù)中抽取數(shù)據(jù)的最近、天周期以及周周期特征,將這些特征傳輸給全連接層,全連接層基于歷史數(shù)據(jù)中學到的權重融合這些特征,得到預測值D12。 感知數(shù)據(jù)同步算法1如下所示。 算法1:感知數(shù)據(jù)同步輸入:d(i)0:第i個物聯(lián)網(wǎng)節(jié)點在當前時隙的感知數(shù)據(jù)輸出:在不降低應用的服務質(zhì)量的前提下對邊緣網(wǎng)絡進行實時監(jiān)控和異常檢測。算法流程:1:for allndi∈all_nodedo2: L(ndi)0←value2label(d(ndi)0)3: upload(L(ndi)0,eni)4:end for5:for all eni∈edge_nodedo6: ki←cal_sparse(eni.L0)7: Mi←a*ki*logd*Niki+b +c8: ifMi 對于每個物聯(lián)網(wǎng)節(jié)點,當前時隙的感知數(shù)據(jù)被采樣后,通過3.1節(jié)介紹的數(shù)據(jù)分類和編碼方法將感知數(shù)據(jù)編碼為二進制類別數(shù)據(jù),然后通過路由樹將其路由到相應的邊緣服務器(行1~4)。在每個邊緣網(wǎng)絡中,邊緣服務器利用3.2節(jié)介紹的壓縮感知算法將類別數(shù)據(jù)壓縮后通過最短路徑上傳到云服務器。為了保證壓縮感知算法的有效性,根據(jù)數(shù)據(jù)的稀疏度來決定是否壓縮類別數(shù)據(jù)。如果數(shù)據(jù)的稀疏度滿足一個確定的條件(行6~8),將數(shù)據(jù)壓縮后上傳到云服務器;否則,直接通過路由樹將類別數(shù)據(jù)上傳到云服務器(行5~15)。 在云服務器,通過利用預訓練的ASTGCN模型,基于歷史數(shù)據(jù)預測當前時隙的感知數(shù)據(jù)。為了檢測預測值的類別是否與真實值所屬的類別一致,以智能設備和邊緣服務器相互協(xié)作的方式將類別數(shù)據(jù)上傳到云服務器,云服務器將其作為判斷預測值準確性的標準。具體步驟如下: (1) 按照與邊緣端IoT節(jié)點相同的編碼策略,將預測值映射為類別數(shù)據(jù)(行16~19); (2) 預測值的類別與邊緣端上傳的類別的對比: ① 如果預測值的類別與邊緣端上傳的類別相等,用預測值更新歷史數(shù)據(jù); ② 如果預測值的類別與邊緣端上傳的類別不相等,預測值不能被用來代替真實值。同時,云服務器通知相應的物聯(lián)網(wǎng)節(jié)點上傳該時隙的感知數(shù)據(jù),并利用真實值更新歷史數(shù)據(jù)(行20~25)。 通過2.2節(jié)的能量模型計算網(wǎng)絡中數(shù)據(jù)傳輸?shù)哪芰肯?。網(wǎng)絡的能耗主要用于以下3個過程(包括數(shù)據(jù)傳輸和接收): ① 智能設備發(fā)送kbit的數(shù)據(jù)包給邊緣服務器并且邊緣服務器接收kbit的數(shù)據(jù)包。 ② 邊緣服務器發(fā)送kbit的數(shù)據(jù)包給一跳物聯(lián)網(wǎng)節(jié)點并且一跳的物聯(lián)網(wǎng)節(jié)點接收kbit的數(shù)據(jù)包。 ③ 物聯(lián)網(wǎng)節(jié)點發(fā)送kbit的數(shù)據(jù)包給云服務器,但是云服務器接收該數(shù)據(jù)包的能量消耗可以忽略不計。 實驗在筆記本電腦中進行配置,采用Intel(R) Core(TM) i7-7700 CPU 2.80 GHz,16 GB內(nèi)存,64位Windows操作系統(tǒng),Python編寫實驗。 加利福尼亞的高速公路數(shù)據(jù)集PeMSD4由加州運輸性能測量系統(tǒng)(PeMS)收集,該網(wǎng)絡中有307個物聯(lián)網(wǎng)節(jié)點。為了收集在2018年1—2月期間該高速公路上的車流量數(shù)據(jù),每個物聯(lián)網(wǎng)節(jié)點每隔5 min采樣一次感知數(shù)據(jù)。最后,在307個物聯(lián)網(wǎng)節(jié)點中,每個物聯(lián)網(wǎng)設備都有16 992個感知數(shù)據(jù)。 一個物聯(lián)網(wǎng)中有307個物聯(lián)網(wǎng)節(jié)點和一個云服務器,設備分布在100 m×100 m的區(qū)域中。該區(qū)域中,物聯(lián)網(wǎng)節(jié)點均勻或者以0%,10%或20%的偏度部署,云服務器位于該區(qū)域的中心(50 m,50 m)或者邊界(100 m,50 m)。為了保障網(wǎng)絡的連通性,將通信半徑設置為35 m,并將簇數(shù)設置為1,25和64。在壓縮感知算法中,測量數(shù)為: (7) 式中,N代表物聯(lián)網(wǎng)節(jié)點的個數(shù);k代表類別數(shù)據(jù)的稀疏度。文獻[10]中,類別數(shù)據(jù)的長度比本文中的類別數(shù)據(jù)的長度更大。因此,Mmin的值更大,數(shù)據(jù)恢復的精度更高。本文實驗的參數(shù)設置如表3所示。 表3 實驗參數(shù)設置Tab.3 Experimental parameter setting 本文通過和DBP方法對比進行驗證,實驗結(jié)果如圖3所示。 圖3 在不同偏度和云的位置的情況下DBP機制和本文的方法(CCS&ASTGCN)的能耗比較Fig.3 Comparison of energy consumption of DBP and CCS&ASTGCN mechanism with various skewness of nodes distribution and locations of the cloud 由圖3可以看出,在物聯(lián)網(wǎng)節(jié)點和云服務器位置相同的情況下,本文的機制比DBP機制消耗更少的能量。導致該現(xiàn)象的主要原因不是路由到云服務器的感知數(shù)據(jù)量的減少,而是模型參數(shù)不需要路由到云服務器。實驗表明,DBP數(shù)據(jù)預測模型的精度與ASTGCN數(shù)據(jù)預測模型的精度相近,使這2種策略路由到云服務器的感知數(shù)據(jù)的數(shù)量相等。然而,作為一種神經(jīng)網(wǎng)絡模型,ASTGCN模型不需要實時更新模型參數(shù)。當預測值不滿足某些應用的需求時,不需要將ASTGCN模型參數(shù)路由到云服務器,使網(wǎng)絡中傳輸?shù)臄?shù)據(jù)量大幅度地減小,從而使本文的算法更節(jié)能。 為了驗證本算法的有效性,將其與PCA策略進行對比,實驗結(jié)果如圖4所示。 圖4 在不同偏度和云的位置的情況下PCA機制和本文的方法(CCS&ASTGCN)的能耗比較Fig.4 Comparison of energy consumption of PCA and CCS&ASTGCN mechanism with various skewness of nodes distribution and locations of the cloud 由圖4可以看出,在物聯(lián)網(wǎng)節(jié)點分布偏度和云服務器位置相同的情況下,本文的機制比PCA策略更節(jié)能。主要是因為PCA策略中,邊緣服務器實時地將壓縮后的感知數(shù)據(jù)上傳到云服務器。本文策略中,邊緣服務器實時地將壓縮后的類別數(shù)據(jù)上傳到云服務器,只有當預測值不滿足應用需求時,云服務器才通知相應的邊緣設備上傳該時隙的真實值。因此,減少了大量的感知數(shù)據(jù)在網(wǎng)絡中的傳輸。然而,與PCA策略相比,類別數(shù)據(jù)會產(chǎn)生額外的能耗。通常情況下,相比于感知數(shù)據(jù),類別數(shù)據(jù)有更少的比特數(shù),產(chǎn)生更少的能耗。因此,由類別數(shù)據(jù)傳輸所增加的能耗遠小于感知數(shù)據(jù)減少所節(jié)約的能耗,使本文的策略比PCA策略更節(jié)能。 本文創(chuàng)新性地提出了一種邊緣云協(xié)作下異常感知數(shù)據(jù)分級收集方法,提高網(wǎng)絡能效。在本文所提出的算法中,對于每個邊緣網(wǎng)絡,在邊緣服務器使用壓縮感知算法對類別數(shù)據(jù)進行壓縮,然后通過最短路徑將其路由到云服務器。在云服務器中,利用預訓練的基于Attention的時空圖卷積神經(jīng)網(wǎng)絡模型對邊緣端的感知數(shù)據(jù)進行預測。當預測值的類別與感知值的類別不同時,云服務器才會通知相應的物聯(lián)網(wǎng)節(jié)點上傳該時隙的感知數(shù)據(jù)。通過利用該機制連續(xù)地收集感知數(shù)據(jù),支持環(huán)境監(jiān)控。實驗結(jié)果表明,本文提出的算法在能耗方面優(yōu)于DBP方法。因此,本文的方法是可行且節(jié)能的。3.3 感知數(shù)據(jù)預測
3.4 異常感知數(shù)據(jù)路由
3.5 能量計算
4 結(jié)果評估
4.1 數(shù)據(jù)集
4.2 實驗設置
4.3 實驗結(jié)果
5 結(jié)束語