申 敏,盧曉強(qiáng),雷震宇
(重慶郵電大學(xué) a.通信與信息工程學(xué)院; b.新一代寬帶移動(dòng)通信重點(diǎn)實(shí)驗(yàn)室,重慶 400065)
大規(guī)模機(jī)器類通信(massive Machine-Type Communications,mMTC)是第五代移動(dòng)通信系統(tǒng)的重要場景[1]。在非正交多址接入(Non-Orthogonal Multiple Access,NOMA)上行免調(diào)度模式中,基站端在對數(shù)據(jù)恢復(fù)之前必須進(jìn)行活躍用戶檢測。利用mMTC網(wǎng)絡(luò)中用戶活動(dòng)的稀疏特性,可采用壓縮感知(Compressive Sensing,CS)技術(shù)實(shí)現(xiàn)多用戶檢測[2]。文獻(xiàn)[3]根據(jù)被檢測信號的稀疏程度,利用正交匹配追蹤算法(Orthogonal Matching Pursuit,OMP)進(jìn)行信號恢復(fù);文獻(xiàn)[4]利用接收數(shù)據(jù)符號的有用信息使用貪婪算法來增強(qiáng)檢測性能,提出數(shù)據(jù)輔助的活躍用戶檢測(Data-Aided Active User Detection,DA-AUD)算法,然而上述算法僅在每個(gè)時(shí)隙獨(dú)立地恢復(fù)稀疏信號,未充分利用相鄰時(shí)隙傳輸信號的相關(guān)性。文獻(xiàn)[5]假設(shè)活躍用戶集在整幀中保持不變,提出結(jié)構(gòu)化迭代支持檢測(Structured Iterative Support Detection,SISD)算法;文獻(xiàn)[6]考慮活躍用戶集的動(dòng)態(tài)變化,提出基于動(dòng)態(tài)壓縮感知(Dynamic Compressive Sensing,DCS)的多用戶檢測算法(簡稱DCS算法)。上述算法雖然利用了幀結(jié)構(gòu)的稀疏性,但都需要已知信號稀疏度,這在實(shí)際mMTC場景中是很難獲取的,因此缺乏普適性。
針對上述問題,本文提出了一種改進(jìn)的動(dòng)態(tài)自適應(yīng)(Improved Dynamic Adaptation,IDA)多用戶檢測算法(簡稱IDA算法),該算法利用連續(xù)時(shí)隙活躍用戶集的時(shí)間相關(guān)性來增強(qiáng)多用戶檢測性能,且不需要已知用戶稀疏度。相較于其他檢測算法,IDA算法更適用于實(shí)際的上行免調(diào)度NOMA系統(tǒng)。
考慮由1個(gè)單天線基站和K個(gè)單天線用戶組成的mMTC上行免調(diào)度NOMA系統(tǒng)。在同一時(shí)刻活躍用戶數(shù)遠(yuǎn)小于系統(tǒng)潛在用戶總數(shù)K,表現(xiàn)出稀疏性。將用戶k的發(fā)送信號xk擴(kuò)頻到長度為N的擴(kuò)頻序列sk上,且N 式中:gk=[g1,k,g2,k,…,gN,k]T為用戶k的信道增益,各元素服從CN(0,1)分布;sk=[s1,k,s2,k,…,sN,k]T為用戶k的擴(kuò)頻序列;v為服從CN(0,σ2)分布的高斯白噪聲;H為N×K維的等效信道矩陣,其第n行第k列元素為hn,k=gn,ksn,k;x=[x1,x2,…,xK]T為K個(gè)用戶的發(fā)送信號。 實(shí)際通信中,雖然mMTC網(wǎng)絡(luò)具有零星通信性,但一些用戶通常以高概率在相鄰時(shí)隙傳輸數(shù)據(jù),表現(xiàn)出時(shí)間相關(guān)性。因此,可將上述模型擴(kuò)展為連續(xù)時(shí)隙的動(dòng)態(tài)模型,則第j個(gè)時(shí)隙接收信號y(j)可表示為 DCS算法[6]假設(shè)用戶稀疏度已知,利用活躍用戶集的時(shí)間相關(guān)性,基于經(jīng)典OMP算法[5]對連續(xù)時(shí)隙多用戶進(jìn)行檢測,相較于單時(shí)隙傳輸模型的檢測算法,DCS算法雖然能獲得一些性能增益,但需要已知用戶稀疏度,這在實(shí)際mMTC場景中是無法獲取的。因此,考慮活躍用戶支撐集在連續(xù)時(shí)隙可變且用戶稀疏度未知的實(shí)際情況,本文提出了IDA算法。 (1) 自適應(yīng)閾值輔助策略 DCS算法在估計(jì)支撐集時(shí)每次迭代只選取與殘差值相關(guān)性最大的一個(gè)原子,且原子選入后便始終存在,這不僅增加了算法的迭代時(shí)間,而且一旦選擇了錯(cuò)誤原子,將會(huì)影響后續(xù)重構(gòu)過程的準(zhǔn)確性。因此,IDA算法引入自適應(yīng)閾值β來控制每次迭代選入支撐集中的候選原子,閾值β的選取滿足: 式中,a為影響β大小的參數(shù)。在每次迭代中,閾值輔助策略為:首先計(jì)算觀測矩陣與殘差值之間的內(nèi)積,得到觀測矩陣中每個(gè)原子所對應(yīng)的相關(guān)系數(shù)值,取相關(guān)系數(shù)值中的最大值與β相乘作為原子選入的閾值,選取符合條件的原子放入集合Γ(j)中: 由式(4)可知,β控制選入支撐集中原子的數(shù)量,原子的選取始終與算法迭代過程保持一致。通過設(shè)置合適的閾值β(本文閾值參數(shù)a通常取值范圍為(0.3,0.6)),可保證預(yù)選原子都具有較大相關(guān)性,即選出的原子都是合適的,可提高信號重構(gòu)的準(zhǔn)確性。且當(dāng)β取值較小時(shí),每次選入的原子數(shù)較多,算法的迭代速度會(huì)更快。 (2) 冪函數(shù)變步長 為了能自適應(yīng)地獲取用戶稀疏度,采用稀疏度自適應(yīng)匹配追蹤算法的自適應(yīng)思想,估計(jì)的稀疏度隨迭代過程逐步增加,然而該算法采用固定步長逼近用戶稀疏度,步長設(shè)定過大或過小都會(huì)影響信號重構(gòu)的精度和速度。因此,IDA算法借助文獻(xiàn)[7]的變步長概念,引入冪函數(shù)變步長方法解決此問題。考慮如下冪函數(shù): (3) 迭代終止條件 自適應(yīng)算法對稀疏度估計(jì)的準(zhǔn)確性很大程度上取決于迭代終止條件的選擇,迭代終止太早(欠估計(jì))或太晚(過估計(jì))都會(huì)對稀疏信號的重構(gòu)質(zhì)量造成很大影響。文獻(xiàn)[8]指出信號完美重構(gòu)情況下,噪聲是失真的唯一來源。因此,可通過殘差能量設(shè)計(jì)迭代終止條件。假設(shè)稀疏度為L的信號x(j)在第t次迭代時(shí)被完美恢復(fù),Ω(j)為信號真實(shí)支撐集,則此時(shí)殘差r(j)(t)的能量為 由于mMTC場景中L?N,所以可忽略L對式(7)的影響,則迭代終止條件可設(shè)為 IDA算法將上述重構(gòu)思想結(jié)合時(shí)間相關(guān)性,充分利用前一時(shí)隙活躍用戶支撐集來增強(qiáng)后一時(shí)隙的檢測性能。IDA算法的具體實(shí)現(xiàn)如下: 輸入:y,[H(1),H(2),…,H(J)],β,δ,s; (1)初始化:j=1,Ω=?,stage=1; (2)forj≤Jdo; (4)若j=1則L=1;否則L=|Ω(j)(t-1)|/2; 迭代過程 (11)令t=t+1,轉(zhuǎn)至步驟(5); 步驟(1)~(4)為初始化過程,Ω為當(dāng)前時(shí)隙估計(jì)的支撐集,T(j)(t)為候選支撐集,當(dāng)時(shí)隙j≠1時(shí),利用活躍用戶集的內(nèi)在時(shí)間相關(guān)性,將支撐集初始化為前一時(shí)隙的支撐集,稀疏度為前一時(shí)隙用戶稀疏度的1/2;步驟(5)為自適應(yīng)閾值輔助策略,式中,Z(j)(t)為候選支撐集的中轉(zhuǎn)變量;步驟(6)為在DCS算法基礎(chǔ)上增加的回溯更新操作,目的是剔除候選支撐集中仍存在的不可靠原子;步驟(7)~(8)為重構(gòu)信號和更新殘差;步驟(9)~(11)為迭代終止條件判斷和調(diào)整稀疏度;步驟(12)返回當(dāng)前時(shí)隙的重構(gòu)信號和支撐集,并轉(zhuǎn)入下一時(shí)隙的檢測過程。 IDA算法在單時(shí)隙單次迭代的復(fù)雜度取決于迭代過程,主要集中在支撐集選擇、回溯更新、信號估計(jì)和殘差更新幾個(gè)方面。假設(shè)真實(shí)用戶稀疏度為S,IDA算法步驟(5)估計(jì)支撐集的計(jì)算復(fù)雜度為O(KN);步驟(6)回溯更新的計(jì)算復(fù)雜度為O(2NC2+C3+NC),式中,C為步驟(8)選取的最優(yōu)索引數(shù);步驟(7)估計(jì)信號的計(jì)算復(fù)雜度為O(2NL2+L3+NL);步驟(8)為更新殘差,其計(jì)算復(fù)雜度為O(NL)。由于0 表1 單次重構(gòu)計(jì)算復(fù)雜度對比 由表可知,IDA和DCS算法具有相同階數(shù)的計(jì)算復(fù)雜度,然而DCS算法在每次迭代中只選取一個(gè)原子,IDA算法引入閾值策略每次選取多個(gè)原子,同時(shí)采用冪函數(shù)變步長加快信號重構(gòu)的速度,因此IDA算法的迭代次數(shù)低于DCS算法,具有更低的計(jì)算復(fù)雜度。 利用Matlab仿真軟件對IDA算法的性能進(jìn)行仿真分析。該仿真中,設(shè)置用戶總數(shù)K=200,子載波數(shù)N=100,則系統(tǒng)過載率為200%。調(diào)制方式為64正交振幅調(diào)制(Quadrature Amplitude Modulation, QAM),連續(xù)時(shí)隙數(shù)J=7。擴(kuò)頻矩陣設(shè)計(jì)為基于偽隨機(jī)噪聲的Toeplitz矩陣,信道為平坦的瑞利衰落信道。 圖1所示為閾值β對信號重構(gòu)性能的影響。由式(3)可知,β的大小取決于參數(shù)a,分別取a={0.3,0.4,0.5,0.6},不考慮噪聲的影響,比較IDA算法在不同活躍用戶數(shù)下的重構(gòu)成功率。由圖可知,當(dāng)參數(shù)a=0.5時(shí),信號的重構(gòu)成功率最高。因此,在后面的仿真中,IDA算法的參數(shù)a均設(shè)置為0.5。 圖1 不同β下IDA算法重構(gòu)性能比較 為了更好地體現(xiàn)IDA算法的檢測性能,將所提算法與DCS、OMP、子空間追蹤[9](Subspace Pursuit,SP)和先驗(yàn)最小二乘(Least Square,LS)算法(理想性能算法)作比較。圖2所示為上述算法在不同信噪比(Signal-to-Noise Ratio,SNR)下的誤碼率(Bit Error Ratio,BER)性能。仿真中,設(shè)置步長調(diào)整門限δ=1.2,初始步長s=1,活躍用戶數(shù)為25。由圖可知,IDA算法的BER性能明顯優(yōu)于OMP和SP算法,原因是IDA算法充分利用了相鄰時(shí)隙的時(shí)間相關(guān)性,同時(shí)結(jié)合自適應(yīng)閾值輔助、迭代終止條件優(yōu)化和冪函數(shù)變步長的思想,使檢測性能大幅度提升。在BER=1×10-3時(shí),IDA算法相較于DCS算法,其性能損失不到1 dB,這是因?yàn)镮DA算法缺乏真實(shí)的用戶稀疏度,然而在實(shí)際mMTC網(wǎng)絡(luò)中基站端是無法得知用戶稀疏度的,因此IDA算法更具有實(shí)用性。當(dāng)SNR<12 dB時(shí),IDA比DCS算法的BER性能更優(yōu),其原因是在低SNR時(shí),閾值輔助策略和冪函數(shù)變步長方法使IDA算法更準(zhǔn)確地估計(jì)活躍用戶集。綜上所述,IDA算法在保證信號重構(gòu)性能的同時(shí)更適用于實(shí)際的mMTC場景。 圖2 不同SNR下的BER性能對比 圖3對比了IDA、OMP、SP、DCS和先驗(yàn)LS算法在不同活躍用戶數(shù)下的BER性能。其中,設(shè)置步長調(diào)整門限δ=1.2,初始步長s=1,SNR=10 dB。由圖可知,隨著活躍用戶數(shù)的增長,不同檢測算法的BER都會(huì)逐漸上升,但I(xiàn)DA算法在整個(gè)活躍用戶區(qū)間內(nèi)均優(yōu)于其他幾種算法,其原因是閾值輔助策略提升了IDA算法選取用戶支撐集的準(zhǔn)確性,冪函數(shù)變步長方法和優(yōu)化的迭代終止條件能避免活躍用戶數(shù)的過估計(jì)與欠估計(jì),確保算法及時(shí)終止迭代。 圖3 不同活躍用戶數(shù)下的BER性能對比 圖4所示為IDA、OMP、SP和DCS算法在不同活躍用戶數(shù)下的迭代次數(shù)。其中,設(shè)置步長調(diào)整門限δ=1.2,初始步長s=1,SNR=10 dB。由圖可知,各檢測算法的迭代次數(shù)都會(huì)隨活躍用戶數(shù)的增加而增加,但在活躍用戶數(shù)相同的條件下,IDA算法完成重構(gòu)所需的迭代次數(shù)更少,其原因是閾值輔助和冪函數(shù)變步長方法的共同作用加快了IDA算法的重構(gòu)速度。而DCS算法是基于OMP算法實(shí)現(xiàn)的,同OMP算法一樣,其迭代次數(shù)隨稀疏度的增長線性增加且等于已知的稀疏度。此外,SP算法是基于OMP算法改進(jìn)的,在每次迭代過程中選取多個(gè)原子,因此其迭代次數(shù)略有減少,但仍高于IDA算法。 圖4 不同活躍用戶數(shù)下的迭代次數(shù)對比 本文利用上行免調(diào)度NOMA系統(tǒng)中活躍用戶在相鄰時(shí)隙的時(shí)間相關(guān)性,提出了IDA多用戶檢測算法。該算法可在未知用戶稀疏度情況下對連續(xù)時(shí)隙多用戶進(jìn)行檢測,在迭代過程中,引入自適應(yīng)閾值選取合適數(shù)量原子,并在回溯更新步驟中剔除不可靠原子,利用冪函數(shù)變步長方法逐步逼近真實(shí)稀疏度,直到滿足迭代終止條件。仿真結(jié)果表明,所提IDA算法在保證低復(fù)雜度的同時(shí)具有良好的BER性能,實(shí)用性更強(qiáng)。2 改進(jìn)的多用戶檢測算法
2.1 算法設(shè)計(jì)
2.2 算法實(shí)現(xiàn)
2.3 復(fù)雜度分析
3 仿真及分析
4 結(jié)束語