27
Linear Programming-based Decoding of Turbo-Like Codes and its Relation to Iterative Approaches Jon Feldman [email protected] MIT LCS David Karger [email protected] MIT LCS Martin Wainwright [email protected] UC Berkeley . J. Feldman, Allerton, 10/02/02 – p.1/18

Linear Programming-based Decoding of Turbo-Like Codes and

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Linear Programming-based Decoding of Turbo-Like Codes and

Linear Programming-basedDecoding of Turbo-Like Codes andits Relation to Iterative Approaches

Jon Feldman

[email protected]

MIT LCS

David Karger

[email protected]

MIT LCSMartin Wainwright

[email protected]

UC Berkeley.

J. Feldman, Allerton, 10/02/02 – p.1/18

Page 2: Linear Programming-based Decoding of Turbo-Like Codes and

Decoding via Linear Programming

� New algorithm for decoding any turbo-like code[Feldman, Karger, FOCS 2002].

� Uses linear programming (LP) relaxation.

� Precise characterization of noise patterns that causedecoding error for BSC, AWGN: “noisy promenades.”- Reminiscent of work on “stopping sets” in the BEC

[Di, Proietti, Richardson, Telatar, Urbanke, ’02;Richardson, Urbanke, Allerton’02].

� For rate-1/2 Repeat-Accumulate (RA) codes:-

� � � � � �,�� � �� � � ��� � �

.

� ML certificate property:- Outputs ML information word, or “error.”

J. Feldman, Allerton, 10/02/02 – p.2/18

Page 3: Linear Programming-based Decoding of Turbo-Like Codes and

Our Contributions

� Iterative subgradient decoding for any turbo-like code:- Uses trellis passes, message-passing.-

step size guaranteeing convergence to samesolution as LP decoder.

� Same noise pattern error conditions, WERbounds.

� ML certificate property.

Relation to Tree-Reweighted Max-Product (TRMP):- Iterative algorithm for finding optimal configurations

on factor graphs [Wainwright, Jaakkola, Willsky,Allerton’02], Session V.B, Friday, 10am.

- Turbo-like codes: simple message-passing decoder.- If constituent codes agree on a code word, it is the

ML code word.

J. Feldman, Allerton, 10/02/02 – p.3/18

Page 4: Linear Programming-based Decoding of Turbo-Like Codes and

Our Contributions

� Iterative subgradient decoding for any turbo-like code:- Uses trellis passes, message-passing.-

step size guaranteeing convergence to samesolution as LP decoder.

� Same noise pattern error conditions, WERbounds.

� ML certificate property.

� Relation to Tree-Reweighted Max-Product (TRMP):- Iterative algorithm for finding optimal configurations

on factor graphs [Wainwright, Jaakkola, Willsky,Allerton’02], Session V.B, Friday, 10am.

- Turbo-like codes: simple message-passing decoder.- If constituent codes agree on a code word, it is the

ML code word.

J. Feldman, Allerton, 10/02/02 – p.3/18

Page 5: Linear Programming-based Decoding of Turbo-Like Codes and

Outline

1. Turbo Codes, RA codes.

2. LP-based decoding of turbo-like codes.

3. Lagrangian dual form of LP:

� Subgradient decoding,

� TRMP decoding.

4. Noisy Promenades.

J. Feldman, Allerton, 10/02/02 – p.4/18

Page 6: Linear Programming-based Decoding of Turbo-Like Codes and

Classic Turbo Codes[Berrou, Glavieux, Thitimajshima, 1993]

Interleaver

Information word

codewordConvolutional Codes

PSfrag replacements

� � � �

����

����

� ��

� � �

����

� � � � � �

� “Turbo-like” codes: Parallel, serial concatenatedconvolutional codes.

J. Feldman, Allerton, 10/02/02 – p.5/18

Page 7: Linear Programming-based Decoding of Turbo-Like Codes and

Repeat-Accumulate Codes[Divsalar, Jin, McEliece, 1998]

1 00 1

1 1

1 1

0 0

0

0 0

0

1 1

0 0 0

1 1

0

0 10

11

1 0PSfrag replacements

(word �)

(path

� � � � )

Information

Repeat

Permute

Accumulate

J. Feldman, Allerton, 10/02/02 – p.6/18

Page 8: Linear Programming-based Decoding of Turbo-Like Codes and

Decoding

? ? ? ?

1 1 0 11 00

+ +

+ +

+

+

+

PSfrag replacementsReceived word

� Costs on nodes: locallog-likelihood ratio(LLR).

� Viterbi algorithm:finds max-cost path.

� Max-cost path doesnot necessarily corre-spond to code word.

J. Feldman, Allerton, 10/02/02 – p.7/18

Page 9: Linear Programming-based Decoding of Turbo-Like Codes and

Max-Likelihood Agreeable Path

1 1 0 11 00

1 0 1 0

+ +

+ +

+

+

+

PSfrag replacements

Received word

��

� Path

is Agreeable if,for all info bits �� :

“1-edge” at

and

��

, or

“0-edge” at

and

��

� How do we find MLagreeable path?

J. Feldman, Allerton, 10/02/02 – p.8/18

Page 10: Linear Programming-based Decoding of Turbo-Like Codes and

Turbo Code Linear Program

� Variable

��� for all paths

,

� � � � � �

. Cost � � =� � �

� �.

For rate-1/2 RA codes (RALP):

� �

� � ��� �� �

� � � �

� ����

�� � � ��

�� ��

� � � �� �� � �

� � � � �� �� �

� � � � �

: set of paths that “switch” at segment

.

� �� � � ��

�� �

: two copies of �� .

� Natural generalization for any turbo-like code.

J. Feldman, Allerton, 10/02/02 – p.9/18

Page 11: Linear Programming-based Decoding of Turbo-Like Codes and

Using RALP to Decode

� Solving RALP finds maximum-likelihood agreeabledistribution

� �

on paths.

� Strict “relaxation” of ML decoding problem.

� All the mass on one path: “integral solution.”

If integral:- for some .

- for all .- is the ML agreeable path.

If not, is an agreeable convex combination of paths.- Output “error.”

J. Feldman, Allerton, 10/02/02 – p.10/18

Page 12: Linear Programming-based Decoding of Turbo-Like Codes and

Using RALP to Decode

� Solving RALP finds maximum-likelihood agreeabledistribution

� �

on paths.

� Strict “relaxation” of ML decoding problem.

� All the mass on one path: “integral solution.”

� If

� �

integral:-

� �� � �

for some

.

-

� �� � � �

for all

� � � � �

.-

is the ML agreeable path.

� If not,

� �

is an agreeable convex combination of paths.- Output “error.”

J. Feldman, Allerton, 10/02/02 – p.10/18

Page 13: Linear Programming-based Decoding of Turbo-Like Codes and

Solving RALP

� Use generic LP solver.- Ellipsoid algorithm: provably poly-time, but

impractical.- Simplex algorithm: useful in practice, but not in real

time.

Solve using subgradient algorithm:- Operates on Lagrangian dual form of the LP.- Takes the form of a standard message passing

decoder

J. Feldman, Allerton, 10/02/02 – p.11/18

Page 14: Linear Programming-based Decoding of Turbo-Like Codes and

Solving RALP

� Use generic LP solver.- Ellipsoid algorithm: provably poly-time, but

impractical.- Simplex algorithm: useful in practice, but not in real

time.

� Solve using subgradient algorithm:- Operates on Lagrangian dual form of the LP.- Takes the form of a standard message passing

decoder

J. Feldman, Allerton, 10/02/02 – p.11/18

Page 15: Linear Programming-based Decoding of Turbo-Like Codes and

Lagrangian Dual

� Lagrange multipliers

�� for each info bit �� .

� For a path

, cost under

:

� � ��

� � � � � ���

��

��

� � �

“agreeability”

�� �

��

��

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

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

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

Cost on 1-edges at segment .

Cost on 1-edges at segment .

Natural generalization to any parallel concatenatedconvolutional code.

J. Feldman, Allerton, 10/02/02 – p.12/18

Page 16: Linear Programming-based Decoding of Turbo-Like Codes and

Lagrangian Dual

� Lagrange multipliers

�� for each info bit �� .

� For a path

, cost under

:

� � ��

� � � � � ���

��

��

� � �

“agreeability”

�� �

��

��

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

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

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

� Cost

�� on 1-edges at segment

.

� Cost � �� on 1-edges at segment

��

.

� Natural generalization to any parallel concatenatedconvolutional code.

J. Feldman, Allerton, 10/02/02 – p.12/18

Page 17: Linear Programming-based Decoding of Turbo-Like Codes and

Lagrangian Dual, continued...

� Dual function

� � � � � � ��

� � � ��

� � �

.

� Let

� � � � � � �� � �

� � � ��

� � �

.

Let . By LP duality, =

Find using sequence of “message-passing” updates:

Subgradient computed w/ Viterbi algorithm.

Appropriate step size assures convergence to .

May take a long time to converge to LP optimum.

J. Feldman, Allerton, 10/02/02 – p.13/18

Page 18: Linear Programming-based Decoding of Turbo-Like Codes and

Lagrangian Dual, continued...

� Dual function

� � � � � � ��

� � � ��

� � �

.

� Let

� � � � � � �� � �

� � � ��

� � �

.

� Let

� � � �� � �� �

� � � �

. By LP duality, � � � � �� =

� � � � �

� Find

� �

using sequence of “message-passing” updates:

� � � �

� � �

� � � ��

� � � � � � � �

� Subgradient

��

� � � � � � � �computed w/ Viterbi algorithm.

� Appropriate step size � �

assures convergence to

� �

.

May take a long time to converge to LP optimum.

J. Feldman, Allerton, 10/02/02 – p.13/18

Page 19: Linear Programming-based Decoding of Turbo-Like Codes and

Lagrangian Dual, continued...

� Dual function

� � � � � � ��

� � � ��

� � �

.

� Let

� � � � � � �� � �

� � � ��

� � �

.

� Let

� � � �� � �� �

� � � �

. By LP duality, � � � � �� =

� � � � �

� Find

� �

using sequence of “message-passing” updates:

� � � �

� � �

� � � ��

� � � � � � � �

� Subgradient

��

� � � � � � � �computed w/ Viterbi algorithm.

� Appropriate step size � �

assures convergence to

� �

.

� May take a long time to converge to LP optimum.

J. Feldman, Allerton, 10/02/02 – p.13/18

Page 20: Linear Programming-based Decoding of Turbo-Like Codes and

Tree-Reweighted Max-Product

� General MAP estimation algorithm [Wainwright,Jaakkola, Willsky, Allerton ’02].

� On turbo-like codes: simple message passing decoder.

� Same “cost adjustments”

as subgradient decoding.

� Messages computed using log-likelihood ratio (LLR):

� � � �

� � � ��

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

� If sign(

� � � � �� �� �

) = sign(� � � � �� � �

), for all

�� � � ��

�� �

:

� the constituent codes (repeater, accumulator)agree on a codeword.

By LP duality,TRMP has found the ML code word.

J. Feldman, Allerton, 10/02/02 – p.14/18

Page 21: Linear Programming-based Decoding of Turbo-Like Codes and

Tree-Reweighted Max-Product

� General MAP estimation algorithm [Wainwright,Jaakkola, Willsky, Allerton ’02].

� On turbo-like codes: simple message passing decoder.

� Same “cost adjustments”

as subgradient decoding.

� Messages computed using log-likelihood ratio (LLR):

� � � �

� � � ��

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

� If sign(

� � � � �� �� �

) = sign(� � � � �� � �

), for all

�� � � ��

�� �

:

� the constituent codes (repeater, accumulator)agree on a codeword.

� By LP duality,

� TRMP has found the ML code word.

J. Feldman, Allerton, 10/02/02 – p.14/18

Page 22: Linear Programming-based Decoding of Turbo-Like Codes and

Promenades

� Precise characterization of noise patterns that causedecoding error for BSC, AWGN.

� Let

be a particular weighted, undirected graph:

PSfrag replacements

��

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

� � � � � � �

� � � � � �

j

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

� � � �� � � ���

� A promenade is a collection

of subpaths of

, where

- For all�

� � � ��

�� �

,

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

.

� ���� � � � �

= number of subpaths in

that start or end at

.J. Feldman, Allerton, 10/02/02 – p.15/18

Page 23: Linear Programming-based Decoding of Turbo-Like Codes and

Noisy Promenades

� The cost of a promenade is the sum of the costs of itssubpaths.- A noisy promenade is one whose cost is less than or

equal to zero.

Theorem [FeKa02]: RALP makes a decoding error iff

has a noisy promenade.

� Natural generalization to AWGN, any turbo-like code.

Rate- RA codes, :- Combinatorics tricky (future work).

Rate-1/2 RA codes:

Theorem [FeKa02]: Pr[noisy promenade] , if:

(BSC) (AWGN)

J. Feldman, Allerton, 10/02/02 – p.16/18

Page 24: Linear Programming-based Decoding of Turbo-Like Codes and

Noisy Promenades

� The cost of a promenade is the sum of the costs of itssubpaths.- A noisy promenade is one whose cost is less than or

equal to zero.

Theorem [FeKa02]: RALP makes a decoding error iff

has a noisy promenade.

� Natural generalization to AWGN, any turbo-like code.

� Rate-

� ��

RA codes,

� � �:

- Combinatorics tricky (future work).

Rate-1/2 RA codes:

Theorem [FeKa02]: Pr[noisy promenade] , if:

(BSC) (AWGN)

J. Feldman, Allerton, 10/02/02 – p.16/18

Page 25: Linear Programming-based Decoding of Turbo-Like Codes and

Noisy Promenades

� The cost of a promenade is the sum of the costs of itssubpaths.- A noisy promenade is one whose cost is less than or

equal to zero.

Theorem [FeKa02]: RALP makes a decoding error iff

has a noisy promenade.

� Natural generalization to AWGN, any turbo-like code.

� Rate-

� ��

RA codes,

� � �:

- Combinatorics tricky (future work).

� Rate-1/2 RA codes:

Theorem [FeKa02]: Pr[noisy promenade]

� � � �, if:

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

(BSC) �� � ��� � �

� � � ��� � � � � � (AWGN)J. Feldman, Allerton, 10/02/02 – p.16/18

Page 26: Linear Programming-based Decoding of Turbo-Like Codes and

Conclusions

� LP decoding of turbo-like codes:- Precise characterization of noise patterns that cause

decoding error for BSC, AWGN: “noisy promenades.”- Rate-1/2 RA codes: WER

� � � �.- ML certificate property.

� New iterative algorithms for decoding turbo-like codes:- Subgradient decoding: converges to LP solution.- TRMP: finds ML code word when LLRs agree.

J. Feldman, Allerton, 10/02/02 – p.17/18

Page 27: Linear Programming-based Decoding of Turbo-Like Codes and

Open Questions

� Better WER bound for rate-

� ��

RAusing noisy promenades ?

- Conjecture: LP decoding WER

� � � ��� � � �.

� WER bounds for other turbo-like codes?

� (Poly-time) convergence proof for TRMP?

� Relationship to sum- and max-product?

J. Feldman, Allerton, 10/02/02 – p.18/18