付澍,楊祥月,張海君,陳晨,喻鵬,簡(jiǎn)鑫,劉敏
(1.重慶大學(xué)微電子與通信工程學(xué)院,重慶 400030;2.重慶大學(xué)信息物理社會(huì)可信服務(wù)計(jì)算教育部重點(diǎn)實(shí)驗(yàn)室,重慶 400030;3.北京科技大學(xué)計(jì)算機(jī)與通信工程學(xué)院,北京 100083;4.北京郵電大學(xué)網(wǎng)絡(luò)與交換技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100876)
近年來(lái),物聯(lián)網(wǎng)產(chǎn)業(yè)的飛速發(fā)展,極大地推動(dòng)了無(wú)線傳感器網(wǎng)絡(luò)(WSN,wireless sensor network)技術(shù)的應(yīng)用,其承載的業(yè)務(wù)數(shù)據(jù)量呈幾何式增長(zhǎng)。WSN 中存在大量的數(shù)據(jù)需要被收集,根據(jù)收集方式的不同,可將其分為2 種類(lèi)型,靜態(tài)數(shù)據(jù)收集和移動(dòng)數(shù)據(jù)收集。靜態(tài)數(shù)據(jù)收集是指?jìng)鞲衅骶W(wǎng)絡(luò)中的節(jié)點(diǎn)通過(guò)自組網(wǎng),將自身采集的傳感器數(shù)據(jù)經(jīng)過(guò)多跳上傳到數(shù)據(jù)中心[1];移動(dòng)數(shù)據(jù)收集是指在被監(jiān)測(cè)環(huán)境中設(shè)置一個(gè)可移動(dòng)的數(shù)據(jù)收集器進(jìn)行數(shù)據(jù)收集。針對(duì)部署在地表交通困難的大規(guī)模無(wú)線傳感器網(wǎng)絡(luò),無(wú)人機(jī)提供了一種有效的方式來(lái)對(duì)傳感器設(shè)備移動(dòng)式地進(jìn)行數(shù)據(jù)輔助收集[2]。
無(wú)人機(jī)是我國(guó)人工智能產(chǎn)業(yè)體系的重點(diǎn)培育產(chǎn)品。與靜態(tài)數(shù)據(jù)收集方法相比,基于無(wú)人機(jī)的移動(dòng)數(shù)據(jù)收集可以顯著降低數(shù)據(jù)傳輸?shù)哪芎?,減少多跳間數(shù)據(jù)路由中存在的隱藏終端及其發(fā)送沖突問(wèn)題帶來(lái)的射頻干擾,并有效延長(zhǎng)網(wǎng)絡(luò)的使用壽命。
無(wú)人機(jī)數(shù)據(jù)收集克服了地面數(shù)據(jù)采集的局限性,但仍然有一些關(guān)鍵的問(wèn)題需要解決。具體而言,無(wú)人機(jī)數(shù)據(jù)收集包括網(wǎng)絡(luò)節(jié)點(diǎn)部署、節(jié)點(diǎn)定位、錨點(diǎn)搜索、無(wú)人機(jī)路徑規(guī)劃、網(wǎng)絡(luò)數(shù)據(jù)采集5 個(gè)部分[3]。無(wú)人機(jī)最致命的缺點(diǎn)是續(xù)航時(shí)間短[4-6],因此其能耗問(wèn)題是系統(tǒng)穩(wěn)定性的關(guān)鍵。近幾年,關(guān)于無(wú)人機(jī)在數(shù)據(jù)收集的能耗研究中,無(wú)人機(jī)路徑規(guī)劃是一個(gè)開(kāi)放性的研究課題,引起學(xué)術(shù)界的廣泛關(guān)注。無(wú)人機(jī)路徑規(guī)劃是一個(gè)復(fù)雜的網(wǎng)絡(luò)優(yōu)化問(wèn)題[7],一般可分為全局路徑規(guī)劃和局部路徑規(guī)劃。
一般而言,無(wú)人機(jī)將在可用能量限制下,根據(jù)任務(wù)環(huán)境信息事先規(guī)劃一條全局最優(yōu)或次優(yōu)路徑,得到訪問(wèn)節(jié)點(diǎn)的訪問(wèn)順序,再通過(guò)局部路徑規(guī)劃進(jìn)行實(shí)時(shí)單個(gè)節(jié)點(diǎn)的搜索與逼近。近年來(lái),無(wú)人機(jī)路徑規(guī)劃已經(jīng)得到了廣泛的研究。文獻(xiàn)[3]把無(wú)人機(jī)路徑規(guī)劃問(wèn)題建模成經(jīng)典的旅行商問(wèn)題,并執(zhí)行快速路徑規(guī)劃(FPPWR,fast path planning with rule)。文獻(xiàn)[8]利用馬爾可夫鏈對(duì)單個(gè)無(wú)人機(jī)從遠(yuǎn)處傳感器收集數(shù)據(jù)的移動(dòng)過(guò)程進(jìn)行建模,并模擬無(wú)人機(jī)運(yùn)行過(guò)程中的不規(guī)則運(yùn)動(dòng)。文獻(xiàn)[9]利用部分可觀察的馬爾可夫決策過(guò)程(POMDP,partially observable Markov decision process)對(duì)無(wú)人機(jī)路徑進(jìn)行規(guī)劃。文獻(xiàn)[10]基于Q 學(xué)習(xí)算法對(duì)無(wú)人機(jī)的路徑和避障等問(wèn)題進(jìn)行學(xué)習(xí),并采用自適應(yīng)隨機(jī)探測(cè)的方法實(shí)現(xiàn)無(wú)人機(jī)的導(dǎo)航和避障。文獻(xiàn)[11-14]基于深度強(qiáng)化學(xué)習(xí)(DRL,deep reinforcement learning)實(shí)現(xiàn)無(wú)模型的無(wú)人機(jī)路徑規(guī)劃。除了利用機(jī)器學(xué)習(xí)方法外,研究者還提出了很多啟發(fā)式算法[15-17]來(lái)解決無(wú)人機(jī)路徑規(guī)劃問(wèn)題。
定向問(wèn)題[18]為節(jié)點(diǎn)選擇和確定所選節(jié)點(diǎn)之間最短哈密頓路徑的組合,可以看作背包問(wèn)題和旅行商問(wèn)題2 種經(jīng)典問(wèn)題的組合。本文將無(wú)人機(jī)數(shù)據(jù)收集過(guò)程的全局路徑規(guī)劃問(wèn)題建模為定向問(wèn)題。本文考慮的全局路徑規(guī)劃是指綜合考慮無(wú)人機(jī)自身的能量約束、節(jié)點(diǎn)收益等,在指針網(wǎng)絡(luò)深度學(xué)習(xí)架構(gòu)下進(jìn)行的路徑規(guī)劃。其中,背包問(wèn)題的目標(biāo)是在可用資源限制下,選擇一部分節(jié)點(diǎn)并使之獲得的收益最大化;旅行商問(wèn)題的目標(biāo)是試圖使無(wú)人機(jī)服務(wù)所選節(jié)點(diǎn)的旅行時(shí)間或距離最小化。
文獻(xiàn)[19]對(duì)定向問(wèn)題最近的變化、解決方案及應(yīng)用等進(jìn)行了綜述。近幾年,關(guān)于求解定向問(wèn)題的啟發(fā)式方法很多,例如遺傳算法[20]、動(dòng)態(tài)規(guī)劃法[21]、迭代局部搜索法[22]等。
2015 年,Vinyals 等[23]在人工智能頂級(jí)會(huì)議NIPS 上提出了一個(gè)用于解決變長(zhǎng)序列到序列的神經(jīng)網(wǎng)絡(luò)模型——指針網(wǎng)絡(luò),還驗(yàn)證了該模型可以單獨(dú)使用訓(xùn)練示例來(lái)學(xué)習(xí)3 個(gè)幾何問(wèn)題的近似解,即尋找平面散點(diǎn)集的凸包、Delaunay 三角剖分算法和平面旅行商問(wèn)題。指針網(wǎng)絡(luò)深度學(xué)習(xí)被提出后,近幾年被研究者多次引用,文獻(xiàn)[24]將指針網(wǎng)絡(luò)深度學(xué)習(xí)結(jié)合強(qiáng)化學(xué)習(xí)解決旅行商問(wèn)題,并提出該模型也可用于解決背包問(wèn)題。文獻(xiàn)[25]使用指針網(wǎng)絡(luò)模型結(jié)合強(qiáng)化學(xué)習(xí)技術(shù)來(lái)優(yōu)化3D 裝箱序列以最大化其收益。受這些模型的啟發(fā),本文首先將無(wú)人機(jī)全局路徑規(guī)劃建模為定向問(wèn)題,接著采用指針網(wǎng)絡(luò)深度學(xué)習(xí)對(duì)其進(jìn)行求解。
在局部路徑規(guī)劃方面,無(wú)人機(jī)將根據(jù)節(jié)點(diǎn)廣播參考信號(hào)強(qiáng)度(RSS,received signal strength)的特征[26]對(duì)其局部路徑進(jìn)行規(guī)劃。文獻(xiàn)[27]采用Q 學(xué)習(xí)利用無(wú)人機(jī)對(duì)非法無(wú)線電臺(tái)進(jìn)行定位和尋找。然而,傳統(tǒng)Q 學(xué)習(xí)很難解決具有大量狀態(tài)空間的模型,這導(dǎo)致其很難適用于大規(guī)模節(jié)點(diǎn)網(wǎng)絡(luò)中的無(wú)人機(jī)路徑規(guī)劃。本文通過(guò)深度Q 網(wǎng)絡(luò)(DQN,deep-Q network)學(xué)習(xí)機(jī)制對(duì)大規(guī)模的Q 表進(jìn)行模擬與近似,從而極大地降低了Q 學(xué)習(xí)的計(jì)算復(fù)雜度。
綜上,本文首先將無(wú)人機(jī)的全局路徑規(guī)劃建模為定向問(wèn)題并通過(guò)指針網(wǎng)絡(luò)深度學(xué)習(xí)求解;然后在局部路徑規(guī)劃方面,利用DQN 使無(wú)人機(jī)逼近目標(biāo)節(jié)點(diǎn)。仿真結(jié)果表明,在無(wú)人機(jī)能耗限制下,所提方案能極大地提升物聯(lián)網(wǎng)中的數(shù)據(jù)收集收益。
本文綜合考慮無(wú)人機(jī)在數(shù)據(jù)采集過(guò)程中面臨的能量約束問(wèn)題和路徑規(guī)劃問(wèn)題。無(wú)人機(jī)能量消耗不僅與航行時(shí)間、航行速度有關(guān),還與所處環(huán)境中的風(fēng)速、障礙物等有關(guān)[28]。文獻(xiàn)[29]將無(wú)人機(jī)的路由算法分類(lèi)為恒定速度無(wú)人機(jī)、自適應(yīng)速度無(wú)人機(jī)、懸停最大服務(wù)時(shí)間(HMS,hover with maximum service time)等。本文采用HMS 的路由方法,即無(wú)人機(jī)懸停在相應(yīng)節(jié)點(diǎn)上方,并以最大懸停時(shí)間tmax對(duì)用戶進(jìn)行數(shù)據(jù)傳輸,且假設(shè)無(wú)人機(jī)以恒定的速度v飛行。
在圖1 所示的系統(tǒng)模型中,無(wú)人機(jī)的起點(diǎn)和終點(diǎn)均為無(wú)人機(jī)服務(wù)站Ddepot。Ddepot可對(duì)無(wú)人機(jī)收集到的數(shù)據(jù)進(jìn)行處理,并對(duì)無(wú)人機(jī)充電,需要收集數(shù)據(jù)的傳感器節(jié)點(diǎn)隨機(jī)分布在地圖上,可通過(guò)聚類(lèi)算法對(duì)隨機(jī)分布的傳感器節(jié)點(diǎn)進(jìn)行分簇,并得到簇的中心坐標(biāo)(圖1 中黑點(diǎn))[30]。關(guān)于無(wú)人機(jī)以什么樣的順序訪問(wèn)這些簇才能在有限的能量約束下取得最大收益的問(wèn)題,可以被建模為一個(gè)定向問(wèn)題,即選取點(diǎn)和確定最短路徑2 種問(wèn)題的結(jié)合。由于無(wú)人機(jī)數(shù)據(jù)收集存在無(wú)人機(jī)能量限制,因此不是所有的簇都會(huì)被服務(wù)。令S∈{1,2,…,k}表示簇的集合,其中k表示簇的數(shù)目。第i個(gè)簇的獎(jiǎng)勵(lì)值為pi,簇i到j(luò)的距離為disti,j,li,j=1表示i與j之間有路徑,那么無(wú)人機(jī)全局路徑規(guī)劃問(wèn)題可以表示為
圖1 系統(tǒng)模型
目標(biāo)方程(1)表示最大化數(shù)據(jù)收集的獎(jiǎng)勵(lì)值,并且最小化無(wú)人機(jī)的飛行路徑;約束(2)表示無(wú)人機(jī)可服務(wù)簇的份額;約束(3)表示起點(diǎn)和終點(diǎn)均為無(wú)人機(jī)服務(wù)站Ddepot;約束(4)表示每個(gè)簇最多被服務(wù)一次。
在優(yōu)化目標(biāo)式(1)中,關(guān)于每個(gè)簇獎(jiǎng)勵(lì)值的設(shè)定,如果簡(jiǎn)單設(shè)定為簇內(nèi)所有節(jié)點(diǎn)存儲(chǔ)數(shù)據(jù)的總和,則可能對(duì)稍遠(yuǎn)的節(jié)點(diǎn)不公平,所以可將每個(gè)節(jié)點(diǎn)的獎(jiǎng)勵(lì)值設(shè)置為
其中,Ii表示簇i內(nèi)所有節(jié)點(diǎn)數(shù)據(jù)量總和的值(無(wú)量綱)。因此,獎(jiǎng)勵(lì)值的設(shè)定不僅與節(jié)點(diǎn)到服務(wù)站的距離有關(guān),還與數(shù)據(jù)的存儲(chǔ)量有關(guān),且pi無(wú)量綱[31]。
假設(shè)無(wú)人機(jī)對(duì)目標(biāo)傳感器的位置是未知的,無(wú)人機(jī)以固定的高度飛行,只考慮二維平面的運(yùn)動(dòng),目標(biāo)傳感器節(jié)點(diǎn)的位置坐標(biāo)為(x,y),無(wú)人機(jī)當(dāng)前狀態(tài)的坐標(biāo)為(xi,yi),無(wú)人機(jī)與目標(biāo)節(jié)點(diǎn)之間的距離可以表示為
無(wú)人機(jī)通過(guò)配備天線來(lái)測(cè)量目標(biāo)節(jié)點(diǎn)的RSS,無(wú)人機(jī)可移動(dòng)方向被相等地劃分為8 個(gè)方向,具體如圖2 所示。
圖2 無(wú)人機(jī)移動(dòng)方向
RSS 值PR可以通過(guò)以下計(jì)算式求得,它與距離d(單位為m )有關(guān),具體為
其中,PT為目標(biāo)節(jié)點(diǎn)發(fā)射功率;PL(d)為距離d處的路徑損耗,此處的路徑損耗模型[32]采用3GPP TR 38.814,本文主要參考天線接收信號(hào)強(qiáng)度值,為簡(jiǎn)化系統(tǒng)模型,只考慮了地對(duì)地大尺度信道衰落,后期研究無(wú)人機(jī)數(shù)據(jù)傳輸過(guò)程中將進(jìn)一步同時(shí)考慮視距和非視距對(duì)傳輸性能的影響[33-35];f為捕獲信道衰落變量。
深度Q 學(xué)習(xí)[36]融合了神經(jīng)網(wǎng)絡(luò)和Q 學(xué)習(xí)的方法,屬于強(qiáng)化學(xué)習(xí)的一種,當(dāng)然也應(yīng)該具有強(qiáng)化學(xué)習(xí)的基本組成部分,即智能體、環(huán)境、動(dòng)作、獎(jiǎng)勵(lì)、策略、值函數(shù)等。強(qiáng)化學(xué)習(xí)智能體與環(huán)境的交互過(guò)程如圖3 所示。智能體通過(guò)與環(huán)境進(jìn)行交互,循環(huán)迭代產(chǎn)生新的狀態(tài)并結(jié)合環(huán)境給出獎(jiǎng)勵(lì)值。
圖3 強(qiáng)化學(xué)習(xí)智能體與環(huán)境的交互過(guò)程
Q值函數(shù)更新式為
其中,α∈[0,1]是學(xué)習(xí)率,γ∈[0,1]是折扣因子。
無(wú)人機(jī)的狀態(tài)s取決于各個(gè)方向測(cè)量的平均RSS 值中最大的RSS 值,動(dòng)作空間對(duì)應(yīng)圖2 中的8個(gè)方向,即a∈{a1,a2,a3,a4,a5,a6,a7,a8}。獎(jiǎng)勵(lì)值r(s,a)的設(shè)定為:如果當(dāng)前位置各個(gè)方向測(cè)量的平均RSS 值中的最大值減去上一位置的各個(gè)方向測(cè)量的平均RSS 值中的最大值為正,則給一個(gè)正的獎(jiǎng)勵(lì)值,該獎(jiǎng)勵(lì)值設(shè)為固定值;如果為負(fù),則給一個(gè)負(fù)的獎(jiǎng)勵(lì)值。如果無(wú)人機(jī)達(dá)到終止條件,則給其較大獎(jiǎng)勵(lì)值,本文中獎(jiǎng)勵(lì)值設(shè)定為
無(wú)人機(jī)的終止條件為當(dāng)距離d<7.0 時(shí),目標(biāo)節(jié)點(diǎn)定位成功。深度Q 學(xué)習(xí)的原理框架如圖4 所示。
圖4 深度Q 學(xué)習(xí)的原理框架
指針網(wǎng)絡(luò)深度學(xué)習(xí)的結(jié)構(gòu)如圖5 所示,它是由序列到序列模型[37]和注意力機(jī)制[38]結(jié)合改進(jìn)得到的,由Encoder 和Decoder 這2 個(gè)階段組成。在Encoder 階段,只考慮輸入xj對(duì)輸出yi的影響;在Decoder 階段,解碼輸出注意力概率矩陣,并通過(guò)softmax 得到序列的輸出概率分布。由于長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM,long short-term memory)[39]能夠成功學(xué)習(xí)具有遠(yuǎn)距離時(shí)間依賴性數(shù)據(jù)的特征,其被用作網(wǎng)絡(luò)單元構(gòu)建指針網(wǎng)絡(luò)深度學(xué)習(xí)模型。Encoder部分使用LSTM 多層神經(jīng)網(wǎng)絡(luò)(記為L(zhǎng)STM-e),Decoder 部分使用LSTM 多層神經(jīng)網(wǎng)絡(luò)(記為L(zhǎng)STM-d)。
圖5 指針網(wǎng)絡(luò)深度學(xué)習(xí)的結(jié)構(gòu)
第2 節(jié)對(duì)無(wú)人機(jī)路徑規(guī)劃問(wèn)題進(jìn)行了建模,分別確定指針網(wǎng)絡(luò)(PN,pointer network)深度學(xué)習(xí)模型的輸入輸出如下所示。
1)輸入
Dcoords={(x0,y0),(x1,y1),…,(xk,yk)}為無(wú)人機(jī)服務(wù)站Ddepot和每個(gè)簇中心坐標(biāo)Dloc的并集。假設(shè)Ddepot處的獎(jiǎng)勵(lì)值p0=0,Pprize={p0,p1,…,pk}為p0和pi的并集,Dinputs={(x0,y0,p0),(x1,y1,p1),…,(xk,yk,pk)}。
2)輸出
輸出序列Droads={P0,P1,…,Pn}表示無(wú)人機(jī)數(shù)據(jù)收集過(guò)程中簇的收集順序,Pn對(duì)應(yīng)Dinputs值的索引。指針網(wǎng)絡(luò)深度學(xué)習(xí)的編解碼過(guò)程為:輸入序列Dinputs經(jīng)過(guò)k+1 步依次輸入Encoder 模塊,然后通過(guò)Decoder 模塊依次輸出Droads中的元素。
因此指針網(wǎng)絡(luò)的原理可以表示如下[40]。
編碼過(guò)程。將輸入序列Dinputs經(jīng)過(guò)k+1 步依次輸送給LSTM-e,得到每一步輸入所對(duì)應(yīng)的LSTM-e網(wǎng)絡(luò)狀態(tài)ej(j=0,1,…,k),如式(11)所示。當(dāng)Dinputs輸入完畢后,將得到的隱藏層狀態(tài)Enc=(e1,…,ei,…,en)進(jìn)行編碼后輸入解碼模塊。
解碼過(guò)程。由式(12)計(jì)算出LSTM-d 網(wǎng)絡(luò)的隱藏層狀態(tài)Dec=(d1,…,di,…,dn);由LSTM-e 網(wǎng)絡(luò)的隱藏層狀態(tài)(e1,…,ei,…,en)和LSTM-d 網(wǎng)絡(luò)的隱藏層狀態(tài)Dec=(d1,…,di,…,dn)分別計(jì)算出每個(gè)輸入對(duì)當(dāng)前輸出帶來(lái)的影響,如式(13)所示。將其softmax 歸一化后得到注意力矩陣ai,如式(14)~式(16)所示。然后選擇矩陣中權(quán)重占比最大的指針作為輸出,如式(17)所示。
其中,f為非線性激活函數(shù);v、W1和W2為輸出模型的可學(xué)習(xí)參數(shù);aij由uij經(jīng)過(guò)softmax 后得到,其作用是將uij標(biāo)準(zhǔn)化為輸入字典上的輸出分布[23]。
在解碼過(guò)程中,還要考慮到定向問(wèn)題模型中的約束問(wèn)題。首先,對(duì)于約束(2),預(yù)設(shè)一個(gè)服務(wù)份額值δ。對(duì)于約束(3),無(wú)人機(jī)的起點(diǎn)和終點(diǎn)均為無(wú)人機(jī)服務(wù)站Ddepot,因此,第一步和最后一步將P0和Pn設(shè)置為0。對(duì)于約束(4),根據(jù)禁忌搜索的思想,在每一步添加Droads元素時(shí),將其作為禁忌元素添加到Daction表中,每一步輸出將根據(jù)Daction表,在注意力矩陣中選擇非Daction表中權(quán)值最大的作為輸出。
根據(jù)文獻(xiàn)[25]提出的主動(dòng)搜索(AS,active search)策略,將Dinputs中的元素(除索引0 的位置)隨機(jī)排列組合生成B個(gè)批次的輸入序列,通過(guò)梯度下降法優(yōu)化目標(biāo)函數(shù),最后輸出路徑。
通過(guò)多目標(biāo)優(yōu)化中的線性加權(quán)法將目標(biāo)函數(shù)(1)改寫(xiě)成
其中,ω1+ω2=1表示在減少無(wú)人機(jī)飛行距離與提升無(wú)人機(jī)服務(wù)獎(jiǎng)勵(lì)之間的折中關(guān)系,具體可由工程經(jīng)驗(yàn)得到。本文設(shè)置ω1=0.9,ω2=0.1,通過(guò)梯度下降法,式(18)可以同時(shí)優(yōu)化減小距離和增加獎(jiǎng)勵(lì)值。
指針網(wǎng)絡(luò)+主動(dòng)搜索策略的算法描述如下。
1)初始化輸入序列,將Dinputs中的元素(除索引0 的位置)隨機(jī)排列組合生成B個(gè)批次的輸入序列。
2)將序列輸入指針網(wǎng)絡(luò),得到一系列結(jié)果。
3)使用梯度下降法優(yōu)化目標(biāo)函數(shù)(18)。
4)重復(fù)執(zhí)行步驟1)~步驟3),直到達(dá)到終止條件。
5)選擇最小的目標(biāo)函數(shù)值的路徑作為輸出路徑Droads。
DQN 算法描述如下。
1)初始化經(jīng)驗(yàn)重放緩存區(qū)。
2)預(yù)處理環(huán)境:把狀態(tài)?動(dòng)作輸入DQN,返還所有可能動(dòng)作對(duì)應(yīng)的Q值。
3)利用ε貪心策略選取一個(gè)動(dòng)作a,以概率ε隨機(jī)選擇動(dòng)作,以概率1?ε選取具有最大Q值的動(dòng)作。
4)選擇動(dòng)作a后,智能體在狀態(tài)s執(zhí)行所選的動(dòng)作,得到新的狀態(tài)s′和獎(jiǎng)勵(lì)r。
5)把該組數(shù)據(jù)存儲(chǔ)到經(jīng)驗(yàn)重放緩沖區(qū)中,并將其記作s,a,r,s′。
6)計(jì)算目標(biāo)方程(10),更新Q網(wǎng)絡(luò)權(quán)重。
7)重復(fù)執(zhí)行步驟3)~步驟6),直到達(dá)到終止條件。
為驗(yàn)證指針網(wǎng)絡(luò)模型對(duì)無(wú)人機(jī)全局路徑規(guī)劃的優(yōu)化性能,實(shí)驗(yàn)主要對(duì)比了指針網(wǎng)絡(luò)深度學(xué)習(xí)、基于主動(dòng)搜索策略的指針網(wǎng)絡(luò)深度學(xué)習(xí)方法。為了對(duì)比AS 方法的效果,本文設(shè)計(jì)貪婪獎(jiǎng)勵(lì)(GP,greed prize)方法與其進(jìn)行比較。GP 方法受貪婪優(yōu)化方法的影響,先貪婪地選擇獎(jiǎng)勵(lì)值大小為前N簇的坐標(biāo),然后通過(guò)PN+AS 方法求這些簇的最短路徑。
實(shí)驗(yàn)令無(wú)人機(jī)服務(wù)站Ddepot的坐標(biāo)為(0,0),在[0,1]×[0,1](單位為km)的范圍內(nèi)分別隨機(jī)生成50 個(gè)簇和100 個(gè)簇的中心位置坐標(biāo),分別為D50和D100。每個(gè)簇的獎(jiǎng)勵(lì)值設(shè)定按照式(5)得到。
表1 和表2 分別給出了AS 方法和GP 方法使用的參數(shù)及其相應(yīng)值。
表1 AS 方法使用的參數(shù)及其相應(yīng)值
表2GP 方法使用的參數(shù)及其相應(yīng)值
為驗(yàn)證DQN 的性能,本文主要分析Q 學(xué)習(xí)和DQN 這2 種方法在無(wú)人機(jī)數(shù)據(jù)收集中單個(gè)節(jié)點(diǎn)定位的仿真效果。為模擬無(wú)人機(jī)接收信號(hào)強(qiáng)度值,采用網(wǎng)格法確定當(dāng)前位置距離目標(biāo)節(jié)點(diǎn)的距離,通過(guò)式(7)和式(8)計(jì)算接收信號(hào)強(qiáng)度值,實(shí)現(xiàn)DQN 狀態(tài)輸入。本文主要對(duì)2 種方法迭代次數(shù)內(nèi)的成功率、步數(shù)及其最優(yōu)路徑進(jìn)行比較。2 種方法均使用ε貪心策略,在仿真中將無(wú)人機(jī)到目標(biāo)節(jié)點(diǎn)的距離小于7 m 視為成功,為防止算法無(wú)限次迭代,將無(wú)人機(jī)步數(shù)大于200 步視為失敗。仿真結(jié)果表明,DQN 的性能優(yōu)于Q 學(xué)習(xí),能夠達(dá)到一個(gè)較高的成功率。DQN 仿真各參數(shù)的設(shè)置如表3 所示。
表3 DQN 仿真各參數(shù)的設(shè)置
圖6 和圖7 分別是D50和D100下使用PN、AS和GP 的路徑規(guī)劃效果,表4 是D50和D100下使用PN、AS 和GP 的距離和獎(jiǎng)勵(lì)值,其中,距離的單位為km。根據(jù)式(9)可知,獎(jiǎng)勵(lì)值越大越好,距離越小越好,這樣可以使模型的收益能效更高。從圖6、圖7 和表4 中可以直觀地看出,使用PN 方法比AS 方法的路徑規(guī)劃圖交叉點(diǎn)多,總路徑距離大,總獎(jiǎng)勵(lì)值?。粚P 方法與AS 方法進(jìn)行比較,GP方法交叉點(diǎn)少,總路徑距離小,不過(guò)GP 方法存在貪婪的性質(zhì),相當(dāng)于將全局路徑規(guī)劃問(wèn)題變?yōu)橐粋€(gè)簡(jiǎn)單的旅行商問(wèn)題來(lái)解決,使該算法獲得的獎(jiǎng)勵(lì)值更好,但在某些場(chǎng)景下有可能導(dǎo)致更大的飛行距離。雖然AS 方法不能完全達(dá)到GP 方法的效果,但AS 方法的效果接近GP 方法,且AS 方法最大的特點(diǎn)就是同時(shí)優(yōu)化距離和獎(jiǎng)勵(lì)值,雖然獎(jiǎng)勵(lì)值可能不如GP 方法但其距離有可能更小,且更具隨機(jī)性、更適合動(dòng)態(tài)環(huán)境中的無(wú)人機(jī)路徑規(guī)劃。
圖6 D50下使用PN、AS 和GP 的路徑規(guī)劃效果
圖7 D100下使用PN、AS 和GP 的路徑規(guī)劃效果
表4 D50和D100下使用PN、AS 和GP 的距離和獎(jiǎng)勵(lì)值
圖8 是AS 方法下使用梯度下降法訓(xùn)練PN 的損失值。從圖8 中可以看出,訓(xùn)練PN 的損失值隨著迭代次數(shù)的增加先快速下降,而后趨于穩(wěn)定,在0 值上下波動(dòng),這表明該深度模型可以在訓(xùn)練后達(dá)到收斂,網(wǎng)絡(luò)性能可靠。
圖8 AS 方法下使用梯度下降法訓(xùn)練PN 的損失值
圖9 為DQN 和Q 學(xué)習(xí)的成功次數(shù)的步數(shù)變化波動(dòng)曲線。從圖9 中可以明顯看出,DQN 步數(shù)的變化只在一開(kāi)始波動(dòng)較大,經(jīng)過(guò)一個(gè)更新周期(30 次)后波動(dòng)趨于平穩(wěn),且步數(shù)較小,迭代次數(shù)為100 次,成功率接近100%;Q 學(xué)習(xí)的成功次數(shù)只有7 次,其余均大于200 步。
圖9 DQN 和Q 學(xué)習(xí)成功次數(shù)的步數(shù)變化波動(dòng)曲線
從圖10 可以更清晰地看到,DQN 的最優(yōu)路徑與Q 學(xué)習(xí)的最優(yōu)路徑相比更平緩、拐點(diǎn)較少。表5 為不同起點(diǎn)和目標(biāo)位置時(shí)Q 學(xué)習(xí)和DQN 的最優(yōu)步長(zhǎng)比較。從表5 可以看出,針對(duì)不同起點(diǎn)和目標(biāo)位置,除了第三組(0,0)→(68,78)這2 種方法效果一樣外,其余場(chǎng)景中的DQN 都優(yōu)于Q 學(xué)習(xí),可見(jiàn)DQN 的泛化性能強(qiáng),可以適應(yīng)不同的場(chǎng)景。
圖10 DQN 和Q 學(xué)習(xí)最優(yōu)路徑對(duì)比
表5 不同起點(diǎn)和目標(biāo)位置時(shí)DQN 和Q 學(xué)習(xí)的最優(yōu)步長(zhǎng)比較
本文首先使用指針網(wǎng)絡(luò)深度學(xué)習(xí)來(lái)解決無(wú)人機(jī)數(shù)據(jù)收集過(guò)程中的全局路徑規(guī)劃問(wèn)題,并將該問(wèn)題建模成定向問(wèn)題,利用指針網(wǎng)絡(luò)深度學(xué)習(xí)得到無(wú)人機(jī)服務(wù)節(jié)點(diǎn)集合及服務(wù)順序。然后,根據(jù)無(wú)人機(jī)接收目標(biāo)節(jié)點(diǎn)的RSS 通過(guò)DQN 來(lái)定位目標(biāo)節(jié)點(diǎn)并接近目標(biāo)節(jié)點(diǎn),經(jīng)仿真驗(yàn)證,DQN 在時(shí)延等方面的性能優(yōu)于Q 學(xué)習(xí)。最后,通過(guò)仿真驗(yàn)證了所提學(xué)習(xí)機(jī)制的有效性。