岳文靜,孫 鵬,陳 志
(1.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210023;2.南京郵電大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 南京 210023)
無人機(jī)由于其多功能性,在軍事、私人和公共部門越來越受青睞。無人機(jī)運(yùn)行在工業(yè)、科學(xué)和醫(yī)學(xué)等波段,但隨著在這些頻段運(yùn)行的無線和蜂窩網(wǎng)絡(luò)的新設(shè)備的開發(fā)和使用急劇增加,且頻譜利用率低下,無人機(jī)可用頻譜資源急劇減少。認(rèn)知無人機(jī)網(wǎng)絡(luò)通過將無人機(jī)與認(rèn)知無線電技術(shù)結(jié)合可以感知主用戶未使用的頻段,通過頻譜資源分配獲得可用的頻譜資源,從而解決無人機(jī)頻譜資源短缺的問題,提高頻譜利用率[1]。在多無人機(jī)頻譜接入和認(rèn)知無線電方面,國內(nèi)外研究人員進(jìn)行了大量的研究。文獻(xiàn)[2]將認(rèn)知無線電最優(yōu)頻譜問題歸結(jié)為圖著色問題的變體,提出基于圖著色理論的認(rèn)知無線網(wǎng)絡(luò)頻譜分配模型。文獻(xiàn)[3-5]將博弈論應(yīng)用于頻譜接入中,獲得了較高的系統(tǒng)吞吐量和效用。文獻(xiàn)[6]提出了一種基于后悔博弈的ABS和蜂窩/WiFi共存網(wǎng)絡(luò)的動(dòng)態(tài)傳輸占空比分配方案。有些研究人員將智能優(yōu)化算法用于頻譜分配中,獲得了較好的效果。
例如文獻(xiàn)[7]將改進(jìn)的烏鴉算法用于車載網(wǎng)頻譜分配。文獻(xiàn)[8]使用遺傳算法進(jìn)行頻譜分配,文獻(xiàn)[9]提出一種改進(jìn)的量子遺傳算法并將其用于頻譜分配。文獻(xiàn)[10-11]采用粒子群優(yōu)化算法進(jìn)行頻譜分配。文獻(xiàn)[12]提出了一種新的二元自適應(yīng)布谷鳥搜索算法,該算法在傳統(tǒng)布谷鳥搜索初始化階段引入了反向?qū)W習(xí),增加了布谷鳥搜索的多樣性。文獻(xiàn)[13]提出了一種多策略DSA(MS-DSA)系統(tǒng),其中主系統(tǒng)和輔助系統(tǒng)同時(shí)使用多種DSA策略共享頻譜資源,并證明通過所提出的MS-DSA系統(tǒng)可顯著改善性能。文獻(xiàn)[14]提出了一種用于CR網(wǎng)絡(luò)的雙拍賣框架,該框架解決了信道分配問題,以提高頻譜利用率,與McAfee拍賣相比,網(wǎng)絡(luò)模擬驗(yàn)證了所提議拍賣模型的改進(jìn)性能。
然而以上這些算法在算法尋優(yōu)能力和收斂速度上沒有較好的平衡,遺傳算法雖然具有很好的全局搜索能力,但是局部搜索能力較差;粒子群優(yōu)化算法求解速度較快,但是容易出現(xiàn)早熟收斂等問題;蟻群算法在求解性能上具有很強(qiáng)的魯棒性和搜索較好解的能力,但是收斂速度慢,易于陷入局部最優(yōu);布谷鳥算法對(duì)參數(shù)不敏感,魯棒性強(qiáng),但是求解速度慢。Gaurav Dhiman和Vijay Kumar在2018年通過模擬海鷗的遷徙和攻擊行為來實(shí)現(xiàn)尋優(yōu),提出海鷗優(yōu)化算法[15]?;诖耍闹刑岢鲆环N基于改進(jìn)海鷗優(yōu)化算法的認(rèn)知無人機(jī)網(wǎng)絡(luò)頻譜分配方案,可以在保留優(yōu)良個(gè)體的同時(shí)維持種群多樣性。結(jié)果表明,該算法在認(rèn)知無人機(jī)網(wǎng)絡(luò)頻譜分配具有較好的性能。
圖著色認(rèn)知無線網(wǎng)絡(luò)頻譜分配模型[2]將認(rèn)知無線電最優(yōu)頻譜問題歸結(jié)為圖著色問題,考慮了可用頻譜范圍集合形成頻譜池,劃分成互不重疊的正交信道的情況。每個(gè)次用戶根據(jù)頻譜感知的結(jié)果獲得其可以使用的可用信道列表,并調(diào)整自身的發(fā)射功率,而不會(huì)干擾相鄰的主用戶,頻譜接入問題變成了信道分配問題。假設(shè)共有M個(gè)主用戶,M個(gè)信道,N個(gè)次用戶,圖著色頻譜分配模型可以表示為:
(1)可用頻譜矩陣L:ln,m=1時(shí)次用戶n使用信道m(xù)不會(huì)干擾主用戶。相反則表示會(huì)干擾主用戶m。
L={ln,m|ln,m∈(0,1)}N×M
(1)
(2)頻譜效益矩陣B:bn,m表示次用戶n使用信道m(xù)可以獲得的最大帶寬或吞吐量,B與L有關(guān),當(dāng)ln,m=0時(shí)bn,m=0。
B={bn,m}N×M
(2)
(3)干擾約束矩陣C:cn,k,m是次用戶n和k同時(shí)使用信道m(xù)時(shí)的干擾約束。cn,k,m=1時(shí)次用戶n和次用戶k同時(shí)使用信道m(xù)會(huì)相互干擾,此時(shí)需要n或k放棄使用信道m(xù)。cn,k,m=0時(shí)次用戶n和k同時(shí)使用信道m(xù)不會(huì)相互干擾,此時(shí)n和k可以同時(shí)使用信道m(xù)。cn,k,m受矩陣L影響,cn,k,m≤ln,m×lk,m且cn,n,m=1-ln,m。
C={cn,k,m|cn,k,m∈(0,1)}N×N×M
(3)
(4)無干擾分配矩陣A:表示次用戶不影響主用戶且次用戶之間不產(chǎn)生干擾時(shí)的信道分配。an,m=1表示將信道m(xù)分配給次用戶n,反之,表示信道m(xù)未分配給次用戶n。無干擾分配矩陣A取決于矩陣L和矩陣C。當(dāng)ln,m=0時(shí),an,m=0。當(dāng)cn,k,m=1時(shí),an,m×ak,m=0。
A={an,m|an,m∈(0,1)}N×M
(4)
(5)用戶效益:表示次用戶的用戶效益集合,βn表示次用戶n可以獲得的用戶效益。
(5)
(6)總用戶效益:表示所有次用戶獲得的總效益。
(6)
(7)解向量的維數(shù)l,表示可用頻譜分配矩陣中1的個(gè)數(shù)。
(7)
假設(shè)在一個(gè)區(qū)域內(nèi)分布著M個(gè)信道,每個(gè)信道被單獨(dú)分配給一個(gè)主用戶,這M個(gè)主用戶和N個(gè)無人機(jī)用戶在區(qū)域內(nèi)隨機(jī)分布,無人機(jī)用戶通過頻譜感知獲得區(qū)域內(nèi)可用信道,并將獲取的信息反饋給基站,由基站進(jìn)行信道分配。
圖1是在信道m(xù)下主用戶和無人機(jī)用戶信號(hào)距離關(guān)系示意圖,圓形表示用戶信號(hào)覆蓋范圍。dp(x,m)表示主用戶x使用信道m(xù)時(shí)的保護(hù)范圍。dist(b,x)表示無人機(jī)用戶b與主用戶x的距離,ds(a,m)表示無人機(jī)用戶a在使用信道m(xù)時(shí)的覆蓋范圍,無人機(jī)用戶可以控制自己的功率改變覆蓋范圍,避免干擾。
設(shè)主用戶x坐標(biāo)為(xpu,ypu),無人機(jī)用戶n坐標(biāo)為(xsu,ysu),主用戶和無人機(jī)用戶之間距離為:
(8)
由感知到的頻譜信息可以獲得可用頻譜矩陣L、干擾約束矩陣C以及頻譜效益矩陣B。當(dāng)ln,m=1且cn,k,m=0時(shí)說明無人機(jī)用戶n可以使用信道m(xù),此時(shí)無人機(jī)用戶n使用信道m(xù)的傳輸速率bn,m可以表示為:
bn,m=ds2(n,m)
(9)
ds(n,m)=min{dmax,dist(n,x)-dp(x,m)}
(10)
其中,dmax表示無人機(jī)用戶使用最大發(fā)射功率時(shí)信號(hào)的覆蓋范圍。
總用戶效益可以表示為:
(11)
在遷徙過程中,海鷗會(huì)結(jié)伴而行,海鷗的初始位置是不同的,以避免彼此之間的碰撞。在一個(gè)群體中,海鷗可以朝著生存最好、最健康的海鷗的方向飛行,基于最健康的海鷗,其他海鷗可以更新它們的初始位置。當(dāng)海鷗從一個(gè)地方遷徙到另一個(gè)地方時(shí),它們經(jīng)常在海上攻擊候鳥,它們可以在攻擊過程中做出螺旋形的自然運(yùn)動(dòng)。
基本海鷗算法步驟如下:
(1)初始化種群以及參數(shù)Asoa、fc和MAXiter。
Asoa=fc-x×(fc÷MAXiter)
(12)
Asoa用于計(jì)算新的海鷗位置,從fc降到0,fc是控制Asoa的參數(shù),MAXiter是最大迭代次數(shù),x是當(dāng)前迭代次數(shù)。
(2)計(jì)算所有海鷗的適應(yīng)度值,輸出最佳海鷗的位置Pbest(x)。
(3)計(jì)算不與其他海鷗存在位置沖突的新位置Cs(x)。
Cs(x)=Asoa×Ps(x)
(13)
其中,Ps(x)表示海鷗當(dāng)前的位置。
(4)計(jì)算最佳位置所在的方向Ms(x)。
Ms(x)=Bsoa×[Pbest(x)-Ps(x)]
(14)
(5)計(jì)算海鷗和最佳海鷗之間的距離Ds(x)。
Ds(x)=|Ms(x)-Cs(x)|
(15)
(6)計(jì)算海鷗的新位置。
Ps(x+1)=Ds(x)×x×y×z+Pbest(x)
(16)
其中,x、y、z表示海鷗在空間中的運(yùn)動(dòng)行為x=r×cosθ,y=r×sinθ,z=r×θ,r=u×eθv,θ是0到2π的隨機(jī)值。
(7)更新并輸出最佳海鷗位置和適應(yīng)度值,如果當(dāng)前海鷗適應(yīng)度值大于最佳海鷗適應(yīng)值,用當(dāng)前海鷗的適應(yīng)度值代替最佳海鷗適應(yīng)度值,用當(dāng)前海鷗位置代替最佳海鷗位置。
(8)判斷當(dāng)前是否達(dá)到最大迭代次數(shù),如果達(dá)到執(zhí)行步驟9,否則返回步驟2。
(9)輸出最佳海鷗位置和適應(yīng)值。
2.2.1 克 隆
克隆操作的基本思想來源于免疫系統(tǒng),通過克隆將原始種群的個(gè)體進(jìn)行復(fù)制生成多個(gè)鏡像,可以實(shí)現(xiàn)個(gè)體空間的擴(kuò)張,增強(qiáng)對(duì)解空間的搜索力度。文中采用克隆增廣算子進(jìn)行克隆操作,對(duì)原始種群的每個(gè)個(gè)體按照其適應(yīng)度的大小進(jìn)行復(fù)制,適應(yīng)度大的產(chǎn)生較多鏡像,適應(yīng)度小的個(gè)體產(chǎn)生較少鏡像,其表示如下:
Ni=s
(17)
其中,Ni表示第i個(gè)個(gè)體克隆的數(shù)量,s表示種群按照適應(yīng)度升序排列后該個(gè)體的位置。
2.2.2 變 異
通過克隆變異算子在克隆的種群中進(jìn)行變異操作,以在每個(gè)個(gè)體附近實(shí)現(xiàn)區(qū)域搜索,從而實(shí)現(xiàn)局部尋優(yōu)。克隆變異算子定義為:
(18)
2.2.3 選 擇
在變異后的個(gè)體以及原始個(gè)體中進(jìn)行選擇操作,以進(jìn)行下一次的迭代操作。文中采用人工免疫算法中的免疫選擇算子計(jì)算選擇概率,使用輪盤賭的方法進(jìn)行選擇操作,免疫選擇算子定義為:
Pc=α?Pf+(1-α)?Pd
(19)
其中,Pc為選擇概率,Pf為個(gè)體的適應(yīng)度概率,定義為抗體的適應(yīng)度與適應(yīng)度總和之比,Pd為抗體的濃度概率,抗體濃度越高越受抑制,濃度越低則越受促進(jìn),α為比例系數(shù),決定了濃度與適應(yīng)度的作用大小,0≤α≤1。
根據(jù)免疫選擇算子對(duì)種群進(jìn)行選擇操作,選擇操作如下:
(20)
其中,Psi(x)為第i個(gè)個(gè)體,cum(i)為第i個(gè)個(gè)體之前的Pc的累積概率。
海鷗算法適用于連續(xù)空間的優(yōu)化求解,而文中所用到的頻譜模型為二進(jìn)制,需要通過sigmod函數(shù)將連續(xù)數(shù)值轉(zhuǎn)換成二進(jìn)制數(shù),操作如下:
(21)
(22)
(1)初始化頻譜效益矩陣B、干擾約束矩陣C和可用頻譜矩陣L,計(jì)算l作為解向量的維數(shù),設(shè)置種群維數(shù)為popsize,變異概率pm,參數(shù)Asoa、fc和MAXiter。
(2)初始化種群X,并根據(jù)干擾約束矩陣C進(jìn)行無干擾處理。計(jì)算所有海鷗的適應(yīng)度值,輸出最佳海鷗的適應(yīng)值Pbest(x)。
(3)使用公式(13)-(14)計(jì)算不與其他海鷗存在位置沖突的新位置Cs(x)以及最佳位置所在的方向Ms(x)。
(4)使用公式(15)計(jì)算海鷗和最佳海鷗之間的距離Ds(x)。
(5)使用公式(16)計(jì)算海鷗的新位置Ps(x+1)。
(6)使用公式(11)對(duì)種群進(jìn)行二進(jìn)制轉(zhuǎn)換,根據(jù)干擾約束矩陣C進(jìn)行無干擾處理,計(jì)算種群的適應(yīng)度并排序。
(7)根據(jù)公式(17)-(18)進(jìn)行克隆、變異操作,并將變異后的個(gè)體與其克隆的種群比較,如果變異后的個(gè)體適應(yīng)度比其克隆的個(gè)體適應(yīng)度高,則使用變異后的個(gè)體替換原個(gè)體,否則原個(gè)體參與選擇操作。
(8)計(jì)算出適應(yīng)度最大的個(gè)體及其位置,適應(yīng)度記為BestF,位置記為Best_pos。
(9)根據(jù)公式(19)-(22)進(jìn)行選擇操作,選擇出的結(jié)果參加下一次迭代。
(10)比較本次迭代最大適應(yīng)度與上一次迭代最大適應(yīng)度,保留最優(yōu)的適應(yīng)度和位置。
(11)判斷當(dāng)前是否達(dá)到最大迭代次數(shù),如果達(dá)到執(zhí)行步驟12,否則返回步驟3。
(12)輸出最佳海鷗位置Best_pos和適應(yīng)值BestF。
本組實(shí)驗(yàn)對(duì)ISOA、SOA、GA、QGA、PSO這五種算法的性能進(jìn)行比較。本次實(shí)驗(yàn)使用MAT LAB 2018a進(jìn)行仿真,取本次實(shí)驗(yàn)最大迭代次數(shù)MAXiter為200,變異概率pm=0.02,fc=2,α=2,u=v=1,無人機(jī)最大覆蓋范圍為4 km,最小覆蓋范圍為1 km,本次實(shí)驗(yàn)在10 km×10 km的區(qū)域完成。
圖2是在主用戶數(shù)K為10,可用信道數(shù)M為10,無人機(jī)用戶數(shù)N為20的情況下認(rèn)知無人機(jī)網(wǎng)絡(luò)進(jìn)行一次頻譜分配的結(jié)果。由圖2可知,ISOA算法在尋優(yōu)性能上要優(yōu)于SOA、QGA、PSO和GA算法,可以看到通過ISOA算法獲得的網(wǎng)絡(luò)效益要高于其余四種算法,SOA算法次之,GA算法得到的網(wǎng)絡(luò)效益最低。與其余四種算法相比,ISOA具有較快的收斂速度,在尋優(yōu)的過程中曲線有起伏是因?yàn)樵谒惴ㄖ屑尤肓俗儺惒僮?,使得算法在尋?yōu)的過程中可以跳出局部尋優(yōu)。
圖2 一次頻譜分配網(wǎng)絡(luò)效益
由于頻譜分配矩陣和初始種群是隨機(jī)生成的,所以一次尋優(yōu)的結(jié)果也存在著較大的隨機(jī)性,圖3繪制了五種算法進(jìn)行30次尋優(yōu)操作的平均曲線。可以看出文中所提算法明顯優(yōu)于其余四種算法,ISOA算法所得到的網(wǎng)絡(luò)效益最大。
圖3 30次頻譜分配平均網(wǎng)絡(luò)效益
圖4是在保持無人機(jī)用戶數(shù)和主用戶數(shù)不變,可用信道數(shù)變化情況下30次算法運(yùn)行結(jié)果的平均值仿真結(jié)果。保持次用戶數(shù)N=20,主用戶數(shù)K=10,可用信道數(shù)從10增長(zhǎng)到30??梢钥吹诫S著可用信道數(shù)的增長(zhǎng),五種算法所獲得的頻譜效益也在增長(zhǎng),這是因?yàn)殡S著可用信道數(shù)的增長(zhǎng)無人機(jī)用戶可以使用的信道數(shù)也隨之增長(zhǎng),可獲得的網(wǎng)絡(luò)效益也隨之增長(zhǎng)。
圖4 可用信道數(shù)變化對(duì)網(wǎng)絡(luò)效益的影響
圖5是在保持可用信道數(shù)和主用戶數(shù)不變,無人機(jī)用戶數(shù)變化情況下30次算法運(yùn)行結(jié)果的平均值仿真結(jié)果。保持可用信道數(shù)M=10,主用戶數(shù)K=10,無人機(jī)用戶數(shù)從10增長(zhǎng)到30。由圖5可知,隨著無人機(jī)用戶數(shù)的增加,網(wǎng)絡(luò)效益先增加然后逐漸減小。這是由于文中網(wǎng)絡(luò)效益是所有無人機(jī)用戶效益之和,所以隨著無人機(jī)用戶數(shù)增多,網(wǎng)絡(luò)效益也逐漸增大。但是由于可用信道數(shù)有限以及無人機(jī)用戶和主用戶之間、無人機(jī)用戶之間存在干擾限制,所以無人機(jī)用戶數(shù)量增加到一定數(shù)量時(shí),網(wǎng)絡(luò)效益開始減小。
圖5 無人機(jī)用戶數(shù)變化對(duì)網(wǎng)絡(luò)效益的影響
圖6是在保持無人機(jī)用戶數(shù)和可用信道數(shù)不變,主用戶數(shù)變化情況下30次算法運(yùn)行結(jié)果的平均值仿真結(jié)果。保持可用信道數(shù)M=10,無人機(jī)用戶數(shù)N=20,主用戶數(shù)從10增長(zhǎng)到30。由圖6可知,隨著主用戶數(shù)的增加,無人機(jī)用戶的網(wǎng)絡(luò)效益逐漸減下,這是由于可用信道數(shù)有限,隨著主用戶數(shù)增加,無人機(jī)用戶和主用戶之間干擾約束增強(qiáng),導(dǎo)致無人機(jī)用戶網(wǎng)絡(luò)效益減小。
圖6 主用戶數(shù)變化對(duì)網(wǎng)絡(luò)效益的影響
文中將海鷗優(yōu)化算法用于認(rèn)知無人機(jī)網(wǎng)絡(luò)頻譜分配,并提出海鷗優(yōu)化算法的改進(jìn)算法,將其與遺傳算法、量子遺傳算法、粒子群優(yōu)化算法進(jìn)行比較。實(shí)驗(yàn)結(jié)果表明,提出的改進(jìn)海鷗優(yōu)化算法在解決認(rèn)知無人機(jī)網(wǎng)絡(luò)頻譜分配問題上要優(yōu)于其余四種算法。下一步將研究無人機(jī)抗干擾以及移動(dòng)情況的網(wǎng)絡(luò)優(yōu)化方案,以實(shí)現(xiàn)網(wǎng)絡(luò)資源的高效利用。