雷震宇,盧曉強
(重慶郵電大學(xué) a.通信與信息工程學(xué)院; b.新一代寬帶移動通信重點實驗室,重慶 400065)
大規(guī)模機器類通信(massive Machine Type Communications,mMTC)需要新的多址方式來應(yīng)對移動數(shù)據(jù)的大幅增長,在非正交多址接入(Non-Orthogonal Multiple Access,NOMA)中,稀疏碼多址接入[1-2](Sparse Code Multiple Access,SCMA)因其出色的性能吸引了大量的關(guān)注。為了減少信令的開銷,研究者們提出非授權(quán)(Grant Free,GF)的SCMA傳輸方案[3],雖然GF SCMA減少了信令開銷,但缺少時間同步的信令也導(dǎo)致了在GF情形下更容易面臨異步接收的問題。文獻[4]通過添加循環(huán)前綴(Cyclic Prefix,CP)來應(yīng)對時間不同步對NOMA系統(tǒng)的影響;文獻[5]研究了在異步NOMA系統(tǒng)中時間偏移產(chǎn)生的影響;文獻[6]針對兩個用戶的上行異步NOMA(Asynchronous NOMA,ANOMA)系統(tǒng)進行了研究,并對其性能進行了分析;文獻[7]對上行異步SCMA檢測算法進行了研究,提出了置信傳播消息傳遞算法(Belief Propagation Message Passing Algorithm,BP-MPA),該算法相對于消息傳遞算法(Message Passing Algorithm,MPA),需要對每個資源分別做一次置信傳播(Belief Propagation,BP)算法,復(fù)雜度較高。
本文在BP-MPA基礎(chǔ)上,提出一種改進的置信傳播消息傳遞算法(Improved Belief Propagation Message Passing Algorithm ,IBP-MPA),通過減少參與迭代的用戶節(jié)點數(shù)目來降低復(fù)雜度。仿真結(jié)果表明,與BP-MPA相比,改進算法在保證檢測性能的同時,能有效地降低計算復(fù)雜度。
在上行異步SCMA系統(tǒng)中,設(shè)有K個資源,每個資源上有df個用戶,共有J個用戶,每個用戶占據(jù)dv個資源,每個用戶發(fā)送的符號數(shù)為N[8]。系統(tǒng)給每個用戶分配一個具有M個碼字的SCMA碼本[9]??紤]到時延的影響,異步SCMA接收信號的結(jié)構(gòu)會發(fā)生改變。由于K個資源彼此正交,以一個資源為例,在資源k上,多用戶異步接收信號yk如圖1所示。接收信號Y=(y1,…,yk,…,yK)T,1≤k≤K,yk可表示為
圖1 上行SCMA異步接收信號示意圖
文獻[7]提出的BP-MPA先通過BP算法計算后驗概率,然后將得到的邊緣概率傳遞給相應(yīng)的資源節(jié)點作為MPA的初始概率,進行后續(xù)MPA的消息迭代。BP-MPA主要流程如下:
由圖1中一個資源接收信號的結(jié)構(gòu)可知,概率信息從左到右依次傳遞更新。α為校驗節(jié)點,與用戶發(fā)送符號對應(yīng);β為變量節(jié)點,與rk[m]相對應(yīng)。變量節(jié)點到相應(yīng)的校驗節(jié)點的更新式為
這里只用一個用戶舉例,剩下用戶同理可得。變量節(jié)點更新后,將信息傳遞給與之相連的校驗節(jié)點。在經(jīng)過連續(xù)的消息更新之后,每一個校驗節(jié)點獲得對應(yīng)符號的邊緣概率。只需將邊緣概率作為MPA的初始概率傳遞給資源k,就可以進行后續(xù)MPA譯碼[10]。
文獻[7]提出的BP-MPA提供了一種解決上行異步SCMA信號檢測的方法,但是該方法會在原本MPA的基礎(chǔ)上,對每個資源k再分別做一次BP算法,復(fù)雜度提升,不適用于異步SCMA系統(tǒng)。針對BP-MPA復(fù)雜度過高的問題,本文根據(jù)BP-MPA在經(jīng)過BP算法后會得到一個邊緣概率的特點,提出了一種IBP-MPA。
綜上所述,得到IBP-MPA偽代碼如下:
算法 IBP-MPA
(1) 輸入y,σn,τ
(2) 初始化
fork=1:K,m=1:3N+2 do
根據(jù)式(2)計算聯(lián)合概率
end
(3) 對每個資源k進行BP算法,計算邊緣概率
fork=1∶K,n=1∶Ndo
根據(jù)式(3),進行BP消息迭代更新
end
(4) 判斷是否為可靠用戶數(shù)據(jù)
forj=1∶J,n=1∶N,k∈ηjdo
else 判斷為不可靠用戶,參與后續(xù)MPA迭代
end
(5) 將BP算法得到的邊緣概率作為初始概率傳遞
fork=1:K,m=1:3N,j∈Ωkdo
為MPA譯碼傳遞初始概率
end
(6) 對剩下的J-R個不可靠用戶進行MPA迭代譯碼
forn=1∶Ndo
傳統(tǒng)SCMA MPA檢測算法
end
與BP-MPA相比,IBP-MPA需要在BP算法結(jié)束后,對每個用戶j在不同資源k上發(fā)送概率最大的碼字進行對比,選擇出可靠用戶的集合R,這一步只是做簡單的對比,幾乎不會增加復(fù)雜度。在后續(xù)的MPA迭代中,用戶節(jié)點數(shù)由J個減少至J-R個,減少了參與迭代的節(jié)點數(shù)量,可大幅降低整個檢測過程的復(fù)雜度。
圖2所示為不同信噪比(Signal Noise Ratio,SNR) 下,BP-MPA和IBP-MPA的BER性能,橫坐標為SNR,縱坐標為BER。同步SCMA可以看作是一種在τj=0(j=1,…,J)時的特殊異步SCMA,因此,選擇以同步SCMA中MPA的BER性能作為基準。由圖2可知,MPA的BER性能最佳,BP算法的BER性能最差,IBP-MPA和BP-MPA的BER性能均較差于MPA,但都明顯強于BP算法。這是因為MPA未受時延的影響,因此表現(xiàn)出最好的BER性能。BP算法在計算得到邊緣概率后不進行后續(xù)MPA的迭代,直接譯碼輸出,因此只采用BP算法時得到的BER性能最差。IBP-MPA和BP-MPA的BER性能相差很小,IBP-MPA的BER性能在各個SNR下均略差于BP-MPA,但仍在允許的誤差范圍內(nèi)。分析可知,IBP-MPA會在BP-MPA的基礎(chǔ)上提前譯碼輸出部分高可靠用戶節(jié)點,從而降低BP-MPA復(fù)雜度,但同時也會因此損失部分BER性能。具體分析,在BER=10-4時,BP-MPA相比于MPA有0.2 dB的性能損失,IBP-MPA相比于MPA有0.5 dB的性能損失,IBP-MPA與BP-MPA相比有0.3 dB的性能損失。
圖2 不同SNR下BP-MPA和IBP-MPA 的BER性能對比
BP-MPA和BP-MPA的收斂性能對比如圖3所示,橫坐標為迭代次數(shù),縱坐標為BER。為了仿真結(jié)果的普遍性,仿真分別在SNR=6和10 dB兩個條件下進行。
圖3 IBP-MPA和BP-MPA收斂性能對比
由圖可知,在SNR=6和10 dB的情況下,在每一次迭代中,IBP-MPA和BP-MPA相比,都有一定的BER性能損失。在SNR=6 dB時,兩種算法均在第3次迭代時收斂。在SNR=10 dB時,兩種算法仍在第3次迭代時收斂。但BP-MPA在第2和3次迭代之間的變化很小,IBP-MPA在第2和3次迭代時的性能變化略大于BP-MPA,兩種算法的收斂性基本一致。
根據(jù)IBP-MPA和BP-MPA的特性,這兩種算法的復(fù)雜度可以分為兩部分,BP算法的邊緣概率計算過程和后續(xù)消息傳遞算法迭代過程。在BP算法中,BP-MPA和IBP-MPA的過程相同,因此這兩種算法在該部分的復(fù)雜度是一樣的。表1所示為BP算法的復(fù)雜度。
表1 IBP-MPA和BP-MPA中BP算法的乘法和加法復(fù)雜度
由IBP-MPA的原理可知,IBP-MPA的復(fù)雜度與可靠用戶節(jié)點數(shù)有關(guān),在不同SNR下,假設(shè)可靠用戶節(jié)點平均值為Rs。表2所示為BP-MPA和IBP-MPA在后續(xù)MPA迭代中的加法復(fù)雜度和乘法復(fù)雜度,T為迭代次數(shù)。
表2 IBP-MPA和BP-MPA在后續(xù)MPA迭代中的乘法和加法復(fù)雜度
如表2所示,IBP-MPA和BP-MPA復(fù)雜度之間的差異主要體現(xiàn)在參與迭代的用戶節(jié)點數(shù)量上。為了更直觀地比較出兩種算法復(fù)雜度的差異,將這兩種算法的復(fù)雜度分別與MPA的復(fù)雜度進行對比,這里用計算復(fù)雜度比值(Computational Complexity Ratio,CCR)來定義IBP-MPA與BP-MPA和MPA的復(fù)雜度之比。由表2可知,算法的復(fù)雜度與迭代次數(shù)有關(guān),根據(jù)上一節(jié)對收斂性能的分析,BP-MPA和IBP-MPA均在第3次迭代時收斂,因此,在復(fù)雜度的仿真中,設(shè)置迭代次數(shù)為最佳迭代次數(shù),即T=3。圖4所示為不同SNR下的CCR值。
由圖4可知,BP-MPA的計算復(fù)雜度略高于MPA。在SNR=1 dB時,IBP-MPA的計算復(fù)雜度可以降低為MPA計算復(fù)雜度的75%。隨著SNR的上升,IBP-MPA的CCR在逐漸下降。這是因為,不參與迭代的可靠用戶節(jié)點數(shù)會隨著SNR的增加而增加。在SNR=10 dB時,IBP-MPA的計算復(fù)雜度可以降低為MPA的51%。
圖4 不同SNR下IBP-MPA和BP-MPA計算復(fù)雜度對比
本文主要研究了上行異步SCMA系統(tǒng)的低復(fù)雜度檢測算法,由于BP-MPA會對不必要的用戶節(jié)點進行更新,增加了計算復(fù)雜度。本文根據(jù)每個資源對用戶發(fā)送碼字概率的判斷,選擇部分高可靠用戶節(jié)點不參與后續(xù)迭代,提出了IBP-MPA。仿真結(jié)果表明,IBP-MPA可以在保證檢測性能的同時有效降低計算復(fù)雜度,更適用于上行異步SCMA系統(tǒng)。