Page 1
Dynamic Index Coding
1
1
Broadcast
Station
1
2
p
2
3
3
4
p
2
p
N
5
User set N
Packet set P
Michael J. Neely , Arash Saber Tehrani , Zhen Zhang
University of Southern California
Paper available at: (i) http://www-bcf.usc.edu/~mjneely/ (ii) http://arxiv.org/abs/1108.1977
Page 2
Initial Setup
•
•
•
•
•
•
•
Want to expand wireless throughput.
Wireless users download popular files.
N users. P packets.
Packets are all in the Broadcast Station (BS).
All users hear the transmissions of the BS.
Each user wants a different subset of packets.
Each user already has a different subset of packets
in its cache.
• Represent this by a directed bipartite demand
graph (see page 1).
Page 3
Information Theory Result
Finding min clearance time Tmin is the unsolved index coding
problem. However, we have the following result, which extends
[Bar-Yossef, Birk, Jayram, Kol] to the case of general demand graphs:
Theorem 1: If the bipartite demand graph is
acyclic, then Tmin= P.
Corollary 1: We get a simple max acyclic subgraph bound.
Corollary 2: Coding can only help if the demand graph has
cycles!
Page 4
Cyclic Coding
• “Cyclic” coding over K users clears K packets in K-1
slots.
User 2
User 1
Message 1: A + B
Message 2: B + C
Message 3: C + D
Want: A
Have: B
Want: D
Have: A
User 3
Want: B
Have: C
Want: C
Have: D
Decoding for user 2:
B + (A + B) = A
Decoding for user 1:
A + (A + B) + (B + C) + (C+D) = D
User 4
• Theorem 2: “Unicast” graphs with disjoint cycles
can be optimally solved by cyclic coding!
Page 5
Dynamic Index Coding
• Packets arrive randomly, rates (l1, …, lM).
• A = Abstract space of coding options.
Example: A = {cyclic coding actions}
• Each action α in A has:
T(α) = frame size of action α.
(μ1(α), …, μM(α)) = clearance vector of action α.
• Queue dynamic for frame k, traffic class m:
Qm[k+1] = max[Qm[k] – μm(α[k]), 0]
+ arrivals over frame k
Frame size T(α[k]) affects number of arrivals
Page 6
Algorithms
• Max-Weight Code Selection Alg 1 (Known λ):
Every new frame k, choose α[k] in A to maximize:
∑m Qm[k] [μm(α[k]) – λmT(α[k])]
• Max-Weight Code Selection Alg 2 (Unknown λ):
Every new frame k, choose α[k] in A to maximize:
∑m Qm[k] [μm(α[k])/T(α[k])]
Theorem 3: Both algorithms support any rate vector
(λ1, …, λM) in the Code-Constrained Capacity region (i.e.,
subject to using codes in set A).
Simulation of Max-Weight Code Selection
Page 7
Details: 3 user system. Each user has packets arriving rate λ. Each packet is independently
in cache of another user with prob ½. Total number of traffic types = M = 12.
Page 8
Special case of Broadcast Relay Networks:
•
•
•
•
Users want to send to other users via Broadcast Relay.
Each packet contained as side information in exactly one user.
Each packet has exactly one user as destination.
Admits a simplified graphical structure, can often compute Tmin.
(nodes = users, links labeled by # packets)
7 users
48 packets
Tmin = 39
Graph with 3 disjoint cycles
Max Acyclic Subgraph
Page 9
Results for Broadcast Relay Networks:
N-user capacity region L = {(lij)} has N(N-1) dimensions!
Coding : Max-Weight combinations of direct transmission, 2-cycle
coding, 3-cycle coding, …, N-cycle coding.
This is information-theoretically optimal in these cases:
• N=2 (L is 2-dimensional)
• N=3 (L is 6-dimensional)
• Any N, provided that the following additional
assumption holds:
Each user desires to transmit to at most
one other user.
© Copyright 2026 Paperzz