莊 陵, 劉思楊,*
(1. 重慶郵電大學通信與信息工程學院, 重慶 400065; 2. 移動通信教育部工程研究中心, 重慶 400065;3. 移動通信技術重慶市重點實驗室, 重慶 400065)
隨著第四次工業革命的興起,無線通信業務種類和業務量飛速增長。為追求更低的多用戶檢測復雜度、更低時延和更大規模的覆蓋范圍,稀疏碼分多址接入(sparse code multiple access, SCMA)技術受到廣泛關注。作為非正交多址技術之一,其綜合了碼分多址和正交頻分多址的特點,通過非正交資源分配實現多用戶過載傳輸,具有容量大,延遲低,多連接和抗多徑能力強的特點,能更好地滿足現代通信的需求。
在SCMA系統中,將正交幅度調制映射過程和低密度擴頻過程集成在一起,形成SCMA碼本。在發送端,多個用戶依據所需傳輸的信息位從SCMA碼本中選取對應的碼字,并在相應時頻資源塊上進行疊加傳輸;在接收端,系統通常采用消息傳遞算法(message passing algorithm, MPA)進行譯碼。利用因子圖清晰描述資源塊接收信號和各用戶之間的對應關系,方便消息在用戶節點與資源節點間傳遞。消息傳遞算法依據因子圖經多次迭代,直至用戶節點概率收斂,輸出各用戶概率最大的符號。
MPA雖然利用碼本的稀疏性降低了算法復雜度,但仍是一個置信傳播(belief propagation, BP)算法,復雜度會隨著同一資源塊上用戶數量和調制階數的增加而增大,且較高的復雜度會給通信系統硬件實現帶來很大麻煩,導致難以實際應用,因此降低計算復雜度對SCMA技術研究尤為重要。近來為有效降低系統譯碼計算復雜度,研究人員多從減少參與迭代的節點數量和減少迭代次數角度進行考慮。文獻[18]提出部分邊緣化的MPA,根據反饋的外部信息減少參與下次迭代的節點數量來降低計算復雜度;文獻[19]在文獻[18]基礎上將高斯近似應用于未參與迭代的具有較小信道系數模值的節點;文獻[20-21]提出動態因子圖檢測算法,刪除因子圖中收斂的節點,將因子圖縮減為子圖;文獻[22-23]提出球形MPA,選擇固定數量歐氏距離較小的疊加星座點參與運算,降低復雜度;文獻[24]將已更新的外部消息及時傳遞給后續節點,提出串行策略MPA,減少迭代次數降低復雜度,然而該算法預定義節點更新順序并不總是最佳選擇;文獻[25-27]提出改進串行策略,分別根據兩次迭代外部信息的殘差值和更新后可用消息的最大數量確定節點更新順序,從而減少迭代次數,降低復雜度;文獻[28]在串行策略的基礎上對節點進行分組,充分利用更新后的信息,減少迭代次數。
但是,以上文獻所提出的降低復雜度改進譯碼方案,相對于傳統6次迭代的MPA,都在一定程度上犧牲了誤比特率(bit error ratio,BER)性能。為得到更好的通信質量,需要在低復雜度的基礎之上提升BER性能。
另一方面,考慮到用戶公平性和通信數據不停更新及實時性要求,上述文獻均是在給定因子圖的情況下進行改進的,并沒有根據網絡信道更新情況對因子圖進行刷新。針對以上問題,文獻[30]提出SCMA系統的邊緣串行消息傳遞算法,串行算法根據邊沿順序進行節點更新達到更好的用戶公平性。基于上述考慮,本文根據信道質量因素提出SCMA系統收發端改進方案。首先,利用SCMA系統的稀疏性,在系統發送端提出基于信道質量的動態自適應更新因子圖方案,由于信道為獨立衰落信道,存在某些資源節點的信道增益大于其他資源節點的情況,改進方案為取得高信道增益,給出為用戶節點匹配高信道增益的資源節點組合的公式。其次為保障用戶的公平性,在每輪因子圖更新過程中,依據上一輪各用戶節點信道增益情況對本輪用戶節點匹配順序進行排序。然后在接收端譯碼時,為有效降低算法復雜度,提出基于信道質量的動態選擇節點改進MPA,該算法在串行策略譯碼的基礎上,根據更新后的因子圖選取信道質量最差的資源節點優先更新以減少迭代次數,并給出算法描述和復雜度分析。最后對改進方案的BER性能、收斂速度、復雜度以及用戶公平性分別進行仿真,以驗證所提方案的有效性。
SCMA系統模型如圖1所示。SCMA系統結合多維調制和稀疏擴頻技術,讓個用戶連接到個時頻資源塊上,實現過載接入,過載因子=,定義每個資源節點上最多分配個用戶,每個用戶最多占用個時頻資源塊。圖1描述的是6個用戶連接到4個時頻資源塊上,過載因子為150%的系統模型。

圖1 SCMA系統模型Fig.1 SCMA system model
圖2為上述SCMA系統發送端低密度子載波擴頻示意圖和對應的因子圖模型。圖中每個資源節點都引用一個子載波信道,每個用戶所發送的數據均被擴頻到碼字傳輸所需要的4個子載波上,其中彩色表示子載波上有稀疏擴頻碼,白色則表示沒有稀疏擴頻碼,每個用戶節點的稀疏擴頻碼僅僅占用2個子載波,而另外2個子載波則是空載的,并且每個資源節點上只承載3個由稀疏擴頻碼區分的用戶信號,即6個密集擴頻碼的位置被3個稀疏擴頻碼占用。因子圖中各節點之間的連接關系與低密度子載波擴頻情況相對應,即用戶節點與2個資源節點相連,資源節點與3個用戶節點相連。每個用戶都擁有獨立的擴頻序列和調制碼本,同頻子載波上承載3個用戶,信號之間干擾很小,盡可能減少了同頻干擾。

圖2 擴頻示意圖和對應因子圖Fig.2 Spread spectrum diagram and corresponding factor diagram
假定每個用戶都可以通過導頻信號對信道狀態信息進行準確估計。系統發送端編碼器將個用戶的比特信息映射到相應碼本的對應碼字上,然后個用戶碼字在空口疊加之后,通過相同的個時頻資源塊進行傳輸。假設所有用戶是同步復用的,則系統接收端接收到的疊加信號可以表示為

(1)
式中:=[,,…,]表示第個資源塊上接收到的疊加信號;=[1, ,2, ,…,, ]表示用戶映射到第個時頻資源塊的信道系數;=[1, ,2, ,…,, ]表示用戶映射到第個資源塊上的碼字信息;=[,,…,]表示信道噪聲。那么在圖2所述擴頻情況下,通過時頻資源塊傳輸疊加信號,實際只疊加了用戶2、用戶3和用戶5的擴頻碼信息,其余用戶不占用此時頻資源塊進行傳輸,可得到通過時頻資源塊接收信號的表達式為
=+++
(2)
SCMA通信系統普遍采用迭代接收的消息傳遞算法,而消息傳遞算法采用因子圖來描述資源節點與用戶節點之間消息傳遞關系,并且系統的譯碼性能與因子圖上消息傳遞的策略密切相關。同時信道質量作為通信系統的重要參量,以往SCMA系統收發端設計未充分考慮信道質量因素,因此如何充分利用信道質量,是提高SCMA系統性能的關鍵所在。在此背景下,本節提出SCMA系統收發端改進方案,該改進方案在發送端基于信道質量設計動態自適應更新因子圖方案,并在接收端譯碼時提出基于信道質量動態選擇節點改進消息傳遞算法。
由于SCMA系統在傳輸信號的過程中經歷獨立衰落信道,存在某些資源節點的信道增益大于其他資源節點的情況。當因子圖確定后,子載波信道上的擴頻情況以及相應的信道增益情況也隨之確定。用戶節點憑借稀疏性可選擇連接不同資源節點,所連接資源節點的信道質量越好,信道增益就越優異,得到的消息就越可靠。為充分利用信道質量信息來提高信道增益并改善BER性能,提出動態自適應更新因子圖方案來提高譯碼性能,該方案根據信道質量為每個用戶的稀疏擴頻碼匹配信道質量較優的資源塊,從而得到更好的信道增益,即令因子圖中用戶節點與信道增益較優的資源節點相連,同時用戶選取的碼本稀疏情況要與因子圖中用戶節點所連接的資源節點情況相對應。


(3)
以6用戶復用4個時頻資源塊的SCMA系統為例,其中=3,=2,則用戶節點與資源節點相連存在的所有組合情況的集合為={(,),(,),(,),(,),(,),(,)}。如果匹配過程按照自然順序對各用戶節點匹配資源節點組合,即當=1時,對用戶節點進行匹配,由式(3)獲得對于用戶節點信道增益最大的資源節點組合,接著當=2時,對用戶節點進行匹配,但要在余下的資源節點組合中繼續選取,以此類推直至=,所有用戶節點匹配完成。但上述方式并未考慮用戶的公平性,因為越靠后的用戶節點所能匹配的資源節點組合越少,導致某些用戶節點的信道增益較差,BER性能較低。為取得較好的公平性,彌補上一輪BER性能較差的用戶,提出根據上一輪信道增益情況對本輪用戶節點匹配順序進行排序,即上一輪信道增益最差的用戶節點,在本輪中優先進行匹配,從而彌補此用戶的BER性能。若一輪匹配結束后,用戶節點和資源節點組合匹配情況為?(,),?(,),?(,),?(,),?(,),?(,)。根據匹配情況更新因子圖,得到如圖3所示動態自適應更新的因子圖,同時根據因子圖為每個用戶選取相應的碼本。

圖3 動態自適應更新的因子圖Fig.3 Dynamic adaptive updating factor graph
為降低系統復雜度,考慮從減少迭代次數的角度改進消息傳遞算法。串行策略在每次串行迭代時,將更新后的消息及時傳遞給后續的節點,用于后續節點消息更新,提高后續節點外部消息置信度,因此越靠后更新的節點,置信度越高。但該算法的節點更新順序是固定的,如果在相同迭代次數下,將節點更新順序進行合理排序,可獲得更好的譯碼性能。在此基礎上我們提出基于信道質量動態選擇節點改進MPA,每次迭代將信道質量最差的資源節點優先更新。
2.2.1 改進算法描述
第個資源節點接收信號的條件概率密度函數為

(4)
式中:表示與第個資源節點相連的用戶節點集合。
根據式(4)得時頻資源上接收信號和碼本疊加星座點之間的最小歐氏距離表達式為

(5)
每個時頻資源塊上都承載3個用戶的稀疏擴頻碼,即=3,根據圖3所示自適應更新后的因子圖,得到最小歐氏距離具體表達式為

(6)
將最小歐氏距離代入式(4)得

(7)
由式(7)可知條件概率密度函數與最小歐氏距離成反比,結合式(5)得出,某一資源節點的信道質量越好,接收信號與疊加星座點之間的歐氏距離越小,條件概率密度函數越大,置信度越高,外部信息收斂需要的迭代次數越少;某一資源節點的信道質量越差,接收信號與疊加星座點之間的歐氏距離越大,條件概率密度函數越小,置信度越低,其外部信息收斂需要的迭代次數越多。因此,要在串行策略的思想上合理安排節點更新順序,需要知道每個資源節點的信道質量。由式(6)可知,第個資源節點的信道質量與其相連的用戶節點集合有關,即

(8)
式中:表示第個資源節點的信道質量。因為信道質量越差的資源節點,所需迭代次數越多,為加快收斂速度,令信道質量最差的資源節點優先更新。為方便表示資源節點的優先更新順序,生成長度為的資源節點更新順序隊列,按照資源節點的信道質量進行升序排列寫入隊列。在迭代過程中,根據隊列中資源節點排列順序進行串行譯碼,當達到預定的最大迭代次數時,停止迭代。算法的更新過程如下所示。

算法 1 動態選擇節點改進MPA算法輸入:y,h,σ2,tmax輸出:Q(xj)步驟 1 初始化1. for all k=1,2,…,K and j=1,2,…,J do2. I0fk→vj(xj)=1M3. Q0(xj)=1M4. end for步驟 2 計算信道系數模值5. for all k=1,2,…,K do6. compute Hk by (8)7. end for8. generating queue G based on Hk in ascendingorder步驟 3 消息迭代更新9. While t≤tmaxdo10. for m=1,2,…,K do11. k=G(m)12. Iall(xj)=∑l∈ξkQt-1(xj)It-1fk→vl(xj)13. for all j∈ξk do14. Itemp(xj)=Qt-1j(xj)It-1fk→vj(xj)Itfk→vj(xj)=∑~xj 12πσexp-12σ2yk-∑l∈ξkhk.lxk,l2 Iall(xj)Itemp(xj) Qt-1(xj)=Itemp(xj)Itfk→vj(xj)15. end for16. end for17. t=t+118. end while19. for all j do20. Q(xj)=∏k∈ξjItmaxfk→vj(xj);21. end for
222 算法復雜度分析
根據消息傳遞算法更新過程可知,計算復雜度主要來自資源節點與用戶節點相互傳遞外部消息的過程。并且計算量主要由乘法運算量、加法運算量和指數運算量構成。為方便表示,定義和分別表示一個資源節點所連接的用戶節點數和一個用戶節點所連接的資源節點數。因為計算復雜度與迭代次數成線性關系,因此從減少迭代次數的角度來降低計算復雜度。串行策略將資源節點向用戶節點傳遞外部消息的過程融入到用戶節點向資源節點傳遞外部消息的過程中,即每一次迭代過程只有資源節點到用戶節點的消息更新。在此基礎上,本節的多用戶檢測算法還根據信道質量,對信道增益最差的資源節點進行優先更新,在計算復雜度上增加了信道系數模值的計算,導致乘法和加法運算量略微增加。綜上得出改進方案的計算復雜度如下所示:

(9)
本節將SCMA系統收發端改進方案與傳統SCMA系統的BER性能、收斂速度和計算復雜度分別進行仿真對比,同時對改進方案公平性效果進行仿真。在發送端,改進方案在傳統方案的基礎上根據信道質量動態自適應更新因子圖,希望通過提高信道增益達到改善BER性能的目的。在接收端,改進方案采用本文所提基于信道質量動態選擇節點改進MPA進行仿真,傳統方案則分別采用MPA、串行SMPA和基于殘差值的RMPA 3種算法進行仿真。仿真參數如表1所示。采用華為公司發布的碼本。最后根據仿真結果分析改進方案性能。

表1 仿真參數
圖4顯示MPA、SMPA、RMPA 3種算法2次迭代和改進方案2次迭代時BER性能隨著信噪比增大而變化的仿真關系曲線。以上算法BER性能曲線都隨著信噪比的增大而明顯降低,并且在相同迭代次數下,所提改進方案的BER性能最優。以迭代6次的MPA的BER性能曲線作為基準,其余算法2次迭代曲線均與其較為接近。在=8 dB時,2次迭代的SMPA、RMPA與改進方案BER性能分別為5.57×10、4.54×10和2.58×10,顯然改進方案在相同迭代次數下BER性能顯著提高;當BER性能為1×10時,改進方案2次迭代相較于MPA 6次迭代有0.6 dB的性能增益;當BER性能為1×10時,改進方案2次迭代相較于MPA 6次迭代有0.4 dB的性能增益。因此,改進方案憑借SCMA系統的稀疏性,為用戶匹配信道質量較優的資源塊,使得信道增益提高,達到改善BER性能的目的。

圖4 不同方案BER性能對比Fig.4 BER performance comparison of different schemes
圖5顯示信噪比分別在=8 dB和=12 dB的條件下,不同算法的BER性能隨著迭代次數的增加而趨于收斂的仿真關系曲線。

圖5 不同方案收斂速度對比Fig.5 Comparison of convergence rates for different schemes
MPA需要迭代6次才趨于收斂,SMPA、RMPA和改進方案僅需要迭代3次便趨于收斂,雖然改進方案的收斂速度與SMPA、RMPA相近,但明顯快于MPA。在較少迭代次數時,MPA收斂速度最慢,而其余算法卻表現出更快的收斂速度,這是因為除MPA外均采用串行策略,使得每次迭代中更新后的節點外部消息能夠立即傳遞,以便后續節點更新使用。并且RMPA和改進方案分別考慮殘差值和信道質量情況,據此選擇不可靠節點的外部信息優先更新,使不可靠節點的外部信息收斂速度加快,算法取得更快的收斂速度。在較多迭代次數時,各算法均達到收斂,SMPA和RMPA的BER曲線與MPA基本重疊,這是因為SMPA和RMPA只改變每次迭代時的內部結構,僅僅加快收斂速度,達到減少迭代次數的目的,并不能改善BER性能,而改進方案則考慮了信道質量,使信道增益提高,從而改善了BER性能。
由圖5可知,2次迭代的SMPA、RMPA和改進方案具有與MPA 6次迭代相近的BER性能,于是在相近BER性能條件下,得到圖6所示的6次迭代的MPA和2次迭代的SMPA、RMPA、改進方案的運算量。

圖6 不同方案復雜度對比Fig.6 Comparison of complexity for different schemes
相較于MPA的運算量,改進方案節省了65.77%的乘法運算量、66.41%的加法運算量和66.67%的指數運算量。相比SMPA、RMPA的運算量,改進方案在利用信道質量信息時,需要計算信道系數的模值并進行比較,導致乘法和加法運算量增加,但對于整體的運算量而言幅度很小。由于復雜度與迭代次數成線性關系,改進方案僅需2次迭代便可達到MPA 6次迭代的BER性能,因此改進方案在保證與MPA迭代6次的BER性能相似甚至更優的情況下,達到了降低復雜度的目的。
圖7描述了所提改進方案在考慮公平性和未考慮公平性的情況下,6個用戶分別的BER性能仿真曲線。在未考慮公平性的情況下,各用戶的BER性能相差較大,例如在BER性能為1×10時,BER性能最優的用戶與最差的用戶相差3 dB。在考慮公平性的情況下,各用戶的BER性能相差較小,同樣在BER性能為1×10時,BER性能最優的用戶與最差的用戶相差1.1 dB。這是因為若按自然順序對用戶節點進行匹配,靠后的用戶BER性能較差,會導致用戶公平性較差。若按上一輪信道增益情況對本輪用戶節點匹配順序進行排序,即上一輪信道增益最差的用戶節點,在本輪中優先進行匹配,達到彌補此用戶BER性能的目的,會取得較好的用戶公平性。

圖7 改進方案公平性對比Fig.7 Fairness comparison of improved scheme
對SCMA系統譯碼時,存在為滿足實際應用而降低算法復雜度,造成BER性能損失的情況,同時用戶公平性也是改進系統需要考慮的方面,在此背景下,本文提出一種SCMA系統收發端改進方案。仿真結果表明,所提改進方案的譯碼算法相對于傳統MPA方案僅需3次迭代便可收斂。并且如果以MPA 6次迭代的BER性能作為基準,改進方案僅需2次迭代便可達到相近誤比特率。在保證各用戶公平性的前提下,改進方案不僅彌補了降低復雜度而帶來的BER性能損失,還取得一定的BER性能增益。在BER性能相近甚至更優的情況下,改進方案降低了66%的譯碼復雜度。綜上,所提改進方案可作為SCMA系統的候選方案。