algorithmic and combinatorial methods to discover low...

22
Algorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords Shashi Kiran Chilappagari 1 Bane Vasic 1 Mikhail Stepanov 2 Michael Chertkov 3 1 Dept. of Elec. and Comp. Eng., University of Arizona, Tucson, AZ. 2 Dept. of Mathematics, University of Arizona, Tucson, AZ. 3 T-4, Theoretical Division, LANL, Los Alamos, NM. Physics of Algorithms Workshop, Santa Fe, NM September 2, 2009 S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Upload: others

Post on 30-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Algorithmic and Combinatorial Methods toDiscover Low Weight Pseudo-Codewords

Shashi Kiran Chilappagari1 Bane Vasic1 Mikhail Stepanov2

Michael Chertkov3

1Dept. of Elec. and Comp. Eng., University of Arizona, Tucson, AZ.

2Dept. of Mathematics, University of Arizona, Tucson, AZ.

3T-4, Theoretical Division, LANL, Los Alamos, NM.

Physics of Algorithms Workshop, Santa Fe, NMSeptember 2, 2009

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 2: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

LDPC Codes

RepresentationCodes based on sparse bipartite graphs

Tanner graph with variable node setV and check node setC

(dv, dc) regular bipartite graphs, irregular bipartite graphs

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 3: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Preliminaries

Decoding algorithmsBelief propagation (BP), Linear programming (LP) decoder,Gallagertype decoders, Bit flipping decoders

Asymptotic AnalysisDensity evolution, EXIT charts, Expansion arguments (can be appliedto finite length codes too)

Error FloorAbrupt degradation in performance in the high SNR region.

Due to sub-optimality of the decoder.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 4: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Error Surface

Point at the ESclosest to “0” @

@@

@@

0

noise1

noise2

noise...

Error Surface (ES)(decoding specific)

�����

errorserrorserrors

no errorsno errorsno errors

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 5: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

The LP Decoder Feldmanet al. ‘05

ChannelCodewordy = (y1, . . . , yn) transmitted over a symmetricmemoryless channel and received asy = (y1, . . . , yn).

Log-likelihood-ratio (LLR) corresponding to variable node i

γi = log

(

Pr(yi |yi = 0)

Pr(yi |yi = 1)

)

.

ML-LP Decoderpoly(C): Codeword polytope whose vertices correspond tocodewords inC

Find f = (f1, . . . , fn) minimizing the cost function∑

i∈V γi fisubject to the constraintf ∈ poly(C)

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 6: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Realxed Polytope

Associating(f1, . . . , fn) with bits of the code we require

0 ≤ fi ≤ 1, ∀i ∈ V (1)

For every check nodej, let N(j) denote the set of variable nodeswhich are neighbors ofj. Let Ej = {T ⊆ N(j) : |T| is even}. ThepolytopeQj associated with the check nodej is defined as the set ofpoints(f, w) for which the following constraints hold

0 ≤ wj,T ≤ 1, ∀T ∈ Ej (2)∑

T∈Ejwj,T = 1 (3)

fi =∑

T∈Ej ,T∋i wj,T, ∀i ∈ N(j) (4)

Now, letQ = ∩jQj be the set of points(f, w) such that (1)-(4) hold forall j ∈ C. The Linear Code Linear Program (LCLP) can be stated as

min(f,w)

i∈V

γifi , s.t.(f, w) ∈ Q.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 7: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Features of LP Decoding

ML CertificateInteger solution is a codeword.

If the LP decoder outputs a codeword, then the ML decoderwould also output the same codeword.

Other Advantages of LP DecodingDiscrete output: no numerical issues

Attractive from analysis point of view

Systematic sequential improvement

AssumptionsChannel: binary symmetric channel (BSC)

Transmission of the all-zero-codeword

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 8: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Pseudo-codewords

A pseudo-codeword, p = (p1, . . . , pn) where 0≤ pi ≤ 1,∀i ∈ V, issimply equal to the output of the LP decoder.

CostFor the BSC,γi = 1 if i = 0 andγi = −1 if i = 1

The output of the LP decoder on a received vectorr is thepseudo-codewordp which has the minimum cost associated withit, where thecost(r , p) is given by

cost(r , p) =∑

i /∈supp(r)pi −

i∈supp(r)pi .

The cost associated with decoding any vectorr to theall-zero-codeword is zero

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 9: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Example

Consider a code of length 7

Let p = (1, 0, 12, 2

3, 13, 0, 1

2) be a pseudo-codeword

Let the received vector ber = (1, 1, 0, 0, 0, 0, 0). Then,γ = (−1,−1, 1, 1, 1, 1, 1)

cost(r , 0) = 0 andcost(r , p) = 1

If r = (1, 0, 0, 1, 0, 0, 0). Then,γ = (−1, 1, 1,−1, 1, 1, 1)

cost(r , 0) = 0 andcost(r , p) = −13

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 10: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Weight and Median

Weight of a pseudo-codeword Forneyet al. ‘01

Let p = (p1, . . . , pn) be a pseudo-codeword distinct from theall-zero-codeword. Letebe the smallest number such that the sum ofthee largestpis is at least

(∑

i∈V pi)

/2. Then, the BSCpseudo-codeword weightof p is

wBSC(p) =

{

2e, if∑

e pi =(∑

i∈V pi)

/2;2e− 1, if

e pi >(∑

i∈V pi)

/2.

MedianThe median noise vector (or simply the median)M(p) of apseudo-codewordp distinct from the all-zero-codeword is a binaryvector with supportS= {i1, i2, . . . , ie}, such thatpi1, . . . , pie are thee(= ⌈wBSC(p)/2⌉) largest components ofp.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 11: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Instanton

The BSCinstantoni is a binary vector with the following properties:1 There exists a pseudo-codewordp such that

cost(i, p) ≤ cost(i, 0) = 02 For any binary vectorr such that supp(r) ⊂ supp(i), there exists

no pseudo-codeword withcost(r , p) ≤ 0. The size of aninstanton is the cardinality of its support.

TheoremLet i be an instanton. Then for any binary vectorr such thatsupp(i) ⊂ supp(r), there exists a pseudo-codewordp satisfyingcost(r , p) ≤ 0.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 12: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Instanton Search Algorithm

Initialization (l = 0) stepInitialize to a binary input vectorr containing sufficient number of flips so that the

LP decoder decodes it into a pseudo-codeword different fromthe all-zero-codeword.

Apply the LP decoder tor and denote the pseudo-codeword output of LP byp1.

l ≥ 1 step

Take the pseudo-codewordpl (output of the(l − 1) step) and calculate its medianM(pl). Apply the LP decoder toM(pl) and denote the output bypMl . Only two casesarise:

wBSC(pMl ) < wBSC(pl). Thenpl+1 = pMl becomes thel-th step output/(l + 1)step input.

wBSC(pMl ) = wBSC(pl). Let the support ofM(pl) beS= {i1, . . . , ikl}. LetSit = S\{i t} for somei t ∈ S. Let r it be a binary vector with supportSit . Applythe LP decoder to allr it and denote thei t-output bypit . If pit = 0, ∀i t, thenM(pl) is the desired instanton and the algorithm halts. Else,pit 6= 0 becomesthe l-th step output/(l + 1) step input.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 13: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Illustration of the ISA

(a) (b) (c) (d)

0

(e)

Figure:Squares represent pseudo-codewords and circles representmedians or related noise configurations (a) LP decodesmedian of a pseudo-codeword into another pseudo-codeword of smaller weight (b) LP decodes median of a pseudo-codewordinto another pseudo-codeword of the same weight (c) LP decodes median of a pseudo-codeword into the same pseudo-codeword(d) Reduced subset (three different green circles) of a noise configuration (e.g. of a median from the previous step of theISA) isdecoded by the LP decoder into three different pseudo-codewords (e) LP decodes the median (blue circle) of a pseudo-codeword(low red square) into another pseudo-codeword of the same weigh (upper red square). Reduced subset of the median (threeconfigurations depicted as green circles are all decoded by LP into all-zero-codeword. Thus, the median is an instanton.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 14: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

The ISA Converges

Lemma 1Let M(p) be a median ofp with supportS. Then the result of LPdecoding of any binary vector with supportS′ ⊂ Sand|S′| < |S| isdistinct fromp.

Lemma 2If the output of the LP decoder onM(p) is a pseudo-codewordpM 6= p, thenwBSC(pM) ≤ wBSC(p). Also,cost(M(p), pM) ≤ cost(M(p), p).

Theorem

wBSC(pl) and |supp(M(pl))| are monotonically decreasing. Also, theISA terminates in at most2k0 steps, where k0 is the number of flips inthe input.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 15: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Instanton Statistics

Table: Instanton statistics obtained by running the ISA with 20 random flips for10000 initiations for the Tanner code and the MacKay code

CodeNumber of instantons of weight

4 5 6 7 8 9

Tanner codeTotal 3506 1049 1235 1145 1457

Unique 155 675 1028 1129 1453

MacKay codeTotal 213 749 2054 2906 2418 1168

Unique 26 239 1695 2864 2417 1168

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 16: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Comments

Why efficient?Extremely efficient compared to naive search methods

Brute force search, searching for instantons in bigger errorpatterns

Why LP?Median difficult to define for other decoders

No monotonic property for iterative decoders

When to stop?Number of instantons grows with size

To countN instantons, we need approximatelyN log(N) trials ofISA

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 17: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

The Tanner Code

10−3

10−2

10−1

100

10−10

10−8

10−6

10−4

10−2

100

Probability of transition (α)

Fra

me

erro

r ra

te (

FE

R)

Tanner code−simulationTanner code−predicted

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 18: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

MacKay Random Code

10−3

10−2

10−1

100

10−8

10−6

10−4

10−2

100

Probability of transition (α)

Fra

me

erro

r ra

te (

FE

R)

MacKay code−simulationMacKay code−predicted

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 19: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Trapping Sets for Iterative Decoders

TheoremLetC be an LDPC code with dv = 3 left-regular Tanner graph G withgirth g ≥ 10. Then G always has a trapping set of size g/2 and notrapping sets of size less than g/2. Moreover, every shortest cycle is atrapping set.

TheoremLetC be an LDPC code with dv-left-regular Tanner graph G. LetT bea set consisting of V variable nodes with induced subgraphI. Let thechecks inI be partitioned into two disjoint subsets;O consisting ofchecks with odd degree andE consisting of checks with even degree.ThenT is a fixed set for the bit flipping algorithm (serial or parallel)iff : (a) Every variable node inI has at least⌈dv/2⌉ neighbors inE ,and (b) No⌊dv/2⌋ + 1 checks ofO share a neighbor outsideI.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 20: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Relation Between Failures of Different Decoders

�����������������

�����������������

�����������������

�����������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

(a) A (5,3) trapping set for

Gallager A algorithm.

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������

����������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������

����������������

������������ ���������������� ������������ ����������������

(b) An (8,2) trapping set

for iterative decoding over the

AWGNC.

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������

�����������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������

�����������������

(c) The support of an instan-

ton of size 5 for LP decoding

over the BSC.

����������������

����������������

����������������

����������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

(d) The support of the lowest

weight pseudo-codeword for

LP decoding over the AWGN.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 21: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

Concluding Remarks

Use knowledge of failures of one decoder to find failures ofothers

Relation to trapping setsValid hyperflows

Improving the code for one decoder potentially improves it forother decoders

Construct codes avoiding known harmful configurations

Tighten the LP decoder using the knowledge of instantons

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords

Page 22: Algorithmic and Combinatorial Methods to Discover Low ...cnls.lanl.gov/~jasonj/poa/slides/chilappagari.pdfAlgorithmic and Combinatorial Methods to Discover Low Weight Pseudo-Codewords

References

C. Di, D. Proietti, T. Richardson, E. Telatar, and R. Urbanke, “Finite length analysis oflow-density parity-check codes on the binary erasure channel,” IEEE Trans. Inform.Theory, vol. 48, pp. 1570–1579, June 2002.

T. J. Richardson, “Error floors of LDPC codes,” in41st Annual Allerton Conf. onCommunications, Control and Computing, pp. 1426–1435, 2003.

M. G. Stepanov, V. Chernyak, M. Chertkov, and B. Vasic, “Diagnosis of weaknesses inmodern error correction codes: A physics approach,”Phys. Rev. Lett., vol. 95, p. 228701,Nov. 2005.

N. Wiberg,Codes and decoding on general graphs. Ph.d., Univ. Linkoping, Sweden,Dept. Elec. Eng., 1996.

P. O. Vontobel and R. Koetter, “Graph-cover decoding and finite length analysis ofmessage-passing iterative decoding of LDPC codes,” Dec. 2005.

J. Feldman, M. Wainwright, and D. Karger, “Using linear programming to decode binarylinear codes,”Information Theory, IEEE Transactions on, vol. 51, pp. 954–972, March2005.

M. Chertkov and M. Stepanov, “An efficient pseudocodeword search algorithm for linearprogramming decoding of LDPC codes,”Information Theory, IEEE Transactions on,vol. 54, pp. 1514–1520, April 2008.

S. K. Chilappagari, M. Chertkov, and B. Vasic, “Provably efficient instanton searchalgorithm for LP decoding of LDPC codes over the BSC,” 2008. Submitted toIEEETrans. Inform. Theory.

S. K. Chilappagari, B. Vasic, M. Stepanov, M. Chertkov Discovering Low Weight Pseudo-Codewords