A low-complexity high-short-code performance rateless coding design method and system
Patent Information
- Application Number
- CN202311486966.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-08
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-11-08
AI Technical Summary
[0013]有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何克服通信网络中现有度分布的编译码复杂度会随着信源符号数量增加而呈现指数级增加的现象以及现有度分布在短码区间编译码性能差的问题
[0100]传统的度分布在应用的时候,其平均度值会随着信源符号数量的增加而增加,造成无速率编码的编译码复杂度会随着信源符号数量的增加呈指数级增长,进而导致信源符号的数量较多时编译码复杂度较高,并且传统度分布在未针对度值1进行专门优化,导致信源符号数量较少时,其初始可译集较小,容易造成译码失败。
Smart Images

Figure CN117478275B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of encoding and decoding in communications, and in particular to a low-complexity, high-short-code-performance rateless coding design method and system. Background Technology
[0002] In communication networks, rateless coding, as a high-performance erasure coding method, has been widely studied and applied. By encoding finite-length source symbols, rateless coding yields infinitely long encoded symbols, and the receiver only needs to receive a sufficient number of encoded symbols to complete decoding. Compared to traditional fixed-rate channel coding methods, the transmission rate of rateless coding can adaptively change according to channel conditions.
[0003] Rateless coding is a process where the source symbol SC = {s} i |i = 1, 2, ..., k} generates a checksum symbol EC = {e} using XOR encoding. i |i=1, 2, 3, ..., n}. During the encoding process, the encoder randomly selects d source symbols for XOR encoding, where the degree value d is generated by the degree distribution function Ω(x). Therefore, the degree distribution function has a crucial impact on the performance of rateless coding. Theoretical analysis shows that the complexity of encoding is related to the average degree value of the check symbols. The complexity is related to the number of source symbols, k, where the encoding complexity is linearly related to k. When using the Belief Propagation (BP) decoding algorithm, the decoding complexity is:
[0004]
[0005] Where L is the number of BP decoding iterations and R is the decoding overhead, it can be concluded that the complexity of the decoder is exponentially related to the average degree value of the check nodes. However, commonly used existing degree distributions, such as the Robust Soliton Distribution (RSD), Poisson Robust Soliton Distribution (PRSD), and the Modified Robust Soliton Distribution (MRSD), have average degree values... Both the number of source symbols (k) and the complexity of encoding / decoding increase exponentially with the number of source symbols (k). Therefore, a large number of source symbols can severely impact encoding / decoding performance.
[0006] When constructing the degree distribution, a common method is to design the degree distribution by optimizing the size of the ideal translatable set of the degree distribution function. The translatable set refers to the set of coded symbols with a degree value of 1 that exist during the decoding process; these coded symbols are connected to source symbols that have been decoded but not yet released. The size of the ideal translatable set is a function of the degree distribution and, to some extent, represents the relationship between the decoding failure probability and the degree distribution. Its calculation method is as follows:
[0007]
[0008] in,
[0009]
[0010]
[0011] O(1) is an infinitesimal, ρ is the number of source symbols that have been successfully recovered, and ε is the decoding overhead. Because the ideal translatable set size of the existing common degree distribution fluctuates significantly during the decoding process, it can easily lead to BP decoding aborts, resulting in decoding failure. Furthermore, it does not specifically optimize for degree value 1, resulting in a small initial translatable set, which can easily cause BP decoding to fail to start successfully, leading to a high decoding failure rate and bit error rate.
[0012] Therefore, those skilled in the art are dedicated to developing a new rateless coding design method and system to solve the aforementioned problems in the prior art. Summary of the Invention
[0013] In view of the above-mentioned deficiencies of the prior art, the technical problem to be solved by the present invention is how to overcome the phenomenon that the encoding and decoding complexity of the existing degree distribution in the communication network increases exponentially with the increase of the number of source symbols, and the problem that the encoding and decoding performance of the existing degree distribution in the short code interval is poor.
[0014] To achieve the above objectives, this invention provides a low-complexity, high-short-code-performance rateless coding design method, comprising the following steps:
[0015] Step 1: Select several specific degree values, set the selection probability corresponding to each specific degree value, and represent it using the generator polynomial Ω(x):
[0016]
[0017] Where d is the number of the specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to the specific degree value numbered d, and Average degree and Keep the value constant; x d It is the d-th specific degree value;
[0018] Step 2: Add the number of source symbols k as an influence factor to the selection probability of the different specific degree values to obtain the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution:
[0019]
[0020] Wherein, the influence factor is represented by ω=ω(k), τ d The coefficients of the influence factor ω corresponding to the different specific degree values d;
[0021] Step 3: Apply the degree distribution to rateless coding, randomly select source symbols and perform XOR coding to generate coded symbols;
[0022] Step 4: Buffer the encoded symbols at the encoding end until the number of encoded symbols reaches a predetermined amount, and then transmit the encoded symbols to the receiving end;
[0023] Step 5: After receiving a set number of the encoded symbols, the receiving end uses a given decoding algorithm to decode them and recover the source symbols.
[0024] Furthermore, step 2 includes the following sub-steps:
[0025] Step 2.1: Calculate the size, mean, and variance of the ideal translatable set corresponding to the degree distribution, and transform the ideal translatable set into an optimization objective function;
[0026] Step 2.2: Calculate the constraints of the objective function and construct a convex optimization model;
[0027] Step 2.3: Solve the convex optimization model using nonlinear programming to obtain the optimal result, i.e., determine Ω. CCAD τ in (x) d .
[0028] Further, step 2.1 includes the following sub-steps:
[0029] Step 2.1.1: Calculate the size of the ideal translatable set, denoted as R. Ω-CADD (ρ), where ρ is the number of source symbols that have been successfully recovered;
[0030] Step 2.1.2: Calculate the average value A of the ideal translatable set:
[0031]
[0032] Where k is the number of source symbols;
[0033] Step 2.1.3: Calculate the variance V of the ideal translatable set:
[0034]
[0035] Step 2.1.4: Summarize the mean A and the variance V into the following objective function (τ), the design objective of which is to increase the mean A and decrease the variance V:
[0036] (τ)=A-λV
[0037] The ideal translatable set is transformed into maximizing (τ), where τ = {τ1, τ2, ..., τ}. 10}, where λ is a non-negative constant and its range is [0, 1].
[0038] Furthermore, step 2.2 includes the following sub-steps:
[0039] Step 2.2.1: The size of the ideal translatable set must be greater than or equal to... Therefore, the constraints of the objective function are:
[0040]
[0041] Where ε is the decoding overhead, and c is a constant greater than 0;
[0042] Step 2.2.2: Limit the number of check symbols with a repetition value of 1 in the ideal translatable set to reduce unnecessary overhead.
[0043]
[0044] Where α is a non-negative constant; r is the number of source symbols that are connected at least once; m is the number of coded symbols with a degree value of 1 in the ideal translatable set; q is the number of repeated coded symbols with a degree value of 1 in the ideal translatable set; n is the number of source symbols connected to the m coded symbols with a degree value of 1; i is an enumeration value from 0 to r-1; T is the number of combinations of the m coded symbols with a degree value of 1 connected to the r source symbols at least once; and Ω1 is the selection probability corresponding to the degree value of 1.
[0045] Step 2.2.3: Ensure that the sum of the selection probabilities F(τ) corresponding to the specific degree value is 1, that is:
[0046]
[0047] Furthermore, step 2.2 also includes the following sub-steps:
[0048] Step 2.2.4: The selection probability H(τ) corresponding to each specific degree value is greater than 0.
[0049] H(τ) = --τω-Ω < 0
[0050] Among them, Ω=[Ω1,Ω2,...,Ω dmax ];
[0051] Step 2.2.5: Increase the probability of selecting degree value 1 by setting τ1 to be greater than or equal to 0, that is: τ1≥0.
[0052] Furthermore, step 2.2 also includes the following sub-steps:
[0053] Step 2.2.6: Construct the convex optimization model:
[0054] max(τ)=A-λV
[0055]
[0056]
[0057]
[0058] Furthermore, step 2.3 includes the following sub-steps:
[0059] Step 2.3.1: Rewrite the convex optimization model as follows:
[0060] min Z(τ)=-(τ)=-M(τ)+λV(τ)
[0061]
[0062]
[0063] H(τ)=-τω-Ω<0
[0064] R(τ) = [-τ₁, 0, ..., 0] T <0
[0065] Step 2.3.2: Write down the Lagrangian function corresponding to the convex optimization model:
[0066] a(τ,c,f,g,q,,r)=Z(τ)-cC(τ)-fF(τ)-gG(τ)-qQ(τ)-H(τ)-rR(τ)
[0067] Where the Lagrange multipliers are c = [c1, c2, ..., c...] k ], f, g, q, = [1, 2, ..., 10], r.
[0068] Furthermore, step 2.3 also includes the following sub-steps:
[0069] Step 2.3.3: Calculate the Karush-Kuhn-Tucker (KKT) conditions corresponding to the Lagrangian function:
[0070] C(τ)<0 c T >0 cC(τ)=0
[0071] F(τ)=0 G(τ)=0
[0072] Q(τ)<0 q>0 qQ(τ)=0
[0073] H(τ)<0 h T >0 hC(τ)=0
[0074] R(τ)<0 r>0 rR(τ)=0.
[0075] Furthermore, step 2.3 also includes the following sub-steps:
[0076] Step 2.3.4: Derive the constrained optimization subproblem as follows:
[0077]
[0078] Where j is the iteration number;
[0079] The constrained optimization subproblem described above is solved iteratively to obtain Δ*, which is then substituted into the following iterative expression:
[0080] τ (j+1) =τ (j) +Δτ (j)
[0081] c (j+1) =c (j) +Δc (j)
[0082] f (j+1) =f (j) +Δf (j)
[0083] g (j+1) =g (j) +Δg (j)
[0084] q (j+1) =q (j) +Δq (j)
[0085] h (j+1) =h (j) +Δh (j)
[0086] r (j+1) =r (j) +Δr (j)
[0087] Until Z(τ) (j+1) )>Z(τ (j) When the iteration ends, the optimal solution is obtained.
[0088] This invention also provides a low-complexity, high-short-code-performance rateless coding design system, the system comprising:
[0089] An initial degree value selection module selects several specific degree values, sets the selection probability corresponding to each specific degree value, and represents it using a generator polynomial Ω(x):
[0090]
[0091] Where d is the number of the specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to the specific degree value numbered d, and Average degree and Keep the value constant; x d It is the d-th specific degree value;
[0092] The degree distribution calculation module, connected to the initial degree value selection module, adds the number of source symbols k as an influence factor to the selection probability of different specific degree values, thus obtaining the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution:
[0093]
[0094] Wherein, the influence factor is represented by ω=ω(k), τ d The coefficients of the influence factor ω corresponding to the different specific degree values d;
[0095] The encoding module is connected to the degree distribution calculation module, which applies the degree distribution to rateless coding and randomly selects source symbols for XOR coding to generate encoded symbols.
[0096] A buffered transmission module is connected to the encoding module, which buffers the encoded symbols at the encoding end until the number of encoded symbols reaches a predetermined amount, and then transmits the encoded symbols to the receiving end.
[0097] The decoding module is connected to the buffered sending module. After receiving a set number of encoded symbols, the receiving end uses a given decoding algorithm to decode them and recover the source symbols.
[0098] The degree distribution calculation module also includes the aforementioned low-complexity, high-short-code-performance rateless coding method.
[0099] The rateless coding design method and system with low complexity and high short code performance provided by this invention have at least the following technical advantages:
[0100] When traditional degree distribution is applied, the average degree value increases with the number of source symbols. This causes the encoding and decoding complexity of rateless coding to increase exponentially with the number of source symbols. Consequently, the encoding and decoding complexity is high when the number of source symbols is large. Furthermore, traditional degree distribution does not specifically optimize for the degree value of 1, resulting in a small initial decodable set when the number of source symbols is small, which can easily lead to decoding failure.
[0101] The technical solution provided by this invention introduces the number of source symbols as an influencing factor into the selection probability of the degree value, proposing a degree distribution with a constant average degree value, so that the encoding and decoding complexity does not increase exponentially with the number of source symbols. Compared with existing degree distributions, the degree distribution derived by the technical solution provided by this invention has lower encoding and decoding complexity. Simultaneously, the degree distribution is optimized from the perspective of the ideal translatable set size, specifically optimizing for the degree value 1. A convex optimization model is constructed, and the optimal solution is obtained using nonlinear programming, resulting in a degree distribution that performs well when the number of source symbols is small.
[0102] The following will further explain the concept, specific structure, and technical effects of the present invention in conjunction with the accompanying drawings, so as to fully understand the purpose, features, and effects of the present invention. Attached Figure Description
[0103] Figure 1 This is a schematic diagram of the system structure of a preferred embodiment of the present invention;
[0104] Figure 2 yes Figure 1 The flowchart of the degree distribution calculation module in the illustrated embodiment. Detailed Implementation
[0105] The following description, with reference to the accompanying drawings, illustrates several preferred embodiments of the present invention to make its technical content clearer and easier to understand. The present invention can be embodied in many different forms, and the scope of protection of the present invention is not limited to the embodiments mentioned herein.
[0106] Example 1
[0107] Figure 1 This is a schematic diagram of the structure of a low-complexity, high-short-code-performance rateless coding system, which includes:
[0108] The initial degree value selection module selects several specific degree values, sets the selection probability for each specific degree value, and represents it using a generator polynomial Ω(x).
[0109]
[0110] Where d is the number of a specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to a specific degree value with the number d, and Average degree and Keep the value constant; x d It is the d-th specific degree value;
[0111] The degree distribution calculation module, connected to the initial degree value selection module, adds the number of source symbols k as an influence factor to the selection probability of different specific degree values, resulting in the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution:
[0112]
[0113] Wherein, the impact factor is represented by ω=ω(k), τ d These are the coefficients of the influence factor ω corresponding to different specific degree values d;
[0114] By setting This ensures that its average degree value does not increase as k increases.
[0115] The ideal degree distribution is then designed by increasing the average value of the ideal translatable set, reducing the variance of the ideal translatable set, and limiting the number of check symbols with a repetition value of 1 in the translatable set. In this embodiment, the above constraints are transformed into the corresponding convex optimization model, and the quadratic programming method is introduced to obtain the optimization result.
[0116] The encoding module connects to the degree distribution calculation module, applies the degree distribution to rateless coding, and randomly selects source symbols for XOR encoding to generate encoded symbols.
[0117] The buffer sending module is connected to the encoding module. It buffers the encoded symbols at the encoding end until the number of encoded symbols reaches a predetermined amount, and then transmits the encoded symbols to the receiving end.
[0118] The decoding module is connected to the buffered sending module. After the receiving end receives a set number of encoded symbols, it uses a given decoding algorithm to decode them and recover the source symbols.
[0119] Example 2
[0120] This invention also provides a low-complexity, high-short-code-performance rateless coding design method, comprising the following steps:
[0121] Step 1: Select several specific degree values, set the selection probability corresponding to each specific degree value, and represent it using the generator polynomial Ω(x):
[0122]
[0123] Where d is the number of a specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to a specific degree value with the number d, and Average degree and Keep the value constant; x d It is the d-th specific degree value;
[0124] Step 2: Add the number of source symbols k as an influence factor to the selection probability of different specific degree values to obtain the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution:
[0125]
[0126] Wherein, the impact factor is represented by ω=ω(k), τ d These are the coefficients of the influence factor ω corresponding to different specific degree values d;
[0127] Step 3: Apply the degree distribution to rateless coding, randomly select source symbols and perform XOR coding to generate coded symbols;
[0128] Step 4: Buffer the encoded symbols at the encoding end until the number of encoded symbols reaches the predetermined number, and then transmit the encoded symbols to the receiving end.
[0129] Step 5: After receiving the set number of encoded symbols, the receiving end uses the given decoding algorithm to decode them and recover the source symbols.
[0130] Specifically, step 2 includes the following sub-steps:
[0131] Step 2.1: Calculate the size, mean, and variance of the ideal translatable set corresponding to the degree distribution, and transform the ideal translatable set into the objective function for optimization;
[0132] Step 2.2: Calculate the constraints of the objective function and construct a convex optimization model;
[0133] Step 2.3: Solve the convex optimization model using nonlinear programming to obtain the optimal result, i.e., determine Ω. CCAD τ in (x) d .
[0134] Specifically, step 2.1 includes the following sub-steps:
[0135] Step 2.1.1: Calculate the size of the ideal translatable set, denoted as R. Ω-CADD (ρ), where ρ is the number of source symbols that have been successfully recovered;
[0136] Step 2.1.2: Calculate the average value A of the ideal translatable set:
[0137]
[0138] Where k is the number of source symbols;
[0139] Step 2.1.3: Calculate the variance V of the ideal translatable set:
[0140]
[0141] Step 2.1.4: Summarize the mean A and the variance V into the following objective function (τ), the design objective of which is to increase the mean A and decrease the variance V:
[0142] (τ)=A-λV
[0143] The ideal translatable set is transformed into maximizing (τ), where τ = {τ1, τ2, ..., τ}. 10}, where λ is a non-negative constant and its range is [0, 1].
[0144] Specifically, step 2.2 includes the following sub-steps:
[0145] Step 2.2.1: The size of the ideal translatable set must be greater than or equal to... Therefore, the constraints of the objective function are:
[0146]
[0147] Where ε is the decoding overhead, and c is a constant greater than 0;
[0148] Step 2.2.2: Limit the number of check symbols with a repetition value of 1 in the ideal translatable set to reduce unnecessary overhead.
[0149]
[0150] Where α is a non-negative constant; r is the number of source symbols that are connected at least once; m is the number of coded symbols with a degree value of 1 in the ideal translatable set; q is the number of repeated coded symbols with a degree value of 1 in the ideal translatable set; n is the number of source symbols connected to the m coded symbols with a degree value of 1; i is an enumeration value from 0 to r-1; T is the number of combinations of the m coded symbols with a degree value of 1 connected to the r source symbols at least once; and Ω1 is the selection probability corresponding to the degree value of 1.
[0151] Step 2.2.3: Ensure that the sum of the selection probabilities F(τ) corresponding to the specific degree value is 1, that is:
[0152]
[0153] Step 2.2.4: The selection probability H(τ) corresponding to each specific degree value is greater than 0.
[0154] H(τ)=-τω-Ω<0
[0155] Among them, Ω=[Ω1,Ω2,...,Ω dmax ];
[0156] Step 2.2.5: Increase the probability of selecting degree value 1 by setting τ1 to be greater than or equal to 0, that is: τ1≥0.
[0157] Step 2.2.6: Construct the convex optimization model:
[0158] max(τ)=A-λV
[0159]
[0160]
[0161]
[0162] Specifically, taking the sequential quadratic programming method as an example, step 2.3 includes the following sub-steps:
[0163] Step 2.3.1: Rewrite the convex optimization model as follows:
[0164] min Z(τ)=-(τ)=-M(τ)+λV(τ)
[0165]
[0166]
[0167] H(τ)=τω-Ω<0
[0168] R(τ) = [-τ₁, 0, ..., 0] T <0
[0169] Step 2.3.2: Write down the Lagrangian function corresponding to the convex optimization model:
[0170] L(τ,c,f,g,q,,r)=Z(τ)-cC(τ)-fF(τ)-gG(τ)-qQ(τ)-H(τ)-rR(τ)
[0171] Where the Lagrange multipliers are c = [c1, c2, ..., c...] k f, g, q, = [1, 2, ..., 10], r. Step 2.3.3: Calculate the Karush-Kuhn-Tucker (KKT) conditions corresponding to the Lagrangian function:
[0172] C(τ)<0 c T >0 cC(τ)=0
[0173] F(τ)=0 G(τ)=0
[0174] Q(τ)<0 q>0 qQ(τ)=0
[0175] H(τ)<0 h T >0hC(τ)=0
[0176] R(τ)<0 r>0 rR(τ)=0.
[0177] Step 2.3.4: Derive the constrained optimization subproblem as follows:
[0178]
[0179] Where j is the iteration number;
[0180] The constrained optimization subproblem described above is solved iteratively to obtain Δ*, which is then substituted into the following iterative expression:
[0181] τ (j+1) =τ (j) +Δτ (j)
[0182] c (j+1) =c (j) +Δc (j)
[0183] f (j+1) =f (j) +Δf (j)
[0184] g (j+1) =g (j) +Δg(j)
[0185] q (j+1) =q (j) +Δq (j)
[0186] h (j+1) =h (j) +Δh (j)
[0187] r (j+1) =r (j) +Δr (j)
[0188] Until Z(τ) (j+1) )>Z(τ (j) When the iteration ends, the optimal solution is obtained.
[0189] Example 3
[0190] In this embodiment, it is assumed that two terminals need to transmit a segment of information with a source symbol count k = 100, and two other terminals need to transmit a segment of information with a source symbol count k = 500. The two terminals use LT codes from rateless coding and operate in the same communication environment.
[0191] Specifically, the following steps are included:
[0192] In the initial degree value selection module, several specific degree values are selected, and their corresponding selection probabilities are set. The generator polynomial Ω(x) is expressed as:
[0193]
[0194] Where d is the number of a specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to a specific degree value with the number d, and Average degree and Keep the value constant; x d It is the d-th specific degree value;
[0195] This embodiment takes a fixed degree distribution as an example:
[0196]
[0197] In the degree distribution calculation module, the number of source symbols k is added as an influence factor to the selection probability of different degree values. In this embodiment, it is used as... For example, we obtain the generating polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution:
[0198]
[0199] Where, τ d The coefficients of the influence factor ω corresponding to the different specific degree values d are respectively.
[0200] Specifically, such as Figure 2 As shown, the degree distribution Ω CCAD The calculation process for (x) is as follows:
[0201] Step 1: Calculate the size of the ideal translatable set corresponding to the degree distribution at this time, and calculate the mean and variance of the ideal translatable set, and transform them into the objective function for optimization.
[0202] Specifically, step one includes the following sub-steps:
[0203] Sub-step 1: Calculate the size of the ideal translatable set corresponding to the degree distribution at this time as follows:
[0204]
[0205] in,
[0206]
[0207]
[0208] Where O(1) is an infinitesimal, ρ is the number of source symbols that have been successfully recovered, ε is the decoding overhead, and k is the number of source symbols.
[0209] Sub-step 2: Calculate the average value of the ideal translatable set at this point:
[0210]
[0211] Sub-step 3: Calculate the variance of the ideal translatable set at this point:
[0212]
[0213] Sub-step 4: The design objective is to increase the mean and decrease the variance. Therefore, the mean A and variance V are summarized as the following objective function:
[0214] (τ)=A-λV
[0215] The optimization objective can be transformed into maximizing (τ), where τ = {τ1, τ2, ..., τ}. 10 Let λ be a non-negative constant ranging from [0, 1]. From the formula above, we can see that when λ = 0, the objective function is simplified to finding the maximum value of the mean A. As λ increases, the tolerance for variance V gradually decreases. In summary, λ should be a suitable constant value between 0 and 1.
[0216] Step 2: Calculate the constraints and construct a convex optimization model.
[0217] Specifically, step two includes the following sub-steps:
[0218] Sub-step 1: Limit the minimum size of the translatable set:
[0219] The ideal translatable set must be greater than or equal to the size of the set. Therefore, the following constraints can be obtained:
[0220]
[0221] Sub-step 2: Limit the number of check symbols with a repeatability value of 1 in the translatable set to reduce unnecessary overhead.
[0222]
[0223] Sub-step 3: It is necessary to ensure that the sum of the selection probabilities corresponding to different degree values is 1.
[0224]
[0225] Sub-step 4: The selection probability corresponding to each degree value should be greater than 0.
[0226] H(τ)=-τω-Ω<0
[0227] Where Ω=[Ω1,Ω2,...,Ω d max ].
[0228] Sub-step 5: To address the issue of a small initial translatable set when the number of source symbols is small with traditional degree distribution, the probability of selecting a degree value of 1 is increased, i.e.:
[0229] τ1≥0
[0230] Sub-step 6: Based on the above constraints, construct a convex optimization model.
[0231] max m Z(τ)=A-λV
[0232]
[0233]
[0234] -Ω i ≤τ i ω
[0235] τ1≥0
[0236] Step 3: Use nonlinear programming to find the optimal result. Here, we will use sequential quadratic programming as an example.
[0237] Specifically, step three includes the following sub-steps:
[0238] Sub-step 1: Rewrite the convex optimization model as follows
[0239]
[0240]
[0241]
[0242] H(τ)=-τω-Ω<0
[0243] R(τ) = [-τ₁, 0, ..., 0] T <0
[0244] Sub-step 2: Write out its corresponding Lagrange function:
[0245] L(τ,c,f,g,q,h,r)=Z(τ)-cC(τ)-fF(τ)-gG(τ)-qQ(τ)-hH(τ)-rR(τ)
[0246] Where the Lagrange multipliers are c = [c1, c2, ..., c...] k ], f, g, q, h = [h1, h2, ..., h 10 ], r;
[0247] Sub-step 3: Calculate the corresponding Karush-Kuhn-Tucker (KKT) conditions:
[0248] C(τ)<0 c T >0 cC(τ)=0
[0249] F(τ)=0 G(τ)=0
[0250] Q(τ)<0 q>0 qQ(τ)=0
[0251] H(τ)<0 h T >0 hC(τ)=0
[0252] R(τ)<0 r>0 rR(τ)=0
[0253] Sub-step 4: Derive the constrained optimization subproblem as follows:
[0254]
[0255] Where j is the number of iterations, obtained by iteratively solving the above subproblem to get Δ*, and then substituted into the following iterative expression:
[0256] τ (j+1) =τ (j)+Δτ (j)
[0257] c (j+1) =c (j) +Δc (j)
[0258] f (j+1) =f (j) +Δf (j)
[0259] g (j+1) =g (j) +Δg (j)
[0260] q (j+1) =q (j) +Δq (j)
[0261] h (j+1) =h (j) +Δh (j)
[0262] r (j+1) =r (j) +Δr (j)
[0263] Until Z(τ) (j+1) )>Z(τ (j) When the iteration ends, the optimal solution is obtained.
[0264] Table 1 shows the values of τ = {τ1, τ2, ..., τc} given the decoding overhead ε = 0.3, λ = 0.5, α = 0.002, and c. 1o The optimal solution for}.
[0265] Table 1
[0266]
[0267]
[0268] Encoding module: The degree distribution generated by the degree distribution calculation module is applied to rateless coding, and source symbols are randomly selected for XOR encoding to generate encoded symbols.
[0269] Buffered sending module: Buffers the encoded symbols generated by the encoding module at the encoding end until a certain number of encoded symbols are reached, then sends the encoded symbols to the receiving end.
[0270] Decoding module: After the receiving end receives a certain number of encoded symbols, the confidence propagation algorithm is used as an example in this embodiment to decode and recover the source symbols.
[0271] The preferred embodiments of the present invention have been described in detail above. It should be understood that those skilled in the art can make numerous modifications and variations based on the concept of the present invention without creative effort. Therefore, all technical solutions that can be obtained by those skilled in the art based on the concept of the present invention through logical analysis, reasoning, or limited experimentation on the basis of existing technology should be within the scope of protection defined by the claims.
Claims
1. A low-complexity, high-short-code-performance rateless coding design method, characterized in that, The method includes the following steps: Step 1: Select several specific degree values, set the selection probability corresponding to each specific degree value, and represent it using the generator polynomial Ω(x): Where d is the number of the specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to the specific degree value numbered d, and Average degree and Keep the value constant; x d It is the d-th specific degree value; Step 2: Add the number of source symbols k as an influence factor to the selection probability of the different specific degree values to obtain the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution: Wherein, the influence factor is represented by ω=ω(k), τ d The coefficients of the influence factor ω corresponding to the different specific degree values d; Step 3: Apply the degree distribution to rateless coding, randomly select source symbols and perform XOR coding to generate coded symbols; Step 4: Cache the encoded symbols at the encoding end until the number of encoded symbols reaches a predetermined amount, and then transmit the encoded symbols to the receiving end; Step 5: After receiving a set number of the encoded symbols, the receiving end uses a given decoding algorithm to decode them and recover the source symbols.
2. The low-complexity, high-short-code-performance rateless coding design method as described in claim 1, characterized in that, Step 2 includes the following sub-steps: Step 2.1: Calculate the size, mean, and variance of the ideal translatable set corresponding to the degree distribution, and transform the ideal translatable set into an optimization objective function; Step 2.2: Calculate the constraints of the objective function and construct a convex optimization model; Step 2.3: Solve the convex optimization model using nonlinear programming to obtain the optimal result, i.e., determine Ω. CCAD τ in (x) d .
3. The low-complexity, high-short-code-performance rateless coding design method as described in claim 2, characterized in that, Step 2.1 includes the following sub-steps: Step 2.1.1: Calculate the size of the ideal translatable set, denoted as R. Ω-CADD (ρ), where ρ is the number of source symbols that have been successfully recovered; Step 2.1.2: Calculate the average value A of the ideal translatable set: Where k is the number of source symbols; Step 2.1.3: Calculate the variance V of the ideal translatable set: Step 2.1.4: Summarize the mean A and the variance V into the following objective function (τ), the design objective of which is to increase the mean A and decrease the variance V: (τ)=A-λV The ideal translatable set is transformed into maximizing (τ), where τ = {τ1, τ2, ..., τ}. 10 }, where λ is a non-negative constant and its range is [0,1].
4. The low-complexity, high-short-code-performance rateless coding design method as described in claim 3, characterized in that, Step 2.2 includes the following sub-steps: Step 2.2.1: The size of the ideal translatable set must be greater than or equal to... Therefore, the constraints of the objective function are: Where ε is the decoding overhead, and c is a constant greater than 0; Step 2.2.2: Limit the number of check symbols with a repetition value of 1 in the ideal translatable set to reduce unnecessary overhead. Where α is a non-negative constant; r is the number of source symbols that are connected at least once; m is the number of coded symbols with a degree value of 1 in the ideal translatable set; q is the number of repeated coded symbols with a degree value of 1 in the ideal translatable set; n is the number of source symbols connected to the m coded symbols with a degree value of 1; i is an enumeration value from 0 to r-1; T is the number of combinations of the m coded symbols with a degree value of 1 connected to the r source symbols at least once; and Ω1 is the selection probability corresponding to the degree value of 1. Step 2.2.3: Ensure that the sum of the selection probabilities F(τ) corresponding to the specific degree value is 1, that is:
5. The low-complexity, high-short-code-performance rateless coding design method as described in claim 4, characterized in that, Step 2.2 further includes the following sub-steps: Step 2.2.4: The selection probability H(τ) corresponding to each specific degree value is greater than 0. H(τ)=-τω-Ω<0 Where, Ω=[Ω1,Ω2,...,Ω dmax ]; Step 2.2.5: Increase the probability of selecting degree value 1 by setting τ1 to be greater than or equal to 0, that is: τ1≥0.
6. The low-complexity, high-short-code-performance rateless coding design method as described in claim 5, characterized in that, Step 2.2 further includes the following sub-steps: Step 2.2.6: Construct the convex optimization model: max(τ)=A-λV Q Ω <α 7. The low-complexity, high-short-code-performance rateless coding design method as described in claim 6, characterized in that, Step 2.3 includes the following sub-steps: Step 2.3.1: Rewrite the convex optimization model as follows: min Z(τ)=-(τ)=-M(τ)+λV(τ) Q(τ)=Q Ω -α<0 H(τ)=-τω-Ω<0 R(τ)=[-τ1,0,...,0] T <0 Step 2.3.2: Write down the Lagrangian function corresponding to the convex optimization model: L(τ,c,f,g,q,,r)=Z(τ)-cC(τ)-fF(τ)-gG(τ)-qQ(τ)-H(τ)-rR(τ) The Lagrange multipliers are c = [c1, c2, ..., c]. k f, g, q, = [1,2,..., 10 ]、r.
8. The low-complexity, high-short-code-performance rateless coding design method as described in claim 7, characterized in that, Step 2.3 further includes the following sub-steps: Step 2.3.3: Calculate the Karush-Kuhn-Tucker (KKT) conditions corresponding to the Lagrangian function: C(τ)<0c T >0 cC(τ)=0 F(τ)=0 G(τ)=0 Q(τ)<0 q>0 qQ(τ)=0 H(τ)<0 h T >0 hC(τ)=0 R(τ)<0 r>0 rR(τ)=0.
9. The low-complexity, high-short-code-performance rateless coding design method as described in claim 8, characterized in that, Step 2.3 further includes the following sub-steps: Step 2.3.4: Derive the constrained optimization subproblem as follows: Where j is the iteration number; The constrained optimization subproblem described above is solved iteratively to obtain Δ*, which is then substituted into the following iterative expression: t (j+1) =t (j) +Δt (j) c (j+1) =c (j) +Δc (j) f (j+1) =f (j) +Δf (j) g (j+1) =g (j) +Δg (j) q (j+1) =q (j) +Δq (j) h (j+1) =h (j) +Δh (j) r (j+1) =r (j) +Δr (j) Until Z(τ) (j+1) )>Z(τ (j) When the iteration ends, the optimal solution is obtained.
10. A rateless coding system with low complexity and high short code performance, characterized in that, The system includes: An initial degree value selection module selects several specific degree values, sets the selection probability corresponding to each specific degree value, and represents it using a generator polynomial Ω(x): Where d is the number of the specific degree value (from 1 to d) max ); Ω d It is the selection probability corresponding to the specific degree value numbered d, and Average degree and Keep the value constant; x d It is the d-th specific degree value; The degree distribution calculation module, connected to the initial degree value selection module, adds the number of source symbols k as an influence factor to the selection probability of different specific degree values, thus obtaining the generator polynomial Ω after adding the influence factor. CCAD (x), also known as degree distribution: Wherein, the influence factor is represented by ω=ω(k), τ d The coefficients of the influence factor ω corresponding to the different specific degree values d; The encoding module is connected to the degree distribution calculation module, which applies the degree distribution to rateless coding and randomly selects source symbols for XOR coding to generate encoded symbols. A buffered transmission module is connected to the encoding module, which buffers the encoded symbols at the encoding end until the number of encoded symbols reaches a predetermined amount, and then transmits the encoded symbols to the receiving end. The decoding module is connected to the buffered sending module. After receiving a set number of encoded symbols, the receiving end uses a given decoding algorithm to decode them and recover the source symbols. The degree distribution calculation module further includes the rateless coding method with low complexity and high short code performance as described in any one of claims 2 to 9.