段懿洋,任海英,何 曉
(中國船舶工業系統工程研究院 海洋智能技術創新中心,北京 100070)
水面無人艇(Unmanned Surface Vessel,USV)具有成本低、魯棒性強和智能化程度高等特點,已經被廣泛應用在海洋資源勘探、海洋空間探測、海岸監測[1]、海洋災害搜救、海上巡邏和現代海上作戰等領域[2]。隨著物聯網技術在艦船領域的應用[3],USV 比以往搭載了更多的傳感器(如聲吶、各種成像系統、海洋數據采集傳感器和武器載荷等)和通訊設備(如多模態衛星通訊設備、航跡動態監測設備等)。大量的艦載傳感器產生海量傳感數據,特別是船舶航行異常檢測應用的實時數據,對USV 通信網絡的實時數據分發能力提出了新的挑戰。
近年來,USV 逐漸成為國內外艦船領域的一個研究熱點。USV 通信網絡作為海洋通信網絡的一個子分支,采用全球海上遇險與安全系統(Global Maritime Distress and Safety System,GMDS)[1]可以為USV 提供數據傳輸速率為9.6 kB/s 的通信鏈路。GMDS 是唯一一種當前大規模商用的USV 通信網絡。為了提高進一步提高USV 通信的數據傳輸速率,文獻[2]結合蜂窩技術和短波無線電技術,提出一種海事寬帶系統(Fleet Broadband System,FBS),將數據傳輸速率提高到432 kB/s。隨著物聯網的引入和船聯網的搭建,單純提高數據傳輸速率已經無法保證海量傳感器條件下的USV 通信數據分發性能,更無法保證網絡實時性。為了應對高采樣率和高數據編碼率的海量傳感器數據,Rabab 等人于2017 年提出一種艦船Ad-hoc 網絡,提供高速海洋傳感數據采集和實時制圖能力[3]。對于USV 通信網絡實時性的優化,現有的方法主要采用提升單條數據鏈路傳輸速率[1-2]或者通過自組織網絡降低主干鏈路網絡通塞[3]等方式。
當前,對于現有大部分USV 上層應用來說,仍采用USV 分布式傳感數據上傳和云端集中式數據計算的模式。這種數據分發模式容易受到USV 增加造成的基站通信瓶頸。因此,本文提出一種基于邊緣計算的USV 通信網絡數據分發機制(Communication Data Delivery Mechanism,CDDM)。該方法使用邊緣計算技術,減少海量傳感數據對接入蜂窩網絡或者衛星通信網絡的通信瓶頸,傳感數據本地計算,不再上傳云端。
USV 邊緣計算架構可以為USV 通信網絡提供實時計算和高數據速率傳輸能力。本文設計了一種USV 邊緣計算架構,如圖1 所示。該架構USV、移動邊緣計算陣列、回程網絡和云服務器組成。在USV 邊緣計算架構中,支撐USV 各種應用的復雜計算模型運行在邊緣服務器中,而不是運行在遠端云服務器中。
本章節主要包括3 個部分。首先,對本文提出的CDDM 進行概述,具體闡述了CDDM 的數據交互方式,計算模型部署和CDDM 計算流程等。其次,采用數據壓縮率建立面向邊緣計算的最優數據分發模型,實現數據分發最優化。再次,建立數據壓縮率與數據壓縮步長閾值映射。最后,提出一種USV 動態平均數據壓縮方法。
CCDM 由主要3 個部分構成(見圖2),分別為數據分發(序號1)、數據壓縮率匹配(序號2)和數據壓縮(序號3)。USV 運行3 項功能,傳感器數據采集、數據編碼匹配和數據壓縮;邊緣服務器運行數據分發和具體的模型計算;云端服務只進行模型計算結果的分析和同步,以便其他客戶端和用戶調用。

圖 1 USV 邊緣計算架構Fig.1 USV edge computing architecture.

圖 2 CDDM 計算流程Fig.2 Computation flow of CDDM.
根據文獻[4],數據壓縮率的高低可以直接決定模型準確率性能,并且呈現正相關特性。因此,本文通過最大化USV 通信網絡整體數據壓縮率,來建立最優數據分發公式。這樣既可以最優化數據分發,也可以保證模型計算精度。數據分發方法包含基站匹配、服務器分組和優化分發等3 個子程序。
1)基站匹配。該部分功能實現USV 數量與基站接入USV 數量的關系匹配,對每個基站連接USV 數量和規則進行定義和設計。

USV 與基站匹配規則:首先,USV 的網絡通信范圍內所有基站構建一個通信集合。在通信集合中,USV隨機選擇一個基站,發送建立鏈路請求消息。這個消息包括USV 編號和數據傳輸速率等標識信息。然后,基站按照收到USV 消息先后建立USV 通信隊列。在通信隊列中,滿足式(1)的USV,基站反饋應答消息,包含確認連接和基站編號等;不滿足式(1)的USV,基站反饋不建立連接和基站編號的應答消息。再次,未建立連接的USV,將拒絕的基站編號剔除出通信集合,隨機選擇下一個基站發送請求連接。重復上述步驟,直到所有USV 和基站關系都滿足式(1),并且每個USV 均與一個基站構建通信鏈路。
2)服務器分組。為了提高每個基站的邊緣服務器利用率,本文將每個基站連接的邊緣服務器劃分不同計算能力分組,用來提供差異有化硬件計算基礎。這種分組可以讓不同數據傳數據率和數據壓縮率的USV 數據得到當前網絡條件下的最優數據分發。
設 G ={G(1),G(2),···,G(m)}為每個基站邊緣服務器分組集合,共分為 m組 。為每個基站實際接入USV 數量, g(m )為每個分組的邊緣服務器數量,g (m)按照式(2)計算每組邊緣服務器數量,式(2)如下:

3)優化分發。
在本文中,邊緣計算的數據分發問題,可以轉化為一個整型非線性規劃問題,也是一個NP 難點問題。該子程序通過最大化數據壓縮率來確定優化分發,數據壓縮率構建USV 通信數據分發最優化問題可以表示為:

其中: τi為第 i 個USV 的數據壓縮率; v為接入當前基站的USV 數量。
當最優化 Υ 時,USV 通信網絡數據分發效率實時性最好。為了求解式(3),本文給出了求解的幾個限制條件,限制條件給最優壓縮率求解、數據分發最優化提供了求解條件,分別如下:


其中,式(4)中, ti表示第 i個USV 數據的完成時間,由前一個數據的傳輸時間和當前數據的計算時間組成; Z為數據大小,每個USV 每次發送的數據大小相同,單位MB;式(5)和式(6)中,和分別每個分組的數據傳輸速率(MB/s)和數據處理速率(MB/s)。和為每組中第 b個邊緣服務器的傳輸速率和計算速率。
式(8)中K 為每個數據的截止時間。對于式(9)來說, Ha,m為匹配矩陣,當第 a個USV 的數據被分配到 第 m 組邊緣 服 務 器組 上 時, Ha,m=1; 否則, Ha,m被賦值為0。
為了求解 Υ,設每個USV 的初始數據壓縮率均相等,即 τ1=τ2=τ3=···=τi=β。采用同一計算模型完成計算任務,則對于每個邊緣服務器來說,是一個確定的值。但是,由于計算能力的不同,每個不一定相等。
本文采用貪婪算法對 Υ進行求解。貪婪算法具體求解步驟如下:
步驟1根據式(4),計算每個USV 數據的完成時間ti。
步驟2如所有的ti,均滿足式(8)的條件,則根據當前數據分發方案,計算當前所有USV 的數據壓縮率之和。隨后,重新調整分配方案,重新計算 f(τ)的結果。直到計算完所有數據分發方案,比較所有分發方案下的 f(τ), 則最大的 f(τ)那組分發方案對應的數據壓縮率為最優編碼率,同時,這組分發方案為最優分發。
步驟3如果有USV 的完成時間不滿足式(8),則降低該USV 的數據壓縮率,即 β- 0.5。然后重新計算步驟2,直到所有 ti滿足式(8)。
步驟4根據步驟1-步驟3,得到每個USV 的最優數據壓縮率 τi*和最優數據分發矩陣。
通常,數據壓縮率是由壓縮算法和壓縮標準設定,無法進行自定義更改。但是,文獻[5]指出,采用算術編碼作為核心壓縮方法時,通過改變被壓縮數據步長,可以更改算術編碼的間隔分布概率,從而更改壓縮率。基于這個原因,本文設計了最優數據壓縮率和壓縮步長的閾值映射關系,通過改變步長適應不同的數據壓縮率。
經過多次仿真實驗,我們得到如下閾值映射規則。當 τi*∈(0-0.2] 時, Wi=2 ;當 τi*∈[0.3-0.5]時,Wi=4 ;當 τi*∈[0.6-0.8]時 , Wi=6 ;當τi*∈[0.9-1.0)時, Wi=10。USV 數據壓縮匹配是為了實現2.3 節的最優數據壓縮率與數據壓縮步長的閾值映射關系。通過這個映射關系,最優數據分發條件下的數據壓縮率可以動態調整實際數據壓縮率。
本文提出一種基于海洋數據壓縮算法(Marine Data Compression Algorithm,MDCA)的USV 動態平均數據壓縮方法(Dynamic Average Data Compression,DADC)。在該算法中,每 η個數據為一個數據分割,每個分割數據的第1 個數據作為該分割的先驗參考數據。USV 動態平均數據壓縮方法如下:
步驟1剩余平均數(Rest Average,RA)計算。設 RAi,κ表示第 i 個USV 數據 的 第 κ個分割中除 了 第1 個參考數據之外所有數據的平均值,公式如下:

其 中, Xκ,t+j為 第 κ 個 分 割 中 的 第 t+j 個 數 據。 Wi第 i個USV 的數據壓縮步長。
步驟2偏差(Deviation,D)計算。設 Di,κ表示每個分割中先驗參考數據的偏差,用式(11)表示,如下:

其中, Xκ,1為每個分割中的第1 個數據,也是先驗參考數據。至此,每 η個數據被壓縮為 RAi,κ和 Di,κ兩個數據。
步驟3將 RAi,κ和 Di,κ采用算術編碼方式進行編碼,并傳輸到邊緣節點。
仿真場景:本文實現場景1 和場景2 兩個仿真環境。場景1 為本文第1 節中設計的USV 邊緣計算架構。場景2 作為對比的USV 云計算架構。
仿真內容:為了對本文提出的數據分發機制進行有效和公正的評估,本文參考文獻[7]實現一種基于多尺度卷積的USV 異常航行檢測模型。該模型采用USV 中傳感器計算的經度、緯度、對地速度和對地航向等4 個數據作為特征向量,實現USV 的異常行駛和正常行駛2 種檢測分類。
仿真實驗參數設置如下:設置USV 數量分別為200,400,600 和800,基站數250(其中,包含350 個移動基站和150 個衛星基站)。每個基站可以同時接入2 個USV。每個USV 發送的數據大小 Z= 15MB,每個USV 的壓縮速率初始值 τ1=τ2=τ3=···=τi=0.5。在已知USV 異常行駛檢測模型和硬件資源的條件下,每個邊緣服務器或者云服務器的計算率均可視為常數。邊緣端和云端服務器硬件配置如表1 所示。

表 1 算法運行平臺硬件配置Tab.1 Hardware configuration of the algorithm operation platform.
本文采用平均分發延遲(Average Delivery Delay,ADD)和平均信息交付率(Average Information Delivery Rate,AIDR)作為評估參數。平均是指當前USV數量下每個USV 發送2 次數據包的對應評估參數的平均值。
本文提出的方法與當前2 個先進的數據分發方法進行對比分析。在USV 邊緣架構下,本文實現了2 種最新的USV 數據分發方法,分別為基于數據重排的數據分發方法(Data Rearrangement-based Data Delivery,ARDD)[8]和自適應實時數據分發機(Adaptive Realtime Data Distribution Mechanism,ARDDM)[9]。ARDD 按照當前網絡性能高低進行數據重新排序,從而決定數據分發次序。ARDDM 采用傳感器預測模型實現語義感知通信降低原始數據量,提高數據分發實時性。
3.3.1 USV 邊緣架構與云架構實時性對比
本文采用分發延遲對架構實時性進行量化。數據分發延遲是指USV 向邊緣端或者云端發送數據與USV 從邊緣端或者云端接收數據的時間差值。
如圖3 可以看出,本文提出的CCDM 在邊緣計算架構下的數據分發延遲(圖3 中用實心點表示的線條)遠遠小于云計算下的數據分發延遲(圖3 中用叉表示的線條)。當網絡中USV 接入數量小于500 時,邊緣計算和云計算數據分發延遲趨勢基本一致。但是,當接入網絡的USV 數量超過500 時,邊緣計算的數據分發延遲逐漸提升,USV 數量超500 之后,數據分發延遲維持在一個區間波動,保持網絡性能穩定。但是整體延遲較500 之前有明顯提升。因此,造成網絡性能降低,延遲增加。

圖 3 邊緣計算與云計算數據分發延遲比較Fig.3 Comparation of data delivery between edge computing and cloud computing.
綜上,本文提出的邊緣架構下的CCDM 可以顯著降低USV 通信數據分發延遲,相比云計算架構下的CCDM 實時性更好,網絡性能更穩定。
3.3.2 邊緣架構下不同算法實時性對比分析
ADD 是所有USV 發送和接收兩次數據包的數據分發延遲平均值。比如,當USV 數量為200 時,ADD為200 個USV 發送2 個數據包,并獲得計算結果的延遲平均值。
圖4 為本文提出的CDDM、ARDD[15]和ARDDM[16]等3 種算法在不同USV 接入數量條件下的ADD 對比結果。從圖4 中可以直觀地看出,在不同USV 數量下,CDDM 算法的ADD 均低于30 ms,CDDM 采用最優分配方式,會兼顧網絡整體性能提升個體數據分發效率;在ARDD 中,USV 數量為200 時,CDDM 與ARDD 的ADD 相近,而USV 數量為400-800 時,ARDD 的ADD 逐漸增加。這是因為ARDD 是以數據重排為基礎,隨著接入USV 數量增加,待排序數據量增加,從而導致ADD 隨之增加。很明顯,CDDM 的ADD 性能明顯優于ARDD。對于ARDDM 來說,ARDDM 在200 個USV 接入的情況下,ADD 超過了400 個USV 接入的情況。
綜上,本文提出的CDDM 的實時性,分別比ARDD和ARDDM 提升了57.24%和70.49%。

圖 4 3 種算法的平均分發延遲對比Fig.4 Average delivery delay between three algorithms.
3.3.3 USV 邊緣架構下不同數據分發算法信息交付率
為了更全面的評估算法的數據分發性能,本文采用AIDR 來進一步衡量算法數據分發性能。AIDR 被定義為,在傳輸周期內,當前網絡中所有USV 發送數據經過數據分發算法分配是否成功交付所分配的邊緣服務器的成功交付的比例。
如表2 所示,USV 數量從200 增加到800,CDDM的AIDR 均保持在81.32%到83.26%之間,浮動誤差為1.94%。而ARDD 和ARDDM 的浮動范圍分別為68.21%到86.47%,54.27%到79.54%,對應浮動誤差分別為18.26%和25.27%。由于CDDM 采用全局優化策略,因此USV 接入數量的改變不會對AIDR 產生計算負擔影響。對于ARDD 和ARDDM 來說,USV 數量的增加對它們的計算負擔增加,同時,局部最優無法有效抑制USV 數量動態增加導致的無法收斂到最佳分配策略。因此,CDDM 相比ARDD 和ARDDM 來說,具有更好的AIDR 性能,并且分別提高了9.81%和27.75%。
1)本文設計了一種USV 邊緣計算架構,解決了海量USV 與基站接入的問題。2)提出了基于邊緣計算的USV 通信數據分發機制,該機制構建USV 最大編碼率方程,采用貪婪算法,以數據傳輸速率、計算速率和截止時間等為限制條件,得到USV 數據在邊緣計算架構下的最優數據分發方案。3)在本文設計的邊緣架構下,仿真實驗結果表明,與ARDD 和ARDDM算法相比,本文提出的CDDM 的實時性分別提高了57.24%和70.49%,信息交付交付率提高了9.81%和27.75%。因此,本文提出的CDDM 可以提高USV 通信網絡數據分發性能。相比于傳統云計算方式相比,本文提出的USV 通信數據分發機制具有實時性高的特點。