Low complexity symmetric-coded based sphere decoding for low-rate polar codes

The sphere decoding (SD) algorithm can provide (sub)optimal solutions with reduced computational complexity of maximum likelihood (ML) detection for multi-input multi-output (MIMO) communication systems. In this paper, we propose a novel low complexity symmetric-coded based SD algorithm for short polar codes with low rate. At the encoding stage, the first N/2 sub-channels transmit the frozen bits, while the information bits are selected from the latter N/2 sub-channels. Two symmetric codes are generated due to the mathematical structure of the generator matrix, which is well conditioned to the SD search. At the decoding stage, the presented SD algorithm computes the Euclidean distance value by the combined signals to estimate the latter N/2 input bits. Furthermore, the backtrack operation starts from the earlier \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$(N/2+1)$$\end{document}(N/2+1)-th bit, which can significantly reduce the average visited nodes (AVN). Simulation results show that, compared to the original SD algorithm, the presented variant of the SD algorithm can reduce the AVN to \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$0.9\%$$\end{document}0.9% for the polar code P(64, 14) at SNR = 1 dB with a performance loss within 0.2 dB. The presented SD algorithm may find applications in MIMO systems where the complexity of the standar ML detection increases exponentially with the transmitting antennas.

www.nature.com/scientificreports/ SD algorithm and then proposed the CRC-Aided SD (CA-SD) by simplifying the check matrix H CRC , which can reduce the complexity and has a comparable complexity with the CA-SCL.
In this paper, we propose a novel low complexity symmetric-coded based SD algorithm which chooses the information set only from the latter half of the sub-channels rather than the whole sub-channels. Two copies of symmetric-coded bits that have the same values can be generated according to the presented decoding strategy. In this way, the presented SD algorithm can stop decoding early when the ED of N/2 received signals are computed, which can greatly reduce the complexity. Numerical results show that the average visited nodes (AVN) of the presented SD algorithm can reduce to about 0.9% at SNR = 1dB for the P(64, 14) polar code, with a performance loss within 0.2 dB. Furthermore, for the polar codes with lower rates, for example, the P(64, 8) polar code, the AVN reduces to about 2.6% but the performance loss can be almost negligible. The proposed symmetric-coded based SD algorithm may find applications in MIMO systems where the complexity of the standard ML detection increases exponentially with the transmitting antennas.
The remainder of this paper is organized as follows. "Preliminaries" section derives the procedure of polar coding and describes the basic SD strategy. "The presented symmetric-coded based sphere decoding" section illustrates the proposed symmetric-coded based SD. "Performance and complexity evaluation" section analyses the performance and complexity. Finally, "Conclusion" section concludes the paper.
Notation Lower-case bold letters denote vectors with c i and u i denoting the i-th element of the vector c N 1 and u N 1 , respectively; upper-case bold letters denote matrices with g j,i represents the element located in the j-th row and the i-th column of G N ; D i is the ED between y i and x i and d N i represents the partial ED value between the vector y N i and x N i ; finally, A and A c denote the information and frozen sets, respectively.

Preliminaries
Polar codes. The construction of polar codes depends on the n-th Kronecker product of the basic polarizing matrix F = 1 0 1 1 , which can be represented as where G N is the N-dimension generator matrix with N = 2 n . Let P(N, K) be a polar code with rate R = K/N , the encoding process can be defined as is the encoded vector and u N 1 = (u 1 , u 2 , . . . , u N ) denotes the input vector combined with K information bits and N − K frozen bits. According to the polar encoding strategy, the K most reliable sub-channels with indices in A transmit information bits and the rest N − K sub-channels with indices in A c carry frozen bits, which are usually set to be zeros. The reliability of the sub-channel can be computed by the Bhattacharyya parameter 15 , density evolution 16 , Gaussian approximation (GA) 17 or the polarization weight 18 for different types of channels. The design of the information set A and the frozen set A c is of importance, since it will strongly impact the error performance of the resulting polar codes.
Without loss of generality, the binary input additive white Gaussian noise (BI-AWGN) channel and the binary phase-shift keying (BPSK) modulation are considered in this paper. Then the encoded vector c N After channel transmitting, the received vector is denoted by y N 1 = (y 1 , y 2 , . . . y N ) and each y i can be calculated by where 1 ≤ i ≤ N and n i represents the channel noise with mean 0 and variance σ 2 .
Sphere decoding algorithm. The sphere decoding method for polar codes is equivalent to solve the minimization problem as follows.
where û N 1 is the estimated value. It is shown that, such decoding procedure is actually to enumerate all the possible input information vector. Let D i be the ED between y i and x i , which can be calculated as where 1 ≤ i ≤ N and g j,i represents the element located in the j-th row and the i-th column of G N . Since G N is a lower triangular matrix, the value D i can be simplified as Then the partial ED value between the vector y N i and x N i can be computed by www.nature.com/scientificreports/ which can be recursively computed by satisfying the constraint where 1 ≤ i ≤ N − 1 and r 0 is the radius for the SD (initialized to maximum). It can be seen from Eq. (8) that, the SD can be regarded as the depth-first search algorithm in a backward manner, starting form the N-th bit to the first bit. After the first bit û 1 is estimated, we get the whole ED value d N 1 . Then r 0 is updated to a smaller value and the SD search is re-performed with the updated radius. Note that, the backtrack operation (starting from the first bit) is required in the SD procedure if the value d N i ( 2 ≤ i ≤ N ) is smaller than the current radius.

The presented symmetric-coded based sphere decoding
It is mentioned above that, the SD search requires the backtrack operation, which produces a great deal of computational complexity, especially for a large polar code length. To reduce the complexity, a symmetric-coded based SD algorithm is presented in this sub-section by the frozen bits presetting method. It is shown that, the resulting encoded bits are symmetric due to the mathematical structure of the generator matrix G N . In this way, it is equivalently to shorten the block length, which can reduce the complexity caused by the backtrack operation. Meanwhile, two copies of the received signals can be exploited to mitigate the corruption caused by the channel noise when computing the ED value.
The key step to achieve the symmetric bits is to preset the frozen bits in polar encoding. Let A c be the frozen set of the P(N, K) polar code with rate R. In the presented SD strategy, the former half of the sub-channels are all included in A c . The system model of the presented algorithm is shown in Fig. 1. Let A c * denote the set of the remaining frozen bit positions selected from the latter half of the sub-channels. Therefore, the frozen set A c can be expressed as where A c * ⊆ {N/2 + 1, N/2 + 2, . . . , N} . Obviously, the code rate R is computed by Since the cardinality of A c * is non-negative, the code rate R is limited by 0 ≤ R ≤ 1/2 . For the presented algorithm, the input vector u ′N 1 is then denoted by (0, 0, . . . , 0, u ′ N/2+1 , u ′ N/2+2 , . . . , u ′ N ) . According to the mathematical structure of the generator matrix G N , we have two symmetric codes, (c 1 , c 2 , . . . , c N/2 ) and (c N/2+1 , c N/2+2 , . . . , c N ) , in the encoded vector, where c i = c i−N/2 , N/2 + 1 ≤ i ≤ N . The encoded procedure is shown in Fig. 2.
After transmitting over the channel, the i-th and the (i − N/2)-th received signals can be added together to form a new combined signal y ′ i = (y i + y i−N/2 )/2 for N/2 + 1 ≤ i ≤ N , which can mitigate the channel interference. Consequently, the ED between y ′ i and x i can be calculated as where N/2 + 1 ≤ i ≤ N . Correspondingly, the partial ED value d ′N i can be computed as Based on the description above, the presented symmetric-coded based SD algorithm can be summarized in Algorithms 1 and 2. Figure 3 shows the flow chart of the presented algorithm. www.nature.com/scientificreports/ Remark Since the former half of the input bits are set to be frozen bits, the SD search only needs to estimate the latter N/2 bits, (u ′ N/2+1 , u ′ N/2+2 , . . . , u ′ N ) . Correspondingly, the backtrack operation of the algorithm is not required for the former N/2 bits, which can significantly reduce the computational complexity. The resulting encoded bits include two symmetric codes, whose received signals can be combined together to compute the ED value, which can mitigate the channel corruption. Such signal combination acts like the repeat code and can compensate the performance degradation caused by the frozen bits presetting.

Performance and complexity evaluation
In this section, we verify the effectiveness of the proposed algorithm and analyze the computational complexity in terms of the average visited nodes (AVN). As mentioned in the previous section, the resulting code of the presented algorithm is available for moderate-to-low rate with 0 ≤ R ≤ 1/2 . Furthermore, polar codes decoded by SD algorithm show advantages in performance for the short block length, which is suitable for the control channel in which the payload size is relatively small. For this reason, polar codes with short block length and low rate are considered in the simulations.
Consider the polar codes, P(64, 8), P(64, 10), P(64, 12) and P(64, 14) with code rate of 4/32, 5/32, 6/32 and 7/32, respectively. For simplicity, we only consider the AWGN channel with BPSK modulation. The total number of simulation frames is 10 6 and the maximum number of error frames is 2000. When the simulation reaches the total number of frames or reaches the maximum number of error frames, the algorithm stops decoding. Figure 4 shows the frame error rate (FER) performance of these four codes. We have the following observations.
• The slopes of the performance curves almost remain the same and the error floor is not observed.
• For the polar code P(64, 8) with the smallest information bit K = 8 , the presented symmetric-coded based SD algorithm performs as well as the original SD algorithm. • With the increasing length of information block, the presented symmetric-coded based SD algorithm performs slightly worse compared to the original SD algorithm. For example, the polar codes P(64, 10), P(64, 12) and P(64, 14) with information bits K = 10, 12, 14 show a performance gap within 0.2 dB compared to the original SD algorithm, which is acceptable.
It is worthwhile to point out that, to construct the symmetric code, the former half of the sub-channels are designated to place the frozen bits. This may cause some problems that have negative influence on performance, since some "good" sub-channels are excluded. Correspondingly, some "bad" sub-channels are included into the information set A . Such changed sub-channels proportion is defined by Fortunately, it is observed that such proportion only occupies a very small proportion, especially for small K value, which has a limited impact on performance. To verify this point, we give the proportion of the polar codes with block length N = 64 and different information lengths of K = 8, 12, 14, 16 , respectively, as shown in Table 1. It can be seen that, the proportion increases with the value of K. For example, = 0 , 3.1% and 6.2% for K = 8, 12, 16 , respectively. Similar to ref. 11 , the complexity in this paper is analyzed by the average visited nodes during the SD search. Furthermore, the presented SD algorithm is performed with fixed lower bounds reported in ref. 11 , which can remove some branches at an earlier stage. Figure 5 shows the complexity in terms of AVN for the polar codes P (64, 8), P(64, 10), P(64, 12) and P (64, 14). It can be seen from the figure that • Compared to the original SD algorithm, the presented SD algorithm can significantly reduce the complexity for these four polar codes. The complexity reduction mainly comes from the following two facts: 1)Due = the number of changed sub-channel the half of block length . www.nature.com/scientificreports/ to the symmetric code construction, the block length reduces from N to N/2; 2) Instead of the first bit, the backtrack operation starts from the (N/2 + 1)-th bit, which can dramatically reduce the visited nodes. • For example, for the polar code P(64, 8) and P(64, 14) at SNR = 1 dB, the original SD algorithm requires about 120,000 and 440,000 AVN, respectively. In contrast, the presented symmetric-coded based SD algorithm only requires about 3,000 and 4,000 AVN, which is 2.6% and 0.9% to that of the original SD algorithm, respectively.

Conclusion
In this paper, we have proposed a new variant of the SD algorithm, called the symmetric-coded based SD algorithm, for the short and low-rate polar codes. At the encoding stage, the former half of the input bits are set to be frozen bits and the resulting encoded bits include two symmetric codes. At the decoding stage, the SD search only requires to estimate the latter N/2 bits. Meanwhile, received signals with respect to the symmetric code bits can be combined together to compute the ED value, which can mitigate the channel corruption. Furthermore, the presented algorithm starts the backtrack operation from the (N/2 + 1)-th bit instead of the first bit, which can significantly reduce the computational complexity. Simulation results show that, compared to the original sphere decoding, the presented variant of the SD algorithm can reduce the average visited nodes to 0.9% for the polar code P(64, 14) at SNR = 1 dB with a performance loss within 0.2 dB. The presented algorithm only considers codes with short length and low rate, where the changed sub-channels proportion remains relative small. It is interesting to investigate codes with longer length and higher rate (consequently producing a larger value which may cause performance degradation) in the future. Furthermore, to jointly design the presented algorithm with the polar-coded MIMO systems may be another valuable research direction.

Data availability
The datasets used and/or analysed during the current study available from the corresponding author on reasonable request. www.nature.com/scientificreports/