黃加佳,雷 菁,黃 英
(國防科技大學(xué)電子科學(xué)學(xué)院,湖南 長沙 410073)
無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)[1-3]是當(dāng)前國內(nèi)外備受關(guān)注的研究領(lǐng)域之一,其綜合了傳感器技術(shù)、嵌入式計算技術(shù)、無線通信技術(shù)等多種技術(shù),作為一種信息感知和數(shù)據(jù)采集的新型網(wǎng)絡(luò),以其低功耗、低成本、分布式、自組網(wǎng)、適應(yīng)惡劣環(huán)境等特點(diǎn)為物聯(lián)網(wǎng)(internet of things,Io T)[4-7]感知世界帶來無限生機(jī),是物聯(lián)網(wǎng)的“神經(jīng)末梢”。
無碼率碼又稱噴泉碼[8],其傳輸碼率可以任意變化,類似于噴泉一樣,只要接收方收到足夠多的編碼信息,便可全部恢復(fù)發(fā)送端數(shù)據(jù)[9-11]。無碼率碼非常適用于廣播、視頻等應(yīng)用場景,在當(dāng)前第3代合作伙伴計劃(the third generation partnership project,3GPP)的多媒體廣播和多播服務(wù)標(biāo)準(zhǔn)[12],以及數(shù)字視頻廣播(digital video broadcasting,DVB)的數(shù)據(jù)廣播內(nèi)容分發(fā)協(xié)議中[13],并已經(jīng)使用Raptor碼[14]作為傳輸碼型。
已經(jīng)有大量研究將無碼率碼應(yīng)用于WSN技術(shù)當(dāng)中。文獻(xiàn)[15]提出了基于無碼率碼的協(xié)作無碼率廣播傳輸協(xié)議方案,相比于流方案、概率廣播方案和無碼率概率廣播方案等,在WSN傳輸中擁有更高的可靠性和傳輸效率,并且不需要任何的網(wǎng)絡(luò)拓?fù)湫畔?,可推廣至移動和有損網(wǎng)絡(luò)傳輸。文獻(xiàn)[16]分析指出,在大規(guī)模的WSN存儲中,利用基于無碼率碼(盧比轉(zhuǎn)換(Luby transform,LT)碼[17-18]或Raptor碼[19-20])的分布式存儲算法,能夠很好地解決編碼效率和復(fù)雜度的問題。文獻(xiàn)[21]給出了描述系統(tǒng)的網(wǎng)絡(luò)圖模型,從多跳傳輸出發(fā),該模型分為信源節(jié)點(diǎn)、中繼節(jié)點(diǎn)和目的節(jié)點(diǎn),類似于一個系統(tǒng)非規(guī)則低密度生成矩陣碼結(jié)構(gòu),在瑞利衰落信道下,利用外信息轉(zhuǎn)移(extrinsic information transfer,EXIT)圖、線性優(yōu)化和對數(shù)似然比(log likelihood ratio,LLR)信息值的傳輸優(yōu)化設(shè)計中繼節(jié)點(diǎn)的度分布,來提高傳輸性能。文獻(xiàn)[22]針對WSN給出一種基于LT碼的分布式網(wǎng)絡(luò)編碼,在源節(jié)點(diǎn)、中繼節(jié)點(diǎn)和目的節(jié)點(diǎn)形成基于圖碼的傳輸結(jié)構(gòu),并分析了其誤碼率的上界。文獻(xiàn)[23]使用Raptor碼進(jìn)行分析,只考慮三跳傳輸,假定無線傳感器有多個信源節(jié)點(diǎn),多個中繼節(jié)點(diǎn)和一個匯聚節(jié)點(diǎn),通過廣播階段、預(yù)編碼階段、LT編碼階段和數(shù)據(jù)恢復(fù)階段,實(shí)現(xiàn)WSN的多跳數(shù)據(jù)傳輸,并理論分析了其誤碼率的上界與下界。
但是以上無碼率碼的應(yīng)用研究主要集中在LT碼和Raptor碼上,2008年Wu等人[24]針對加性高斯白噪聲(additive white Gaussian noise,AWGN)信道提出結(jié)構(gòu)復(fù)雜度低、性能良好的累積無碼率(accumulate rateless,AR)碼,在結(jié)構(gòu)更為簡單的情況下,通過一定的度分布優(yōu)化,也能獲得較Raptor碼類似甚至更好的性能[25]。因此,本文在傳感器網(wǎng)絡(luò)中,對AR碼進(jìn)行相關(guān)應(yīng)用研究具有很大的價值。
典型的無線傳感器網(wǎng)絡(luò)的體系結(jié)構(gòu)如圖1所示,包括分布式的傳感器結(jié)點(diǎn)、匯聚節(jié)點(diǎn),有時還包括與其他網(wǎng)絡(luò)連接的網(wǎng)關(guān)和管理中心等。部署在監(jiān)測環(huán)境中的傳感器結(jié)點(diǎn)通過自組織的方式構(gòu)成無線網(wǎng)絡(luò),以協(xié)作的方式感知、采集和簡單處理覆蓋區(qū)域內(nèi)的指定信息,然后通過多跳中繼方式將數(shù)據(jù)傳到匯聚節(jié)點(diǎn),最后借助互聯(lián)網(wǎng)或移動通信網(wǎng)等將整個區(qū)域內(nèi)的數(shù)據(jù)傳送到遠(yuǎn)程任務(wù)管理中心進(jìn)行集中處理。
圖1 WSN結(jié)構(gòu)示意圖Fig.1 WSN structure diagram
傳感器節(jié)點(diǎn)通常是一個微型的嵌入式系統(tǒng),具有感知物理數(shù)據(jù)和簡單的處理能力,一般通過能量有限的電池供電,要求低功耗。從網(wǎng)絡(luò)的功能來看,其還有對其他節(jié)點(diǎn)送來的信息進(jìn)行轉(zhuǎn)發(fā)的功能。匯聚節(jié)點(diǎn)是傳感器網(wǎng)絡(luò)中的協(xié)調(diào)器設(shè)備,其處理能力、存儲能力和通信能力比傳感器節(jié)點(diǎn)強(qiáng),一般沒有感知能力,但有可靠穩(wěn)定的電源為其供電,功耗問題不那么突出。本文考慮多個傳感器節(jié)點(diǎn)(即源節(jié)點(diǎn))采集到原始數(shù)據(jù)信息,通過其他暫未采集信息的傳感器節(jié)點(diǎn)(即中繼節(jié)點(diǎn))傳輸給一個匯聚節(jié)點(diǎn)(即目的節(jié)點(diǎn)),提煉出WSN的局部網(wǎng)絡(luò)傳輸模型如圖2所示。
圖2 傳輸網(wǎng)絡(luò)模型Fig.2 Transmission network model
本文假設(shè)整個網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)是已知的,并且有一個總的中心對各節(jié)點(diǎn)進(jìn)行統(tǒng)籌協(xié)調(diào)控制;假設(shè)有k個源節(jié)點(diǎn)(S1,S2,…,Sk),其傳輸?shù)男畔⒁詳?shù)據(jù)包為單位進(jìn)行討論。假設(shè)一共有兩組中繼節(jié)點(diǎn),中繼節(jié)點(diǎn)按照其集聚程度和信道條件分為兩組,保證每組中繼節(jié)點(diǎn)位置上相對較為集中,其中信道條件相對較好的一組為,另一組為。假設(shè)只有一個共同的目的節(jié)點(diǎn)D,由于信道條件和功率的限制,其只接收并處理中繼節(jié)點(diǎn)傳來的數(shù)據(jù)。所有數(shù)據(jù)包按照802.15.4協(xié)議[26]進(jìn)行封裝,添加有包頭信息和包尾循環(huán)冗余校驗(cyclic redundancy check,CRC)校驗,通過包頭中的標(biāo)志信息來區(qū)分?jǐn)?shù)據(jù)來源于源節(jié)點(diǎn)或者某一中繼節(jié)點(diǎn)。
在上述模型下,本文設(shè)計了基于AR碼的分布式編碼結(jié)構(gòu),其整體圖碼的表示形式如圖3所示。
圖3 等效編碼結(jié)構(gòu)圖Fig.3 Equivalent coding structure diagram
圖3中k個信息節(jié)點(diǎn)對應(yīng)圖2中的源節(jié)點(diǎn)采集數(shù)據(jù),兩組2n對校驗節(jié)點(diǎn)與編碼節(jié)點(diǎn)分別對應(yīng)圖2中兩組2n個中繼的數(shù)據(jù)處理。具體的傳輸機(jī)制設(shè)計分為以下3個階段。
(1)廣播階段
對應(yīng)圖2中的短虛線所示。假設(shè)源節(jié)點(diǎn)(S1,S2,…,Sk)采集到了相關(guān)數(shù)據(jù)信息,并且各源節(jié)點(diǎn)的信息可能存在一定的關(guān)聯(lián)性。每個源節(jié)點(diǎn)的信息都按相等的長度組成數(shù)據(jù)段,經(jīng)過相關(guān)協(xié)議規(guī)定添加包頭標(biāo)志信息和CRC校驗信息后,封裝成等長的數(shù)據(jù)包后向一級中繼節(jié)點(diǎn)進(jìn)行廣播發(fā)送。然后進(jìn)入監(jiān)聽模式以節(jié)省資源消耗,或者接收到譯碼成功的反饋后發(fā)送下一組數(shù)據(jù)。本文暫不考慮源節(jié)點(diǎn)相互之間的干擾。
(2)轉(zhuǎn)發(fā)階段
在收到第一個來自其他中繼傳輸?shù)臄?shù)據(jù)后,同樣進(jìn)行解封裝和CRC校驗,確認(rèn)數(shù)據(jù)來源,并且錯誤直接丟棄,正確則緩存下來,并按要求重新封裝后定向發(fā)送至目的節(jié)點(diǎn)。持續(xù)接收數(shù)據(jù),并在收到來自的第二個正確的數(shù)據(jù)包后,將該數(shù)據(jù)段與之前緩存下來的數(shù)據(jù)對應(yīng)位置進(jìn)行異或相加,所得編碼數(shù)據(jù)再進(jìn)行封裝發(fā)送。依照此方法不斷進(jìn)行數(shù)據(jù)的編碼轉(zhuǎn)發(fā),直至收到目的節(jié)點(diǎn)成功譯碼的反饋為止。的作用相當(dāng)于一個累加器,使得每次收到后的數(shù)據(jù)與上次發(fā)送的數(shù)據(jù)進(jìn)行了累加后再發(fā)送,這樣可以減小目的端譯碼的錯誤概率,改善噴泉碼數(shù)據(jù)傳輸性能。明顯的功率設(shè)置要高于其他中繼節(jié)點(diǎn),為節(jié)省功耗,本文可以采取輪流擔(dān)任的策略。
中繼節(jié)點(diǎn)組2與中繼節(jié)點(diǎn)組1的操作一樣,只是設(shè)定的度分布函數(shù)為Ω2(x),定義的累加中繼節(jié)點(diǎn)為。中繼節(jié)點(diǎn)分成兩組進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)傳輸,能夠更加貼近于實(shí)際情況,更好擬合傳輸條件,從而提高數(shù)據(jù)傳輸效率,這樣便形成如圖3所示的等效編碼結(jié)構(gòu)。
(3)譯碼階段
對應(yīng)圖2中目的節(jié)點(diǎn)D的信息處理。目的節(jié)點(diǎn)在收到中繼節(jié)點(diǎn)和發(fā)送來的數(shù)據(jù)包后,同樣進(jìn)行解封裝,通過包頭信息確定數(shù)據(jù)的來源節(jié)點(diǎn)和連接情況,并恢復(fù)出整個碼圖結(jié)構(gòu)。此時不進(jìn)行CRC校驗,而是將收到的數(shù)據(jù)段直接進(jìn)行緩存,當(dāng)緩存數(shù)量大于某一設(shè)定值時,進(jìn)行對數(shù)似然比置信傳播(log likelihood ratio-belief propagation,LLR-BP)軟信息迭代譯碼。然后,通過CRC校驗來判斷是否譯碼成功,若源節(jié)點(diǎn)數(shù)據(jù)全部正確譯出,則發(fā)送接收成功反饋;如未能全部譯出,則繼續(xù)接收一定數(shù)量的中繼節(jié)點(diǎn)數(shù)據(jù),再進(jìn)行譯碼。
可以看到,該方案對中繼節(jié)點(diǎn)進(jìn)行了分組,使得分析更加精確和符合實(shí)際;累加中繼節(jié)點(diǎn)和的加入,使得輸出編碼數(shù)據(jù)包之間的關(guān)聯(lián)性更強(qiáng)了,用來提高譯碼效率。圖3中整個編碼結(jié)構(gòu)等效為兩個AR碼的組合,較文獻(xiàn)[22]所述的分布式LT網(wǎng)絡(luò)編碼結(jié)構(gòu),增加了中繼節(jié)點(diǎn)的分組和累加,本文將這種改進(jìn)后的方案稱之為分布式AR編碼方案。
接下來使用EXIT圖分析AR方案的譯碼過程,從而進(jìn)行度分布的優(yōu)化。如圖4所示,將編碼節(jié)點(diǎn)和校驗節(jié)點(diǎn)的譯碼等效為校驗節(jié)點(diǎn)譯碼器(check node decoder,CND),將信息節(jié)點(diǎn)的譯碼等效為變量節(jié)點(diǎn)譯碼器(variable node decoder,VDN),信息在兩個節(jié)點(diǎn)譯碼器之間循環(huán)迭代最終實(shí)現(xiàn)譯碼。
圖4 AR方案EXIT圖模型Fig.4 EXIT chart model of AR scheme
圖4中,校驗節(jié)點(diǎn)C到編碼節(jié)點(diǎn)P的輸出平均互信息為,校驗節(jié)點(diǎn)C到信息節(jié)點(diǎn)S的輸出平均互信息為,編碼節(jié)點(diǎn)P到校驗節(jié)點(diǎn)C的輸出平均互信息為,信息節(jié)點(diǎn)S到校驗節(jié)點(diǎn)C的輸出平均互信息為。為了后續(xù)表示方便,本文作如下等效替換:
根據(jù)互信息的迭代規(guī)則,可以得到在第l次迭代譯碼時的互信息轉(zhuǎn)換式:
J函數(shù)是一個定義域為[0,+∞),值域為[0,1)的單調(diào)遞增函數(shù);其反函數(shù)J-1也是一個單調(diào)遞增函數(shù);d1s和d2s分別表示兩組中繼對應(yīng)的絕大部分信息節(jié)點(diǎn)的度值(采取優(yōu)先選擇度值較小信息節(jié)點(diǎn)方法);ρ1和ρ2分別表示兩組中繼的等效校驗節(jié)點(diǎn)邊分布,其多項式表達(dá)式為
設(shè)置z p1、z p2、z s1和z s2的初始值為0,根據(jù)式(2)~式(5)更新x和y,然后又根據(jù)式(6)~式(9)反過來更新z p和z s,如此循環(huán)。AR方案是否使得譯碼的誤碼率趨于零的關(guān)鍵就在于經(jīng)過多次迭代譯碼后,y1和y2值能否趨近于1。
當(dāng)譯碼迭代到一定次數(shù),所有LLR信息趨于穩(wěn)定值時,假設(shè)每個校驗節(jié)點(diǎn)連接信息節(jié)點(diǎn)的邊數(shù)是一個相同的固定值,即:ρ1(j1)=ρ2(j2)=1,聯(lián)立式(2)、式(3)和式(6)、式(7)可得
由式(14)~式(17)可以得到x1與y1,y2的一個關(guān)系表達(dá)式,以及x2與y1,y2的一個關(guān)系表達(dá)式,其在y1oy2平面上的投影方程分別為
聯(lián)立式(12)、式(14)和式(16)可以得到兩曲線的交線在y1oy2平面上的投影方程:
同理,由式(13)、式(15)和式(17)可得
將固定的一個j值擴(kuò)展為所有可能的取值,則由投影方程推導(dǎo)出成功譯碼所需條件為
文獻(xiàn)[25]在AR度分布優(yōu)化時只考慮一個節(jié)點(diǎn)的優(yōu)化,本文在此基礎(chǔ)上進(jìn)行拓展,同時考慮兩個節(jié)點(diǎn)的編碼度分布,其優(yōu)化求解表達(dá)式如下:
式(23)表示最大化近似瞬時碼率;約束條件C1表示能夠成功譯碼的外信息轉(zhuǎn)移圖要求;C2表示非系統(tǒng)AR碼譯碼啟動的基本條件,ρ1,1和ρ2,1分別表示兩組中繼度值為1的概率,ε表示任意小的一個正數(shù),‖表示或運(yùn)算;C3表示邊分布的性質(zhì)要求;C4表示邊分布ρ與度分布Ω的轉(zhuǎn)換關(guān)系。
由于式(23)中涉及到的變量過多而不滿足凸優(yōu)化求解的條件,本文采用優(yōu)先考慮只有一個信道條件較好的中繼組情況,求出此時的最佳度分布。然后,在其已知的情況下,對第二個中繼組的等效度分布進(jìn)行聯(lián)合優(yōu)化的策略。這樣式(23)就相當(dāng)于已知ρ1求ρ2,轉(zhuǎn)化成了一個凸優(yōu)化問題,于是可以使用Matlab的凸優(yōu)化工具CVX進(jìn)行求解。
根據(jù)WSN中傳感器節(jié)點(diǎn)的實(shí)際情況,以及和文獻(xiàn)[27]的對比,本文設(shè)置兩組中繼節(jié)點(diǎn)的等效噪聲標(biāo)準(zhǔn)差,具體優(yōu)化后的度分布為
同時使用文獻(xiàn)[22]中針對WSN的分布式LT碼方案進(jìn)行對照,其具體度分布為
文獻(xiàn)[23]中針對WSN的分布式Raptor碼方案選取碼率為0.98的弱化低密度奇偶校驗(low density parity check,LDPC)碼作為預(yù)編碼,連接的LT碼度分布同式(25)。同時,也給出采用文獻(xiàn)[27]單獨(dú)對AR碼每個中繼節(jié)點(diǎn)組求得不同信道條件下的最優(yōu)度分布,用來進(jìn)行仿真比較,其具體為
本文設(shè)置傳輸信道為AWGN信道,原始信息碼長為10-000,循環(huán)次數(shù)為1 000次,最大譯碼迭代次數(shù)為150次。針對以上4種方案進(jìn)行蒙特卡羅仿真,結(jié)果如圖5所示。
圖5 仿真結(jié)果圖Fig.5 Diagram of simulation results
從圖5中可以看到,LT方案雖然在碼率倒數(shù)為1.48時便能將誤碼率降到10-2以下,而其他方案誤碼率均在10-2以上,但是隨著碼率倒數(shù)的增加,即接收端收到更多的譯碼符號,LT方案誤碼曲線并沒有較大幅度的瀑布區(qū),而是緩慢下降,存在較為明顯的錯誤平層。對于文獻(xiàn)[23]中所述Raptor碼方案,大大降低了LT碼的錯誤平層,在碼率倒數(shù)大于1.58時其誤碼率要低于LT方案,迅速降低至10-5以下。對于文獻(xiàn)[27]方法,其較Raptor方案誤碼曲線下降更快,且在碼率倒數(shù)大于1.54時即超越LT方案。而本文所提的AR碼聯(lián)合度分布優(yōu)化方案,其誤碼性能又明顯優(yōu)于AR文獻(xiàn)[27]度分布優(yōu)化方案和文獻(xiàn)[23]Raptor方案,在10-5的誤碼率層級上分別至少減小1.3%和3.7%的碼率倒數(shù),也就是說譯碼所需符號數(shù)更少,傳輸效率更高。并且在計算復(fù)雜度上,由于編碼結(jié)構(gòu)的不同,AR方案顯然優(yōu)于Raptor方案,這更加應(yīng)證了本文所提方案的有效性。
本文針對WSN中的多源多中繼模型,設(shè)計了基于AR碼的分布式編碼協(xié)同傳輸機(jī)制,并進(jìn)行了聯(lián)合度分布的優(yōu)化求解。性能仿真分析表明,本文所提的AR碼方案要明顯優(yōu)于文獻(xiàn)[22]的LT方案,沒有出現(xiàn)明顯的錯誤平層。在傳輸效率和譯碼性能上,較文獻(xiàn)[23]的Raptor方案和文獻(xiàn)[27]的AR碼單獨(dú)度分布優(yōu)化方案有明顯提高。下一步將研究AR碼在短碼長情況下的度分布優(yōu)化及軟信息譯碼改進(jìn),更便于應(yīng)用實(shí)現(xiàn)。