Abstract

As a critical communication technology, low-density parity-check (LDPC) codes are widely concerned with the Internet of things (IoT). To increase the convergence rate of the alternating direction method of multiplier (ADMM)-penalized decoder for LDPC codes, a novel early termination (ET) method is presented by computing the average sum of the hard decision (ASHD) during each ADMM iteration. In terms of the flooding scheduling and layered scheduling ADMM-penalized decoders, the simulation results show that the proposed ET method can significantly reduce the average number of iterations at low signal-to-noise ratios (SNRs) with negligible decoding performance loss.

1. Introduction

The Internet of things (IoT) is an important part of the new generation of information technology, and it also represents an important stage of development in the era of “information technology” [14]. With the era of big data coming, IoT is widely used in many fields and will have a very beneficial impact on business, human lifestyle, and health [5]. As there are many vehicles and few parking spaces, the difficulty of parking is a common problem faced by many cities at present. Based on IoT, Abirami et al. designed a smart parking system that can well alleviate the parking problem [6]. The quality and supply efficiency of food are the key issues in the food industry and directly affect the healthy life of human beings. A dynamic food supply chain, which not only ensures the food quality but also provides intelligent vehicle path tracking, is proposed based on IoT [7].

As low-density parity-check (LDPC) codes exhibit excellent decoding performance, they are widely employed in IoT [811]. However, as certain nodes do not actively participate in forwarding messages, the communication cost increases [12]. To control the communication cost, it is necessary to study the related technology for communication systems.

Based on linear programming (LP), an alternative decoding method is designed for LDPC codes [13]. Though the LP method’s decoding performance is better than the message passing (MP) decoding, its decoding complexity is high. To reduce the decoding complexity of the LP method, an efficient LP decoding method based on the alternating direction method of multiplier (ADMM) (called the ADMM-based LP decoding method) is presented [14]. The complexity of the ADMM-based LP decoding method is similar to that of the belief propagation (BP) decoding method, but its decoding performance is worse at low signal-to-noise ratios (SNRs). Recently, many scholars have studied ADMM-based LP decoding to improve performance or reduce complexity.

To improve the performance of the ADMM-based LP decoding method at low SNRs, an improved ADMM decoding method (called the ADMM-penalized decoding method) that increases the cost of pseudocodewords is proposed [15]. A novel ADMM-penalized decoding method that significantly improves the decoding performance is also devised based on the weighted penalized factor [16]. The performance of the ADMM-penalized decoder with the improved penalty function devised by combining the and penalty functions can also be improved [17].

The most complex operation of the ADMM-based LP decoding method is the Euclidean projection onto the check polytope. Wei et al. reduced this method’s complexity by directly reducing the number of Euclidean projections [18]. Many other studies have also reduced the complexity by improving the Euclidean projection operation. For example, introducing the cut search algorithm [19], projecting a vector onto a simplex [20], using look-up tables to implement the Euclidean projection [21], removing the sorting operation [22], replacing the check polytope projection through line segment projection [23], exploiting the LP model’s orthogonality structure [24], and alternately adopting even-vertex and other accurate projection algorithms [25] have all helped reduce the complexity.

In addition, inspired by deep learning, Wei et al. presented a deep neural network-aided decoding algorithm that outperforms the original ADMM-penalized decoder [26]. Based on ADMM, Bai et al. proposed an efficient quadratic programming decoder that can eliminate the Euclidean projections [27]. To further improve the decoding performance, Jiao et al. derived the -box ADMM decoding method for certain intersymbol interference (ISI) channels [28].

Another way to reduce the ADMM-based LP decoder’s complexity is the message scheduling strategy. For the ADMM decoding method, horizontal-layered scheduling [29], vertical-layered scheduling [30], and node-wise scheduling [31] are presented to increase the convergence rate.

The early termination (ET) method terminates the decoding process as early as possible before reaching the maximum number of iterations, and it can therefore increase the decoding method’s convergence rate. The authors in [3236] provided many useful ET methods that have reduced the BP decoder’s complexity by avoiding unnecessary decoding processes. At present, the standard rule and the ET scheme of are two primary stopping methods for ADMM decoding.

For LDPC codes, this paper designs a novel ET method that increases the convergence rate of the ADMM-penalized decoder, and its primary contributions are as follows:(1)An algorithm that computes the average sum of the hard decision (ASHD) of the ADMM-penalized decoding method during each iteration is presented.(2)Using the ASHD of the codeword bits at each decoding iteration, this paper designs a novel ET method that increases the ADMM penalized decoder’s convergence rate.(3)According to our simulations, the designed ET method can significantly reduce the average number of iterations at low SNRs with negligible decoding performance degradation.

The remainder of the paper is organized as follows: In terms of LDPC codes, the ADMM decoding problem model is briefly reviewed in Section 2. Section 3 designs a novel ET method for the ADMM-penalized decoder. The experimental simulations illustrate the effectiveness of the designed ET method in Section 4. Finally, Section 5 concludes this paper.

2. Preliminaries

2.1. LP Decoding

An parity-check matrix of a binary LDPC code indicates that its code length is and the number of check equations is . Meanwhile, and are also the number of variable nodes which are represented by , and the number of check nodes which are represented by , respectively. The element in means that the check node and the variable node are related. The set of all check nodes related to variable node is denoted by , and the degree of is denoted by . The set of all variable nodes related to the check node is denoted by , and the degree of is denoted by .

Suppose that the sender transmits a codeword vector denoted by and that the receiving end is provided a vector denoted by over a noisy channel. The vector of the log-likelihood ratios (LLRs) is denoted by , where .

Definition 1. The LP decoding problem is defined as follows [13]:where the check polytope is the convex hull of all even-parity binary vectors of length , and the components of that participate in the j-th check node are elected out by the binary transfer matrix .

2.2. ADMM Decoding

By introducing , which represents the “replica” variables, problem (1) is rewritten as the following ADMM-based LP problem [14]:

The augmented Lagrangian of problem (2) is as follows:where denotes the scaled dual variables corresponding to each , the penalty parameter is a constant, and .

Then, the ADMM iterations are as follows [14]:where , and represents the Euclidean projection of the vector onto .

2.3. ADMM Penalized Decoding

After adding a penalty function, problem (2) becomes the ADMM penalized decoding:where and are the penalty parameter and penalty function, respectively.

The flooding scheduling ADMM-penalized decoding method is expressed in Algorithm 1 [15], where denotes the differential of with respect to .

Input: Received vector .
Output: Decoded vector .
(1), : , ,
(2)for allwhen stop criterion = false do
(3)  for all, do
(4)   
(5)  end for
(6)  for all, do
(7)   
(8)   
(9)   
(10)  end for
(11)end for

At present, the stop criterion in Algorithm 1 primarily adopts the standard rule and the ET rule. The first method compares the prime residual and the dual residual with the error tolerance (), and the ADMM decoding process terminates when their values are all less than [14], namely, when and are all true. The second term verifies the parity-check equation at the end of each iteration, and if the equation is satisfied, the ADMM decoding process terminates [19].

3. Designed Early Termination Method

A novel ET method of the ADMM-penalized decoder is designed in this section. The LDPC codes (576, 288) and (1152, 288) are used to show the effectiveness of the designed ET method.

3.1. Motivation

The ADMM-penalized decoder is an iterative decoding method, so we can easily compute the hard decision information for the codeword bits at the end of each decoding iteration. At the k-th iteration, the i-th bit hard decision information is decided as follows:where represents the soft value of at the k-th iteration in Algorithm 1. According to , the ASHD at each decoding iteration can be computed as described in Algorithm 2. The ASHD, which describes the iterative information of at each ADMM iteration, can monitor the decoding process.

Input: from the k-th ADMM iteration.
Output: of all the k-th ADMM iteration.
(1) For each component , compute its hard decision, , at the end of the k-th iteration.
(2) Compute the sum of hard decision, , at the end of the k-th iteration.
(3) Compute all the k-th iteration’ sum of hard decision, .
(4) Count the number of all k-th iteration, .
(5) Compute all the k-th iteration’ average sum of hard decision, .

By running the flooding scheduling ADMM-penalized decoder, we obtained the changing ASHD trends for and under different SNRs, and the results are shown in Figure 1. It can be seen that the ASHD value for is relatively high at the 6-th, 7-th, and 8-th iterations. However, when the number of iterations increases, there is an obvious difference between the changing ASHD trends at different SNRs. For example, when SNR = 3.4 dB, the ASHD is close to stabilizing and has a small value, which may indicate that the exact solution vector has been found; therefore, we can prematurely stop decoding. However, the ASHD at SNR = 2.6 dB is still large and dispersed, which represents that a fraction of the hard decision information keeps changing and further iterations are needed to find the exact solution vector. Therefore, if the ASHD values remain relatively high, the decoding process can be terminated. Similar results were obtained for the ASHD, and they are also presented in Figure 1.

The changing ASHD trends for and with the layered scheduling [29] ADMM-penalized decoder under different SNRs is shown in Figure 2. Compared with Figure 1, the changing ASHD trends for and are roughly the same. The lower the number of iterations, the larger the value of the ASHD. When the number of iterations increases, the ASHD value gradually decreases; in addition, the value of the ASHD at higher SNRs is relatively stable, while the ASHD value at lower SNRs remains relatively dispersed. The difference between Figures 1 and 2 is that with layered scheduling, the number of iterations required to obtain roughly the same ASHD value is lower than that with flooding scheduling.

3.2. Algorithm Details

There are two critical parameters Iter and Thre that should be considered when employing the designed ET method. Iter denotes the number of iterations at which the ADMM decoder starts the ASHD check, and Thre is the ASHD threshold used to check whether the decoding process should be terminated. It should be noted that the value of Iter is very important in the designed ET method. As the ASHD value is relatively high at the 6-th, 7-th, and 8-th iterations, Iter should not be too small. However, Iter should also not be too large; otherwise, it will affect the designed ET method’s operations. To achieve a better decoding effect, these two parameters can be optimized by simulations using the designed ET method.

In terms of LDPC codes, Algorithm 3 describes the designed ET method for the ADMM-penalized decoder. Step 4(a) checks whether the number of iterations k exceeds the maximum number of decoding iterations . in Step 4(b) implies that this iteration’s solution vector is the correct codeword. Finally, Step 4(c) verifies whether the conditions of the designed ET method are met.

Input: from the k-th ADMM iteration, the parameter values of Iter and Thre.
(1) For each component , compute its hard decision at the end of the k-th iteration.
(2) Compute the sum of hard decision, , at the end of the k-th iteration.
(3) Compute the k-th iteration’ average sum of hard decision, .
(4) (a) Check whether ;
 (b) Check whether ;
 (c) Check whether and .
(5) If 4(a) is true, or 4(b) is true, or 4(c) is true, then the decoding process can be terminated; otherwise, the next ADMM iteration is performed.

It is worth noting that the designed ET method can be applied to both the flooding scheduling [15] and layered scheduling [29] ADMM-penalized decoders.

4. Simulation Results

We compared the frame error rate (FER) performance and the average number of iterations (ANIs) for the ADMM-penalized decoder with the designed ET method, the standard rule, and the ET rule. During simulations, the maximum number of iterations, error tolerance, and over-relaxation parameter are set to 40, , and 1.9, respectively. The penalized function is used in the simulation, and its penalty parameters are optimized by the method presented in [14].

4.1. Choice of Iter and Thre

As Iter and Thre are the two critical parameters in the designed ET method, it is particularly important to choose appropriate values. Therefore, we select appropriate parameter values for Iter and Thre in terms of the flooding scheduling and layered scheduling ADMM-penalized decoders, respectively.

4.1.1. For the Flooding Scheduling ADMM-Penalized Decoder

First, the influence of Thre is investigated when Iter = 10 for . Figure 3 shows the FER performance and the ANIs of the designed ET method with different values of Thre, the standard rule, and the ET rule. From Figure 3(a), we can see that there is little difference in the FER performance among the three termination methods at lower SNRs, while at higher SNRs, the FER performance of the designed ET method with large values of Thre is better than that with small values of Thre. However, all of these results are worse than those for the standard rule and the ET rule. On the contrary, Figure 3(b) shows that at lower SNRs, the ANIs of the designed ET method with different Thre values are all less than those of the other two termination methods. In addition, the diminution in ANIs is more obvious for small Thre values than that for large values, but the ANIs for different Thre are nearly the same as those of the ET rule at higher SNRs. Furthermore, all of the ANI results are noticeably lower than those of the standard rule. Therefore, an elastic trade-off between Thre and the FER performance is needed.

Second, the influence of Iter is studied when Thre = 7. The FER performance and the ANIs of the three termination methods are plotted in Figure 4. From Figure 4(a), it can be seen that the FER performance of the three termination methods is nearly the same at lower SNRs; however, the FER performance of the other two termination methods is better than that of the designed ET methods with different Iter values at higher SNRs. Additionally, the larger the Iter value is, the better the FER performance is for the designed ET method. Figure 4(b) illustrates that small Iter values cause obvious diminution of the ANIs for the designed ET method, and all ANIs for the designed ET method are lower than those for the other two termination methods at lower SNRs. Furthermore, the ANIs for the designed ET method are nearly identical to those for the ET rule at higher SNRs, and they are also all lower than those for the standard rule. Therefore, we also need to make a trade-off between Iter and the FER performance.

Similarly, we set Iter = 12 and study the FER performance and ANIs of when Thre is 11, 12, 13, 14, 15, 16, and 17, respectively (as shown in Figure 5). The same conclusions that are drawn about are similarly obtained for ; that is, the higher the Thre value, the better the FER performance, but the ANIs at lower SNRs are higher. Then, Thre is set to 15. Figure 6 shows the FER and ANIs when Iter is 9, 10, 11, 12, 13, 14, and 15, respectively. Similarly, to obtain a better FER performance, more Iter is needed, and inevitably, the ANIs at lower SNRs are also higher.

4.1.2. For the Layered Scheduling ADMM-Penalized Decoder

The FER performance and ANIs for with different Thre values and Iter = 9, as well as with different Iter values and Thre = 7, are shown in Figures 7 and 8, respectively. Similarly, Figures 9 and 10 illustrate the FER performance and ANIs for with different Thre values and Iter = 11, as well as with different Iter values and Thre = 15, respectively. It can be seen that the results are similar to the conclusions drawn regarding scheduling; that is, the larger Thre value (or Iter value), the better the FER performance, but it also incurs more ANIs at lower SNRs.

4.2. Comparison of FER Performance and ANIs

For , according to the trade-off between the FER performance and ANIs, we choose (Thre, Iter) = (7, 11) for the designed ET method according to the simulation results from the flooding scheduling ADMM-penalized decoder. The FER performance and ANIs of the flooding scheduling ADMM-penalized decoder with the designed ET method, the standard rule, and the ET rule are shown in Figure 11. Compared with the other two termination methods, the designed ET method obviously reduces the ANIs at low SNRs with negligible FER performance loss. When SNR = 1.6 dB, the designed ET method can reduce the number of iterations by approximately 12 and 16 compared with the standard rule and the ET rule, respectively.

For , we choose (Thre, Iter) = (15, 13) for the designed ET method with the flooding scheduling ADMM-penalized decoder. Figure 11 also shows the FER performance and ANIs for with the three termination methods, and we can observe similar results. Compared with the standard rule and the ET rule, the designed ET method can reduce the number of iterations by approximately 6.5 and 10 when SNR = 2.8 dB.

When using the layered scheduling ADMM-penalized decoder with the designed ET method, we choose the optimized parameter combinations (Thre, Iter) = (7, 10) and (Thre, Iter) = (15, 12) for and , respectively. Figure 12 shows the FER performance and ANIs of the three termination methods for and . Similarly, at low SNRs, the designed ET method can clearly reduce the ANIs with little FER performance loss. According to the designed ET method, the number of iterations is reduced by approximately 3 and 5 at 1.6 dB for and 3 and 3.5 at 2.8 dB for , respectively.

5. Conclusion

By computing the ASHD at each iteration, the ET method presented in this paper can increase the convergence rate of the ADMM-penalized decoder for LDPC codes. Compared with the two existing termination methods, the designed ET method clearly reduces the average number of iterations at low SNRs with negligible decoding performance loss. In addition, both the flooding scheduling and layered scheduling ADMM-penalized decoders can adopt the designed ET method.

Data Availability

The data used to support the findings of this study are included within the supplementary information file.

Conflicts of Interest

The author declares that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the Natural Science Basic Research Plan in Shaanxi Province of China (No. 2021JM-515).

Supplementary Materials

The supplementary information file contains the data that are used to support the findings of this study. Figure 1: the changing ASHD trends for C1 and C2 when using the flooding scheduling ADMM-penalized decoder. Figure 2: the changing ASHD trends for C1 and C2 when using the layered scheduling ADMM-penalized decoder. Figure 3: the comparison of FER and ANIs for C1 when using the flooding scheduling ADMM-penalized decoder with different Thre values and Iter = 10. Figure 4: the comparison of FER and ANIs for C1 when using the flooding scheduling ADMM-penalized decoder with different Iter values and Thre = 7. Figure 5: the comparison of FER and ANIs for C2 when using the flooding scheduling ADMM-penalized decoder with different Thre values and Iter = 12. Figure 6: the comparison of FER and ANIs for C2 when using the flooding scheduling ADMM-penalized decoder with different Iter values and Thre = 15. Figure 7: the comparison of FER and ANIs for C1 when using the layered scheduling ADMM-penalized decoder with different Thre values and Iter = 9. Figure 8: the comparison of FER and ANIs for C1 when using the layered scheduling ADMM-penalized decoder with different Iter values and Thre = 7. Figure 9: the comparison of FER and ANIs for C2 when using the layered scheduling ADMM-penalized decoder with different Thre values and Iter = 11. Figure 10: the comparison of FER and ANIs for C2 when using the layered scheduling ADMM-penalized decoder with different Iter values and Thre = 15. Figure 11: the comparison of FER and ANIs for C1 and C2when using the flooding scheduling ADMM-penalized decoder with the three termination methods. Figure 12: the comparison of FER and ANIs for c1 and C2 when using the layered scheduling ADMM-penalized decoder with the three termination methods. (Supplementary Materials)