 Research
 Open Access
 Published:
An ECSObased approach for optimizing degree distribution of shortlength LT codes
EURASIP Journal on Wireless Communications and Networking volume 2019, Article number: 76 (2019)
Abstract
Degree distribution plays a great role in the performance of Luby transform codes. Typical degree distributions such as ideal soliton distribution and robust soliton distribution are easy to implement and widely used. Nevertheless, their adaptabilities are not always outstanding in various code lengths, especially in the case of short length. In this paper, our work is to optimize degree distributions for the shortlength LT codes by using swarm intelligence algorithm, considering its conceptual simplicity, high efficiency, flexibility, and robustness. An optimization problem model based on sparse degree distributions is proposed in the first place. Then, a solution on the basis of an enhanced chicken swarm optimization algorithm, termed as ECSO, is designed for the problem. In ECSO, substitution of bottom individuals, revision of chicks’ update equation, and introduction of differential evolution are designed to enhance the ability of optimization. Simulation comparisons show that the proposed solution achieves much better performance than two other swarm intelligencebased solutions.
Introduction
Power line communication (PLC) is regarded as a serious candidate for the realization of smart grid networks due to its high data rate, easy connection between devices, broad coverage, and lowcost deployment. For PLC, data transmission over long distances and at high frequencies is a challenging issue, and some schemes have been proposed on the basis of cooperative approaches. Among them, the cooperative communication schemes leveraging digital fountain code (DFC) attract considerable attention from researchers because of their lower redundancy and higher reliability [1, 2].
Developed by Byers et al. in 1998, DFC is a popular probabilistic forward error correction scheme [3]. One of the most distinctive properties of DFC is rateless. Encoded packets are continuously delivered like a fountain, and any receiver can reconstruct the source data once a sufficient number of packets are received [4]. Examples of fountain codes include LT codes [5], raptor codes [6], and online codes [7]. Compared with the two others, LT codes have simpler encoding procedure and are more representative, leading a wider scope of application, including deep space communication [8], data distribution [9], wireless sensor networks [10], and cloud storage [11].
A good degree distribution is necessary for the abovementioned DFCbased cooperative communication schemes, since degree distribution plays a crucial role in the performance of encoding and decoding of LT codes. The encoder generates an encoded symbol on the basis of a particular probability distribution, the socalled degree distribution, and the decoder utilizes the same degree distribution to recover the original input symbol. There are five suggested degree distributions: (1) allatonce distribution; (2) binomial distribution (BD); (3) binomial exponential distribution (BED); (4) ideal soliton distribution (ISD); and (5) robust soliton distribution (RSD). Although the distributions mentioned above are easy to be implemented, their performance varies in distinct occasions. Correspondingly, a large amount of attention has been paid to improve the performance of LT codes by optimizing the degree distribution, some achievements have been made also.
According to the length of the LT codes, existing methods for optimizing degree distribution can be divided into two categories: the methods for long length (MLL) [12,13,14,15] and the methods for short length (MSL) [16,17,18,19]. In this paper, our work is seeking a simple MSL; hence, a review of MLL is briefed. Among MSL, in [16], the decoding process was studied as a Markov chain and an analytical combinatorial approach is presented. In [17], the effect of the RSD on decoding delay as well as percentage overhead for LT codes with small message size was investigated. Results showed that the decoding latency can be decreased by optimizing the RSD’s parameters. In [18], Esa Hyytiä et al. proposed an iterative optimization algorithm, whose idea was borrowed from importance sampling theory. In [19], the degree optimization problem was reformulated in form of standard semidefinite programming (SDP) on AND–OR tree analysis of BP algorithm. Considering a large number of optimization variables in the obtained SDP, the authors proposed an alternative linear program that can be solved numerically for a reasonable number of source packets. It is noteworthy that the attempts above were met with limited success. For example, the approach in [16] is effective only when the message length is less than 30. For the approach in [17], it relies heavily on heuristic knowledge from simulation test and it lack of targeted strategy. Importance sampling theory utilized in [18] still needs further exploration for better performance. Accordingly, investigating MSL remains an open problem.
During the past few decades, naturedinspired computation algorithms have attracted significant attention from scholars as an attractive issue. Among them, the most successful are evolutionary computation (EC) and swarm intelligence (SI). EC algorithms are search methods that take their inspiration from natural selection and survival of the fittest in the biological world. SI algorithms are inspired by the collective behavior of social systems (such as fish schools, bird flocks, and ant colonies) and have become an innovative computational way to solving hard optimization problems. Due to the simplicity and flexibility of EC and SI, some schemes have been developed for the degree distribution optimization of shortlength LT codes [20,21,22]. Among them, the solution in [22] is a typical SIbased instance, in which Deng et al. utilized a particle swarm optimization (PSO) algorithm with a gradient to design the degree distribution for reducing the decoding overhead. The evaluation upon sparse degree distributions has approved the effectiveness to some extent. However, this SIbased optimization can easily to fall into the local solution because of the inherent characteristics of the PSO.
Recently, chicken swarm optimization (CSO), a novel SI algorithm mimicking hierarchal order and behaviors of the chicken swarm, has been proposed in [23]. In CSO, the individuals follow diverse approaches of evolutionary according to their fitness values, which is lacking in most of typical EC and SI algorithms such as genetic algorithms (GA), differential evolution (DE), and PSO. Statistical comparisons on 12 benchmark problems illustrate its superiority in the terms of accuracy, efficiency, and robustness. Many endeavors have also been made to further improve the performance of CSO [24,25,26]. In [24], for optimally selecting the sensor nodes to form a virtual node antenna array, a novel swarm intelligence optimization algorithm called cuckoo search chicken swarm optimization (CSCSO) is proposed, in which chaos theory, inertia weight Lévy flight, and grade mechanism are leveraged to improve the performance. For the problem that the typical chicken swarm optimization can easily fall into a local optimum in solving highdimensional problems, an improved chicken swarm optimization is proposed in [25]. The relevant parameter analysis and the verification of the optimization capability by test functions in highdimensional case were made. In [26], MPCSO, an enhanced version incorporated with monomers turbulence in rooster (MTR) strategy and particle renovation in hen (PRH) strategy, is proposed for solving LRNP problem. Simulation results prove the effectiveness of these improved algorithms. Specifically, it is recognized that CSO offers an effective approach to the optimization of complex problems.
Motivated by the above facts, our work in this paper is to optimize the degree distribution for shortlength LT codes by leveraging CSO. Firstly, we provide a framework for the optimization problem, where the form with sparse degree distributions is considered. The optimization objective is to minimize decoding overhead with recovering the entire original data. Secondly, a solution based on an enhanced CSO algorithm is put forward for achieving optimal degree distributions. Substitution of bottom individuals is drawn to enhance the efficiency of roosters’ cruising. The update equation of chicks is also revised. Besides, DE strategy is introduced to refine the information interaction among the individuals. Finally, we design and carry out simulation experiments. Simulation results show that the addressed approach is capable of achieving much better performance than other algorithms. To the best of our knowledge, this is the first work that optimizes the degree distributions of LT codes by utilizing CSObased algorithm.
The remainder of this paper is organized as follows. Section 2 introduces the preliminary of LT codes. Section 3 formulates the optimization problem. In Section 4, the basic CSO algorithm is briefed and the ECSObased solution is presented in detail. Simulation results are shown in Section 5. The conclusion of this paper is given in Section 6.
LT coding method
Encoding and decoding of LT codes
Three procedures consist the encoding process of LT codes. Firstly, the source data is partitioned into k input symbols. Secondly, a degree d is chosen randomly according to an adopted degree distribution ρ(d) to generate an encoded symbol, with 1 ≤ d ≤ d_{max}, d_{max} is the maximal degree value, \( {\sum}_{d=1}^{d_{\mathrm{max}}}\rho (d)=1 \). The degree d decides the number of input symbols combined into an encoded symbol. Thirdly, d input symbols, also named neighbors, are chosen randomly and accumulated via XOR operation to produce an encoded symbol at the LT encoder. The last two procedures work periodically to generate a number of encoded symbols.
At the LT decoder, beliefpropagation (BP) algorithm is utilized in common to reconstruct source data from the n encoded symbols. Usually, n is slightly bigger than k. Firstly, the decoder searches the encoded symbols with only one (degree1) neighbor to decode directly. Secondly, the recovered input symbols are exclusiveXORed with their neighbors to update the encoded symbols. Meanwhile, the edge between each encoded symbol and its neighbor is removed. These two procedures will be iterated until no encoded symbol with degree1 is available.
Degree distribution
The behavior of LT code is mainly determined by the degree distribution and the number of encoded symbols received by the LT decoder. The overhead ε = n/k indicates the performance of LT code and depends on a given degree distribution. In [5], Luby designed an ISD based on an analogy of throwing an infinite number of balls randomly into k number of bins:
In the ideal case, the overhead equals to 1, indicating the best performance. However, ISD works poorly in practice, since the decoding behavior of finite length LT codes may fluctuate among randomly encoded symbol. Hence, in the same paper, Luby addressed another degree distribution, known as RSD μ(d). By adding an adjustment term τ(d) to ρ(d), μ(d) can be expressed as
with
where \( R=c\ln \left(k/\delta \right)\sqrt{k} \), c is a positive constant, and δ is the probability of decoding failure. Further discussion and reasoning for this distribution can be found in the references [6].
Compared with ISD, RSD is more viable and practical. The performance analysis of RSD is derived based on the assumption that k is infinite. However, source data in practice is usually divided into finite pieces, and as a result, the feature of LT code under RSD will not exactly match the mathematical analysis, especially in the case of small k. RSD provides an easy way to construct a distribution that works well but not optimally. In this paper, we will propose a more universal and effective approach for optimizing degree distribution of LT codes with short length, by leveraging an emerging SI algorithm.
Optimization problem
Variables design based on sparse degree distribution
For the SIbased optimization, the challenge of huge searching space is a pivotal issue. When the degrees ranging from 1 to k are planned to be optimized, the dimension of searching space equals to the source data length k. In this situation, due to the complexity of encoding and decoding of LT codes, it is not easy for the SIbased algorithm to achieve a desirable solution within an acceptable time, especially in the case of data length reaching hundreds, thousands, or more.
To reduce the search space dimension, sparse degree distribution (SDD) is chosen in our work for designing the variables that can properly stand for the probability mass function ρ(d). In SDD, partial degrees are considered to have zero probabilities, which simplify the design of the degree. Adopting a SDD has been an alternative scheme used in LT codes optimization [2, 18, 20,21,22]. In particular, we consider distribution where positive probabilities are assigned to optimization components whose indices are powers of two and less than k, i.e., for d_{j} = 2^{j} and j = 1, 2, … , D. d_{max} = 2^{D} is the highest indice with d_{max} < k. On the other hand, all the other degrees are assumed to have zero probabilities. Accordingly, the variables to be designed can be expressed as vectors Ω = {ρ(d_{1}), ρ(d_{2}), …, ρ(d_{D})}.Obviously, the dimension of search space is D and much less than the typical value k.
Objective formulation
Efficiency and complexity are the two main factors considered when designing a degree distribution. Usually, efficiency is indicated by the decoding overhead, related to the average number of encoded symbols required for successfully recovering all original data. A smaller average decoding overhead signifies a higher efficiency. On the other hand, complexity is generally evaluated by the average degree of encoded symbols required for successfully recovering all original data. It is also hoped that the average degree is as small as possible.
In this paper, we choose efficiency to formulate the objective function. Suppose the encoded symbols transmit in an ideal channel and T denotes the number of encoded symbols required for decoding an input symbol. Then, our optimization objective can be formulated as
where E is the expectation of received encoded symbols’ number.
During the iteration, for simplifying the calculation, we directly employ the mean of T to measure the performance of degree distribution instead of the overhead. Correspondingly, the fitness function can be defined as
where m is the number of decoding trials. T(r) is the number of encoded symbols required for a successful decoding in the rth sample. Accordingly, the design of degree distribution can be denoted as a minimization problem
To accurately evaluate the value of T, a stepwise decoding mode is employed and works as follows.
Step 1: When the number of encoded symbols at the decoder is bigger than ⌈k(1 + δ)⌉, the BP decoding starts to work. δ is a default value of overhead set by the designer. ⌈⌉ denotes floor rounding calculation.
Step 2: If the decoder fails to decode the whole input symbols, it recruits another ⌈kδ⌉encoded symbols and continues the decoding operation.
Step 3: If the decoder succeeds in decoding the whole input symbols, the amount of encoded symbols is recorded and the stepwise decoding mode is terminated. If not, go back to Step 2.
ECSObased solution
Preliminaries of typical CSO
Proposed by X.B. Meng et al., chicken swarm optimization is a bioinspired metaheuristic optimization algorithm that mimics a hierarchal order in chicken swarm and behaviors of the chicken swarm [23]. The rules of chicken behavior in CSO can be summarized as follows:
Division and classification
The entire chicken swarm is divided into several groups, and each group consists of a rooster, some hens, and several chicks. Each type of chickens follows specific laws of motions.
Hierarchy and relationship
The fitness value of the chickens outlines a hierarchy of the swarm. The individuals with the best fitness are regarded as the roosters, each of which is a leader of the group. The individuals with the worst fitness values are considered as chicks. The others would be the hens. The hens randomly choose which group to live in. The motherchild relationship between the hens and the chicks is also randomly established. The swarm hierarchy, dominance relationship, and motherchild relationship in a group will remain unchanged until an update command is issued. In the typical CSO, the update command arrives every G times.
During the evolutionary, each individual follows their groupmated rooster and keeps moving to find a better position, whereas the different type of chickens employ different movement pattern. Suppose N stands for the number of original chickens in the swarm. N_{R}, N_{H}, N_{C}, and N_{M} respectively represent the number of roosters, hens, chicks, and mother hens. N = N_{R} + N_{H} + N_{C}. Assume all the virtual chickens, depicted by their positions x_{i, j}(t) at step t, search for food in a Ddimensional space where i ∈ [1, … , N], j ∈ [1, … , D], and t ∈ [1, … , W]. W is the iteration number. The roosters with better fitness values can search for food in a wider range of places than those roosters with worse fitness values, and their movements can be formulated as
where Randn(0, σ^{2}) indicates a Gaussian distribution with mean 0 and standard deviationσ. ε is the smallest constant utilized to avoid zerodivision error. f_{i} expresses the fitness value of the rooster x_{i}. w is the index of a rooster chosen randomly from rooster’s group.
Hens follow their groupmated roosters to search for food. More dominant hens would have an advantage in competing for food than more submissive ones. These phenomena can be formulated mathematically as
where Rand is a uniform random number limited in [1, 0]. r_{1} indicates a rooster’s index, which is the ith hen’s groupmate, and r_{2} (r_{1} ≠ r_{2}) indicates the index of the chicken (rooster or hen) selected randomly from the swarm.
The chicks move around with their mother to search for food. This is formulated below.
where x_{m, j} (t) is the position of ith chick’s mother. FL is a coefficient in the range [0, 2], representing the ability of the chick for following its mother to seek food.
Enhanced CSO algorithm
In this section, an enhanced CSO algorithm for designing degree distribution of shortlength LT codes is proposed and described. For ease of description and comparison, we termed the proposed algorithm as ECSO. Fundamentally, the enhancement in ECSO comprises three parts: substitution of bottom individuals (SBI), revision of chicks’ update equation (RCE), and introduction of DE (IDE). For a better understanding, the principles of these three strategies are illustrated as follows.
Substitution of bottom individuals
Among a large chicken swarm, the individuals with worst fitness values, a certain part of chicks, basically fail to not only have a beneficial impact on the evolution process due to their poor performance, but also cause a waste of calculation amount. Recognizing this fact, in our work, the N_{W} individuals with the worst fitness value are defined as bottom individuals and expected to be eliminated. On the contrary, roosters’ positions report the best behaviors of the whole swarm and predetermine the rapidity and accuracy of convergence. The perturbation number of each rooster during a single evaluation plays a major role in the efficiency of the rooster swarm. A larger perturbation number implies a higher chance of improvement of the rooster search.
Based on the two points above, SBI strategy shown in Fig. 1 is suggested as follows. Firstly, each bottom individual is substituted by a rooster to leave the size of population unchanged and facilitate the design of the optimization process. Treating N_{R} as the initial size of roosters, the extended size of roosters will reach N_{R} + N_{W} after the substitution operation. For ease of programming, let N_{W} be an integer multiple of N_{R}. Secondly, according to the diversity of the individuals’ status, the extended rooster swarm is classified into N_{R} groups, each of which contains roosters with the same fitness value. In the typical CSO algorithm, the hens randomly choose which group to live in so as to increase the variety of the evolution. Whereas in our approach, hens are allocated to the group where roosters provide the nearest neighbor Euclidean distance to enhance the convergence of great population. The chicks join in the group where their mother lives in. Afterward, each group is divided into N_{W}/N_{R} + 1 subgroups, each of which consists of one rooster, several hens, and a few chicks. The allocation of chicken is generated randomly. Thirdly, in order to balance the relationship between the convergence and variety, the initial size of the rooster is suggested to increase by degrees during the iterative evolution. For instance, N_{R} equals to 2 in the former half iteration of the evolution process while increases to 3 in the latter half iteration.
Revision of chicks’ update equation
In typical CSO, each chick only achieves position information from their own mother, rather than the roosters. In this case, it is hard for the chicks to obtain a better solution once their mothers fall into local optimum. Hence, the update equation of the chick is modified, and the formula (12) is rewritten as
where c_{3} indicates the learning coefficient. r_{best} expresses the index of the rooster with the best fitness value in the current iteration.
Introduction of DE
It should be noted that, in CSO, the information interaction among the individuals mainly occurs within a limited range, weakening the global optimization ability and deep optimization ability. For the roosters, the perturbation range is decided by σ only and the states of hens and chicks are not fully utilized. Besides, it would be hard to obtain a better performance by simultaneously updating the individuals’ states on all dimensions, because of their own superior fitness values. That is to say, the improvement upon a certain dimension would be possibly counteracted by the deterioration of some other dimensions. As for the update of hens, as shown in (8), a hen can only follow roosters to search for food, but fail to share information with other hens. It is necessary and possible to further improve the performance of the CSO by refining the manner of information interaction.
Motivated by this, this paper introduces DE strategy to the CSO algorithm. Proposed by Price and Storn in [27], DE is an excellent ECbased algorithm with many advantages including simplicity, robustness, and memory. In the enhanced CSO algorithm, after updating the position of all chickens, the algorithm enters DE operation to seek novel candidate solutions. Mutation, crossover, and selection are operated for the new generation. DE/rand/1/bin in [28] is chosen as the scheme of DE strategy.
Procedure of ECSObased approach
Overall, the procedures of the ECSObased approach for optimizing degree distribution of shortlength LT codes are suggested as below:

Step 1:
Initialize a starting distribution Ω_{I} = [p_{I, 1}, p_{I, 2}, …, p_{I, j}, …, p_{I, D}] in terms of the input symbols k and the number of probability degree distributions N, with p_{I, j} ∈ (0, 1) and \( \sum \limits_{j=1}^D{p}_{I,j}=1 \).

Step 2:
Utilize the starting distributions to construct the initial populations of ECSO algorithm. Each probability degree distribution stands for the position of a chicken in the swarm, and there are totally N chickens. The position of the ith individual in the initial solution is expressed as \( {x}_i^I=\left[{p}_{i,1}^I,\kern0.5em {p}_{i,2}^I,\dots, \kern0.5em {p}_{i,j}^I,\kern0.5em \dots, \kern0.5em {p}_{i,D}^I\right] \).

Step 3:
Start the optimization process with t = 1 and calculate the fitness values through formula (4).

Step 4:
If t % G = 1, establish hierarchal order and execute SBI operation based on the sorted fitness values. Update the position of roosters, hens, and chicks by using formula (6), formula (8), and formula (13) respectively. Normalization is also leveraged to ensure \( \sum \limits_{j=1}^D{p}_{i,j}(t)=1 \). [p_{i, 1}(t), p_{i, 2}(t), … , p_{i, j}(t), … , p_{i, D}(t)] denotes the state of the ith individual in the tth iteration.

Step 5:
Start the mutation operation as the first process of DE strategy. Three individuals are chosen randomly for generating a mutant vector given by
where M ∈ [0, 2] denotes the amplification factor.y_{1}, y_{2}, y_{3} ∈ [1, …, N] denotes random indexes, respectively.

Step 6:
Execute the binomial crossover operation as the second process of DE strategy. Use the mutant vectors and positions of individuals to obtain corresponding trial vectors. The rule is presented as
where Rand(j) is the jth evaluation of a uniform random number generator with the outcome ∈[0, 1]. CR ∈ [0, 1] represents crossover probability. j_{rand} is selected randomly from 1 to D.

Step 7:
Switch to the selection operation as the third process of DE strategy. Use the greedy criterion to decide whether a trial vector would become a member of the next generation. The greedy criterion is provided as

Step 8:
Set t = t + 1, if the step meets the maximum iteration, terminate the algorithm and output the optimal solution; otherwise, go to Step 4.
Simulation results
Simulations setup
In this section, simulation experiments have been implemented using MatLab R2014a platform. Two simulation jobs are carried out to evaluate the performance of the proposed approach. Firstly, we investigate the effectiveness of SBI, RCE, and IDE and evaluate the performance of the ECSO algorithm in comparison with other algorithms by using 12 benchmark functions presented in Table 1. Secondly, for validating the effectiveness of the ECSObased approach, three instances, namely K32, K64, K128, are provided to illustrate the optimization capability under different shortlength scenarios, among which k is set as 32, 64, and 128. Correspondingly, D is set as 5, 6, and 7, respectively. It is clear that the bigger the k is, the harder the design of degree distribution becomes.
Testing on the benchmark functions
To validate the effectiveness of SBI, RCE, and IDE, we termed the algorithm combining SBI and CSO as SCSO, the algorithm combining RCE and CSO as RCSO, and the algorithm combining IDE and CSO as ICSO. Three algorithms Adaptive PSO (APSO) [29], DE [28], and CSO [23] are chosen and compared in this section. Among them, APSO has a linear decreasing inertia weight when the number of iterations increases. DE simulates genetic processes (mutation, crossover, and selection operations) to generate the optimal solution by iterations. For all the algorithms, the population size is set as 100; the maximum number of generations is 100. The dimension of searing space is 10. The basic control parameters of the seven algorithms are given in Table 2. Note that, for SCSO algorithm and ECSO algorithm, set N_{R}=N_{W}=15, N_{H}=65 during the former half iteration of the evolution process and set N_{R}=N_{W}=25, N_{R}=55 during the latter half iteration of the evolution process. According to the principle of Monte Carlo, all the algorithms are executed 40 times independently to achieve statistical results.
Tables 3 and 4 show the statistical results obtained from the 40 runs, under the benchmark functions. The mean results, the best results, the worst results, and the standard deviation of fitness value are reported. Italicized data in the table indicate the best values among those achieved by all three algorithms. It is obvious that SBI strategy, RCE strategy, and IDE strategy could greatly improve the performance of the CSO, for most of the benchmark functions tested. Besides, the three strategies could work harmoniously since ECSO that combines all the three strategies almost invariably obtains the smallest values compared to the others. Take F12 for instance, the mean final fitness values of SCSO, RCSO, and ICSO are 11.477, 9.072, and 9.693, respectively, and the corresponding values of APSO, DE, and CSO are 19.405, 65.162, and 16.762, respectively, whereas ECSO wins the best value, 7.073.
Comparison and analysis on the degree distribution optimization
To evaluate the performance of the ECSObased approach, PSOGbased approach in [19] and typical CSObased approach are compared in this section. Just like the above section, all three algorithms are executed 40 times. For all the algorithms, the size of the population is set as 100 and the maximum number of generations is set as 80. For PSOGbased approach, the parameters are the same to those in [22]. For CSObased approach and ECSObased approach, the parameters are the same to those in Table 2. The rest of the parameters are set as follows: δ = 0.05 and m = 20.
Statistical results for instances K32, K64, and K128 are shown in Tables 5, 6, and 7. For one thing, it is obvious that the results of the CSObased approach and the ECSObased approach are superior to those of the PSOG approach, which proves the advantage of CSO. Take K64 for instance, the mean final fitness value of PSOG is 74.6711, whereas the corresponding values of CSO and ECSO are 74.0125 and 73.3750, respectively. For the worst final fitness value, the performance gap between the CSO and PSOG is 1.75, and the performance gap between the ECSO and PSOG is 2.375. For another, it can be observed that the ECSObased approach always achieve the best optimization results in all instances. Take K128 for instance, for the mean final fitness value, compared with PSOG and CSO, the improvements of the proposed ECSO are 4 and 0.9562, respectively. For the best final fitness value, the improvements are 4 and 1.732, respectively. In addition, the standard deviations are compared. Although the superiority of ECSO is not obvious, its standard deviations are still within an acceptable scope.
Table 8 lists the best degree distributions obtained by the ECSObased approach. A common phenomenon about the distributions of degree values can be found: lower degrees possess bigger probabilities. The probability of degree (D = 1) is the biggest and that of degree (D = 2) is the second biggest. Besides, the sum of two probabilities is more than 0.5, which guarantees the success of decoding and is in accordance with the characteristic of typical degree distributions such as ISD and RSD.
Figure 2 shows the merit of the proposed ECSObased approach in terms of aggressive nature, in which the curves are averaged by the statistical data of 40 runs. It can be observed that both the convergence rate and optimization precision of ECSO are better than those of PSOG and CSO. In addition, during the optimization process, the ECSObased approach can always take the leads with the lowest fitness values when the iteration exceeds 10. For K32, the fitness value of ECSO quickly drops down to 38.0941 when the iteration increases to 20, whereas the fitness values of PSOG and CSO are 39.4872 and 38.6013, respectively. As the iteration rises to 40, the convergence rates of the three approaches become to slow down, but the performance of the ECSO is still the best. For K128, the fitness value of ECSO quickly falls rapidly to 147.1244 when the iteration increases to 30, whereas the fitness values of PSOG and CSO are 152.3841 and 148.8773, respectively. Though the gap between ECSO and CSO is smaller, the gap between ECSO and PSOG is still considerable. Greater improvement can be expected when the k rises to thousands, which is very meaningful to the practical applications of shortlength LT codes.
Conclusion
Recognizing the design of degree distribution is critical to the DFCbased cooperative communication schemes; this paper proposes an ECSObased approach for optimizing degree distributions of shortlength LT codes. Firstly, we establish an optimization framework for the problem on the basis of sparse degree distributions. The search space dimension is reduced to D with d_{max} = 2^{D} and the average number of encoded symbols required is chosen to calculate the objective fitness value. Secondly, an enhanced CSO algorithm, termed as ECSO, is designed for the problem, in which three strategies, SIB, RCE, and IDE, are suggested to enhance the ability of optimization. Thirdly, an ECSObased approach is described in detail. Simulation results demonstrate the effectiveness of the three strategies and show that the ECSObased approach outperforms the PSOGbased approach and CSObased approach in terms of optimization efficiency and convergence rate. For the future work, our research will focus on optimizing degree distribution for unequal error protection (UEP) application of DFCbased cooperative communication schemes, by employing novel SI algorithms.
Abbreviations
 CSO:

Chicken swarm optimization
 DFC:

Digital fountain code
 PLC:

Power line communication
 PSO:

Particle swarm optimization
 SDD:

Sparse degree distribution
 UEP:

Unequal error protection
References
 1.
A.W. Kabore, V. Meghdadi, J.P. Cances, in 18th IEEE International Symposium on Power Line Communications and Its Applications. Cooperative relaying in narrowband PLC networks using fountain codes (Glasgow, IEEE, 2014), pp. 306–310
 2.
S. Ezzine, F. Abdelkefi, J.P. Cances, V. Meghdadi, A. Bouallegue, in 2015 IEEE 81st Vehicular Technology Conference (VTC Spring). Capacity analysis of an OFDMbased twohops relaying PLC systems (Glasgow, IEEE, 2015), pp. 1–5
 3.
J.W. Byers, M. Luby, M. Mitzenmacher, A. Rege, A digital fountain approach to reliable distribution of bulk data, Proceedings of ACM SIGCOMM (1998), pp. 56–67
 4.
C.M.C. PeiChuan Tsai, Y.P. Chen, in 2012 IEEE Congress on Evolutionary Computation. Sparse degrees analysis for LT codes optimization (Brisbane, IEEE, 2012), pp. 1–6
 5.
M. Luby, in Proc. 43rd Symp. Foundations Computer Science (FOCS 2002). LT codes (Vancouver, IEEE, 2002), pp. 16–19
 6.
A. Shokrollahi, Raptor codes. IEEE Trans. Inf. Theory 52(6), 2551–2567 (2006)
 7.
P. Maymounkov, in NYU Tech. Rep. TR2003–883. Online codes (2002)
 8.
R. Wang, H. Liang, H. Zhao, G. Fang, Deep space multifile delivery protocol based on LT codes. J. Syst. Eng. Electron. 27(3), 524–530 (2016)
 9.
K.h. Lee, C.k. Kim, S.H. Lee, W.t. Kim, in 2015 International Conference on Big Data and Smart Computing (BIGCOMP). Rateless code based reliable multicast for data distribution service (Jeju, IEEE, 2015), pp. 150–156
 10.
W. Du, Z. Li, J.C. Liando, M. Li, From rateless to distanceless: enabling sparse sensor network deployment in large areas. IEEE/ACM Trans. Networking 24(4), 2498–2511 (Aug. 2016)
 11.
C. Anglano, R. Gaeta, and M. Grangetto, Exploiting rateless codes in cloud storage systems, in IEEE Transactions on Parallel and Distributed Systems, 26, 5, pp. 1313–1322, 2015
 12.
H. Zhu, G. Zhang, G. Li, in 2008 11th IEEE International Conference on Communication Technology. A novel degree distribution algorithm of LT codes (Hangzhou, IEEE, 2008), pp. 221–224
 13.
L. Zhang, J. Liao, J. Wang, T. Li, Q. Qi, Design of improved Luby transform codes with decreasing ripple size and feedback. IET Communication 8(8), 1409–1416 (2014)
 14.
P.C. Tsai, C.M. Chen, Y.P. Chen, in 2014 IEEE Congress on Evolutionary Computation (CEC). A novel evaluation function for LT codes degree distribution optimization (Beijing, IEEE, 2014), pp. 3030–3035
 15.
W. Yao, B. Yi, W. Li, T. Huang, Q. Xie, CPRSD for LT codes. IET Communication 10(12), 1411–1415 (2016)
 16.
E. Hyytia, T. Tirronen, J. Virtamo, in IEEE INFOCOM 2007  26th IEEE International Conference on Computer Communications. Optimal degree distribution for LT codes with small message length (Anchorage, IEEE, 2007), pp. 2576–2580
 17.
E.A. Bodine, M.K. Cheng, in 2008 IEEE International Conference on Communications. Characterization of Luby transform codes with small message size for lowlatency decoding (Beijing, IEEE, 2008), pp. 1195–1199
 18.
E. Hyytia, T. Tirronen, J. Virtamo, in Proceedings of the 6th International Workshop on Rare Event Simulation (RESIM 2006). Optimizing the degree distribution of LT codes with an importance sampling approach (Bamberg, 2006), pp. 64–73
 19.
S. Jafarizadeh, A. Jamalipour, in 2014 IEEE Wireless Communications and Networking Conference (WCNC). An exact solution to degree distribution optimization in LT codes (Istanbul, IEEE, 2014), pp. 764–768
 20.
J.K. Zao, M. Hornansky, P.l. Diao, in 2012 IEEE Congress on Evolutionary Computation. Design of optimal shortlength LT codes using evolution strategies (Brisbane, IEEE, 2012), pp. 1–9
 21.
C.M. Chen, Y.p. Chen, T.C. Shen, J.K. Zao, in IEEE Congress on Evolutionary Computation. On the optimization of degree distributions in LT code with covariance matrix adaptation evolution strategy (Barcelona, IEEE, 2010), pp. 1–8
 22.
Z.H. Deng, B.S. Yi, L.C. Gan, J.S. Xiao, C. Huang, Degree distribution design of LT codes using PSO algorithm with gradient. J. Beijing Univ. Posts Telecommun. 34(3), 40–43 (2011)
 23.
X.B. Meng, Y. Liu, X.Z. Gao, H.Z. Zhang, in Advances in Swarm Intelligence. A new bioinspired algorithm: Chicken swarm optimization (Springer International Publishing, Berlin, 2014), pp. 86–94
 24.
G. Sun, Y.H. Liu, S. Liang, Z.Y. Chen, A.M. Wang, Q.A. Ju, Y. Zhang, A sidelobe and energy optimization array node selection algorithm for collaborative beamforming in wireless sensor networks. IEEE Access 6, 2515–2530 (2018)
 25.
D. Wu, S. Xu, F. Kong, Convergence analysis and improvement of the chicken swarm optimization algorithm. IEEE Access 4, 9400–9412 (2016)
 26.
W. Shi, Y. Guo, S. Yan, Y. Yu, P. Luo, J. Li, Optimizing directional reader antennas deployment in UHF RFID localization system by using a MPCSO algorithm. IEEE Sensors J. 18(12), 5035–5048 (Jun. 2018)
 27.
R. Storn, K. Price, Differential evolutiona simple and efficient adaptive scheme for global optimization over continuous spaces. Tech. Rep. TR95012, (ICSI, USA,1995)
 28.
R. Storn, K.V. Price, Differential evolution a simple and efficient heuristic for global optimization over continuous space. J. Global Optim 11(4), 341–359 (1997)
 29.
Y. Shi, R. Eberhart, in Proc. IEEE Int. Conf. Evol. Comput. A modified particle swarm optimizer (1998), pp. 69–73
Acknowledgements
There are no other participants in this work except those in the author’s list.
Funding
The research was supported by the technology programme of State Grid Hebei Electric Power Research Institute (No. KJ2017–016).
Availability of data and materials
Data sharing not applicable to this article as no datasets were generated or analyzed during the current study.
Author information
Affiliations
Contributions
PL conceived and created the research and then performed simulations and wrote the draft. HF and WS reviewed and corrected the manuscript. QX and ZY performed the simulations and calculations. ZX gave the constructive suggestion. All authors read and approved the final manuscript.
Corresponding author
Correspondence to Peng Luo.
Ethics declarations
Competing interests
The authors declare that they have no competing interests.
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Received
Accepted
Published
DOI
Keywords
 Fountain codes
 LT code
 Degree distribution
 Differential evolution
 Chicken swarm optimization