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