Subspace-Aware Index Codes
Bhavya Kailkhura, Lakshmi Narasimhan Theagarajan, Pramod K. Varshney

TL;DR
This paper introduces subspace-aware index coding, leveraging low-dimensional data structures to significantly improve system throughput, with an efficient algorithm for near-optimal coding, outperforming traditional methods.
Contribution
It generalizes index coding to exploit data subspace structures and proposes an efficient alternating minimization algorithm for near-optimal codes.
Findings
Achieves up to 90% throughput gain with subspace-aware codes.
Develops an algebraic framework for subspace-aware index coding.
Provides an efficient algorithm for near-optimal code design.
Abstract
In this paper, we generalize the well-known index coding problem to exploit the structure in the source-data to improve system throughput. In many applications, the data to be transmitted may lie (or can be well approximated) in a low-dimensional subspace. We exploit this low-dimensional structure of the data using an algebraic framework to solve the index coding problem (referred to as subspace-aware index coding) as opposed to the traditional index coding problem which is subspace-unaware. Also, we propose an efficient algorithm based on the alternating minimization approach to obtain near optimal index codes for both subspace-aware and -unaware cases. Our simulations indicate that under certain conditions, a significant throughput gain (about 90%) can be achieved by subspace-aware index codes over conventional subspace-unaware index codes.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCooperative Communication and Network Coding · Advanced MIMO Systems Optimization · Wireless Networks and Protocols
Subspace-Aware Index Codes
Bhavya Kailkhura*∗†, , Lakshmi Narasimhan Theagarajan∗‡, , Pramod K. Varshney‡ This work was supported in part by NSF Grant no. ECCS 1609916.This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344. LLNL-JRNL-718227These authors contributed equally to this work. This author is presently affiliated to Lawrence Livermore National Laboratory, [email protected]These authors are at the Department of EECS, Syracuse University, New York, {ltheagar, varshney}@syr.edu.
Abstract
In this paper, we generalize the well-known index coding problem to exploit the structure in the source-data to improve system throughput. In many applications (e.g., multimedia), the data to be transmitted may lie (or can be well approximated) in a low-dimensional subspace. We exploit this low-dimensional structure of the data using an algebraic framework to solve the index coding problem (referred to as subspace-aware index coding) as opposed to the traditional index coding problem which is subspace-unaware. Also, we propose an efficient algorithm based on the alternating minimization approach to obtain near optimal index codes for both subspace-aware and -unaware cases. Our simulations indicate that under certain conditions, a significant throughput gain (about ) can be achieved by subspace-aware index codes over conventional subspace-unaware index codes.
Keywords – *Index coding, coded side-information, low-dimensional data, alternating minimization *
I Introduction
Index coding with side-information (ICSI) [1, 2, 3], is a problem, where a server has stored messages that it can broadcast over a noiseless channel to a set of receivers or clients. Each client has a subset of the messages as side information, and requests a subset of messages that it needs from the server. The objective of the ICSI problem is to devise an optimal coding strategy that minimizes the number of broadcast transmissions made by the server to satisfy the requirements of all the clients. The optimality criterion of an index code is its code length. The optimal index code length, i.e., the minimum number of transmissions required from the server for successful recovery of the desired information at the clients, was first characterized in [1, 2] as the minimum rank of a matrix that represents the side-information graph [2]. A method to construct index codes by solving a matrix completion problem was presented in [4]. In many practical scenarios, users possess coded side information (CSI) [5]; and index codes for linear CSI were studied in [5, 6]. Index codes over real field and their construction methods are investigated in [7, 8]. Considering index codes over the real field enables the use of efficient optimization techniques to construct near optimal index codes. Further, it was shown in [9] that network codes are equivalent to index codes. Thus, one can construct an optimal network code by constructing an optimal index code for the equivalent problem. Network codes over real field are discussed in [10, 11].
The source-data encountered in many practical systems such as data caching, images, video streaming, big-data storage and processing, can be well approximated using a lower dimensional linear subspace [12, 13, 14] (and references therein). Motivated by such applications, we propose a technique to construct index codes when the source-data belongs to a lower dimensional linear subspace. For example, it is well known that a facial image is a point from a high-dimensional image space which can be well approximated in a lower-dimensional linear subspace. The lower-dimensional subspace is found using Principal Component Analysis, which identifies the axes with maximum variance. In Figure 1(a), a set of eigenvectors (known as eigenfaces) are shown for AT&T Facedatabase. There are ten different images of each of the 40 distinct subjects. The size of each image is 92x112 pixels, with 256 grey levels per pixel. In Figure 1(b), we can see that a good reconstruction quality can be obtained using a very small number of eigenfaces.111These results are obtained from https://github.com/bytefish/facerec.
More specifically, the main contributions of this paper can be summarized as follows.
- •
We generalize the index coding problem with coded (and/or uncoded) side information to exploit the low-dimensional structure that may be present in the source-data.
- •
We establish bounds on the gain achieved by subspace-aware index codes over subspace-unaware case.
- •
We consider the design of subspace-aware/unaware index codes with coded/uncoded side information in a unified optimization framework and develop an efficient algorithm to construct near optimal index codes.
- •
Finally, we provide theoretical guarantees and simulation results on the performance of the proposed techniques.
The notations followed in the rest of this paper are: denotes the rank of a matrix, denotes a vector space spanned by a set of vectors, denotes the pseudo-inverse of a matrix, and denotes the Frobenius norm of a matrix.
II Problem setup
Consider a network with users and a data source (DS). Let denote the total number of data packets involved in a transmission instance, denote the size of each data packet, denote the data in the th packet, for , and . The th user requests number of packets from the DS, is the set of all indices of the requested data packets by the th user, for , and denotes the information vector requested by the th user. Each user possesses a linearly coded side information. Let denote the length of the CSI and denote the side information coding matrix for the user , . The CSI of the th user is given by the vector . When the th user has uncoded side information (USI), the side information consists of data packets, and the non-zero columns of form an identity matrix of dimension .
If the vector belongs to a low-dimensional subspace, then , where () is the matrix of basis vectors of the low-dimensional subspace, , and .
Goal: Knowing , matrices and subspace structure for , the goal is to have the DS broadcast the least number of coded data packets to users such that each user is able to successfully decode the requested packets. ∎
Let be the data vector transmitted by the DS. Now, each user needs to decode from . Assuming linear decoding, the th user performs the decoding as , where is the decoding matrix. For linear encoding, this problem can be stated as follows.
Problem: Find a matrix such that
[TABLE]
We refer to the matrix as the -length index code. For a given , , and , the matrix with the least number of rows satisfying the condition in (1) is the optimal index code and is the optimal index code length222Note that, in our proposed methodology, compression and index coding are performed in a unified framework. This helps to further simplify the receiver by relieving it of the separate decompression algorithm, reduces computational complexity, and improves overall system throughput..
Examples: The problem described above is often encountered in practical scenarios such as cloud networks, multicast video-streaming and content-sharing. Since the users are connected to multiple datacenters, each user may have different subsets of the same data and require different subsets. The data could be low-dimensional due to its inherent nature (e.g., videos, images, and sensory data [12, 13]) or the usage of redundancy-inducing error correcting codes [15]. Here, the datacenters employ index codes to serve the users’ requests to increase network efficiency and throughput. A similar problem is also encountered in distributed computing setups [16], distributed cognitive radio networks and satellite networks. Next, we describe these applications in more detail.
() Consider a wireless relay network represented in Fig. 2(a). Source nodes and wish to broadcast their data to user nodes , , and with the help of a relay node . The intensity signals transmitted by and decay with distance and the SNR deteriorates to the extent that their signals are not decodable beyond a certain radius of transmission. Consequently, in a transmission time slot , nodes and successfully decode the data from , while nodes and successfully decode the data from , and the node receives a linear combination of the data from and . In time slot , the relay node broadcasts a coded combination of data from and with which the nodes , , and are able to decode the data from both and . Here, the relay node comes up with an index code such that , (USI), (CSI), (USI), where and are the linear coefficients at . When the transmitted data is encoded with the same linear channel code at and , the transmitted data belongs to a low dimensional subspace. The columns of are the bases of this subspace created by the linear channel code.
() Consider a collaborative cognitive radio (CR) network of mutiple low-cost CR where , as illustrated in Fig. 2(b). Each CR senses a disjoint band of a wide spectrum and broadcasts the information to all its nearest neighbors. The data collected by all the CRs are finally fused at the fusion centers (FC) . The FC forms the complete map of the wideband spectrum. This complete map has to be conveyed back to the CRs. Since the CR network is power constrained, the FC conveys this information to its neighbors in least number of broadcasts using an index code. Further, as the low-cost CRs have limited memory, each CR stores only a linear combination of all the data it receives. Further, the CRs , and develop index codes to broadcast to their neighbors. At the FC, , , , ,
[TABLE]
[TABLE]
Due to the inherent sparsity in the wideband spectrum activity, the spectrum data is low dimensional in nature [17].
() Consider a network of devices served by a central server of facial image databases, with each device requesting a few facial images while possessing images of other faces. Such a scenario commonly occurs in biometric verification systems and security monitoring applications. As described in the previous section, it is known that the facial image data of hundreds of pixels in dimension belong to a lower dimensional linear subspace [18]. Therefore, a subspace-aware index coding in this scenario will improve throughput, speed and scalability of the network.
() Consider a network of users connected to a cloud of datacenters hosting a common dataset. One such cloud network in illustrated in Fig. 2(c). The online users could be simultaneously performing operations such as document-editing or video-streaming or file-sharing. Since the users are connected to multiple datacenters, each user may contain different subsets of the same data and require different subsets. The data could belong to a low-dimensional linear subspace due to either its inherent nature (e.g., videos [19]) or the usage of redundancy-inducing error correcting codes. For multicast transmissions, the data centers employ index codes to serve the users’ requests. This increases the overall network efficiency and throughput.
III Optimal Index Code length
An important step towards solving the problem stated in Sec. II is to identify the minimum length of the index code. Without loss of generality, we assume . Let be a matrix such that . Splitting into sub-matrices and , we can write (1) as
[TABLE]
Since and can be any arbitrary vector in , from (1) and (2), we can write , . This can be expressed succinctly as
[TABLE]
where
[TABLE]
Now, the optimal index code is the matrix that satisfies (3) and has the least value of . Since has only linearly independent rows, the rank of is . Therefore, the goal is to minimize such that (3) is satisfied.
Note: When index coding is performed without the knowledge of the underlying subspace (we refer to this scenario as the subspace-unaware case) or when the data is not low-dimensional, we have .
Lemma 1**.**
.
Proof.
If , then the index code length is larger than the number of data packets required. Therefore, ; hence, . As governed by (2) and (3), when the decoding is successful at the receivers, ; hence, . This proves that .
Note that by choosing the index code as (i.e., ), and the decoder matrices as and , all the required packets can be trivially decoded at the receivers. Therefore, the index code is optimal only when . Now, , and we have
[TABLE]
Further, by Sylvester’s rank inequality,
[TABLE]
Now, from Sylvester’s rank inequality, we get
[TABLE]
Since, is a fixed positive value, minimizing minimizes the upperbound on , thereby reducing . We use this approach of minimizing to construct index codes for low-dimensional data. Further, when has full row-rank (i.e., ), we have . For subspace-unaware case, we have [6].
III-A Throughput Gain
The length of the optimal subspace-aware index codes is defined as the following
[TABLE]
Next, we characterize the throughput gain obtained using subspace-aware index codes.
Theorem 1**.**
The length of the optimal linear index code obtained for the subspace-aware case is less than or equal to the length of the optimal linear index code obtained for the subspace-unaware case.
Proof. Let be the optimal subspace-unaware linear index code length, and . Now,
[TABLE]
Corollary 1**.**
The length of the optimal linear index code obtained in the subspace-aware case can be bounded as
[TABLE]
Proof.
By Sylvester’s rank inequality, for any matrix ,
[TABLE]
The proof follows from (9) and Theorem 1. ∎
IV Construction of Subspace-Aware Index Codes
It is well-known that the optimization problem in (8) is NP-hard. In order to solve (8), we make a practical assumption that the users can tolerate a decoding error of at most . That is,
[TABLE]
Note that, subspace-unaware case with USI can be seen as special cases of (8). Index codes over real field for this case has been studied previously in the literature [7]. It is known that a subspace-unaware linear index code matrix can be obtained by solving a matrix completion problem [6, 7]. However, the optimization problem in (8) is more challenging compared to the conventional matrix completion problems. This is due to the fact that an indeterminate element in affects multiple entries in the resultant matrix in (8), which is not the case in conventional matrix completion problems. In the next subsection, we consider the design of subspace-aware/unaware index codes with CSI/USI in a unified optimization framework.
IV-A Construction Algorithm for Index Codes
Let be a rank matrix and . Now, the optimization problem can be formulated as
[TABLE]
We solve the optimization problem in (11) for a range of values of and choose the minimum value of for which the optimization was feasible (i.e., all the constraints were satisfied) as the length of the index code ().
We factorize as , where , and . The optimization problem in (11) is not convex in , and simultaneously; however, it is convex in (or or ) when the rest of the optimization variables are fixed. In fact, here, each of the sub-problems can be solved in a closed form. Note that, is a rank approximation of (with an error of , i.e., ; index codes over enable us to obtain such a rank approximation). The steps in solving this optimization problem are listed in Algorithm 1. The alternating minimization method is guaranteed to converge to a locally optimum solution for a sufficiently large number of iterations [20].
Let be the matrix formed by choosing the linearly independent rows of . Now, we set . At every transmission instant, if the low-dimensional vector is available at the DS, then the matrix can be used for index coding to generate , else the matrix is used (since ).
IV-B Decoding Error Analysis
Theorem 2**.**
For an index code constructed using the proposed algorithm such that , the decoding error is bounded above by .
Proof. Let be the vector decoded at the receivers. Then, the decoding error is
[TABLE]
where the values of the matrices and are obtained from Algorithm 1. We choose such that . This is possible due to the following reason. Without loss of generality, we can express as , where is the matrix of linearly dependent rows of . Therefore, the rows of are in the rows of , i.e., for some matrix . Hence, by choosing as , we have . Further, without loss of generality, we assume .
Now, from (12), the decoding error can be bounded as
[TABLE]
Remark 1: The matrices and can be easily obtained from using one of the many commonly known techniques such as using QR decomposition, and .
Remark 2: In the proposed decoding strategy, the users need not be aware of the subspace matrix for decoding. Using the matrix , each user can directly decode .
V Numerical Results
Here, we present numerical results for the proposed index code construction algorithm and analyze its performance.
V-A Comparison
First, we consider the index coding problem with USI from [7]333The algorithm in [7] can solve only the subspace-unaware index coding problem with USI (conventional matrix completion problem) which is a special case of the problem we consider in this paper., where , for , and
[TABLE]
[TABLE]
Using our proposed algorithm, the matrix obtained for is
[TABLE]
The rank of this matrix is , which is the optimal index code length for this problem as given in [7]. We obtain the index code for this problem by choosing the linearly independent rows in the above matrix. The index code thus obtained is
[TABLE]
For example, when is the source-data, the reconstructed values at the users, from the designed index code were ; this gives a decoding error of . For the same problem, consider the source-data to be low-dimensional with . Now, . For this linear subspace, we get a subspace-aware index code of length 1 given by the matrix , and a corresponding decoding error of at the users.
V-B Simulation results
We simulated a simple multicast video-streaming scenario with source-data packets and users requesting data packets, each. We evaluated the index code length averaged over several instances for four different cases – namely, DS is subspace-unaware and the SI is uncoded, DS is subspace-unaware and the SI is coded, DS is subspace-aware and SI is uncoded, and DS is subspace-aware and the SI is coded. For fair comparison, we consider the same requirement matrix for all the cases.
In Figure 3, we plot the average index code length obtained using our proposed algorithm for different subspace dimensions fixing the SI length at each user to be . We see that when the source-data is low-dimensional, the average index code lengths obtained for the subspace-aware cases are significantly less than that of the subspace-unaware cases. The average index code lengths for the subspace-unaware cases are 7 (CSI) and 12.4 (USI). Whereas, in subspace-aware case, for , the average index code length is 1.1. Therefore, subspace-aware index codes reduce the transmissions required by about 91% for the USI case and by about 85% for the CSI case444 As the number of packets and users increase, the difference between the average index code length for the CSI and that of the USI case decreases.. Also, for , we observe that the subspace-aware index codes consistently outperform the subspace-unaware index codes by considerable margin.
Furthermore, from Fig. 4, we can see that even when the number of packets are or , the subspace-aware index code outperforms the subspace-unaware index codes. For example, when the subspace dimension is half that of the number of packets (i.e., when , and when ), subspace-aware index codes have code lengths that are % smaller compared to that of subspace-unaware index codes for uncoded side information, and subspace-aware index codes have % advantage over subspace-unaware index codes for coded side information. Thus, we can observe that irrespective of the number of packets, the subspace-aware index codes provide significant throughput gains over the subspace-unaware index codes.
In Figure 5, we evaluate the performance of the proposed algorithm for varying SI lengths () and fixing the subspace dimension at . As before, we can see that the subspace-aware index codes have significant throughput gains over the subspace-unaware index codes in both the USI and CSI cases. For instance, when , the subspace-aware cases (both USI and CSI) have an average index code length that is at least 30% smaller than that of the subspace-unaware cases.
VI Conclusion
In this paper, we studied a generalization of the index coding problem that exploits source-data’s structure to improve the system-throughput. We analytically characterized the length of the subspace-aware index codes and proposed an algorithm to obtain near optimal index codes. We showed that this approach significantly outperforms the conventional approaches when the source-data belongs to a low-dimensional subspace. Index coding for the case when the source-data belongs to a non-linear subspace or manifold is an interesting direction for future research. Further, network codes can also be constructed using the proposed algorithm, once the network coding problem is converted to an equivalent index coding problem [9].
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Y. Birk and T. Kol, “Coding on demand by an informed source (ISCOD) for efficient broadcast of different supplemental data to caching clients,” IEEE Trans. Inform. Theory , vol. 52, no. 6, pp. 2825-2830, Jun. 2006.
- 2[2] Z. Bar-Yossef, Y. Birk, T. Jayram, and T. Kol, “Index coding with side information,” IEEE Symposium on Foundations of Computer Science (FOCS) , pp. 197-206, 2006.
- 3[3] M. Ji, A.M. Tulino, J. Llorca, and G. Caire, “Caching and coded multicasting: Multiple groupcast index coding,” IEEE Global SIP , pp. 881-885, Dec. 2014.
- 4[4] V. Y. F. Tan, L. Balzano, and S. C. Draper, “Rank minimization over finite fields: Fundamental limits and coding-theoretic interpretations,” IEEE Trans. Inform. Theory , vol. 58, no. 4, pp. 2018-2039, Apr 2011.
- 5[5] K. W. Shum, M. Dai, and C. W. Sung, “Broadcasting with coded side information,” in Proc. IEEE PIMRC , 2012, pp. 89-94, Sep. 2012.
- 6[6] N. Lee, A. G. Dimakis, and R. W. Heath, “Index coding with coded side-information,” IEEE Commun. Letters , vol. 19, no. 3, pp. 319-322, 2015.
- 7[7] X. Huang and S. El Rouayheb, “Index coding and network coding via rank minimization,” Proc. of IEEE Information Theory Workshop , pp. 14-18, 2015.
- 8[8] Y. Shi and B. Mishra, “A Sparse and Low-Rank Optimization Framework for Index Coding via Riemannian Optimization,” ar Xiv:1604.04325 , 2016.
