Resource Allocation for Cooperative D2D-Enabled Wireless Caching Networks
In this paper, we study the resource allocation problem for a cooperative device-to-device (D2D)-enabled wireless caching network, where each user randomly caches popular contents to its memory and shares the contents with nearby users through D2D links. To enhance the throughput of spectrum-sharing D2D links, which may be severely limited by the interference among D2D links, we enable the cooperation among some of the D2D links to eliminate the interference among them. We formulate a joint link scheduling and power allocation problem to maximize the overall throughput of cooperative D2D links (CDLs) and non-cooperative D2D links (NDLs), which is NP-hard. To solve the problem, we decompose it into two sub-problems that maximize the sum rates of the CDLs and the NDLs, respectively. For CDL optimization, we propose a semi-orthogonal-based algorithm for joint user scheduling and power allocation. For NDL optimization, we propose a novel low-complexity algorithm to perform link scheduling and develop a Difference of Convex functions (D.C.) programming method to solve the non-convex power allocation problem. Simulation results show that the cooperative transmission can significantly increase both the number of served users and the overall system throughput.
Due to the exponential growth of mobile devices and mobile services, the traditional infrastructure of cellular networks cannot fully accommodate the high data-rate demands of users. To relieve the traffic load of core networks as well as to improve the spectrum efficiency of the whole system, both device-to-device (D2D) communications and wireless caching have been considered as promising techniques in the next generation cellular networks [1, 2].
With D2D communications, popular contents cached in a regular mobile device can be easily obtained by the desired users nearby, which significantly improves the network throughput and greatly relieves the traffic pressure on backhaul networks [2, 3, 4]. In practice, multiple D2D links in a hotspot area can coexist and share the same time/frequency resources due to the short distances of D2D links and low transmit power of mobile devices . However, link scheduling and power allocation strategies should be well designed to mitigate the inter-link interference that severely damages the performance of spectrum sharing D2D networks. In , the cell area is divide into clusters and only one D2D link within each cluster is active to mitigate the inter-link interference. In , the D2D users are divide into clusters and only one cluster from a certain number of adjacent clusters is active at each time slot to mitigate the inter-cluster interference. In , the interference among D2D links are mitigated by efficient link scheduling and power control strategies.
Cooperative transmission, where multiple transmission nodes serve multiple users together with cooperation, is adopted in cellular networks to effectively mitigate the inter-link interference [7, 8]. However, cooperative transmission in D2D networks is rarely studied because it is usually not feasible for two or more D2D transmitters to have the massage that a D2D receiver requests at the same time in conventional D2D networks. In D2D-enabled wireless caching networks, the cooperation among D2D transmitters can be enabled to improve the system throughput by utilizing the redundancy of caching, i.e., two or more D2D transmitters may cache the same contents . In , the authors propose an opportunistic cooperation strategy that enables interference-free cooperative D2D communications all clusters, given that a certain group of files are cached and requested by users from every cluster.
In this paper, we study the resource allocation problem in a cooperative D2D-enable wireless caching network. To maximize the overall throughput of cooperative D2D links (CDLs) and non-cooperative D2D links (NDLs), we formulate a joint link scheduling and power allocation problem. To solve this NP-hard problem, we decompose it into two sub-problems that maximize the sum rates of the CDLs and the NDLs, respectively. For CDL, we propose a semi-orthogonal-based algorithm for joint user scheduling and power allocation. For NDL, we propose a novel low-complexity algorithm to perform link scheduling and a Difference of Convex functions (D.C.) programming method to solve the non-convex power allocation problem.
The remainder of this paper is organized as follows. Section II describes the system model and the cooperation strategy. Section III formulates the optimization problem that maximizes the overall system throughput. The optimization problem is decomposed into two sub-problems, which are solved in Sections IV and V, respectively. Section VI provides the simulation results. Section VII concludes this paper.
Ii System Model and Cooperation Strategy
Ii-a System Model
Suppose that single-antenna users are randomly distributed in a hotspot of a cell as shown in Fig. 1. There are files in the system. Each user has a memory with uniformed size to cache files and can share its cached files to nearby users via D2D communications. The users request the files according to Zipf distribution with parameter , which indicates that the th file is requested by each user with probability . According to the memory size of each user, we divide the most popular files into groups, where the th file group contains the th to the th files. Then the probability that a user requests a file within the th file group is 
We define a file group request matrix , where entry if a file in is requested by user , and otherwise. We denote as the file group requested by the th user.
Similar to , we assumes that each user caches each file group with uniform probability . We define a file group caching matrix , where the entry if user caches , and otherwise.
Based on and , we define as the set of the users that cache and as the set of the users that request the files in but do not cache .
Ii-B Cooperative Content Delivery Policy
Based on the source where a user can fetch its requested file, we classify the users into three categories: self-satisfied users who request the files that are cached by themselves and can obtain them directly from their own memory; D2D users who request the files that are not cached by themselves but cached by their nearby users and can obtain the files via D2D communications; and cellular users who request the files that are neither cached by themselves nor cached by their nearby users and have to request the files from the BS. In this paper, we only focus on the D2D users who can fetch their requested files via either cooperative D2D links (CDLs) or non-cooperative D2D links (NDLs).
We designate one file group to be delivered via CDLs and the other file groups to be delivered via NDLs . This is because the improved performance of cooperation is evident with enough numbers of transmitters and receivers. Caching systems generally consider the scenario where the first few popular files account for the majority of requests . Therefore, it is usually not worthy to enable the cooperative transmission of another file group that is requested by very few users. On the other hand, our proposed link scheduling and power allocation algorithms are also applicable when cooperation of multiple file groups is enabled. We denote the transmission mode indicator for each , where if is transmitted via CDLs, and otherwise.
To mitigate the interference between CDLs and NDLs, two separate frequency bands are used for CDLs and NDLs independently. As mentioned before, there is no interference among CDLs. However, there is interference among NDLs, which will be mitigated with our proposed power allocation and link scheduling methods. We assume that the frequency bands allocated for CDLs and NDLs are preset and fixed. Dynamic frequency allocation is another interesting topic but not the focus of this paper.
Iii Problem Formulation and Analysis
In this section, we first derive the achievable rates of CDLs and NDLs, respectively, and then formulate an optimization problem to maximize the overall system throughput.
Iii-a Achievable Rates of CDLs
Let and denote the sets of cooperative D2D transmitters (CTs) and cooperative D2D receivers (CRs), respectively. The achievable rate of CR is
where denotes the bandwidth allocated for CDLs, denote the total transmit power allocated to CR by all CTs, denotes the channel vector from the CTs to CR , denotes the normalized precoding vector of CR , and denotes the noise power at CR .
Iii-B Achievable Rates of NDLs
We assume that an NDL can only be established between two users within distance , which is referred as D2D radius. The set of potential non-cooperative D2D transmitters (NTs) for user is
where denotes the distance between users and .
Obviously, user can be a potential non-cooperative D2D receiver (NR) only if it has at least one potential NT, i.e., . We denote the set of potential NRs as
Let and denote the sets of finally selected NTs and NRs, respectively. Let denote the corresponding NT of NR and denote the channel coefficient from to NR . The signal-to-interference-plus-noise-ratio (SINR) at NR is
where denotes the transmit power of and denotes the noise power at NR . The achievable rate of NR is expressed as , where is the bandwidth allocated for NDLs.
Iii-C System Throughput Optimization Problem
We aim to maximize the system throughput, i.e., the sum rate of all CDLs and NDLs. The problem is formulated as
where and are the vectors consisting of all ’s and ’s, respectively, constraint (7b) indicates that only one file group is delivered through CDLs, constraints (7c) and (7d) ensure the validity of cooperative and non-cooperative D2D users, respectively, constraint (7e) indicates that each NT cannot be an NR at the same time due to half-duplex, constraints (7f) and (7g) are the peak transmit power constraints for CTs and NTs, respectively, and constraints (7h) and (7i) are the Quality-of-Service (QoS) constraints for CRs and NRs, respectively.
Iv CDL Scheduling and Power Allocation
In this section, we solve the first sub-problem of problem (7), which considers CDL optimization as follows:
To solve problem (8), we first select the CTs and the CRs and then solve the power allocation problem to maximize the sum rate of the selected CRs.
Iv-a CT and CR Selection
Based on the analysis in [10, Theorem 1] and the uniform caching probability, we heuristically choose the mostly requested file group as cooperatively transmitted file group, which is
We let all users in be the CTs, i.e., . Inspired by semi-orthogonal user selection (SUS) in multi-user multiple-input-multiple-output (MU-MIMO) systems , we develop a semi-orthogonal CR scheduling algorithm to iteratively select from , which is summarized as Algorithm 1. We select one CR and optimize the power allocation over the selected CRs in each iteration. The iteration terminates once the number of CRs reaches the number of CTs, the set of unselected CRs is empty or the power allocation problem is not feasible.
Iv-B Power Allocation for Scheduled CRs
We solve the power allocation problem that maximizes the sum rate of the selected CRs, which is
where and are the introduced Lagrange multipliers.
According to the KKT conditions, the optimal power allocation of problem (10) is
We solve the multipliers ’s and ’s iteratively using gradient descent, where the multipliers in the th iteration are updated as follows:
where and are small positive step sizes for step .
V NDL Scheduling and Power Allocation
After the CDLs are established, we establish NDLs among the remaining users. The optimization problem is given by
To solve problem (16), we first schedule as many NDLs satisfying the constraints as possible and then perform power allocation to maximize the minimum rate of the NDLs.
V-a NDL Scheduling
The NDL scheduling sub-problem of problem (16) is
which can be regarded as an admission control problem. In regular admission control problems, each node is either a potential transmitter or a potential receiver. However, in our system model, there is a chance that a certain user can be both a potential NT and a potential NR. We refer such a user as an ambiguous user. Since any two scheduled NDLs cannot share the same user due to half duplex, the problem becomes more complicated. We propose a novel low-complexity NDL scheduling algorithm to solve the problem, which is described as follows.
First, we decide whether each ambiguous user should be an NT or NR. After this decision is done among all ambiguous users, the original admission control problem is simplified as a regular admission control problem. Then we establish as many potential NDLs as possible and check whether the QoS constraints of the potential NDLs can be satisfied with certain power allocation. If the QoS constraints of the potential NDLs cannot be satisfied with any power allocation, we iteratively remove some NDLs until the QoS constraints of every potential NDL can be satisfied. The detailed procedure of NDL scheduling algorithm is summarized in Algorithm 2 and described in the remainder of this subsection.
For ambiguous user , we calculate the minimum interference levels it introduces to the entire system when it is selected as an NT and an NR, respectively, and make a decision by comparing those two interference levels.
Assume that user is an NT and transmits the file to user who has the largest channel gain to user among the users requesting the files that user caches. To satisfy (16a), the transmit power of user must be at least . Therefore, when user is an NT, the total interference that it introduces to the users in is at least
Assume that user is an NR and is selected as the user with the largest channel gain to user among the users caching . To satisfy (16a), the transmit power of must be at least . Therefore, when user is an NR, the total interference that introduces to the users in is at least
Based on and , we make the following decision:
if , user is selected as a potential NT;
otherwise, user is selected as a potential NR.
There may be a case that some potential NTs have more than one potential NRs and vice versa. Therefore, we perform link selection to ensure that each NT combines with at most one NR and vice versa.
We denote a bipartite graph , where and is the set of potential NDLs between and . and are two disjoint and independent vertex sets of , and is the edge set of .
Note that there are two types of vertices in : the vertices with the degree 1 and the vertices with degrees larger than 1. We assume that the vertices with degrees larger than 1 together with their connected edges form a sub-graph . Obviously, the users in are involved in only one NDL and the users in are involved in more than one NDLs. To ensure that each user is involved in at most one NDL, we select the NDLs in with maximum weighted matching algorithm , where the weight of each edge in is defined as the reciprocal of the channel gain of each corresponding potential NDL.
Suppose that potential NDLs are established between potential NTs and potential NRs satisfying (7e). If (16a) can be satisfied with the selected NDLs, there must be power allocation satisfying , where ,
To check whether (7g) can be satisfied, we derive
Let and be the vector with all zero elements. We have the following link checking:
If does not hold for in (21), we will remove some potential NDLs. We iteratively remove one potential NDL and check whether the remaining potential NDLs are feasible for problem (17) in each iteration. The link removal procedure is described as follows.
For NR , to satisfy , the transmit power of must be at least , which causes at least amount of interference to user . Note that an NR with lower and larger peak transmit power of can tolerate more interference. We define the relative interference from to NR as . Then the minimum total relative interference caused by is
For NR , to satisfy , the transmit power of must be at least . Then the minimum total relative interference received by NR is
Obviously, we should remove NR , where
which is likely to cause the strongest interference to other NRs or receive the strongest interference from other NTs.
V-B Power Allocation
When NDLs are selected, problem (16) is simplified as a power allocation problem, which is
However, problem (25) tends to allocate more power to the NDLs with good channels while the achievable rate of the other NDLs may be too low, i.e., the NDLs are not fairly treated. Therefore, we modify problem (25) based on max-min optimization, which is formulated as
where , , , and .
Vi Simulation Results
Similar to , we consider a square hotspot area with the side length m. There are totally files in the system. The memory of each user is able to cache files and the most popular files in file groups are cached by the users. The peak transmit power for each user is . We allocate CDLs and NDLs with the same bandwidth . The channel between any two users is modeled as , where is the path-loss, (m) is the distance between the two users, and is the Rayleigh fading factor. The noise power at each user is . The D2D radius for NDLs is set as .
In Fig. 2, the solid and dashed lines show respectively the average numbers of scheduled CRs and NRs versus file popularity parameter , with different numbers of users . The average number of scheduled CRs is larger than that of scheduled NRs, which verifies the advantage of cooperation. This is because CDLs are free from inter-link interference, which improves the SINR at users and makes the QoS constraints of CDLs much easier to be satisfied than that of NDLs. Therefore, more CRs can be active. The number of served CRs increases with . This is because with large , the majority of users request a few popular files, which leads to the increasing number of potential CRs, since CDLs are established to deliver the mostly requested files. On the other hand, the number of served NRs decreases with when is large. This is because the number of potential NRs decreases with the increase of .
In Fig. 3, the solid and dashed lines show respectively the average sum rates of CDLs and NDLs versus , with different . From the figure, CDLs have much higher sum rate than NDLs, which also verifies the advantage of cooperation. This is because CDLs are free from inter-link interference, which increases the SINR and therefore the data rate of each user. The sum rate of CDLs increases with . This is because more CRs are scheduled with larger , which coincides with Fig. 2. On the other hand, the sum rate of NDLs decreases with when is large. This is because fewer NDLs are scheduled with larger , which also coincides with Fig. 2.
In Fig. 4, the solid and dashed lines show respectively the average overall throughputs of D2D-enabled wireless caching networks with and without cooperation versus , with different . In the D2D-enabled wireless caching network without cooperation, we assume that all D2D links share the entire system bandwidth. The figure shows that the overall throughput can be significantly improved with our proposed cooperative strategy. The overall throughput with cooperation increases with . This is because more CDLs are established with higher and CDLs are free from inter-link interference and thus have much higher spectrum efficient than NDLs, as we mentioned before.
In this paper, we study the resource allocation problem in a cooperative D2D-enabled wireless caching network. We formulate a joint link scheduling and power allocation problem to maximize the system throughput, which is NP-hard. To solve the problem, we decompose it into two sub-problems that optimize the CDLs and the NDLs, respectively. For CDLs, we propose a semi-orthogonal-based joint user scheduling and power allocation algorithm. For NDLs, we propose a novel low-complexity algorithm to perform link scheduling and a low-complexity D.C. programming method to solve the power allocation problem. Simulation results show that the cooperative transmission can significantly improve both the number of served users and the overall throughput of D2D-enabled caching networks.
- footnotetext: The first run of Line 10 happens within the while loop of , before which the value of has been initialized within the previous while loop of .
- D. Feng, L. Lu, Y. Yuan-Wu, G. Y. Li, S. Li, and G. Feng, “Device-to-device communications in cellular networks,” IEEE Commun. Mag., vol. 52, pp. 49–55, Apr. 2014.
- D. Liu, B. Chen, C. Yang, and A. F. Molisch, “Caching at the wireless edge: Design aspects, challenges, and future directions,” IEEE Commun. Mag., vol. 54, pp. 22–28, Sep. 2016.
- N. Golrezaei, P. Mansourifard, A. F. Molisch, and A. G. Dimakis, “Base-station assisted device-to-device communications for high-throughput wireless video networks,” IEEE Trans. Wireless Commun., vol. 13, pp. 3665–3676, Jul. 2014.
- M. Ji, G. Caire, and A. F. Molisch, “Wireless device-to-device caching networks: Basic principles and system performance,” IEEE J. Sel. Areas Commun., vol. 34, pp. 176–189, Jan. 2016.
- L. Zhang, M. Xiao, G. Wu, M. Alam, Y. C. Liang, and S. Li, “A survey of advanced techniques for spectrum sharing in 5G networks,” IEEE Wireless Commun., vol. 24, pp. 44–51, Oct. 2017.
- L. Zhang, M. Xiao, G. Wu, and S. Li, “Efficient scheduling and power allocation for D2D-assisted wireless caching networks,” IEEE Trans. Commun., vol. 64, pp. 2438–2452, Jun. 2016.
- A. Liu and V. K. N. Lau, “Mixed-timescale precoding and cache control in cached MIMO interference network,” IEEE Trans. Signal Process., vol. 61, pp. 6320–6332, Dec. 2013.
- C. Ren, J. Chen, and C. Tellambura, “Spectrum sharing with device-to-device successive relaying and hybrid complex field network coding,” IEEE Tran. Veh. Technol., vol. 66, pp. 7947–7963, Sep. 2017.
- B. Chen, C. Yang, and G. Wang, “High-throughput opportunistic cooperative device-to-device communications with caching,” IEEE Trans. Veh. Technol., vol. 66, pp. 7527–7539, Aug. 2017.
- T. Yoo and A. Goldsmith, “On the optimality of multiantenna broadcast scheduling using zero-forcing beamforming,” IEEE J. Sel. Areas Commun., vol. 24, pp. 528–541, Mar. 2006.
- S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge University Press, 2004.
- D. B. West, Introduction to Graph Theory, 2nd Ed. Upper Saddle River, NJ, USA: Prentice Hall, 2001.
- H. H. Kha, H. D. Tuan, and H. H. Nguyen, “Fast global optimal power allocation in wireless networks by local D.C. programming,” IEEE Trans. Wireless Commun., vol. 11, pp. 510–515, Feb. 2012.