劉孝祥, 張 晶,2
(1. 南京郵電大學通信與信息工程學院, 江蘇 南京 210003; 2. 南京郵電大學通信技術研究所, 江蘇 南京 210003)
移動互聯網的出現推動了數據業務的飛速發展,預計到2018年移動數據將達到每月15.9艾字節,且移動端的數據流將占據所有IP流量的12%[1]。數據流量的爆炸式增長、各類新型業務和場景的不斷涌現以及海量移動設備的接入,對移動網絡的承載能力和處理能力提出了新的要求,這促進了第五代(the fifth generation,5G)移動通信系統的發展[2]。作為5G移動通信的關鍵技術之一, 大規模多輸入多輸出(multiple input multiple output,MIMO)系統由貝爾實驗室的科學家Marzetta于2010年提出[3],其核心思想是:時分雙工模式下,當基站端配置的天線數趨于無窮時,小區內的干擾、快衰落和噪聲對系統容量的影響都可忽略不計,只有導頻污染帶來的小區間干擾會限制系統容量。目前,大規模MIMO系統受到業界的廣泛關注,已經成為國內外研究熱點[4]。
然而,大規模MIMO系統中尚存在諸多技術難題待解決。就信號接收而言,傳統MIMO系統中高效的接收機難以在大規模MIMO中發揮作用,在大規模MIMO上行鏈路中,當使用最大似然(maximum likehood, ML)檢測時,復雜度將急劇增加[5]。因此,針對大規模MIMO系統的低復雜度檢測方案引起了人們的廣泛關注。為了獲得復雜度低且接近ML的最佳檢測性能,文獻[6-8]提出了非線性固定復雜度的球形解碼(sphere decoding,SD)算法和禁忌搜索(tabu search,TS)算法;但是,當MIMO系統的維度很大或者調制階數很高時,兩種算法的復雜度仍然很大[9-10]。隨著基站端天線數量的大幅度增加,信道之間逐漸趨于正交[4],基于這個特性,最大比合并(maximum ratio combining,MRC)、迫零(zero forcing,ZF)和最小均方誤差(minimum mean square error, MMSE)等線性檢測方法在大規模MIMO系統中都能獲得很好的性能。但是,這些線性檢測算法涉及復雜的矩陣求逆運算;為了降低矩陣求逆帶來的計算復雜度,文獻[11-12]提出了Neumann級數展開算法,但是當迭代次數大于2時,其計算復雜度減小的程度就不明顯了,并且當基站端天線和用戶天線數量之比接近1時,會帶來明顯的誤碼率(bit error rate,BER)性能損失[3],文獻[13-14]提出了Gauss-Seidel算法和Newton算法,但是它更多地關注精度并且計算復雜度也比較大。為了降低復雜度,本文主要和Neumann級數展開算法比較。
基于大規模MIMO系統MMSE濾波矩陣的對稱正定特性滿足Barzilai-Borwein(BB)迭代算法的全局收斂性[8],本文將BB迭代技術應用于大規模MIMO系統的信號檢測中,提出了BB迭代信號檢測算法,它通過迭代技術避免了MMSE算法復雜的矩陣求逆問題;為了加快算法的收斂速度,本文進一步利用信道硬化特性優化了迭代初始解[15]。仿真結果表明,BB迭代檢測算法能夠大幅降低矩陣求逆運算帶來的計算復雜度,并且獲得精確的檢測性能。
大規模MIMO系統模型如圖1所示,該系統由部署N根天線的基站和K個單天線用戶組成,所有用戶在相同的時頻資源向基站發送數據,通常設置N?K。

圖1 大規模MIMO系統Fig.1 Massive MIMO system
令s=[s1,s2,…,sK]T表示發射信號矢量,H∈CN×K表示復信道增益矩陣,H中元素是均值為0、方差為1的獨立同分布復高斯隨機變量,n=[n1,n2,…,nN]T表示均值為0、方差為σ2的復加性高斯白噪聲。假設信道增益矩陣H已知,則基站端接收到的信號矢量y可以表示為
y=Hs+n
(1)
基站端多用戶信號檢測的目標是從接收信號矢量y中估計發射信號矢量s。對于上行大規模MIMO系統,MMSE線性檢測算法可以實現接近ML的檢測性能[20],其發射信號矢量s的接收估計值可以表示為
(2)
W=HHH+σ2IK
(3)

BB迭代算法是Barzilai和Borwein提出的兩點步長梯度法。不同于傳統的最速下降法采用固定步長,它的獨特之處是沿著最速下降方向選擇合適的步長。該算法存儲量和計算復雜度很小,當目標函數是凸二次函數時,Barzilai和Borwein證明BB迭代算法是R-超線性收斂的[21];Raydan證明BB迭代算法對n維嚴格凸二次函數具有全局收斂性[16-17],文獻[18-19]進一步證明了二維嚴格凸二次函數的BB迭代算法有R-超線性收斂性和n維嚴格凸二次函數有R-線性收斂性。
對于K維線性方程,即
Ax=b
(4)
式中,A是K×KHermitian正定矩陣;x是K×1解向量;b是K×1測量向量。式(4)可以轉換成最小化問題,即
(5)
而且,Φ(x)的梯度可以表示為
(6)
為了獲得對解向量x的估計,設計BB迭代過程為
x(i+1)=x(i)-α(i)g(i)
(7)
式中,i表示迭代次數;α(i)表示常量,并且有
(8)
(9)
si-1=x(i)-x(i-1)
(10)
yi-1=g(i)-g(i-1)
(11)
引理1上行大規模MIMO信號檢測,MMSE濾波矩陣W=G+σ2IK是Hermitian正定的。
證明在上行大規模MIMO系統中,考慮N?K,信道矩陣H列滿秩,方程Hq=0有唯一解,即q是K×1零向量,因此,對于任意K×1非零向量x,可得
(Hx)HHx=xH(HHH)x=xHGx>0
(12)
GH=(HHH)H=HHH=G
(13)
這表明格拉姆矩陣G=HHH是正定的,且矩陣G是Hermitian的,所以矩陣G是Hermitian正定的。而噪聲方差σ2是正數,故MMSE濾波矩陣W=G+σ2IK也是Hermitian正定的。
證畢

基于引理1,可以利用BB迭代方法去檢測大規模MIMO接收信號,實現對發射信號矢量的估計。考慮式(1)所示的線性方程,迭代過程設計為
(14)

(15)
α(i)是常量,可以表示為
(16)
(17)
(18)
ni-1=g(i)-g(i-1)
(19)
進一步地,詳細描述BB迭代信號檢測算法的流程。

MMSE濾波矩陣W,由式(3)計算得到;

初始化
2)g(0)=-b
4)i=0
5) Whileg(i)≠0
8)ni-1=g(i)-g(i-1)
11)i=i+1
12) end

初始值和系數矩陣的條件數會影響迭代的收斂速度[23],選擇一個合適的初始值可以加快收斂速度,并且能獲得更好的檢測性能。因此,有必要對迭代初始值進行優化。

(20)



終上,BB信號檢測算法每次迭代需要進行K2+3K次乘法運算,因此其計算復雜度可以計算為(i-1)(K2+3K)。相比MMSE信號檢測算法中僅W-1的計算復雜度已隨用戶數K呈立方增長,BB信號檢測算法的計算復雜度大大降低了。

(21)

實際系統中,為了保證信號檢測精度,Neumann級數展開算法的截短階數通常很大才能獲得接近MMSE信號檢測的性能,這意味著算法的計算復雜度并無明顯改善;而BB迭代檢測算法不包含矩陣求逆運算,即使迭代次數很大,其計算復雜度依然很小,且算法結構很簡單,非常適合應用于大規模MIMO系統。
考慮N×K=64×8和N×K=128×16兩種典型的大規模MIMO系統,基帶信號調制方式為64-QAM,傳輸信道為準靜態瑞利衰落信道,圖2對BB迭代算法的收斂性進行仿真分析,圖3~圖5對BB迭代算法、Neumann 級數展開算法以及MMSE算法的BER性能進行仿真分析。

圖2 BB迭代算法信號檢測的均方誤差Fig.2 Mean square error of signal detection for the BB iterative algorithm

圖3 不同檢測算法的BER性能比較(N×K=64×8)Fig.3 BER perform comparison of each detection algorithm (N×K=64×8)

圖4 不同檢測算法的BER性能比較(N×K=128×16)Fig.4 BER Perform comparison of each detection algorithm (N×K=128×16)

圖5 BB迭代檢測算法初值優化前后性能比較(N×K=128×16)Fig.5 Performance comparison of BB iterative detection algorithm before and after initial value optimization (N×K=128×16)
在N×K=64×8的大規模MIMO系統中,當初始值為0時,圖2遞歸地顯示了BB迭代算法信號檢測的均方誤差,在迭代次數等于8時,均方誤差減小到0,曲線表明BB迭代算法信號檢測的均方誤差嚴格單調收斂,并且收斂的速度還很快。
圖3和圖4比較了3種算法的BER性能,其中圖3對應N×K=64×8的大規模MIMO系統,而圖4對應N×K=128×16的大規模MIMO系統。從圖3和圖4可以看出,隨著BB算法迭代次數和Neumann級數展開算法截短階數的增加,信號檢測性能不斷提高;但是,截短階數i=3的Neumann級數展開檢測算法與MMSE信號檢測算法相比,其性能損失超過了3 dB,并且其計算復雜度和MMSE信號檢測計算復雜度相當。對于BB迭代信號檢測算法,當迭代次數i=4時,其性能優于所有截短階數的Neumann級數展開算法;而當迭代次數i=5時,其性能幾乎接近MMSE信號檢測算法。
圖5給出了BB迭代檢測算法在初始值優化前后的檢測性能。可以看到,對初始值進行優化后,BB信號檢測算法能夠更快地收斂,并獲得更優的檢測性能。當迭代次數i=3,接收信噪比為10 dB時,經過初始值優化的BB迭代信號檢測算法比優化前算法的性能高出約一個數量級,并且曲線收斂更快;在迭代次數i=5時,優化后的BB迭代檢測算法能達到接近MMSE算法的檢測性能,而優化前的算法相比MMSE算法還有一定性能差距。上述結果表明,經過初始值優化,BB迭代算法的檢測性能獲得了有效提高,且算法的收斂速度進一步加快了。
本文將高效低復雜度信號檢測算法——BB迭代算法引入大規模MIMO系統的信號檢測中,利用MMSE濾波矩陣的對稱正定特性,通過迭代方法避免了復雜的矩陣求逆運算,將MMSE算法的復雜度從O(K3)降到了O(K2);隨后利用信道硬化特性對算法的迭代初始值進行了優化,進一步加快了算法的收斂速度。理論和仿真結果表明,該算法無論在復雜度或是檢測性能方面均優于最近提出的Neumann級數展開算法,并且收斂速度較快,通過少量的迭代即能夠達到接近MMSE信號檢測算法的性能。
本文所提出的算法結構簡單且具有較好的移植性,可以擴展應用到無線通信的其他信號處理問題,例如應用于大規模MIMO系統的下行線性預編碼領域。