Cooperative Caching For Content Dissemination in Vanet
Cooperative Caching For Content Dissemination in Vanet
DOI: 10.1002/dac.3534
RESEARCH ARTICLE
K E Y WO R D S
content distribution, cache enabled RSUs, cooperative caching, data dissemination, vehicular net-
works
1 I N T RO DU CT ION
According to Cisco forecasts,1 the global mobile traffic will increase nearly tenfolds in the next 5 years and will be
surpassing 24.3 exabytes per month by 2020. As machine-to-machine communication (M2M) and device-to-device com-
munication (D2D) are envisioned to be the features of 5th generation cellular networks in an effort to realize Internet of
things, the number of machine-type devices (MTD) connected to a cellular base station in 2020 may be 10 times to 100
times more than the mobile phones. The explosive growth in the mobile traffic puts a heavy burden on the operators in
terms of increased capital investments and operational costs. A key strategy in managing operational expenditure within
limits without sacrificing end-user satisfaction is to leverage the existing communication infrastructure built on low-cost
technologies such as Wi-Fi and dedicated short-range communication technology2 for off-loading cellular traffic.
Int J Commun Syst. 2018;e3534. wileyonlinelibrary.com/journal/dac Copyright © 2018 John Wiley & Sons, Ltd. 1 of 22
https://doi.org/10.1002/dac.3534
2 of 22 AKHAVAN BITAGHSIR AND KHONSARI
A vehicular communication network (VCN) is composed of low-cost base stations called roadside units (RSUs),3 where
each RSU has limited storage space and are able to wirelessly communicate with fast-moving vehicles. Cellular traf-
fic off-loading to vehicular communication networks benefits from the fact that most of the outdoor traffic originates
from portable communication devices within vehicles. Further, modern vehicles may be equipped with processing power
and storage space better than that of smartphones or tablets, which, in turn, can facilitate advanced signal processing
techniques to mitigate channel impairments and achieve higher throughput. Furthermore, vehicular communication
technologies are designed for outdoor environments where high Doppler channel conditions are prevalent, which make
them preferable over Wi-Fi networks. In this paper, we investigate a content delivery network, in which cellular traffic is
being off-loaded via VCNs.
We consider a content delivery network where the central content server is hosted at the base station(s) of a cellular
network, and the cache servers are hosted at the RSUs of a VCN. A delay tolerant approach to content delivery is explored
with a goal of balancing the end-user service quality against the congestion in the cellular network. Upon the request
for a file at the central content server from an end-user application, the central content server returns a search interval.
The search interval may be chosen as a function of the delay tolerance of the requesting application. During the search
interval, the application requesting the file attempts to download the file from the cache servers that the end-user (vehicle)
visits as it travels. If the download is not successful by the end of search interval, then the file is delivered over the cellular
network from the main server. Since the majority of file downloads are delay tolerant, this approach can considerably
reduce the load of the base station.
Given the above content delivery model, we want to minimize the cellular traffic, which in turn means to maximize
the average hit ratio, the average fraction of total requests served via the local caches per unit time. Given the popularity
of the contents, the traffic patterns of streets, and the location of the cache servers (RSUs) in a geographical area, how
shall the files be placed in the local cache servers so as to maximize the average hit ratio? We refer to the above problem
by cache content placement (CCP) problem. In this paper, we seek to solve CCP in a distributed fashion: design local
algorithms that enable each cache server to autonomously choose its files in response to its own local information such
that the average hit ratio is maximized. There are several reasons why we prefer distributed approaches over centralized
approaches for solving CCP. First, there are several time-varying parameters in vehicular networks, such as file demands or
vehicles mobility model, and distributed approaches adapt faster in these dynamic situations compared to the centralized
approaches. Second, lots of required information for solving CCP is available locally for the RSUs and not for the BS and
there will be lots of information exchange overheads if we send all the required information to the Base Station (BS). Also
solving CCP at BS in a centralized fashion may cause queuing and response time delay overheads. Therefore, solving CCP
at RSUs distributively helps the vehicular network administrators to improve system metrics.
1.1 Contributions
• First, we model CCP as a submodular maximization problem. We then prove that this problem is NP-hard by reducing
it to n-disjoint set cover problem (n-DSC), which is a well-known NP-complete problem.
• We then propose cooperative caching for content placement at RSUs. Since the hit ratio of each cache depends not
only on its own contents but also on the choices of the neighboring caches, to derive an efficient distributed algorithm,
each cache must have some minimal information about the contents of other caches in its vicinity, eg, indices of the
files stored in other caches. To that end, we form local clusters of caches and allow information sharing within each
cluster. We also propose 2 different types of clustering for the caches, which we discuss in details in Section 4.
• Next, we approximate the average system hit ratio by the sum of hit ratios experienced by all the clusters and then
design a distributed algorithm to maximize this approximated objective function.
• We model CCP with game-theoretic approach to find efficient content placement based on the mentioned cooperative
caching scheme. Game theory deals with decision making under strategic situations and offers many tools for designing
efficiency guaranteeing distributed control mechanisms. The challenge involved in game-theoretic control is to identify
appropriate local utility functions for each player, which the resulting equilibria of the game guarantee efficient system
behavior (with respect to the optimal global objective value). We model the interaction between the caches as a strategic
game and then discuss local utility function design approaches based on marginal contribution and Shapley value. We
further show that the proposed game is in the category of resource allocation games and every equilibrium of the
resulting game is at least 50% efficient with respect to the global maximum. To the best of our knowledge, this is the
first study on exploiting game theory for improving content dissemination in vehicular networks.
AKHAVAN BITAGHSIR AND KHONSARI 3 of 22
• In the next step, the resulting game is proven to be a potential game, and hence, simple, localized best/better reply
dynamics will be used to learn an equilibrium of the game.
• Finally, we evaluate the performance of our proposed method using trace-based simulations for urban environments
under some realistic conditions. The results show an improvement of 8% in the average hit ratio of the proposed method
compared with other well-known CCP approaches such as MobiCacher, FemtoCacher, and PopularityCacher.
There are several motivations to use game theory for solving the CCP. First, game theory deals with decision making
under strategic situations and offers many tools for designing efficiency guaranteeing distributed control mechanisms.
Second, we can apply cooperative game theory analysis in our model, where the RSUs as individual components in the
system can cooperate with each other to maximize the overall hit ratio experience by the vehicles. The situation where
the RSUs decline to cooperate with each other and the interest of one RSU is in contrast with another RSU is discussed
in Section 5.
1.3 Structure
The rest of the paper is organized as follows. In Section 2, we discuss the system model and the problem definition of
our work. In Section 2.3, we describe cooperative CCP. Section 3 presents a game theoretic approach and connect it to
4 of 22 AKHAVAN BITAGHSIR AND KHONSARI
the class of games called resource allocation games. In Section 4, we evaluate the performance of our proposed method.
Finally, in Section 5, we conclude our findings and outline directions for future research.
Consider a content distribution network that consists of a cellular base station and a number of RSUs. We define
M = {M1 , M2 , … , Mm } as a set of RSUs. The cellular base station is equipped with a central content server. Let
N = {f1 , f2 , … , fn } denote the set of files in central content server. Without loss of generality, we assume that all files are
of equal size. Each RSU is equipped with a cache that stores a subset of files. We define the cache size of Mi ∈ M as Li
∑
and the subset of files stored in Mi , as Xi = {𝑓𝑗 ∶ |𝑓𝑗 | ≤ Li }. That is, all permutations of the subsets of N that their size
are smaller than Li . As an example, when N = {f1 , f2 , … , f10 } and Li = 3, the following Xi s are valid cache allocations for
Mi : Xi = {𝜙}, Xi = {f3 }, Xi = {f3 , f4 }, Xi = {f1 , f7 , f10 }, while Xi = {f1 , f2 , f5 , f8 } is not a valid cache allocation. We define
the set 𝜒 = {X1 , … , X|M| } as system allocation, when all Xi s are valid cache allocation. Moreover, we define the set of the
index of RSUs that contain in their caches a specific file fi as {X}i . For example, in continuation of the previous example,
assume 2 RSUs exist in the system. A valid system allocation is 𝜒 = {X1 , X2 }, with X1 = {f3 , f10 }, X2 = {f1 , f7 , f10 }. Here,
{X}𝑓1 = {2}, {X}𝑓2 = {𝜙}, {X}𝑓3 = {1}, and {X}𝑓10 = {1, 2}. Table 1 shows the semantics of the notations used in this
paper.
Demand model: The average demand for the file i ∈ N, denoted by di , is defined as the total number of vehicles
interested in the file i ∈ N per unit time (on an average) over the entire geographical region under consideration. However,
the distribution to this demand may not be uniform across the region. For example, a file carrying information on an
entertainment program taking place in a theater must be more popular in the neighborhood of the theater than any
faraway location. We model the nonuniform nature of the demand by first partitioning the region of interest into sectors
∑s
S = {S1 , S2 … , Ss } and then letting the average demand for file i within sector Sk be dik . Therefore, k=1 dik = di . Despite
the demand model proposed in Yu et al,20 where a central controller periodically estimates the demand of each file in
the library, in our model, each RSU Mj , can estimate dik′ ∶ M𝑗 ∈ k′ , in a distributed manner. It can be done because
all the RSUs in the same sector exchange the information about the history of file requests coming to them (see RSUs
information exchange model in Section 2). This helps the RSUs to adapt faster to the time-varying demands and to reduce
the complexity and delay of the centralized approach. Note that the information exchange between RSUs may produce
extra overhead, which we analyze in Section 4.
RSUs information exchange model: Let the RSUs within a sector exchange local information with each other peri-
odically. This information contains (1) the history of the vehicles' requests, that is, the average number of times each file
in the library is requested by the vehicles by that RSU per unit time and (2) the information about the table of contents
of that RSU. The first batch of information is used to practically estimate the demand for file i in sector k, that is, dik .
The second batch of information is used to compute the utility function of each RSU in the content placement mechanism
proposed in (16). The RSUs information exchange overhead is analyzed in Section 4.
Vehicles mobility model: As we mentioned in Section 1.2, some related works consider the mobility of the vehicles in
their model for solving CCP, but a more realistic mobility model will help us to have more precise results. In this paper,
we consider several mobility models, eg, RUM, stop sign model (SSM), probabilistic traffic sign model (PTSM), and traffic
light model (TLM), for evaluating the proposed CCP in an urban environment. Saha et al21 at Rice University modeled
mobility of vehicles by considering vehicle mobility to street boundaries. Their model, which is called Rice University
Model (RUM), does not enforce any traffic rules on the network, especially at intersections. In the SSM,22 every street at an
intersection has a stop sign. Any vehicle approaching the intersection must stop at the signal for a specified time. On the
road, each vehicles motion is constrained by the vehicle in front of it. When vehicles follow each other to a stop sign, they
form a per-street queue at the intersection. Each vehicle waits for at least the required wait time once it gets to the head
of the intersection after other vehicles ahead in the queue clear up. In the PTSM,23 when a node reaches an intersection
with an empty queue, it stops at the signal with a probability p and crosses the signal with a probability (1 − p). If it
decides to wait, the amount of wait time is randomly chosen between 0 and 𝜔 s. Similar to SSM, there is no coordination
among vehicles crossing an intersection from different directions. This model avoids excessive stoppings, as in the case of
SSM, and at the same time, approximates the behavior of traffic lights. Under TLM,24 traffic lights at each intersection are
coordinated. Also, more details of vehicular networks such as multiple lanes and acceleration/deceleration are considered
in this model. Along its path, each vehicle meets some RSUs. As a result, vehicles can then interact with the nearby
RSUs, which are within the radio range, and send their file requests to them. We discuss other parameters of the vehicles
mobility model in Section 4.
Service model: A vehicle interested in a file from the library has 2 options to download the file: directly from the central
content server at the base station (over the cellular network) and from the cache servers located at the RSUs over VCN.
When interested in a file, the vehicle first sends a request to the central content server. The central content server
provides authorization for downloading from the cache servers along with the specifications of a search interval. The
search interval may be chosen as a function of the delay tolerance of the requesting application. During the search interval,
the application requesting the file attempts to download the file from the cache servers that the end-user (vehicle) visits
as it travels. When the attempts fail, the file is downloaded directly from the central content server at the end of the search
interval.
The average hit ratio is defined as the fraction of demand serviced per unit time by all the cache servers together. The
probability that a user successfully downloads a requested file from the caching network depends on the following factors:
1. the set of caches containing the requested file
2. the probability that the vehicle reaches the communication range of the caches that contain the requested file
(during the search interval)
3. the probability of successful delivery of the file over the error-prone wireless links
To model the probability of hitting the caching network, we introduce the hitting probability for each sector. The hitting
probability of the sector k ∈ S is the function gk that calculates the probability of successfully downloading a file within
cluster k. Mathematically, gk ∶ 2M → [0, 1] is a function that we assume it satisfies the following properties: Let M ′ ⊂
M ′′ ⊂ M. We have
′ ′′
1. gk (.) is nondecreasing function, that is gk (M ) ≤ gk (M ).
2. gk (.) is submodular, ie, for each j ∈ M,
gk (M ′′ ∪ 𝑗) − gk (M ′′ ) ≤ gk (M ′ ∪ 𝑗) − gk (M ′ ).
The first property implies that hitting probability is nondecreasing with the addition of caches into the system. The
′
second property implies that the marginal gain from adding a cache to an existing set of caches M is not less than the
′′ ′ ′′
gain of adding to a set M , where M ⊆ M .
In this language, gk ({X}i ) is simply the average probability (averaged over all possible values of search intervals) that a
user in sector k successfully downloads file i given an allocation X. In Section 4, we discuss simple, practical approaches
for computing the hitting probability functions from the mobility pattern of vehicles and the relative locations of RSUs
with respect to each sector.
Now, we are ready to provide the main objective function for content placement, ie, the hit ratio for a given allocation
X. We define the hit ratio of the allocation X to be
6 of 22 AKHAVAN BITAGHSIR AND KHONSARI
1 ∑∑ i
n s
Q(X) = d gk ({X}i ), (1)
d i=1 k=1 k
∑n
where d = i=1 di . The hit ratio is simply the average probability that the users can download their desired files across all
the sectors.
Given this, the main goal of the content placement is to find an allocation that maximizes the hit ratio. Formally, we
seek to find
X ∗ ∈ argmaxX Q(X). (2)
We refer to the above optimization problem as the CCP. Next, we discuss the computational complexity of solving the
(centralized version of) CCP problem (2).
Proof. Consider an instance of n-DSC(). We reduce this instance to a CCP decision problem where the total demand
in all the sectors is unity and the demand for each file is equal to 1∕n (recall that n is the number of files in the
library) across all the sectors. Hence, total demand d is equal to the number of sectors. Further, in the CCP problem,
we assume that each cache can store no more than 1 file.
Let the set of caches M be equal to Vu and the set of sectors S be equal to Vl . Hence, each sector k ∈ S uniquely
represents a vertex vk ∈ Vl . The hitting probability of sector k ∈ S is defined as follows: For each A ⊆ 2M ,
Caches C1 C2 C3 C4 C5
Sectors S1 S2 S3 S4 S5 S6
FIGURE 1 The n-disjoint set cover problem
AKHAVAN BITAGHSIR AND KHONSARI 7 of 22
where 1B = 1 when B is a non-empty set and 1B = 0, otherwise. Next, we show that the above function is nonde-
′
creasing and submodular, and hence, it is a valid hitting probability function. Consider any sets A, A ⊆ 2M such that
′
A ⊆ A . Then, from the following observation,
where the above inequality follows from the nondecreasing property of the function gk (·). Hence, the above function
is submodular as well.
For a given allocation X, let the set of caches storing file i ∈ N = {1, … , n} be represented by {X}i . Also, note that
since each cache can store only 1 file, {X}i ∩ {X}𝑗 = ∅ for any 1 ≤ i ≠ j ≤ n. Then, from (1)
1 ∑∑ 1
Q(X) = gk ({X}i ), (4)
|S| i∈N k∈S n
1 ∑∑
= 1{X}i ∩v () . (5)
n|Vl | i∈N v ∈V k
k l
Now, we ask: Does there exist an allocation X such that Q(X) ≥ 1? Note that such an allocation exists if and only if
each member of the collection of the mutually disjoint sets {{X}i }ni=1 covers the lower vertex set Vl . In other words, if
we can solve this CCP decision problem in polynomial time, so can be done with n-DSC() decision problem, which
proves the lemma.
2.2 An example
Our goal is to derive a distributed mechanism that enables each cache to decide its contents such that the global objective
in (1) is maximized. In the following illustrative example, we discuss the performance loss associated with a naive strategy
of storing the most popular files.
Example 1. Consider a scenario with 3 RSUs, M = {M1 , M2 , M3 } as shown in Figure 2. The file library has 3 files,
N = {f1 , f2 , f3 }. Each RSU can store at most 1 file in its cache. For simplicity, we assume that packet losses over the
wireless channel between an RSU and a vehicle within its communication range is the same for all RSUs. We partition
the region into 2 sectors, S = {S1 , S2 }, where sector S1 is the 2-way lane passing in front of a mall and sector S2 is
the 2-way lane passing in front of a theater. We assume that 2 units of traffic (average estimate) is approaching the
junction per unit time along each of the 4 lanes and the vehicles reaching the junction may turn into 1 of the 4 lanes
𝑓 𝑓
uniformly. The demand per unit time from sector k, where k ∈ {S1 , S2 } is given by dk 1 = 13 + 2𝜀, dk 2 = 13 − 𝜀, and
𝑓 1
dk 3 = 3
− 𝜀 for some 0 < 𝜀 < 13 . Finally, we choose the hitting probability function for sector S1 as follows: Let A ⊂ M.
Then, gS1 (A) = 1 when A ∩ {M1 , M2 } ≠ ∅ and gS1 ({M3 }) = 14 . Similarly, the hitting probability function of sector S2 is
given by gS2 (A) = 1 when A ∩ {M1 , M3 } ≠ ∅ and gS2 ({M2 }) = 14 , otherwise (here, gk (∅) = 0 for k = S1 , S2 ).
Consider the case where each cache stores the most popular file, which is file 1 in this example. Then, the resulting
allocation is X = ({f1 }, {f1 }, {f1 }). Note that {X}𝑓1 = {1, 2, 3} and {X}𝑓2 = ∅, {X}𝑓3 = ∅. Then, from (1), the hit ratio
is given by, Q(X) = 13 + 2𝜀. However, an optimal allocation is the one where cache 1 stores file f1 , cache 2 stores
file f2 , and cache 3 stores file f3 . Then, the resulting allocation is X∗ = ({f1 }, {f2 }, {f3 }), which results in {X ∗ }𝑓1 = {1},
{X ∗ }𝑓2 = {2}, and {X ∗ }𝑓3 = {3}. This optimal allocation results in the optimal hit ratio Q(X) = 34 (1 − 𝜀). Note that
efficiency of this approach falls below 50% as 𝜀 approaches to 0. We can extend this example in a logical manner to
show that worst-case efficiency of this scheme can be arbitrarily small.
In this paper, we propose a distributed caching scheme which ensures at least 50% efficiency guarantee with respect
to the optimal independent of the problem parameters (and despite of the computational hard nature of the problem).
8 of 22 AKHAVAN BITAGHSIR AND KHONSARI
RSU 3
1
dk = 1/3 + 2
2
Sector 2
dk = 1/3 -
Theatre 3
dk = 1/3 -
RSU 1
Sector 1
RSU 2
Shopping Mall
FIGURE 2 A schematic view of a scenario illustrating how cooperative caching can improve the efficiency of content dissemination in
vehicular networks. RSU, roadside unit
1 ∑∑ i
n s
̃
Q(X) = d gk ({XCk }i ), (6)
d i=1 k=1 k
where XCk is the file allocation of cluster k and gk ({XCk }i ) is the average probability that a user in sector k successfully
̃
downloads file i by only considering the file allocation of cluster k. Note that Q(X) is an approximation of the actual hit
ratio Q(X) given by (1) since the hitting function in Q(X) is computed by considering the file allocation of all the RSUs
̃
but the hitting function in Q(X) is computed by only considering the allocation of files in the RSUs of 1 sector. Note also
that the approximation error decreases as clusters get larger; however, associated communication overhead increases. In
fact, clustering act as a mechanism to trade-off communication overhead against approximation error. In other words,
AKHAVAN BITAGHSIR AND KHONSARI 9 of 22
since we have mobile vehicles and we consider having delay tolerance applications, if we decrease the size of clusters,
a vehicle can move from one cluster to another cluster and make similar file request to both clusters, which results the
approximation error to increase. Conversely, if we increase the size of clusters, the approximation error will decrease and
the information exchange overhead within a cluster will increase. We comprehensively analyze this trade-off in Section
̃
4. Finally, It is obvious to note that Q(X) ≤ Q(X). The cooperative CCP problem is defined as
̃
arg max Q(X). (7)
X
We next show that the above problem is an instance of a general resource allocation problem.
Cooperative CCP as a resource allocation problem: The distributed resource allocation problem underlying the cooper-
ative CCP has the following components:
• a set of resources R
• a set of agents M
• for each agent j ∈ M, a local resource set Rj ⊆ R
• for each r ∈ R, a resource welfare function qr ∶ 2M → R
• a set of admissible allocations X
• a global welfare function Q ̃ ∶X→R
qr (M ′ ) = dik gk (M ′ ∩ Ck ). (8)
Suppose file i is present in all caches belonging to the set M ′ ⊂ M. Then, the above function computes the total number
′
of hits on file i achieved by all caches in M together.
Allocation: An admissible allocation X = (X1 , · · · , Xm ) assigns the set of resources Xj × Zj to the agent j for each j ∈ M.
Global welfare function: This function measures the quality of an allocation. In this problem, this function is the
approximated hit ratio given by (6). For any r = (i, Ck ), let
{X}r = {𝑗 ∶ i ∈ X𝑗 , ∀𝑗 ∈ Ck } (9)
define the set of caches in cluster k having file i in the allocation X. Then, system welfare function can be expressed as
∑
̃
Q(X) = qr ({X}r ). (10)
r∈R
The goal here is to find an allocation X that maximizes the global welfare function. Note that the global welfare function,
̃
Q(X)
′ ′′
in (10) is nondecreasing and submodular. That means, for any M ⊆ M ⊆ M, Q(X ̃ M ′ ) ≤ Q(X
̃ M ′′ ) and for any j ∈ M
Q(X ̃ M ′′ ) ≤ Q(X
̃ M ′′ ∪𝑗 ) − Q(X ̃ M ′ ∪𝑗 ) − Q(X
̃ M ′ ).
These properties follows directly from the nondecreasing and submodular properties of hitting probability function.
Hence, cooperative CCP belongs to the class of submodular maximization problems.26 In what follows, we model the
above resource allocation problem as distributed welfare game17 and derive efficient distributed content placement strate-
gies, which are guaranteed to produce allocations with 50% with respect to the optimal. In the next section, we will
present our game theory model for the CCP problem. A brief overview on relevant concepts in game theory is available
in Appendix A.
10 of 22 AKHAVAN BITAGHSIR AND KHONSARI
To solve the CCP, in this section, we first model the resource allocation problem defined in Section 2.3 as a distributed
welfare game. This game has the following components:
• a set of players M
• a set of resources R
• for each player j ∈ M, an action set Xj
• for each player j ∈ M, a utility function U𝑗 ∶ X → R+ , where X = 𝛱j Xj
• the global welfare function Q ̃ ∶ X → R+
where Xj × Zj is defined as the Cartesian product of the sets Xj and Zj and 𝑓r ∶ 2M × M → R+ is called utility sharing
function of resource r. The utility sharing function of a resource characterizes how the welfare of a resource is distributed
′
among the players sharing that resource. For example, fr (M , j) defines the utility received by player j when the set of
′
players M ⊆ M is sharing the resource r.
Now, the goal here is to choose utility sharing functions such that
1. the underlying game has at least one Nash equilibrium,
2. simple learning dynamics like best/better reply dynamics converge to a Nash equilibrium of the game, and
3. the efficiency of all Nash equilibrium is no less than one-half.
To that end, we discuss 2 popular choices for utility sharing function, namely, marginal contribution utility (MCU) (also
called wonderful life utility27 ) and Shapley value utility (SVU).28
Note that to compute (12) for any resource r = (i, Ck ), a player needs to know the demand of sector k and the actions
of the players in the cluster Ck . By assumption, agent j knows both of these factors when r ∈ Xj × Zj . Hence, (13) is
locally computable. Under this utility function, an action profile that maximizes the global welfare function is always
an equilibrium. However, other equilibria may also exist. Now, we have the following lemma that shows that the above
utility function satisfies the design goals.
Lemma 2. The game Gmc = (P, R, {Xi }, {U𝑗mc }, Q) ̃ is a potential game with potential function Q. ̃ Also, Gmc is a valid
utility game, and hence, the efficiency of every Nash equilibria, as defined by (A2), is guaranteed to be at least one-half.
it is shown that the agents can reach to the Shapley value through noncooperative behavior. In other words, we can find
noncooperative frameworks that gives rise to the Shapley value as a result of equilibrium behavior. Also, it is part of
Nash program,33 which tries to provide a noncooperative foundation for cooperative solution concepts. Formally, the SVU
sharing function28 of player j at resource r for action profile X is given by
∑ |M ′ |! (|{X}r | − |M ′ | − 1)!
𝑓rsv ({X}r , 𝑗) =
M ′ ∈{X}r ∖𝑗
|{X}r |! (14)
× (qr (M ′ ∪ 𝑗) − qr (M ′ )).
Let U𝑗sv (X) denote the utility of agent j in allocation X. It is defined in terms of the above function and (11).
̃ is a potential game with the potential function
Lemma 3. The game Gsv = (M, R, {Xi }, {U𝑗sv }, Q)
(
∑ ∑ 1 ∑
(−1)|M |−|T| qr (T) .
′
𝜙 (X) =
sv
(15)
r∈R M ′ ⊂{X }
|M | T⊂M ′
′
r
Also, Gsv is a valid utility game, and hence, the efficiency of every Nash equilibria, as defined by (A2), is guaranteed to be
at least one-half.
Proof. Proposition 2 in Marden and Wierman17 establishes the result on potential function. The efficiency result is
presented in corollary 16.1 in Aumann and Hart.29
The SVU also guarantees the existence of a pure Nash equilibrium; however, the optimal allocation is not guaranteed to
be a pure Nash equilibrium as was the case with the MCU. The computational complexity associated with SVU makes it
less applicable in many practical situations. However, the form in (14) reduces considerably for the following special case.
A special case: Consider the case when the hitting probability function gk (·) for each k ∈ S is approximated as
{
′ 1 when M ′ ∩ Ck ≠ 𝜙,
gk (M ) = 0 otherwise.
This approximation means that a request from sector k is met with success probability of 1 when the file is present in any
one of the caches within the associated cluster. In this special case, for each r = (i, Ck ), the resource welfare function (8)
′
reduces to the following form: For any M ⊆ Ck ,
{ i
′ dk when |M ′ | ≥ 1,
qr (M ) =
0 otherwise.
For any allocation X ∈ X, the Shapley utility sharing function for resource r ∈ R given by (14) reduces to
qr ({X}r )
𝑓r ({X}r , i) = ,
|{X}r |
where |A| is the cardinality of the set A. The above rule equally divides resource welfare with all the players sharing that
resource. Then, from (11), the SVU function of each agent j for an allocation X is given by
∑ qr ({X}r ) ∑ ∑ dik
U𝑗sv (X𝑗 , X−𝑗 ) = = . (16)
r∈X ×Z
{X}r i∶i∈X k∶Ck ∈Z𝑗
{XCk }i
𝑗 𝑗 𝑗
Corollary 4. A CCP resource allocation game with agent utilities in (16) is a potential game with potential function,
{X }
∑ ∑∑
n s Ck 𝑗
Since the resulting game is guaranteed to be a potential game under the utility functions discussed in this section, the
above algorithm is guaranteed to converge to a Nash equilibrium, which is at least 50% efficient with respect to the optimal
allocation.
We evaluate the performance of the CCP approaches by simulating a discrete-event urban environment using simulation
of urban mobility simulator.34 As you can see in Figure 3, we simulate a 3×3 km map of the University of Colorado
Boulder, Main Campus. We randomly place RSUs along the streets and let 100 vehicles to explore the map with randomly
selected source and destinations. The average velocity of each vehicle is considered to be 60 km/h. Each vehicle may visit
multiple RSUs along its path. Because of the existence of the obstacles in the environment, such as building blocks or
towers, we set the communication range of the RSUs uniformly within the range of 200 to 500 m. We assume to have 100
files in the library, each of which has 50-MB size (see footnote in Section 2), and the capacity of RSUs is set to be 500 MB.
The tolerable delay for the requests is set to be in range of 5 to 20 seconds. Finally, we use the 802.11p standard35 for
communication parameters. Next, we discuss about several approximation methods to compute the hitting probability
function. Moreover, we talk about geographical clustering, clustering based on the streets topology, and spatial clustering as
3 methods to cluster the RSUs in the area of interest.
Psucc (M ′ ) = 1 − P̄ succ (M ′ )
∏
=1− P̄ succ (m) ∶ ∀m ∈ M ′
[ ( )] (20)
∏ tcontact (m)
=1− 1− × PB (m),
t𝑓
where tf is the required time for downloading file f and tcontact (m) is the function, which approximates the time a vehicle is
connected to RSU m along its path. tcontact (m) is for considering the limited V2R communication time and can be simply
2×Comm_Range(m)
approximated by tcontact (m) = V(m)
where, Comm_Range(m) is the communication range of m and V(m) is the
average velocity of the vehicles in the nearby streets of m. Also, PB (m) is the blocking probability, ie, the probability that
an RSU cannot serve a vehicle because of limited server usage. PB (m) can be obtained from Erlang B formula.36 We have
s
amm ∕sm !
PB (m) = P(N(m) = sm ) = , (21)
∑
k=sm
akm ∕k!
k=0
where N(m) is the number of vehicles in the communication range of RSU m, am is the offered load,36 and sm is the RSU's
capacity, that is, the maximum number of vehicles RSU m can handle simultaneously. Finally,
{
0 x < 0,
(x) = x 0 ≤ x ≤ 1,
1 x>1
is the normalization function. Function g in this approximation is also submodular. It is because the areas covered by the
RSUs in a sector may have some overlaps and by increasing the number of RSUs having file f in sector k, the ratio of the
′)
coverage area, that is A(M
′ ′
A(k)
, would concavely increase. For the second part of gk (M ), that is, Psucc (M ), by adding a new
14 of 22 AKHAVAN BITAGHSIR AND KHONSARI
′′
RSU M having file f in sector k, we have
[ ( )]
∏ tcontact (m)
Psucc (M ) = 1 − ′
1− × PB (m)
t𝑓 (22)
∀m ∈ M ′ ∩ M ′′ .
[ ( )]
tcontact (m)
1− t𝑓
and PB (m) are both real numbers in range [0,1] and by increasing the number of RSUs having file f in
′
sector k, the multiplication of them will exponentially decreases that yields Psucc (M ) to concavely increase. Therefore, the
′
second part of function gk (M ) is also submodular. Finally, since submodularity is closed under multiplication of positive
′
and nondecreasing functions,37 then gk (M ) is submodular. The hit ratio of the RSUs considering this approximation is
shown in Figure 9.
4.2 Clustering
As we mentioned in the Section 2.3, for making a cooperation between the RSUs to store the best set of files in their caches
to maximize the local hit ratio, we introduce clustering. As a result, the RSUs in the same cluster try to avoid redundancy
and store the files based on the utility functions proposed in Section 3. We propose 3 methods to cluster the RSUs.
Spatial Clustering: The first way is to cluster the RSUs based on their geographical positions in the map. That means,
the RSUs, which are close to each other in an area are considered to be in the same cluster. As you can see in Figure 5,
by increasing the sector size in each cluster, the information exchange overhead increases. It is worth mentioning that
since the RSUs only exchange information about the table of contents and the information about the vehicles requests
(see Section 2), the information exchange overhead is not very high compared with the total amount of content files. Also,
because the RSUs in the same cluster are very close to each other geographically, the information exchange overhead is
less than the other 2 clustering methods, which we explain in the following. As you can see in Figure 4, increasing the
sector size leads to decreasing the approximation error of computing the Q(X)̃ function in (6). It is due to the fact that by
increasing the cluster size, the system becomes more and more similar to the state where we have no clusters at all, that
is, Q(X).
Clustering based on the streets topology: Another way of clustering is to let the RSUs along each street to form a cluster
together. In this approach, the RSUs near the junctions will be considered to be the member of multiple clusters. This
method is considerable since the vehicles traveling along a specific street may request the same specific files from several
RSUs in that path with high probability. As it is shown in Figure 5, by increasing the sector size, the information exchange
overhead increases. Also, this clustering method has the highest approximation error, since the RSUs in the same sector
can be far away from each other.
Hotspot Clustering: The last but not the least method is to cluster the RSUs based on the location of special places such
as shopping malls or theaters. In this case, a reasonable way to cluster the RSUs is to group up the RSUs around these
20
Street Topology Clustering
Spatial Clustering
18 Hotspot Clustering
16
Approximation error (%)
14
12
10
2
500 1000 1500 2000 2500 3000
Sector size (m2)
̃
FIGURE 4 Approximation error of (Q(X)) for different sector sizes
AKHAVAN BITAGHSIR AND KHONSARI 15 of 22
90
Hotspot Clustering
Street Topology Clustering
80 Spatial Clustering
60
50
40
30
20
10
0
500 1000 1500 2000 2500 3000
Sector size (m2)
100
90
80
70
Cache Hit Ratio %
60
50
40
30
20
FIGURE 6 Approximation of the objective function of cache content placement problem (Q(X)), using spatial clustering
stations since again, we have lots of similar file requests receiving by these RSUs. This similarity of requests causes this
method to have the lowest approximation error compared with the other 2 clustering approaches mentioned above. But
since the RSUs in 1 cluster may be far away from each other in different directions and some information may need to
travel more than 1 hop (RSU) to reach another RSU, the information exchange overhead is higher that other clustering
approaches.
In Figure 6, we present the approximation error of the spatial clustering method and in Figure 7, we present the approx-
imation error of the clustering based on the streets topology method for similar sector size but for different simulation
scenarios. Figure 6 shows how close the approximation of the objective function Q ̃ is to the actual objective function Q
using the spatial position of the RSUs as the clustering method. To this end, we simulate the mentioned environment
with random content placement X for the caches and then compare the hit ratio of the Q and Q. ̃ Simulation results show
the approximation error of less than 10% for all the simulated scenarios. In Figure 7, we simulate the environment based
on the second clustering method mentioned above. In this case, simulation results show the approximation error of less
than 8% for all the simulated scenarios. This results confirms that the probability of requesting a same file by a vehicle
from 2 faraway caches is low, and we can perform the CCP by only considering the caches in the same cluster. Finally in
Figure 8, we report the approximation error of the hotspot clustering approach. In this case, the simulation results show
the approximation error of less that 5%, which is compatible with the discussion of the previous paragraph.
16 of 22 AKHAVAN BITAGHSIR AND KHONSARI
90
80
70
60
40
30
20
FIGURE 7 Approximation of the objective function of cache content placement problem (Q(X)), using clustering based on streets topology
80
70
60
Cache Hit Ratio %
50
40
30
20
Objective Function (Q)
Estimated Objective Function (Q~)
10
0 1 2 3 4 5 6 7 8 9 10
Random Content Placement (X)
FIGURE 8 Approximation of the objective function of cache content placement problem (Q(X)), using hotspot clustering
In Figure 9, we compare the hit ratio of different CCP approaches with the utility functions mentioned in Section 3.
We consider different scenarios with different number of caches in the environment. In selfish approach, RSUs store
the files only based on distribution of the request demands coming to them. In this approach, there is no cooperation
between RSUs for storing the files in their repository. In the greedy approach, we first consider having only 1 cache and
we store the most popular files in that cache and we do not change its content in the following steps. In the next step, we
add another cache and based on the content of the first cache, we store the files in the second cache to maximize the hit
ratio. We add all the k caches one by one to the environment and at step i, we only change the content of the ith cache.
The Shapley value approach and marginal contribution approach are introduced in Sections 3.2 and 3.1, respectively, and
the simplified utility approach is what we discussed in Algorithm 1. Considering that, for every number of caches in the
environment, we simulate the network several times and we report the result with error bars. As you can see, by increasing
the number of caches in the environment at each step, the improvement of cache hit becomes less and less. In other
words, the marginal increase in the hit ratio decreases with the number of caches. Having this concave behavior of the
approaches confirms the submodularity of the objective function in Section 2.3. Also, since greedy approach guarantees
the worst case efficiency to be at least one-half and other approaches showed better hit ratio than greedy approach, this
figure confirms our claim.
Figure 10 plots the hit ratio of 4 different well-known CCP approaches against the average capacity of the caches in the
RSUs. PopularityCacher only considers the popularity of files in the sectors that is, dik . This approach does not consider
the geographical distribution of the RSUs and the mobility of the vehicles. Since RSUs store the most popular files in
AKHAVAN BITAGHSIR AND KHONSARI 17 of 22
100
90
80
70
50
40
30
20 Shapley Value
Simplified Utility
Greedy Approach
10 Marginal Contribution
Selfish Approach
0
10 20 30 40 50 60 70 80 90 100 110
Number of Caches
FIGURE 9 Local hit ratio experienced by the vehicles for different content placement approaches and for various number of caches in the
environment
100
90
80
70
Cache Hit Ratio %
60
50
40
30
20
Proposed Approach
MobiCacher
10 FemtoCacher
PopularityCacher
0
20 30 40 50 60 70 80 90 100
Average cache capacity per sector
FIGURE 10 Comparing the cache hit ratio of 4 cache content placement approaches for different cache capacity at each sector
their caches, the diversity of files in each sector is low. As a result, vehicles visiting multiple RSUs in a sector cannot take
advantage of the RSUs storing the same set of files. Therefore, PopularityCacher produces the least hit ratio compared
with other approaches. FemtoCacher12 considers the popularity of files and the geographical distribution of the RSUs and
vehicles but not the mobility of vehicles. Therefore, by changing the geographical distribution of vehicles in the map, this
approach fails to adapt to the new situation. MobiCacher16 considers all the 3 mentioned parameters, that is, popularity
of files in the sectors, geographical distribution of the RSUs in the map, and the mobility of the vehicles. This is why this
approach shows higher hit ratio compared with PopularityCacher and FemtoCacher. As we already discussed in Section
3, deciding whether a content should be stored at each RSU or not is affected by what contents are stored in nearby
RSUs. In MobiCacher, to simplify the proposed heuristic solution, the authors decompose the CCP problem into multiple
subproblems, one for each sector, and solve each subproblem independently. In contrast, in the proposed approach in
our paper, we consider this dependency among RSUs. We design the utility function for each RSU in a way that if RSUs,
which are in the same sector(geographically close to each other), store similar files, their utility decreases. In other words,
RSUs in the same sector share the gain of storing similar files. This deduction of the utility function causes the contents
of the RSUs in the same sector to diversify. As a result, the cache hit ratio experienced by the vehicles increases. It is
worth mentioning that if the capacity of caches be large enough, we can store all the files in every RSU of each sector, and
therefore, all the file requests can be served locally (see Figure 10).
18 of 22 AKHAVAN BITAGHSIR AND KHONSARI
20
Scenario 1
18 Scenario 2
Scenario 3
16
14
(Q~(Xne) − Q~(Xt))
12
10
0
0 10 20 30 40 50
Time(Cycle)
̃
FIGURE 11 Convergence of the approximated objective function (Q(X)) to the Nash equilibrium for different simulation scenarios
100
90
80
70
Delivery Ratio %
60
50
40
30
PTSM Mobility Model
20 SSM Mobility Model
RUM Mobility Model
TLM Mobility Model
10
20 30 40 50 60 70 80 90 100
Number of RSUs
In Figure 11, we show the convergence of the better response dynamics to the Nash equilibria discussed in Section 3.
We calculate the distance of current objective function value from the value of the objective function in Nash equilibria
̃ ne ) − Q(X
state Q(X ̃ t ). We report this parameter for different time steps of simulation and for several random scenarios.
These scenarios are different from each other regarding the number of vehicles, path of the vehicles, and size of the caches
in RSUs. As you can see, the average distance converges to 0 using the better response dynamics algorithm proposed in
Section 3.
In Figure 12, we evaluate the proposed CCP method for different vehicles' mobility model discussed in Section 2. In
this figure, the delivery ratio of RUM, SSM, PTSM, and TLM mobility models are shown for different number of RSUs in
the environment. In all the models, by increasing the number of RSUs, the delivery ratio increases as well. This is due
to the fact that by increasing the number of RSUs, more contents will be available for the vehicles to download locally.
Also, TLM and PTSM show higher delivery ratio compared with RUM and SSM. This is because TLM and PTSM models
avoid excessive stoppings and vehicles have more mobility in the environment. This will help the vehicles to have access
to more RSUs in a constant time that results having higher delivery ratio. Note that, these results are compatible with
those reported in Mahajan et al.24
Finally in Figure 13, we compare the proportional load of the requests on the base station. That is, the number of
requests handled by the base station over the total number of requests. We report this parameter for different content
placement approaches and for 5 different simulation scenarios. These scenarios are different from each other regarding
the number of RSUs in the environment, average number of requests per simulation cycle, and also different urban maps.
AKHAVAN BITAGHSIR AND KHONSARI 19 of 22
Shapley
Simplified
Proportional Load on BS
Selfish
80
Marginal
Greedy
60
40
1 2 3 4 5
Scenarios
FIGURE 13 Comparison of the requests load balance over the base station for different content placement approaches
As you can see, the proposed approach achieves better load balance over the base station, which is compatible with the
cache hit ratio parameter of similar approaches reported in Figure 9.
5 CO N C LUSION AN D FU T U R E WORKS
Recent developments in communication lead to the emergence of many new applications in vehicular networks. As it
is stated, these applications may need to transfer big amount of data in a very short time that requires improving the
throughput of vehicular networks. In this paper, we proposed a solution for the CCP problem using game theory that
distributively suggests which file should be stored in each RSU to achieve a provable performance guarantee (in terms
of hit ratio). The important feature of the proposed schemes is that they all rely on local information of each RSU that
is highly desirable in the practical settings. The presented simulation results showed that this approach improves the
performance metrics compared with other content placement approaches.
Several directions are left to be explored in future. One direction is to take the capacity of each cache into account. That
is, what happens if each cache can only serve a certain number of requests at a given time instant? Also, the identification
and approximation of the hit functions gk (·) is a very interesting practical problem that can be very well subject of many
future studies on this domain. The last but not the least, the situation, where RSUs are not fully cooperative and they
compete with each other should take into consideration and see what will happen to the proposed content placement
approaches in these type of noncooperative environments.
ACKNOWLEDGEMENTS
We want to thank the researchers of Game Theory Lab at University of Colorado Boulder and researchers of NETLAB at
University of Tehran.
ORCID
REFERENCES
1. Cisco visual networking index. http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/
white_paper_c11-520862.html. Accessed December 26, 2015; 2015.
2. Ma X, Chen X, Refai HH. Performance and reliability of DSRC vehicular safety communication: a formal analysis. EURASIP J Wireless
Commun Networking. 2009;2009:3.
3. Luan TH, Cai LX, Chen J, Shen X, Bai F. Engineering a distributed infrastructure for large-scale cost-effective content dissemination over
urban vehicular networks. IEEE Trans Veh Technol. 2014;63(3):1419-1435.
20 of 22 AKHAVAN BITAGHSIR AND KHONSARI
4. Siris VA, Vasilakos X, Polyzos GC. A selective neighbor caching approach for supporting mobility in publish/subscribe networks?. In: Fifth
ERCIM Workshop on Emobility Citeseer; 2011; Technical University of Catalonia, Barcelona, Spain. 63.
5. Sourlas V, Paschos GS, Flegkas P, Tassiulas L. Mobility support through caching in content-based publish/subscribe networks. In: 10th
IEEE/ACM International Conference on Cluster, Cloud and Grid Computing (CCGRID), 2010 IEEE; 2010; Melbourne, Australia. 715-720.
6. Gaddah A, Kunz T. Extending mobility to publish/subscribe systems using a pro-active caching approach. Mobile Inf Syst.
2010;6(4):293-324.
7. Vasilakos X, Siris VA, Polyzos GC, Pomonis M. Proactive selective neighbor caching for enhancing mobility support in information-centric
networks. In: Proceedings of the Second Edition of the ICN Workshop on Information-Centric Networking ACM; 2012; Helsinki, Finland
61-66.
8. Lee U, Park J-S, Yeh J, Pau G, Gerla M. Code torrent: content distribution using network coding in VANET. In: Proceedings of the 1st
International Workshop on Decentralized Resource Sharing in Mobile Computing and Networking ACM; 2006; Los Angeles, CA, USA.
1-5.
9. Ahmed S, Kanhere SS. Vanetcode: network coding to enhance cooperative downloading in vehicular ad-hoc networks. In: Proceed-
ings of the 2006 International Conference on Wireless Communications and Mobile Computing ACM; 2006; Vancouver, Canada.
527-532.
10. Li M, Yang Z, Lou W. Codeon: cooperative popular content distribution for vehicular networks using symbol level network coding. IEEE
J Sel Areas Commun. 2011;29(1):223-235.
11. Shevade U, Chen Y-C, Qiu L, Zhang Y, Chandar V, Han MK, Song HH, Seung Y. Enabling high-bandwidth vehicular content distribution.
In: Proceedings of the 6th International Conference ACM; 2010; Montreal, QC, Canada. 23.
12. Golrezaei N, Shanmugam K, Dimakis AG, Molisch AF, Caire G. Femtocaching: wireless video content delivery through distributed caching
helpers. In: Proceedings IEEE INFOCOM, 2012 IEEE; 2012; Orlando, FL, USA. 1107-1115.
13. Acer UG, Giaccone P, Hay D, Neglia G, Tarapiah S. Timely data delivery in a realistic bus network. IEEE Trans Veh Technol.
2012;61(3):1251-1265.
14. Hadaller D, Keshav S, Brecht T, Agarwal S. Vehicular opportunistic communication under the microscope. In: Proceedings of the 5th
International Conference on Mobile Systems, Applications and Services ACM; 2007; Puerto Rico, USA. 206-219.
15. Yu B, Bai F. ETP: encounter transfer protocol for opportunistic vehicle communicationIEEE; 2011:2201-2209.
16. Guan Y, Xiao Y, Feng H, Shen C-C, Cimini LJ. Mobicacher: mobility-aware content caching in small-cell networks. In: IEEE Global
Communications Conference (GLOBECOM), 2014 IEEE; 2014; Austin, Tx, USA. 4537-4542.
17. Marden JR, Wierman A. Distributed welfare games. Oper Res. 2013;61(1):155-168.
18. Marden JR, Roughgarden T. Generalized efficiency bounds in distributed resource allocation. In: 49th IEEE Conference on Decision and
Control (CDC), 2010 IEEE; 2010; Atlanta, GA, USA. 2233-2238.
19. Marden JR, Touri B, Gopalakrishnan R, O'Brien JP. Impact of information in a simple multiagent collaborative task. In: 2015 54th IEEE
Conference on Decision and Control (CDC); 2015; Osaka, Japan. 4543-4548.
20. Yu R, Qin S, Bennis M, Chen X, Feng G, Han Z, Xue G. Enhancing software-defined ran with collaborative caching and scalable video
coding. 2016.
21. Saha AK, Johnson DB. Modeling mobility for vehicular ad-hoc networks. In: Proceedings of the 1st ACM International Workshop on
Vehicular Ad Hoc Networks ACM; 2004; Philadelphia, PA, USA. 91-92.
22. Kurhade VW, Deshmukh A, Dorle S. Comparative analysis of mobility models using routing protocol for vehicular ad-hoc network (vanet);
2017.
23. Cloudin S, Kumar PM. Challenges on mobility models suitable to Vanet. J Software. 2017;12(2):91-101.
24. Mahajan A, Potnis N, Gopalan K, Wang A. Urban mobility models for vanets. In: 2nd IEEE International Workshop on Next Generation
Wireless Networks, Vol. 33; 2006; Bangalore, India, 33-41.
25. Levin A. Approximating the unweighted k-set cover problem: greedy meets local search. Approximation and Online Algorithms: Springer;
2007; Eilat, Israel. 290-301.
26. Nemhauser GL, Wolsey LA. Best algorithms for approximating the maximum of a submodular set function. Math Oper Res.
1978;3(3):177-188.
27. Wolpert DH. Overview of collective intelligence; 2002.
28. Shapley LS. Stochastic games. PNAS. 1953;39(10):1095.
29. Aumann RJ, Hart S. Handbook of Game Theory with Economic Applications, Vol. 2. North Holland: Elsevier; 1992.
30. Shapley LS. A value for n-person games. The Shapley Value. Cambridge, England: Cambridge University Press; 1988:31-40.
31. Pérez-Castrillo D, Wettstein D. Bidding for the surplus: a non-cooperative approach to the Shapley value. J Econ Theory.
2001;100(2):274-294.
32. Albizuri M, Echarri J, Zarzuelo J. A non-cooperative mechanism for the Shapley value of airport problems. Ann Oper Res. 2015;235(1):1-11.
33. Serrano R. Fifty years of the Nash program, 1953-2003; 2004.
34. Behrisch M, Bieker L, Erdmann J, Krajzewicz D. Sumo–simulation of urban mobility. In: The third International Conference on Advances
in System Simulation (SIMUL 2011); 2011; Berlin, Germany. 54-60.
35. Jiang D, Delgrossi L. Ieee 802.11 p: towards an international standard for wireless access in vehicular environments. In: VTC Spring 2008.
IEEE Vehicular Technology Conference, 2008 IEEE; 2008; Singapore. 2036-2040.
36. Rappaport TS et al.. Wireless Communications: Principles and Practice, Vol. 2. New Jersey: Prentice hall, PTR; 1996.
AKHAVAN BITAGHSIR AND KHONSARI 21 of 22
37. Boyd S, Vandenberghe L. Convex Optimization. Cambridge, England: Cambridge university press; 2004.
38. Myerson RB. Game theory: analysis of conflict. Harvard University. 1991.
39. Monderer D, Shapley LS. Potential games. Games Econ Behav. 1996;14(1):124-143.
40. Voorneveld M, Borm P, Van Megen F, Tijs S, Facchini G. Congestion games and potentials reconsidered. Int Game Theory Rev.
1999;1(03n04):283-299.
41. Fudenberg D, Tirole J. Game Theory, 1991, Vol. 393. Massachusetts: Cambridge; 1991.
42. Dindoš M, Mezzetti C. Better-reply dynamics and global convergence to Nash equilibrium in aggregative games. Games Econ Behav.
2006;54(2):261-292.
43. Mirrokni VS, Vetta A. Convergence issues in competitive games. Approximation, Randomization, and Combinatorial Optimization.
Algorithms and Techniques. Cambridge, MA, USA: Springer; 2004:183-194.
How to cite this article: Akhavan Bitaghsir S, Khonsari A. Cooperative caching for content dissemination in
vehicular networks. Int J Commun Syst. 2018;e3534. https://doi.org/10.1002/dac.3534
Game theory is a mathematical framework for modeling strategic decision making of many players.38 A noncooperative
strategic game is specified by the following elements:
• a set of players P
• for each player p ∈ P, a set of possible actions Ap
• for each player p ∈ P, a utility function U𝑝 ∶ A → R, where A = 𝛱p∈P Ap
An action profile a is a tuple (a1 , … , a|P| ), where ap ∈ Ap for all p ∈ P. Let a−p represents the tuple containing actions
of every player other than player p at an action profile a ∈ A, ie, a = (ap , a−p ).
Nash equilibrium is a popular notion of equilibrium defined for noncooperative games. An allocation is called Nash
equilibrium allocation if no player has an incentive to unilaterally deviate from his current action. Mathematically, an
action profile a∗ ∈ A is said to be at Nash equilibrium if for all p ∈ P,
Potential game39 is a special class of games for which the incentive of all players to change their action can be expressed
using a single global function called potential function. A game G is an exact potential game40 if there exists a (potential)
function 𝜙 ∶ A → R such that for every player p ∈ P, for all a−p ∈ A− , and for all a𝑝 , a′𝑝 ∈ A𝑝 , the following holds true:
In this setting, if a player changes her action from ap to action a′𝑝 while the other players actions are remained fixed,
the change in the potential function equals the change in the usage of the player. If a game is a potential game, we can
use the potential function to analyze equilibrium properties of the game. Also, we can find the set of Nash equilibrium
by locating the local optima of the potential function.
Best response dynamics41 is defined as a sequence of action profiles where exactly 1 player, at each iteration, changes to
an action, which produces the most favorable outcome for that player, while keeping other player's actions fixed. Formally,
a sequence of action profiles a(1), a(2), · · · , a(t), a(t + 1), · · · is called a better reply sequence if for each t, there exists a
player pt such that a𝑝t (t) ≠ a𝑝t (t + 1), a𝑝t (t + 1) ∈ arg maxa𝑝 ∈A𝑝 U𝑝t (a𝑝 , a−𝑝 (t)), and a−𝑝t (t + 1) = a−𝑝t (t). Better response
dynamics is when the players move from their current actions to a better reply not necessarily the best reply.42
Distributed welfare games is a noncooperative game having a distributed resource allocation problem as the underlying
structure. This class of games has the following additional components:
• a set of resources, R
• a global welfare function, W ∶ A → R
22 of 22 AKHAVAN BITAGHSIR AND KHONSARI
The efficiency of a Nash equilibrium in such games are defined as the ratio of the global welfare function evaluated at
the Nash equilibrium and the maximum value of the global welfare function. Supposeane be a Nash equilibrium allocation
and ao𝑝t ∈ arg maxa∈A W(a). Then, efficiency 𝜂(ane ) is defined as
W(ane )
𝜂(ane ) = . (A2)
W(ao𝑝t )
Designing games with efficiency guarantees is of utmost interest. To that end,43 proposes a class of games known as
valid utility games. A valid utility game satisfies the following conditions for every a = (ap , a−p ) ∈ A:
1. W is a submodular set function
2. Up (ap , a−p ) ≥ W(a) − W(a−p )
∑
3. p Up (ap , a−p ) ≤ W(a)
The efficiency of every equilibrium of a valid utility game is guaranteed to be at least one-half.
Consider 2 action profiles, X = (Xj , X−j ) and X ′ = (X𝑗′ , X−𝑗 ). Note that these action profiles differ only in the action of
′ ′
player j for some j ∈ N. We claim that 𝜙(X) − 𝜙(X ) = Uj (X) − Uj (X ), where 𝜙(·) and Uj (·) are given by (17) and (16),
respectively.
It is obvious to see from the definition that,
{X } {X ′ }
) ∑ n s
∑∑ dk ∑ n s
∑∑
Ck i i Ck i i
( ′ dk
𝜙(X𝑗 , X−𝑗 ) − 𝜙 X𝑗 , X−𝑗 = −
i=1 k=1 𝓁=1
𝓁 i=1 k=1 𝓁=1
𝓁
{X ′ }
(B1)
{X }
∑
n
∑ ∑
Ck i i
dk ∑
n
∑ ∑
Ck i i
dk
= − ,
i=1 k∈Z𝑗 𝓁=1
𝓁 i=1 k∈Z𝑗 𝓁=1
𝓁
where the second result is due to the fact that the change in the action of player j affects only the terms associated with Zj .
Note that when i ∈ Xi ∩ Xi′ or i ∉ Xi ∪ Xi′ , then {XCk }i = {XC′ }i . On the other hand, if i ∈ Xi ∖Xi′ , then {XC′ }i = {XCk }i − 1
k k
and if i ∈ Xi′ ∖Xi , then {XC′ }i = {XCk }i + 1. From these facts, (B1) reduces to
k
( ′ ) ∑n
∑ dik ∑
n
∑ dik
𝜙(X𝑗 , X−𝑗 ) − 𝜙 X𝑗 , X−𝑗 = − .
i=1 k∈Z𝑗
{XCk }i i=1 k∈Z𝑗
{XC′ }i
k
′
It can be verified from (16) that the right-hand side of the above equation is in fact equal to Uj (X)−Uj (X ), which completes
the proof.