?

基于改進鴿群算法的稀疏陣列優化問題研究

2024-01-12 02:27梁復臺張琬婷
艦船電子對抗 2023年6期
關鍵詞:鴿群指南針鴿子

孫 丹,梁復臺,張琬婷,

(1.解放軍31411部隊,遼寧 沈陽 110000;2.空軍預警學院,湖北 武漢 430019)

0 引 言

矩形平面稀疏陣列天線近年來一直備受關注。矩形平面稀疏陣列天線是指從均勻排布的矩形相控陣天線中按照一定的比例剔除掉部分陣元[1]。天線陣列為了減小陣元間的互耦,陣元間距必須滿足一定的約束(比如不小于某一給定值),但往往帶來柵瓣問題,因此常采用稀疏陣列天線。雖然矩形平面稀疏陣列天線仍具有柵瓣或高旁瓣等缺點[2],但是可以通過對平面稀疏陣列陣形優化,達到比均勻滿陣天線更低的副瓣電平或更高的角度分辨率[3]。同時,稀疏陣列所需陣元數目更少,陣列天線成本和重量更低,具有結構簡單和成本低等優點[4]。

目前,在平面稀疏陣列陣形優化中獲得全局最優峰值副瓣電平(PSLL)的唯一方法是窮舉法;但是,隨著稀疏陣列陣元的增加,窮舉法的計算量呈指數增長[5]。因此,學者們提出了各種各樣的群智能優化算法來確定稀疏陣列的陣型。群智能優化算法是一種隨機優化技術,為解決最優化問題開創全新局面,其本質是仿生——對自然界中生物群體行為的模仿,比如蜂群、狼群、蟻群等。其最大的優點是不用深入分析問題的本質,可依賴算法仿生的群體行為對可行解域進行快速全面的搜索,得到滿意解,同時具有較強的穩定性。近年來,群智能優化算法被證實具有很強的競爭力和較好的全局搜索能力,因此,群智能優化算法越來越受到學者們的關注,許多學者根據自然界中生物的社會行為,提出或改進了群智能優化算法。例如:鴿群優化算法(PIO)[6]、麻雀搜索算法[7]、灰狼優化算法[8]、鯨魚優化算法[9]等。

針對該問題,使用較多的群智能優化算法主要有粒子群優化算法(PSO)[10]、遺傳算法[11]、模擬退火算法[12]等。本文提出了一種改進鴿群優化算法對陣元間距為半波長、最大陣元數目為400的矩形平面稀疏陣列陣型進行優化。仿真結果證明了與PSO和PIO相比,改進鴿群優化算法有更好的有效性。

1 稀疏陣列數學模型

1.1 矩形平面稀疏陣列方向圖

在YOZ平面有一個由M×N個陣元組成的矩形平面稀疏陣列天線,沿y方向(橫向)的N個陣元以間距dy均勻排列,沿z方向(縱向)的M個陣元以間距dz均勻排列,如圖1所示。

圖1 矩形平面稀疏陣列示意圖

因此,可以用(m,n)來表示陣列中任意一個陣元的位置,其中,0≤m≤M-1,0≤n≤N-1。設來波方向的俯仰角為θ,方位角為φ,天線俯仰角波束指向為θ0,方位角波束指向為φ0,自由空間相位常數k=2π/λ。

矩陣A表示陣列中各陣元的開關狀態:

(1)

式中:amn表示(m,n)位置的陣元開關狀態,amn=1表示(m,n)位置的陣元開啟,amn=0表示(m,n)位置的陣元關閉。

矩陣B表示陣列中各陣元的激勵:

(2)

式中:bmn表示(m,n)位置的陣元的激勵大小,且0≤bmn≤1。

設矩陣C為:

(3)

式中:當cmn=0時表示(m,n)位置的陣元關閉,當cmn>0時表示(m,n)位置的陣元開啟,cmn的值表示該陣元激勵大小,且cmn≤1。

設:

u=dz(sinθ-sinθ0)

(4)

v=dy(cosθsinφ-cosθ0sinφ0)

(5)

因此,可以給出該稀疏陣列的方向圖函數為:

(6)

1.2 優化模型

本文稀疏陣列優化的目的是使陣列方向圖PSLL最小,首先需要構建優化模型,在θ∈(-90°,90°),φ∈(-90°,90°)的半球面的非主瓣區域內搜索最大旁瓣,定義非主瓣區域為S1,根據PSLL定義,適應度值函數為:

(7)

為得到最小PSLL,所以最后的優化模型為:

(8)

2 群體智能算法

2.1 粒子群算法

粒子群算法從自然界中的鳥群、獸群和魚群等群體進行遷移活動而來。在群體活動中,群體中的每個個體都會受益于所有群體成員所發現和累積的經驗,在求解優化問題時體現出了很好的效果。在粒子群算法中,每個粒子的位置代表優化問題的一個解,每個粒子根據自身的運動經驗和群體中其他成員的運動經驗來調整自己的運動速度和方向,以向更好的位置移動,即搜索到更好的解。

設Q維的搜索空間內,群體個數為NP,任意一個粒子i的速度vi和位置xi都是Q維向量,分別為:

vi=(vi1,vi2,vi3,…,viD)

(9)

xi=(xi1,xi2,xi3,…,xiD)

(10)

粒子i速度vi和位置xi的第j維元素更新公式為:

vij(t+1)=wvij(t)+c1r[p-xij(t)]+

c2r[pi-xij(t)]

(11)

xij(t+1)=xij(t)+vij(t+1)

(12)

式中:t為迭代次數;w為慣性權重;c1為粒子群體學習因子;c2為粒子個體學習因子;r為[0,1]范圍內的隨機數;p為群體最優解;pi為粒子i的最優解。

2.2 鴿群算法

鴿群有出眾的導航能力,影響鴿群導航能力的主要因素有磁場、太陽和地貌景觀。而段海濱等人于2014年提出的鴿群算法[6]就是模擬鴿群出眾的導航能力設計出來的群智能優化算法。鴿群算法主要由2個階段組成:地圖和指南針算子階段、地標算子階段。

地圖和指南針算子階段是模仿太陽和地球磁場這2種導航工具對鴿子的作用。鴿子通過磁感來感受磁場,從而在腦海中繪制地圖,并把太陽當作指南針來調整方向。隨著鴿群越來越逼近目的地,會逐步減少對太陽和磁性粒子的依賴。在此階段,鴿群算法類似于粒子群算法,每只鴿子同樣由其位置信息和速度信息表示。地標算子階段主要是提升了算法的探索能力,地標算子模仿導航工具地標對鴿子的影響。當鴿群接近目的地時,會依靠臨近地標進行導航。如果某只鴿子熟悉地標,那么會徑直飛向目的地;反之,如果不熟悉地標并且遠離目的地的情況下,該只鴿子會跟隨熟悉地標的其他鴿子飛行,從而到達目的地。

設Imax為最大迭代次數,RN為地圖和指南針算子階段迭代次數與最大迭代次數的比,在Q維的搜索空間內,鴿子群體個數為NP,任意一個鴿子i的速度vi和位置xi都是Q維向量。迭代次數t在[0,Imax·RN]內為地圖和指南針算子階段,該階段鴿子i速度vi和位置xi的第j維元素更新公式為:

vij(t+1)=vij(t)e-R·t+nrand·(xj(t)-xij(t))

(13)

xij(t+1)=xij(t)+vij(t+1)

(14)

式中:t為迭代次數;R為羅盤算子;nrand為[0,1]內的均勻隨機數;xj為鴿群最優鴿子位置的第j維元素。

迭代次數t在[Imax·RN+1,Imax]內為地標算子階段,該階段根據鴿群所代表的PSLL進行排序,將鴿群等分為2組,每次迭代中舍棄掉PSLL較差的那組鴿群,并根據有較優PSLL的鴿群位置和PSLL作為參數,供自己確定新位置。第i個鴿子位置xi的第j維元素更新公式為:

(15)

(16)

xij(t+1)=xij(t)+nrand·(Xcj(t)-xij(t))

(17)

2.3 改進鴿群算法

傳統鴿群算法很容易“早熟”,會造成陷入局部最優的缺陷。為了解決該問題,本文從地圖和指南針算子階段和地標算子階段對傳統鴿群算法進行優化。

2.3.1 地圖和指南針算子階段

一方面,傳統鴿群算法地圖和指南針算子階段的本質是僅以鴿群中最優位置的鴿子作為鴿群的搜索方向,有“早熟”造成陷入局部最優的可能性。因此,仿照粒子群的原理,引入鴿群個體歷史最優解,以多個方向維度去尋找最優結果,有利于跳出局部最優。

另一方面,傳統鴿群算法的羅盤算子R是固定的,在地圖和指南針算子階段,隨著迭代的次數增加,上次迭代速度對本次迭代的影響越來越小,使該算法在迭代后期極其不易跳出局部最優。因此引入一個隨機因子,使羅盤算子R隨機變化,加強其跳出局部最優的可能性。

所以,本文改進鴿群算法在地圖和指南針算子階段的更新公式為:

vij(t+1)=vij(t)e-[Rmin+nrand(Rmax-Rmin)]t+

nrand·(xj(t)-xij(t))+

nrand·(xij(t)-xij(t))

(18)

xij(t+1)=xij(t)+vij(t+1)

(19)

式中:t為迭代次數;Rmax為最大羅盤算子;Rmin為最小羅盤算子;nrand為[0,1]內的均勻隨機數;xj為鴿群最優鴿子位置的第j維元素;xij為鴿群中第i個鴿子的歷史最優位置的第j維元素。

2.3.2 地標算子階段

傳統鴿群算法在地標算子階段中每次迭代都會使鴿群數目衰減一半,過早地舍棄了鴿群中較差的個體,造成了種群多樣性的喪失,導致“早熟”造成陷入局部最優。

所以,本文改進鴿群算法在地標算子階段,不再舍棄鴿群中較差的個體,而是直接更新它們的位置。在該階段,根據鴿群所代表的PSLL進行排序,將鴿群等分為2組,較優PSLL的鴿群位置按照地圖和指南針算子階段進行更新,并將其更新前的位置和PSLL作為參數,供較差的一組確定自己的新位置。較差個體組中第i個鴿子位置xi的第j維元素更新公式為:

(20)

(21)

3 仿真設計與分析

3.1 參數設置

本節仿真主要使用粒子群算法、傳統鴿群算法、改進鴿群算法對陣元間距為半波長、最大陣元數目為400的矩形平面稀疏陣列陣型進行優化。

來波方向的俯仰角θ與方位角φ的取值范圍為[-90°,90°],仿真步進為1°,其他矩形平面稀疏陣列參數如表1所示。

表1 矩形平面稀疏陣列參數

為了更好地比較3種智能算法對平面稀疏陣列陣形優化的好壞,使種群個數與迭代最大次數一致,并使用同一個隨機生產的初始值開始迭代。

粒子群算法參數如表2所示。

表2 粒子群算法參數

傳統鴿群算法參數如表3所示。

表3 傳統鴿群算法參數

改進鴿群算法參數如表4所示。

表4 改進鴿群算法參數

3.2 仿真分析

圖2為粒子群算法、傳統鴿群算法、改進鴿群算法對平面稀疏陣列天線進行陣形優化時,尋到最優峰值旁瓣電平隨迭代次數的變化圖。

圖2 不同算法下最優PSLL隨迭代次數的變化圖

觀察各算法迭代過程,粒子群算法與傳統鴿群算法的搜索結果與迭代曲線較為接近,在-18 dB左右處陷入局部最優解;雖然3種算法的前期迭代速度相差不大,但是相比于粒子群算法、傳統鴿群算法,改進鴿群算法有更優搜索能力,不易陷入局部最優解,針對平面稀疏陣列天線陣形優化有更優的效果。

圖3為使用改進鴿群算法對平面稀疏陣列天線進行陣形優化結果的三維方向圖。方向圖主瓣電平為0 dB,最大旁瓣電平為-19.35 dB。

圖3 改進鴿群算法陣列三維方向圖

圖4為使用改進鴿群算法對平面稀疏陣列天線進行陣形優化結果。式(3)矩陣C的取值,當cmn=0時,表示(m,n)位置的陣元關閉;當cmn>0時,表示(m,n)位置的陣元開啟。cmn的值表示該陣元激勵大小,且cmn≤1。

圖4 改進鴿群算法陣形優化結果圖

通過試驗比較可以看出,改進的鴿群算法有更優的搜索能力,適用于平面稀疏陣列天線陣形優化問題。

4 結束語

針對平面稀疏陣列陣形優化算法搜索策略單一問題,本文提出了一種改進鴿群算法。在地圖和指南針算子階段,一方面,引入鴿群個體歷史最優解,以多個方向維度去尋找最優結果;另一方面,引入一個隨機因子,使羅盤算子R隨機變化,加強跳出局部最優的可能性。在地標算子階段,不再舍棄鴿群中較差的個體,而是以較優個體的位置和PSLL對其位置進行更新,這樣不會造成種群多樣性的喪失,加強跳出局部最優的可能性。仿真結果證明了與粒子群算法、傳統鴿群算法相比,改進鴿群優化算法針對平面稀疏陣列陣形優化問題有更好的效果。

猜你喜歡
鴿群指南針鴿子
失靈的指南針
鴿子,飛吧
鴿群即景
觀展指南針
一起種鴿新城疫病因分析與防治
一個鴿群飛過的黃昏
鴿子高高飛
小鴿子,飛起來
小鴿子
鴿群與鴿哨
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合