An Optimized Method for Polar Code Construction

—Polar codes are traditionally constructed by calculating the reliability of channels, then sorting them by intensive calculations to select the most reliable channels. However, these operations can be complicated especially when, the polar code length, N becomes great. This paper proposes a new low-complexity procedure for polar codes construction over binary erasure and additive white Gaussian noise (AWGN) channels. Using the proposed algorithm, the code construction complexity is reduced from O(Nlog N) to O(N), where N=2 n (n≥1). The proposed approach involves storing the classification of channels by reliabilities in a vector of length L, and then deriving the classification of M channels for every M where M<=L. The proposed method is consistent with Bhattacharya parameter based Construction and Density Evolution with Gaussian Approximation (DEGA) based construction. In this paper, the Successive Cancellation Decoding algorithm (SCDA) is used. Thanks to its low complexity and its high error-correction capability.


INTRODUCTION
It is usual for communication links to suffer from errors due to random noise, interference and malfunctioning devices, etc. To correct errors in channel coded data streams, a set of algorithmic operations is applied to the original data stream at the transmitter. A second set of algorithmic operations is applied to the received data stream at the receiver. Encoding and decoding operations at the transmitter and receiver are collectively called channel coding operations in channel coding terminology. Research in channel coding is focused on developing high performance channel codes that mitigate the effects of errors in communication links. A real challenge here is to accomplish this with sufficient simplicity to allow practical implementation in silicon technology. Everything depends on the complexity of a code, including its power consumption, memory requirements, computation power requirements, and latency, which determine whether or not a code is appropriate for any given scenario. Channel coding is somewhat revolutionized by polar codes.
The polar codes proposed by Arikan in 2008 can achieve that capacity of any binary discrete memoryless channel [1], researchers from all over the world have been interested in polar codes ever since their introduction in [1], polar codes can be used in lot of applications like cryptgraphy [2], speech communication [3], data storage [4]. Polar codes are also used to develop new block [5]. Polar codes are composed of three main stages; namely the construction, the coding and finally the decoding. The construction of polar codes is a crucial step as they affect the performance of polar codes. In polar codes construction, synthetic channels are evaluated by reliability. Good channels are selected for information transmission and the bad channels are frozen. Where polar codes are capable to achieving channel capacity for any binary-input discret memoryless channel [1].
Polar codes construction step encounters the following problem: given N code lengths and K information bit length,what is the best way to select K channels out of all the available ones, knowing that the remaining N-K bit channels are frozen and provided to the transmitter and receiver. An indication of the quality of a virtual bit channel can be determined by using a variety of metrics. Polar codes take effect when the length of the code is very large, which implies a large number of computes to know the capacity of each channel, As a result, building polar codes is extremely difficult and requires a lot of resources. This paper considers the construction of polar codes over symmetric binary discrete memory-less channels by using a new method to reduce the complexity of the construction. Many methods have been developed previously in literature to build polar codes, Monte-Carlo simulations are proposed in [1] with a high complexity of O(TNlogN) where T indicates the number of iterations of Monte-Carlo simulations. In [6] and [7], polar codes construction is based on density evolution, where convolutions of functions are performed and numerical calculation precision is limited by the complexity of the process. In [8] bit-channel approximations are proposed with a Complexity under controlled conditions of O(N.μ 2 log μ) (μ a user-defined parameter that limits the number of output alphabets at each step of the approximation process). Another type of algorithm can construct polar codes using Gaussian approximation (GA) of additive white Gaussian noise (AWGN) channels [9]- [11], this approximation function [11] inherently limits the GA method, with some restrictions on the length of blocks [11]. Bhattacharya paremeters are used to construct polar codes in [1], other constructions methods with variable performance and complexity are located in [12]- [14]. This paper describes an efficient method of constructing polar codes to reduce their computational complexity, if the method suggested in this paper is compared to other ones in the literature, the method presented here is characterised by a reduced complexity. www.ijacsa.thesai.org In the following sections of this paper, polar codes are described, including their background, with a focus on the concept of channel polarization. Section III presents the traditional method of constructing polar codes, while Section IV provides numerical results that demonstrate the effectiveness of the proposed method compared to traditional methods and state-of-the-art techniques. Finally, the conclusion summarizes the key findings of the study and discusses potential future research directions.

II. POLAR CODES
In general, all channel coding technologies work in quite similar ways, even if the excellent performance of turbo codes and LDPC (Low Density Parity Check) codes in practice, none of the last codes can be demonstrated to attain the capacity of channels exempt the binary erasure channel (BEC). Polar codes are members of the block code family since they operate on blocks of symbols/bits. To construct polar code, two key operations are required: channel combining and channel splitting. The channel combining process, carefully selected combinations of bits are mapped to specific channels.
Let consider N bits to be sent over discrete binary channel without memory (B-DMC) W. Each transmission represents a use of W, which means that each bit is passed through a copy of W as shown in Fig. 1. The map in Fig. 1 between the input and the vector can be represented by the equation (1): Where G 2 is the basic matrix: The same operation is repeated with W 2 as the basic element to produce W 4 like presented in Fig. 2. Generally At this step, the combined channels W N is the virtual channel that map the input data to the output . are divided into a set of N bit input channels .
These virtual channels are characterized by the transition probabilities provided by equation (3).
Combination of two copies of W2 to form W4.

III. THE NATIVE CONSTRUCTION
As mentioned earlier, building polar codes is like finding all the best positions of reliable bits positions. The selection of the information bits is one of the most important steps in polar coding. Polar codes are originally constructed using simple bounds on Bhattacharyya parameter bit channels [1], The Bhattacharyya parameter is linked to the Bhattacharyya distance, which measures the similarity of the probability distributions of two symbols [15]. It has been widely used to produce good polar codes because of its simplicity. By creating a system allowing one to access each bit-channel individually, one can send data only through those for which the Bhattacharyya parameter is close to 0. Bhattacharyya's parameter Z( ) defined in (5) provides an upper bound on the error probability of transmission over W with maximum likelihood (ML) decisions when the channel is used only once.
Accordingly, channels with Z( )<ɛ are almost noiseless, whereas channels with Z W( )>1-ɛ are almost pure-noise channels where 0<ɛ<1 [15]. However, it has been cited that the parameters' updates succeeded with equality just for the Binary Erasure Channel.

A. Density Evolution with Gaussian Approximation (DEGA) Construction
Over AWGN channel the Density Evolution with Gaussian Approximation (DEGA) is the famous construction for polar codes. From the channel stage towards the decision stage, DEGA attempts to evolve the densities of the LLRs via the decoder. Regardless, precise if the begin is with Gaussian densities at the channel stage, the consequent densities at the following stages are not Gaussian anymore. The DEGA decoder relaxes this by supposing they are approximately Gaussian, and consequently it only tracks their mean and variance throughout the approach. The relationship between 163 | P a g e www.ijacsa.thesai.org mean and variance should survive at all stages [10]. The variance and the mean is defined in (6) where the LLR is defined in (7).
The next update is accomplished by DEGA [9].
The function  is given by (8).

IV. NUMERICAL RESULTS AND DISCUSSION
This section analyses the classifications of polar codes virtual channels by reliability for different code lengths over AWGN and BEC, the information length is not tested because the construction of polar codes depends on the code length.

A. Classification of Polarizing Channels over BEC
This part starts by the comparison by reability of 8 BEC polarizing channels with erasure probability 0.1,0.2,0.3,0.4,0.5,0.6,0.7 and 0.8, the results are shown in Fig. 3.
The simulated results that are calculated using the relation (17) of [1] indicates that virtual channels are classified in the same way independently of the erasure probability. Fig. 3 shows that for all erasure probabilities, virtual channels are classified as below 8->7 ->6 ->4 ->5 ->3->2 ->1 (from the most reliable to the least accessible).  Fig. 4 shows that the classification of 16 virtual channels is the same for all erasure probabilities, the classification by consequence is 16-> 15 ->14 -> 12 -> 8 -> 13 -> 11 -> 10 -> 7 -> 6 -> 4 -> 9 -> 5 ->3->2->1.    The results shown in Fig. 5 proof that the classification of virtual channels with index less than 4 is the same in both codes. Table I provides the classification of virtual channels by reliability for several code lengths (N=1, 2,4,8,16,32) where the erasure probability ɛ=0,25. For ease of analysis, each channel index is characterized by the same color in each code length. The table shows that the classification is the same when the length of the code changes.

B. Classification of Polarizing Channels under AWGN
This section analyses channel classifications by reliability for different code lengths over AWGN, the Bhattacharyya parameters are used to evaluate the reability for each virtual channel, note that the same tests can be applied with Gaussian density approximation method.
In the beginning, reliability of eight virtual channels are compared under different values of signal to noise ratio (SNR). Fig. 6 shows the reliability of eight polarizing channels using SNR -2, -1, 0, 1, 2 and 3. It also worth nothing that the classification of the eight polarizing channels by reliability remains the same when SNR changes.    Fig. 7 shows also the classification of eight polarizing channels according to their reliability where SNR = 3, 4 and 5. It is clear from Fig. 7 that the classification of polarizing channels remains the same when SNR changes. Next, to evaluate the effect of code length in the classification of virtual channels by reliability, the simulation examines the classification of reliability for the virtual channels when the code length is equal to 32.
The simulation in Fig. 8 shows the classification of 32 polarized channels reliability where the SNR changes from 1 to 5. From the last figure, the classification of channels by reabilities remains the same when the SNR changes.    The Table II generalizes the simulation of Fig. 9 by presenting the classification of virtual channels by reliability for several code lengths (N=2, 4,8,16) where the SNR=2. For ease of analysis, each channel index is characterized by the same color in each code length. The table shows that the classification is the same when the length of the code changes.
Mathematically the purposed procedure to construct polar codes with low complexity well be described below in algorithm 1. This algorithm uses linear search where every element in a reliability vector is checked, starting at 0 and going through each element until the desired element is found. Otherwise, the search continues until the end of the list. The latest algorithm uses linear search where each item in a list is checked, starting at 0 and going through each item until the desired item is found. Otherwise, the search continues until the end of the list. There is no better search algorithm. The complexity of the newly developed build algorithm is the same as the complexity of the search algorithm, which is O(N).
To better understand the algorithm designed, let's take an example of building polar codes, assumes that Gaussian density was adopted firstly to construct polar codes. The new purposed algorithm for constructing polar codes can be applied here by storing in a particular vector (R), the classification of virtual channels by reliability from the least reliable to the most reliable. Next the reliability calculation for each virtual channel will not be done in the next polar code construction, there is a need to select the most reliable channels of the R vector with an index less than the length of the new polar codes.

V. CONCLUSION
The previous approaches of polar codes construction require one to one compute of the reliability for all synthetic channels and use only those that are sufficiently reliable [2]. For the gain in complexity and resources, it is worthwhile to perform an optimized construction polar codes algorithm. the proposed method decreases the computation complexity in the construction of Polar Codes. Clearly, the complexity is reduced to O(N). Note that when using this optimized construction approach, extra memory is allocated to store the vector of reliability.
The memory ressources play a crucial part in the outcome of this study, these limitations do have a significant impact on the primary finding, future research could seek to reduce memory's impact by choosing the best value of the vector reliability length for every application.