黃加佳 雷 菁 黃 英
(國防科技大學(xué)電子科學(xué)學(xué)院, 湖南長沙 410073)
無碼率碼(Rateless Code)又稱噴泉碼(Fountain Codes)[1],其發(fā)送端可以根據(jù)接收端譯碼情況而產(chǎn)生無限多的編碼符號。無碼率碼的這一特性非常適用于廣播及視頻等應(yīng)用場景,已經(jīng)應(yīng)用于3GPP的多媒體廣播和多播服務(wù)標準[2],以及DVB的數(shù)據(jù)廣播內(nèi)容分發(fā)協(xié)議[3]中。
無碼率碼的研究發(fā)展以提高不同場景傳輸性能和減小復(fù)雜度為目標:Luby等人[4]在2002年提出第一款簡單實用的LT碼(Luby Transform Code),其在刪除信道中擁有良好性能,但在噪聲信道下存在明顯錯誤平層;Shokrollahi等人[5]于2006年提出了在LT碼基礎(chǔ)上增加低密度奇偶校驗碼(low-density parity-check,LDPC)作為預(yù)編碼的Raptor碼,該碼在改善錯誤平層的同時極大增加了編譯碼的復(fù)雜性;2008年Wu Kedi等人[6]針對加性高斯白噪聲(Additive White Gaussian Noise, AWGN)信道,提出結(jié)構(gòu)復(fù)雜度低、性能良好的累積無碼率碼(Accumulate Rateless Code,AR碼),但其度分布的設(shè)計依賴信道質(zhì)量的優(yōu)劣;非規(guī)則重復(fù)碼(Irregular Repeat-Accumulate,IRA)在2000年被提出,孫蓉等人[7]于2010年證明了該碼的無碼率特性,但該碼的最小碼率受到限制;2011年由Ma Xiao等人針對噪聲信道,并引入p序列設(shè)計了Kite碼,其缺陷在于與時間相關(guān)的p序列求取算法復(fù)雜;2012年Jonathan Perry等人[8]通過在編碼結(jié)構(gòu)中引入哈希函數(shù),提出新型無碼率碼Spinal碼,在安全性提高的同時也存在譯碼復(fù)雜度過高的問題;為提高不同場景的適應(yīng)性,不斷有新的無碼率碼(如網(wǎng)絡(luò)噴泉碼[9]等)被提出。相對于其他無碼率碼,AR碼在復(fù)雜度和傳輸性能上有較好的折衷。Chen Shaolei等人[10]使用外信息轉(zhuǎn)移(extrinsic information transfer,EXIT)圖法對系統(tǒng)與非系統(tǒng)AR碼進行分析研究,在優(yōu)先選取度值較小信息節(jié)點的前提下使用逐步邊緣增長算法和凸優(yōu)化算法,求出其在不同信道噪聲功率條件下的最佳度分布,并仿真得到與Raptor碼相近傳輸性能。雷維嘉等人[11]以最小化譯碼迭代次數(shù)為約束條件,對非系統(tǒng)AR碼的度分布進行優(yōu)化設(shè)計,并給出在固定迭代次數(shù)下的最佳度分布。上述對AR碼的研究主要集中在點對點通信上,并不能很好拓展到網(wǎng)絡(luò)通信當中。
針對5G物聯(lián)網(wǎng)[12-13]、無人機蜂群[14-15]等大規(guī)模網(wǎng)絡(luò),固定碼率帶來的時延和多反饋問題無法回避,將無碼率碼引入可很好地適應(yīng)不同信道環(huán)境。Castura J等人[16]首先提出中繼傳輸系統(tǒng)中的無碼率碼方案,使用Raptor碼編碼,在信道狀態(tài)信息未知情況下表現(xiàn)得更加穩(wěn)定高效。雷維嘉等人[17]針對無碼率碼在協(xié)作中繼傳輸系統(tǒng)的應(yīng)用,提出能量累積和信息累積兩種方式以降低反饋,減小傳輸時間和功耗。文獻[18-21]將無碼率碼結(jié)合分布式網(wǎng)絡(luò)編碼應(yīng)用到無線傳感器網(wǎng)絡(luò)中,在源節(jié)點、中繼節(jié)點和目的節(jié)點形成基于圖碼的傳輸結(jié)構(gòu)。文獻[22-23]則分析了多路并行的傳感器中繼網(wǎng)絡(luò)中無碼率碼方案較自動重傳請求(Automatic Repeat-reQuest,ARQ)方案時延更小?,F(xiàn)有研究主要集中在LT碼和Raptor碼,而從性能與復(fù)雜度的折衷來考慮,探討基于AR碼的可行傳輸方案有著重要價值。本文將基于多中繼模型探討AR碼的傳輸方案,設(shè)計聯(lián)合度分布優(yōu)化方法,開展性能分析與仿真。
多中繼模型是大規(guī)模網(wǎng)絡(luò)中的典型模型,如圖1所示。
圖1 多中繼網(wǎng)絡(luò)模型Fig.1 Multi-relay network model
源節(jié)點S為數(shù)據(jù)采集節(jié)點,將收集到的數(shù)據(jù)向中繼和目的節(jié)點廣播發(fā)送,定義i時刻發(fā)送的信號向量為Xi。中繼節(jié)點R1~Rn負責(zé)接收和轉(zhuǎn)發(fā)數(shù)據(jù),協(xié)助源節(jié)點通信,對應(yīng)其轉(zhuǎn)發(fā)信號向量分別為Ui1~Uin。目的節(jié)點D同時接收來自源節(jié)點和中繼節(jié)點的數(shù)據(jù),匯總處理后傳入上級網(wǎng)絡(luò),定義其接收的總信號向量為Yi。考慮準靜態(tài)瑞利衰落信道,即信號噪聲在同一傳輸數(shù)據(jù)包內(nèi)保持恒定,在包與包之間獨立變化。同時假設(shè)直傳信道S-D與所有中繼信道Ri-D均具有相同的衰落特征,根據(jù)文獻[15]可知:
(1)
在中繼傳輸中使用無碼率碼,能夠降低反饋信息的傳輸量,并在多中繼的情況下明顯提高傳輸效率[17]。而LT碼存在明顯的錯誤平層,考慮性能和復(fù)雜度的折衷,我們采用結(jié)構(gòu)簡單的AR編碼方案,以提高通信質(zhì)量。
以無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network, WSN)為應(yīng)用背景,其中源節(jié)點因資源受限而不進行數(shù)據(jù)編碼,中繼節(jié)點可進行簡單編碼轉(zhuǎn)發(fā),目的節(jié)點擁有足夠的處理能力。通過中繼節(jié)點選擇機制選擇兩個最優(yōu)節(jié)點R1和R2并采用AR編碼轉(zhuǎn)發(fā),具體協(xié)同方案如圖2所示。
圖2 AR碼協(xié)同傳輸方案Fig.2 Cooperative transmission scheme of AR code
廣播階段:假設(shè)源節(jié)點S需要發(fā)送的源數(shù)據(jù)為獨立同分布的信息序列,我們將其按一定長度分成多個組別,每個組中數(shù)據(jù)按照802.15.4協(xié)議規(guī)定添加包頭地址信息和尾部循環(huán)冗余校驗(Cyclic Redundancy Check, CRC)封裝成數(shù)據(jù)包,經(jīng)過BPSK調(diào)制后不斷向中繼節(jié)點和目的節(jié)點廣播發(fā)送。當收到中繼節(jié)點全部正確接收數(shù)據(jù)的反饋后停止廣播,進入監(jiān)聽狀態(tài)以節(jié)約能量。
圖3 中繼節(jié)點數(shù)據(jù)包格式Fig.3 Packet format of relay node
譯碼階段:目的節(jié)點D對接收數(shù)據(jù)解調(diào)后根據(jù)標識符信息進行分類存儲,當總的存儲數(shù)據(jù)量大于某一設(shè)定值時進行譯碼。譯碼后的數(shù)據(jù)可根據(jù)CRC信息判斷正確性。當源數(shù)據(jù)全部正確譯出時,向源節(jié)點和中繼節(jié)點發(fā)送反饋信息,開始下一組數(shù)據(jù)傳輸;反之則繼續(xù)接收更多數(shù)據(jù)包后再譯。
相比傳統(tǒng)ARQ方案的不斷等待反饋確認,AR方案與其他無碼率碼(Raptor碼和LT碼)方案[21-22]一樣,其數(shù)據(jù)具有獨立性和無限性,使得中繼節(jié)點與源節(jié)點能夠很好協(xié)同傳輸而提高惡劣信道條件下的適應(yīng)性,減少反饋次數(shù)。
假設(shè)源節(jié)點需要發(fā)送的信息序列為(s1,s2,...,sK),根據(jù)3.1分析可知,每個編碼數(shù)據(jù)校驗節(jié)點都有一個度值d,對于節(jié)點S直接發(fā)送的數(shù)據(jù)可等效看成其度值為1,將節(jié)點D收到的所有數(shù)據(jù)對應(yīng)到同一個碼圖上來,其等效編碼結(jié)構(gòu)如圖4所示。
圖4 整體編碼結(jié)構(gòu)等效圖Fig.4 Overall coding structure
圖4中虛線框?qū)⑿r灩?jié)點和編碼節(jié)點分成了三部分,P0,1~P0,k為直傳數(shù)據(jù),P1,1~P1,∞為R1產(chǎn)生的任意數(shù)量編碼數(shù)據(jù),P2,1~P2,∞對應(yīng)R2。校驗節(jié)點C1,1~C1,∞的度分布(不包括與編碼節(jié)點所連接的邊)為Ω1(x),對應(yīng)邊分布為ρ1(x);C2,1~C2,∞對應(yīng)為Ω2(x)和ρ2(x)。信息節(jié)點的度分布和邊分布為Λ(x)和λ(x)(不包括與直傳數(shù)據(jù)檢驗節(jié)點連接的邊)。根據(jù)編碼規(guī)則有:
Cq,i=sj1⊕sj2⊕...⊕sjn,(q=0,1,2)
(2)
式(2)中sj表示所有與校驗節(jié)點Cq,i相連的信息節(jié)點。
(3)
我們使用優(yōu)先選取度值較小信息節(jié)點的方式進行編碼,以減小AR碼Tanner圖中小環(huán)的出現(xiàn)。這樣信息節(jié)點的度數(shù)絕大部分將為ds,極小部分為(ds±1)或(ds±2)。若中繼1對應(yīng)信息節(jié)點度為d1s,中繼2為d2s,有:ds?d1s+d2s。假設(shè)信息節(jié)點長度為K,兩個中繼編碼節(jié)點長度均為N,則該方案的近似瞬時碼率為:
(4)
我們在接收端使用對數(shù)似然比置信傳播(Log Likelihood Ratio Based Belief Propagation, LLR-BP)算法進行迭代譯碼,AR碼的譯碼迭代過程如圖5所示。
圖5 AR碼譯碼軟信息迭代示意圖Fig.5 Diagram of AR code decoding whit soft information iteration
我們定義各參數(shù)如下:接收到的中繼編碼節(jié)點信息(y1,y2,...,yN);信息節(jié)點i傳遞給校驗節(jié)點j的信息L(scij);校驗節(jié)點j傳給信息節(jié)點i的信息為L(csji);校驗節(jié)點j傳給編碼節(jié)點k的信息為L(cpjk); 編碼節(jié)點k傳給校驗節(jié)點j的信息為L(pckj);與信息節(jié)點i相連的校驗節(jié)點j的集合Q1(i);與校驗節(jié)點j相連的信息節(jié)點i的集合Q2(j);與校驗節(jié)點j相連的編碼節(jié)點k的集合Q3(j);與編碼節(jié)點k相連的校驗節(jié)點j的集合Q4(k)。
LLR-BP算法的譯碼基本步驟如下:
1)初始化
編碼節(jié)點的初始信息概率的似然比為:
(5)
2)校驗節(jié)點更新
對所有校驗節(jié)點j和其相鄰的信息節(jié)點i,第l次迭代時,計算校驗節(jié)點傳向信息節(jié)點的信息:
(6)
對所有校驗節(jié)點j和其相鄰的編碼節(jié)點k,第l次迭代時,計算校驗節(jié)點傳向編碼節(jié)點的信息:
(7)
3)信息節(jié)點更新
對所有的信息節(jié)點i和其相鄰的校驗節(jié)點j,第l次迭代時,計算信息節(jié)點傳向校驗節(jié)點的信息:
(8)
4)編碼節(jié)點更新
對所有的編碼節(jié)點k和其相鄰的校驗節(jié)點j,第l次迭代時,計算編碼節(jié)點傳向校驗節(jié)點的信息:
(9)
5)譯碼判決
信息節(jié)點利用收集到的所有信息進行硬判決:
(10)
6)停止條件
設(shè)定門限值L0(s),當|L(si)|
接下來利用EXIT圖分析AR方案譯碼的迭代過程,進而優(yōu)化編碼度分布。
該方案的EXIT圖模型如圖6所示,兩中繼校驗節(jié)點C到編碼節(jié)點P的輸出平均互信息分別為IC1P1(zp1)和IC2P2(zp2),到信息節(jié)點S的輸出平均互信息為IC1S(zs1)和IC2S(zs2),編碼節(jié)點P到校驗節(jié)點C的輸出平均互信息為IP1C1(x1)和IP2C2(x2),信息節(jié)點S到校驗節(jié)點C的輸出平均互信息為ISC1(y1)和ISC2(y2)。
圖6 AR方案EXIT圖模型Fig.6 EXIT chart of AR scheme
根據(jù)迭代規(guī)則[10],可以拓展雙中繼AR方案在第l次迭代譯碼時的互信息轉(zhuǎn)換式為:
(11)
(12)
(13)
(14)
(15)
J函數(shù)為發(fā)送端與接收端LLR信息間的互信息函數(shù),在定義域[0,+∞)和值域[0,1)上單調(diào)遞增,其具體表達式為:
(16)
(17)
其中:
(18)
(19)
g1與g2分別表示某一固定度值j時y1關(guān)于y2的軟信息迭代譯碼曲線。
綜上分析,以最大化碼率為目標,保證譯碼的有效性,提出兩個中繼節(jié)點的AR碼度分布聯(lián)合優(yōu)化方法如下:
(20)
由于式(20)不滿足凸優(yōu)化的要求而無法直接求解,我們提出以下三種優(yōu)化策略。
策略一:
假設(shè)兩個中繼節(jié)點具有相同的度函數(shù),則邊函數(shù)和絕大部分信息節(jié)點度值也相同,即:
(21)
將式(20)轉(zhuǎn)換為一個凸優(yōu)化問題,我們可以使用Matlab的凸優(yōu)化工具CVX進行求解。
策略二:
先只考慮一個中繼節(jié)點,使用文獻[10]中單個度分布優(yōu)化方法求出該情況下的最優(yōu)度分布,然后在R1度分布求出的情況下,對R2度分布進行聯(lián)合優(yōu)化求解,同樣可以轉(zhuǎn)換為一個凸優(yōu)化問題。
策略三:
策略二中默認R1較R2傳輸信道信噪比低,將其中繼優(yōu)化順序進行交換,其他參數(shù)設(shè)置均不變,使用同樣的方法聯(lián)合求解度分布。
與相關(guān)文獻不同的是,我們使用三維圖來進行方案的EXIT理論分析。假設(shè)每個校驗節(jié)點連接信息節(jié)點的邊數(shù)為相同固定值,即:ρ1(j1)=ρ2(j2)=1。為有一個直觀印象,假設(shè)各噪聲方差σ0=2.266,σ1=0.7666,σ2=0.6770,信息節(jié)點平均度數(shù)d1s=2,d2s=3,校驗節(jié)點連接邊數(shù)固定值j1=j2=3,最大迭代次數(shù)為150。根據(jù)式(11)~(15)同時畫出x1,x2與y1,y2的迭代關(guān)系曲面,如圖7所示。
圖7 迭代關(guān)系三維圖Fig.7 3D diagram of iterative relationship
將圖7中曲面交線投影到y(tǒng)1Oy2平面,并畫出縱向曲面與y1Oy2平面交線,如圖8所示。
圖8 曲面交線投影及y1,y2迭代變化圖Fig.8 Projection of surface intersecting line and iterative change of y1,y2
圖8中曲線1表示圖7(a)中縱向曲面與y1Oy2平面交線,曲線2對應(yīng)圖7(b)中交線;曲線3表示圖7(a)中兩曲面交線在y1Oy2平面投影,曲線4對應(yīng)圖7(b)中投影;紅色圓圈表示點(y1,y2)在迭代過程中的變化情況,其收斂區(qū)域為所在曲線3與曲線4之間區(qū)域。根據(jù)前述定義及分析,兩曲線對應(yīng)y1關(guān)于y2表達式分別為:
(22)
(23)
由曲線位置關(guān)系得到成功譯碼的條件為:
(24)
將式(24)中固定j值拓展為所有可能j值的概率累加,即得到式(20)中的限制條件。通過以上分析,我們所提方案在所給約束條件下能夠成功譯碼,降低譯碼錯誤平層。并且較文獻[10]方法拓展為兩個節(jié)點的聯(lián)合優(yōu)化,可獲得更好性能。
根據(jù)WSN的實際情況,設(shè)置三組不同的信噪比,對所提三種優(yōu)化策略分別求得度分布。同時也給出文獻[10]中方法所求度分布進行對照,具體表達式如表1、表2和表3所示。
表1 不同方案下SNR0=-5 dB,SNR1=0 dB, SNR2=2 dB時的度分布表達式
表2 不同方案下SNR0=-5 dB,SNR1=1 dB, SNR2=2 dB時的度分布表達式
表3 不同方案下SNR0=-4 dB,SNR1=1 dB, SNR2=2 dB時的度分布表達式
對照LT碼方案使用Shokrollahi的經(jīng)典度分布如下:
Ω(x)=0.008x+0.494x2+0.166x3+0.073x4+ 0.083x5+0.056x8+0.037x9+0.056x19+ 0.025x65+0.003x66
(25)
我們對以上度分布方案進行蒙特卡洛仿真,采用BPSK調(diào)制方式,傳輸信道為AWGN信道,原始信息碼長為10000,循環(huán)次數(shù)為1000,最大譯碼迭代次數(shù)為150。結(jié)果如圖9所示。
從圖9(a)中可以看到,LT方案在較低碼率倒數(shù)時(1/R<3.1)誤碼率比AR方案低,但隨著碼率的減小其誤碼率緩慢降低而趨于同一層級;四種AR方案在仿真中并沒有出現(xiàn)明顯的錯誤平層,由于AR碼在編碼結(jié)構(gòu)上較LT碼級聯(lián)了一個累加器,使得相鄰的編碼節(jié)點之間通過校驗節(jié)點直接產(chǎn)生聯(lián)系,錯誤的編碼節(jié)點信息在譯碼迭代時能夠被及時糾正,這也與式(17)的平均誤碼率分析結(jié)果相對應(yīng);文獻[10]度分布方案比聯(lián)合方案二在較高碼率倒數(shù)時(1/R>3.3)的誤碼率相差近一個數(shù)量級,這說明聯(lián)合度分布優(yōu)化是有效的;聯(lián)合方案一與方案三近乎重合,且明顯優(yōu)于方案二,分析原因為信道條件較好節(jié)點對成功譯碼的影響更大,對其優(yōu)先進行度分布優(yōu)化能夠提高譯碼性能;在聯(lián)合相同度的優(yōu)化時,同時考慮了兩個中繼到目的節(jié)點的信道條件,整體上進行優(yōu)化對性能也有一定提升。
圖9 誤碼率性能仿真圖Fig.9 Simulation performance of bit error rate
圖9(b)和圖9(c)中LT方案的變化并不明顯,但是AR方案的誤碼曲線性能明顯提升,因為信噪比增大使得數(shù)據(jù)在傳輸過程中產(chǎn)生錯誤的概率減小。方案一和方案三也拉開差距,這說明對不同信道條件的中繼設(shè)置不同度分布更接近最優(yōu)策略。圖9綜合顯示我們所提方案三譯碼性能最優(yōu),較已有文獻AR度分布方案在誤碼率達10-5數(shù)量級上,分別至少減小7.14%、8.75%和6.25%的碼率倒數(shù)。本文所提方案是在已有文獻方案基礎(chǔ)上,充分考慮不同節(jié)點信道參數(shù)的相異性進行聯(lián)合度分布優(yōu)化所得結(jié)果,EXIT圖分析中已經(jīng)在迭代譯碼時考慮了兩個節(jié)點的協(xié)同配合,使得所提方案的譯碼效率獲得極大提升。
本文探討了協(xié)同網(wǎng)絡(luò)中通信方案設(shè)計及度分布優(yōu)化問題,針對“1-n-1”模型提出了AR碼方案,利用其無碼率特性有效解決了網(wǎng)絡(luò)通信中信道變化帶來的適應(yīng)性問題;通過編碼結(jié)構(gòu)以及EXIT圖分析,進行度分布聯(lián)合優(yōu)化設(shè)計,并對優(yōu)化條件進行理論推導(dǎo)和驗證。提出了三種優(yōu)化策略,使用凸優(yōu)化工具分別進行求解。仿真分析表明,我們所提的AR方案最優(yōu)策略降低了LT方案的錯誤平層,在譯碼性能上較現(xiàn)有文獻[10]度分布方案更優(yōu)。下一步將考慮所有中繼節(jié)點等效看成同一度分布進行整體分析研究,以減小復(fù)雜度和提高傳輸效率。