IDMA通信系統(tǒng)中的粒子群交織算法
先進(jìn)的接入技術(shù)碼分多址(CDMA)能夠有效利用帶寬,提高系統(tǒng)容量,應(yīng)用廣泛。IDMA交織多址是一種特殊的CDMA通信方式,使用碼片級的交織序列區(qū)分用戶。交織序列打亂原來編碼順序,使相鄰碼片近似無關(guān),且其接收端采用碼片到碼片的迭代多用戶檢測接收方式,計算復(fù)雜度較小。作為IDMA的關(guān)鍵技術(shù),交織序列的產(chǎn)生必須是隨機(jī)和獨(dú)立的,且交織序列之間互相關(guān)系數(shù)較小。但在實(shí)際中,當(dāng)數(shù)據(jù)幀長度較小,且用戶數(shù)較大時,隨機(jī)交織后序列的互相關(guān)系數(shù)以較大概率接近于1,使接收端不能正確檢測出用戶數(shù)據(jù),嚴(yán)重影響通信性能。文獻(xiàn)提出以互相關(guān)函數(shù)矩陣作為適應(yīng)度函數(shù),用進(jìn)化算法獲得最優(yōu)交織序列,但進(jìn)化算法易陷入局部最優(yōu)解,不能獲得全局最優(yōu)的交織序列。本文把粒子群算法引入交織算法中,在較少迭代次數(shù)的情況下即可獲得最優(yōu)解,同時仿真大用戶情況下的交織性能,實(shí)驗(yàn)結(jié)果表明此算法性能較優(yōu)。
2 IDMA通信系統(tǒng)中的檢測原理與方法
圖1為IDMA通信系統(tǒng)發(fā)送和接收部分的結(jié)構(gòu)圖。該系統(tǒng)發(fā)送端包括K個用戶,第k個用戶發(fā)送的碼元序列為:dk=[dk(1),…,dk(i),…,dk(I)](I為發(fā)送序列碼元長度),經(jīng)碼長為S的重復(fù)編碼擴(kuò)頻得到序列為:Gk=[Gk(1),…,Gk(j),…,Gk(J)],J為擴(kuò)頻后的碼長,再經(jīng)交織器打亂順序重排后成為發(fā)送序列為:Xk=[xk(1),…,xk(j),…xk(J)]。
系統(tǒng)接收端采用Turbo型迭代譯碼結(jié)構(gòu),主要由基本信號檢測器ESE、解交織器和K個用戶譯碼器DEC組成。系統(tǒng)中考慮完全同步無記憶信道,接收信號r(j)表示為:
式中,n(j)為高斯白噪聲采樣,hk為第k個用戶的信道衰落系數(shù),ζk(k)為第后個用戶第j個碼片的失真,根據(jù)中心極限定理,ζk(j)滿足近似高斯分布,可用均值和方差函數(shù)表示。
基本信號檢測器模塊ESE的檢測算法概括如下:
式中E(.)表示均值,V(.)表示方差。
譯碼器DEC反饋的先驗(yàn)信息經(jīng)交織后得到eDEC[xk(j)],更新ESE中接收信號的均值和方差,并產(chǎn)生輸入到譯碼器DEC的外信息eESE(xk(j)),外信息經(jīng)過解交織,作為譯碼器DEC輸入端的先驗(yàn)信息,如此循環(huán)迭代直到規(guī)定的次數(shù)以后,K個用戶的譯碼器分別產(chǎn)生相應(yīng)信息序列的硬判決值dk。
3 基于粒子群的交織算法
3.1 粒子群算法的相關(guān)定義與操作
粒子群算法是一種基于迭代的優(yōu)化方法,具有易于實(shí)現(xiàn)、需要調(diào)整的參數(shù)少等優(yōu)點(diǎn),并且在較少的迭代次數(shù)的情況下就可獲得全局最優(yōu)解。設(shè)粒子群粒子個數(shù)為M,在一個D維的搜索空間中,粒子i(1≤i≤M)在第k次迭代時的位置信息為速度信息表示為搜索空間的任意數(shù),即粒子到目前為止所經(jīng)歷的最好位置為群體中所有粒子到目前為止所經(jīng)歷過的最好位置為其中b為具有最優(yōu)位置粒子的索引。為使粒子群算法能正確解決交織問題,這里定義粒子的位置和速度的含義及相關(guān)操作如下:
(1)粒子定義粒子的位置定義為一序列。對于搜索空間為D維的種群,序列長度為D。假設(shè)某個粒子j的位置為xj,D=5,則可表示為xj=(1,2,3,4,5);速度定義為粒子位置的變換集,即一組置換序列的有序列表,表示為:v={(ik,jk),ik,jk∈D},k∈{1,2,…,|v|,其中|v|表示該速度所含置換序列的個數(shù)。
(2)置換操作 假設(shè)某粒子i的位置為xi,定義置換序列(mi,ni),置換操作用以交換xi中第mi和ni個值的位置,則x'i=xi+(mi,ni),其中x'i為經(jīng)過置換操作后得到的新位置。
(3)加法操作包括粒子速度與速度的加法操作及粒子速度和位置的加法操作。設(shè)vi、vj、vk分別表示第i、第j及第k個粒子速度,xk為第k個粒子位置。vi+vj表示兩個速度相加的操作,其結(jié)果為兩個置換序列合并,產(chǎn)生一個新置換序列串;vk+xk表示速度和位置的加法操作,即將一組置換序列依次作用于某個粒子位置。其結(jié)果為一個新位置。
(4)減法操作主要指粒子位置與位置的減法操作。該操作相減后結(jié)果為一組置換序列,即速度。設(shè)xk為第k個粒子位置,xi為第i個粒子位置,則xi-xk為一個置換序列。例如:xi=(1,2,3,4,5),xk=(2,3,1,4,5),由于xi(1)=1,xk(3)=1,第1個交換序列為(1,3),xj=xk(1,3)=(1,3,2,4,5);又xi(2)=2,xi(3)=2,第2個交換序列為(2,3),xi=xj+(2,3),因此經(jīng)上述操作得到:xi=xk+{(1,3),(2,3)},所以xi-xk={(1,3),(2,3)}。
(5)乘法操作 指實(shí)數(shù)與粒子速度的乘法操作。對于在(0,1)任意實(shí)數(shù)c,設(shè)速度v有i個置換序列,則乘法操作截取速度置換序列,使新的速度置換序列個數(shù)為|cxi|(cxi取整)。
根據(jù)以上定義,粒子群的更新公式可描述為:
式中,c1與c2是兩個正的常數(shù),稱為加速因子,r1和r2為分布于[0,1]間的隨機(jī)數(shù)。
3.2 粒子群交織算法
對于碼片長度為J的序列,其交織方式有J!種。當(dāng)J較小,而用戶數(shù)較大時,隨機(jī)產(chǎn)生的交織序列之間的互相關(guān)系數(shù)接近1,交織區(qū)分用戶時,嚴(yán)重影響兩個用戶間通信的性能。粒子群算法能搜索到全局最優(yōu)解,可選擇互相關(guān)性最弱的交織序列區(qū)分用戶,從而提高通信性能。
在數(shù)據(jù)傳輸中,碼片長度J=IxS,其中I為傳輸序列碼元長度。S為擴(kuò)頻碼長度。粒子群交織是從J!個交織序列中選擇K個互相關(guān)性弱的序列區(qū)分用戶,但J!個解在實(shí)際操作中運(yùn)算量較大,故選擇N個作為初始解。粒子群交織算法中選擇互相關(guān)矩陣作為適應(yīng)度函數(shù)。X為N×J的數(shù)據(jù)矩陣,是N個可能的解,每個解是長度為J的交織序列,其元素為X(n,J)∈{-1,1}(n=1,…,N,j=1,…,J);INDEX表示一個,N×J的矩陣,其值是對應(yīng)數(shù)據(jù)矩陣X的交織序列的索引值;R是X的互相關(guān)系數(shù)矩陣,為N×N維,R的元素R(i,j)由下式計算得到:
式中,Xi是矩陣X的第i行向量,μi=E(Xi),E表示數(shù)學(xué)期望。
基于粒子群的交織算法步驟為:(1)初始化種群,隨機(jī)產(chǎn)生一個初始種群的索引值和一個初始置換序列,根據(jù)索引值產(chǎn)生數(shù)據(jù)矩陣X;(2)根據(jù)式(10)和式(11)計算適應(yīng)度函數(shù),保存全局最優(yōu)解和局部最優(yōu)解;(3)根據(jù)式(8)計算粒子速度。首先計算局部最優(yōu)解得到置換序列,再計算全局最優(yōu)解得到另一個置換序列,將其分別與系數(shù)相乘截取后與合并得到(4)根據(jù)式(9)更新粒子當(dāng)前位置索引值,同時根據(jù)索引值更新數(shù)據(jù)矩陣X值;(5)重新計算適應(yīng)度函數(shù),更新(6)如果達(dá)到最大迭代次數(shù),算法終止;否則轉(zhuǎn)至步驟2。
4 性能仿真與分析
為檢驗(yàn)基于粒子群交織算法(PSOI)的性能,將該算法與非隨機(jī)交織迭代檢測(Un-random)、隨機(jī)交織迭代檢測(Ran-dom)和進(jìn)化交織迭代算法(EI)相比較。仿真條件為:未編碼的高斯信道,信道衰落系數(shù)hk=k,k∈(1,2,…,K),數(shù)據(jù)碼元長度I=10;擴(kuò)頻碼元長度S=4;則交織碼元長度J=I×S=40;N=10×K;所有用戶使用相同的擴(kuò)頻碼元,循環(huán)迭代譯碼10次,蒙特卡羅仿真10 000次,粒子群參數(shù)設(shè)置為:ω=1 ,c1=c2=2。圖2為K=5時Un-random、Random、EI和PSOI的誤碼率和信噪比關(guān)系曲線。由圖可知,由于Un-random有較高的互相關(guān)性,其性能最差。當(dāng)信噪比大于8 dB時,PSOI的誤碼率已接近于零,遠(yuǎn)優(yōu)于其他幾種算法。圖3為K=25時Un-random、Random、EI和PSOI的誤碼率與信噪比關(guān)系曲線。由圖可知,當(dāng)數(shù)據(jù)碼片長度較小時,Random的交織序列的互相關(guān)系數(shù)較大,使其性能下降;EI由于搜索能力較差,易陷入局部最優(yōu)解,使得交織性能下降,而PSOI性能較優(yōu)。圖4為SNR=6 dB時Un-random、Random、EI和PSOI的誤碼率與用戶數(shù)的關(guān)系。由圖可知,PSOI隨用戶數(shù)增加的誤碼率要低于其他幾種算法。但由于信噪比較低,EI的誤碼率較接近PSOI。圖5為SNR=9 dB,K=25時Un-random、Random、EI和PSOI的誤碼率與迭代次數(shù)的關(guān)系。由圖可知。隨著迭代次數(shù)增加,4種方法誤碼率都會下降,但PSOI的性能明顯優(yōu)于其他幾種算法。
5 結(jié)束語
本文將粒子群算法用于交織中,以互相關(guān)矩陣作為適應(yīng)度函數(shù),提出粒子群交織算法。仿真表明,該算法在高信噪比時,性能遠(yuǎn)優(yōu)于非隨機(jī)交織、隨機(jī)交織和基于進(jìn)化算法的交織。