陳明陽
(北京郵電大學 信息與通信學院, 北京 100876)
近年來無人機越來越多的應用于鐵路線路、長大橋隧等基礎設施及一些維修人員難以進入的區(qū)域,特別是在通信設施匱乏的地區(qū),應用無人機進行鐵路安全監(jiān)測尤為必要。無人機一方面可用作空中基站,增強無線網絡覆蓋、容量、可靠性和能效;另一方面,還可用作蜂窩網絡內的飛行移動終端。事實上,特別是在通信信號弱的地區(qū),比如川藏鐵路的山區(qū)、長大鐵路隧道中、信號強度弱的區(qū)域,無人機輔助通信可以全方位覆蓋,為現存通信基礎設施提供無空隙服務[1]。因此,研究基于SCA鐵路安全監(jiān)測用無人機云計算算法具有十分重要的意義,為無人機在鐵路安全監(jiān)測中應用提供理論基礎和技術支撐。進一步研究包括優(yōu)化無人機的飛行能力與路徑,結合無人機提供通信信道的特點,挖掘出無人機未來在鐵路通信領域的更大潛力尤為重要。事實上,無人機輔助無線通信提供了一種有前途的解決方案,可為沒有基礎設施覆蓋的設備提供無線連接,因此,基于SCA的鐵路安全監(jiān)測用無人機云計算優(yōu)化算法的研究勢在必行。
相對于傳統(tǒng)云計算的架構,比如地面云計算網絡,無人機云計算結構有更加顯著的優(yōu)勢。無人機可以在任意場景下提供云計算服務,比如沙漠、高原或者地理環(huán)境比較復雜多變的地方,而這些地方是不能建立地面云計算服務器的。無人機的計算能力要更加優(yōu)越,并具有更短的時延,因為短距離的line-of-sight更容易得到保障。無人機的軌跡可以根據不同任務進行優(yōu)化,以更好的提高計算性能,而傳統(tǒng)網絡的可塑性較弱。基于上述優(yōu)點,國際上許多科研機構已經啟動了無人機云計算相關項目的研究,并將其投入使用。
本文擬采取的優(yōu)化方案是配置一個移動無人機,并向鐵路移動設備提供計算卸載服務。無人機云計算問題可以簡化為一個優(yōu)化問題,即在一定邊界條件下,比如無人機飛行能力,包括距離、速度等;無人機數據傳輸能力等一系列條件下,通過優(yōu)化無人機飛行軌跡與傳輸數據分配,以得到最優(yōu)解。本文研究的問題是非凸優(yōu)化問題,通過Successive Convex Approximation(SCA)算法,將其變?yōu)槭諗康牡鷨栴},從而得解。SCA優(yōu)化算法是通過連續(xù)的迭代,并且保證收斂性,以獲得局部最小點。通過將原本非凸優(yōu)化問題經過一系列近似,變?yōu)橥箖?yōu)化問題,再使用SCA算法優(yōu)化。這種算法避免了代價極大的全局優(yōu)化,對于整體算法的性能有一個很大的提升。
基于SCA鐵路安全監(jiān)測用無人機云計算優(yōu)化算法的研究包括:外部限制條件與優(yōu)化問題的建模和非凸優(yōu)化問題的優(yōu)化兩個部分。
對于鐵路用鐵路安全監(jiān)測用無人機飛行的限制有幾方面,由于無人機飛行技術的限制,導致無人機的飛行速度是有限制的。所以在優(yōu)化無人機軌跡的同時,要考慮相關速度限制。無人機在第n個時間間隔內的飛行速度為式(1)[2]:
(1)

因為上述無人機飛行速度限制,可以得到表達式(2)[2]:
(2)
式中,vmax為最大飛行速度,m/s。
對于無人機總體的飛行,需要在指定的時間T內完成指定路程,所以可以得到式(3)對于速度的限制[2]:
(3)


(4)

繼續(xù)推導得到計算卸載所需的計算能量為式(5)[2]:
(5)

為簡單起見,本文只假設了3個移動用戶。無人機總體的能量限制比較簡介,只需要在全部N個時間間隔內,無人機飛行能量,無人機傳輸信息能量,與無人機本地計算能量的總和小于等于總的能量限制。于是可以得到表達式(6)[3]:
(6)
式中,ε為無人機飛行過程中可得到的總能量。
以上為無人機云計算能量限制。對于無人機傳輸信息的分配,也需要滿足一系列限制條件。比如在任一時刻,無人機接收到的數據要大于等于無人機本地計算的數據,因為無人機云計算本地處理的數據來自于移動用戶向無人機發(fā)送的數據。如果前者大于后者,將會與真實情況矛盾,式(7)。
(7)
對于無人機處理完的數據也有限制。無人機發(fā)送給地面移動用戶的數據要小于等于無人機CPU計算處理之后的數據。同時,幾個待優(yōu)化的傳輸數據變量也要滿足限制條件,式(9)~式(11)[4]為:
(8)
(9)
(10)
(11)
簡而言之,在第n+1個時間間隔無人機云計算本地計算的總數據要小于等于在第n個時間間隔以及之前無人機從移動用戶接收到的總數據。在第n+二個時間間隔之中無人機向移動用戶發(fā)送的數據要不大于n+1時間間隔之前無人機已經計算處理好的數據。

(12)
(13)

(14)
同理,對于無人機能量的限制條件依然可采取相似方法。需要將幾個關于能量函數的非凸表達式用引理轉換為可以在SCA算法中運行的凸函數。首先從比較簡單的無人機計算能量入手,式(15):
(15)

(16)

在人工智能相關領域的研究,Python被經常用來處理一些凸優(yōu)化問題,本文采用MATLAB編寫仿真程序,使用外部庫CVX作為輔助工具,CVX主要是為了解決disciplined convex programs(DCPs)。所謂DCP問題,就是被轉化后的凸優(yōu)化問題。將問題轉化為凸優(yōu)化問題要滿足一系列規(guī)則,如果不滿足規(guī)則,程序將會報錯。CVX也可以解決更加復雜的凸優(yōu)化問題,其中包括很多不可導問題,比如函數的范式。CVX的應用必須確保問題已經變?yōu)橥箖?yōu)化問題,CVX本身并不能轉化非凸函數。如果對非凸函數采用CVX庫將會導致程序報錯。
本文對于無人機計算算法優(yōu)化方案是基于正交方式的信息傳輸。通過采用CVX庫基本實現了對于優(yōu)化算法的仿真。算法的偽代碼如下:

(1) forvin 0:iteration;其中iteration為設定的迭代次數;
(2) Ifz(v)是原優(yōu)化問題最優(yōu)解,break;


(5)v=v+1;

為使用程序的簡要結構。在偽代碼的第三步中,涉及到轉換后的凸優(yōu)化問題。該問題是根據原始模型轉換而來。待優(yōu)化問題如式(17):
(17)
新的邊界條件如式(18)[5]:
(18)
(1)因為無人機供能有限,其飛行與計算卸載受到限制。本文的目標是在滿足通信質量的前提下,使系統(tǒng)能耗最小化。通過使用SCA方法解決了在時延與能耗限制條件下,同時優(yōu)化無人機飛行路徑與上行,下行傳輸,本地計算數據分配等問題。
(2)本文主要研究了鐵路安全監(jiān)測用無人機云計算算法的優(yōu)化,給出了無人機云計算算法相關的理論推導。調研了幾種不同的迭代算法,包括二分查找,牛頓-拉普森導數方法,最終決定比較樸素的SCA算法,SCA算法需要涉及函數全為凸函數。
(3)本文給出的關于鐵路安全監(jiān)測用無人機計算算法的優(yōu)化方案是基于正交的信息傳輸方式,僅進行了初步探討。考慮到程序的運行速度以及性能,具體的優(yōu)化結果有待進一步研究與具體實現。不過,鐵路安全監(jiān)測用無人機云計算的研究可繼續(xù)深化,在未來發(fā)展前景廣闊。