楊小鋆,李 蠡
(成都信息工程大學(xué) 通信工程學(xué)院,成都 610225)
正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM)是一種多載波調(diào)制技術(shù).因其具有高帶寬效率、多徑衰落魯棒性的特點(diǎn),使得它在無線通信領(lǐng)域得以廣泛地應(yīng)用[1].但目前OFDM 系統(tǒng)仍具有一定缺陷,其中最主要的缺陷就是其峰均比過高.高的峰均比會(huì)增大OFDM 系統(tǒng)對(duì)功率放大器(High Power Amplifier,HPA)的線性放大要求,會(huì)使HPA 工作效率以及ADC/DAC的量化噪聲比受到一定影響.
針對(duì)OFDM 系統(tǒng)高峰均比的問題,專家學(xué)者們已經(jīng)提出了一系列的解決方案,包括限幅濾波(CF)、壓擴(kuò)變換(Companding)、部分傳輸序列(PTS)、選擇性映射(SLM)、星座圖擴(kuò)展(ACE)等.其中PTS與SLM屬于加擾類技術(shù),它們因不會(huì)引起信號(hào)畸變且有良好的PAPR 性能在工程中被廣泛應(yīng)用.該類技術(shù)主要思想是首先對(duì)OFDM 輸入數(shù)據(jù)進(jìn)行加擾后,從中選出PAPR最小的一路信號(hào)進(jìn)行傳輸,從而降低高PAPR 信號(hào)出現(xiàn)的概率[2].但由于此類技術(shù)需要進(jìn)行最佳相位因子的全遍歷搜索,所以使得整個(gè)系統(tǒng)有很高的計(jì)算復(fù)雜度,這成為PTS 技術(shù)應(yīng)用于實(shí)際系統(tǒng)的巨大阻礙,同時(shí)也成為本文研究的重點(diǎn)內(nèi)容.
為了降低傳統(tǒng)PTS 技術(shù)的計(jì)算復(fù)雜度,文獻(xiàn)[3]提出一種迭代翻轉(zhuǎn)算法IPTS,在保證PAPR 性能的同時(shí),大幅度降低了計(jì)算復(fù)雜度.近些年來,為了克服PTS 技術(shù)的不足,遺傳算法[4,5]、粒子群算法[6–9]等智能算法也被廣泛應(yīng)用到PTS的最佳相位因子搜索中來,本文主要針對(duì)PSO-PTS 算法進(jìn)行研究,文獻(xiàn)[10]提出DPSOPTS 算法,該算法有效地降低計(jì)算復(fù)雜度且擁有較好的PAPR 性能,但DPSO-PTS 算法有種群?jiǎn)我?易陷入局部最優(yōu)缺陷.針對(duì)這一問題,文獻(xiàn)[11]中提出基于種群分類與動(dòng)態(tài)學(xué)習(xí)因子的DPSO-PTS 改進(jìn)算法,首先對(duì)粒子的適應(yīng)度進(jìn)行分類,再依據(jù)適應(yīng)度的好壞調(diào)整學(xué)習(xí)因子.文獻(xiàn)[12]提出用慣性權(quán)重線性遞減策略達(dá)到全局搜索與局部搜索的平衡,并用漢明距離對(duì)速度更新公式進(jìn)行改進(jìn).文獻(xiàn)[13]用劃分主子群與輔助子群的方式來增加種群多樣性.文獻(xiàn)[14]提出一種基于動(dòng)態(tài)離散粒子群優(yōu)化的PTS 相位系數(shù)搜索算法.這些算法較DPSO-PTS 算法相比,PAPR 性能都有或多或少的改善.
本文針對(duì)DPSO-PTS的缺陷提出了新的解決方案,首先定義一種新的慣性權(quán)重策略來平衡粒子的局部搜索和全局搜索的能力,然后又通過引入對(duì)未知空間搜索的變異算子,改進(jìn)速度更新公式,增大粒子尋優(yōu)范圍,增強(qiáng)算法的種群多樣性,避免算法早熟而影響最優(yōu)相位加權(quán)因子的搜索,力求得到更優(yōu)的PAPR 抑制性能.
假設(shè)OFDM 系統(tǒng)包含N個(gè)子載波,用Xk={X0,X1,X2,···,XN?1}表示OFDM 輸入頻域信號(hào),那OFDM 時(shí)域信號(hào)序列x(n)可以表示成:
那么OFDM 信號(hào)PAPR 定義為:
其中,m ax{|xn|2}表示信號(hào)功率的最大值,E{|xn|2}表示信號(hào)功率的平均值,PAPR的單位為dB.
一般情況下,用互補(bǔ)累積分布函(Complementary Cumulative Distribution Function,CCDF)來描述PAPR的分布情況,CCDF表示的是峰均比大于某一門限值z(mì)的概率,其數(shù)學(xué)表達(dá)式為:
圖1為部分傳輸序列(PTS)技術(shù)實(shí)現(xiàn)框圖.PTS技術(shù)的主要思想是將N個(gè)符號(hào)的輸入數(shù)據(jù)塊按一定的規(guī)則分割成V個(gè)大小相同、連續(xù)分布且互不相交的子塊,分割后的數(shù)據(jù)塊可以表示成:X=[X1,X2,···,XN],然后讓每個(gè)分割后的子塊都乘以一個(gè)相應(yīng)的相位因子bv=ejφv,v=1,2,···,V,隨后將處理過的時(shí)域子塊序列進(jìn)行組合,再經(jīng)過IFFT 變換可以得到候選序列x:
其中,{xv}為PTS.選擇使得PAPR 最小的候選序列進(jìn)行傳輸:
這樣,最小PAPR 向量的時(shí)域信號(hào)就可以表示成:
圖1 部分傳輸序列(PTS)技術(shù)實(shí)現(xiàn)框圖
粒子群算法是種群智能優(yōu)化算法的一種,它是通過模擬鳥群覓食過程中遷徙和群聚行為而提出的.在PSO 算法中,粒子群中的每個(gè)粒子都有對(duì)應(yīng)的位置、速度以及適應(yīng)度,每個(gè)粒子位置都代表所求問題的一個(gè)備選解,其速度決定了粒子在搜索空間的飛行方向和距離,而由具體優(yōu)化目標(biāo)函數(shù)確定的適應(yīng)度決定著粒子的優(yōu)劣程度.
粒子群算法首先隨機(jī)初始化一群粒子,然后迭代找到最優(yōu)解.在每次迭代中,粒子都是通過跟蹤兩個(gè)極值來更新自己,它們分別是粒子本身搜索到的個(gè)體最優(yōu)解和整個(gè)種群的最優(yōu)解.若假設(shè)在D維的搜索空間里隨機(jī)產(chǎn)生具有N個(gè)粒子的群體,其中在第k次迭代中,第i個(gè)粒子在第d維的位置為,速度為,個(gè)體最優(yōu)解為,全局最優(yōu)解為Gk,則粒子尋優(yōu)遵循的速度和位置更新公式為:
其中,i=1,2,···,N,d=1,2,···,D.w為慣性權(quán)重,c1和c2被 稱為學(xué)習(xí)因子,一般取c1=c2=2,r1和r2是(0,1)之間的偽隨機(jī)數(shù).
由于粒子群算法主要是針對(duì)連續(xù)問題提出的,為了將粒子群算法用于求解離散空間極值問題,有人在此基礎(chǔ)上提出了一種二進(jìn)制離散粒子群算法(Discrete Particle Swarm Optimization,DPSO).DPSO 算法流程圖如圖2所示.
DPSO 算法的粒子速度更新保持式(7)不變,而粒子位置更新公式變?yōu)?
圖2 DPSO 算法流程圖
雖然DPSO 算法已具有良好的尋優(yōu)性能,但DPSO算法有易于早熟,往往不能得到全局最優(yōu)解缺陷.對(duì)此本文在傳統(tǒng)DPSO的基礎(chǔ)上進(jìn)行了改進(jìn),首先由于慣性權(quán)重是決定DPSO 算法搜索能力好壞的一個(gè)重要參數(shù),它可以調(diào)整算法全局搜索能力和局部搜索能力之間的平衡.
有人曾提出用基于線性遞減策略的離散粒子群(LDPSO)算法來進(jìn)行部分傳輸序列的最佳相位因子的搜索.典型線性遞減策略計(jì)算公式為:
其中,k表示當(dāng)前迭代次數(shù),T為最大的迭代次數(shù),wmax為w最大值,wmin為w最小值.此算法在搜索前期,w值較大,側(cè)重全局搜索能力,有助于跳出局部極小值.隨著迭代次數(shù)增加,w不斷減小,算法局部搜索能力增強(qiáng),利于算法的收斂.
雖然LDPSO 算法中w的變化符合粒子的總體運(yùn)行方向,但算法也要考慮到粒子的實(shí)際運(yùn)行情況.因此,這里提出基于進(jìn)化速度-聚集度策略的動(dòng)態(tài)離散粒子群(DDPSO)算法,DDPSO 算法w的變化是根據(jù)粒子進(jìn)化速度和粒子的聚集程度實(shí)時(shí)進(jìn)行調(diào)整的.
首先粒子進(jìn)化速度會(huì)在一定程度上影響粒子搜索能力,若粒子的進(jìn)化速度較快,應(yīng)增大w的值,保持粒子的大范圍搜索能力.相反的若粒子進(jìn)化速度較慢,應(yīng)減小w的值,增強(qiáng)粒子的局部搜索能力.若設(shè)F(Gk)為第k次迭代的全局最佳解Gk的適應(yīng)度,則粒子進(jìn)化速度kv可以定義為:
其次粒子聚集度反映了粒子的集中程度,若粒子比較集中,易陷入局部最優(yōu),應(yīng)增大w的值,若粒子比較分散,應(yīng)減小w的值,應(yīng)適當(dāng)減小粒子搜索空間.這里設(shè)為當(dāng)前所有粒子適應(yīng)度的平均值,則粒子聚集度ka可以定義為:
基于以上考慮,基于動(dòng)態(tài)變化慣性權(quán)重策略的離散粒子群算法w的計(jì)算公式可表示為:
其中,wini為初始值,wkv和wka是用來調(diào)節(jié)進(jìn)化速度kv和粒子聚集度ka的參數(shù).
為了更好控制DPSO 算法的整體搜索能力,避免算法脫離實(shí)際運(yùn)行和粒子低能或失效的問題.本文結(jié)合LDPSO和DDPSO 算法的優(yōu)點(diǎn),并引入權(quán)重參數(shù)λ1和λ2,將兩者進(jìn)行結(jié)合來確定w的值,計(jì)算公式如下:
其中,λ1,λ2∈[0,1],且λ1+λ2=1,通過調(diào)整λ1和λ2的值來控制LDPSO 算法和DDPSO 算法對(duì)慣性權(quán)重w值的影響程度,所以λ1和λ2的取值將直接影響到算法的收斂效率,λ1的取值過大會(huì)使算法的慣性權(quán)重策略退化成線性慣性權(quán)重策略,取值過小則退化成動(dòng)態(tài)變化慣性權(quán)重策略.
為了增強(qiáng)種群的多樣性,避免出現(xiàn)早熟收斂現(xiàn)象,本文又借鑒遺傳算法變異的思想,結(jié)合文獻(xiàn)[15]將變異算法融入進(jìn)來,使得粒子尋優(yōu)范圍得以擴(kuò)大.因此將式(7)速度更新公式替換成:
一天,“包子西施”的老板來找平老板,說:“生意不好,當(dāng)時(shí)租房訂一年合同,現(xiàn)在才三個(gè)月,還沒到期,你家生意好,把門面房轉(zhuǎn)租給你,請(qǐng)平老板幫忙?!?/p>
其中,R為解空間隨機(jī)位置,r3∈(0,1)偽 隨機(jī)數(shù),ρ為對(duì)未知世界的好奇系數(shù),一般設(shè)置 ρ=2.
傳統(tǒng)PTS 算法中對(duì)最優(yōu)相位因子的搜索采取的是遍歷搜索的方式,其計(jì)算復(fù)雜度非常高,這對(duì)實(shí)時(shí)性要求高的系統(tǒng)會(huì)產(chǎn)生偌大的影響.而離散粒子群可避開遍歷搜索,可以有效地降低計(jì)算復(fù)雜度,本文提出的改進(jìn)算法還解決了傳統(tǒng)離散粒子群算法易于早熟收斂,往往不能收斂到全局最優(yōu)的缺陷.在本文提出的改進(jìn)DPSO-PTS 算法中,相位因子集合{1,?1}分別映射為{1,0},粒子適應(yīng)度函數(shù)為:
算法具體實(shí)現(xiàn)步驟為:
① 參數(shù)初始化.設(shè)置粒子個(gè)數(shù)N、慣性權(quán)重w、學(xué)習(xí)因子c1,c2等參數(shù);隨機(jī)初始化粒子群位置,i=1,2,···,N,d=1,2,···,D和速度v1id,i=1,2,···,N,d=1,2,···,D;
② 計(jì)算并比較每個(gè)粒子適應(yīng)度f,得到初始個(gè)體極值和全局極值G1;
③ 根據(jù)式(15)計(jì)算w,根據(jù)式(16)和式(9)分別更新粒子速度和位置;
④ 更新個(gè)體極值和全局極值;
⑤ 若當(dāng)前迭代次數(shù)小于預(yù)設(shè)迭代次數(shù)T,重復(fù)③和④,否則退出循環(huán)并執(zhí)行⑥;
⑥ 將迭代得到的全局極值作為PTS 算法的相位因子,通過式(6)得到具有最小PAPR的OFDM 信號(hào)進(jìn)行傳輸,算法結(jié)束.
圖3為本文算法與其他幾種不同算法的CCDF 性能曲線對(duì)比圖.當(dāng)CCDF=10?3且迭代次數(shù)為20 時(shí),原始信號(hào)的PAPR 值為10.82 dB,次優(yōu)IPTS 算法的PAPR值為8.05 dB,DPSO-PTS 算法的PAPR 值為7.06 dB,文獻(xiàn)[12]提出的MDPSO-PTS 算法的PAPR 值為6.96 dB,本文所提算法的PAPR 值為6.8 dB,傳統(tǒng)PTS 算法的PAPR 值6.77 dB,本文所提算法較原始信號(hào)、次優(yōu)IPTS、DPSO-PTS、文獻(xiàn)[12]的MDPSO-PTS 相比,分別優(yōu)化了4.02 dB、1.25 dB、0.26 dB、0.16 dB,較傳統(tǒng)PTS 算法相比差了0.03 dB,但傳統(tǒng)PTS 算法計(jì)算復(fù)雜度比本文算法計(jì)算復(fù)雜度要高出許多.
圖3 不同算法的CCDF 性能曲線對(duì)比
圖4為本文算法、傳統(tǒng)PTS 算法以及DPSO-PTS算法在不同迭代次數(shù)下的CCDF 性能曲線.從仿真結(jié)果可以看出,本文所提算法能很好地改善系統(tǒng)的PAPR.在CCDF=10?3處,在相同的迭代次數(shù)下,本文算法PAPR性能優(yōu)于DPSO-PTS 算法,稍差于傳統(tǒng)PTS 算法.
圖4 不同算法在不同迭代次數(shù)下的CCDF 性能曲線
由表1具體數(shù)據(jù)可以看出本文算法PAPR 性能隨著迭代次數(shù)的增加而有所提升,在迭代次數(shù)為5、10、20、30 時(shí),本文算法較DPSO-PTS 算法相比,分別優(yōu)化了0 dB、0.1 dB、0.26 dB、0.28 dB.同時(shí)也可以看出DPSO-PTS 算法經(jīng)過10 次迭代后就收斂了,而本文算法在30 次迭代時(shí)才基本收斂,說明本文算法在一定程度上有效解決了DPSO-PTS 算法易陷于局部最優(yōu)解的問題.但在實(shí)際系統(tǒng)中,建議算法迭代次數(shù)為20 次最佳,犧牲極小部分的PAPR 性能,可以避免多余的計(jì)算量.
表1 不同迭代次數(shù)下各個(gè)算法的PAPR 比較(單位:dB)
圖5為本文算法、傳統(tǒng)PTS 算法以及DPSO-PTS算法在不同粒子數(shù)下的CCDF 性能曲線.從仿真結(jié)果可以看出算法的PAPR 抑制性能會(huì)受到粒子數(shù)的影響.在CCDF=10?3處,當(dāng)?shù)螖?shù)為20 且粒子數(shù)popNum=[10,20,30]時(shí),本文算法較DPSO-PTS 算法相比,分別優(yōu)化了0.23 dB、0.12 dB、0.05 dB.也可以看出本文算法隨著粒子數(shù)的增加PAPR性能改善不太明顯,而粒子數(shù)會(huì)增加復(fù)雜度,因此算法粒子數(shù)為10 最為合適.
圖5 不同算法在不同粒子數(shù)下的CCDF 性能曲線
圖6為本文算法、傳統(tǒng)PTS 算法以及DPSO-PTS算法在不同學(xué)習(xí)因子下的CCDF 性能曲線對(duì)比圖.由圖可看出,在不同學(xué)習(xí)因子下,本文算法的PAPR 抑制性能都優(yōu)于DPSO-PTS 算法,DPSO-PTS 算法受學(xué)習(xí)因子的影響較大,本文算法受其影響較小,考慮是慣性權(quán)重和學(xué)習(xí)因子雙重作用的緣故.
圖6 不同算法在不同學(xué)習(xí)因子下的CCDF 性能曲線
圖7為本文算法在不同權(quán)重參數(shù)下的CCDF 性能曲線.由圖中可以看出,本文算法在λ1=0.6情況下表現(xiàn)出更加優(yōu)秀的PAPR 抑制性能,也解釋了本文算法以線性遞減慣性權(quán)重策略為主,以動(dòng)態(tài)慣性權(quán)重策略為輔的原因.
圖7 在不同權(quán)重參數(shù)下的CCDF 性能曲線
圖8為本文算法在不同分割方式下的CCDF 性能曲線.由仿真結(jié)果可以看出隨機(jī)分割的PAPR 性能最佳,但隨機(jī)分割的計(jì)算復(fù)雜度很高,隨機(jī)-交織分割方式與隨機(jī)分割方式相比,PAPR 性能雖差了0.1 dB,但是計(jì)算復(fù)雜度要低很多,所以本文前面采用的隨機(jī)-交織分割方式進(jìn)行仿真.
圖9為所提算法與其他幾種算法的誤碼率性能比較圖.由圖可知,本文所提算法與原始信號(hào)、傳統(tǒng)PTS、傳統(tǒng)DPSO-PTS 這幾種算法相比,誤碼率性能幾乎相同,說明本文算法不會(huì)產(chǎn)生多余的信號(hào)失真.
圖8 在不同分割方式下的CCDF 性能曲線
圖9 誤碼率性能比較
針對(duì)傳統(tǒng) PTS 算法計(jì)算復(fù)雜度高的問題,本文提出一種基于新的慣性權(quán)重策略和變異算子的改進(jìn)DPSO算法,此算法w值的確定同時(shí)考慮了粒子的總體運(yùn)行方向和粒子的實(shí)際運(yùn)行情況,在此基礎(chǔ)上還引入變異算子增強(qiáng)算法種群多樣性.其可以快速且準(zhǔn)確地找出最優(yōu)的相位因子,得到具有較小的PAPR的OFDM 信號(hào).仿真結(jié)果表明,在誤碼率基本不變的情況下,本文算法與IPTS、傳統(tǒng)DPSO-PTS 等算法相比,擁有更好的PAPR 性能,與傳統(tǒng) PTS 算法相比,PAPR 性能略微下降,但其計(jì)算復(fù)雜度會(huì)有明顯改善,且相位因子集合W和分塊數(shù)V越大改善效果會(huì)更加明顯.