coded caching for heterogeneous systems: an …wcan.ee.psu.edu/papers/ai_tcom_19_pp.pdfevaluate the...

15
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019 5321 Coded Caching for Heterogeneous Systems: An Optimization Perspective Abdelrahman M. Ibrahim, Student Member, IEEE, Ahmed A. Zewail, Member, IEEE, and Aylin Yener , Fellow, IEEE Abstract—In cache-aided networks, the server populates the cache memories at the users during low-traffic periods in order to reduce the delivery load during peak-traffic hours. In turn, there exists a fundamental tradeoff between the delivery load on the server and the cache sizes at the users. In this paper, we study this tradeoff in a multicast network, where the server is connected to users with unequal cache sizes and the number of users is less than or equal to the number of library files. We propose centralized uncoded placement and linear delivery schemes which are optimized by solving a linear program. Additionally, we derive a lower bound on the delivery memory tradeoff with uncoded placement that accounts for the heterogeneity in cache sizes. We explicitly characterize this tradeoff for the case of three end-users, as well as an arbitrary number of end-users when the total memory size at the users is small, and when it is large. Next, we consider a system where the server is connected to the users via rate-limited links of different capacities and the server assigns the users’ cache sizes subject to a total cache budget. We characterize the optimal cache sizes that minimize the delivery completion time with uncoded placement and linear delivery. In particular, the optimal memory allocation balances between assigning larger cache sizes to users with low capacity links and uniform memory allocation. Index Terms— Coded caching, uncoded placement, cache size optimization, multicast networks. I. I NTRODUCTION T HE immense growth in wireless data traffic is driven by video-on-demand services, which are expected to account for 82% of all consumer Internet traffic by 2020 [1]. The high temporal variation in video traffic leads to under-utilization of network resources during off-peak hours and congestion in peak hours [2]. Caching improves uniformization of network utilization, by pushing data into the cache memories at the network edge during off-peak hours, which in turn reduces congestion during peak hours. The seminal work [3] has proposed a novel caching technique for a downlink setting, Manuscript received October 5, 2018; revised March 6, 2019; accepted April 23, 2019. Date of publication May 1, 2019; date of current version August 14, 2019. This work was supported in part by NSF Grants 1526165 and 1749665. This paper was presented in part at the IEEE Wireless Commu- nications and Networking Conference (WCNC), San Francisco, CA, USA, in 2017, and in part at the IEEE International Conference on Communications (ICC), Paris, France, in 2017. The associate editor coordinating the review of this paper and approving it for publication was R. Thobaben. (Corresponding author: Aylin Yener.) The authors are with the Department of Electrical Engineering, The Pennsylvania State University, University Park, PA 16802 USA (e-mail: [email protected]; [email protected]; [email protected]). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TCOMM.2019.2914393 in which a server jointly designs the content to be placed during off-peak hours and the delivered during peak hours, in order to ensure that multiple end-users can benefit from delivery transmissions simultaneously. These multicast coding opportunities are shown to provide gains beyond local caching gains, which result from the availability of a fraction of the requested file at the user’s local cache. They are termed global caching gains since they scale with the network size. Reference [3] has shown that there exists a fundamental trade- off between the delivery load on the server and the users’ cache sizes. The characterization of this trade-off has been the focus of extensive recent efforts [4]–[14]. In particular, references [4]–[6] have characterized the delivery load memory trade-off with the uncoded placement assumption, i.e., assuming that the users cache only uncoded pieces of the files. The deliv- ery load memory trade-off with general (coded) placement has been studied in [7]–[14]. Coded caching schemes were developed for various cache-aided network architectures, such as multi-hop [15]–[17], device-to-device (D2D) [18], [19], multi-server [20], lossy broadcast [21]–[24], and interference networks [25], [26]. In addition to network topology, sev- eral practical considerations have been studied, such as the time-varying nature of the number of users [27], distortion requirements at the users [28]–[30], non-uniform content distribution [31]–[35], delay-sensitive content [36], and sys- tems with security requirements [37]–[39]. End-users in practical caching networks have varying stor- age capabilities. In this work, we address this system constraint by allowing the users to have distinct cache sizes. In particular, we study the impact of heterogeneity in cache sizes on the delivery load memory trade-off with uncoded placement. Models with similar traits have been studied in references [28], [40]–[42]. In particular, references [40], [41] have extended the decentralized caching scheme in [27] to systems with unequal cache sizes. References [28], [42] have proposed a centralized scheme in which the system is decomposed into layers such that the users in each layer have equal cache size. More specifically, the scheme in [3] is applied on each layer and the optimal fraction of the file delivered in each layer is optimized. Additionally, reference [42] has proposed grouping the users before applying the layered scheme which requires solving a combinatorial problem. In a follow-up work to some of our preliminary results presented in [43], reference [44] proposed optimizing over uncoded placement schemes assuming the delivery scheme in [27]. 0090-6778 © 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Upload: others

Post on 19-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019 5321

Coded Caching for Heterogeneous Systems:An Optimization Perspective

Abdelrahman M. Ibrahim, Student Member, IEEE, Ahmed A. Zewail, Member, IEEE,and Aylin Yener , Fellow, IEEE

Abstract— In cache-aided networks, the server populates thecache memories at the users during low-traffic periods in order toreduce the delivery load during peak-traffic hours. In turn, thereexists a fundamental tradeoff between the delivery load on theserver and the cache sizes at the users. In this paper, we study thistradeoff in a multicast network, where the server is connectedto users with unequal cache sizes and the number of users isless than or equal to the number of library files. We proposecentralized uncoded placement and linear delivery schemeswhich are optimized by solving a linear program. Additionally,we derive a lower bound on the delivery memory tradeoff withuncoded placement that accounts for the heterogeneity in cachesizes. We explicitly characterize this tradeoff for the case of threeend-users, as well as an arbitrary number of end-users when thetotal memory size at the users is small, and when it is large.Next, we consider a system where the server is connected tothe users via rate-limited links of different capacities and theserver assigns the users’ cache sizes subject to a total cachebudget. We characterize the optimal cache sizes that minimizethe delivery completion time with uncoded placement and lineardelivery. In particular, the optimal memory allocation balancesbetween assigning larger cache sizes to users with low capacitylinks and uniform memory allocation.

Index Terms— Coded caching, uncoded placement, cache sizeoptimization, multicast networks.

I. INTRODUCTION

THE immense growth in wireless data traffic is driven byvideo-on-demand services, which are expected to account

for 82% of all consumer Internet traffic by 2020 [1]. The hightemporal variation in video traffic leads to under-utilizationof network resources during off-peak hours and congestion inpeak hours [2]. Caching improves uniformization of networkutilization, by pushing data into the cache memories at thenetwork edge during off-peak hours, which in turn reducescongestion during peak hours. The seminal work [3] hasproposed a novel caching technique for a downlink setting,

Manuscript received October 5, 2018; revised March 6, 2019; acceptedApril 23, 2019. Date of publication May 1, 2019; date of current versionAugust 14, 2019. This work was supported in part by NSF Grants 1526165 and1749665. This paper was presented in part at the IEEE Wireless Commu-nications and Networking Conference (WCNC), San Francisco, CA, USA,in 2017, and in part at the IEEE International Conference on Communications(ICC), Paris, France, in 2017. The associate editor coordinating the review ofthis paper and approving it for publication was R. Thobaben. (Correspondingauthor: Aylin Yener.)

The authors are with the Department of Electrical Engineering, ThePennsylvania State University, University Park, PA 16802 USA (e-mail:[email protected]; [email protected]; [email protected]).

Color versions of one or more of the figures in this paper are availableonline at http://ieeexplore.ieee.org.

Digital Object Identifier 10.1109/TCOMM.2019.2914393

in which a server jointly designs the content to be placedduring off-peak hours and the delivered during peak hours,in order to ensure that multiple end-users can benefit fromdelivery transmissions simultaneously. These multicast codingopportunities are shown to provide gains beyond local cachinggains, which result from the availability of a fraction of therequested file at the user’s local cache. They are termedglobal caching gains since they scale with the network size.Reference [3] has shown that there exists a fundamental trade-off between the delivery load on the server and the users’ cachesizes.

The characterization of this trade-off has been the focusof extensive recent efforts [4]–[14]. In particular, references[4]–[6] have characterized the delivery load memory trade-offwith the uncoded placement assumption, i.e., assuming thatthe users cache only uncoded pieces of the files. The deliv-ery load memory trade-off with general (coded) placementhas been studied in [7]–[14]. Coded caching schemes weredeveloped for various cache-aided network architectures, suchas multi-hop [15]–[17], device-to-device (D2D) [18], [19],multi-server [20], lossy broadcast [21]–[24], and interferencenetworks [25], [26]. In addition to network topology, sev-eral practical considerations have been studied, such as thetime-varying nature of the number of users [27], distortionrequirements at the users [28]–[30], non-uniform contentdistribution [31]–[35], delay-sensitive content [36], and sys-tems with security requirements [37]–[39].

End-users in practical caching networks have varying stor-age capabilities. In this work, we address this system constraintby allowing the users to have distinct cache sizes. In particular,we study the impact of heterogeneity in cache sizes onthe delivery load memory trade-off with uncoded placement.Models with similar traits have been studied in references[28], [40]–[42]. In particular, references [40], [41] haveextended the decentralized caching scheme in [27] to systemswith unequal cache sizes. References [28], [42] have proposeda centralized scheme in which the system is decomposed intolayers such that the users in each layer have equal cachesize. More specifically, the scheme in [3] is applied on eachlayer and the optimal fraction of the file delivered in eachlayer is optimized. Additionally, reference [42] has proposedgrouping the users before applying the layered scheme whichrequires solving a combinatorial problem. In a follow-upwork to some of our preliminary results presented in [43],reference [44] proposed optimizing over uncoded placementschemes assuming the delivery scheme in [27].

0090-6778 © 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Page 2: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5322 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

Fig. 1. Centralized caching system with unequal cache sizes.

In this work, we focus on uncoded placement and lineardelivery, where the server places uncoded pieces of the filesat the users’ cache memories, and the multicast signals areformed using linear codes. Our proposed caching schemeoutperforms the schemes in [28], [42], [44], because it allowsflexible utilization of the side-information in the creation of themulticast signals, i.e., the side-information stored exclusivelyat t users is not restricted to multicast signals of size t + 1as in [3], [28], [40]–[42], [44]. We show that the worst-casedelivery load is minimized by solving a linear program overthe parameters of the proposed caching scheme. In order toevaluate the performance of our caching scheme, we derivea lower bound on the worst-case delivery load with uncodedplacement. Using this bound, we explicitly characterize thedelivery load memory trade-off for arbitrary number of userswith uncoded placement in the small total memory regime,large total memory regime, the definitions of which aremade precise in the paper, and for any memory regime forthe instance of three-users. Furthermore, we compare theachievable delivery load with the proposed lower bound withuncoded placement, and the lower bounds with general place-ment in [13], [41]. From the numerical results, we observethat our achievable delivery load coincides with the uncodedplacement bound.

Next, inspired by the schemes developed for distinctcache sizes we consider a middle ground between noiselesssetups [3], [28], [42] and noisy broadcast channels with cache-aided receivers [21]–[24]. More specifically, we assume thatthe server is connected to the users via rate limited links ofdifferent capacities, and the server assigns the users’ cachesizes subject to a cache memory budget. Reference [45]has considered a similar model and proposed jointly design-ing the caching and modulation schemes. Different from[21]–[24], [45], we consider a separation approach where thecaching scheme and the physical layer transmission schemeare designed separately. This is inline in general with theapproach of [3] and followup works that consider server toend-users links as bit pipes. We focus on the joint optimiza-tion of the users’ cache sizes and the caching scheme inorder to minimize the worst-case delivery completion time.More specifically, the optimal memory allocation, uncodedplacement, and linear delivery schemes are again obtained by

solving a linear program. For the case where the cache memorybudget is less than or equal to the library size at the server,we derive closed form expressions for the optimal memoryallocation and caching scheme. We observe that the optimalsolution balances between assigning larger cache memoriesto users with low capacity links, delivering fewer bits tothem, and uniform memory allocation, which maximizes themulticast gain.

II. SYSTEM MODEL

Notation: Throughout the paper, vectors are represented byboldface letters, sets of policies are represented by calligraphicletters, e.g., A, ⊕ refers to bitwise XOR operation, (x)+ �max{0, x}, |W | denotes the size of W , A\B denotes the setof elements in A and not in B, φ denotes the empty set, [K] �{1, . . . ,K}, A ⊂ B denotes A being a subset of or equalto B, �φ [K] denotes non-empty subsets of [K], and PA isthe set of all permutations of the elements in the set A, e.g.,P{1,2} = {[1, 2], [2, 1]}.

Consider a centralized system consisting of a server con-nected to K users via an error-free multicast link [3], seeFig. 1(a). A library {W1, . . . ,WN} of N files, each with sizeF bits, is stored at the server. User k is equipped with acache memory of size MkF bits. Without loss of generality,we assume that M1 ≤ M2 ≤ · · · ≤ MK . We define mk =Mk/N to denote the memory size of user k normalized bythe library size NF , i.e., mk ∈ [0, 1] for Mk ∈ [0, N ]. Thecache size vector is denoted by M = [M1, . . . ,MK ] and itsnormalized version by m = [m1, . . . ,mK ]. We focus on thecase where the number of files is larger than or equal to thenumber of users, i.e., N ≥ K .

In Section VII, we introduce rate limited download links ofdistinct capacities to the model. In particular, we consider thatthe link between the server and user k has capacity Ck bitsper channel use, which we refer to as the download rate atuser k, as illustrated in Fig. 1(b). We denote the collection oflink capacities by C = [C1, . . . , CK ]. In this setup, we seekthe system configuration with best performance, including thememory sizes {Mk}, subject to

∑Kk=1MkF ≤ mtotNF bits,

where mtot is the cache memory budget normalized by thelibrary size.

Page 3: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5323

The system operates over two phases: placement phaseand delivery phase. In the placement phase, the server pop-ulates users’ cache memories without knowing the users’demands. User k stores Zk, subject to its cache size constraint,i.e., |Zk| ≤MkF bits. Formally, the users’ cache contents aredefined as follows.

Definition 1 (Cache Placement): A cache placement func-tion ϕk : [2F ]N → [2�MkF�] maps the files in the library tothe cache of user k, i.e., Zk = ϕk(W1,W2, ..,WN ).

In the delivery phase, user k requests file Wdkfrom the

server. Users’ demand vector d = [d1, . . . , dK ] consists ofindependent uniform random variables over the files as in [3].In order to deliver the requested files, the server transmits asequence of unicast/multicast signals, XT ,d, to the users inthe sets T �φ [K]. XT ,d has length vT F bits, and is definedas follows.

Definition 2 (Encoding): Given d, an encoding functionψT ,d : [2F ]K → [2�vT F�] maps requested files to a signalwith length vT F bits, sent to users in T , i.e., XT ,d =ψT ,d(Wd1 , ..,WdK ).

At the end of the delivery phase, user k must be able toreconstruct Wdk

from the transmitted signals XT ,d, T �φ [K]and its cache content Zk, with negligible probability of error.

Definition 3 (Decoding): A decoding function μd,k:[2�RF�] × [2�MkF�] → [2F ], with R �

∑T �φ[K] vT , maps

cache content of user k, Zk, and the signals XT ,d, T �φ [K]to Wdk

, i.e., Wdk= μd,k

(X{1},d, X{2},d, . . . , X[K],d, Zk

).

A caching scheme is defined by (ϕk(.), ψT ,d(.), μd,k(.)).The performance is measured in terms of the achievabledelivery load, which represents the amount of data transmittedby the server in order to deliver the requested files.

Definition 4: For a given normalized cache size vectorm, the delivery load R(m) is said to be achievableif for every ε > 0 and large enough F , there exists(ϕk(.), ψT ,d(.), μd,k(.)) such that max

d,k∈[K]Pr(Wdk

�= Wdk) ≤

ε, and R∗(m) � inf{R : R(m) is achievable}.The set of cache placement policies A considered in this

work are the so-called uncoded policies, i.e., only piecesof individual files are placed in the cache memories. Sincewe have uniform demands, the cache memory at each userk is divided equally over the files, i.e., mkF bits per file.We consider the set of delivery schemes D, in which multicastsignals are formed using linear codes. The worst-case deliveryload achieved by a caching scheme in (A,D) is defined asfollows.

Definition 5: With placement and delivery policies in Aand D, the worst-case delivery load is defined as RA,D �maxdRd,A,D =

∑T �φ[K]vT , and the minimum delivery

load overall RA,D is denoted by R∗A,D(m) � inf{RA,D :

RA,D(m) is achievable}.Definition 6: The minimum delivery load achievable with a

placement policy in A and any delivery scheme, is defined asR∗

A(m) � inf{RA : RA(m) is achievable}.Remark 1: Note that R∗

A,D ≥ R∗A ≥ R∗, since R∗ is

obtained by taking the infimum over all achievable deliveryloads, R∗

A is restricted to uncoded placement policies in

A, and R∗A,D is restricted to cache placement and delivery

policies in A and D, respectively.In Section VII, we consider download links with limited

and unequal capacities. Thus, XT ,d will need to have a rate≤ min

j∈TCj [46]. Additionally, there is no guarantee that the

users outside the set T can decode XT ,d, as their downloadrates may be lower than min

j∈TCj . Consequently, a more relevant

system-wide metric is the total time needed by the serverto deliver all the requested files to all the users, defined asfollows, assuming uncoded placement and linear delivery.

Definition 7: With a placement policy in A, and a deliverypolicy in D, the worst-case delivery completion time (DCT) isdefined as ΘA,D � max

dΘd,A,D =

T �φ[K]

vTminj∈T

Cj.

Observe that, for Ck = 1, ∀k ∈ [K], ΘA,D = RA,D.

III. MOTIVATIONAL EXAMPLE

In order to motivate our caching scheme which is tailoredto capitalize on multicast opportunities to the fullest extent,we consider an example and compare the state-of-the-artcaching schemes in [28], [42], [44] with our scheme.

Consider a three-user system with three files, {A, B, C},and m = [0.4, 0.5, 0.7]. Without loss of generality, we assumethat the users request files A, B, and C, respectively. In theplacement phase, the files are divided into subfiles, which arelabeled by the users exclusively storing them, e.g., subfile Ai,j

is stored at users i and j.

1) The layered scheme [28], [42]: In the placement phase,the files are partitioned over three layers, we denote thefiles in layer l by the superscript (l). By optimizing thefile partitioning over the layers, we get the followingscheme. In layer 1, users have equal caches with sizeM1 F bits and files A(1), B(1), C(1) with size 0.9F bits,each of which is split into six disjoint subfiles, e.g.,A(1) is divided into A

(1)1 , A

(1)2 , A

(1)3 , A

(1)1,2, A

(1)1,3, A

(1)2,3,

where |A(1)i | = 0.2F , and |A(1)

i,j | = 0.1F . In delivery

phase, the server sends the multicast signals B(1)1 ⊕A(1)

2 ,C

(1)1 ⊕ A

(1)3 , C(1)

2 ⊕ B(1)3 , and C

(1)1,2 ⊕ B

(1)1,3 ⊕ A

(1)2,3.

In layer 2, we have a single user with no cache and atwo-user system with file size 0.1F bits and equal cachesize (M2−M1)F = 0.1NF bits. The server only needs tosend a unicast signal of size 0.1F bits to user 1. In layer 3,the (M3 − M2)F bits of the cache at user 3 are notutilized.

2) The caching scheme in [44]: Each file is split into sixdisjoint subfiles, e.g., A is divided into A1, A2, A3,A1,2, A1,3, A2,3, where |Ai| = 0.4F/3, |A1,2| = 0.1F/3,|A1,3| = 0.7F/3, and |A2,3| = F/3. In delivery phase,the server sends B1 ⊕ A2, C1 ⊕ A3, C2 ⊕ B3, andC1,2⊕B1,3⊕A2,3, where ⊕ denotes an XOR operationthat allows zero padding. Note that C1,2⊕B1,3⊕A2,3

can be decomposed into C1,2 ⊕ B′1,3 ⊕ A′

2,3, B′′1,3 ⊕

A′′2,3, and the unicast signal A′′′

2,3, where |B′1,3| =

|A′2,3| = |C1,2|, |B′′

1,3| = |A′′2,3| = |B1,3| − |C1,2|, and

|A′′′2,3| = |A2,3| − |B1,3|.

Page 4: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5324 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

Fig. 2. Optimal scheme with uncoded placement for K = N = 3 andM = [1.2, 1.5, 2.1].

3) Our proposed scheme: In the placement phase, each fileis split into five disjoint subfiles, e.g., A is divided intoA1, A2, A3, A1,3, A2,3, where |A1| = |A1,3| = 0.2F ,|A2| = |A3| = 0.1F , and |A2,3| = 0.4F . First, the serverpartitions A2,3 into A′

2,3, A′′2,3 such that |A′

2,3| = 0.3Fand |A′′

2,3| = 0.1F . Then, the server sends the multicastsignals

(B1 ∪ B1,3

)⊕(A2 ∪ A′

2,3

), C1 ⊕

(A3 ∪ A′′

2,3

),

and C2 ⊕ B3. One can easily verify that these multicastsignals enable the users to decode the requested files. Thecaching scheme is illustrated in Fig. 2.

Our caching scheme achieves a delivery load equal to 0.7,compared to 0.8 by the layered scheme [28], [42], and 0.7333by the scheme in [44]. The schemes in [28], [42], [44] needan additional unicast transmission compared with our scheme,as we have better utilization of side-information, e.g., A′

2,3 isused in the multicast signal to users {1, 2}. Additionally, in thisexample, the layered scheme does not utilize (M3 −M2)Fbits of the cache at user 3. In Theorem 4, we show that ourproposed scheme is optimal with uncoded placement.

IV. CACHE PLACEMENT PHASE

Each file Wl is partitioned into 2K subfiles. A subfile Wl,Sis labeled by the set of users S exclusively storing it. The setof uncoded placement schemes for a given m is defined as

A(m) ={

a ∈ [0, 1]2K

∣∣∣∣

S⊂[K]

aS = 1,∑

S⊂[K]: k∈SaS ≤ mk,

∀k ∈ [K]}

, (1)

where a is the vector of allocation variables aS , S ⊂ [K]and |Wl,S | = aSF bits, ∀l ∈ [N ]. For example, for K = 3,we have

aφ + a{1} + a{2} + a{3} + a{1,2} + a{1,3}

+ a{2,3} + a{1,2,3} = 1, (2)

a{i} + a{i,j} + a{i,k} + a{i,j,k} ≤ mi,

i, j, k ∈ {1, 2, 3}, i �= j �= k. (3)

V. DELIVERY PHASE

A. Multicast Signals XT ,d

A multicast signal XT ,d delivers a piece of the file Wdj ,W T

dj, to user j ∈ T . The server generates XT ,d by XORing

W Tdj, ∀j ∈ T , where |W T

dj| = vT F bits, ∀j ∈ T . Each user

in T \{j} must be able to cancel W Tdj

from XT ,d, in order todecode its requested piece. Consequently, W T

djis constructed

using the side-information cached by all the users in T \ {j}and not available at user j:

XT ,d = ⊕j∈T W Tdj

= ⊕j∈T

( ⋃

S∈BTj

W Tdj ,S

)

, (4)

where W Tdj ,S ⊂ W T

djwhich is stored exclusively at the users

in the set S and

BTj �

{S ⊂ [K] : T \{j} ⊂ S, j �∈ S

}, ∀j ∈ T , (5)

for example, for K = 3 and i, j, k ∈ {1, 2, 3}, i �= j �= k,the multicast signals are defined as

X{i,j},d = W{i,j}di

⊕ W{i,j}dj

=(W

{i,j}di,{j}

⋃W

{i,j}di,{j,k}

)⊕(W

{i,j}dj ,{i}

⋃W

{i,j}dj ,{i,k}

),

(6)

X{1,2,3},d = W{1,2,3}d1

⊕ W{1,2,3}d2

⊕ W{1,2,3}d3

= W{1,2,3}d1,{2,3} ⊕W

{1,2,3}d2,{1,3} ⊕W

{1,2,3}d3,{1,2}. (7)

where |W {i,j}di

| = |W {i,j}dj

| = v{i,j}F bits and |W {1,2,3}d1

| =

|W {1,2,3}d2

| = |W {1,2,3}d3

| = v{1,2,3}F . |W Tdj ,S | = uTSF bits,

i.e., the assignment variable uTS ∈ [0, aS ] represents thefraction of Wdj ,S involved in the multicast signal XT ,d.Note that one subfile can contribute to multiple multicasttransmissions, for example in a three-user system Wdk,{i,j} isused in X{i,k},d, X{j,k},d, X{i,j,k},d. Therefore, in order toguarantee that no redundant bits are transmitted, each subfileWdk,S is partitioned into disjoint pieces, e.g., for K = 3,we have

Wdk,{i,j} = W{i,k}dk,{i,j}

⋃W

{j,k}dk,{i,j}

⋃W

{i,j,k}dk,{i,j}

⋃Wφ

dk,{i,j},

(8)

where Wφdk,S denotes the remaining piece which is not

involved in any transmission.Remark 2: By contrast with [3], [28], [42], [44], where

multicast signals of size t+1 utilize only the side-informationstored exclusively at t users, i.e., XT ,d = ⊕k∈TW

Tdk,T \{k},

the structure of the multicast signal in (4) represents allfeasible utilizations of the side-information. This flexibility isinstrumental in achieving the delivery load memory trade-offwith uncoded placement R∗

A.

B. Unicast Signals X{i}

A unicast signal X{i} delivers the fraction of the requestedfile which is not stored at user i and will not be delivered by

Page 5: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5325

the multicast transmissions. For example, for K = 3, we have

X{i},d =Wdi\( ⋃

S:i∈SWdi,S

⋃W

{i,j}di

⋃W

{i,k}di

⋃W

{i,j,k}di

),

i, j, k ∈ {1, 2, 3}, i �= j �= k (9)

where⋃

S:i∈S Wdi,S is stored at user i and W Tdi

is deliveredto user i via XT ,d.

C. Delivery Phase Constraints

Recall that vT ∈ [0, 1] and uTS ∈ [0, aS ] represent|XT ,d|/F , and |W T

dj ,S |/F , respectively. Our delivery schemecan be represented by constraints on vT and uTS as follows.First, the structure of the multicast signals in (6), (7) imposes

S∈BTj

uTS = vT , ∀ T �φ [K], ∀ j ∈ T . (10)

For example, for K = 3, we have

v{i,j} = u{i,j}{j} + u

{i,j}{j,k} = u

{i,j}{i} + u

{i,j}{i,k}, (11)

v{1,2,3} = u{1,2,3}{2,3} = u

{1,2,3}{1,3} = u

{1,2,3}{1,2} . (12)

In order to prevent transmitting redundant bits from the subfileWdj ,S to user j, we need

T �φ[K]: j∈T ,T ∩S=φ,T \{j}⊂SuTS ≤ aS , ∀ j �∈ S,

∀ S ∈{S ⊂ [K] : 2 ≤ |S| ≤ K − 1

}, (13)

where the condition T \ {j} ⊂ S follows from (5).For example, for K = 3, (13) implies

u{i,k}{i,j} + u

{j,k}{i,j} + u

{i,j,k}{i,j} ≤ a{i,j}. (14)

Finally, the delivery signals sent by the server must completeall the requested files:

T �φ[K]: k∈TvT ≥ 1 −

S⊂[K]: k∈SaS , ∀ k ∈ [K], (15)

for example, for K = 3, the delivery completion constraintfor user i is given by

v{i} + v{i,j} + v{i,k} + v{i,j,k} ≥ 1 −(a{i} + a{i,j}

+ a{i,k} + a{i,j,k}). (16)

Therefore, for given a, the set of feasible delivery schemes,D(a), is defined as

D(a) =

{

(v,u)∣∣∣∣

T �φ[K]:k∈TvT ≥ 1 −

S⊂[K]:k∈SaS ,∀k∈ [K],

S∈BTj

uTS = vT , ∀T �φ [K], ∀j ∈ T ,

T �φ[K]: j∈T ,T ∩S=φ,T \{j}⊂SuTS ≤ aS , ∀j �∈ S,

∀S ∈{S ⊂ [K] : 2 ≤ |S| ≤ K − 1

},

0 ≤ uTS ≤ aS , ∀T �φ [K], ∀S ∈⋃

j∈TBT

j

}

, (17)

where the transmission and assignment variables are repre-sented by v and u respectively.

D. Discussion

The linear constraints in (17) guarantee the delivery ofthe requested files. Successful delivery is guaranteed by1) By (10), user j ∈ T can retrieve W T

djfrom the signal XT ,d.

2) By (13) and (15), Wdj can be reconstructed from the piecesdecoded at user j. The delivery completion constraints ensurethat the number of decoded bits are sufficient for decoding thefile, and the redundancy constraints prevent the server fromtransmitting redundant bits. Formally, we have:

Proposition 1: For S′ ⊂ [K] such that 1 ≤ |S′| ≤ K−2,and some user j �∈ S′, the size of the multicast transmissionsXT ,d, where {j} ∪ S′ ⊂ T , is limited by the amount of side-information stored at the users in S′ and not available atuser j, i.e.,

T �φ[K]: {j}∪S′⊂TvT ≤

S⊂[K]: S′⊂S,j ∈SaS , (18)

which is guaranteed by (10) and (13).The proof of Proposition 1 is provided in Appendix A.

VI. FORMULATION AND RESULTS

In this section, we first show that the optimal uncoded place-ment and linear delivery schemes can be obtained by solving alinear program. Next, we present a lower bound on the deliveryload with uncoded placement. Based on this bound, we showthat linear delivery is optimal with uncoded placement forthree cases; namely,

∑Kk=1mk ≤ 1,

∑Kk=1mk ≥ K − 1,

and the three-user case. That is, for these cases we explicitlycharacterize the delivery load memory trade-off with uncodedplacement R∗

A(m).

A. Caching Scheme Optimization

In Sections IV and V, we have demonstrated that anuncoded placement scheme in A is completely characterizedby the allocation vector a, which represents the fraction offiles stored exclusively at each subset of users S ⊂ [K].Additionally, the assignment and transmission vectors (u,v)completely characterize a delivery scheme in D, where vrepresents the size of the transmitted signals, and u determinesthe structure of the transmitted signals. For a given normalizedmemory vector m, the following optimization problem char-acterizes the minimum worst-case delivery load R∗

A,D(m) andthe optimal caching scheme in A,D, i.e., the optimal valuesfor a, v, and u.

O1: mina,u,v

T �φ[K]

vT (19a)

s.t. a ∈ A(m), and (u,v) ∈ D(a), (19b)

where A(m) and D(a) are defined in (1) and (17),respectively.

Remark 3: For equal cache sizes, R∗A,D(m) is equal to

the worst-case delivery load of [3], which was shown tobe optimal for uncoded placement in [4] for N ≥ K . ForN < K , the optimal scheme for uncoded placement wasproposed in [6]. The solution of (19) is equivalent to thememory sharing solution proposed in [3].

Page 6: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5326 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

Remark 4: In Section V, XT ,d is formed by XORing piecesof equal size. A delivery scheme with XT ,d = ⊕j∈T W T

dj,

where ⊕ denotes an XOR operation that allows zero paddingso that the pieces are of equal length, is equivalent to a deliv-ery scheme in D and both yield the same delivery load. Forexample, X{1,2},d = W

{1,2}d1,{2}⊕W

{1,2}d2,{1}, with u{1,2}

{2} > u{1,2}{1} ,

is equivalent to a multicast signal X{1,2},d and a unicast

signal X{2},d, with sizes u{1,2}{1} F bits, and

(u{1,2}{2} −u{1,2}

{1})F

bits, respectively.Remark 5: In this work, we assume the file size to be

large enough, such that the cache placement and deliveryschemes can be tailored to the unequal cache sizes byoptimizing over continuous variables. More specifically, forF large enough, uTS F can be used instead of �uTS F � foruTS ∈ [0, 1]. The required subpacketization level is the least-common-denominator of the assignment variables uTS . Thatis, the minimum packet size is equal to the greatest-common-divisor (gcd) of all uTS F , assuming uTS F are integers.

B. Lower Bounds

Next, using the approach in [4], [6], we show that R∗A(m)

is lower bounded by the linear program in (20).Theorem 1: (Uncoded placement bound) Given K , N ≥

K , and m, the minimum worst-case delivery load withuncoded placement R∗

A(m) is lower bounded by

O2: maxλ0∈R,λk≥0,αq≥0

−λ0 −K∑

k=1

mkλk (20a)

s.t. λ0+∑

k∈Sλk+γS≥0, ∀S⊂ [K], (20b)

q∈P[K]

αq = 1, (20c)

where

γS �

⎧⎪⎪⎪⎪⎪⎨

⎪⎪⎪⎪⎪⎩

K, for S = φ,

0, for S = [K],K−|S|∑

j=1

q∈P[K]: qj+1∈S,

{q1,...,qj}∩S=φ

j αq, otherwise.(21)

and P[K] is the set of all permutations of [1, 2, . . . ,K].The proof of Theorem 1 is provided in Appendix B. We

compare the achievable delivery load R∗A,D(m) with the

following lower bounds on the worst-case delivery load R∗.From [41], R∗(m) is lower bounded by

maxs∈[K], l∈[�N

s ]

{N − (N −Kl)+

l

−sN

s+γ∑

i=1

mi + γ(N−ls)+

l(s+γ)

}

, (22)

where γ� min{(�N

l � − s)+,K − s

}and m1 ≤ · · · ≤ mK .

The following proposition is a straightforward generalizationof the lower bounds in [13] for systems with distinct cachesizes.

Proposition 2: Given K , N , m, and m1 ≤ · · · ≤ mK ,we have

R∗(m) ≥ max

{

maxs∈[min{K,N}]

{

s−s∑

k=1

N∑k

i=1mi

N − k + 1

}

,

maxs∈[min{K,N}]

{

s(1 −

s∑

i=1

mi

)}}

. (23)

C. Special Cases

Next, we consider three special cases, for which we explic-itly characterize R∗

A(m) and show that the solution of (19)is the optimal caching scheme with uncoded placement. First,we consider the small cache regime,

∑Ki=1mi ≤ 1,

Theorem 2: The minimum worst-case delivery load withuncoded placement is given by

R∗A(m) = K −

K∑

j=1

(K − j + 1)mj, (24)

for m1 ≤ · · · ≤ mK ,∑K

i=1mi ≤ 1, and N ≥ K .Proof: Achievability: In the placement phase, each file

is split into K + 1 subfiles such that a{j} = mj and aφ =1 −

∑Kk=1mk. In the delivery phase, we have v{j} = 1 −

∑j−1i=1 mi − (K − j + 1)mj and v{i,j} = u

{i,j}{i} = u

{i,j}{j} =

min{a{i}, a{j}}. In turn, RA,D(m) = K −∑K

j=1(K − j +1)mj is achievable. Converse: By substituting α[1,2,...,K] =1in Theorem 1, we get

maxλk≥0,λ0

− λ0 −K∑

k=1

mk λk (25a)

s.t. λ0 +∑

k∈Sλk + γS ≥ 0, ∀S ⊂ [K], (25b)

where γS = j − 1 if {j} ∈ S and [j − 1] ∩ S = φ forj ∈ [K]. λ0 = −K, λj = K − j + 1 is a feasible solutionto (25), since λ0 + λj + (j − 1) = 0. Therefore, R∗

A(m) ≥K −

∑Kj=1(K − j + 1)mj .

Next theorem characterizes R∗A(m) in the large total mem-

ory regime where∑K

i=1mi ≥ K−1.Theorem 3: The minimum worst-case delivery load with

uncoded placement is given by

R∗A(m) = R∗(m) = 1 −m1, (26)

for m1 ≤ · · · ≤ mK ,∑K

i=1mi ≥ K−1, and N ≥ K .Proof: Achievability: In the placement phase, Wj is

partitioned into subfiles Wj,[K]\{i}, i ∈ [K] and Wj,[K], suchthat a[K] =

∑Ki=1mi−(K−1) and a[K]\{i} = 1−mi, i ∈ [K].

In the delivery phase, we have the following cases.

• For (K− 2)m1 ≥∑K

i=2mi − 1, we have the followingmulticast transmissions

X[K]\{i},d =⊕k∈[K]\{i}W[K]\{i}dk,[K]\{k}, i∈{2, . . . ,K}, (27)

X[K],d = ⊕k∈[K]W[K]dk,[K]\{k}, (28)

Page 7: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5327

with

v[K]\{i} = mi −m1, i ∈ {2, . . . ,K}, (29)

v[K] = 1 + (K − 2)m1 −K∑

k=2

mk. (30)

• For (K−l−1)ml <∑K

i=l+1mi−1 and (K−l−2)ml+1 ≥∑K

i=l+2mi−1, where l ∈ [K−2], we have the followingtransmissions

X[i],d = ⊕k∈[i]W[i]dk,[K]\{k}, i ∈ [l], (31)

X[K]\{i},d =⊕k∈[K]\{i}W[K]\{i}dk,[K]\{k}, i∈{l+1, . . . ,K}. (32)

with

v[i] = mi+1 −mi, i ∈ [l−1], (33)

v[l] =1

K−l−1

( K∑

j=l+1

mj−1− (K−l−1)ml

)

, (34)

v[K]\{i} =1

K−l−1

(

(K−l−1)mi + 1 −K∑

j=l+1

mj

)

,

i ∈ {l+1, . . . ,K}. (35)

In both cases, the size of the assignment variables satisfiesuT[K]\{k} = vT , ∀k ∈ T . Converse: By substituting s = 1 in(23), we get R∗(m) ≥ 1 −m1.

In the next theorem, we characterize R∗A(m) for K = 3.

Theorem 4: For K = 3, N ≥ 3, and m1 ≤ m2 ≤m3, the minimum worst-case delivery load with uncodedplacement

R∗A(m)=max

{

3−∑3

j=1(4 − j)mj ,53−∑3

j=1(4−j)mj

3 ,

2−2m1 −m2, 1−m1

}

. (36)

In particular, we have the following regions

1) For3∑

j=1

mj ≤1, R∗A(m)=3−

3∑

j=1

(4 − j)mj .

2) For 1≤3∑

j=1

mj ≤2, we have three cases

• If m3 < m2 + 3m1 − 1, and 2m2 + m3 < 2, then

R∗A(m) =

53−

3∑

j=1

(4 − j)mj

3.

• If m3 ≥ m2 + 3m1 − 1, and m1 + m2 < 1, thenR∗

A(m) = 2 − 2m1 −m2.• If 2m2 + m3 ≥ 2, and m1 + m2 ≥ 1, thenR∗

A(m) = 1 −m1.

3) For3∑

j=1

mj ≥ 2, R∗A(m)=1−m1.

Proof of Theorem 4 is provided in Appendix C.Remark 6: By substituting m3 = 1 in Theorem 4, we obtain

the two-user delivery load memory trade-off with uncodedplacement, given as R∗

A(m)=max {2−2 m1 −m2, 1−m1}.

Remark 7: From the proposed schemes, we observe that theallocation variables satisfy

S⊂[K]: |S|=t

aS = t+ 1 −K∑

i=1

mi, (37)

S⊂[K]: |S|=t+1

aS =K∑

i=1

mi − t, (38)

for t <∑K

i=1mi ≤ t+1 and aS = 0 for |S| �∈ {t, t+1}. Thatis, the proposed placement scheme generalizes the memorysharing scheme in [3], where aS = aS′ for |S| = |S′|.

D. Comparison With Other Schemes WithHeterogeneous Cache Sizes

Previous work includes the layered heterogeneous caching(LHC) scheme [28], [42], where the users are divided intogroups and within each group the users’ cache memories aredivided into layers such that the users in each layer have equalcache sizes. The Maddah-Ali–Niesen caching scheme [3] isapplied to the fraction of the file assigned to each layer. LetRLHC(m) denote delivery load of this scheme. We have

Proposition 3: Given K,N ≥ K and m, we haveR∗

A,D(m) ≤ RLHC(m).Proof: LHC scheme is a feasible (but not necessarily opti-

mal) solution to (19) shown as follows. Grouping: Dividing theusers into disjoint groups can be represented in the placementphase by setting aS = 0 for any set S containing two or moreusers from different groups. Similarly, in the delivery phasevT = 0 if {q1, q2} ⊂ T , q1 and q2 belong to distinct groups.Layering: Without loss of generality, assume there is onegroup, i.e. there are K layers. Let αl be the fraction of thefile considered in layer l, and assign aS,l, vT ,l, and uTS,l to

layer l, such that aS =∑K

l=1 aS,l, vT =∑K

l=1 vT ,l, and uTS =∑K

l=1 uTS,l. Additionally, we have

∑S⊂{l,...,K} aS,l = αl,

and∑

S⊂{l,...,K}: {k}∈S aS,l +∑

T ⊂{l,...,K}: {k}∈T vT ,l ≥ αl

for k ∈ {l, . . . ,K}. Thus, the LHC scheme is a feasiblesolution to (19).

The recent reference [44] has proposed optimizing overuncoded placement schemes A with the decentralized deliveryscheme in [27], i.e., the multicast signals are defined asXT ,d = ⊕k∈T Wdk,T \{k} where vT = maxk∈T aT \{k},which limits the multicast opportunities [33] as illustratedin Section III.

Remark 8: For fixed cache contents, reference [33] pro-posed a procedure for redesigning the multicast signals,formed by XORing pieces of unequal size, in order to betterutilize the side-information stored at the users. In contrast,our scheme is a centralized scheme, where we jointly optimizethe cache contents and the delivery procedure which allowsflexible utilization of the side-information at the users.

Different from [28], [42], [44], we propose a more generaldelivery scheme that allows flexible utilization of the side-information. Both our solution and that of [44] is exponentialin the number of users. Notably, for systems with only twodistinct cache sizes over all users, reference [44] has a caching

Page 8: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5328 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

scheme which is obtained by solving an optimization problemwith polynomial complexity.

VII. OPTIMIZING CACHE SIZES WITH

TOTAL MEMORY BUDGET

In this section, we consider a centralized system where theserver is connected to the K users via rate limited downloadlinks of distinct capacities, as described by Fig. 1(b).

A. Problem Formulation

Next, we consider the joint optimization of both the cachingscheme and the users’ cache sizes for given download rates C(see Fig. 1(b)) and normalized cache budget mtot. Morespecifically, the minimum worst-case DCT, Θ∗

A,D(mtot,C),is characterized by

O3: mina,u,v,m

T �φ[K]

vTminj∈T

Cj(39a)

s.t. a ∈ A(m), (v,u) ∈ D(a), (39b)K∑

k=1

mk ≤ mtot, (39c)

0 ≤ mk ≤ 1, ∀ k ∈ [K], (39d)

where A(m) is defined in (1) and D(a) is defined in (17).

B. Optimal Cache Sizes

The linear program in (39) characterizes the optimal mem-ory allocation assuming uncoded placement and linear deliveryschemes. For the case where mtot ≤ 1, we are able to derivea closed form expression for the optimal memory allocation,and show that the optimal solution balances between allocatinglarger cache memories to users with low decoding rates anduniform memory allocation. In particular, the cache memorybudget mtot is allocated uniformly between users {1, . . . , q},where q is determined by C as illustrated in the followingtheorem.

Theorem 5: For C1 ≤ · · · ≤ CK and mtot ≤ 1, the mini-mum worst-case delivery completion time (DCT) is given by

Θ∗A,D(mtot,C) =

K∑

j=1

1Cj

− maxi∈[K]

⎧⎨

i∑

j=1

j mtot

i Cj

⎫⎬

⎭, (40)

and the optimal memory allocation is given by m∗1 =

· · · = m∗q = mtot

q , where the user index q =

argmaxi∈[K]

{∑ij=1 j/(i Cj)

}.

Proof of Theorem 5 is provided in Appendix D. Note that ifthe optimal solution is not unique, i.e., q ∈ {q1, . . . , qL}, forsome L ≤ K , then m∗ =

∑Li=1 αi

[mtotqi, . . . , mtot

qi, 0, . . . , 0

],

where∑L

i=1 αi = 1 and αi ≥ 0. The next propositionshows that uniform memory allocation combined with theMaddah-Ali–Niesen caching scheme yields an upper boundon Θ∗

A,D(mtot,C).Proposition 4: For mtot ∈ [K] and C1 ≤ C2 ≤ · · · ≤ CK ,

we have

Θ∗A,D(mtot,C) ≤ Θunif(mtot,C) =

1(

Kmtot

)

K−mtot∑

j=1

(K−jmtot

)

Cj. (41)

Proof: Assuming mj = mtot/K, ∀j ∈ [K], the placementphase is described by aS = 1/

(K

mtot

)for |S| = mtot and

zero otherwise. While, the delivery phase is defined by vT =1/(

Kmtot

)for |T | = mtot + 1 and uTS = vT for S ∈ {T \ {j} :

j ∈ T }. In turn, we have

Θunif(mtot,C) =∑

T �φ[K]

vTminj∈T

Cj,

=1

(K

mtot

)∑

T �φ[K]: |T |=mtot+1

1minj∈T

Cj,

=1

(K

mtot

)

K−mtot∑

j=1

(K−jmtot

)

Cj, (42)

since C1 ≤ C2 ≤ · · · ≤ CK and there are(K−jmtot

)sets of

size mtot + 1 that include user j and do not include users{1, 2, . . . , j − 1}. Finally, Θ∗

A,D(mtot,C) ≤ Θunif(mtot,C),since uniform memory allocation is a feasible solution (butnot necessarily optimal) to (39).

VIII. NUMERICAL RESULTS

First, we provide a numerical example for the optimalcaching scheme obtained from (19).

Example 1: Consider a caching system with K = 3, andm = [0.4, 0.5, 0.6]. The caching scheme obtained from (19),is described as follows.

Placement phase: Every file W (l) is divided into six subfiles,such that a{1} = 7/30, a{2} = 4/30, a{3} = 4/30, a{1,2} =1/30, a{1,3}=4/30, and a{2,3}=10/30.

Delivery phase: We have the following transmissions

X{1,2},d =(W

{1,2}d1,{2}

⋃W

{1,2}d1,{2,3}

)⊕(W

{1,2}d2,{1}

⋃W

{1,2}d2,{1,3}

),

X{2,3},d = W{2,3}d2,{3} ⊕ W

{2,3}d3,{2},

X{1,3},d =(W

{1,3}d1,{3}

⋃W

{1,3}d1,{2,3}

)⊕ W

{1,3}d3,{1},

X{1,2,3},d = W{1,2,3}d1,{2,3} ⊕ W

{1,2,3}d2,{1,3} ⊕ W

{1,2,3}d3,{1,2},

and the subfile sizes are as follows

1) v{1,2} = 10/30, where u{1,2}{2} = a{2}, u{1,2}

{2,3} = 0.2,

u{1,2}{1} = a{1}, and u{1,2}

{1,3} = 0.1.

2) v{1,3} = 7/30, where u{1,3}{3} = a{3}, u{1,3}

{2,3} = 0.1, and

u{1,3}{1} = a{1}.

3) v{2,3} = 4/30, where u{2,3}{3} = a{3} and u{2,3}

{2} = a{2}.

4) v{1,2,3} = 1/30, where u{1,2,3}{2,3} = u

{1,2,3}{1,3} = u

{1,2,3}{1,2} =

a{1,2}.

The minimum worst-case delivery load R∗A(m) = R∗

A,D

(m) = 22/30. Note that, per Remark 5, the required sub-packetization level for the proposed scheme is 30, i.e., theminimum packet size is given by

gcd(u) = gcd(

7F30,

6F30,

4F30,

3F30,F

30

)

=F

30,

for F = 30n, n = 1, 2, . . . .In Fig. 3, we compare the delivery load R∗

A,D(m) obtainedfrom optimization problem (19), with the lower bounds on

Page 9: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5329

Fig. 3. Comparing R∗A,D (m) with the lower bounds in (20)-(23), for

K = 5, and mk = 0.95 mk+1.

Fig. 4. Comparing R∗A,D (m) with the lower bounds on R∗

A (m), formk = 0.75 mk+1.

R∗(m) in (22), (23), and the lower bound with uncodedplacement in (20), for N = K = 5 and mk = 0.95mk+1.

From Fig. 3, we observe that R∗A,D(m) = R∗

A(m),which is also demonstrated in Fig. 4, for K = 4, 5, 6, andmk = 0.75mk+1. In Fig. 5, we compare R∗

A,D(m) with theachievable delivery loads in [28], [42], [44], for K = 5 andmk = 0.75mk+1.

The next example concerns with solving (39) for a systemwith unequal download rates, and comparing the optimalmemory allocation and caching scheme with the Maddah-Ali–Niesen caching scheme with uniform memory allocation.

Example 2: Consider a caching system with K = 3,memory budget mtot = 1, and C1 ≤ C2 ≤ C3,which implies Θunif(1,C) = 1

3

(2

C1+ 1

C2

), and q =

argmaxi∈[3]

{ i∑

j=1

j

i Cj

}. In particular, we consider the fol-

lowing cases for the download rates:

1) For C = [0.2, 0.4, 0.5], we get q = 3, hence the optimalsolution is the Maddah-Ali–Niesen caching scheme withm∗ = [1/3, 1/3, 1/3], and we have Θ∗

A,D = 4.1667.

Fig. 5. Comparing R∗A,D (m) with the achievable delivery loads in [28],

[42], [44], for K = 5 and mk = 0.75 mk+1.

Fig. 6. Comparing Θ∗A,D (mtot, C) and Θunif(mtot, C) for C = [0.2, 0.4,

0.6, 0.6, 0.8, 0.8, 1].

2) For C = [0.3, 0.3, 0.6], we get q ∈ {2, 3}, i.e., theoptimal solution is not unique. m∗ = [α

2 + 1−α3 , α

2 +1−α

3 , 1−α3 ], where α ∈ [0, 1], and Θ∗

A,D = Θunif =3.3333.

3) For C = [0.2, 0.3, 0.6], we get q = 2. m∗ =[0.5, 0.5, 0] and the optimal caching scheme is a∗{1} =

a∗{2} = 0.5, v∗{1,2} = u∗{1,2}{1} = u

∗{1,2}{2} = 0.5, v∗{3} = 1,

which results in Θ∗A,D = 4.1667 < Θunif = 4.4444.

In Fig. 6, we compare Θ∗A,D(mtot,C) with Θunif(mtot,C) for

K = 7, and C = [0.2, 0.4, 0.6, 0.6, 0.8, 0.8, 1]. We observethat Θ∗

A,D(mtot,C) ≤ Θunif(mtot,C). For mtot ≤ 1,we have argmaxi∈[K]

∑ij=1(j mtot)/(i Cj) = K , which

implies Θ∗A,D(mtot,C) = Θunif(mtot,C).

In Fig. 7(a) and 7(b), we show the optimal memory allo-cation for C = [0.2, 0.2, 0.2, 0.5, 0.6, 0.7, 0.7] and C =[0.2, 0.2, 0.4, 0.4, 0.6, 0.7, 0.8], respectively. A generalobservation is that the optimal memory allocation balances thegain attained from assigning larger memories for users withweak links and the multicast gain achieved by equating the

Page 10: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5330 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

Fig. 7. The optimal memory allocations with different link capacities.

cache sizes. Consequently, in the optimal memory allocation,the users are divided into groups according to their rates,the groups that include users with low rates are assigned largerfractions of the cache memory budget, and users within eachgroup are given equal cache sizes. These characteristics areillustrated in Fig. 7(a), which shows that the users are groupedinto G1 = {1, 2, 3} and G2 = {4, 5, 6, 7} for all mtot ∈ [0, 7).Fig. 7(b) shows that the grouping not only depends on therates C, but also on the cache memory budget mtot. Forinstance, for mtot = 2, we have two groups G1 = {1, 2}and G2 = {3, 4, 5, 6, 7}, however, for mtot = 3, we haveG1 = {1, 2}, G2 = {3, 4}, and G2 = {5, 6, 7}.

IX. CONCLUSION

In this paper, we have considered a downlink where the end-users are equipped with cache memories of different sizes.We have shown that the problem of minimizing the worst-case delivery load with uncoded placement and linear deliverycan be modeled as a linear program. We have derived alower bound on the worst-case delivery load with uncodedplacement. We have characterized the exact delivery loadmemory trade-off with uncoded placement for the case wherethe aggregate cache size is less than or equal to the librarysize (small memory), the case where the aggregate cache sizeis greater than or equal to K − 1 times the library size (largememory), and the three-user case for arbitrary memory size.The proposed scheme outperforms other works in the samesetup [28], [42], [44], and is numerically observed to verify theexcellent performance of uncoded placement for parameters ofinterest.

We have also considered a system where the links betweenthe server and the users have unequal capacities. In thisscenario, the server suggests the memory sizes for cachedcontents along with contents to the users subject to a totalmemory budget, in order to minimize the delivery completiontime. We have observed that the optimal solution balancesbetween allocating larger cache sizes to the users with low linkcapacities and uniform memory allocation which maximizesthe multicast gain. For when the total cache budget is lessthan the library size, we have shown that the optimal memory

allocation distributes the cache memory budget uniformly oversome number of users with the lowest link capacities. Thisnumber is a function of the users’ link capacities.

The optimization perspective in this work provides a prin-cipled analysis of optimal caching and delivery schemes forcache-enabled networks, by translating the design elements ofcache placement and delivery into structural optimization con-straints. Future directions include different network topologiesand systems with multiple servers and multiple libraries.

APPENDIX A

PROOF OF PROPOSITION 1∑

S⊂[K]: S′⊂S,j ∈SaS

= aS′�(|S′|=1) +∑

S⊂[K]: S′⊂S,j ∈S,|S|≥2

aS (43)

≥ u{j}∪S′

S′ �(|S′|=1) +∑

S⊂[K]: S′⊂S,j ∈S,|S|≥2∑

T �φ[K]: j∈T ,T ∩S=φ,T \{j}⊂SuTS , (44)

≥ u{j}∪S′

S′ �(|S′|=1) +∑

S⊂[K]: S′⊂S,j ∈S,|S|≥2∑

T �φ[K]: {j}∪S′⊂T ,T \{j}⊂SuTS , (45)

= u{j}∪S′

S′ �(|S′|=1) +∑

T �φ[K]: {j}∪S′⊂T∑

S⊂[K]: S′⊂S,T \{j}⊂S,j ∈S,|S|≥2

uTS , (46)

=∑

T �φ[K]: {j}∪S′⊂T

S⊂[K]: T \{j}⊂S,j ∈SuTS , (47)

=∑

T �φ[K]: {j}∪S′⊂TvT , (48)

where the indicator function �(|S′|=1) = 1, if |S′| = 1 andzero otherwise, (44) follows from the redundancy constraintsin (13) and u

{j}∪S′

S′ ≤ aS′ , (45) follows from the fact that

Page 11: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5331

TABLE I

OPTIMAL CACHING SCHEME FOR REGION II

S′ ⊂ S, and S′ ⊂ T implies T ∩ S �= φ. By interchangingthe order of summations over S and T in (45), we get (46),since both represent the set defined by{(T ,S)

∣∣ S′⊂S, j �∈ S, |S| ≥ 2, {j} ∪ S′⊂T , T \ {j}⊂S

}.

(49)

The equality in (47) follows from the fact that {j} ∪ S′ ⊂ Tand T \ {j} ⊂ S implies S′ ⊂ S, which can be proved bycontradiction. More specifically, if S′ �⊂ S, i.e., ∃ l ∈ S′ andl �∈ S, then {j}∪S′ ⊂ T implies l ∈ T \{j}. This contradictsT \{j} ⊂ S, since l ∈ T \{j} and l �∈ S. The last equalityfollows from the structural constraints in (10).

APPENDIX BPROOF OF THEOREM 1: LOWER BOUND

WITH UNCODED PLACEMENT

References [4], [5] have shown that the delivery phaseis equivalent to an index-coding problem and the deliveryload is lower bounded by the acyclic index-coding bound[47, Corollary 1]. Reference [6] has proposed an alternativeproof for the uncoded placement bound [4], [5] using a genie-aided approach. For ease of exposition, we will follow thegenie-aided approach [6]. We consider a virtual user whosecache memory is populated by a genie. For any permutationof the users [q1, . . . , qK ], the virtual user caches the file piecesstored at user qj excluding files requested by {q1, . . . , qj−1}for j ∈ [K], i.e., the virtual users cache content is given by

Zvir =K⋃

j=1

l∈[N ]\{dq1 ,...,dqj−1}

S⊂[K]: {qj}∈S,{q1,...,qj−1}∩S=φ

Wl,S .

(50)

Using the virtual user cache content and the transmittedsignals, we can decode all the requested files. Additionally,for any uncoded placement a ∈ A(m), the worst-case deliveryload R∗

A(m,a) satisfies [6]

R∗A(m,a) ≥

K∑

j=1

S⊂[K]:{q1,...,qj}∩S=φ

aS , ∀q ∈ P[K], (51)

where P[K] is the set of all permutations of [K]. Hence, by tak-ing the convex combination over all possible permutations ofthe users, we get

R∗A(m,a) ≥

q∈P[K]

αq

(K∑

j=1

S⊂[K]:{q1,...,qj}∩S=φ

aS

)

, (52)

=∑

q∈P[K]

αq

(

Kaφ +K−1∑

j=1

j

S⊂[K]:{q1,...,qj}∩S=φ, qj+1∈SaS

)

, (53)

where∑

q∈P[K]αq = 1, and αq ≥ 0, ∀q ∈ P[K]. By rearrang-

ing the summations, we get

R∗A(m,a) ≥

S⊂[K]

γS aS , (54)

where γS is given by (21).

R∗A(m) ≥ min

a∈A(m)

S⊂[K]

γS aS , (55)

Furthermore, the dual of the linear program in (55) is given by

maxλk≥0,λ0

− λ0 −K∑

k=1

mk λk (56a)

subject to λ0 +∑

k∈Sλk + γS ≥ 0, ∀S ⊂ [K], (56b)

where λ0 and λk are the dual variables associated with∑S⊂[K] aS = 1, and

∑S⊂[K]:k∈S aS ≤ mk, respec-

tively. By taking the maximum over all convex combination,we obtain (20).

APENDIX CPROOF OF THEOREM 4 : R∗

A(m) FOR K = 3

A. Region I:∑3

j=1mj ≤ 1 (Follows from Theorem 2)

B. Region II: 1 <∑3

j=1mj ≤ 2, m3 < m2 + 3 m1 − 1, andm3 < 2(1 −m2)

Achievability: The caching scheme defined in Table Iachieves R∗

A(m)=5/3−m1− 2m2/3−m3/3.Converse: For any a ∈ A(m) and a permutation q, we have

R∗A(m,a) ≥3aφ+2a{3}+a{2}+a{2,3}, for q=[1, 2, 3],

(57)

R∗A(m,a)≥ 3aφ+2a{1}+a{3}+a{1,3}, for q=[2, 3, 1],

(58)

R∗A(m,a) ≥ 3aφ+2a{2}+a{3}+a{2,3}, for q=[1, 3, 2].

(59)

Page 12: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5332 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

TABLE II

OPTIMAL CACHING SCHEME FOR REGION III

Hence, by taking the average of (57)-(59), we get

R∗A(m,a) ≥ 3 aφ +

2 a{1}3

+ a{2} +4 a{3}

3

+2 a{2,3}

3+a{1,3}

3, (60)

R∗A(m)≥ min

a∈A(m)

{5aφ

3+

2a{1}3

+ a{2} +4a{3}

3

+2a{2,3}

3+a{1,3}

3

}

, (61)

=53−m1−

2m2

3−m3

3, (62)

which is obtained by solving the dual linear program, as inAppendix B.

C. Region III: 1 <∑3

j=1 mj ≤ 2, m1 +m2 < 1, andm3 ≥ m2 + 3 m1 − 1

Achievability: There are multiple caching schemes thatachieve R∗

A,D(m)=2−2 m1−m2. In particular, we considercaching schemes that satisfy

a{1} + a{1,3} = m1, (63)a{2} + a{2,3} = m2, (64)a{3} = 1 −m1 −m2, (65)a{1,3} + a{2,3} = m1 +m2 +m3 − 1, (66)v{1,2} = m1, v{1,3} = a{1}, v{2,3} = a{2}, (67)v{1,3} + v{2,3} = 1 −m3, (68)v{1} + v{1,3} = 1 − 2m1, (69)v{2} + v{2,3} = 1 −m1 −m2. (70)

In Table II, we provide one feasible solution to (63)-(70).Converse: For any a ∈ A(m) and q = [1, 2, 3], we have

R∗A(m,a) ≥ 3 aφ + 2 a{3} + a{2} + a{2,3}, (71)

≥ 2 aφ + 2 a{3} + a{2} + a{2,3}, (72)

R∗A(m)≥ min

a∈A(m)

{2aφ + 2a{3} + a{2} + a{2,3}

}, (73)

= 2 − 2m1 −m2. (74)

D. Region IV: m1 +m2 > 1, and m3 ≥ 2(1 −m2)

Achievability: There are multiple caching schemes thatachieve R∗

A,D(m)=1−m1. In particular, we consider cachingschemes that satisfy

a{2,3} = 1 −m1, (75)a{1} − a{1,2,3} = 2 − (m1 +m2 +m3), (76)a{1,2} + a{1,2,3} = m1 +m2 − 1, (77)a{1,3} + a{1,2,3} = m1 +m3 − 1, (78)v{1} + v{1,2} + v{1,3} + v{1,2,3} = 1 −m1, (79)v{1,2} + v{1,2,3} = 1 −m2, (80)v{1,3} + v{1,2,3} = 1 −m3. (81)

In Table III, we provide one feasible solution to (75)-(81).Converse: From the cut-set bound in (23), we have

R∗(m) ≥1−m1.

APENDIX DPROOF OF THEOREM 5: OPTIMAL CACHE SIZES

First, for a given memory allocation with∑K

k=1mk ≤ 1,we have the following Lemma.

Lemma 1: For C1 ≤ · · · ≤ CK and memory allocationm satisfying

∑Kk=1mk ≤ 1, the optimal caching scheme for

(39) is given by a∗{j} = mj , v∗{i,j} = u∗{i,j}{i} = u

∗{i,j}{j} =

min{a∗{i}, a∗{j}}, and v∗{j} = 1−mj−

∑Ki=1,i=j min{mi,mj}.

Proof: By combining (15) with (1), dividing it by Ck,and summing over k, we get

K∑

k=1

T �φ[K]:k∈T

vTCk

≥K∑

k=1

1 −mk

Ck, (82)

K∑

k=1

v{k}Ck

≥K∑

k=1

1 −mk

Ck−

T �φ[K]:|T |≥2

j∈T

vTCj. (83)

Page 13: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5333

TABLE III

OPTIMAL CACHING SCHEME FOR REGION IV

Therefore, we get the lower bound

ΘA,D(mtot,C) ≥K∑

k=1

1 −mk

Ck−

T �φ[K]:|T |≥2

vT

×(∑

j∈T

1Cj

+1

mini∈T Ci

)

. (84)

Additionally, for C1 ≤ · · · ≤ CK , we have

ΘA,D(mtot,C)≥K∑

k=1

1 −mk

Ck−

K−1∑

i=1

K∑

j=i+1

1Cj

T �φ[K]:{i,j}⊂TvT ,

(85)

≥K∑

k=1

1 −mk

Ck−

K−1∑

i=1

K∑

j=i+1

min{mi,mj}Cj

, (86)

where the last inequality follows from the fact that themulticast transmissions that include users {i, j} are lim-ited by the side-information stored at each of them,which is upper bounded by the cache memory size,i.e.,

∑T �φ[K]: {i,j}⊂T vT ≤ min{mi,mj}.

Finally, for∑K

i=1mi ≤ 1, a∗{j} = mj , v∗{j} = 1 − mj −∑K

i=1,i=j min{mi,mj}, and v∗{i,j} = u∗{i,j}{i} = u

∗{i,j}{j} =

min{a∗{i}, a∗{j}}, is a feasible solution to (39) that achieves

the lower bound.Now, using Lemma 1, we can simplify (39) to

minm

K∑

k=1

1 −mk

Ck−

K−1∑

i=1

K∑

j=i+1

min{mi,mj}Cj

(87a)

s.t.K∑

k=1

mk ≤ mtot, 0 ≤ mk ≤ 1, ∀ k ∈ [K]. (87b)

Next, we show that the optimal memory allocation from (87)satisfies m∗

1 ≥ m∗2 ≥ · · · ≥ m∗

K .Lemma 2: For C1 ≤ · · · ≤ CK and mtot ≤ 1, the objective

function of (87) satisfies ΘA,D(m) ≤ ΘA,D(m), where mi =mi, for i ∈ [K]\{r, r+1}, and some r ∈ [K−1]. Additionally,mr = mr+1 = α + δ, mr+1 = mr = α, for δ, α ≥ 0, andm1 ≥ m2 ≥ · · · ≥ mr.

Proof: For m = [m1,m2, . . . ,mr−1, α + δ, α,mr+2, . . . ,mK ] and m = [m1,m2, . . . ,mr−1, α, α + δ,mr+2, . . . ,mK ], we have ΘA,D(m) − ΘA,D(m) = χ1 + χ2,where

χ1 =1 −mr

Cr+

1 −mr+1

Cr+1− 1 − mr

Cr− 1 − mr+1

Cr+1, (88)

= δ

(1

Cr+1− 1Cr

)

, (89)

χ2 =r−1∑

i=1

(min{mi, mr}

Cr+

min{mi, mr+1}Cr+1

)

−r−1∑

i=1

(min{mi,mr}

Cr+

min{mi,mr+1}Cr+1

)

, (90)

=(

1Cr+1

− 1Cr

)r−1∑

i=1

(min{mi, α+δ}−min{mi, α}), (91)

= δ(r − 1)(

1Cr+1

− 1Cr

)

. (92)

Thus, ΘA,D(m) − ΘA,D(m) = rδ(

1Cr+1

− 1Cr

)≤ 0,

as Cr+1≥ Cr.Using Lemma 2, (87) can be simplified to (93).

Page 14: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

5334 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 67, NO. 8, AUGUST 2019

Lemma 3: For C1 ≤ · · · ≤ CK and mtot ≤ 1, optimizationproblem (39) reduces to

minm

K∑

k=1

1 − k mk

Ck(93a)

s.t.K∑

k=1

mk ≤ mtot, (93b)

0 ≤ mk+1 ≤ mk, ∀ k ∈ [K−1]. (93c)

Equivalently, the optimal memory allocation for (93) isobtained by solving

maxm

K∑

k=1

k mk

Ck(94a)

s.t.K∑

k=1

mk ≤ mtot, (94b)

0 ≤ mk+1 ≤ mk, ∀ k ∈ [K−1]. (94c)

Finally, the optimal memory allocation in Theorem 5 isobtained by solving the dual of the linear program in (94).

REFERENCES

[1] Cisco VNI Forecast and Methodology, 2015–2020, Cisco, San Jose, CA,USA, Jun. 2016.

[2] K. C. Almeroth and M. H. Ammar, “The use of multicast deliveryto provide a scalable and interactive video-on-demand service,” IEEEJ. Sel. Areas Commun., vol. 14, no. 6, pp. 1110–1122, Aug. 1996.

[3] M. A. Maddah-Ali and U. Niesen, “Fundamental limits of caching,”IEEE Trans. Inf. Theory, vol. 60, no. 5, pp. 2856–2867, May 2014.

[4] K. Wan, D. Tuninetti, and P. Piantanida, “On the optimality of uncodedcache placement,” in Proc. IEEE ITW, Sep. 2016, pp. 161–165.

[5] K. Wan, D. Tuninetti, and P. Piantanida. (2017). “A novel index codingscheme and its application to coded caching.” [Online]. Available:https://arxiv.org/abs/1702.07265

[6] Q. Yu, M. A. Maddah-Ali, and A. S. Avestimehr. (2016). “The exactrate-memory tradeoff for caching with uncoded prefetching.” [Online].Available: https://arxiv.org/abs/1609.07817

[7] Z. Chen, P. Fan, and K. B. Letaief, “Fundamental limits of caching:Improved bounds for small buffer users,” IET Commun., vol. 10, no. 17,pp. 2315–2318, Nov. 2016.

[8] M. M. Amiri and D. Gündüz, “Fundamental limits of coded caching:Improved delivery rate-cache capacity tradeoff,” IEEE Trans. Commun.,vol. 65, no. 2, pp. 806–815, Feb. 2017.

[9] J. Gómez-Vilardebó. (2016). “Fundamental limits of caching:Improved bounds with coded prefetching.” [Online]. Available:https://arxiv.org/abs/1612.09071

[10] H. Ghasemi and A. Ramamoorthy, “Improved lower bounds for codedcaching,” IEEE Trans. Inf. Theory, vol. 63, no. 7, pp. 4388–4413,Jul. 2017.

[11] S. H. Lim, C.-Y. Wang, and M. Gastpar, “Information-theoretic caching:The multi-user case,” IEEE Trans. Inf. Theory, vol. 63, no. 11,pp. 7018–7037, Nov. 2017.

[12] C. Tian and K. Zhang. (2017). “Fundamental limits of coded caching:From uncoded prefetching to coded prefetching.” [Online]. Available:https://arxiv.org/abs/1704.07901

[13] C.-Y. Wang, S. S. Bidokhti, and M. Wigger, “Improved conversesand gap-results for coded caching,” in Proc. IEEE ISIT, Jun. 2017,pp. 2428–2432.

[14] Q. Yu, M. A. Maddah-Ali, and A. S. Avestimehr. (2017). “Characterizingthe rate-memory tradeoff in cache networks within a factor of 2.”[Online]. Available: https://arxiv.org/abs/1702.04563

[15] M. Ji et al., “On the fundamental limits of caching in combinationnetworks,” in Proc. IEEE SPAWC, Jun./Jul. 2015, pp. 695–699.

[16] A. A. Zewail and A. Yener, “Combination networks with or withoutsecrecy constraints: The impact of caching relays,” IEEE J. Sel. AreasCommun., vol. 36, no. 6, pp. 1140–1152, Jun. 2018.

[17] K. Wan, M. Ji, P. Piantanida, and D. Tuninetti, “Caching in combinationnetworks: Novel multicast message generation and delivery by leverag-ing the network topology,” in Proc. IEEE ICC, May 2018, pp. 1–6.

[18] M. Ji, G. Caire, and A. F. Molisch, “Fundamental limits of cachingin wireless D2D networks,” IEEE Trans. Inf. Theory, vol. 62, no. 2,pp. 849–869, Feb. 2016.

[19] A. M. Ibrahim, A. A. Zewail, and A. Yener, “Device-to-device codedcaching with heterogeneous cache sizes,” in Proc. IEEE ICC, May 2018,pp. 1–6.

[20] S. P. Shariatpanahi, S. A. Motahari, and B. H. Khalaj, “Multi-server coded caching,” IEEE Trans. Inf. Theory, vol. 62, no. 12,pp. 7253–7271, Dec. 2016.

[21] R. Timo and M. Wigger, “Joint cache-channel coding over erasurebroadcast channels,” in Proc. IEEE ISWCS, Aug. 2015, pp. 201–205.

[22] A. Ghorbel, M. Kobayashi, and S. Yang, “Content delivery in erasurebroadcast channels with cache and feedback,” IEEE Trans. Inf. Theory,vol. 62, no. 11, pp. 6407–6422, Nov. 2016.

[23] S. S. Bidokhti, M. Wigger, and A. Yener. (2017). “Benefits ofcache assignment on degraded broadcast channels.” [Online]. Available:https://arxiv.org/abs/1702.08044

[24] M. M. Amiri and D. Gündüz, “Cache-aided content delivery over erasurebroadcast channels,” IEEE Trans. Commun., vol. 66, no. 1, pp. 370–381,Jan. 2018.

[25] N. Naderializadeh, M. A. Maddah-Ali, and A. S. Avestimehr, “Funda-mental limits of cache-aided interference management,” IEEE Trans. Inf.Theory, vol. 63, no. 5, pp. 3092–3107, May 2017.

[26] F. Xu, M. Tao, and K. Liu, “Fundamental tradeoff between storage andlatency in cache-aided wireless interference networks,” IEEE Trans. Inf.Theory, vol. 63, no. 11, pp. 7464–7491, Nov. 2017.

[27] M. A. Maddah-Ali and U. Niesen, “Decentralized coded caching attainsorder-optimal memory-rate tradeoff,” IEEE/ACM Trans. Netw., vol. 23,no. 4, pp. 1029–1040, Aug. 2015.

[28] Q. Yang and D. Gündüz, “Coded caching and content delivery withheterogeneous distortion requirements,” IEEE Trans. Inf. Theory, vol. 64,no. 6, pp. 4347–4364, Jun. 2018.

[29] P. Hassanzadeh, E. Erkip, J. Llorca, and A. Tulino, “Distortion-memorytradeoffs in cache-aided wireless video delivery,” in Proc. IEEE Allerton,Sep. 2015, pp. 1150–1157.

[30] A. M. Ibrahim, A. A. Zewail, and A. Yener, “On coded caching withheterogeneous distortion requirements,” in Proc. IEEE ITA, Feb. 2018,pp. 1–9.

[31] U. Niesen and M. A. Maddah-Ali, “Coded caching with nonuniformdemands,” IEEE Trans. Inf. Theory, vol. 63, no. 2, pp. 1146–1158,Feb. 2017.

[32] M. Ji, A. M. Tulino, J. Llorca, and G. Caire, “Order-optimal rate ofcaching and coded multicasting with random demands,” IEEE Trans.Inf. Theory, vol. 63, no. 6, pp. 3923–3949, Jun. 2017.

[33] A. Ramakrishnan, C. Westphal, and A. Markopoulou, “An efficientdelivery scheme for coded caching,” in Proc. IEEE ITC, Sep. 2015,pp. 46–54.

[34] J. Zhang, X. Lin, and X. Wang, “Coded caching under arbitrarypopularity distributions,” in Proc. IEEE ITA, Feb. 2015, pp. 98–107.

[35] S. Jin, Y. Cui, H. Liu, and G. Caire. (2017). “Structural properties ofuncoded placement optimization for coded delivery.” [Online]. Avail-able: https://arxiv.org/abs/1707.07146

[36] U. Niesen and M. A. Maddah-Ali, “Coded caching for delay-sensitivecontent,” in Proc. IEEE ICC, Jun. 2015, pp. 5559–5564.

[37] V. Ravindrakumar, P. Panda, N. Karamchandani, and V. M. Prabhakaran,“Private coded caching,” IEEE Trans. Inf. Forensics Security, vol. 13,no. 3, pp. 685–694, Mar. 2018.

[38] A. Sengupta, R. Tandon, and T. C. Clancy, “Fundamental limits ofcaching with secure delivery,” IEEE Trans. Inf. Forensics Security,vol. 10, no. 2, pp. 355–370, Feb. 2015.

[39] A. A. Zewail and A. Yener, “Fundamental limits of secure device-to-device coded caching,” in Proc. IEEE Asilomar, Nov. 2016,pp. 1414–1418.

[40] S. Wang, W. Li, X. Tian, and H. Liu. (2015). “Coded caching withheterogenous cache sizes.” [Online]. Available: https://arxiv.org/abs/1504.01123

[41] M. M. Amiri, Q. Yang, and D. Gündüz, “Decentralized caching andcoded delivery with distinct cache capacities,” IEEE Trans. Commun.,vol. 65, no. 11, pp. 4657–4669, Nov. 2017.

[42] A. Sengupta, R. Tandon, and T. C. Clanc, “Layered cachingfor heterogeneous storage,” in Proc. IEEE Asilomar, Nov. 2016,pp. 719–723.

Page 15: Coded Caching for Heterogeneous Systems: An …wcan.ee.psu.edu/papers/AI_TCOM_19_pp.pdfevaluate the performance of our caching scheme, we derive a lower bound on the worst-case delivery

IBRAHIM et al.: CODED CACHING FOR HETEROGENEOUS SYSTEMS: OPTIMIZATION PERSPECTIVE 5335

[43] A. M. Ibrahim, A. A. Zewail, and A. Yener, “Centralized coded cachingwith heterogeneous cache sizes,” in Proc. IEEE WCNC, Mar. 2017,pp. 1–6.

[44] A. M. Daniel and W. Yu. (2017). “Optimization of heterogeneous codedcaching.” [Online]. Available: https://arxiv.org/abs/1708.04322

[45] A. Tang, S. Roy, and X. Wang, “Coded caching for wireless backhaulnetworks with unequal link rates,” IEEE Trans. Commun., vol. 66, no. 1,pp. 1–13, Jan. 2018.

[46] A. F. Dana, R. Gowaikar, R. Palanki, B. Hassibi, and M. Effros,“Capacity of wireless erasure networks,” IEEE Trans. Inf. Theory,vol. 52, no. 3, pp. 789–804, Mar. 2006.

[47] F. Arbabjolfaei, B. Bandemer, Y.-H. Kim, E. Sasoglu, and L. Wang,“On the capacity region for index coding,” in Proc. IEEE ISIT, Jul. 2013,pp. 962–966.

Abdelrahman M. Ibrahim (S’07) received theB.Sc. degree in electrical engineering from Alexan-dria University, Alexandria, Egypt, in 2011, andthe M.Sc. degree in wireless communications fromNile University, Giza, Egypt, in 2014. He is cur-rently pursuing the Ph.D. degree with the Depart-ment of Electrical Engineering, The PennsylvaniaState University, University Park, PA, USA. HisPh.D. dissertation is focused on data storage andenergy management in emerging networks. He wasan Exchange Research Assistant with Sabanci Uni-

versity, Istanbul, Turkey, from 2013 to 2014, funded by the Marie CurieInternational Research Exchange Scheme. He is currently a Graduate ResearchAssistant with the Department of Electrical Engineering, The PennsylvaniaState University. His research interests include data storage systems, cache-aided networks, green communications, and resource allocation in wirelessnetworks.

Ahmed A. Zewail (S’07–M’19) received the B.Sc.degree in electrical engineering from AlexandriaUniversity, Alexandria, Egypt, in 2011, and theM.Sc. degree in wireless communications from NileUniversity, Giza, Egypt, in 2013. He is currentlypursuing the Ph.D. degree with the Wireless Com-munications and Networking (WCAN) Laboratory,The Pennsylvania State University, University Park,PA, USA. He was ranked the fourth of his class inhis B.Sc. degree. His graduation project was aboutwarehouse management systems using RFID, which

was funded by Siemens, NTRA, Vodafone, BA, and Vision Solutions. Hismaster’s thesis focused on the capacity and degrees of freedom of relay net-works. He is currently a Research Assistant with the Wireless Communicationsand Networking (WCAN) Laboratory, The Pennsylvania State University. HisPh.D. dissertation is focused on secrecy guarantees in emerging networks,e.g., untrusted relay networks and cache-aided networks. His current researchinterests include network information theory, cache-aided networks, wirelesscommunications, and physical layer security. He received first place in theINDAC-Siemens 2011 Competition.

Aylin Yener (S’91–M’01–SM’14–F’15) receivedthe B.Sc. degree in electrical and electronics engi-neering and the B.Sc. degree in physics fromBogazici University, Istanbul, Turkey, and the M.S.and Ph.D. degrees in electrical and computer engi-neering from the Wireless Information NetworkLaboratory (WINLAB), Rutgers University, NewBrunswick, NJ, USA. She is a Distinguished Pro-fessor of electrical engineering at The PennsylvaniaState University, University Park, PA, USA, whereshe joined the faculty as an Assistant Professor in

2002. Since 2017, she has been a Dean’s Fellow of the College of Engineeringat The Pennsylvania State University. She was a Visiting Professor of electricalengineering at Stanford University (2016–2018) and a Visiting AssociateProfessor in the same department (2008–2009). Her current research interestsare in information security, green communications, caching systems, andmore generally in the fields of information theory, communication theory,and networked systems. She received the NSF CAREER Award in 2003,the Best Paper Award in communication theory from the IEEE InternationalConference on Communications in 2010, the Penn State Engineering AlumniSociety (PSEAS) Outstanding Research Award in 2010, the IEEE MarconiPrize Paper Award in 2014, the PSEAS Premier Research Award in 2014, theLeonard A. Doggett Award for Outstanding Writing in Electrical Engineeringat Penn State in 2014, and the IEEE Women in Communications EngineeringOutstanding Achievement Award in 2018. She is a Distinguished Lecturerfor the IEEE Information Theory Society (2019–2020), the IEEE Commu-nications Society (2018–2020), and the IEEE Vehicular Technology Society(2017–2019).

Dr. Yener is serving as the Vice President of the IEEE InformationTheory Society in 2019. Previously, she was the second Vice President(2018), member of the Board of Governors (2015–2018), and the Treasurer(2012–2014) of the IEEE Information Theory Society. She served asthe Student Committee Chair for the IEEE Information Theory Society(2007–2011), and was the Co-Founder of the Annual School of InformationTheory in North America in 2008. She was a Technical (Co)-Chair for varioussymposia/tracks at the IEEE ICC, PIMRC, VTC, WCNC, and Asilomar in2005, from 2008 to 2014, and 2018. Previously, she served as an Editor forthe IEEE TRANSACTIONS ON COMMUNICATIONS (2009–2012), an Editorfor the IEEE TRANSACTIONS ON MOBILE COMPUTING (2017–2018), andan Editor and an Editorial Advisory Board Member for the IEEE TRANS-ACTIONS ON WIRELESS COMMUNICATIONS (2001–2012). She also served aGuest Editor for the IEEE TRANSACTIONS ON INFORMATION FORENSICS

AND SECURITY in 2011, and the IEEE JOURNAL ON SELECTED AREAS INCOMMUNICATIONS in 2015. Currently, she serves as a Senior Editor for theIEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS.