410 likes | 537 Views
Distributed LT Codes. Srinath Puducheri, J ö rg Kliewer, and Thomas E. Fuja. Department of Electrical Engineering, University of Notre Dame, Notre Dame, IN 46556, USA. IEEE International Symposium on Information Theory (ISIT), 2006. Outline. Introduction Description of LT Code
E N D
Distributed LT Codes Srinath Puducheri, Jörg Kliewer, and Thomas E. Fuja. Department of Electrical Engineering, University of Notre Dame, Notre Dame, IN 46556, USA IEEE International Symposium on Information Theory (ISIT), 2006.
Outline • Introduction • Description of LT Code • Decomposition of LT Code • Simulation Results • Conclusions • References
Introduction • Consider a scenario: S2:k/2 information symbols S1: k/2 information symbols Distributed LT Distributed LT N T:k information symbols LT
Description of LT Code • Luby Transform (LT) Codes: • Encoding process • For the ithencoded symbol, select degree diby Soliton distribution • Choosedisource symbols • Perform XOR on chosen symbols • Decoding process • Decode degree-one encoded symbols • Remove degree-one edges iteratively x1 x2 x3 x4 x5 x6 … y1 y2 y3 y4 y5 x2 x4 x1x3 x2x5 x3x5x6
Description of LT Code • LT process: covered: in theripple S processed unprocessed: L D B A C The most likely degree of encoded symbols that get released: k/L y1 y2 y4 y3 A A B B D A C D
Description of LT Code • The intuition for the degree distribution: • More small degree than large degree. • Easy to be decoded. • One single degree-one encoded symbol can trigger the LT process. • Ideal Soliton Distribution: k: number of total original symbols i: degree of encoded symbols
Description of LT Code • Ideal Soliton Distribution: probability degree
Description of LT Code • In practice: • Only one single degree-one encoded symbol is too fragile. • Number of degree-one encoded symbol has to be more. • A larger Ripple. • Large degree encoded symbols are necessary evils. • Because of a larger Ripple. • To give a better coverage of original symbols. • A modified Soliton Distribution, concerning the size of Ripple during the LT process. • Robust Solition Distribution.
Description of LT Code • LT process: covered: in theripple S processed … F unprocessed: L C E D When L = S, we expect all the original symbols to be covered. y5 We need the encoding symbols that get released then must cover S original symbols by degree: k/S C D E F
Description of LT Code • Robust Soliton Distribution (RSD): • Robust Soliton Distribution μ(·) is given by: k: number of total original symbols i: degree of encoded symbols
Description of LT Code • ρ(·) is a distribution over 1 ≦ i ≦ k, and for constants c > 0, 0 <δ< 1, the τ(·) is: , where S define the size of Ripple:
k = 10000 Description of LT Code probability • Robust Soliton Distribution K: number of total original symbols d: degree of encoded symbols τ( k/S )
Robust Soliton Distribution Decomposition of LT Code • Recall: S2:k/2 information symbols S1: k/2 information symbols Deconvolved Soliton Distribution Distributed LT Distributed LT Deconvolved Soliton Distribution N T: k information symbols LT
Decomposition of LT Code • Proposed scenario: • Each data set contains k/2 information symbols. • Node N only performs one of two operations: • Transmits the bitwise XOR of the symbols receives from S1 and S2. • Transmits just one of them. • The resulting encoded symbol received by T: • The degree of the resulting symbol has two cases: • The sum of the degrees (up to i = k). • The individual degree of oneof the received symbols.
Decomposition of LT Code • In determining p(·), we employ the “deconvolution” of the RSD μ(·). • If node NXORs the incoming symbols, the resulting degree is the sum of the in coming symbols. • If the degrees are independently chosen according to p(·), their sum will follow the distributionp * p. • ‘*’ denotes the discrete-time convolution operation:
( ) Decomposition of LT Code • However, a direct attempt at deconvolvingμ(·) does not yield satisfactory results. • μ(0) = 0, it is necessary that p(0) = 0. • We cannot permit a degree of zero. • It implies that the smallest degree in p * p is two. • However, this does not match the RSD as μ(1) > 0. • degree = 1 would have problem.
Decomposition of LT Code • Even if we neglect μ(1), and attempt to deconvolve the remaining part of μ(·) by solving for p(·) from: • owing to the fact that μ(i) has a spike at i = k/S, we obtain negative values of p(·) for some arguments. • degree = k/Swould have problem.
Prob. μ’(i) : ρ : τ : ρ : τ : ρ : τ Deg. Prob. μ’’(i) Deg = k/S Deg = 1 Deg = 1 Deg = k/S Decomposition of LT Code • An alternative approach (1/3): μ(i) Prob. Deg. Deg.
Decomposition of LT Code • An alternative approach (2/3): • Split RSD μ(·) into two distributions –μ’(·) and μ’’(·). • Deconvolving μ’(·) yields a valid probability distribution function: with the normalization factor β’ given by:
Decomposition of LT Code • An alternative approach (3/3): • Split RSD μ(·) into two distributions –μ’(·) and μ’’(·). and: with the normalization factor β’’ given by:
Decomposition of LT Code • ∵β’ + β’’ = β, the RSD can be rewritten as: Hence, the RSD μ(·) can be viewed as a mixture of the distributions μ’(·) and μ’’(·) with mixing parameter β’/β’’.
Decomposition of LT Code • Then we deconvolve μ’(·) to yield a valid probability distribution f (·). • By solving: • Using the same approach as earlier mentioned (recall), with p(·) replaced by f (·) and μ(·) by μ’(·), we obtain the following set of recursive equations:
Decomposition of LT Code • The Deconvolved Soliton Distribution (DSD) p(·) is given by: with the parameter, given by: p(·) can be viewed as the mixture of f (·) and μ’’(·) with mixing parameter λ.
tail : ρ : τ Prob. μ(i) Deg = k/S Deg. Decomposition of LT Code • Notice that: … k k/S 1 2 k/2 + 1 k/2 μ': … k/2 k k/S 1 2 f: … k/2 k/S 1 2 f * f:
Robust Soliton Distribution Decomposition of LT Code • Encoding procedure: D2:k/2 information symbols D1: k/2 information symbols S2 DSD p(·) DSD : p(·) S1 encoded symbols: X2 encoded symbols: X1 Y= X1X2 or Y = X1 or Y = X2 N DLT-2Code encoded symbols: Y Node N knows the degrees and neighbors of X1 and X2 T
Decomposition of LT Code • Node N generates a symbol Yas follows: otherwise (1/2): Generates independent random variables: U1 and U2uniformly on the interval (0, 1). Based on the values of U1 and U2, one of the following operations is performed.
Decomposition of LT Code • otherwise (2/2):
Decomposition of LT Code • The code obtained by combining the two DLT-2 Codes generated by S1 and S2 is not, strictly speaking, an LT Code.
J ≧ 2 source nodes - Simulation Results • An application of LT Code decomposition: SJ:m information symbols S1:m information symbols … … … Distributed LT Distributed LT k = Jm N T:k information symbols LT Lossy channel
Simulation Results • Two schemes (1/2): • Let every source employ an LT code for its data, and these LT codes are multiplexed in time at N and sent to T. • Works well except when source data blocks are small (500-1000 information symbols). • Overhead is fairly large (about 15-20%).
Simulation Results • Two schemes (2/2): • It would be beneficial if we could form an LT code over the entire set of k = Jminformation symbols at Nand send this to T. • J-fold deconvolution of the RSD. • Due to the constraint that N has limited processing and storage capabilities. • Code symbols from different sources are XORed together at N. • It yields symbols that obey the RSD over the range of degrees 1 through k = Jm.
Simulation Results • Consider the case J = 4 (1/2): • The DLT-2 code can be decomposed further into two more subcodes called DLT-4 codes. • By performing a deconvolution of the DSD p(·) similar to how the DSD was derived from the RSD: • Write DSD p(·) as a mixture of two distributions p’(·) and p’’(·), where p’’(·) contributes to the degrees 1 and k/S. • The distribution p’(·) is then deconvolved to get g(·) and the final degree distribution q(·) is obtained by taking the appropriate mixture of g(·) and p’’(·).
Simulation Results • Consider the case J = 4 (2/2): • By performing a deconvolution of the DSD p(·) similar to how the DSD was derived from the RSD: • The degree distribution q(·) is used by source nodes to generate encode symbols from their data, and these code symbols constitute the DLT-4 codeword. • The node N performs a selective XORof the four DLT-4 code symbols received from four sources, and forwards the resulting code symbol to T. • Node T needs to collect slightly greater than k = Jm encode symbols from N to recover all source data.
Simulation Results • Compare two schemes (1/2): • In terms of the number of code symbols that must be received by the sink T to recover all the sources’ data, for J = 4, m = 500, k = Jm = 2000: • Scheme A: • Each source generates LT code symbols from its 500-symbol data set. • The code symbols from different sources are time-multiplexed at N and transmitted to the sink T. • The sink separately decodes each LT code to recover the data. • Let NA denote the total number of code symbols that are needed by T to recover all the data.
Simulation Results • Compare two schemes (2/2): • Scheme B: • Each source generates DLT-4 codewords from its 500-symbol data set. • At every instant, the four encode symbols generated by the sources are selectively XOR-ed at N and forwarded to the sink T. • The sink thus receives a big LT code over all the sources’ data, which is then decoded to recover all the data simultaneously. • Let NB denote the total number of code symbols that are needed by T to recover all the data.
Simulation Results • The average values of NAand NBobtained via simulations: P.S. Probable Max Degree of RSD in Scheme A: up to 500 Probable Max Degree of RSD in Scheme B: up to 2000
Conclusions • Presents a novel technique that allows distributed users to encode their data by selectively XORed, and results in an efficient rateless code, similar to an LT Code, at a common destination. • Exploits the improved efficiency for large blocklengths: by forming a single codeword at the destination representing all the distributed data sets. • A reduction in overhead compared with a system in which each data set is encoded with its own LT code having a smaller blocklength.
References • M. Luby, “LT Codes,” Proc. of the 43rdAnnual IEEE Symp. on Foundationsof Comp. Sc., pp 271-280, Vancouver, Canada, November 2002. • D.J.C. MacKay, “Fountain Codes”, IEE Proceedings – Commun. Vol. 152, No 6, December 2005. • Ashish Khisti, “Tornado Codes and Luby Transform Codes,” Course Lecture of “6.454: Graduate Seminar in Area I” at MIT, Fall 2003.