王昆鵬,姜 興,韋 佳
(桂林電子科技大學(xué),廣西桂林 541004)
目前用于天線陣波束賦形的智能優(yōu)化算法主要有粒子群算法(PSO)[1]和遺傳算法(GA)[2]等。這些算法各有優(yōu)缺點(diǎn),如GA全局搜索性能良好,但需要編碼、解碼過程,這一步驟在每次迭代時都要進(jìn)行,所以當(dāng)基因染色體長度較大時,會耗費(fèi)大量的計算時間,并且各個參數(shù)都需選取適當(dāng)。而PSO雖然容易實(shí)現(xiàn)、參數(shù)少、不需要編碼解碼、收斂快,但是其容易陷入局部最優(yōu)而難以找到全局最優(yōu)解。
此外,在陣列天線的波束綜合中,一般優(yōu)化算法通常將陣元視為理想點(diǎn)源,這樣處理的優(yōu)點(diǎn)是適用性強(qiáng),對于任意單元形式的陣列都能實(shí)現(xiàn)波束賦形,但也有其缺點(diǎn)[3]。此類算法忽略了陣元互耦效應(yīng)及周圍電磁環(huán)境的影響,因此,采用這類優(yōu)化算法得到的權(quán)值,最終賦形的效果與實(shí)際情況相差較大[3],特別是主波束偏離陣列法線方向角度較大的情況。文中結(jié)合有源方向圖理論,充分考慮元因子方向圖、陣元互耦及周圍電磁環(huán)境影響,利用自適應(yīng)量子粒子群算法對陣列天線的方向圖進(jìn)行綜合。
在實(shí)際應(yīng)用環(huán)境中通常存在干擾信號,這將降低通信質(zhì)量,加重信號處理設(shè)備負(fù)擔(dān)[4]。針對這一現(xiàn)象,文中利用AQPSO波束形成算法,在干擾信號來波方向進(jìn)行零陷波束賦形,實(shí)現(xiàn)空間濾波,提高通信質(zhì)量。
自適應(yīng)量子粒子群波束形成算法就是將量子計算和粒子群算法相結(jié)合的一種應(yīng)用于陣列天線波束形成的智能算法。2004年,Sun等將量子力學(xué)中量子行為特性融入到粒子群算法中,提出了量子粒子群算法,這種算法賦予粒子量子行為特性,利用波函數(shù)來描述粒子的運(yùn)動狀態(tài),通過求解薛定諤方程來計算出種群中每個粒子的概率密度函數(shù)[5]。為了降低算法復(fù)雜度,提高算法的運(yùn)算速度,文中采用實(shí)數(shù)編碼的方式對量子粒子進(jìn)行編碼。為了提高AQPSO算法的收斂速度,引入自適應(yīng)加速因子,來靈活控制粒子的進(jìn)化速度。AQPSO算法采用PSO為主體,然而,PSO容易陷入局部最優(yōu),故引入動態(tài)量子旋轉(zhuǎn)門來增強(qiáng)算法全局尋優(yōu)能力。在AQPSO算法中加入陣列中每個陣元的元因子數(shù)據(jù),以提高賦形效果與實(shí)際情況的吻合度。
1.2.1 實(shí)數(shù)編碼粒子
采用實(shí)數(shù)編碼的方式對粒子grain(n,t)進(jìn)行編碼,grain(n,t)的第i個量子位由變量xi表示。粒子的長度由空間維度n決定,這里的空間維度與陣列陣元數(shù)有關(guān),則粒子編碼可以描述為:
grain(n,t)=[x1,x2,x3,…,xn]
(1)
粒子中包含陣列陣元的幅相權(quán)值信息,使用(a+ib)的復(fù)數(shù)形式來表示工作單元的幅值和相位信息。陣元使用歸一化的幅值,相位在0~2π之間變化,所以a,b的變動范圍是[-1,1],故xi∈[-1,1]。
在實(shí)數(shù)編碼粒子中,粒子grain(n,t)中的第i個量子位的變量xi的具體計算方法為:
xi=xmin+(xmax-xmin)·rand
(2)
其中rand∈[-1,1],它的取值符合均勻分布。xmax=1,xmin=-1。從中可以看出,粒子變量xi不再表示一個確定的實(shí)數(shù)值,而是表現(xiàn)為區(qū)間[-1,1]上的所有實(shí)數(shù)值,能夠包含優(yōu)化問題的所有可行解,豐富了種群的多樣性。
1.2.2 基于陣元元因子的波束合成
種群中每個粒子中均包含陣列陣元的幅相權(quán)值信息。對粒子進(jìn)行解碼處理,可得到該粒子狀態(tài)下每個陣元的幅相權(quán)值(w1,w2,w3,…,wN),N是陣列陣元數(shù)量。利用陣列每個陣元的有源方向圖(AEP)數(shù)據(jù)[6]生成陣列陣元的矢量電場(E1,E2,E3,…,EN),矢量電場可用來表示陣列每個陣元的陣因子。陣列天線總電場的具體計算公式如下:
E=w1E1+w2E2+…+wNEN
(3)
并做歸一化處理即可得到歸一化的方向圖Fsum。
(4)
1.2.3 粒子自適應(yīng)速度和位置更新
標(biāo)準(zhǔn)粒子群算法的速度和位置更新公式如下:
vt+1=ω·vt+c1·(pt-st)+c2·(gt-st)
(5)
st+1=st+vt+1
(6)
式中:ω是慣性權(quán)值;c1和c2是加速因子(c1和c2為定值);t是當(dāng)前的進(jìn)化代數(shù);st和vt分別是粒子在當(dāng)前迭代代數(shù)時的位置和速度;pt和gt分別是粒子在當(dāng)前迭代代數(shù)時的個體最優(yōu)位置和全局最優(yōu)位置。
在AQPSO算法中引入自適應(yīng)加速因子來靈活控制粒子進(jìn)化速度,在算法迭代運(yùn)算前期加速因子取較大值,使得粒子快速收斂到全局最優(yōu)解附近,到了算法中后期為避免錯過全局最優(yōu),加速因子的取值隨進(jìn)化代數(shù)的變大則慢慢變小。因此,使用式(7)的動態(tài)加速因子代替標(biāo)準(zhǔn)粒子群算法中的定值加速因子,實(shí)現(xiàn)算法的自適應(yīng)加速。
c1=c2=1.2+0.8(tmax-t)/tmax
(7)
式中,tmax為最大迭代次數(shù)。
1.2.4 動態(tài)量子旋轉(zhuǎn)門
各個粒子的量子狀態(tài)通過量子門實(shí)現(xiàn)轉(zhuǎn)換[7]。通過動態(tài)量子旋轉(zhuǎn)門不斷地更新,可使種群更快地收斂到全局最優(yōu)解。對于t代種群中的粒子grain(n,t),經(jīng)過動態(tài)旋轉(zhuǎn)門旋轉(zhuǎn),其(t+1)代粒子grain(n,t+1)為:
grain(n,t+1)=grain(n,t)+sign(grain(n,t)-
globle)Δgrain(t)
(8)
式中:Δgrain(t)是量子旋轉(zhuǎn)門的旋轉(zhuǎn)角;globle是當(dāng)前t代下的全局最優(yōu)粒子位置。
旋轉(zhuǎn)角影響算法的精度以及效率,故采用動態(tài)的旋轉(zhuǎn)角,依據(jù)迭代的次數(shù)調(diào)整旋轉(zhuǎn)角的大小。動態(tài)旋轉(zhuǎn)角為:
(9)
式中:Δgrain是初始旋轉(zhuǎn)角;α是正常數(shù)。
AQPSO波束形成算法的具體流程如圖1所示。
Step1:導(dǎo)入陣列中每個陣元的AEP數(shù)據(jù)。
Step2:初始化種群中粒子的速度和位置。
Step3:利用陣列陣元元因子的波束合成算法進(jìn)行波束合成,并依據(jù)所需方向圖特征構(gòu)造目標(biāo)函數(shù),進(jìn)而計算種群中每個粒子的適應(yīng)度值。
Step4:更新粒子的速度和位置。
Step5:依據(jù)適應(yīng)度函數(shù)計算個個粒子的適應(yīng)度值。更新全局最優(yōu)解,判斷其是否滿足約束條件:是,則程序結(jié)束運(yùn)行;否,則轉(zhuǎn)到Step6。
Step6:利用動態(tài)量子旋轉(zhuǎn)門對粒子進(jìn)行更新。
Step7:進(jìn)入下一次迭代,算法轉(zhuǎn)到Step4繼續(xù)執(zhí)行。
圖1 AQPSO算法流程圖
將AQPSO與粒子群算法及遺傳算法進(jìn)行對比分析。在電磁仿真軟件CST中構(gòu)建一款4G移動通信雙極化基站陣列天線的仿真模型。如圖2所示,該直線陣列工作帶寬為1 710 MHz~2 690 MHz,擁有8個陣元,各個陣元之間等間距排布,間距為0.9λ。利用AQPSO算法、PSO算法和GA算法,對該陣列天線進(jìn)行波束賦形,并對3種算法的性能進(jìn)行對比分析,故設(shè)置以下綜合目標(biāo):主波束俯仰面指向-8°;主波束3dB波束寬度大于6°;零陷1指向-30°,零陷2指向40°。
首先,利用CST對該陣列進(jìn)行仿真,提取各陣元遠(yuǎn)區(qū)場AEP數(shù)據(jù)。然后,選取各個陣元的幅度和相位作為優(yōu)化變量,分別利用AQPSO算法、PSO算法和GA算法,進(jìn)行尋優(yōu)計算。
圖2 4 G移動通信雙極化陣列天線模型
如圖3所示,給出3種算法方向圖優(yōu)化結(jié)果。在主波束方面,這3種算法所得主波束指向均為-8°,半功率波束寬度均大于6°。在副瓣抑制上,3種算法所得副瓣電平均被抑制在-15 dB及以下,但PSO綜合效果偏差,AQPSO和GA優(yōu)于PSO并且兩者副瓣抑制能力基本一致。在零陷深度方面,AQPSO明顯優(yōu)于PSO和GA算法,例如在零陷1指向-30°方向,AQPSO的零陷深度為-45.8 dB,PSO的零陷深度為-38.4 dB,GA的零陷深度為-38.6 dB。
圖3 3種算法方向圖綜合對比
為了比較AQPSO、PSO和GA這3種算法的收斂和尋優(yōu)性能,這3種算法均設(shè)置種群規(guī)模為60,最大迭代次數(shù)800代。從圖4看出,AQPSO在迭代到200代時已經(jīng)收斂,并在算法迭代后期小步長搜索中,進(jìn)一步取得進(jìn)展尋找到更佳的近似最優(yōu)值;而PSO和GA算法分別在迭代到300代和450代時才收斂;并且AQPSO算法得到的最終適應(yīng)度值優(yōu)于PSO和GA算法,從這可以看出AQPSO算法具有更快的收斂速度和更強(qiáng)的全局尋優(yōu)能力。
圖4 3種算法迭代過程適應(yīng)度值
利用AQPSO算法,在已知有用信號來波方向和干擾信號來波方向情況下,進(jìn)行該基站天線單波束雙零陷波束賦形。針對算法的優(yōu)化目標(biāo),設(shè)計合適的目標(biāo)函數(shù)[8]如式(10),控制算法的優(yōu)化方向。
Fitness=w1Fitness1+w2Fitness2+w3Fitness3
(10)
式中:Fitness1為波束優(yōu)化目標(biāo),控制波束指向和波束寬度;Fitness2為零陷1優(yōu)化目標(biāo),控制零陷指向和零陷波束寬度;Fitness3為零陷2優(yōu)化目標(biāo),控制零陷指向和零陷波束寬度;w1、w2、w3為小目標(biāo)優(yōu)化權(quán)值,可微調(diào)總優(yōu)化目標(biāo)的側(cè)重方向。
表1給出4種目標(biāo)的綜合指標(biāo),利用AQPSO零陷波束賦形算法得出饋電權(quán)值,并回代CST進(jìn)行仿真驗證。
圖5(a),圖5(b),圖5(c),圖5(d)分別給出目標(biāo)1,目標(biāo)2,目標(biāo)3,目標(biāo)4的Matlab算法優(yōu)化結(jié)果(result1)、CST仿真驗證結(jié)果(result2)以及CST無零陷仿真結(jié)果(result3)三者之間的對比。由圖可知,Matlab算法優(yōu)化結(jié)果和CST仿真驗證結(jié)果都很好的滿足了綜合目標(biāo),相對于CST無零陷仿真結(jié)果能夠很好的實(shí)現(xiàn)零陷波束賦形。
表1 4種目標(biāo)的綜合指標(biāo)
圖5 方向圖綜合實(shí)例
綜上所述,AQPSO零陷方向圖波束賦形算法可以很好的實(shí)現(xiàn)零陷方向控制、零陷深度控制、主波束方向控制、主波束寬度以及副瓣電平的控制,較好的實(shí)現(xiàn)了空間濾波,降低干擾對通信質(zhì)量的影響。
文中采用一種自適應(yīng)量子粒子群算法(AQPSO),算法中加入了自適應(yīng)因子,使得算法在后期迭代時能尋到更好的近似最優(yōu)值。與粒子群算法、遺傳算法相比,AQPSO算法,對陣列天線方向圖綜合效果更佳,還具有更強(qiáng)的收斂性與更快的全局尋優(yōu)速度。將其應(yīng)用于基站天線陣列波束賦形,把AQPSO算法綜合的權(quán)值代回CST,對陣列天線進(jìn)行仿真分析,仿真結(jié)果與綜合結(jié)果基本吻合,進(jìn)一步證明了AQPSO算法的有效性和實(shí)用性。利用AQPSO算法針對基站陣列天線信號來波方向和干擾來波方向進(jìn)行單波束雙零陷波束賦形,算法綜合結(jié)果和仿真結(jié)果證明AQPSO算法可有效的實(shí)現(xiàn)多目標(biāo)的波束賦形。