一種基於部分信息反饋的分布式盧比變換編碼方法與流程
2023-09-20 21:32:55 3

本發明涉及分布式通信系統的編碼技術領域,尤其是一種基於部分信息反饋的分布式盧比變換編碼方法。
背景技術:
盧比變換碼(Luby Transform Codes,簡稱LT碼)是第一種高效實用的數字噴泉碼,噴泉碼主要機制為通過產生無碼率限制的編碼數據,只要在接收端獲取到略多於原始數據數量的編碼數據後就可以以極高的概率恢復出原傳輸數據,這種機制使得噴泉碼特別適合於某些場景,如:無反饋鏈路的系統,廣播多播數據,深空通信等。
刪除信道可視作按包傳輸數據系統的網絡層描述,Internet就是刪除信道的典型實例,其他通信系統,如現在發展最為迅速的移動通信系統,若下層(物理層)通過糾錯編碼或自動請求重傳後仍然沒能正確恢復所傳輸的數據包,此時就相當於將數據包刪除,因此也可視作刪除信道。
LT碼的編碼方案為若需要發送K個源數據包,首先通過一個度數分布函數,產生一個隨機的度數值d,然後隨機地從K個源數據包中選出d個,它們的異或值即為該編碼數據包,且其度數為d;解碼採用置信傳播(BP)算法,首先從接收到的編碼數據包中查找度數為1的數據包,恢復與之相連的唯一一個源數據包,將該源數據包異或加至與之相連的所有編碼數據包,重複上述步驟,直至全部K個源數據包恢復。
LT碼所採用的較優的度數分布為RSD(Robust Soliton Distrubution,魯棒孤波分布),能夠達到在解碼過程中度數為1的編碼數據包的數量趨於合理,對於需要發送K個源數據包的情況,RSD函數為:
μ(d)=[ρ(d)+τ(d)]/β,[d=1,2,…,K/m]
其中β、ρ(d)和τ(d)分別為歸一化因子、LT的理想孤波分布函數和修正函數,其中:
式中,c,δ為可調參數,滿足c>0,δ∈[0,1];Z為每輪解碼中度數為1的編碼符號數。
分布式LT碼所用的度數分布函數解卷積孤波函數qDSD(d)(DSD,Deconvolved Dolion Distribution)通過對RSD函數μ(d)反卷積分解獲得,滿足是可實現的,即在定義範圍內不能有負數值;滿足在中繼經過簡單操作(主要是異或)後,所得的編碼數據包的度數分布近似於RSD函數,即文獻「The Design and Performance of Distributed LT Codes」中通過對RSD合理改動,使得分解之後的度數分布函數滿足這兩個條件,其構建過程如下:
首先將對RSD函數分解為兩部分,其中,μ2(d)中包含了RSD中導致不能直接解卷積的部分,β2=β-β1是歸一化因子,
其中
對μ1(d)反卷積分解,得到
若令可以得到DSD函數為:
p(d)=λf(d)+(1-λ)μ2(d)
但是這種方案的不足之處在於:如果接收端已經恢復部分信源信息,DSD中度數較低的度將會編出冗餘的編碼包,這無助於解碼。而且接收端恢復出的信息包數越多,DSD越容易編出冗餘的編碼包,編碼信息大大下降,所以這時需要對DSD進行改進。
技術實現要素:
發明目的:為解決上述技術問題,降低各信源發送端後續編碼的不確定度,減少接收端恢復剩餘信息所需的整體編碼數據包數量,本發明提出一種基於部分信息反饋的分布式盧比變換編碼方法。
技術方案:為實現上述技術效果,本發明提供的技術方案為:一種基於部分信息反饋的分布式盧比變換編碼方法,適用於多信源單中繼通信系統;所述多信源單中繼通信系統包括中繼節點R,信宿節點E和信源節點Sj,j=[1,2,…,m];設某一信源節點Sj需要與信宿節點E交互的源數據包為K個;Sj到R的信道刪除概率為pj;該方法包括步驟:
S101:信宿端將已正確接收的源數據包數量n反饋到信源節點Sj;
S102:源節點Sj判斷是否滿足n≤K-m;若判斷結果為滿足,則轉入步驟S103;否則,轉入步驟S104;
S103:Sj根據反饋的n值採用轉移解卷積孤波分布函數PSDSD(d)[d=1,2,…,K/m]隨機產生一個度數值d=dj;轉入步驟S105;
S104:Sj產生度數值轉入步驟S105;
S105:從Sj的K/m個源數據包中選出d個源數據包,並進入步驟S106;
S106:Sj對步驟S105選出的源數據包進行編碼:設選出的源數據包為生成編碼數據包為異或符號;轉入步驟S107;
S107將步驟S106生成的編碼數據包發送至中繼節點R,中繼節點R將各信源節點生成的編碼數據包重構生成LT編碼。
進一步的,所述步驟S103中構建轉移解卷積孤波分布函數PSDSD(d)的方法為:對Sj的解卷積孤波分布函數qDSD(d)做轉移處理得到函數PSDSD(d),包括步驟:
S201:輸入信宿端反饋的以正確接收信息包數n;
S202:將PSDSD(d)(d=1,2,…,K/m)全部初始化為0;
S203:令x=0;
S204:令x=x+1;
S205:令x'=x/(1-n/K);
S206:令d=floor(x),其中floor是向下取整函數;
S207:令α=x'-d;
S208:令pSDSD(d)=pSDSD(d)+(1-α)qDSD(x);
S209:令pSDSD(d+1)=pSDSD(d+1)+αqDSD(x);
S210:判斷是否滿足x=K/m,若滿足,則進入步驟S211;否則,轉入步驟S204;
S211:將pSDSD(d)歸一化為合法的概率密度函數PSDSD(d);
S212:輸出PSDSD(d)。
進一步的,所述步驟S211中將pSDSD(d)歸一化為合法的概率密度函數PSDSD(d)的方法為:
S301:求出
S302:令PSDSD(d)=pSDSD(d)/S,(d=1,2,…,K/m)。
進一步的,所述Sj的解卷積弧波分布函數qDSD(d)的構建方法包括步驟:
S401:構建Sj的魯棒弧波分布函數:μ(d)=[ρ(d)+τ(d)]/β;其中,
式中,β、ρ(d)和τ(d)分別為歸一化因子、盧比變換的理想孤波分布函數和修正函數:c,δ為可調參數,c>0,δ∈[0,1];Z為每輪解碼中度數為1的編碼符號數;
S402:對μ(d)做m次反卷積分解,得到解卷積孤波分布函數qDSD(d),qDSD(d)與μ(d)的關係式為:
進一步的,所述步驟S103中通過函數PSDSD(d)產生度數值d的步驟為:
S501:根據概率密度函數PSDSD(d)計算其概率分布函數pSDSD(d);
S502:利用計算機產生一個[0,1]區間內的隨機數r;
S503:令d=0;
S504:令d=d+1;
S505:判斷r<pSDSD(d)是否成立,若判斷結果為是,則轉入步驟S506;否則,轉入步驟S504;
S506:輸出d。
有益效果:本發明與現有技術相比具有以下優勢:
本發明提供的技術方案中,接收端反饋已正確接收的信息包數n到各信源節點,只需要非常少量的反饋信息,即可大幅度減少接收端恢復剩餘信息所需的接收包數,改進傳統LT碼的性能
附圖說明
圖1為多信源單中繼通信系統結構圖;
圖2為本發明的實施例流程圖;
圖3為實施例中產生PSDSD(d)函數的流程圖;
圖4為實施例中根據PSDSD(d)函數產生一個隨機的度數d的流程圖;
圖5為實施例所提供的編碼方案與DSD編碼方法的仿真結果對比圖。
具體實施方式
下面結合附圖對本發明作更進一步的說明。
如圖1所示為實施例中的多信源單中繼通信系統結構圖,包括中繼節點R,信宿節點E和信源節點Sj,j=[1,2,…,m];設某一信源節點Sj需要與信宿節點E交互的源數據包為K個;Sj到R的信道刪除概率為pj。
為簡化說明,本實施例中,取m=2,即有兩個信源節點S1、S2。S1、S2別通過R與E通信,每個信源節點各發送K/2個源數據包,總體上需要傳送K個源數據包至信宿節點E,通過反饋獲取信宿已知的信息包數n,中繼節點R至信宿節點E的信道刪除率p。對任意一個信源Sj,j=1,2其編碼步驟如下:
(1)獲得接收端已知信息包數n,用於確定採用哪個度數分布函數;
(2)比較已知信息包數n和K-2的大小;
(3)若步驟(2)中n≤K-2,則採用轉移分布式LT碼的SDSD度數分布函數pSDSD(d)(d=1,2…K/m)產生隨機的度數值dj;
(4)若步驟(2)中n>K-2,則產生度dj=K/2;
(5)從Sj的K/m個源數據包中隨機地選擇dj個,記為:
(6)根據步驟(5)中選出的源數據包,計算生成的編碼包為:
(7)將步驟(6)生成的編碼包發送至中繼R。
信宿端利用BP解碼算法,對來自信源和經中繼傳輸的數據解碼,此時信源和的源數據包是同時開始恢復。
圖5所示為本實施例所提供的編碼方案與DSD編碼方法的仿真結果對比圖。仿真時,取K=1000,m=2,即每個信源需要發送500個源數據包,中繼到信宿有著刪除率p。以接收端已知的信息包數為橫坐標,分別採用DSD(分布式LT碼的度數分布函數qDSD(d))和本發明提出的基於部分信息反饋的分布式LT碼的編碼方法,仿真解碼所需要編碼數據包數(成功恢復全部的K=1000所需要的編碼包數),每個點至少仿真了100幀。可以看出本發明提出的方案解碼所需的編碼數據包數更少,性能好於傳統的LT碼。
以上所述僅是本發明的優選實施方式,應當指出:對於本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護範圍。