陳宇祥,張 偉,吳思雨,周淑華
(南京郵電大學(xué),江蘇 南京 210003)
在通信技術(shù)的發(fā)展歷程中,多址接入技術(shù)是現(xiàn)代無(wú)線通信系統(tǒng)發(fā)展和演進(jìn)的基礎(chǔ)。當(dāng)用戶數(shù)量激增時(shí),資源的正交性就受到限制,此時(shí)非正交多址接入(Non-Orthogonal Multiple Access,NOMA)技術(shù)成為新的關(guān)注點(diǎn)[1,2]。稀疏碼多址接入(Sparse Code Multiple Access,SCMA)是NOAM 技術(shù)的代表之一,最早是由低密度擴(kuò)頻(Low Density Signature,LDS)技術(shù)發(fā)展而來[3]。無(wú)線通信系統(tǒng)從第一代無(wú)線通信發(fā)展到第四代無(wú)線通信,多址技術(shù)都是采用正交多址接入(Orthogonal Multiple Access,OMA)技術(shù)。OMA 技術(shù)因?yàn)橘Y源受限,必然導(dǎo)致可接入的用戶數(shù)目有限,正是這樣,非正交多址技術(shù)也越來越受到關(guān)注。
SCMA 系統(tǒng)和LDS 系統(tǒng)較為類似,但在其基礎(chǔ)上引入了多維調(diào)制技術(shù),這種方式可以提升SCMA系統(tǒng)的增益[4,5]。SCMA 系統(tǒng)用戶的碼字存在稀疏性,這樣就可以采用MPA算法進(jìn)行檢測(cè)[6]。本文提出一種基于相似度的閾值判斷方式,以Max-Log-MPA算法為例,在取得合適的閾值的情況下來達(dá)到算法性能和復(fù)雜度之間的平衡,進(jìn)一步降低算法的復(fù)雜度。
假設(shè)用戶數(shù)目為J,同時(shí)向共享K個(gè)正交時(shí)頻資源的同一基站傳輸數(shù)據(jù),此時(shí)定義過載因子為,M為碼本大小,簡(jiǎn)化的SCMA 模型如圖1 所示。
圖1 簡(jiǎn)化的SCMA 上行鏈路模型
SCMA 系統(tǒng)編碼映射過程如圖2 所示,圖中系統(tǒng)有6 個(gè)用戶和4 個(gè)資源塊,每個(gè)用戶占用2 個(gè)資源塊,每個(gè)用戶都擁有特定的碼本且碼字具有稀疏性。
如圖2 所示,每個(gè)碼本是4×4的矩陣,其中只有2 行元素是非空白部分,表示為非0 部分,用戶1 到用戶6的用戶碼本的第4,2,2,0,1,4個(gè)碼字參與編碼。為了方便,本文采用F矩陣(因子矩陣)來表示這樣一種結(jié)構(gòu),對(duì)應(yīng)的F矩陣為:
圖2 編碼映射過程
式中:矩陣行代表資源數(shù);矩陣列代表用戶數(shù)。
定義dr=3,dv=2,其中dr為行重因子代表每個(gè)資源占據(jù)的用戶數(shù),dv為列重因子代表每個(gè)用戶占據(jù)的資源數(shù)。由F可知,每行有3 個(gè)非零元素,每列有2 個(gè)非零元素,使用這種方式限制資源上的用戶數(shù)用來減小用戶之間的干擾,接收端用戶信號(hào)為:
式 中:y=[y1,y2,y3,…,yK]T為用戶的接收信號(hào);hj=[h1j,h2j,h3j,…,hKj]T為 第j個(gè)用戶的增益信息;xj=[x1j,x2j,x3j,…,xKj]T為第j個(gè)用戶的碼字信息;n為高斯噪聲矢量。
一個(gè)綜合題的解答往往蘊(yùn)藏著較大的信息量,反思其過程,留心其中的一些數(shù)據(jù),往往會(huì)得到意想不到的收獲.下面以一道考題的一個(gè)解答為例,簡(jiǎn)析其中的數(shù)據(jù)關(guān)系,進(jìn)而提出一個(gè)與矩形相關(guān)的命題,并給出幾種證法.
MPA算法節(jié)點(diǎn)分為用戶節(jié)點(diǎn)(U)和資源節(jié)點(diǎn)(R),算法的每次迭代U和R都會(huì)參與,圖3 是式(1)因子矩陣F對(duì)應(yīng)的因子圖。
圖3 因子圖
xk,j為第k個(gè)資源上發(fā)送的符號(hào),yk表示第k個(gè)資源上的接收信號(hào),在第t次迭代中,定義為第k個(gè)資源節(jié)點(diǎn)向第j個(gè)用戶節(jié)點(diǎn)迭代的消息值,定義為第j個(gè)用戶節(jié)點(diǎn)向第k個(gè)資源節(jié)點(diǎn)迭代的消息值。其中,=(χ1×…×χJ)表示J個(gè)用戶碼本中所有碼字的可能組合(M J)。
MPA算法的具體步驟如下[7,8]:
(1)對(duì)第一次參與迭代的碼字xj進(jìn)行初始化,ξj表示與用戶節(jié)點(diǎn)相連的資源節(jié)點(diǎn)集合:
(2)資源節(jié)點(diǎn)的消息更新,計(jì)算資源節(jié)點(diǎn)k向用戶節(jié)點(diǎn)j傳遞的信息:
式中:集合表示用戶節(jié)點(diǎn)在資源節(jié)點(diǎn)k上所有資源節(jié)點(diǎn),但是不包括用戶節(jié)點(diǎn)j;ξk集合表示資源節(jié)點(diǎn)和用戶節(jié)點(diǎn)相連的節(jié)點(diǎn)。
(3)用戶節(jié)點(diǎn)上消息更新:
式中:ξjk集合表示用戶節(jié)點(diǎn)j與其關(guān)聯(lián)的資源節(jié)點(diǎn),自身資源節(jié)點(diǎn)k除外。
(4)當(dāng)t=T=tmax時(shí),譯碼完成,碼字概率的計(jì)算方式為:
Max-Log-MPA算法通過數(shù)學(xué)方式和近似估算[9],將指數(shù)運(yùn)算轉(zhuǎn)變?yōu)橛?jì)算復(fù)雜度相對(duì)較低的求最大值運(yùn)算,從而算法的復(fù)雜度大幅下降,但是這種方式也必然會(huì)造成消息的丟失,導(dǎo)致檢測(cè)性能相對(duì)較差[10]。
運(yùn)用Jacobi算法公式可得:
式中:df表示資源節(jié)點(diǎn)的用戶數(shù)。則有:
進(jìn)行最大迭代之后,每個(gè)用戶碼字輸出的概率為:
從式(9)可以看出,這里的資源節(jié)點(diǎn)更新消息是采用近似估算的方式,即:
所以上述方法會(huì)有一定的性能丟失。
在Max-Log-MPA算法的基礎(chǔ)上,定義相似度:
式(11)表示上一次迭代和本次迭代之間的相似程度,這里的相似度可以看成一種閾值,當(dāng)?shù)南嗨贫冗_(dá)到對(duì)應(yīng)的閾值時(shí),就可以將本次迭代的用戶信息用上次迭代的信息代替,即:
然后參與下一次迭代,當(dāng)相似度閾值越大時(shí),每次進(jìn)行用戶信息迭代時(shí)忽略本次迭代的可能性越大,即造成的性能丟失越大;當(dāng)相似度閾值越小時(shí),每次進(jìn)行用戶信息迭代時(shí)忽略本次迭代的可能性越小,即造成的性能丟失越小。當(dāng)相似度閾值小到足夠每次迭代都能參與本次的用戶迭代時(shí),本算法就等價(jià)于Max-Log-MPA算法。因此,可以采取統(tǒng)計(jì)的方式來記錄相似度閾值,選擇合適的閾值區(qū)間。這種算法的優(yōu)勢(shì)是可以在復(fù)雜度和算法性能之間取舍,降低一定的性能來?yè)Q取算法的可實(shí)現(xiàn)性,減少迭代的復(fù)雜度。
MPA算法的誤比特率(Bit Error Ratio,BER)性能和信噪比的變化曲線如圖4 所示,算法復(fù)雜度在迭代過程中主要取決于步驟2 和步驟3,因此算法的復(fù)雜度優(yōu)化也主要集中在步驟2 和步驟3。系統(tǒng)仿真信道采用了瑞利(Rayleigh)信道,最大迭代次數(shù)tmax分別為1,2,4,8。在Rayleigh 信道下,相同信噪比下系統(tǒng)迭代次數(shù)逐漸變大時(shí),MPA算法的誤碼率性能會(huì)逐漸提升。圖4 中當(dāng)BER 為10-2false 時(shí),最大迭代次數(shù)為tmax=2 時(shí),MPA算法相比tmax=4 性能損失約1.3 dB,算法隨著迭代次數(shù)的增加逐漸收斂。由于算法收斂后判決值更精準(zhǔn),BER 性能也就更好。
圖5 給出了MPA算法和Max-Log-MPA算法在不同的tmax下的BER 性能變化曲線,仿真信道采用了Rayleigh 信道,系統(tǒng)的最大迭代次數(shù)tmax分別采用1,2,4,8。從中可以得出Max-Log-MPA算法和MPA算法一樣,隨著系統(tǒng)最大迭代次數(shù)的增加,BER 性能會(huì)有所提升;但是在tmax相同的時(shí),相同BER 下MPA算法的信噪比丟失是比較大的。
圖5 Max-Log-MPA算法誤碼率曲線
Max-Log-MPA算法的復(fù)雜度優(yōu)化仿真結(jié)果如圖6 和圖7 所示。圖6 中給出了tmax=10的情況下,相似度閾值從2 到1的BER 性能變化。圖7 展示了相同信噪比的情況下,BER 性能隨迭代次數(shù)的變化曲線。從圖6 中可以看出,隨著相似度從2 逐漸下降到1,BER 也會(huì)隨之下降,其中在相似度V=1時(shí),在相同的tmax下,本文所提算法的BER 性能和沒有設(shè)置相似度的算法接近。在BER 為7.8×10-2時(shí),V=1,V=1.1 和沒有設(shè)置相似度的算法性能損失最大接近0.1 dB。從圖7 中可以看出,相似度V∈[1,1.6]時(shí)BER 差距在7×10-3之內(nèi),其中,當(dāng)V=1 時(shí),本文算法和沒有設(shè)置相似度的算法收斂性能曲線BER 差距在10-3之內(nèi)。以上仿真實(shí)驗(yàn)得到的結(jié)果說明,可以在不同的相似度之間取舍,選擇合適的算法復(fù)雜度和性能。
圖6 Max-Log-MPA算法不同的相似度誤碼率曲線
圖7 Max-Log-MPA算法不同相似度收斂性能曲線
SCMA 系統(tǒng)作為NOAM的關(guān)鍵技術(shù)之一,大量學(xué)者針對(duì)降低SCMA 系統(tǒng)檢測(cè)算法的復(fù)雜度進(jìn)行了研究。本文從MPA算法和Max-Log-MPA算法入手,分別對(duì)MPA算法和Max-Log-MPA算法進(jìn)行了原理剖析,并對(duì)比了它們的性能,然后提出了基于Max-Log-MPA算法的一種改進(jìn)方法并進(jìn)行了仿真對(duì)比。本文提出的方法利用合理的相似度閾值來提高算法的性能,降低了算法的復(fù)雜度。該方法并不只是適用于Max-Log-MPA,還可以應(yīng)用于其他算法,只要通過統(tǒng)計(jì)方式選擇合適的閾值并在對(duì)應(yīng)算法復(fù)雜度和性能之間做出取舍,就可以處理具體的問題。