an introduction to physical layer network coding: lattice...

Post on 25-Jun-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

An Introduction to Physical Layer Network Coding: Lattice Codes as Groups

September 11, 2015 2015 ソサイエティ大会

Sendai, Miyagi, Japan

Brian M. Kurkoski Japan Advanced Institute of Science and Technology

Cooperative Wireless NetworksCooperative Wireless Networks

Wireless networks must deal with interference & noise

Cooperative Wireless NetworksCooperative Wireless Networks

Wireless networks must deal with interference & noise

OverviewOverview

3

1 Motivation for physical-layer network coding 1A Network Coding

1B Physical Layer Network Coding

2 Nested Lattice Codes 2A Quotient Groups

2B Lattice Quotient Groups

2C Nested Lattice Codes

3 Encoding and Isomorphisms in Nested Lattice Codes 3A Self-similar Voronoi codes

3B Non-Self-similar Vornoi Codes

Routing vs. Network Coding

Capacity: max rate from source to destination

Routing

• Capacity = 3/2

4

relay

1A

5

relay

Routing vs. Network Coding

Capacity: max rate from source to destination

Routing

• Capacity = 3/2

Network Coding

• Internal nodes perform linear operations

• Capacity = 2

Forwarding combinations of messages can increase capacity

5

relay

Routing vs. Network Coding

Capacity: max rate from source to destination

Routing

• Capacity = 3/2

Network Coding

• Internal nodes perform linear operations

• Capacity = 2

Forwarding combinations of messages can increase capacity

matrix form…

2 received messages and 2 desired messages:

Matrix Form Recovery of Messages

6

w 1 w 1 w 2

relay

u 1,u 2 received messages desired messages

Destination

w, u, q in a field. Allow relay to multiply by q

If Q has rank L, then all messages w recoverable How to design Q ? • Algorithmic approach (Jaggi et al.) Success if field size p > number of destinations • Random approach (Kotter and Medard. Ho et al.) Probability of valid solutions increases with p

Source Generalized Network Coding

7

Action of One Row A “Relay”

8

Source has w 1, w 2, …

Destination has u 1, u 2, …

received messages desired messages

Action of One Row A “Relay”

9

q1w1⨁ … ⨁qLwL

q1w1

relay

qLwL

q2w2...

received messages desired messages

Action of One Row A “Relay”

9

q1w1⨁ … ⨁qLwL

q1w1

relay

qLwL

q2w2...

received messages desired messages

What if the relay is wireless…?

PLNC = Physical Layer Network Coding

User 1

User M

User 2

Relay

Wireless Multiple-Access Channel

x1

x2

xM

y = x1 + … + xM

+ noise

10

xrelay

Addition occurs over the air

1B

Network Coding vs. PLNC

11

q 1w 1 ⨁ q 2w 2

Network Coding

Physical Layer Network Coding

x 1

x 2

h 1x 1 + h 2x 2

relay

relay

q 1w 1

q 2w 2

Network Coding:relay adds incoming messages

PLNC:addition over the air fading plays a role combat noise

PLNC with Error-Correction

12

w 1

w 2 z

x 1

x 2

Perform error-correction coding on vectors:

x i = Enc(w i) Relay performs two functions:

x 1 + x 2 = Decoder(y)

w 1 ⨁ w 2 = Enc–1(x 1 + x 2)

w 1 ⨁ w 2yrelay

PLNC with Error-Correction

13

w 1

w 2

relay

z

x 1

x 2w 1 ⨁ w 2y

Powerful idea: • Relay only eliminates noise • Relay does not need to separate inference • Converted a noisy network into a noiseless network

We Need A Code to Perform PLNC

Code must correct errors, for noisy wireless channels

• Code must satisfy a power constraint.

Code must form a group over addition

• so addition over the channel makes sense.

Code must have a group isomorphism: Enc(w 1 ⨁ w )d2) = x 1 + x 2,

• so network coding can be performed

These properties are satisfied by nested lattice codes.

14

Quotient Groups2A

15

group subgroup

Definition of a Coset

16

Quotient Groups

Example

17

Coset leaders: {0, 1, 2, 3} Coset leaders: {–2, –1, 0, 1}

Coset Leader (Coset Representative)

9

A coset leader is a single representative element from each coset.

19

g1

g2

−1 0 1 2 3

−1

0

1

2

0

g1 g2

Lattice: Linear code over real numbers2BA2 or “hex” lattice

Quotient Groups Based on Lattices

20

Cosets form a group under addition

Nested Lattice Codes2C

26

Voronoi region

Fundamental Regions

parallelotope

Voronoi region (hyper-) rectangle

Fundamental Regions

28

Selecting the Coset Leaders

29

Nested Lattice Codes Form a Group

Various Nested Lattice Codes

3 Different Voronoi regions — All codes form Groups

Various Nested Lattice Codes

Various Nested Lattice Codes

(hyper-) rectangle

parallelotope Important for theory, not very practical

Voronoi region Best transmit power, not always easy to implement

Rectangle Easier to implement, no shaping gain

Voronoi is Best for AWGN Channel

Voronoi regions are sphere-like in high dimension. A sphere satisfies the AWGN power constraint

Encoding and Isomorphism3A

33

Encoding: mapping information to codewords

Indexing: mapping codewords to information

Isomorphism between information (ring) and codewords (group)

Quantization and Modulo

34

0

Q(y)

y

Quantization and Modulo

34

0

Q(y)

y

Quantization has exponential complexity in general

35

0

Quantization and Modulo

Voronoi region at origin

36

0

x

Q(x)

Quantization and Modulo

36

0

x

Q(x)x – Q(x)

Quantization and Modulo

36

0

x

Q(x)x – Q(x)

Quantization and Modulo

37

relay

Recall the multiple-access scenario

Real Addition with Lattice Codes

Real Addition with Lattice Codes

38

c1

c2

c1 + c2

Real Addition with Lattice Codes

38

c1

c2

c1 + c2

Encoding and Indexing

Encodingb x

Indexingbx

[0, 0]

[0, 1]

[0, 2]

[0, 3]

[1, 0]

[1, 1]

[1, 2]

[1, 3]

[2, 0]

[2, 1]

[2, 2]

[2, 3]

[3, 0]

[3, 1]

[3, 2]

[3, 3]

Encoding Parallelotope

g1g2

[0, 0]

[0, 1]

[0, 2]

[0, 3]

[1, 0]

[1, 1]

[1, 2]

[1, 3]

[2, 0]

[2, 1]

[2, 2]

[2, 3]

[3, 0]

[3, 1]

[3, 2]

[3, 3]Encoding the Voronoi Region

Encoding the Voronoi Region

[0, 0] [0, 0]

[0, 1] [0, 1]

[0, 2] [0, 2]

[0, 3]

[0, 3]

[1, 0] [1, 0]

[1, 1] [1, 1]

[1, 2]

[1, 2]

[1, 3]

[1, 3]

[2, 0] [2, 0]

[2, 1]

[2, 1]

[2, 2]

[2, 2]

[2, 3]

[2, 3]

[3, 0]

[3, 0]

[3, 1]

[3, 1]

[3, 2]

[3, 2]

[3, 3]

[3, 3]

Group Isomorphism for PLNC

18

Group Isomorphism for PLNC

Even if the decoder cannot recover the original data b1, b218

Decoder

User 1

Group Isomorphism for PLNC

b1

Simple multiple access channel

User 2b2

18

index

Decoder

User 1

Group Isomorphism for PLNC

Even if the decoder cannot recover the original data b1, b2

b1 x1

x2Assuming successful decoding: Decoder produces x1 + x2 (not x1, x2 individually) Indexing produces b1 ⊕ b2 (not b1, b2 individually) Highly suitable for network coding

Simple multiple access channel

User 2b2

18

index

/34Brian Kurkoski, JAIST

Nested lattice codes with non-self-similar lattices • High dimension lattices (LDLC, etc.): excellent coding gain, computationally hard to perform shaping,

• Low dimension lattices (E8, Barnes-Wall): Good shaping gain with efficient algorithms, not very good coding gain.

And now for something new…

45

3B

/34Brian Kurkoski, JAIST

Proposed method. Construct a quotient group:

Nested lattice codes with non-self-similar lattices

46

High-dimension lattice: n = 1,000 to 105

E8, Barnes-Wall, etc. lattice n = 8, 16

/34Brian Kurkoski, JAIST

Proposed method. Construct a quotient group:

Nested lattice codes with non-self-similar lattices

47

High-dimension lattice: n = 1,000 to 105

E8, Barnes-Wall, etc. lattice n = 8, 16

/34Brian Kurkoski, JAIST

Sufficient Conditions to form a Group

48

/34Brian Kurkoski, JAIST

-8 -6 -4 -2 0 2 4 6 8-5

0

5

10

49

Indexing Non-Nested Lattice Codes

/34Brian Kurkoski, JAIST

-8 -6 -4 -2 0 2 4 6 8-5

0

5

10

Indexing Non-Nested Lattice Codes

50

/34Brian Kurkoski, JAIST

-8 -6 -4 -2 0 2 4 6 8-5

0

5

10

Indexing Non-Nested Lattice Codes

51

/34Brian Kurkoski, JAIST

-8 -6 -4 -2 0 2 4 6 8-5

0

5

10

Indexing Non-Nested Lattice Codes

52

What about a change of basis?

/34Brian Kurkoski, JAIST

Finding a Basis Suitable for Encoding

53

/34Brian Kurkoski, JAIST

Finding a Basis Suitable for Encoding

53

/34Brian Kurkoski, JAIST

Finding a Basis Suitable for Encoding

53

linearly dependent

/34Brian Kurkoski, JAIST 54-8 -6 -4 -2 0 2 4 6 8

-5

0

5

10

Indexing Non-Nested Lattice Codes

Using a Suitable Basis

Summary – Physical Layer Network Coding

PLNC:

• Technique for cooperative wireless networks

• Exploit network coding to increase capacity

• Lattices: real codes to correct errors, shaping gain

• Remove noise first, and interference later

•Compute-and-Forward relaying also deals with fading

55

John Conway and Neil Sloane, Sphere Packings, Lattices and Groups, Springer, Third Edition, 1999

Recommended Reading

G. David Forney, Lecture notes for Principles of Digital Communications II Course at MIT http://dspace.mit.edu/

Ram Zamir, Lattice Coding for Signals and Networks, Cambridge Univ Press, September 2014

Bobak Nazer and Michael Gastpar, “Reliable Physical Layer Network Coding,” Proceedings of the IEEE, March 2011

top related