• 沒有找到結果。

2.1. LT Codes

Luby transform codes (LT codes) [1] are the first realizations of fountain codes, a class of erasure correcting codes that can generate potentially unlimited encoding symbols from a given set of 𝑘 source symbols, where receivers can recover all 𝑘 source symbols by receiving arbitrarily 𝑘(1 + ε) encoding symbols with small overhead ε. Fountain codes are also known as rateless codes since they do not exhibit a fixed code rate like conventional block codes.

2.1.1. Encoding

The process of producing one encoding symbol of LT codes is described as following:

1. Randomly choose a degree 𝑑 from the degree distribution (discussed in 2.1.3).

2. Choose uniformly at random 𝑑 distinct input symbols as neighbors of the encoding symbol.

3. The value of the encoding symbol is the exclusive-or of the 𝑑 neighbors.

By repeating the process, the encoder can produce as many encoding symbols as needed.

2.1.2. Decoding

The decoding process can be described on a bipartite graph with two sets of nodes presenting source symbols and received encoding symbols [Figure 1]. Initially, one source node and one encoding node have an edge between them if and only if they are neighbors of each other. Values of all source nodes are unknown at the beginning, and values of encoding nodes are set to the corresponding encoding symbols. The decoding process is described as

3

following:

1. Find a degree-one encoding node 𝑡, i.e. an encoding symbol with only one edge.

The process stops when no more degree-one encoding node can be found.

2. Set value of 𝑠, the unique neighbor source symbol of 𝑡, equal to value o f 𝑡.

3. Propagate value of 𝑠 to all neighbors of 𝑠 by adding (exclusive-or) value of 𝑠 to all neighbors.

4. Remove all edges connected to 𝑠 5. Repeat from step 1.

Figure 1 Decoding process of LT codes

Typically, the goal of the process is to recover all the source nodes. When the process is stopped with some source node still unrecovered, the only way to resume decoding is to receive more encoding symbols to produce additional degree-one node.

4

2.1.3. Degree Distributions

Degree Distribution determines the performance of LT code. Let ωd be the probability that the degree of an encoding symbol is 𝑑, i.e. the value of the encoding symbol is exclusive-or of 𝑑 source symbols, 1 ≤ 𝑑 ≤ 𝑘 if there are 𝑘 source symbols. Notice that

kd=1ωd 1 , since it is a probability distribution.

Two analytically optimal degree distributions have been proposed in [1] by Luby when he first proposed LT codes. Ideal Soliton Distribution aims to keep expected number of degree-one encoding nodes equal to one at every step in the decoding process, which forms beautiful formulas but works poorly in practice. Robust Soliton Distribution modifies Ideal Soliton Distribution in way to keep the expected number of degree-one nodes equal to 𝑆, instead of 1, to prevent the number of degree-one nodes from reaching zero in the middle of decoding process. However, Robust Soliton Distribution would perform well only when 𝑘 is large (≥ 104).

2.1.4. LT Codes in Raptor Codes

Raptor Codes [2] was proposed as extension of LT Codes. The concept of Raptor Codes is concatenating a high-rate linear block pre-coder with LT Code. Once the fraction of unrecovered source symbols is reaching the capability of pre-coder, the precoder can take over and further decode remaining unrecovered symbols. Therefore, the goal of LT Codes in Raptor Codes is to decode most, but not necessary all, source symbols with small overhead.

2.2. Performance Formulation of LT Codes

2.2.1. Overhead

In traditional scenario of LT codes, the transmitter keeps generating and broadcasting new encoding symbols, while receiver keeps receiving until fully decoded. Since at least 𝑘

5

encoding symbols are needed to decode all 𝑘 source symbols, the ratio of number of redundant symbols to 𝑘, ε is used as expression of how many redundant symbols are needed, where 𝑘(1 + ε) is the actual number of encoding symbols.

Since LT codes are randomized codes, value of ε is changing case by case. Therefore, averaged ε is the index of performance, which makes perfect sense for scenario like asynchronous broadcasting. For the reason that the transmitter keeps broadcasting new symbols, small chance of large ε is acceptable. However, it is not the case for scenarios like live video streaming/broadcasting. Certain performance requirements for some fixed ε are preferred.

2.2.2. Failure Ratio

Another different requirement is that complete decoding of all source symbols may not be needed. The most obvious example is raptor code mentioned in 2.1.4.

Define failure ratio 𝑟 as the fraction of unrecovered source symbols, i.e. 𝑟 1 − (number of decoded source symbols)/𝑘. Again, 𝑟 is also random, even with fixed 𝜀.

Define 𝑅𝜀 as the random variable of failure ratio with fixed 𝜀. Some previously proposed optimization methods for LT codes used average of failure ratio, i.e. E[𝑅𝜀], as optimization objective, but produced impractical result, since the value of 𝑅𝜀 can be far away from its mean.

2.2.3. Failure Probability p

Raptor codes give us the hint of real definition of decoding failure. In Raptor codes, decoding is considered a failure only when the failure ratio exceeds the capacity of pre-coder.

Therefore, the failure probability 𝑝 should be the probability that 𝑅𝜀 exceeds certain threshold, i.e. 𝑝 𝑃(𝑅𝜀 > 𝑟) for some failure ratio 𝑟 and overhead 𝜀.

6

2.3. Related works

2.3.1. Finite-Length Analysis of LT Codes

Since robust soliton distributions perform poorly when the code length is short, Karp, Luby and Shokrollahi [3] has provided an efficient method for analyzing error probability of finite-length LT codes. Given degree distribution, error probability can be estimated by recursively calculating probabilities of every possible state during the decoding process of decoder of LT codes . However, the great quantity of states, roughly O(k3), makes it very difficult to find suitable degree distribution analytically.

2.3.2. Importance Sampling Approach

Hyytiä, Tirronen and Virtamo [4] have proposed an algorithm to optimize LT degree distribution by estimating local gradient empirically. By using the concept of importance sampling the other way around, they can accurately estimate local gradient of the objective function in the parameter space, and use the gradient to find better degree distributions iteratively. However, objective functions applicable to this method are limited to expected value of statistic(s) of individual LT trails. Thus, this method can only optimize "average" behavior of LT, like average number of encoding symbols needed for successful decoding, average erasure rate with certain overhead, etc..

2.3.3. Evolution Strategies Approach

Using Evolution Strategies to optimize LT degree distribution was proposed by Chih-Ming Chen, Ying-ping Chen, Tzu-Ching Shen and J.K. Zao [5]. Besides averaged overhead, averaged failure ratio at certain 𝜀 is also used as optimization objective. However, the optimized value of averaged failure ratio does not guarantee the performance, due to bimodal phenomenon of Rε.

7

相關文件