Data Exchange Problem with Helpers

Data Exchange Problem with Helpers

Nebojsa Milosavljevic, Sameer Pawar, Salim El Rouayheb, Michael Gastpar2 and Kannan Ramchandran 2Also with the School of Computer and Communication Sciences, EPFL, Lausanne, Switzerland.This research was funded by the NSF grants (CCF-0964018, CCF-0830788), a DTRA grant (HDTRA1-09-1-0032), and in part by an AFOSR grant (FA9550-09-1-0120). Department of Electrical Engineering and Computer Sciences
University of California, Berkeley
Email: {nebojsa, spawar, salim, gastpar, kannanr}

In this paper we construct a deterministic polynomial time algorithm for the problem where a set of users is interested in gaining access to a common file, but where each has only partial knowledge of the file. We further assume the existence of another set of terminals in the system, called helpers, who are not interested in the common file, but who are willing to help the users. Given that the collective information of all the terminals is sufficient to allow recovery of the entire file, the goal is to minimize the (weighted) sum of bits that these terminals need to exchange over a noiseless public channel in order achieve this goal. Based on established connections to the multi-terminal secrecy problem, our algorithm also implies a polynomial-time method for constructing the largest shared secret key in the presence of an eavesdropper. We consider the following side-information settings: (i) side-information in the form of uncoded packets of the file, where the terminals’ side-information consists of subsets of the file; (ii) side-information in the form of linearly correlated packets, where the terminals have access to linear combinations of the file packets; and (iii) the general setting where the the terminals’ side-information has an arbitrary (i.i.d.) correlation structure. We provide a polynomial-time algorithm (in the number of terminals) that finds the optimal rate allocations for these terminals, and then determines an explicit optimal transmission scheme for cases (i) and (ii).

I Introduction

In recent years cellular systems have witnessed significant improvements in terms of data rates, and are nearly approaching the theoretical limits in terms of the physical layer spectral efficiency. At the same time, the rapid growth in the popularity of data-enabled mobile devices, such as smart phones and tablets, and the resulting explosion in demand for more throughput are challenging our abilities even with the current highly efficient cellular systems. One of the major bottlenecks in scaling the throughput with the increasing number of mobile devices is the “last mile” wireless link between the base station and the mobile devices – a resource that is shared among many terminals served within the cell. This motivates the study of paradigms where cell phone devices can cooperate among themselves to get the desired data in a peer-to-peer fashion without solely relying on the base station.

Base Stationuser user helper
Fig. 1: An example of the data exchange problem with helpers. A base station has a file formed of four packets and wants to deliver it to two users over an unreliable wireless channel. Additionally, there is a terminal in the system that is in the range of the base station, but he is not interested in the file. However, he is willing to help the two users to obtain the file. The base station stops transmitting once all terminals collectively have all the packets, even if individually they have only subsets of the packets. They can then cooperate among themselves to recover the users’ missing packets. If the goal is to minimize the total number of communicated bits, helper transmits packet , while user  transmits packet , where the addition is in the field .

An example of such a setting is shown in Figure 1, where a base station wants to deliver the same file to multiple geographically-close users over an unreliable wireless downlink. We assume that some terminals, which are in the range of the base station, are not interested in the file, but due to their proximity to the base station, they are able to overhear some of its transmissions. Moreover, we assume that these terminals are willing to help in distributing the file to the respective users. We will refer to these terminals as helpers. In the example of Figure 1 we assume that the file consists of four equally sized packets , , and belonging to some finite field . Suppose that after a few initial transmission attempts by the base station, the three terminals (including one helper) individually receive only parts of the file (see Figure 1), but collectively have the entire file. Now, if all terminals are in close vicinity and can communicate with each other, then, it is much more desirable and efficient, in terms of resource usage, to reconcile the file among users by letting all terminals “talk” to each other without involving the base station. The cooperation among the terminals has the following advantages:

  • Local communication among terminals has a smaller footprint in terms of interference, thus allowing one to use the shared resources (code, time or frequency) freely without penalizing the base station’s resources, i.e., higher resource reuse factor.

  • Transmissions within the close group of terminals is much more reliable than from the base station to any terminal due to geographical proximity of terminals.

  • This cooperation allows for the file recovery even when the connection to the base station is either unavailable after the initial phase of transmission, or it is too weak to meet the delay requirement.

The problem of reconciling a file among multiple wireless users having parts of it while minimizing the cost in terms of the total number of bits exchanged is known in the literature as the data exchange problem and was introduced by El Rouayheb et al. in [1]. In the problem formulation of the data exchange problem it is assumed that all the terminals in the system are interested in recovering the entire file, i.e., there are no helpers. For data exchange problem without helpers a randomized algorithm was proposed in [2] and [3], while a deterministic polynomial time algorithms was proposed in [4], [5].

In this paper we consider a scenario with helpers, and linear communication cost. W.r.t. the example considered here, if user , user  and the helper transmit and bits, respectively, the data exchange problem with helpers would correspond to minimizing the weighted sum-rate such that, when the communication is over, user  and user  can recover the entire file. It can be shown that for the case when , the minimum communication cost is and can be achieved by the following coding scheme: user transmits packet , and the helper transmits , where the addition is over the underlying field . This corresponds to the optimal rate allocation symbol in . If there was no helper in the system, it would take a total of transmissions to reconcile the file among the two users. That is user  has to transmit and user  transmits and . Thus, the helpers can contribute to lowering the total communication cost in the system.

The discussion above considers only a simple form of side-information, where different terminals observe partial uncoded “raw” packets of the original file. Content distribution networks are increasingly using coding, such as Fountain codes or linear network codes, to improve the system efficiency [6]. In such scenarios, the side-information representing the partial knowledge gained by the terminals would be coded and in the form of linear combinations of the original file packets, rather than the raw packets themselves. The previous two cases of side-information (“raw” and coded) can be regarded as special cases of the more general problem where the side-information has arbitrary correlation among the data observed by the different terminals and where the goal is to minimize the weighted total communication cost. In [7] Csiszár and Narayan posed a related security problem referred to as the “multi-terminal key agreement” problem. They showed that obtaining the file among the users in minimum number of bits exchanged over the public channel is sufficient to maximize the size of the secret key shared between the users. This result establishes a connection between the Multi-party key agreement and the Data exchange problem with helpers. [7] solves the key agreement problem by formulating it as a linear program (LP) with an exponential number of rate-constraints, corresponding to all possible cut-sets that need to be satisfied.

In this paper, we make the following contributions. First, we provide a deterministic polynomial time algorithm for finding an optimal rate allocation, w.r.t. a linear weighted sum-rate cost needed to deliver the file to all users when all terminals have arbitrarily correlated side-information. For the data exchange problem with helpers, this algorithm computes the optimal rate allocation in polynomial time for the case of linearly coded side-information (including the “raw” packets case) and for the general linear cost functions (including the sum-rate case). Second, for the the data exchange problem with helpers, with raw or linearly coded side-information, we propose an efficient communication scheme design based on the algebraic network coding framework [8], [9].

Ii System Model and Preliminaries

In this paper, we consider a set up with terminals out of which some subset of them is interested in gaining access to a file or a random process. Let , denote the components of a discrete memoryless multiple source (DMMS) with a given joint probability mass function. Each user observes i.i.d. realizations of the corresponding random variable .

Let be the subset of terminals, called users, who are interested in gaining access to the file, i.e., learning the joint process . The remaining terminals serve as helpers, i.e., they are not interested in recovering the file, but they are willing to help users in the set to obtain it. In [7], Csiszár and Narayan showed that deliver the file to all users in a setup with general DMMS interactive communication is not needed. As a result, in the sequel WLOG we can assume that the transmission of each user is only a function of its own initial observations. Let represent the transmission of the user , where is any desired mapping of the observations . For each user in in order to recover the entire file, transmissions , , should satisfy,


where .

Definition 1.

A rate tuple is an achievable data exchange (DE) rate tuple if there exists a communication scheme with transmitted messages that satisfies (1), and is such that


It is easy to show using cut-set bounds that all the achievable DE rate tuple’s necessarily belong to the following region


where . Also, using a random coding argument, it can be shown that the rate region is an achievable rate region [7].

In this work, we aim to design a polynomial complexity algorithm that delivers the file to all users in while simultaneously minimizing a linear communication cost function , where , is an dimensional vector of non-negative finite weights. We allow ’s to be arbitrary non-negative constants, to account for the case when communication of some group of terminals is more expensive compared to the others, e.g., setting to be a large value compared to the other weights minimizes the rate allocated to the user . This goal can be formulated as the following linear program:


Ii-a Finite Linear Source Model

In general an efficient content distribution networks use coding such as fountain codes or linear network codes. This results in terminals’ observations to be in the form of linear combinations of the original packets forming the file, rather than the uncoded data themselves as is the case in conventional ‘Data Exchange problem’. This linear correlation source model is known in literature as Finite linear source [10].

Next, we briefly describe the finite linear source model. Let be some power of a prime. Consider the -dimensional random vector whose components are independent and uniformly distributed over the elements of Then, in the linear source model, the observation of user is simply given by


where is an observation matrix for the user .

It is easy to verify that for the finite linear source model,


Henceforth for the finite linear source model we will use the entropy of the observations and the rank of the observation matrix interchangeably.

Iii Deterministic Algorithm

We begin this section by exploring the case when the set consists of only one user. Then, by using the methodology of [11], we extend our solution to the case when the set has arbitrary number of users.

Iii-a Deterministic Algorithm when

Let the user be the only one user interested in a file, i.e., . This is known as a multi-terminal Slepian-Wolf problem [12] for which the achievable rate region has the following form:

Hence, the underlying optimization problem has the following form


Optimization problem (7) can be solved analytically due to the fact that the set function


is supermodular (see [13] for the formal definition). Therefore, optimization problem (7) is over a supermodular polyhedron . From the combinatorial optimization theory it is known that Edmonds’ greedy algorithm [14] renders an analytical solution to this problem (see Algorithm 1).

1:  Set to be an ordering of such that .
2:  for  to  do
3:     .
4:  end for
Algorithm 1 Edmonds’ algorithm applied to our problem
Example 1.

Consider a system with terminals . For convenience, we express the underlying data vector as , where are independent uniform random variables in . Let us consider the case where each node has the following observations: , , , , , . Let us assume that user is interested in recovering the vector such that underlying communication cost is .

It immediately follows from Algorithm 1 that a solution to this problem is , and . In other words, user  is missing linear equations in order to be able to decode all data packets.

Iii-B Deterministic Algorithm when

In this section we extend the results from the previous section to the case where the set contains arbitrary number of users. Optimization problem (4) can be written as follows



Equivalence between the optimization problems (4) and (9) follows from the fact that transmissions of all terminals in have to be such that all users in can learn . Optimization problem (9) has an exponential number constraints, which makes it challenging to solve in polynomial time. To obtain a polynomial time solution we consider the Lagrangian dual of problem (9).




Dual variable in the above problem is represented in matrix form as follows.


We denote by and , the column vector and row vector of the matrix , respectively. Moreover, we denote by


the rate matrix whose row, here denoted by , represents an optimizer of the problem (11) w.r.t. the weight vector . In order to ensure consistency with the optimization problem (10) observe that , and , .

For any given user , the objective function (11) of the dual problem (10) can be computed analytically using Algorithm 1. The optimization problem (10) is a linear program (LP) with number of constraints, which makes it possible to solve it in polynomial time (w.r.t. number of terminals). To solve the optimization problem (10) we apply a subgradient method, as described below.

Starting with a feasible iterate w.r.t. the optimization problem (10), every subsequent iterate can be recursively represented as an Euclidian projection of the vector


onto the hyperplane , where is the column of the rate matrix . The Euclidian projection ensures that every iterate is feasible w.r.t. the optimization problem (10). It is not hard to verify that the following initial choice of is feasible w.r.t. the problem (10).


By appropriately choosing the step size in each iteration (14), it is guaranteed that the subgradient method described above converges to the optimal solution of the problem (10). To recover the primal optimal solution from the iterates we use results from [15], where at each iteration of (14), the primal iterate is constructed as follows.




By carefully choosing the step size , in (14) and the convex combination coefficients , , , it is guaranteed that (16) converges to the minimizer of (9), and therefore to the minimizer of the original problem (4). In [15], the authors proposed several choices for and which lead to the primal recovery. Here we list some of them.

  1. , , where , , ,
    , , ,

  2. , , where ,
    , , .

Now, it is only left to compute an optimal rate allocation w.r.t to the problem defined in (4). Let and be the optimal rate vectors of the problems (4) and (9), respectively. As we pointed out earlier , where can be computed from the matrix for a sufficiently large , as follows


Pseudo code of the algorithm described in this section is shown below (see Algorithm 2).

1:  Initialize according to (15)
2:  Set , ,  
3:  for  to  do
4:     for  to  do
5:        Compute using Algorithm 1 for the weight vector
6:     end for
7:     Project onto the hyperplane .
8:  end for
Algorithm 2 Optimal DE rate allocation

Iii-C Code Construction for the Linear Source Model

In this Section we briefly address the question of the optimal code construction for the linear source model. For that matter, let us consider the following example.

Example 2.

Let us consider the same source model as in Example 1, where , and the objective function is . Applying the algorithm described above, we obtain

Fig. 2: Multicast network constructed from the source model and the optimal rate tuple , . Each user receives side-information from “itself” through links , , and from the other terminals through links , , , .

This solution suggests that in order to design a scheme that performs optimally, it is necessary to split all the packets into equally sized chunks. In other words, terminals’ observations can be written as , , etc., where all ’s, ’s and ’s belong to . For this “extended” source model we have that the optimal rate allocation is , .

Next question we need to address is how to design transmissions of each user? Starting from an optimal (integer) rate allocation, we first construct the corresponding multicast network (see Figure 2). In this construction, notice that there are several types of nodes. First, there is a super node that possesses all the packets. Each user in the set plays the role of a transmitter and a receiver, while the helpers act only as transmitters. To model this, we denote to be the “sending” nodes, and , and to be the receiving nodes. To model the side-information at users , and , we introduce links , , of capacity , which are routing the users’ observations to the corresponding receiving nodes. To model the broadcast nature of each transmission, we introduce “dummy” nodes , such that the capacity of the links is the same as link capacity , , and is equal to , .

To solve for actual transmissions of each terminal, we apply the algebraic network coding approach [8], with appropriately designed source matrix which corresponds to the side-information of all terminals. Finally, the network code for the data exchange problem with helpers can be constructed in polynomial time from the algorithms provided in [9] which are based on a simultaneous transfer matrix completion.

Iv Conclusion and Extensions

In this paper we study the data exchange problem with helpers. We provide a deterministic polynomial time algorithm for minimizing the weighted sum-rate cost of communication. We show that the data exchange problem with only one user and many helpers can be solved analytically using Edmonds’ algorithm. Further using single user solution as a building block we show how one can solve the more general problem with arbitrary number of users. Several extensions are of interest. For instance, we can consider a modification of the original data exchange problem where only helpers are allowed to transmit. Starting from a single user case, it is easy to see that an achievable rate tuple must satisfy all the cut-set constraints over the helper set such that the user is always on the receiving side of the cut. Minimizing the weighted sum-rate cost over all achievable rate tuples can again be done using Edmonds’ algorithm (see Algorithm 1). Finally, extension to the multiple user case corresponds to the weighted sum-rate minimization over all rate tuples that are simultaneously achievable for all users. This optimization problem can be solved in polynomial time using the same approach as in Algorithm 2.


  • [1] S. El Rouayheb, A. Sprintson, and P. Sadeghi, “On coding for cooperative data exchange,” in Proceedings of ITW, 2010.
  • [2] A. Sprintson, P. Sadeghi, G. Booker, and S. El Rouayheb, “A randomized algorithm and performance bounds for coded cooperative data exchange,” in Proceedings of ISIT, 2010, pp. 1888–1892.
  • [3] D. Ozgul and A. Sprintson, “An algorithm for cooperative data exchange with cost criterion,” in Information Theory and Applications Workshop (ITA), 2011.   IEEE, pp. 1–4.
  • [4] T. Courtade, B. Xie, and R. Wesel, “Optimal Exchange of Packets for Universal Recovery in Broadcast Networks,” in Proceedings of Military Communications Conference, 2010.
  • [5] S. Tajbakhsh, P. Sadeghi, and R. Shams, “A model for packet splitting and fairness analysis in network coded cooperative data exchange.”
  • [6] M. Luby, “Lt codes,” in Foundations of Computer Science, 2002. Proceedings. The 43rd Annual IEEE Symposium on.   IEEE, 2002, pp. 271–280.
  • [7] I. Csiszár and P. Narayan, “Secrecy capacities for multiple terminals,” IEEE Transactions on Information Theory, vol. 50, no. 12, pp. 3047–3061, 2004.
  • [8] R. Koetter and M. Medard, “An Algebraic Approach to Network Coding,” IEEE/ACM Transactions on Networking, vol. 11, no. 5, pp. 782 – 795, 2003.
  • [9] N. Harvey, D. Karger, and K. Murota, “Deterministic network coding by matrix completion,” in Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms, 2005, pp. 489–498.
  • [10] C. Chan, “Generating Secret in a Network,” Ph.D. dissertation, Massachusetts Institute of Technology, 2010.
  • [11] D. Lun, N. Ratnakar, M. Médard, R. Koetter, D. Karger, T. Ho, E. Ahmed, and F. Zhao, “Minimum-cost multicast over coded packet networks,” Information Theory, IEEE Transactions on, vol. 52, no. 6, pp. 2608–2623, 2006.
  • [12] T. Cover and J. Thomas, “Elements of information theory 2nd edition,” 2006.
  • [13] S. Fujishige, Submodular functions and optimization.   Elsevier Science, 2005.
  • [14] J. Edmonds, “Submodular functions, matroids, and certain polyhedra,” Combinatorial structures and their applications, pp. 69–87, 1970.
  • [15] H. Sherali and G. Choi, “Recovery of primal solutions when using subgradient optimization methods to solve lagrangian duals of linear programs,” Operations Research Letters, vol. 19, no. 3, pp. 105–113, 1996.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description