Design and Optimization of Linking Matrix for a JSCC System Based on DP-LDPC Codes

Although extensive optimization of encoding and decoding schemes for joint source-channel coding (JSCC) systems has been conducted, efficient optimization schemes are still required for designing and optimizing the linking matrix between variable nodes of the source code and check nodes of the channel code. A scheme has been proposed for design and optimization of linking matrix with multi-edges by analyzing the performance of the JSCC system using the joint protograph extrinsic information transfer algorithm to calculate decoding thresholds. The proposed scheme incorporates structural constraints and is effective in designing and optimizing the multi-edges in linking matrix for the JSCC system. Experimental results have demonstrated that the designed and optimized linking matrix significantly improves the performance of the JSCC system. Furthermore, the proposed scheme reduces the complexity of the solution space for the optimized example.


Introduction
Shannon introduced a channel code that ensures reliable communication, provided that the information rate of the code is below the channel capacity [1]. However, the application of Shannon theory in separate source-channel optimization imposes limitations on the performance of practical digital communication systems [2][3][4]. This results in elevated decoding errors due to the underutilization of residual redundancy present at the output of the source decoder [5]. Moreover, the source-channel separation scheme, which involves sequential source decoding and channel decoding operations without the exchange of extrinsic information, leads to a degradation in performance [6].
The joint source-channel coding (JSCC) system solves the drawbacks of the standard source-channel separation coding system described above [5,6]. In order to improve the performance of the JSCC system, a technique called joint protograph extrinsic information transfer (JPEXIT) chart has been used in conjunction with two tandem protograph low-density parity-check (LDPC) codes [7,8]. Two tandem protograph LDPC codes in combination can facilitate hardware implementation in a structure that is also referred to as double protograph LDPC (DP-LDPC) codes [9,10]. Another JSCC method based on concatenated spatially coupled low-density parity-check codes has also been proposed [11]. A study has investigated the relationship between the check nodes (CNs) of the source and the variable nodes (VNs) of the channel [12]. The performance of the JSCC system has been enhanced through the utilization of a multi-objective optimization technique that considers the optimization of single-edge in linking matrix [13]. Through an analysis of the linking matrix between VNs in the source code and CNs in the channel code (i.e., B L2 ), it has been confirmed that multi-edges in linking matrix provide a significant improvement to the performance of the JSCC system compared to single-edge in linking matrix [14][15][16][17]. Although it has been demonstrated that the presence of linking matrix with multi-edges can effectively improve the performance of JSCC systems, existing design and optimization schemes have only utilized partially multi-edges in linking matrix and lack an effective optimization scheme.
The main contributions of this paper are as follows. The effect of the linking matrix on the performance of JSCC systems is analyzed by calculating the decoding threshold through the joint protograph extrinsic information transfer algorithm. A scheme with structural constraints has been proposed for designing and optimizing linking matrix with multi-edges. The proposed optimization scheme for the linking matrix effectively improves the performance of the JSCC system while reducing the complexity of the search space.
The organizational structure of this paper is as follows: Section 2 provides a detailed introduction to the JSCC system. Section 3 presents a scheme for the design and optimization of linking matrix. Section 4 presents the experimental results and the summary. Finally, the conclusions of the experiments in this paper are given.

JSCC System Description
JSCC system employs a combination of source and channel codes to compress data and ensure reliable transmission. The system utilizes double LDPC codes, with DP-LDPC codes optimizing the performance of the waterfall and error floor [14]. The JSCC matrix representation is defined as (1).
where B J has a dimension of (m s + m c ) · (n s + n c ), the source code matrix B S has a dimension of m s · n s , the channel code matrix B C has a dimension of m c · n c , the B L1 has a dimension of m s · n c , and the B L2 has a dimension of m c · n s . The Tanner graph represented by the joint base matrix B J is depicted in Figure 1. The figure contains eight types of mutual information.

Encoder
The given source sequence is assumed to be independently and identically distributed according to a binomial Bernoulli distribution with probability p, where p (p = 1/2) represents the probability of a '1' occurring. The entropy of the source can be calculated using the formula: Two tandem LDPC codes are used to represent the JSCC system.
where pt is the source output, o is the source compressed sequence, G LC ((n c + l − m c )· (n c + l)) (the quantities within the parentheses denote the dimensions or sizes of the matrices) is the generation matrix obtained from the algebraic transformation of the check matrix H LC (m c · (n c + l)), and l is the number of columns in B L2 that contain non-zero elements. The two tandem codes are under the following condition

Decoder
Simulation of binary sequence under additive white Gaussian noise (AWGN) channel after binary phase-shift keying (BPSK) modulation. The joint belief propagation (JBP) algorithm uses the sequence on the receiver side to recover the sequence on the sender side. The initial source information J SL is given by ln((1 − p)/p). The initial channel information is J CL = 2y/σ 2 , where y = (1 − 2s i ) + n G , and n G ∼ 0, σ 2 is Gaussian noise.

JEXIT Analysis
To analyze the effect of B L2 on the performance of JSCC system, the source code, the channel code, and B L1 are fixed. The e i,j L2 term in (5) indicates the presence of a link between the j-th VN of the source code and the i-th CN of the channel code. The joint base matrix in Equation (6) is composed of the source matrix B S , the channel matrix B C , B L1 and B L2 . The decoding threshold is −0.568 dB when B L2 is an all-zero matrix. As the weight of an element in B L2 increases, the decoding threshold variation is depicted in Figure 2. The decoding threshold decreases as the weight of the element increases, and reaches a minimum when the weight increases to 21. After that, the decoding threshold increases as the weight of the element increases.
The decoding thresholds of different elements in B L2 are listed in Table 1 when all elements have a weight of 5. From Table 1, it can be concluded that the addition of edge connections in B L2 may not necessarily enhance the waterfall region of the JSCC system. In actuality, adding elements to the linking matrix may lead to the degradation of the system performance. The analysis also reveals that the third row of B L2 is a critical area where adding edge connections may cause performance degradation. Therefore, to simplify the solution space and optimize the performance of JSCC system, it is advisable to avoid adding edge connections in the third row of B L2 .

Degree
Threshold Degree Threshold Degree Threshold

Design and Optimization
The following structural constraints need to be satisfied for the design and optimization of the linking matrix: where the number of non-zero elements in the row is EW r , the number of columns in the matrix is n s , and the probability of non-zero elements in a specific row of the matrix is E p .
Condition 2 : where the number of non-zero elements in the matrix is EW D , the dimension of the matrix is D, and the probability of non-zero elements in the matrix is ED p .
Condition 3 : where the weight of the i-th element in the row is RW i and the maximum value of the row weight is RW max .
Condition 4 : where the weight of the j-th element in the column is CW j and the maximum value of the column weight is CW max .
where the weight of the element in the matrix is W i,j and the maximum value of non-zero element is W max . The objective function of the differential evolution algorithm is formulated as where ψ(B J ) denotes the joint source-channel decoding threshold and Ω(B J ) = 1 indicates that conditions 1-5 are satisfied. Required algorithm parameters: 1.
Number of population P.

2.
Dimension D of the linking matrix B L2 (i.e., the product of the number of rows and the number of columns) and the maximal value W max of a single element in B L2 . 3.
The maximum number of generations G.
Non-zero element probability Ep.
Differential evolution algorithm is described as follows: Step 1: Constructing a population P of dimension D, the number of elements of D is m c · n s . The value of each element is less than or equal to W max . Construct the population P repeatedly until each individual in the population satisfies conditions 1-5; Step 2: The mutation produces the next generation under the following condition In Equation (13), r1, r2, r3 are arbitrary values in [1, P], where [1, P] represents all individuals in the population of the differential evolution algorithm. B are rounded to integers, and F is the scaling factor; Step 3: According to the probability p c , crossover BM g+1 i , and the previous B g i : In Equation (14), rand (0, 1) represents a randomly generated number between 0 and 1. This random number is used in the context of the crossover operation within the differential evolution algorithm. If the generated random number is less than the crossover probability p c , the mutated individual is selected; otherwise, the parent individual is chosen for the crossover operation.
Step 4: Calculate the decoding threshold for every B g+1 i , then select the decoding threshold that satisfies the requirements; Step 5: Return to Step 2 until the calculation of the Gth generation is completed, and the optimal decoding threshold is given.
The corresponding pseudocode of the algorithm is presented in Algorithm 1.

Algorithm 1
Design and optimization of B L2 by differential evolution algorithm. g is initialized before its first use in the algorithm. This initialization ensures that g accurately records the generation count in the differential evolution process. The mutation function refers to the process described in Step 2 of the differential evolution algorithm.

24:
Three individuals are randomly selected from the population, and the scaling factor is taken. The crossover function refers to the process described in Step 3 of the differential evolution algorithm.

Results and Summary
The experiments in this paper were simulated under the AWGN channel. The source code and channel code were obtained via 'copy and permute' from a progressive edgegrowth (PEG) algorithm [18]. Simulation results were obtained by BPSK modulation and JBP iterative decoding. The maximum number of iterations was 100 and the maximum number of frames with errors was 100 for all the signal-to-noise ratios (SNRs). In Figures 3-5, the source with p = 0.02 is used, whereas in Figure 6, the source with p = 0.04 is used. The value of W max is set to 5 in order to reduce the space complexity of the differential evolution algorithm, which is O(P · D · G).
The study focuses on finding the ideal scheme with few calculations or approximating the ideal scheme at the minimum cost while constructing B L2 , because B L2 has a unique effect on the performance of JSCC systems. B OPT L2 is designed and optimized by differential evolution algorithm. Because the edge connections of the third row in B OPT L2 may cause the performance degradation of the JSCC system, the elements of the third row are preset to zero. Non-zero elements with different probabilities are added to the first and second row of B L2 . The decoding threshold values corresponding to the probability of non-zero elements are depicted in Figure 7. When adding elements to a row with a probability of 0.875, it is necessary to ensure that the percentage of non-zero elements in at least one row of the matrix is at least 0.875, i.e., the percentage of elements in other rows is less than or equal to 0.875. The decoding threshold for this probability is −0.935 dB and the corresponding linking matrix is given by Equation (15). It is not the case that the more edges in linking matrix, the better the performance of the JSCC system.  A simulation performance comparison between JSCC and separate source-channel coding is presented in Figure 3. At a BER of 10 −5 , the JSCC system demonstrates a gain of 1.96 dB compared to its separate scheme. In order to improve the performance of the JSCC system, the maximum probability of non-zero elements in each row of B L2 is 75 percent. The maximum number of the bits in a frame is 6400, i.e., the maximum length of the source sequence is 6400. The optimized matrix is in Equation (16). The decoding threshold value of B OPT J(0.75) is −1.126 dB, whereas the unoptimized linking matrix decoding threshold value is −0.568 dB. Thus, it yields a gain of 0.558 dB. Equation (16) gives that if there are too many non-zero elements in any row, it is necessary to reduce the number of non-zero elements in other rows to increase the overall system performance. Figure 4 shows BER performance comparison of unoptimized linking matrix, optimized B OPT J(0.75) , and optimized B OPT J(0.875) . At a BER level of 10 −6 , there has an approximately 0.69 dB gain between unoptimized linking matrix and optimized B OPT J(0.75) . The performance of the optimized matrix B OPT J(0.875) gives to an about 0.45 dB gain.
To demonstrate the performance degradation of the waterfall region in JSCC system, the linking matrix with a decoding threshold of 0.338 dB in Table 1 was selected for the simulation experiment. Figure 5 presents a comparison of BER values between all-zero elements and non-zero elements in the third row. The simulation results indicate that adding unnecessary elements in the third row leads to performance degradation of the JSCC system. It is mainly because of the unnecessary non-zero elements, i.e., adding unnecessary edge connections, which disrupt the transmission of mutual information.
The proposed scheme for design and optimization of linking matrix is further verified. We have optimized the code pair B 0.04 J-new 1 in [17] when the probability of non-zero elements is 0.75. Figure 6 shows the BER performance of [17] and the optimized scheme. When the BER is 10 −6 , there is an approximate 0.22 dB gain between the proposed optimization scheme and that presented in [17]. This comparison experiment results verify the effectiveness of the proposed scheme for optimizing B L2 .

Conclusions
This paper discusses the impact of the linking matrix structure on the waterfall region of the JSCC system. Linking matrix with multi-edges can significantly improve the performance of a JSCC system, as compared to linking matrix with single-edge. However, effective principles are necessary for designing and optimizing linking matrix with multiedges. An effective scheme for designing and optimizing linking matrix with multi-edges has been proposed based on the analysis of decoding thresholds. The proposed scheme achieves cost-effective design and optimization of the linking matrix and improves the performance of the JSCC system. Furthermore, JSCC exhibits brittleness, as it is optimized for particular combinations of source and channel coding and thus requires a redesign if either is changed.