高 璐
(湖州師范學(xué)院 信息工程學(xué)院,浙江 湖州 313000)
波達(dá)方向(direction of arrival, DOA)估計(jì)[1-2]接收天線可分為均勻線陣[3]和非均勻線陣兩種布放方式[4-6].均勻線陣具有結(jié)構(gòu)簡(jiǎn)單、建模方便等優(yōu)點(diǎn),但需通過(guò)增加天線個(gè)數(shù)來(lái)提高天線的測(cè)角分辨率,極大地增加了成本,且在極高頻率下陣元之間易產(chǎn)生互耦現(xiàn)象.在陣元數(shù)相同的條件下,非均勻線陣能夠通過(guò)陣元的合理布放來(lái)擴(kuò)大陣列孔徑,同時(shí)提高DOA估計(jì)的測(cè)角分辨率,并降低陣元間的互耦效應(yīng).但非均勻線陣的陣列結(jié)構(gòu)無(wú)法輕易改變,很難適用于極端環(huán)境.為能在極端環(huán)境中靈活布放陣元,諸多智能算法[7-8]被應(yīng)用于DOA估計(jì)陣列結(jié)構(gòu)優(yōu)化中.
粒子群算法[9-10]能夠在一定范圍內(nèi)進(jìn)行多點(diǎn)搜索,但易發(fā)散、精度不高.模擬退火算法[11-12]在理論上是全局最優(yōu)算法,但部分收斂條件幾乎無(wú)法實(shí)現(xiàn).蟻群算法[13-14]通用性較好,但搜索時(shí)間冗長(zhǎng)且易停滯.遺傳算法[15-17](genetic algorithm,GA)具有良好的并行性和兼容性,因此得到了廣泛的應(yīng)用.但其整個(gè)迭代過(guò)程是隨機(jī)的,且沒有指導(dǎo)性搜索,當(dāng)后代雙親基因較近時(shí),后代基因改善較小,造成基因模式的單一性,從而影響進(jìn)化歷程,甚至導(dǎo)致種群退化及早熟現(xiàn)象.免疫遺傳算法作為遺傳算法的重要分支,在一定程度上能夠抑制種群退化現(xiàn)象,其疫苗的選擇和接種直接決定了子代個(gè)體的適應(yīng)度.但目前疫苗多為主觀隨機(jī)選擇,易出現(xiàn)收斂局部最優(yōu)值等問題.
近年來(lái),許多學(xué)者對(duì)免疫遺傳算法進(jìn)行了更新和改進(jìn).于文莉等[18]提出將BP算法與免疫遺傳算法相結(jié)合,解決遺傳算法過(guò)早收斂局部最優(yōu)值問題,但BP神經(jīng)網(wǎng)絡(luò)的選擇無(wú)統(tǒng)一指導(dǎo),易出現(xiàn)過(guò)度擬合等現(xiàn)象;馬佳等[19]提出的免疫克隆算法,解決了遺傳算法局部搜索能力差等問題,但隨著種群數(shù)目的增加,該算法耗時(shí)巨大;江務(wù)學(xué)等[20]通過(guò)優(yōu)化交叉、變異算子實(shí)現(xiàn)了遺傳算法的多目標(biāo)問題優(yōu)化,但其僅限于特定優(yōu)化問題,不具備通用性.
混沌系統(tǒng)自1963年問世至今得到了快速的應(yīng)用和發(fā)展[21-22].Deng等[23]引入一種用于數(shù)字域的混沌迭代方程,該方程能夠隨著數(shù)字域的混沌迭代方式更新,具備周期性、遍歷性,以及依賴于初始參數(shù)值等特點(diǎn),從而被廣泛應(yīng)用于自迭代產(chǎn)生運(yùn)算組合的偽隨機(jī)序列算法中[24-26].可見,混沌方程可應(yīng)用于疫苗選擇機(jī)制中的免疫遺傳算法.
針對(duì)目前DOA估計(jì)陣列布放存在靈活性差,不適用于極端環(huán)境,且在遺傳算法中易出現(xiàn)早熟和混沌方程鮮少用于遺傳算法的現(xiàn)狀,本文根據(jù)遺傳算法的自迭代過(guò)程,設(shè)計(jì)一種混沌方程產(chǎn)生的偽隨機(jī)序列,合理設(shè)置初始值,改進(jìn)疫苗的制作和提取方法,提出一種基于混沌因子的免疫遺傳算法(Immune Genetic Algorithm based on Chaotic Mechanism,CM-IA),用于搜索DOA估計(jì)的最優(yōu)陣列.
設(shè)陣列孔徑為B,初始種群規(guī)模為z.對(duì)初始種群中的陣列結(jié)構(gòu)進(jìn)行二進(jìn)制編碼,1表示該基因位布放陣元,反之則不布放陣元.基因位1和基因位L編碼均為1.當(dāng)遠(yuǎn)場(chǎng)窄帶信號(hào)S(t)分別從方向{θ1,θ2,…,θP}入射時(shí),依次利用初始種群中各個(gè)陣列接收信號(hào)S(t),計(jì)算其數(shù)據(jù)協(xié)方差矩陣R:
R=ARSAH+σ2I,
(1)
(2)
基于輪盤賭法則,第i個(gè)陣列結(jié)構(gòu)以概率Pi被選擇參與種群進(jìn)化,如式(3)所示:
(3)
其中,F(xiàn)i為陣列結(jié)構(gòu)適應(yīng)度的值.隨機(jī)生成ni,ni∈[0,1],當(dāng)Pi>ni時(shí),Pi對(duì)應(yīng)的第i個(gè)陣列結(jié)構(gòu)被選中參與進(jìn)化.再次生成z個(gè)隨機(jī)數(shù)ni,ni∈[0,1],當(dāng)Pc>ni時(shí),ni對(duì)應(yīng)的陣列結(jié)構(gòu)參與交叉運(yùn)算.
根據(jù)DOA估計(jì)陣列結(jié)構(gòu)的布放特征構(gòu)造混沌方程,如式(4)所示:
ui=4ui-1(1-ui-1),
(4)
其中:i=z(g-1)+1,z(g-1)+2,…,z(g-1)+z;g為迭代次數(shù).基于混沌因子產(chǎn)生混沌初值u0,為能在獲取隨機(jī)序列的同時(shí)避免混沌方程產(chǎn)生的隨機(jī)數(shù)收斂于同一數(shù)值,將混沌初值u0設(shè)為u0∈[0,1],且u0?{0,0.25,0.5,0.75,1}.從母本陣列結(jié)構(gòu)中分i次選擇部分基因片段ci制成疫苗,再根據(jù)混沌方程將疫苗更新.如式(5)所示:
ci=Lui,
(5)
將基于混沌因子的疫苗接種至陣列個(gè)體形成抗體,抗體陣元數(shù)保持為M.
基于Metropolis法則,若接種疫苗后,陣列個(gè)體的適應(yīng)度值變大,則接受注射疫苗后的陣列結(jié)構(gòu)作為新種群的個(gè)體;反之,則以概率Pa(i)接受接種疫苗后的陣列結(jié)構(gòu).如式(6)所示:
(6)
其中,ΔE為注射疫苗前后陣列個(gè)體的適應(yīng)度差值.
圖1 CM-IA算法流程圖Fig.1 Flow diagram of CM-IA algorithm
基于Metropolis法則,將選出的陣列結(jié)構(gòu)按照適應(yīng)度值的大小排列,篩選出適應(yīng)度值最低的陣列結(jié)構(gòu);根據(jù)精英保留原則,利用父代適應(yīng)度值最高的陣列結(jié)構(gòu)取代本代適應(yīng)度值最低的陣列結(jié)構(gòu),更新種群直至最大迭代次數(shù),最終輸出最優(yōu)個(gè)體,其對(duì)應(yīng)的陣列結(jié)構(gòu)即為該限定條件下的DOA估計(jì)最優(yōu)陣列結(jié)構(gòu).CM-IA算法流程如圖1所示.
為驗(yàn)證本文所提出的CM-IA算法的有效性,利用Matlab軟件平臺(tái)進(jìn)行以下兩個(gè)仿真實(shí)驗(yàn):
將陣列孔徑約束為4.5λ,種群規(guī)模為80,天線數(shù)為10,基因位共37位,變異概率Pm為0.004,交叉概率Pc為0.5.當(dāng)空間中兩個(gè)相互獨(dú)立的遠(yuǎn)場(chǎng)窄帶信號(hào)分別從方向15°和25°入射時(shí),利用MUSIC算法對(duì)上述信號(hào)進(jìn)行譜峰搜索,并將DOA估計(jì)均方根誤差的倒數(shù)作為適應(yīng)度函數(shù),再分別利用本文提出的CM-IA算法和經(jīng)典免疫遺傳(IA)算法搜索DOA估計(jì)最優(yōu)陣列結(jié)構(gòu).兩種算法的適應(yīng)度函數(shù)變化趨勢(shì)如圖2所示.
圖2 DOA估計(jì)適應(yīng)度值隨迭代次數(shù)的變化趨勢(shì)Fig.2 Trend of fitness value of DOAestimation with iteration times
由圖2可知,當(dāng)?shù)螖?shù)相同時(shí),CM-IA算法的適應(yīng)度值高于IA算法;當(dāng)?shù)螖?shù)約達(dá)83時(shí),IA算法停止進(jìn)化,適應(yīng)度值約為68;當(dāng)?shù)螖?shù)達(dá)到90時(shí),CM-IA算法停止進(jìn)化,適應(yīng)度值約為77.CM-IA算法搜索得到的個(gè)體適應(yīng)度值明顯高于IA算法.可見,CM-IA算法能夠避免傳統(tǒng)IA算法的早熟現(xiàn)象,且進(jìn)化所得的最優(yōu)個(gè)體能夠獲得更高的適應(yīng)度.
CM-IA算法經(jīng)過(guò)100次迭代所獲得的該環(huán)境下最優(yōu)個(gè)體為[1 0 0 0 1 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1].
圖3 不同信噪比條件下DOA估計(jì)成功概率的變化趨勢(shì)Fig.3 Trend of DOA estimation success probability under different SNR
由圖3可知,利用OMP算法分辨兩個(gè)相干信號(hào)的來(lái)波方向,當(dāng)信噪比低于10 dB時(shí),在該約束條件下CM-IA算法優(yōu)化所得的最優(yōu)陣列結(jié)構(gòu)DOA估計(jì)的成功概率遠(yuǎn)高于10元均勻線陣;當(dāng)信噪比達(dá)到13 dB時(shí),兩種陣列結(jié)構(gòu)的DOA估計(jì)成功概率趨于一致.SS-MUSIC算法在處理相干信號(hào)時(shí),由于損失了大量的陣列孔徑,在小快拍數(shù)的條件下無(wú)法利用10元均勻線陣分辨出空間遠(yuǎn)場(chǎng)窄帶信號(hào),當(dāng)陣元數(shù)增大至20、信噪比提高至30 dB時(shí),成功概率才能達(dá)到1.可見,在一定條件下與相同陣元數(shù)的均勻線陣相比,CM-IA算法搜索得出的最優(yōu)陣列結(jié)構(gòu)充分地利用了陣列孔徑,在小快拍數(shù)、低信噪比的惡劣條件下能夠獲得更高的DOA估計(jì)成功概率,且能推廣應(yīng)用于OMP等壓縮感知算法中關(guān)于相干信號(hào)的處理,避免了傳統(tǒng)SS-MUSIC算法處理相干信號(hào)所需快拍數(shù)大、信噪比高等弊端.
本文將混沌機(jī)制應(yīng)用于遺傳算法,提出CM-IA算法用于搜索一定約束條件下DOA估計(jì)的最優(yōu)陣列結(jié)構(gòu),并將DOA估計(jì)均方根誤差的倒數(shù)作為適應(yīng)度函數(shù),通過(guò)構(gòu)建混沌方程和設(shè)置混沌初值得到了一組非隨機(jī)序列.根據(jù)混沌方程所得的混沌因子制作疫苗并為個(gè)體接種,通過(guò)交叉和變異運(yùn)算實(shí)現(xiàn)種群的更新,最終輸出的最優(yōu)個(gè)體即為DOA估計(jì)最優(yōu)陣列結(jié)構(gòu).仿真結(jié)果表明,與IA算法相比,CM-IA算法能夠獲得適應(yīng)度更高的陣列結(jié)構(gòu).該陣列結(jié)構(gòu)與均勻線陣相比,能夠充分利用陣列孔徑提高DOA估計(jì)的成功概率,且能夠推廣應(yīng)用于壓縮感知算法中關(guān)于相干信號(hào)的處理,實(shí)現(xiàn)DOA估計(jì)陣元的靈活布放,極大地增加了陣列結(jié)構(gòu)的利用率.