張慧芝, 張?zhí)祢U, 方 蓉, 羅慶予
(重慶郵電大學通信與信息工程學院, 重慶 400065)
直接序列擴頻信號因為其隱蔽性、抗干擾、保密性高等優(yōu)點,在軍事和民用通信中被廣泛應(yīng)用[1]。但是傳統(tǒng)直接序列擴頻技術(shù)存在占用帶寬大、信息傳輸效率低等問題。為了解決這些問題,軟擴頻技術(shù)[2-3]將直接序列擴頻技術(shù)與編碼技術(shù)相結(jié)合,發(fā)展成為一種新型的基帶擴頻技術(shù),相比直接序列擴頻信號更難被攔截[4]?,F(xiàn)如今,軟擴頻技術(shù)已被廣泛應(yīng)用,如美軍的聯(lián)合戰(zhàn)術(shù)信息分配系統(tǒng)(joint tactical information distribution system,JTIDS)采用了(32,5)的軟擴頻通信技術(shù)[2];挪威新一代戰(zhàn)地通信網(wǎng)提出采用(256,8)和(32,7)的正交矩陣編碼[2];寬帶碼分多址(wideband code division multiple access,WCDMA)也應(yīng)用了(64,6)的Walsh碼軟擴頻編碼技術(shù)[5]。
與直擴信號相比,軟擴頻信號不僅需要估計偽碼序列,還需要估計偽碼序列規(guī)模數(shù),常規(guī)估計方法如矩陣分解法[6-7]、最小二乘法[8]、三階相關(guān)函數(shù)法[9-10]等將不再適用。目前,關(guān)于軟擴頻信號偽碼序列盲估計的研究還較少。文獻[11]提出基于相關(guān)性的多進制擴頻序列盲估計算法,在信噪比(signal to noise ratio, SNR)大于-1 dB時誤碼率有所減小,但是低信噪比時性能反而更差。文獻[12]利用傳統(tǒng)K-means聚類實現(xiàn)對偽碼序列的估計。但是該方法隨機選取聚類初始點,對估計結(jié)果影響較大。文獻[13]提出一種改進的K-means方法。該方法根據(jù)相似度最小準則選取數(shù)據(jù)對象作為初始聚類點,克服了K-means算法容易陷入局部最優(yōu)的問題。但是該文采用平均輪廓系數(shù)來完成偽碼集合規(guī)模數(shù)的估計,需要多次聚類,計算量較大。文獻[14]提出一種改進的近鄰傳播算法實現(xiàn)了軟擴頻盲解擴。該方法不用事先指定聚類數(shù)目,復(fù)雜度低,但是誤碼率較高。文獻[15]在傳統(tǒng)密度峰聚類算法的基礎(chǔ)上進行了改進,將賦權(quán)歐氏距離作為相似性度量指標。該方法可以自動確定截斷距離,但是在低信噪比情況下準確度低。
針對上述問題,本文提出一種基于奇異值分解(singular value decomposition, SVD)和K-means聚類相結(jié)合的軟擴頻偽碼序列盲估計方法。首先,將接收信號按照一倍偽碼周期進行分段,組成觀測矩陣后進行SVD,取較大特征值個數(shù)作為偽碼序列規(guī)模數(shù)k的估計值并且進行降噪處理。然后,構(gòu)建相似性矩陣,并對其再次進行SVD,將右奇異矩陣前k行向量,與前k個特征值對應(yīng)相乘構(gòu)成判斷矩陣。按照判斷矩陣絕對值最大原則將數(shù)據(jù)進行粗分類,并取每個類簇的平均值作為初始聚類中心。最后,通過K-means算法優(yōu)化分類結(jié)果,完成對偽碼序列的估計。實驗結(jié)果表明,該算法能夠在較低信噪比下盲估計出軟擴頻信號的偽碼序列,并且與文獻[14]相比,本文誤碼率下降了6%。
軟擴頻信號發(fā)射端模型如圖1所示。輸入信號d(t)先由串/并轉(zhuǎn)換得到k比特的并行數(shù)據(jù),每組信息碼的狀態(tài)有M=2k種。再從M條偽碼序列中,根據(jù)每組信息碼的狀態(tài)選擇對應(yīng)的偽碼序列,將信息傳遞出去。
圖1 軟擴頻信號發(fā)射端模型Fig.1 Soft spread spectrum signal transmitter model
設(shè)M條長度為N的偽碼序列表示為
(1)
設(shè)傳輸?shù)男畔?shù)據(jù)為
(2)
將信息碼元每k比特分為一組,則d(t)可以表示為
(3)
k比特信息碼元的權(quán)值為
(4)
k比特信息碼元選擇偽碼序列,依據(jù)的是權(quán)值j。則擴展后的偽碼序列表示為
(5)
式中:cj下標由式(4)決定。當通過高斯白噪聲信道后,接收到的軟擴頻信號可以表示為
(6)
假設(shè)偽碼速率Tc和偽碼周期T=NTc已經(jīng)估計出來[16],以Tc為采樣速率對接收信號進行采樣,得到離散的信號:
x(n)=b(t-τ)+w(t)|t=nTc=b(nTc-τ)+w(nTc)
(7)
式中:τ表示延時時間,τ∈[0,N-1],可以使用文獻[10]中的方法估計出來。
把采樣后的離散序列同步后以偽碼序列周期NTc連續(xù)分段,每個序列含有N個采樣值,即
xi=bi+ni=[x(iN-N),x(iN-N+1),…,x(iN-1)]
(8)
式中:i=1,2,…,Nd;Nd表示總的樣本數(shù)目。則采樣后的數(shù)據(jù)矩陣為X=[x1,x2,…,xNd]T。
在非合作通信條件下,由于偽碼序列規(guī)模數(shù)不一定與偽碼序列長度相等,在已知偽碼周期的前提下,若想得到截獲信號中的有用信息,需要先估計出偽碼集合規(guī)模數(shù)M和M條偽碼序列集合C={c1(t),c2(t),…,cM(t)}。
SVD可以適用于任意矩陣A,其定義如下:
A=UΣVT
(9)
式中:(·)T表示向量的轉(zhuǎn)置。若A是m×n的矩陣,則U是m×m階酉矩陣,Σ是m×n階對角矩陣,由A唯一確定,VT是n×n階酉矩陣[17]。
SVD有以下特性:
(1) 矩陣A的非零奇異值個數(shù)等于它的秩。
(2) 矩陣A在噪聲干擾后的奇異值變化較小,具有穩(wěn)定性。
(3) 矩陣A進行歸一化處理后不會影響奇異值的相對大小。
本文根據(jù)SVD的特性,對偽碼序列規(guī)模數(shù)進行估計。如果忽略噪聲影響,此時rank(X)=M,X有M個奇異值明顯大于0,其余奇異值幾乎為0。當考慮噪聲時,X仍然存在M個奇異值幅值較大,但是其余奇異值受噪聲影響幅值會相對增大。因此,軟擴頻信號偽碼序列規(guī)模數(shù)是X的較大奇異值個數(shù)。
r=[r1,r2,…,rm]T
(10)
ri=var[α(i:m)],i=1,2,…,m
(11)
(12)
(13)
式中:var[·]表示向量的方差;α(i:m)表示α后m-i+1個元素構(gòu)成的向量子集。向量r′將奇異值之間的差距拉大,下面使用仿真實驗進行直觀對比。
偽碼序列使用gold序列生成,長度取N=127 chip,信息碼元按k=4,即M=16分為一組,SNR為-10 dB,樣本數(shù)目選為Nd=1 000組。生成數(shù)據(jù)矩陣后進行SVD,對奇異值進行差異放大處理前后對比如圖2所示。
圖2 差異放大前后奇異值對比Fig.2 Comparison of singular values before and after difference amplification
圖3 偽碼序列集合規(guī)模數(shù)估計Fig.3 Estimation of the set size number of pseudo code sequences
由第2.1節(jié)分析可知,X的前M個大幅值奇異值包含了X的大部分信息。因此,剔除較小的奇異值,不會損失太多原始信號的特征,反而會減小噪聲等干擾對信號的影響,實現(xiàn)降噪效果。
(14)
對于向量xi和xj,其向量夾角的余弦值大小可以表征它們的相似性程度[20],即
(15)
式中:αi,j表示向量xi和xj的夾角值;cosαi,j∈[-1,1]表示兩個向量的夾角余弦值。當cosαi,j=0時,表示向量xi與xj正交;當cosαi,j=±1時,表示向量xi與xj平行。
任取矩陣X′中任意兩段數(shù)據(jù)向量,令rij=cosαi,j,代入式(15)可得
(16)
當不考慮噪聲且偽碼序列之間完全正交時,
(17)
從式(17)可以看出,夾角余弦值可以表示偽碼序列的相似度,其數(shù)值愈大,表示兩個向量的相似度愈高。因此,本文采用夾角余弦值作為相似性的衡量標準,構(gòu)建相似性矩陣R。
對R進行SVD:
(18)
(19)
本文在第3.1節(jié)中完成了對數(shù)據(jù)的粗分類。在此基礎(chǔ)上,使用K-means算法對分類結(jié)果進行優(yōu)化。SVD-K-means算法的具體步驟如下:
步驟 1對接收信號進行采樣、分段,構(gòu)造輸入數(shù)據(jù)矩陣X。
步驟 5令iter=iter+1,計算X′中每個數(shù)據(jù)對象與聚類中心的相似性,即:
(20)
為了驗證本文算法的有效性以及穩(wěn)定性,本節(jié)采用MATLAB進行仿真實驗,其中實驗1、實驗3~7中每一個SNR下進行蒙特卡羅仿真實驗次數(shù)均為300次。
本文實驗主要針對二進制相移鍵控(binary phase shift keying,BPSK)調(diào)制下的軟擴頻信號。噪聲選取高斯白噪聲,各項性能指標定義如下。
(1) 誤碼率
(21)
式中:nl表示第l次蒙特卡羅仿真實驗中錯誤估計的偽碼碼元數(shù);k表示信息碼元每組比特數(shù);N為偽碼序列長度。
(2) SNR
(22)
實驗 1驗證本文算法對軟擴頻信號的偽碼序列集合規(guī)模數(shù)估計的有效性。
偽碼序列使用gold序列生成,長度取N=127 chip,SNR=-20 dB,在不同k值和樣本數(shù)目Nd情況下,將數(shù)據(jù)分段后估計偽碼集合規(guī)模數(shù),不同估計值所占比例如圖4所示。
圖4 偽碼序列集合規(guī)模數(shù)估計Fig.4 Estimation of the size of pseudo code sequence set
由圖4可得,不同k值對應(yīng)的估計值最高頻數(shù)都是2k,并且樣本數(shù)目的選取對估計結(jié)果影響較小。因此,本文可以準確估計出偽碼序列集合規(guī)模數(shù)。當SNR≥-20 dB時,該結(jié)果不會對后面?zhèn)未a序列估計產(chǎn)生影響。
實驗 2驗證本文算法對軟擴頻信號偽碼序列估計的有效性。
偽碼序列使用gold序列生成,長度取N=127 chip,信息碼元按k=2,即M=4分為一組,SNR=-10 dB,樣本數(shù)目選為Nd=1 000組。仿真結(jié)果如圖5所示。
圖5 偽碼序列真實值與估計值對比Fig.5 Comparison of true value and estimated value of pseudo code sequences
由圖5可知,偽碼序列估計值的符號和真實值完全相同。因此,本文算法可以準確估計出偽碼序列。
實驗 3檢驗偽碼序列碼型不同對軟擴頻信號偽碼序列估計性能的影響。
偽碼序列分別使用m序列、gold序列、Walsh碼序列生成,長度取N=127 chip,樣本數(shù)目為Nd=1 000組,信息碼元按k=2分為一組進行對比仿真實驗。軟擴頻信號偽碼序列估計的誤碼率如圖6所示。
圖6 不同碼型下偽碼序列估計誤碼率Fig.6 Error rate estimation for pseudo code sequences with different code types
由圖6可得,隨著SNR的下降,誤碼率不斷增加,而不同碼型下偽碼序列估計誤碼率相差不大。因此,不同偽隨機碼對本文算法的結(jié)果影響不大。
實驗 4檢驗信息碼元每組比特數(shù)k對軟擴頻信號偽碼序列估計性能的影響。
偽碼序列使用gold序列生成,長度取N=127 chip,樣本數(shù)目為Nd=1 000組,信息碼元分別按k=2,3,4分為一組進行對比仿真實驗。軟擴頻信號偽碼序列估計的誤碼率如圖7所示。
圖7 不同k值下偽碼序列估計誤碼率Fig.7 Error rate estimation for pseudo code sequences with different k values
由圖7可得,在信息碼元分組不同的情況下,隨著SNR的增加,偽碼序列估計的誤碼率都在下降;并且在相同的SNR下,誤碼率隨著k值的增大而不斷增大。這是因為在其他條件相同的情況下,隨著偽碼序列集合規(guī)模數(shù)的增大,屬于同一偽碼序列的數(shù)據(jù)組數(shù)相對減少,相互之間的干擾也隨之增大,判斷錯誤的概率就不斷增加。
對于高SNR但是k較大時,可以在粗分類后進行二次分類,根據(jù)相似度將受噪聲影響較大的數(shù)據(jù)對象去除,再求初始簇中心,進一步減小誤碼率,避免誤碼率無法降到0的情況出現(xiàn)。
實驗 5檢驗偽碼序列長度對軟擴頻信號偽碼序列估計性能的影響。
偽碼序列使用gold序列生成,樣本數(shù)目為Nd=1 000組,信息碼元按k=2分為一組,長度分別取N=127 chip,255 chip,511 chip進行對比仿真實驗。不同偽碼序列長度下偽碼序列估計的誤碼率如圖8所示。
圖8 不同偽碼序列長度下偽碼序列估計誤碼率Fig.8 Error rate estimation for pseudo code sequence with different lengths of pseudo code sequence
由圖8可知,在偽碼序列長度不同的情況下,隨著SNR的增加,偽碼序列的估計誤碼率全部降低;并且隨著偽碼序列長度的增加,在相同SNR下誤碼率也在不斷降低。這是因為在其他條件相同的情況下,抗干擾容限會隨著偽碼序列長度的增加而不斷增加,從而導致誤碼率不斷下降。
實驗 6檢驗不同樣本數(shù)目下對軟擴頻信號偽碼序列估計性能的影響。
偽碼序列使用gold序列生成,長度取N=127 chip,樣本數(shù)目分別為Nd=1 000,500,300組,信息碼元按k=2分為一組進行對比仿真實驗。不同樣本數(shù)目下偽碼序列估計的誤碼率如圖9所示。
圖9 不同樣本數(shù)目下偽碼序列估計誤碼率Fig.9 Error rate estimation of pseudo code sequences under different sample numbers
由圖9可得,偽碼序列估計的誤碼率在樣本數(shù)目不同的情況下,均隨SNR升高而降低;并且在相同的SNR下,隨著樣本數(shù)目的減少,誤碼率也越來越高。因此,通過增加樣本數(shù)目,可以提高本文算法的性能。
實驗 7比較不同算法對軟擴頻信號偽碼序列估計的性能。
使用Walsh碼生成偽碼序列,長度取N=128 chip,樣本數(shù)目為Nd=400組,信息碼元按k=2分為一組,分別使用本文算法、改進的K-means算法[13]和改進近鄰傳播算法[14]進行對比仿真實驗。不同算法的偽碼序列估計誤碼率如圖10所示。
圖10 不同算法偽碼序列估計誤碼率對比Fig.10 Comparison of error rate of pseudo code sequence estimation by different algorithms
由圖10可得,在SNR為-10 dB時,本文算法可以將誤碼率降至0.4%以下,而偽碼序列在-9 dB以上時幾乎完全估計準確。并且在相同條件下,本文算法性能明顯優(yōu)于基于改進近鄰傳播算法,與改進K-means算法性能相當,但是改進K-means算法隨著搜索次數(shù)的增加,計算量有所增大。
針對軟擴頻信號偽碼序列盲估計的問題,本文利用不同偽碼序列之間的正交性,提出了SVD與K-means聚類相結(jié)合的方法。本文先對數(shù)據(jù)矩陣進行SVD估計偽碼集合規(guī)模數(shù)、降噪。再根據(jù)相似性矩陣的右奇異矩陣進行粗分類,初始聚類中心取同一類簇的平均值。最后,通過K-means算法進行分類優(yōu)化,得到偽碼序列的估計值,并且根據(jù)分類結(jié)果可以得到信息序列。仿真實驗證明了算法的有效性,在SNR-16 dB時仍然可以較為準確估計出偽碼序列。相比于文獻[13]使用平均輪廓系數(shù)進行偽碼序列集合規(guī)模數(shù)估計,本文方法不需要多次聚類,計算量有所減少。與此同時,本文也避免了隨機選取初始聚類點造成的結(jié)果不穩(wěn)定的問題。