On the Performance of Mobility-Aware D2D Caching Networks
Sameh Hosny, Atilla Eryilmaz, Alhussein A. Abouzeid, Hesham El, Gamal

TL;DR
This paper explores how mobility and demand statistics can be leveraged in D2D caching networks to optimize service costs, proposing centralized and decentralized caching schemes with game-theoretic analysis.
Contribution
It introduces a mobility-aware D2D caching framework with novel centralized and decentralized schemes, including a greedy algorithm and Stackelberg game analysis for user decision-making.
Findings
Greedy caching algorithm achieves near-optimal performance with polynomial complexity.
Mobility statistics significantly influence caching decisions and network performance.
Identified regimes where the Stackelberg equilibrium is non-unique, affecting caching strategies.
Abstract
The increase in demand for spectrum-based services forms a bottleneck in wireless networks. Device-to-Device (D2D) caching networks tackle this problem by exploiting user's behavior predictability and the possibility of sharing data between them to alleviate the network congestion. However, capturing mobility statistics allows Service Providers (SPs) to enhance their caching strategies. In this work, we introduce a mobility-aware D2D caching network where SP harnesses user demand and mobility statistics to minimize the incurred service cost through an optimal caching policy. We investigate two caching schemes: centralized and decentralized caching schemes. In the centralized caching scheme, SP makes the caching decision towards its cost minimization to increase its profit. However, the complexity of optimal caching policy grows exponentially with the number of users. Therefore, we…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
On the Performance of Mobility-Aware
D2D Caching Networks
Sameh Hosny, Atilla Eryilmaz, Alhussein A. Abouzeid and Hesham El Gamal
Abstract
The increase in demand for spectrum-based services forms a bottleneck in wireless networks. Device-to-Device (D2D) caching networks tackle this problem by exploiting users behavior predictability and the possibility of sharing data between them to alleviate the network congestion. Usually, network congestion occurs at certain times of the day and in some popular locations. Consequently, the information about user demand alone is not enough. Capturing mobility statistics allows Service Providers (SPs) to enhance their caching strategies. In this work, we introduce a mobility-aware D2D caching network where an SP harnesses users demand and mobility statistics to minimize the incurred service cost through an optimal caching policy. We investigate two caching schemes: a centralized caching scheme and a decentralized caching scheme. In the centralized caching scheme, the SP makes the caching decision towards its cost minimization to increase its profit. However, the complexity of the optimal caching policy grows exponentially with the number of users. Therefore, we discuss a greedy caching algorithm which has a polynomial order complexity. We also use this greedy algorithm to establish upper and lower bounds on the proactive service gain achieved by the optimal caching policy. In the decentralized caching scheme, users take over and make their caching decisions, in a distributed fashion affected by the SP pricing policy, towards their payment minimization. We formulated the tension between the SP and users as a Stackelberg game. Best response analysis was used to identify a subgame perfect Nash equilibrium (SPNE) between users. The optimal solution of the proposed model was found to depend on the SP reward preference, which affects the assigned memory in users devices. We found some regimes for the reward value where the SPNE was non-unique. A fair allocation caching policy was adopted to choose one of these SPNEs. To understand the impact of user behavior, we investigated some special cases to explore how users mobility statistics affect their caching decision. The obtained results in this work allow us to enhance our previously studied content trading model [1] to form a complete vision of mobile content trading. Based on the results obtained in this work, we plan to formulate a mobility-aware content trading marketplace. We expect to achieve more gains by exploiting the users mobility statistics when they are allowed to trade their proactive downloads.
I Introduction
The growth in data traffic represents a crucial problem in mobile networks. More than half a billion mobile devices were added in 2015 causing a 74 growth in global mobile data traffic. Nevertheless, an eightfold increase in this traffic is expected between 2015 and 2020. Moreover, three-fourths of the world’s mobile data traffic will be video by 2020 [2]. This increase in demand for spectrum-based services and devices has led network SPs to experience a major demand and supply mismatch during the whole day [3]. This demand disparity is ultimately tied to user behavioral pattern. However, most people follow certain daily routines and hence their behavior is highly predictable [4],[5]. Interestingly, the time-varying user activities, that are ultimately contributing to this mismatch, can be exploited to solve this demand disparity.
The concept of proactive resource allocation for wireless networks was established to control the supplied services to best match the demand patterns [6]. The predictability of user behavior is exploited to balance the wireless traffic over time, and significantly reduce the bandwidth required to achieve a given blocking/outage probability. Device-to-device (D2D) communication has been proposed in [7] as a promising technology that can relief the wireless networks congestion. A pair of end-users, moving within a close proximity to each other, establish a D2D link that can be operated in the unlicensed spectrum band, such as the Industrial, Scientific, and Medical (ISM) radio bands. These D2D links when used as a traffic offloading approach introduces very little or no monetary cost for the end-users.
A tutorial overview of some recent results on base station assisted D2D wireless networks with caching for video delivery was presented in [8]. Some competing conventional schemes and a recently developed scheme based on caching at the user devices was also introduced. Throughput-outage scaling laws of such schemes were discussed. It was shown that, in realistic conditions, the D2D caching scheme largely outperforms all other competing schemes both in terms of per-user throughput and in terms of outage probability. A D2D caching network under arbitrary demand was considered in [9]. It was shown that if each node in the network can reach in a single hop all other nodes, then the proposed scheme achieves almost the same throughput of [10]. Moreover, if concurrent short range transmissions can co-exist in a spatial reuse scheme, then the throughput has the same scaling law of the reuse-only case [11, 12] or the coded-only case [10]. Although previous models utilized the D2D communication to alleviate network congestion, they considered a grid network formed by a set of nodes placed on a regular grid on the unit square and user’s mobility was not captured in this work.
The authors in [13] considered the model of [14] and showed that the per-user throughput can increase dramatically when nodes are mobile rather than fixed. This improvement was obtained under several idealistic assumptions. They assumed complete mixing of nodes trajectories in the network and random mobility pattern was not considered. They also assumed that data contents are delay tolerant and stated that their ideas were not very relevant to real-time applications. Caching data contents in users devices helps us to overcome the delay constraint. Furthermore, a practical mobility model is required to represent a more realistic behavior of the users. There are many mobility models in the literature which try to capture user behavior [15]. In this work, we focus on the individual user mobility based on a probabilistic random walk and defer group mobility for our future work.
We consider a D2D caching network where the SP is aware of the user demand and mobility. We consider the results presented here as a forward step towards a mobile content marketplace. The obtained results will allow us to enhance our content trading model presented in [1]. Our aim is to show that exploiting the information about user mobility helps the SP to optimize its caching strategy and address the network congestion problem in an intelligent manner. Moreover, users can achieve more gains when they consider their mobility statistics and the locations where they can meet other users in the network. We investigate two caching schemes: a centralized caching scheme and a decentralized caching scheme. In the centralized caching scheme, the SP makes the caching decision towards its cost minimization to increase its profit. In the decentralized caching scheme, users take over and make their caching decisions, in a distributed fashion affected by the SP pricing policy, towards their payment minimization. Our main contributions are:
We introduce an optimal centralized caching policy that allows SP to enhance its caching decisions based on the user demand and mobility statistics. 2. 2.
The complexity of the optimal centralized caching policy grows exponentially with the number of users. Therefore, We introduce a sub-optimal policy based on a greedy algorithm that has a polynomial order complexity. 3. 3.
Using the proposed greedy algorithm, we establish upper and lower bounds on the gain achieved by the optimal policy for the proactive service cost. 4. 4.
We investigated how the SP chooses an optimal reward to incentives users to participate in the proposed centralized caching policy. 5. 5.
We extend our work by considering a decentralized caching policy. The tension between the SP and users is modeled as a Stackelberg game. Best response analysis was used to identify a subgame perfect Nash equilibrium (SPNE) between users. 6. 6.
The optimal solution of the proposed model was found to depend on the SP reward preference, which affects the assigned memory in users devices. We found some regimes for the reward value where the SPNE was non-unique. A fair allocation caching policy was adopted to choose one of these SPNEs. 7. 7.
We studied the relation between the users assigned memory and the reward they receive from the SP. This part studies the tension between the SP and users to choose an appropriate memory size for the decentralized caching policy. 8. 8.
To understand the impact of user mobility, we considered some special cases when users have similar behavior. We studied the effect of these special cases on the centralized and decentralized caching policies. 9. 9.
The obtained results in this work allow us to enhance our content trading model presented in [16] to form a complete vision about mobile content marketplace.
The rest of this paper is organized as follows. In Section II, we lay out the system setup and define the characteristics of its main components. We study the performance of the centralized caching scheme in Section III. In Section IV, we study the decentralized caching scheme. The paper is concluded in Section V.
II System Model
We consider a wireless network consisting of a set of users and a single Service Provider (SP) who supplies data items upon demand. Each data item has a size which may be a movie (as in YouTube and Netflix), a sound track (as in Panadora), a social network update (as in Facebook and Twitter), a news update (as in CNN and Fox News), etc. Each user may request any of these data items in a random fashion. We consider a time-slotted system where SP divides the duration of interest (e.g. a day) into time slots. We assume that the duration of each slot is the time taken for a user to completely consume the requested data item and hence each time slot is in the order of minutes or possibly hours. At the beginning of each time slot, SP collects the demand of all users and supplies them with the requested data items.
II-A User Demand Model
We assume that SP can track, learn and predict user behavior over time and hence constructs a demand profile for every user denoted by . For any time slot , where is the probability that user requests item in time slot . The demand of user in time slot is captured by a random variable where
[TABLE]
We assume that at any time slot , is independent of . We aslso assume that for any , is independent of . Furthermore, the demand profile of each user follows a cyclo-stationary pattern that repeats itself in a period of time slots. That is, we can write for any non-negative integer . As an example, the -slot period can be interpreted as a single day through which the activity of each user varies each hour, but occurs with the same statistics every day. SP relates these time slots with the actual day time based on users demand statistics to recognize the time slots where it experiences low demand (off-peak times) and those where a high demand occurs (peak times).
II-B User Mobility Model
We assume that SP is interested in popular locations like airports, schools, shopping malls, stadiums or governmental buildings where high demand can be related with mobility of users. Moreover, SP can track, learn and predict the mobility of each user over time and hence constructs a mobility profile for every user denoted by where is the probability that user will be present at location in time slot where . We represent user’s mobility by a modified probabilistic version of the random walk mobility model which is based on a discrete-time Markov chain model [17]. We assume that users stay in the same location within a time slot and may move to another location at the beginning of each time slot. Let be the transition probability that user moves from location to location in time slot where . These transition probabilities may change from one time slot to another to capture the mobility of each user. However, the probability of being at a certain location in a time slot depends on the location in the previous time slot only, i.e. where .
Figure 1 (a) shows the state transition diagram of user in time slot for locations, like home (H), campus (C) and downtown (D). We assume that each user randomly takes a trajectory everyday starting from one location and moving to other locations. However, we assume that the mobility profile of each user follows a cyclo-stationary pattern that repeats itself in a period of time slots. For example, everyday user starts from his home, visits some frequent locations throughout the day and then returns back home at the end of the day as shown in Figure 1 (b). SP exploits this mobility to enhance its caching strategy and hence achieves more gain by reducing the incurred service cost.
II-C Proactive Service Scheme
SP tries to smooth out the network load by caching some of these data items at the network edge and exploits users mobility statistics to enhance its caching decision. We assume that one-hop device-to-device (D2D) communication is allowed and can be used to transfer data items between users. A fixed data rate link between all users is assumed. We also consider a non-fading channel between all users where an appropriate network protocol is applied to avoid multiple access interference. In the small timescale, data transmission follows an orthogonal multiple access scheme, hence inter-node interference effect is ignored in our large timescale model. For example, at any location , SP predicts that a certain item will experience a high request in time slot . It also predicts which users will be possibly present at that location in this time slot. This data item can be cached at these users and they can transfer it to other users in their vicinity. Therefore, some of the network load will be shifted to the D2D communication which alleviates the network congestion and yields a reduction in the incurred service cost.
Users occupy part of their device memory for caching these data items and consume some of their batteries to transfer it through the D2D communication. We capture the cost of caching each byte by a parameter . This parameter can be viewed as a rent cost for caching this data. We can also view it as a reward that incentives users to participate in this model and save some of their payments by getting it as a discount in their monthly bills. For simplicity, we assume that users always have enough battery level to transfer cached data items to other users in the network and that they always allow SP to cache data in their devices. This reward promotes users to raise their memory size to be able to cache more data. When is sufficiently large, we can assume that each user has enough memory space to cache assigned data items since SP distributes cached items over all available users.
III Centralized Caching Scheme
In the centralized caching mode, SP makes the caching decision to push some data items in users devices. SP leverages the information about users demand and mobility statistics to make these decisions towards its cost minimization. Users get reward by participating in this model and find their request either in their local cache or at other users in the same vicinity. Therefore, users can also save some of their payments. To evaluate the system performance, we compare the incurred service cost of the proposed model with the cost of the flat pricing scenario. The definition of the cost function is first defined and then the problem is stated. We introduce an optimal centralized caching policy and resolve its complexity issue through a suboptimal caching policy. We also shed light on the impact of users mobility on the proposed caching policy.
III-A Problem Statement
To supply requested data items, SP incurs a certain service cost due to the resources consumed at each time slot. We denote by the SP cost for serving a total demand in time slot . We also assume that the cost function is convex and non-decreasing. We consider a reactive network as a baseline scenario where users’ requests are served upon arrival (in contrast to proactively predicting the demand requests). In this case, the time-averaged expected cost of all users is given by:
[TABLE]
where, the superscript indicates reactive operation. In the proposed model, we assume that SP is aware of the demand and mobility profiles of all users over time slots. SP caches an amount of data item at user for a future possible request. Each user transfers this data to other users through the D2D communication in any time slot when it is requested. For simplicity, we assume that sharing the cached data in users devices happen for free. In particular, users are not announcing any selling prices and they don’t pay for getting their request from other users. Therefore, when a user requests a certain content, his request will be first served from the cached data in the other users devices who are located around him. If this data content was not cached, the request will be served through the network resources. SP replaces the data cached in users devices when it is expired at the end of the day (i.e. at the end of time slot ). In particular, SP caches data at the beginning of the day and lets users share it throughout the rest of the day. The cached amount of data item at each user cannot exceed its size, i.e.
[TABLE]
Hence, under this proactive model, the total network load in time slot is given by:
[TABLE]
where the superscript indicates proactive operation and is the set of all possible combinations of indices. i.e.
[TABLE]
where . We assume that users share the cached data items when they meet each other and get the remaining portion from SP. The total network load in (3) captures all cases when some of the users meet each other, all users meet together or each user is moving alone. Consequently, the corresponding time-averaged expected cost under the proactive operation is given by:
[TABLE]
which captures SP’s cost for serving a proactive demand and the corresponding cost for caching process. Note that instead of having a cost factor (), as in the previous chapters, we are modeling the SP cost in terms of serving the peak load for a normalized cost factor and caching some data items for a reward factor ().
The SP gain is the difference between the reactive cost and the proactive cost under the proposed model which can be denoted by . Users save some of their payments by finding the requested data items in their local cache or in the cache of their neighbors. The SP objective is to achieve a positive gain (i.e. ) by finding an optimal caching policy , which minimizes the time-averaged expected cost, while serving the requested data items on time to all users. The problem is defined as:
[TABLE]
The optimization problem in (5) depends mainly on the cost function which may be linear, quadratic or a polynomial of higher order. The exact solution of (5) for non-linear cost functions can be obtained using convex optimization techniques. However, this case does not provide clear insights on the effect of user’s mobility. Nevertheless, finding an optimal caching policy will be non-tractable. Instead, we focus here on a linear cost function to reveal some insights and to find an optimal caching policy, which allows SP to achieve a minimum service cost. The complexity of this optimal policy grows exponentially with the number of users . We overcome this point by introducing a suboptimal policy based on a greedy algorithm which has a polynomial-order complexity. We use the sub-optimal policy to find upper and lower bounds for the optimal policy.
III-B Optimal Centralized Caching Policy Analysis
In this section we introduce an optimal caching policy which achieves a minimum service cost for the proposed model. For a linear cost function, considering all possible cases of the \bigl{(}.\bigr{)}^{+} terms in (3), we wind up with a set of linear programs and the optimal solution is obtained from the one which leads to a minimum cost. We start by considering two simple cases for . We use these simple cases to generalize the optimal solution of this centralized caching policy.
III-B1 Case Study ()
For simplicity, we start by the case when and then extend it for any value of . In this case, the suffix can be dropped and the expected load (3) will be:
[TABLE]
And the optimization problem will be:
[TABLE]
The problem decomposes to sub-problems and we have two sub-cases: either , which leads to a linear program (LP), where:
[TABLE]
or , which leads to another LP, where:
[TABLE]
Note that the first term in (8) and (9) represents the reactive load of the network, the second term represents the caching gain achieved by caching and at users 1 and 2 respectively, while the last term represents the sharing gain attained when each user transfers his proactive download to the other. The feasibility regions of these LPs are shown in Figure 2.
The optimal solution of each LP is at one of its extreme points in the corresponding feasibility region. We have 4 extreme points and . The optimal solution of the problem is that of the LP which yields a minimum service cost. This solution can be extended for a general . Figure 3 shows the SP optimal policy which is explained in the following proposition.
Proposition 1**.**
For and for each data content , the SP optimal centralized caching policy follows:
* is optimal if and only if:*
[TABLE] 2. 2.
(0,0) is optimal if and only if:
[TABLE] 3. 3.
* is optimal if and only if .* 4. 4.
* is optimal if and only if .*
Proof.
The proof is straightforward by evaluating the cost function at all extreme points and comparing them to find the optimal solution. ∎
III-B2 Case Study ()
For simplicity, we start by the case when and then extend it for any value of . In this case, suffix can be dropped and the optimization problem will be:
[TABLE]
The problem decomposes to sub-problems and we have sub-cases. Each sub-case leads to a different LP. The optimal solution is that of the one which yields a minimum service cost among all sub-cases. It is enough to consider only two sub-cases: (i) when all terms inside the \bigl{(}.\bigr{)}^{+} functions are positive leading to a LP, where:
[TABLE]
(ii) when all the terms inside the \bigl{(}.\bigr{)}^{+} functions are negative and can be removed leading to another LP, where:
[TABLE]
where,
[TABLE]
Note that the first term in (11), (12) represents the reactive load of the network, the second term represents the caching gain achieved by caching and , while the last term represents the sharing gain attained when each user transfer his cached data to other users. The feasibility regions of these LPs are shown in Figure 4. Each LP has 4 extreme points and its solution is one of them. The optimal solution of the problem is the solution of the LP which yields a minimum service cost. This solution can be extended for a general . Figure 5 shows SP’s optimal policy which is explained in the following proposition.
Proposition 2**.**
For and for each data content , the SP optimal centralized caching policy follows:
* is optimal if and only if:*
[TABLE] 2. 2.
Caching once is better than twice if and only if:
[TABLE]
* is optimal if and only if:*
[TABLE]
For the case of caching once, it is optimal to cache at user if and only if:
[TABLE]
For the case of caching twice, it is optimal to cache at users and if and only if:
[TABLE]
Proof.
The proof is straight forward by evaluating the cost function for every extreme point and comparing them to find the optimal solution. ∎
III-B3 Optimal Policy for -users
Now, from the previous cases, we can infer the optimal centralized caching policy for a general number of users as shown in Figure 6. The optimal solution depends on the value of . For each data content , SP needs to find points on the scale or . In particular, there are regions on this scale starting from caching nothing up to caching everywhere. These points (regions) determine how much caching should be done based on the exact value of . Inside each region of , users should be ranked to determine which user caches this data content. Based on the demand and mobility profiles of all users, SP finds an optimal caching decision which minimizes the incurred service cost. We summarize the optimal caching policy in Algorithm 1.
Remark 1**.**
The optimal caching decision depends on the exact value of which represents the caching cost. In particular, smaller value of yields more caching and vice verse.
Remark 2**.**
Higher values of users meeting probabilities shift points to the left while point moves to the right. In particular, the possibility of over-caching reduces when the meeting probabilities increase. Moreover, higher demand levels shift all points to the right and yields more caching.
Proposition 3**.**
The complexity of the SP optimal centralized caching policy described in Algorithm 1 grows exponentially with the number of users .
Proof.
Although the number of points on the scale of increases linearly with the number of users , the total number of required terms for users ranking is given by:
[TABLE]
which increases exponentially with . ∎
III-C Greedy Centralized Caching Policy
The complexity of optimal policy discussed in the previous section motivates us to introduce a greedy algorithm as a sub-optimal caching policy. Moreover, this algorithm allows us to establish upper and lower bounds on the achieved service gain of the optimal caching policy. The main idea of this algorithm depends on ranking users based on the level- list stated in (15). Users are picked from this list in order to cache the amount required of each data content. Algorithm 2 summarizes the steps of this greedy algorithm.
Proposition 4**.**
Complexity of the greedy caching policy described in Algorithm 2 grows in a polynomial order with the number of users .
Proof.
We still need to find points the scale of which increases linearly with the number of users. However, the total number of required terms is given by:
[TABLE]
which grows in a polynomial order with . ∎
III-D Upper and Lower Bounds Analysis
The greedy caching policy ranks users based on the level- list stated in (15). This ranking is similar to that of caching once in the optimal policy. However, this doesn’t guarantee that level- ranking is still valid in all other cases. For instance, the first two users in this list are not guaranteed to be the same users for the case of caching twice in the optimal policy. Hence, the greedy caching policy forms a lower bound for the proactive service gain achieved by the optimal policy.
Theorem 1**.**
Under demand and mobility profiles of -users and for , the optimal proactive service gain of (5) achieved by Algorithm (1) satisfies:
[TABLE]
where, is the gain achieved by Algorithm (2).
Proof.
We compare the gain achieved by the optimal and greedy policies. For example, in the case of caching once both policies achieve the same gain and we have:
[TABLE]
In the case of caching twice, the proactive service gain of the optimal caching policy is:
[TABLE]
This gain depends mainly on the selection of users and . Since level- ranking can not guarantee that these users are the same users as in the greedy policy, this gain is larger than or equal to the gain achieved by the greedy caching policy. The same approach applies to show a similar result for all other cases. ∎
Moreover, the greedy algorithm allows us to establish an upper bound for the optimal proactive service gain. Level- ranking defined in (15) generates items representing the gain achieved by caching data content once at one of the users. Adding these gains up provides us with an upper bound for the gain achieved by the optimal caching policy in all cases. For example, the first item is this ranked list is an upper bound for the case of caching once in the optimal policy. The sum of the first two items is an upper bound for the case of caching twice in the optimal policy and so on. This result is stated in the following theorem.
Theorem 2**.**
Under demand and mobility profiles of -users and for , the optimal proactive service gain of (5) achieved by Algorithm (1) satisfies:
[TABLE]
where, is the gain achieved by adding up gains defined in (15).
Proof.
We show this result by comparing the gain achieved by the optimal caching policy with the again achieved by the greedy caching policy by adding up items of level- ranking list (15). For the case of caching once we have:
[TABLE]
which is the same value as in (22). For the case of caching twice, we have:
[TABLE]
Comparing (26) with (23) we see that:
[TABLE]
Same approach applies to all other cases. ∎
III-E Choosing Optimal Reward
The SP service cost consists of two components, one component represents the corresponding cost for serving the peak load, and another component representing the caching cost affected by the reward value . In the previous section, we introduced the solution of the centralized caching scheme based on the reward value . The SP pays this reward back to users to incentivize them to participate in this model. The aim of the SP is to minimize this reward as much as possible to reduce its expected cost. On the other hand, users try to get as much reward as they can to minimize their expected payment. This creates a tension between the SP and users and raises the question of what is the optimal rewarding value on which both SP and users will agree. To see this we assume that each user has an isolated memory . Suppose, for simplicity, that all users have the same memory capacity of . Therefore, SP can see an aggregate memory of size . Users have a reward preference to assign a certain memory of their devices for this caching process. We consider a linear relation between the reward and the memory size , i.e. , for some . In particular, users assign more memory for larger values of the reward and vice versa. Now, SP aims to let users assign enough memory for caching but this memory should not be more than required. We can see this by rewriting (5) as follows:
[TABLE]
Converting this problem to an unconstrained problem, we get
[TABLE]
where is the largrange multiplier corresponding to the constraint . Notice that the first term in (29) is the problem we solved in Section III-B without having this memory constraint. The SP solves this optimization problem for each value of Z. The optimal choice of depends on users preference. So, plotting the Lagrangian multiplier for the solution of (29) versus we get the curve shown in Figure 7. The optimal reward choice corresponds to a memory and this point is determined by the intersection of the SP reward preference and the users reward preference. This shows that we can find a unique optimal solution for the problem discussed in Section III-B by knowing . Different functions of leads to another optimal solution. Therefore, one of the parameters that SP needs to learn about users is their preference function .
III-F Impact of User Mobility
User’s mobility statistics affect the meeting probability between users. Going back to Algorithm 1, and the final result shown in Figure 6, we can see that these meeting probabilities shift the points and change the SP decision.
Definition 1**.**
The average meeting probability between any two users and is defined by:
[TABLE]
When users are moving such that they are meeting each other with a higher probability, i.e. the terms increase for all , the points shift to the left while the point shifts to the right. This means that the possibility of over-caching of this data content decreases and the SP optimal decision tends to be caching this content once. When the meeting probabilities decrease, the points shift to the right. This means that the possibility of over-caching increases and the SP optimal tends to be caching this data content at multiple users.
To show how user’s mobility affects the SP caching decision, we consider the case when users have similar mobility statistics. In particular, we consider the case when . We also consider the case when users move uniformly over all locations, i.e. . We keep the assumption that each user may have a different interest in each data content. This similarity in users mobility simplifies the optimal caching policy described in Algorithm 1. In particular, for any level-, we create all possible -tuples indices and choose the optimal set of users with indices which satisfies:
[TABLE]
For example, at level-, we have
[TABLE]
and in this case, we choose the set of users by
[TABLE]
Moreover, the greedy policy, described in Algorithm 2, becomes more simpler when we consider this similarity in users mobility. For each level- where , knowing the set of selected users from the previous step , we need to find the user . This user will be added to the set to construct the new set . This can be found by
[TABLE]
Notice that (34), can be used to determine the points for the optimal caching policy as well. We also notice that as , we have and . Consequently, and . Therefore, in this special case, the optimal caching policy depends only on users interest, as shown in Figure 8, where .
Now, considering the memory constraint and the reward preference, discussed in Section III-E, we will have the result shown in Figure 9. We notice that the optimal reward choice will depend only on users interest. Moreover, all users have interest less than will not receive any caching assignment.
IV Decentralized Caching Scheme
In the decentralized caching scheme, users make the caching decision based on the reward assigned by the SP. Users aim to leverage the lower network price at off-peak times to cache some data contents for their future request. They also share their proactive downloads with others to minimize their expected payments. We first define users payment function and then state the problem. We introduce an optimal decentralized caching policy and then compare it with the centralized caching policy mentioned in Section III-B.
IV-A Problem Statement
In the flat pricing scenario, users behave reactively by requesting each data content at time with a probability . Therefore, the time-averaged expected payment of user is given by:
[TABLE]
where the superscript indicates the reactive operation. In the proposed model, we assume that users are aware of their demand and mobility profiles over time slots. Each user caches an amount of data item for a future possible request. Moreover, user transfers this data to other users through the D2D communication in any time slot . Users replace the data stored in their devices when it is expired at the end of the day (i.e. at the end of time slot ). In particular, users cache data at the beginning of the day and share it throughout the rest of the day. We assume that users share their proactive downloads between them for free and they don’t pay for getting their request from others. We assume that the peak price is normalized and the off-peak price is denoted by , where is the reward received from the SP. In particular, instead of having for the peak and off-peak prices, as in [16], we have 1 and in this model. We still assume the maximum price constraint considered before with . Assuming that , it is enough to have an off-peak price including the SP reward. Hence, under this proactive model, the expected payment of user at time is given by:
[TABLE]
where the superscript indicates the proactive operation and is the set of all k-tuples indices including user . i.e.
[TABLE]
where . The expected payment in (36) captures all the cases when user meets some users, when he meets all other users or when he is alone. He also pays for caching an amount of each content . The time-averaged expected payment of user under the proposed model is given by:
[TABLE]
User’s gain is the difference between the reactive payment and the proactive payment, under the proposed model, which is denoted by . Users save some of their payment by finding the requested data items in their local cache or with others user in their neighborhood. User’s objective is to achieve a positive gain (i.e. ) by finding an optimal caching policy which minimizes his time-averaged expected payment. The cached amount of data item at each user cannot exceed its size as mentioned in (2). Therefore, the problem is defined as
[TABLE]
IV-B Optimal Decentralized Caching Policy Analysis
In this section, we introduce an optimal decentralized caching policy which achieves a minimum payment for users. We can see from (36) that the objective function in (38) for user depends on the decision of the other users. Therefore, we start by the assumption that each user has a complete and perfect information about others and then discuss the sufficient statistics required to find his optimal decision. Moreover, without considering a memory constraint, we can decompose the problem in (38) to sub-problems and solve it for each content , separately. We will introduce an optimal decentralized caching policy without considering any memory constraint. We discuss the effect of the memory constraint and how to choose an optimal memory size in Section IV-D. To illustrate the idea of our analysis, we start by considering two simple cases for and then use them to generalize the solution.
IV-B1 Case Study ()
For simplicity, we start by , and then extend it to any value of . In this case, the suffix can be dropped and the expected payment of user will be
[TABLE]
Note that the optimal decision of user depends on the decision of user . The problem decomposes to sub-problems and we have two sub-cases: either leading to a linear program (LP), where:
[TABLE]
and his optimization problem will be
[TABLE]
or which leads to another LP, where:
[TABLE]
and his optimization problem will be
[TABLE]
The first term in 40 and 42 represents the reactive payment, the second term represents the payment corresponding to caching these data contents. The last term represents the saving in payment achieved by sharing the proactive download of user . This saving gain depends on the meeting probability between user and . We use the Best Response (BR) analysis to find the Sub-game Perfect Nash Equilibrium (SPNE) between them, where
[TABLE]
User will consider all possible decisions of user and then make the decision that minimizes his payment for each case. Considering the two sub-cases when and , we can plot the payment of user versus as shown in Figure 10. We can draw a similar curve for the payment of user as function of . Based on these payment functions, we can come up with the best response shown in Figure 11. We can see that users best response depends on the comparison between the caching cost and their interest and mobility statistics. In particular, if r^{{}^{\prime}}<p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, user caches this content regardless of what user does, since its price is very low. If , user will not have any incentive to cache this content, since its price is high. When lies between p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)} and , user prefers to share the payment with user , i.e. if user caches an amount from this content, user opts to cache an amount . In particular, when lies in this region, partial caching is an optimal solution.
Now, without loss of generality, we can assume that and hence we have p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}>p_{2}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}. We can consider two sub-cases, either p_{2}^{m}<p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)} or p_{2}^{m}\geq p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, which leads to the solutions shown in Figures 12 and 13, respectively. In Figure 12, we can see that when r^{{}^{\prime}}<p_{2}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, both users will have enough incentive to cache the content, since its price is very low. When , both users will opt not to cache, since the price is high. When p_{2}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}\leq r^{{}^{\prime}}<p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, user caches this content and user takes it from him. When p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}\leq r^{{}^{\prime}}<p_{1}^{m}, user prefers to share the payment with user . But since , user will not have any incentive to participate in caching this content. Therefore, user will cache the whole content alone. This sub-case does not have any ambiguity and there exits a unique SPNE between both users.
In Figure 13, when is very small, such that it is less than p_{2}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)} and p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, both users cache this content. When p_{2}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}\leq r^{{}^{\prime}}<p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}, user still has an incentive to cache this content, and hence user will depend on him and opt not to cache. When p_{1}^{m}\biggl{(}1-\sum\limits_{l=1}^{L}\theta_{1}^{l}\theta_{2}^{l}\biggr{)}\leq r^{{}^{\prime}}<p_{2}^{m}, partial caching will be an optimal solution. So if user caches an amount , user completes it by caching . Actually, any value leads to a Nash equilibrium. This means that we have a non-unique Nash equilibrium in this region. Therefore, it is important to find another dynamic to choose one of these equilibria, as discussed in Section IV-C.
IV-B2 Case Study ()
We start by , and then we can extend the result for any value of . The suffix can be dropped and the expected payment of user can be written as:
[TABLE]
Following the same best response analysis, user determines his best response based on the decision of users and . Therefore, is the caching decision which achieves minimum payment for the corresponding values of and . The optimal solution of user is shown in Figure 14. Basically, each user decides whether he will be caching the content alone, sharing the payment with others, or discarding it at all based on the relation between , and p_{n}^{m}\bigl{(}1-v_{n}\bigr{)}.
The optimal solution of all users depends on the relation between their interest. For example, suppose and p_{1}^{m}\Bigl{(}1-v_{1}\bigr{)}>p_{2}^{m}\Bigl{(}1-v_{2}\bigr{)}>p_{3}^{m}\Bigl{(}1-v_{3}\bigr{)}. The optimal solution will be as shown in Figure 15. When is small enough, all users cache the content. There are some other regions of where partial caching is an optimal solution. We notice that the non-unique equilibrium region expanded because partial caching may occur between user and , and or and . We emphasis here that the optimal solution depends on the relation between and and the relation between and . The solution shown in Figure 15 considers one example but there are some other cases. However, the same idea applies to find the optimal solution in each regime of .
IV-B3 Optimal Policy for -users
Now, from the previous cases, we can infer the optimal decentralized caching policy for a general number of users as shown in Figure 16, where , \tilde{p}_{n}^{m}=\frac{1}{T}\sum_{t=1}^{T}p_{n,t}^{m}\Bigl{(}1-v_{n,t}\Bigr{)} and is as defined in (18), . Each user compares the caching cost with his interest and mobility statistics and to determine whether he is caching the whole content, sharing the cost with others, or discarding it at all. Since there are non-unique equilibrium for the partial caching regime, we are not able to show uniqueness of the SPNE. The following theorem states the existence of the SPNE.
Theorem 3**.**
For a game of users, there exists a Subgame Perfect Nash Equilibrium (SPNE) between users.
Proof.
The existence follows from Debreu, Glicksberg and Fan (DGF) theorem since:
- •
are compact and convex.
- •
are continuous over .
- •
are concave by its linearity in (for each sub-case separately).
Optimality of the solution was shown by the best response analysis discussed before. ∎
IV-C Fair Caching Allocation
When the caching cost lies in the regime where partial caching is an optimal solution, there exits a non-unique Nash equilibrium. Another dynamic need to be added to the game that allows the users to choose one of these equilibria [18, 19]. A Nash equilibrium is considered payoff dominant if it is Pareto superior to all other Nash equilibria in the game. Unfortunately, it is not clear if any of these equilibira has this feature. For example in the case of , we can see that if user caches an amount of content and user completes it by caching an amount , the payment of user , corresponding to this content, will be
[TABLE]
which is a decreasing function in . In particular, any increase in is preferable to user . On the contrary, the payment of user , corresponding to this content, will be
[TABLE]
which is an increasing function in . Therefore, user will try to reduce as much as possible. This means that the tension between both users will not lead them to a payoff dominant NE.
A Nash equilibrium is considered risk dominant if it has the largest basin of attraction (i.e. is less risky). In particular, the more uncertainty players have about the actions of the other player(s), the more likely they will choose the strategy corresponding to it. Each user evaluates the risk corresponding to each NE, given that he doesn’t know the reaction of the other users, and chooses the one with the least risk value (e.g. smallest expected payment). Unfortunately, this approach does not necessarily lead us to one of the Nash equilibria. Figure 17 depicts the result obtained for an example of , where and their meeting probability is . We can see that there are some regimes of where exceeds . In particular, for , the risk dominance solution does not lead to a Nash equilibrium. The corresponding payments are shown in Figure 17 (b). User pays more than user since he is caching more. This also means that user is more affected by the risk dominance policy.
Preplay communication is another way to coordinate between users. Users agree before playing the game on a certain strategy when lies in the partial caching regime. For example, they may agree on caching amounts proportional to their interests. This coordination may also be imposed by the SP who sets this rule for all users before playing the game. We know that users will pick one of the Nash equilibria since it allows them to minimize their payment. We adopt a fair allocation strategy for this case which is defined as follows.
Definition 2**.**
For the game of -users, if lies in the region where they need to share the caching cost, then the fair equilibrium is a NE which satisfies: .
Notice that this fair allocation is one of the equilibria. So, if users agree on this strategy before playing the game, none of them will have any incentive to deviate unilaterally. Figure 18 (a) depicts the fair allocation solution for the example mentioned above. Notice that, for , each user caches an amount proportional to his interest. The corresponding payments are shown in Figure 18 (b). Comparing the results obtained from the fair allocation policy with the risk dominance results, we see that users payments are reduced. The fair allocation policy is one of the pre-play communication policies; however, we can find some other coordination approaches between users. For example, users can make a caching decision such that their corresponding payments are proportional to their interest. We summarize the optimal decentralized caching policy in Algorithm 3.
IV-D Choosing Optimal Memory Size
In the previous section, we introduced the solution of the decentralized caching scheme based on the reward value (recall that ). Since, SP pays this reward back to all users, it will always try to reduce this amount as much as possible. But at the same time, this reward creates an incentive for users to participate in this model. We assume that each user has an isolated memory of size . For simplicity, we also assume that all users have the same memory size. Hence, the SP finds an aggregate memory of size . The SP has a reward preference to assign a certain reward corresponding to the assigned memory . We consider a linear relationship between and . In particular, we assume that , for some . This means that the SP gives users more reward when they assign smaller memory and reduces the reward when they assign larger memory. This relation stops the users from increasing their memory and caching everything. At the same time, when the SP needs more memory, it can reduce the reward to push users towards increasing their memory size.
Now, considering this memory constraint, we can rewrite (38) as follows:
[TABLE]
where is the peak load generated by user . In particular, from (36), we see that . Converting this problem to an unconstrained problem, we get
[TABLE]
where is the Lagrangian multiplier associated with the constraint . Notice that the first term in (47) is the problem we solved in Section IV-B without having this memory constraint. Each user solves this optimization problem for all possible values of . The optimal choice of depends on the SP reward preference.
Plotting the Lagrangian multiplier for the solution of (47) versus we get the curve shown in Figure 19. The optimal solution is determined by the intersection point between the SP reward preference and the users reward preference. We can see that takes the values of or . At the intersection point, and under the fair allocation scheme discussed in Section IV-C, the optimal solution will be at . Considering all users, we will have the result shown in Figure 20. The optimal solution is at the intersection point between the SP reward preference and the users reward preference.
Note that each sub-region corresponds to one of the solutions shown in Figure 16. Therefore, the intersection point correspond to one of these solutions, where we may have some users are caching the content while others are sharing the cost of caching that content once between them. The best case scenario happens when the intersection leads to a solution where the content is cached once between all users. This means that each user caches a small portion of this data content, based on the relation between his interest and the aggregate interest of all users. This also yields a lower memory consumption as the number of users increases.
IV-E Impact of User Mobility
Users mobility statistics affect the optimal solution of the decentralized caching policy. The optimal decision of each user depends on his meeting probabilities with other users. The user who is meeting others with a higher probability will have more potential for partial caching. In particular, when his meeting probabilities increase, the value of decreases and the region of partial caching increases. To see this, let us consider a special case when users have similar mobility patterns. Further, we consider the case when users visit all locations with the same probability and hence have the same meeting probability. In particular, consider the case when . Therefore, we have
[TABLE]
When , we have . This case is typically similar to the proactive caching model discussed in [16]. Since we are assuming here that , each user will cache the content when his interest exceeds the caching cost, regardless of the other users decision. Note that is similar to in the proactive caching model, since we assume that . For example, the solution of will be as shown in Figure 21. When is smaller than both users cache this content. When it exceeds or , the corresponding user opts to avoid caching.
Now suppose that users are moving together such that their meeting probabilities are very close to 1. This is similar to the content trading model. The difference is that all users are setting their selling price to 0, i.e. they are sharing their proactive downloads for free. For example, the optimal solution for shown in Figure 13 will be modified as shown in Figure 22. Since, users are sharing their proactive downloads for free, partial caching will be an optimal solution, instead of having one user caching the content and selling it to all other users.
V Conclusion
We considered a mobility-aware D2D caching network where caching decision is taken based on the users demand and mobility statistics. Two caching schemes, centralized and decentralized, were considered. We started by considering a centralized D2D caching network, where the SP is pushing data items in users devices and pays them a reward for participation. The SP aim was to minimize its incurred service cost by harnessing user’s demand and mobility statistics. An optimal caching policy was introduced that allows the SP to enhance its caching decisions. The complexity of the optimal caching policy was found to grow exponentially with the number of users. Therefore, we introduced a greedy caching policy that has a polynomial order complexity. The proposed greedy algorithm was used to establish upper and lower bounds on the gain achieved by the optimal caching policy. The optimal solution of the proposed model was found to depend on users reward preference which affects the assigned memory in their devices. Our vision was completed by considering a decentralized D2D caching network, where users make the caching decision based on the SP reward. We introduced an optimal caching policy that allows users to minimize their expected payment. We formulated the tension between the SP and users as a Stackelberg game. Best response analysis was used to identify a subgame perfect Nash equilibrium between users. The optimal solution of the proposed model was found to depend on the SP reward preference, which affects the assigned memory in users devices. We found some regimes for the reward value where the SPNE was non-unique. A fair allocation caching policy was adopted to choose one of these SPNEs.
To understand the impact of user behavior, we considered some special cases when users have similar behavior. If users have identical behavior, i.e. they have similar interest and mobility statistics, they receive a similar amount of caching. Moreover, when the number of popular locations grows large, their meeting probability approaches zero and the amount of caching depends on their interest only. We showed that if users have similar interest and different mobility statistics, caching the same content at all of them happens only if their meeting probability is zero. In this case, the amount of data cached at each user depends on their interest only. Users who are meeting each other with a probability of , split the content caching between them and caching the data item once is optimal. Fair allocation plays an important role here, to pick one of the SPNEs. If users have similar and uniform mobility patterns, i.e. they visit all popular locations with the same probability, the complexity of the centralized optimal caching policy was significantly reduced. We used this special case to show how the mobility-aware model simplifies the proactive caching and the content trading models. Our objective from this part was to explore how users mobility statistics affect the caching decision.
The results of this work extend our understanding for users behavior in D2D caching networks and allow us to add mobility dynamics to our content trading model discussed in [16]. However, there are many aspects that need more investigations. Capturing group mobility in D2D caching networks helps SPs to leverage more statistics about users. This problem has its own importance in studying the correlation between users and how to exploit it to enhance the network performance. We considered mainly the economics point of view in the previous work and discussed cost minimization in the individual mobility model. There are some other metrics that can be used to evaluate the proposed models from different angles, like outage probability and achievable throughput. Further, scaling behavior of such networks is a major point in this direction. We need to investigate the performance of the network when it expands to a larger number of users or data items.
We also need to study the cooperative and distributed caching in social-aware D2D caching networks which is another dimension to capture the correlation between users. Inspired by the main results and insights from the group mobility direction, we can extend it to grasp another parameter which affects the D2D caching networks. The carrier should be able to harness the statistics about relations between users to optimize the cached data items. This should be another thrust towards cost minimization. The SP can also exploit this aspect to shape users demand and consequently maximizes its profit. Over and above, users gain from their relationships with others in many ways. By reducing the service cost, the SP will have more potential to offer lower prices to users, as a way to shape their demand. There will be a higher possibility to find the requested data items among users in the same vicinity.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] F. Alotaibi, S. Hosny, H. E. Gamal, and A. Eryilmaz, “A game theoretic approach to content trading in proactive wireless networks,” in 2015 IEEE International Symposium on Information Theory (ISIT) , June 2015, pp. 2216–2220.
- 2[2] C. V. N. Index, “Cisco visual networking index: Global mobile data traffic forecast update, 2015–2020 white paper,” Tech. rep. Cisco, 2016. url: http://www. cisco. com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/mobile-white-paper-c 11-520862. html (visited on 03/26/2016)(cit. on p. 6), Tech. Rep., 2016.
- 3[3] FCC, “Spectrum policy task force report, fcc 02-155,” 2002.
- 4[4] C. Song, Z. Qu, N. Blumm, and A.-L. Barabási, “Limits of predictability in human mobility,” Science , vol. 327, no. 5968, pp. 1018–1021, 2010. [Online]. Available: http://www.sciencemag.org/content/327/5968/1018.abstract
- 5[5] K. Farrahi and D. Gatica-Perez, “Discovering human routines from cell phone data with topic models,” in Wearable Computers, 2008. ISWC 2008. 12th IEEE International Symposium on . IEEE, 2008, pp. 29–32.
- 6[6] J. Tadrous, A. Eryilmaz, and H. El Gamal, “Proactive resource allocation: Harnessing the diversity and multicast gains,” Information Theory, IEEE Transactions on , vol. 59, no. 8, pp. 4833–4854, Aug 2013.
- 7[7] C.-H. Yu, K. Doppler, C. B. Ribeiro, and O. Tirkkonen, “Resource sharing optimization for device-to-device communication underlaying cellular networks,” Wireless Communications, IEEE Transactions on , vol. 10, no. 8, pp. 2752–2763, 2011.
- 8[8] G. C. M. Ji and A. F. Molisch, “Wireless device-to-device caching networks: Basic principles and system performance,” IEEE Journal on Selected Areas in Communications , vol. 34, no. 1, pp. 176–189, Jan 2016.
