• Keine Ergebnisse gefunden

Greedy heuristics for a redundant parity-check matrix In [46], the authors suggest a greedy (lexicographic) algorithm to search for

2. STOPPING REDUNDANCY HIERARCHY BEYOND THE MINIMUM DISTANCE

2.2. Achieving maximum-likelihood performance

2.3.2. Greedy heuristics for a redundant parity-check matrix In [46], the authors suggest a greedy (lexicographic) algorithm to search for

re-dundant rows in order to remove all stopping sets of size up to7. The algorithm requires the full list of stopping sets, as well as the full list of dual codewords. We note that this straightforward approach is applicable to the Golay code due to its short length.

Based on the ideas discussed in Section 2.2, we can apply the algorithm akin to that of Schwartz and Vardy beyond the code minimum distance. In that case, the algorithm works with the full list ofML-decodablestopping sets of the code.

We now describe the algorithm in more detail.

Fix`,4≤`≤12, and generate the list

L={S ⊆[n] :|S| ≤`, rankHS =|S|},

i.e. the list of ML-decodable stopping sets of size up to`(including) (with respect to the Golay code) in an “empty” parity-check matrix (before putting any rows).

Next, we iteratively construct a parity-check matrix. At each iteration, we find one of the 4095 non-zero dual codewords4with the highest score. The score is of heuristic nature and for a dual codewordhit is calculated as follows:

score(h) =X

S∈L

|S| ·I{hcoversS}.

The row h with the maximum score is added to the matrix we build, and the stopping sets covered by h are removed from L. Iterations continue until L is empty. As we have only ML-decodable stopping sets inL (all of them are coverable), the algorithm stops before we add all the 4095 rows. To this end, we verify that the obtained parity-check matrix has rank 12.

A small difference with [46] in the proposed approach is a random choice of hwhen several dual codewords have the same score. In that case, we run the al-gorithm several times and choose the matrix with the least number of rows. Fig. 11 illustrates the number of rows in the best obtained matrices for`= 4,5, . . . ,12.

We further refer to these matrices asH(12), H(16), H(23), H(34), H(54), H(86), H(139),H(232), andH(370), according to the number of rows they have.

Table 4 shows the numbers of undecodable patterns for the aforementioned extended parity-check matrices. The notationΨis used to denote the number of such patterns in a parity-check matrix. Note that the number of such patterns for the BP decoder withH(370)isexactlythe same as for the ML decoder. This is in accordance with the discussion in Section 2.2.

Further, letΨ(w) be a number of erasure patterns of weightw, 0 ≤ w ≤ n, in a code of lengthn, that cannot be decoded by some decoding method over the

4Recall that the[24,12,8]extended Golay code is self-dual.

Table4.Numberofundecodableerasurepatternsfordifferentparity-checkmatricesofthe[24,12,8]extendedGolaycode. w 0–3456789101112≥13 Totalpatterns1062642504134596346104735471130750419612562496144270415624 w ΨH011022771972310039734303584445915688752274130263750623 w ΨH(34)000003598821385851571717082255640224 w ΨH(54)00000759164241951901027002224295624 w ΨH(86)000007591214498822570567177472424 w ΨH(139)000007591214491080437744143887424 w ΨH(232)000007591214491080425040132407424 w ΨH(370)ML000007591214491080425040131311624 w

4 6 8 10 12 0

50 100 150 200 250 300 350

Threshold, ρ

Figure 11.Upper bound on the stopping redundancy hierarchy of the[24,12,8]extended Golay code obtained by greedy search.

BEC. Then, the frame error rate (also known as the block error rate) is a function of the bit erasure probabilityp, as follows:

FER(p) =

n

X

w=0

Ψ(w)pw(1−p)n−w.

Based on the number of undecodable erasure patterns, we plot the performance curves in Fig. 12. We note that plots forH(54) and larger matrices are almost visually indistinguishable from the plot forH(370).

2.3.3.[48,24]low-density parity-check codes

In this section, we consider four different LDPC codes of length 48 and dimension 24 (see Table 6).

[48,24]-spBL denotes the best (linear)[48,24]code with a sparse parity-check matrix with the lowest possible correlation between its rows. Its minimum dis-tance is 12.

(4,8)-RU is a code chosen from 100 000 randomly-generated codes from RU ensemble. The code was chosen based on minimum distance,dmin, and the first non-zero weight spectrum coefficient, Admin (i.e. the number of codewords of weightdmin).

(3,6)-QC is a QC LDPC code obtained by optimisation of lifting degrees for a constructed base matrix in order to guarantee the best possible minimum distance under a given restriction on the girth value of the Tanner graph of the code.

Finally,(3,6)-NB denotes a binary image of non-binary code constructed by the standard two-stage procedure. It consists of labelling a proper binary base parity-check matrix by random non-zero elements of the extension of the binary fieldF2. Here, we select a parity-check matrix of a binary LDPC code from the RU ensemble.

H H(34) H(54) H(370) 0.000.020.040.060.080.10

10-15

10-10

10-5 Erasureprobability,p

FER

H H(34) H(54) H(370) 0.10.20.30.40.5

10-5

10-4

0.001

0.010

0.100

1 Erasureprobability,p

FER

Figure12.Frameerrorratesfordifferentparity-checkmatricesofthe[24,12,8]extendedGolaycode,obtainedbytherandomizedgreedy algorithm.TherearenoML-decodablestoppingsetsofsizeupto3,7,8,and12,forH,H(34) ,H(54) ,andH(370) ,respectively.

Table5.MLstoppingredundanciesaverageoverS(n,m).Estimatesholdwithprobability95%. R=1/3R=1/2R=2/3 ρmˆρmε(m) ,%ρmˆρmε(m) ,%ρmˆρmε(m) ,% 661.27331.7222.53 84.99850.6434.7534.770.8510.5510.551.27 1223.921224.180.43281.32281.370.5746.1146.120.85 1855718557.60.322234.52234.820.43189.07189.080.64 2883862884220.2617715.617717.10.34758.87758.90.51 4.5288·106 4.5301·106 0.211406361406450.283027.583027.70.43 7.1464·1077.1467·1070.181.1180·1061.1181·1060.2412064.512065.10.37 1.1308·109 1.1310·109 0.168.8982·106 8.8987·106 0.214808448085.40.32 1.7926·1010 1.7928·1010 0.147.0879·107 7.0883·107 0.191917311917340.28 Table6.CodesfromSection2.3.3. code(J,K)dminAdmindstopddualρdmindmin+1dmin+2ρr [48,24]-spBL(6,12)12172964126240,12151,2346813761585 (4,8)-RU(4,8)715583,175,38012549204 (3,6)-QC(3,6)787558,130,2749876964 (3,6)-NB(3,6)8747355,751,155113819276

We simulate the BP and ML decoding over the BEC channel for the four LDPC codes whose parameters are presented in Table 6. In Fig. 13, the FER performance of the BP and ML decoding over the BEC is compared. It is easy to see that the best BP decoding performance (and at the same time the worse ML decoding performance) is shown by the QC LDPC code with the most sparse parity-check matrix. We remark that [48,24]-spBL, as expected, has the best ML decoding performance. Its BP decoding performance is worse than that of the selected LDPC codes except for the binary image of non-binary LDPC code.

Fig. 14 shows the BP decoding performance over the BEC of the codes(3, 6)-QC and[48,24]-spBL from Table 6 when their parity-check matrices are exten-ded. We call the corresponding decoding techniqueredundant parity check (RPC) decoding. The number next to “RPC” in Fig. 14 indicates the number of redundant rows that was added. The best convergence of FER performance of BP decoding to that of ML decoding is demonstrated by the QC LDPC code, while the best linear code has the slowest convergence. We observe that the obtained simulation results are consistent with the estimates on the stopping redundancy hierarchy given in Table 6.