IET Communications Research Article
Improved finite-length Luby-transform codes in the binary erasure channel
ISSN 1751-8628 Received on 15th July 2014 Accepted on 14th January 2015 doi: 10.1049/iet-com.2014.0658 www.ietdl.org
Khaled F. Hayajneh 1 ✉, Shahram Yousefi 1, Mehrdad Valipour 2 1
Department of Electrical & Computer Engineering, Queen’s University, Kingston, Ontario, Canada Department of ECE, Schulich School of Engineering, University of Calgary, Calgary, Canada ✉ E-mail:
[email protected]
2
Abstract: Fountain codes were introduced to provide high reliability and scalability and low complexities for networks such as the Internet. Luby-transform (LT) codes, which are the first realisation of Fountain codes, achieve the capacity of the binary erasure channel (BEC) asymptotically and universally. Most previous work on single-layer Fountain coding targets the design via the right degree distribution. The left degree distribution of an LT code is left as a Poisson to protect the universality. For finite lengths, this is no longer an issue; thus, the author’s focus is on designing better codes for the BEC at practical lengths. Their left degree shaping provides codes outperforming LT codes and all other competing schemes in the literature. At a bit error rate of 10−7 and packet length k = 256, their scheme provides a realised rate of 0.6 which is 23.5% higher than that of Sorensen et al.’s decreasing-ripple-size scheme.
1
Introduction
Digital Fountain codes are a class of rateless codes which provide an efficient way to transfer information over erasure channels such as the Internet [1]. The concept of Fountain coding was first introduced in [2]. They are asymptotically optimal erasure correcting codes with highly efficient encoding and decoding algorithms. Rateless codes are proposed to solve several shortcomings of automatic repeat request protocol. For instance, they overcome the long acknowledgment delay when the transmitter is far from the receiver. In addition, rateless codes enhance the performance of the transmitter in broadcasting scenarios when each channel has different characteristics or when the channel itself is varying within small periods of time [3]. Luby-transform (LT) codes are the first realisation of the ‘digital Fountain paradigm’. They are universal in the sense that they achieve the capacity for any erasure channel condition [4]. On average with O(ln(k/δ)) symbol operations, LT codes can √ recover k symbols from any n = k + O( k · ln2 (k/d)) encoding symbols with a probability of (1 − δ) [4]. In LT codes, both encoding and decoding complexities are logarithmic in k. Raptor codes were later introduced as a concatenation of an LT code with a high-rate outer code such as a low-density parity-check code. Raptor codes can recover k symbols from any k(1 + ε) encoded symbols for a small real ε > 0 with high probability. The decoding complexity is further reduced to a constant per information bit [5]. The degree distribution is at the heart of the encoding process in LT codes. Luby introduced ideal Soliton distribution (ISD), which is impractical for finite k due to the fact that the decoder fails prematurely in most cases. Then, robust Soliton distribution (RSD), which is asymptotically optimal in the sense of achieving capacity over the BEC, was introduced with better performance for finite k [4]. In practice, one operates at finite lengths balancing the error performance with delay and complexity. Studies have shown that the RSD does not necessarily provide the best performance for applications with finite block lengths [6]. Improvements in terms of realised rate R = (k/n) (or overhead), complexity and error performance, that is, bit error rate (BER), are possible and reported for many cases. Recent works are based on modifying the RSD to improve the performance [5–8]. All these contributions are classified under the umbrella of ‘Soliton-like distributions’ which provide an appropriate number of degree one,
degree two and a ‘spike’ degree ds [9] for the decoding to succeed. Zhu et al. [10] find the optimal degree distribution algorithm in the sense of decreasing the overhead, but it is impractical as the algorithm’s equations tend to often be unsolvable especially for large k. Then, they further propose suboptimal degree distributions. Sorensen et al. [11] propose a new algorithm by decreasing the ripple size and show that their proposed code outperforms both RSD and the suboptimal degree distribution proposed by Zhu. All the degree distributions in the literature use the same encoding procedure as it is shown in the next section; this results in a Poisson left degree distribution (LDD) asymptotically LDD and right degree distribution (RDD) are the source and encoded symbol degree distributions, respectively [4]. To the best of our knowledge, the only previous work on the LDD was done by Hussain et al. [12] where they propose a modified encoding scheme for LT codes that provides a lower error floor over the additive white Gaussian noise (AWGN) channel. In this paper, we propose a new encoding protocol for LT codes employing a memory-based picking of the source symbols. This provides for the shaping of LDD. This paper shows that when the proposed scheme is used with RSD or other Soliton-like distributions, the best performance reported in the literature is achieved. The algorithm can be used with any RDD to improve performance measures such as the realized rate/overhead and/or the BER. We analyse the expected number of removed edges during the decoding process to demonstrate how the shaping allows for a faster recovery of the source symbols via graph pruning. The rest of this paper is organised as follows. In Section 2, the LT codes introduced by Luby are briefly reviewed. Then, the new LT code in Section 3 is proposed. Analytical expressions of the expected number of removed edges during the decoding iterations are given in details for both conventional LT code and the proposed scheme in Section 4. Simulation results are presented in Section 5. Finally, concluding remarks are given in Section 6.
2
System model and notations
This section gives a brief overview of the system model and notations required for LT codes in this paper. Further details can be found in [1, 4, 5].
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130
1122
& The Institution of Engineering and Technology 2015
2.1
Encoding LT codes
Consider the block of information with size B. The entire data is first parsed into generations each of size k packets of l symbols. For simplicity, it is common to consider k bits rather than packets. Source bit and source symbol are used interchangeably in this paper. In practice, we mostly work with source octets though. Packets are composed of hundreds of source octets. Therefore for a given generation with k bits u = (u1, u2, …, uk), the LT code generates limitless output stream c = (c1, c2, …) as follows: (1) Randomly choose a degree d by sampling a (right) degree distribution Ω(d ). (2) Choose d source symbols ‘uniformly’ at random from k available. (3) Perform bitwise XOR of the d source symbols chosen above. The resulting symbol is the output symbol ci = ui1 ⊕ ui2 ⊕ · · · ⊕ uid
(1)
By repeating the above steps, the output symbols are generated one by one. LT codes can be represented by a generator matrix such that the output symbols are expressed as c=u·G
(2)
G is a k × n generator matrix in the usual coding sense. The number of columns is obviously dynamic providing the rateless property of the code. This clearly shows that LT codes are simply a subset of the low-density generator matrix codes. The encoding and decoding processes of LT codes can be best shown using Tanner/factor graphs (TG). Fig. 1 shows an example of LT code TG for a source of size k = 4. 2.2
Decoding LT codes
Once the decoder has received an appropriate number of encoded symbols say n, [Note that in an erasure channel this is not necessarily the same as the number on the transmitter side.], it attempts to decode. The decoder needs to know the degree and the set of neighbours of each output symbol. This information can be carried in the header of each packet for instance [4]. There are also a number of other ways to share this information between transmitter and receiver. We assume that the decoder is able to construct a decoding TG similar to that of Fig. 1. The decoder is presented with a linear system of n equations with k unknowns. There are a number of high-complexity optimal maximum-likelihood decoders available to implement the decoding task with. Gaussian elimination is one such decoder with a cubic complexity in k in general. Given that the decoding graph is sparse, decoders whose complexity scales with the edge
multiplicity of the TG are a prudent choice. The decoding process, known as the belief propagation (BP) decoding, is one such algorithm. It is done iteratively by using the information on source symbols contained in the output symbols [13]. The BP decoding process for the erasure channels is described as follows: (1) Find output symbol ci with degree one (connected to only one source symbol). If this encoded symbol does not exist, the decoding process halts and a decoding failure is reported. (2) The neighbour (uj) of the selected output symbol is recovered immediately since it is a copy of the output symbol, that is, uj = ci. Then, the connecting edge of the degree-one output symbol is removed. (3) XOR the value of each neighbour of the recovered symbol with the recovered value and remove the edges of the recovered input symbol uj from each of these neighbours. The degree of these output (neighbour) symbols is decreased by one. (4) Repeat from step (1) until the decoding process stops; if all the source symbols are recovered, the decoding process is successful. Otherwise, announce a total failure or proceed to the next decoding attempt. As can be seen from the decoding steps, the number of degree-one encoded symbols during the decoding process is important to kick-start the decoding process at the onset. The set of encoded symbols reduced to degree one during the decoding process is defined as the ripple [There is no unique definition for the ripple. This definition is used in our paper.].
3
Proposed Fountain codes
Designing good RDDs must consider two issues: † Some output symbols must have a high degree to ensure good graph connectivity and protection. † Some output symbols must have a low degree in order to keep encoding and decoding complexities low and kick-start the decoding process as well as sustaining it towards success. From a different perspective, the design technique must take the ripple into account. If the ripple vanishes before the decoder has recovered all the source bits, there is room for improving the design. Simultaneously, large ripple size potentially introduces redundancy by recovering symbols which were already in the ripple. This implies more overhead and complexity for recovering the source symbols. Optimal ripple size is one, but in this case any small variation in the ripple size causes a failure [4, 14]. Many previous works have been trying to find good degree distribution. Luby introduced ISD [4] as follows ⎧ 1 ⎪ ⎪ ⎨ , r(d) = k 1 ⎪ ⎪ , ⎩ d(d − 1)
for d = 1 for d = 2, 3, . . . , k
(3)
ISD is the first optimal degree distribution for LT codes. The asymptotical optimality is in the capacity sense. The expected left symbol degree in ISD is O(ln k) and the ripple size is one (constant). Any small variation nulls the ripple and the decoder fails. To make ISD practical, Luby introduced RSD by adding two parameters c and δ to ISD to better control the expected number of degree-one output symbols. A non-negative function is defined as ⎧ S1 ⎪ ⎪ ⎪k d, ⎨ t(d) = S log (S/d), ⎪ ⎪ ⎪k ⎩ 0, Fig. 1 Example of a TG of an LT code with k = 4
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130 & The Institution of Engineering and Technology 2015
where S = c · ln (k/d) ·
for d = 1, 2, . . . , (k/S) − 1 for d = k/S
(4)
for d . k/S
√ k . Then, the ISD in (3) is added into (4)
1123
and normalised to obtain the RSD, Ω(d) V(d) =
r(d) + t(d) b
(5)
where b = d r(d) + t(d). With the maximal probability of error δ, n = (1 + ε)k encoded symbols are required at the receiver to recover all k source symbols. Sorensen et al. [11] show that the optimal robust degree distribution for LT codes should not have a constant ripple as in ISD and RSD. It is reasonable to expect a degree distribution whose ripple size decreases during the decoding iterations. They propose a new LT code with the decreasing ripple size distribution (DRSD) [11]. In our scheme, the cardinality of the ripple is further reduced during the decoding steps. This is accomplished via shaping the LDD. We utilise a memory-based picking of the source symbols while ensuring that the ripple maintains a safe size to lead to decoding success. In most previous work, researchers have used the same procedure to choose the source symbols from the left (i.e. the source symbols are picked uniformly at random). As a result, the LDD is simply a Poisson. The Poisson distribution is asymptotically optimal. In the finite-length regime, this is no longer the case and deviation from Poisson is possible. We are further motivated by the older developments in the design of parity-check-based graph codes to approach the Shannon limit since the invention of Turbo codes in 1993. For instance, some of the best low-density parity-check codes are random non-uniform classes designed via both the LDD and RDDs [15]. We ask the following: could we benefit from non-uniform picking of source symbols? How useful is shaping the LDD? Extensive simulation results show that improvements in terms of ripple size, rate/overhead and BER can be achieved by non-uniform selections. There are a large number of possibilities and frameworks to introduce shaping for the left distribution. The intention is to find low-complexity protocols for the selection of information symbols to improve upon the system properties such as error and rate while keeping the offline ‘design’ and ‘analysis’ complexity manageable. In what follows, we propose one such protocol framework. 3.1
Memory-based robust Soliton distribution coding
We assume the RDD is the well-known RSD. Although, our approach is applicable to any RDD founded suitable for any channel. To introduce memory in the selection and encoding of the information bits, we further assume that the ‘instantaneous degrees’ [Instantaneous degrees are the aggregate degrees of the information bits at the current encoding instance.] of all the k left bits are known and available to the coder at each of the n encoding instances (right bits). This is a practical and reasonable assumption fulfilled with the aid of simple counters. In such a case, we propose to sample the right distribution, for example, Ω(d), to obtain the degree do, where clearly 1 ≤ do ≤ k. One low-complexity method to introduce memory is to pick do symbols from the left (information) symbols among those with the lowest or highest instantaneous degree. Our extensive simulation results over BEC channel show that the best scenario is to pick do symbols from the left symbols with highest instantaneous degrees. The probability of erasure for bits, Pb(E), is
used as our cost function to minimise. Equivalently, one can use the realised rate to maximise. The numerical optimisation for each of the k degrees proves cumbersome. This is compounded by the fact that in the absence of universality, the solution is dependent on the erasure rate as well as k. To find the optimal method to introduce memory, one needs to consider all the k degrees: a prohibitively sophisticated problem. To reduce the complexity, we limit our search space from k dimensions to a single dimension: we only treat a single right degree do differently to introduce memory. All the other (k − 1) degrees continue to be selected uniformly and in a memoryless fashion. Towards this goal, we optimise do in the sense of Pb(E) such that for encoded nodes of degree do, one should pick nodes from the highest – or lowest – degree source nodes. Extensive numerical optimisation for various values of k and channel erasure rates with the RSD provided the following best ‘single-degree-memory’ protocol: For degree do = 1, pick a source symbol with the highest instantaneous degree. The proposed algorithm to shape the LDD with RSD is referred to as memory based-RSD (MBRSD). MBRSD is described in Algorithm 1 (see Fig. 2). This result is not surprising since degree-one symbols are important to kick-start the BP decoding process and to sustain the ripple: they have a significant impact on the ripple size throughout the decoding process from kick-off to decoding success/termination. Our previous work as well as those of others, such as [11, 14] testify to the same effect. In our proposed scheme, the degree-one output symbols are connected to the source symbols with maximum instantaneous degrees: this further improves the graph connectivity. Although the original works on erasure rateless codes target a constant ripple cardinality, recent results have proven system improvements when the ripple size is augmented at the start of the BP decoding and then discounted at the later decoding steps towards decoding termination. This is indeed the main reason behind the improvements reported by Sorensen et al. [11] for the state-of-the-art DRSD protocol. The intuition behind the new scheme here is as follows: the connectivity of the degree-one symbols to the highest degrees on the left means that at the onset of BP decoding, these high-degree information symbols are recovered first and as such release a larger number of encoded symbols in the second round of the BP iteration [Each BP iteration involves a first right-to-left phase, that is, encoded-symbol-to-information-symbol, followed by a second left-to-right phase.]. In a previous work, parallel effects are obtained in the context of AWGN channel [16]. It is worth mentioning at this point that ideally the best protocols should be designed via a joint optimisation framework for the RDD and LDD. This process is not only prohibitively complex in a general setting, but also might be rather in vain because of the sensitivity of the optimal solutions to the channel type, channel parameters, information block length and the BP decoding schedule. Our protocol is a prudent stepping stone in that direction, yet, it provides efficient coding schemes with universal-like [Although we do not make any universality claims, our algorithm is invariant to changes in k and erasure rate for all cases tested.] properties outperforming the state-of-the-art schemes.
Fig. 2 MBRSD algorithm
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130
1124
& The Institution of Engineering and Technology 2015
4
Analysis of the proposed scheme
As we design codes in the finite-length regime, the best analytical parameter to use for comparison is the average probability of erasure. This is a well-known complex task in the area of rateless codes. Previous researchers have used a variety of other intermediate variables related to the overall erasure or the realised rate. Ripple analysis has been used in a number of previous works, particularly in the asymptotic regime. Given the observations at the end of the previous section, we employ a novel performance variable highly correlated with the decoding convergence speed and the overall system performance. Consider the decoding bipartite graph of the code, G(U , V , E), where U is the set of the left information symbols (u’s), V is the set of the right coded symbols (c’s) and E is the set of edges. The erasure BP decoding is a process of pruning: the information symbols are recovered as the encoded symbols and edges are released and removed. Assuming a parallel BP decoder that propagates messages on all the edges of the ripple simultaneously, the cardinality of the set of removed edges is used at the jth decoding step as our figure of merit. This set is denoted by Ej. The cardinality of Ej, that is, |Ej| is analysed in what follows. This intermediate parameter is clearly a good indication of how fast the decoding is converging to the maximum information bit recovery before moving to a next decoding attempt if needed. In the following, the average |Ej| for the proposed MBRSD scheme as well as the uniform i.i.d. RSD (referred to as regular LT) are analysed and compared. 4.1
Regular LT analysis
In this section, we derive the expected cardinality of Ej for the regular LT coding. Lemma 1: The probability of a degree-l LT input symbol (RSD) is given by a binomial distribution Ll =
l dr dr n−l n 1− l k k
l
where Lal = e−(dr /R)
□
When k approaches infinity, the binomial distribution approaches a Poisson distribution with a mean of n(dρ/k) = (dρ/R) where R = (k/n)
(dr /R)l (l)!
In the considered BP decoder, it is assumed that all degree-one symbols in the graph are processed together. In the iterative decoding, the odd steps constitute message-passing from encoded symbols towards information symbols in which the degree-one encoded symbols in the graph are released. The even steps, on the other hand, involve sending beliefs from information symbols towards encoded symbols. In other words, in even steps, the edges connected to the recovered information symbols are released. The expected number of removed edges at the jth step is denoted by j( j). j( j) can be best understood and computed via Algorithm 2 (see Fig. 3). The different cases for j = 1, 2, 3 and more are considered. In the presented development n
k i=1
iVi
k in line 5 is the average degree of the information symbols. We have clearly assumed that one of the edges has already been removed in the first step. In line 7 ⌈V1 n⌉ k − ⌈V1 n⌉ j−1 1 k j is the probability that a degree-j symbol is converted into a degree-one encoded symbol in the previous step. In line 11, μ( j) − 1 is the average number of edges to the information symbols at step j, where
(6)
where dρ, k and n are the average degree of encoding symbols, the number of input symbols and the number of encoded symbols, respectively. Proof: The proof is provided in Appendix 1.
is the coding rate. Therefore the asymptotic LDD Λa(x) is obtained as
a l La (x) = Ll x (7)
m(j) =
n
k i=1
iVi − k
j−1 s=1
w(j)
(8)
In line 13, γ( j) is the number of recovered information symbols up to step j j−1
g(j) = w(s) (9) s=1,s odd
Fig. 3 Expected number of removed edges: LT
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130 & The Institution of Engineering and Technology 2015
1125
4.2
MBRSD analysis
degree l
In this section, we develop the LDD and the expected number of removed edges in the BP algorithm for the MBRSD scheme. Once again, we consider that the BP decoder processes all the degree-one encoded symbols simultaneously. In addition, to make the analysis tractable, we further assume that for our k × n graph, the degree-one encoded symbols are connected to information symbols with the highest degrees. In other words, the degree-one encoded symbols are generated at the end of the encoding process. This optimistic assumption will result in an upper bound for the expected number of removed edges; this upper bound is denoted by f( j) below. To obtain f( j), we partition the decoding graph into two subgraphs. The first subgraph G1 contains the encoded symbols with all degrees except degree one. The second subgraph G2 contains only degree-one encoded symbols. Lemma 2: The probability of a degree-l input symbol in G1 is equal to D′l =
′ l (n−⌈V1 n⌉)−l dr dr′ n − ⌈V1 n⌉ 1− l k k
⎧ ′ Dl , ⎪ ⎪ ⎪ ⎪ ⎨ D′l − b, Dl = b, ⎪ ⎪ D′ , ⎪ ⎪ ⎩ l−1 0,
l , lo l = lo l = lo + 1 lo + 2 ≤ l ≤ n − V1 n + 1 l . n − V1 n + 1
if if if if if
(14)
where
b=
n
V1 n − D′m k m=l +1
(15)
o
The upper bound f( j) can hence be computed as summarised in Algorithm 3 (see Fig. 4). Note that β(2) in line 5 is the average degree of information symbols connected to the degree-one encoded symbols n
m=lo +1
b(2) = n
mDm
m=lo +1
(10)
(16)
Dm
In line 9, Γ( j) is the number of recovered information symbols up to step j
where dr′ =
dr − V1 1 − V1
(11)
j−1
G(j) =
f(s)
(17)
s=1,s odd
Proof: The proof is provided in Appendix 2.
□
In line 11, β( j) − 1 is the average number of edges of information symbols in the ‘pruned graph’ at step j. That is
The information degree distribution (LDD) is denoted by ′
D (x) =
D′l xl
b(j) =
(12)
n
k i=1
iVi − k
j−1 s=1
f(j)
(18)
l
lo is the minimum degree of an information symbol connected to a degree-one encoded symbol satisfying the constraints ⎧ V1 n ′ 1 ⎪ ⎨ n−nV j=lo +1 Dj ≤ k ⎪ ⎩ n−nV1 D′ . V1 n j j=lo k
(13)
Combining the two graphs (or distributions) by adding one edge to the nΩ1 information symbols with the highest degrees in G1 , results in the following probability of an information symbol with
5
Simulation results
The proposed algorithm has been extensively tested via numerical simulations and the analysis in Section 4. The results of BER are obtained employing Monte Carlo method by averaging over the results of 100 000 transmissions. In this section, comparisons between the proposed scheme and the regular LT as well as the state-of-the-art scheme of Sorensen et al. [11] are drawn. The RSD with parameters c = 0.02 and δ = 0.1 is exploited. Also, the number of encoded symbols added to each consecutive BP decoding attempt is (k/10). In addition, the coding rate is the transmitted coding rate, that is, erasure symbols are considered in this rate.
Fig. 4 Expected number of removed edges: MBRSD
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130
1126
& The Institution of Engineering and Technology 2015
Fig. 5 Normalised expected number of removed edges against the decoding step
Fig. 5 demonstrates the expected number of removed edges for both the simulation and analysis in Section 4. Normalised expected number of removed edges is plotted in terms of the decoding step. Each decoding step is defined as one forward and one backward BP message-passing, that is, the expected number of removed edges in a step is the summation of one odd and one even steps as outlined in Section 4. k and R are set to 200 and 0.5, respectively. Fig. 6 presents the BER performance at fixed code rates, whereas Fig. 7 demonstrates the achieved code rate at zero BER (rateless setting). Curves in Fig. 6 are obtained for k = 256 and 1024. BERs of both regular LT code and MBRSD are plotted. The results indicate that the MBRSD outperforms the LT code.
In order to show the versatility of our proposed method, the coding protocol is applied to the state-of-the-art DRSD proposed by Sorensen et al. [11]. The resulting scheme is accordingly referred to as the memory-based-DRSD (MBDRSD). Fig. 8 shows the average ripple size against decoding step at k = 256. The decoder receives n = 2k output symbols, that is, the rate is 0.5. Also, recall that all output symbols in the ripple are simultaneously processed. In comparison with the regular LT code, Fig. 8 demonstrates that MBRSD requires a smaller number of decoding steps to recover all the information symbols. This improvement is at the cost of decoder complexity because of the parallel processing of all the output symbols in the ripple. Also,
Fig. 6 BER against inverse coding rate for different schemes at k = 256 and 1024 over BEC with an erasure probability of α = 0.02 (simulation)
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130 & The Institution of Engineering and Technology 2015
1127
Fig. 7 Inverse coding rate (R−1) against erasure probability α at k = 100 (simulation)
Fig. 8 Average ripple size for different degree distributions at k = 256 and R = 1/2, where DRSD is from [11] (simulation). All the degree-ones encoded symbols are processed in each step
Fig. 9 Average ripple size against iteration at k = 256 and R = 1/2, where DRSR is from [11] (simulation). Only one degree-one encoded symbol is processed in each iteration
applying our proposed scheme to the DRSD to get MBDRSD, provides a better performance again. These improvements are achieved by ‘shaping’ the ripple distribution in terms of the decoding steps. The ripple is expanded at the beginning of the decoding while it is degraded towards the end (Fig. 8). Fig. 9 shows the ripple size against a number of iterations at k = 256 and coding rate R = 0.5. In comparison to Fig. 8, we assume that the decoder recovers only one information symbol at each iteration. The degree distribution design methods typically try to reduce the ripple size as much as possible while still ensuring that the BP decoding does not fail due to a null ripple set. Fig. 9 shows the improvement of the proposed scheme in the sense of a reduction in the ripple size in comparison with regular LT codes and DRSD. It is worthwhile mentioning that in Figs. 8 and 9, we assume the same number of output symbols (2k) in all cases. In practice and as shown in Figs. 6 and 7, the proposed scheme requires a smaller overhead. This translates to further reductions in the ripple size and the decoding steps required. Figs. 10 and 11 display BER against inverse coding rate at erasure probabilities of α = 0 and α = 0.02, respectively. These curves show
Fig. 10 BER against inverse coding rate for different schemes at k = 256 over BEC with α = 0, where DRSD is from [11] (simulation)
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130
1128
& The Institution of Engineering and Technology 2015
Fig. 11 BER against inverse coding rate for different schemes at k = 256 over BEC with α = 0.02, where DRSD is from [11] (simulation)
measures by shaping the LDD or equivalently the ripple profile. We show via both analytical tools and Monte Carlo simulations that the proposed Fountain code outperforms the regular LT coding. The proposed scheme is equally applicable to any RDD in the literature with a negligible complexity overhead. The application to the state-of-the-art scheme of Sorensen et al. is a further testament to the suitability of the encoding protocol for a wide range of rateless systems. The proposed scheme can be similarly applied to other rateless schemes, such as Raptor codes [5], lengthened LT codes [17] and the schemes for unequal error protection [18, 19].
7
Fig. 12 BER against inverse coding rate for different schemes at k = 1024 over BEC with α = 0, where DRSD is from [11] (simulation)
the MBRSD improves upon the regular LT code by shaping the LDD. Also, MBDRSD outperforms the DRSD. In addition, in comparison to DRSD, the MBDRSD does not suffer from the error floor until a BER of 10−7: an important achievement towards high-performance telecommunication systems. This further signifies the applicability of the proposed scheme to any RDD in the literature. Finally, Fig. 12 shows the same schemes used in Fig. 10 but for longer packets with k = 1024. The same effect can be observed as in Fig. 10: the proposed scheme outperforms the regular LT code and DRSD. Another difference in this figure is that the number of encoded symbols added at each iteration is 5% of k (finer resolution compared to the previous value of 10%). For larger k, a smaller overhead is expected.
6
Conclusion
In this work, we present a new LT code scheme for the BEC channel. The so-called MBRSD scheme improves all system performance
Acknowledgments
The authors thank Hossein Khonsari for many constructive discussions that improved the quality of this paper. This work was supported by the NSERC DG program and a DAS award in addition to a scholarship from Yarmouk University, Jordan. It was presented in part at the Queen’s Biennial Symposium on Communications, QBSC 2014, Kingston, Canada.
8
References
1 MacKay, D.J.C.: ‘Fountain codes’, IET Proc. Commun., December 2005, 152, (6), pp. 1062–1068 2 Byers, J.W., Luby, M., Mitzenmacher, M., Rege, A.: ‘A digital fountain approach to reliable distribution of bulk data’. Proc. ACM SIGCOMM, Vancouver, BC, Canada, August 1998, pp. 56–67 3 Shokrollahi, A., Luby, M.: ‘Raptor codes’, Found. Trends Commun. Inf. Theory, 2011, 6, (3–4), pp. 213–322 4 Luby, M.: ‘LT codes’. Proc. 43rd Ann. IEEE Symp. on Found. of Computer Science, 2002, pp. 271–280 5 Shokrollahi, A.: ‘Raptor codes’, IEEE Trans. Inf. Theory, 2006, 52, (6), pp. 2551–2567 6 Hyytiä, E., Tirronen, T., Virtamo, J.: ‘Optimizing the degree distribution of LT codes with an importance sampling approach’. Proc. Sixth Int. Workshop on Rare Event Sim. RESIM 2006, Bamberg, Germany, October 2006 7 Puducheri, S., Kliewer, J., Fuja, T.: ‘The design and performance of distributed LT codes’, IEEE Trans. Inf. Theory, 2007, 53, (10), pp. 3740–3754 8 Etesami, O., Shokrollahi, A.: ‘Raptor codes on binary memoryless symmetric channels’, IEEE Trans. Inf. Theory, 2006, 52, (5), pp. 2033–2051 9 Liau, A., Yousefi, S., Kim, I.-M.: ‘Binary soliton-like rateless coding for the Y-network’, IEEE Trans. Commun., 2011, 59, (12), pp. 3217–3222
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130
& The Institution of Engineering and Technology 2015
1129
10
11 12
13 14 15
16
17
18
19
Zhu, H., Zhang, G., Li, G.: ‘A novel degree distribution algorithm of LT codes’. Proc. IEEE Int. Conf. Communication Technology, June 2008, pp. 221–224 Sorensen, J.H., Popovski, P., Ostergaard, J.: ‘Design and analysis of LT codes with decreasing ripple size’, IEEE Trans. Commun., 2012, 60, (11), pp. 3191–3197 Hussain, I., Ming, X., Rasmussen, L.K.: ‘Error floor analysis of LT codes over the additive white Gaussian noise channel’. Proc. Global Telecommunication Conf. (GLOBECOM 2011), December 2011, pp. 5–9 Luby, M., Mitzenmacher, M., Shokrollahi, A., Spielman, D.: ‘Efficient erasure correcting codes’, IEEE Trans. Inf. Theory, 2001, 47, (2), pp. 569–584 Maatouk, G., Shokrollahi, A.: ‘Analysis of the second moment of the LT decoder’, IEEE Trans. Inf. Theory, 2012, 58, (5), pp. 2558–2569 Richardson, T.J., Shokrollahi, M.A., Urbanke, R.L.: ‘Design of capacity-approaching irregular low-density parity-check codes’, IEEE Trans. Inf. Theory, 2001, 47, (2), pp. 619–637 Hayajneh, K.F., Yousefi, S.: ‘Improved systematic fountain codes in AWGN channel’. Proc. 13th Canadian Workshop on Information Theory (CWIT 2013), June 2013, pp. 148–152 Finamore, W.A., Ramos, M.C.: ‘Improving the performance of LT codes’. Proc. Seventh Int. Symp. on Wireless Communication Systems (ISWCS), September 2010, pp. 566–570 Rahnavard, N., Fekri, F.: ‘Finite-length unequal error protection rateless codes: design and analysis’. Proc. IEEE Global Telecommunication Conf. (GLOBECOM 2005), 2005, pp. 1–5 Rahnavard, N., Vellambi, B.N., Fekri, F.: ‘Rateless codes with unequal error protection property’, IEEE Trans. Inf. Theory, 2007, 53, (4), pp. 1521–1532
symbol of degree d is (d/k). Therefore the probability that an information symbol is chosen by an encoding symbol equals
d
9.1
Appendix Appendix 1: Proof of Lemma 1
d dr = k k
where dρ is the average degree of encoding symbols. Thus, the probability that an information symbol has degree l when n encoded symbols are drawn, Λl, is equal to Ll =
9.2
l dr dr n−l n 1− l k k
(19)
Appendix 2: Proof of Lemma 2
In the first graph which has n − Ω1n encoded symbols and k information symbols, the average degree of encoding symbols is dr′ =
mV′m =
m.1
9
Vd
d − V1 mV m = r 1 − V1 m.1 Vm m.1
(20)
in which Ω′m is the RDD of the first graph. Then, Δ′l is computed similar to Λl in Lemma 1 with average degree of d′ρ instead of dρ and n − Ω1n instead of n, that is
′ l (n−⌈V1 n⌉)−l dr dr′ 1− k k
Define Ωd as the probability that an encoding symbol has degree d. The probability that an information symbol is chosen by an encoding
D′l =
1130
& The Institution of Engineering and Technology 2015
n − ⌈V1 n⌉ l
(21)
IET Commun., 2015, Vol. 9, Iss. 8, pp. 1122–1130