BRAINS: Joint BandwidthRelay Allocation in MultiHoming Cooperative D2D Networks^{†}^{†}thanks: This manuscript has been accepted by IEEE Transactions on Vehicular Technology. This is not the final version. Contents may be different from the final version. For the final version, see IEEE Xplore Digital Library. Copyrights are hold by authors and corresponding copyrights holders.
Abstract
As an emerging technique, cooperative device to device (CD2D) communication has been considered to be a solution to capacity shortage problem. Combining multihoming and CD2D techniques together can potentially improve network performance. We propose a novel multihoming CD2D (MHCD2D) network, in which multiple homing mobile devices (MMDs) act as relays for the cooperative communications of ordinary mobile devices (OMDs). We formulate such joint bandwidthrelay allocation problem as a twostage game, in order to deal with two challenges: 1) how to design incentive mechanisms motivating MMDs to lease spare bandwidths to OMDs; 2) how to help OMDs to choose appropriate MMD relays. In the first stage, we use a noncooperative game to model the competition between MMDs in terms of shared bandwidth and price. In the second stage, we model the behavior of OMDs selecting MMDs by an evolutionary game. We prove that there exists Nash equilibrium in the game and propose a distributed incentive scheme named IMES to solve the joint bandwidthrelay allocation problem. Extensive simulation results show that the equilibrium can be achieved and the best response price of one MMD increases with the other’s best price in the Stackelberg game. The utility of MMDs increases with the number of OMDs in each OMD group at the evolutionary equilibrium. The proposed algorithms are able to reduce average service delay by more than in comparison to the randomized scheme which is frequently used in the most existing works. On average, IMES outperforms existing scheme by about in terms of utility of MMDs.
I Introduction
With the proliferation of various wireless devices and numerous mobile applications, there is a tremendous growth on user demands for high data rates of wireless networks. DevicetoDevice (D2D) communication [1] as an emerging communication technology is of great potential to alleviate this capacityshortage problem by offloading traffic from base stations. Besides, cooperative communication [2] is another new type of wireless communication technology, in which devices can help each other to relay information and consequently improve the spatial diversity. As a result, the network capacity can be enhanced. The integration of D2D communications and cooperative communications can better improve the network capacity. Recently, it is shown in [3] and [4] that cooperative D2D (CD2D) communications can improve the performance of both D2D communications and the infrastructure communications at base stations. However, most of current studies on D2D communications, cooperative communications and CD2D communications only consider (i) homogeneous network settings and (ii) associations of devices to a single network. Both considerations (i) and (ii) are neither practical nor applicable to the heterogeneous and multiaccessing features of next generation networks [5][6].
Instead of associating to a single network, a device with multihoming capability can maintain multiple simultaneous associations to several different wireless networks [7]. The multihoming communication technology has the following advantages: (1) supporting applications with high data rate demands by aggregating bandwidth resources from multiple access networks; (2) being capable to relay information across different networks with the mobility of devices. Essentially, the multihoming technology is mainly designed for heterogeneous networks [8] since devices with multihoming capability shall be able to travel across different access networks.
Using multihoming technology in CD2D networks can potentially improve the network performance further. Therefore, we propose a novel network architecture that integrates both the two technologies. We name such multihoming CD2D networks as MHCD2D networks. In this new network architecture, we need to solve the following research challenges:

Challenge I. From the perspective of MMDs, serving more OMDs means more energy consumption. To save energy, some selfish MMDs may decline to relay information. Essentially, we shall design appropriate incentive mechanisms to motivate MMDs to make their contributions. For example, each OMD must pay for the service offered by the corresponding MMD.

Challenge II. MMDs may compete with each other for earning more profits from OMDs. However, competitions between MMDs can also cause utility losses for MMDs when charging price becomes lower and lower. Therefore, we shall coordinate bandwidth leases of MMDs.

Challenge III. As the number of OMDs is usually larger than that of MMDs, every source node (OMD) always wants to choose the best relay to maximize the performance. The inefficient selection of relays may lead to the network congestion and consequently degrades the performance of CD2D communications. Therefore, an efficient bandwidth allocation and relay selection mechanism shall be designed in our MHCD2D networks.
Recently, an interesting work was proposed in [9] focusing on mode selection, but only working for two types of networks, i.e. WLANs and LTEA cellular networks. Some significant works [10, 11, 12, 13, 14] focus on bandwidth allocation or relay selection in CD2D networks by assuming that relays are willing to cooperate. The incentive schemes presented in [15] and [16] utilize evolutionary game to allocate radio spectrum resources without considering relay influence. It is observed that, multiple networks are not considered in [9] and incentive mechanisms are not addressed in [9, 10, 11, 12, 13, 14]. Moreover, spatial diversity is not included in [15] and [16]. This motivates us to design an incentive mechanism that combines multiple homing and cooperative communication techniques to solve the above mentioned challenges. This paper is distinct from our previous work [17] in many aspects. Firstly, our work [17] has been significantly extended by adding investigations for the best strategies of pricing and bandwidth allocation on both MMDs, together with comparisons between proposed algorithm and randomized scheme in terms of service delay. Moreover, the relationship between average service delay and the number of OMDs is analyzed in this paper. The main contributions of this paper are summarized as follows:

We formally identify an MHCD2D network architecture that characterizes the features of multihoming capability and cooperative communications. The incentive mechanism for bandwidth allocation and relay selection in MHCD2D networks has not been investigated before.

We model the joint bandwidthrelay allocation problem in MHCD2D networks as a twostage game which consists of two subgames, (A) a noncooperative game among MMDs; (B) an evolutionary game among OMDs. Subgame (A) is the leader and subgame (B) is the follower.

To solve the aforementioned challenges (Challenges I, II, III), we propose a distributed scheme named incentive mechanism for efficient bandwidth relay sharing (IMES) in MHCD2D networks. We also show that IMES converges fast and it is efficient for resource sharing in MHCD2D networks.

To the best of our knowledge, this is the first work to investigate price competition between MMDs. Extensive simulation results show that, the average service delay can be reduced by more than in comparison to the randomized scheme which is frequently used in the most existing works. On average, IMES outperforms existing combinatorial double auction resource allocation (CDARA) scheme [18] by about in terms of utility of MMDs.
The rest of this paper is organized as follows. Section II describes our new architecture and presents basic assumptions. Section III gives a brief review of related works on both nonincentive based and incentive based resource allocation schemes. In Section IV, we describe network model and define resource allocation problem. Section V formulates the problem as a twostage Stackelberg game. We then propose the distributed IMES scheme in Section VI. Section VII presents the performance evaluation results and finally Section VIII concludes this paper.
Ii A New Architecture for Cooperative D2D Communication
In this architecture, some mobile devices can be associated to multiple heterogeneous networks and others can only be associated to a single network, which has following characteristics.

There are two kinds of devices in MHCD2D networks: (1) ordinary mobile devices (OMDs) and (2) multihoming mobile devices (MMDs). OMDs are only associated to a single network or can communicate with one source node and MMDs can be associated to multiple networks. Besides, MMDs can travel across different networks while OMDs cannot^{1}^{1}1This assumption is reasonable because we consider each OMD is equipped with a half duplex antenna and a single network interface due to constrained economic budget..

MHCD2D networks consist of multiple heterogeneous networks with different coverage area and different bandwidth settings.

There are two kinds of communications in MHCD2D networks: (i) infrastructure communications and (ii) D2D communications. In infrastructure communications, both OMDs and MMDs can communicate with base stations or APs directly. In D2D communications, OMDs and MMDs can directly communicate with each other.
Fig. 1 shows an example of our MHCD2D networks, which consists of macro cellular networks, small cellular networks, femto cellular networks and WLANs. In each network, both OMDs and MMDs can communicate with their associated base stations through infrastructure communications. For example, as shown in Fig. 1, OMDs O, O and an MMD M can communicate with their associated macro base station, i.e., (MBS) via infrastructure communications. Different from an OMD, an MMD can be associated with more than one network. For example, an MMD M can be associated with MBS and WiFi AP simultaneously. In addition to infrastructure communications between devices and base stations, there are D2D communications in our MHCD2D networks. Take Fig. 1 as an example again. OMDs O and O can directly communicate with each other and an OMD O can communicate with an MMD M in D2D mode. Besides, MMDs can travel across different networks. For example, M can move from a macro cellular network to another small cellular network (the new position is denoted by M and the moving direction is indicated by the dash arrow). Note that there are usually more OMDs than MMDs in our MHCD2D networks because an MMD with multihoming capability (e.g., equipped with multiple communication modules [6]) is more expensive than an OMD.
In this paper, we investigate cooperative communications in MHCD2D networks to improve the network performance. We choose MMDs as relaying nodes instead of OMDs because: (1) MMDs can aggregate bandwidth resources from multiple access networks; (2) MMDs can help to relay information across different networks by exploiting multihoming mobility of MMDs; (3) the case of choosing OMDs as cooperative relays can be regarded as a special case of our analysis.
Iii Related Work
In this section, we briefly survey related studies on the joint bandwidthrelay allocation in cooperative communications, D2D communications and CD2D communications.
Iiia NonIncentiveBased Schemes
There are many approaches proposed to improve capacity of the wireless network. Cooperative communication [2][19] has received extensive attentions recently since it can boost the capacity by exploiting spatial diversity with multiple relaying nodes. Besides, D2D communications can significantly enhance the capacity by establishing a path between two wireless devices directly without going through the infrastructure of a base station or an access point. It is shown in [3] and [4] that integrating both cooperative communications and D2D communications together can improve the capacity further. We call such cooperative D2D communications as CD2D communications.
One of the key issues in CD2D communications is the joint bandwidthrelay allocation problem. However, many of current studies address bandwidth (spectrum) allocation or relay allocation separately. For example, Cao et al. [10] provided a spectrum sharing framework between cellular users and D2D users in the uplink channel. An auction based relay allocation and sharing scheme was proposed by Chen et al. [12] where cellular users helped the transmission of D2D pairs. In [20], a relay based MIMO transmission with interference mitigation scheme was proposed for D2D communications. Multirelay diversity was proposed by Lv et al. [21] and roundrobin based relay sharing was investigated in [22].
The joint bandwidthrelay allocation in CD2D communications has attracted extensive attentions recently since it can fully utilize the resource and better improve the performance. Li and Guo [11] formulated the joint problem as a mixedinteger nonlinear programming and a centralized codingbased algorithm was employed to achieve high maxmin transmission rate. In [13], Li et al. proposed a fine grained resource allocation scheme with CD2D communication in cellular networks. Zhao et al. [14] investigated a coding scheme to maximize total transmission rate in CD2D transmissions. However, most of those studies only consider an idealistic scenario, in which relay nodes are always willing to serve. It is impractical in real life as most mobile nodes are resourceconstrained (e.g., powerconstrained). Serving other nodes will result in the increase of self energy cost. Besides, most of the above studies fail to consider the heterogeneity of mobile nodes as all nodes are regarded as homogeneous.
IiiB IncentiveBased Schemes
There are some incentivebased mechanisms proposed for relay allocation in cooperative communication network[23, 24, 25]. Yang et al. [23] designed a McAfee based truthful double auction scheme for cooperative communications, but one relay can only serve one source node. Besides, Wang et al. [24] presented a Stackelberg game for joint relay selection and power control, but they employed only one sourcedestination pair, which cannot be applied to our MHCD2D networks where multiple MMDs act as relays. Although there were multiple sourcedestination pairs sharing one particular relay in [25], it is not suitable for multiple relays’ scenario. Other auction schemes for spectrum sharing can refer to [26]. Most of those studies do not consider relay competitions.
As an efficient resource allocation methodology, Game theory [27] has shown its advantages in providing incentives for network users to participate in resource allocation of wireless networks. Niyato and Hossain [15] firstly modeled the competitions among users in different areas as an evolutionary game, which was further extended to model the price competitions between primary users in a cognitive radio network in [16]. However, both [15] and [16] failed to utilize cooperative spectrum diversity, which can significantly improve the capacity [2]. Wang et al. [28] addressed the joint relay and spectrum allocation using auction theory and Li et al. [29] studied the coalitional game for spectrum access in cognitive radio networks while both of them did not consider relay competitions. Recently, Yun et al. [30] proposed a Stackelberg gamebased scheme to tackle the network radio bandwidth allocation problem for multihoming devices. However, they failed to address price competitions and the scenario in this paper is distinct from that in [30]. In summary, those gametheoretical solutions can not be applied to our MHCD2D networks since they considered neither MMD competitions nor cooperative spectrum diversity. Therefore, it is the goal of this paper to address the above issues.
Iv System Model
Notations  Meaning 

The set of active relay MMDs  
Total number of MMDs  
The ith element of set  
The total number of active MMDs,  
The set of active OMDs,  
Number of OMDs in community that is attached to relay  
Total bandwidth that MMD relay is willing to lease  
Total number of OMDs that choose to associate with MMD  
The set of OMDs that choose MMD  
The th OMD that chooses relay ,  
Charging price vector of all MMDs  
Charging price of the th MMD,  
The bandwidth vector that the MMDs are willing to share  
The destination node of source node  
Transmission power of source node  
Transmission power of relay node  
The achievable capacity between source and destination  
The achievable capacity between and with cooperative relay  
Utility of the th source renting MMD  
Utility of the th MMD relay  
Average utility of a user in group  
Fraction of sharing for relay , , 
We consider the overlay paradigm for the spectrum allocation between D2D communications and infrastructure communications, where the mutual interferences between the two types of communications can be ignored [31]. Besides, mode selection in MHCD2D networks is not considered since we mainly concentrate on the design of incentive mechanisms. We assume that the spectrum owned by MMDs is coordinated by network service providers, i.e. base stations using OFDMA [10] or TDMA [32][33] so that interferences among MMDs and interferences within OMD communities can be mitigated. Meanwhile, by adopting network coding schemes [34], we can properly handle the interrelay interference. In the network, we assume that nodes do not frequently move or move slowly, similar to that in [35]. This work focuses on the type of static cases of nodes, rather than on the cases with different mobility patterns, such as random walk, hot spot mobility, route mobility models etc. [36], although the mobility of nodes is one of the most important research cases. For cost efficient location update and paging management in personal communication service networks, one may refer to the analysis performed by Li et al.[37][38]. For throughputdelaymobility tradeoff study under a more practical restricted random mobility model, one may refer to [39]. Basic notations are summarized in Table I.
There are MMDs and OMDs in an MHCD2D network. We use to denote the set of active relaying MMDs and to denote the set of active OMDs, where and . Since both MMDs and OMDs are carried by mobile users who may have common interests using social applications, such as watching videos or browsing pictures, each OMD may choose to associate with multiple MMDs sharing common interests. Note that at the same time, one OMD can only be served by one MMD. That’s because each OMD can only communicate with one MMD at a time with a halfduplex communication module. Differently, each MMD is equipped with multiple antennas, which allows the MMD associating with multiple networks. Generally, an MMD may not always be busy transmitting in high data rate (e.g., video streaming). Sometimes, it performs low data rate communication (e.g., sending short messages) and only occupies a small portion of the total spectrum. In particular, an MMD can lease unused spectrum to OMDs within its community so that it can make profits while OMDs can utilize the leased spectrum via spectrum aggregation [40] offered by the MMDs.
We name the OMDs associating an MMD as a community or a group interchangeably throughout this paper. Each community forms a cluster where the OMDs can share the spectrum and cooperative transmission opportunity of their associated MMD. It is worth mentioning that OMDs in one community can also associate with other communities, but can only be attached to one community at a time due to the halfduplexity of OMDs. In particular, we divide OMDs into a set of communities (or groups), . Apparently, we have .
In MHCD2D networks, we assume that the total bandwidth in the system is , and let be the total bandwidth that MMD relay is willing to lease and let be the total number of OMDs that choose to associate with MMD . We have , where is reserved bandwidth used for infrastructure communications. Usually, has an upper bound , i.e., , . Without loss of generality, we assume that OMDs in the same community are allocated with equal portion of bandwidth, which is . Let denote the number of OMDs in community that is attached to relay , where . Then we have .
V Analysis on Joint BandwidthReplay Allocation in MHCD2D Networks
In this section, we model the joint bandwidthrelay allocation problem in MHCD2D networks as a twostage Stackelberg game. In particular, for each OMD in the community, its aim is to determine which MMD to attach. Since all the OMDs are selfish, they only concentrate on their own benefits from the MMD without caring for others. As a result, multiple OMDs may choose the same relay to maximize their Quality of Service (QoS) such as the throughput capacity, which may lead to network congestion due to simultaneous connections at the same MMD. Besides, the spare spectrum resource offered by the other MMDs will be wasted. On the other hand, from the perspective of the relay, serving more OMDs means more energy consumption at MMDs and may lead to self performance degradation. To solve the above issues, we propose a marketbased pricing scheme. In this scheme, OMDs should pay for the cooperative relay service offered by MMDs. MMDs can get monetary compensation for sharing resources as a reward. Because OMDs are allocated with the same portion of bandwidth, we assume that each OMD is charged for the same price by the MMD it attaches to. Let denote the charging price vector by all MMDs. Let be the bandwidth vector that the MMDs are willing to share. Then, the strategy profile for MMDs is . For relay set , the spare resources are sold to the OMDs for profits and the OMDs are buyers in the virtual market. All users in the virtual market are selfish and they only care about their own profits. The MMDs may compete with each other on the available bandwidth to offer with charging prices for OMDs. For the OMDs, each user needs to determine which MMD to employ, based on the given resource and charging profile . Since the OMDs are selfish, there are competitions between the users. Therefore, the competition behaviors can be formulated as a twostage Stackelberg game, where the leaders are MMDs and the followers are OMDs.
We first describe the evolution dynamics of OMDs in subsection VA. Then we analyze the competition among MMDs in subsection VB. Finally, we prove that the system will reach the Nash equilibrium in subsection VC.
Va Evolution Dynamics of OMDs
In an MHCD2D network, we adopt AmplifyandForward (AF) cooperative communication [2]. Note that we do not consider DecodeandForward (DF) cooperative communication since the relay node selection algorithm designed for AF can be easily extended for DF as indicated in [2]. AF consists of two phrases, (Phase 1) broadcasting and (Phase 2) relaying, which will be described in details as follows.
Let denote the set of OMDs that choose MMD as cooperative relay node. Each OMD belongs to a group . Denote the destination node of source node by . Fig. 2 shows an example, in which OMDs and both choose MMD as cooperative relay in group while is the destination node of in group . We assume that one source node can only select one MMD relay at one time due to the halfduplexity of wireless interface. For example, at one time slot, node can only be attached to , but at next time slot, it may choose in group .
In Phase 1, source node broadcasts its information to its destination node and its information has been overheard by relay node . The received signals and at OMD and MMD can be expressed as,
(1) 
and
(2) 
where is the transmission power of source node , is the channel power gain between source and destination , is channel power gain between source and relay . and are additive white Gaussian noises (AWGNs) with zero mean and variance . For direct D2D transmission between and if relay is not used, the achievable capacity can be defined as
(3) 
where is
(4) 
In Phase 2, MMD amplifies the received signal and forwards it to OMD with power . Then received signal at is
(5) 
where is the received white Gaussian noise at in the second phase with zero mean and variance . is the normalization factor which is defined as
(6) 
Using (7), the SNR for relayed by is given as follows
(8) 
Therefore, using (4) and (8) when maximalratio combining (MRC) is used at , the achievable capacity through relay can be expressed as
(9) 
It should be noted that, the channel related parameters in the above equations are maintained at the base station and broadcast to mobile nodes via periodically control packets. We then define Relay Selection Condition to determine whether a relay should be chosen.
Definition 1
Relay Selection Condition. For each source OMD , it may choose relay as the cooperative node if the achievable capacity gain is greater than . Otherwise, it may choose direct transmission without the relay or imitate other OMD’s choice within the same group to maximize the utility, which is defined in (11).
Since OMDs in the same group can learn from each other’s choice via the broadcasting of MMD relay and then dynamically adjust their strategies, the behaviors of players (OMDs) form the evolution in the group. According to [41], for each member in group , the sharing vector for relay can be defined as the fraction of the spectrum offered by . Let be the state vector of the user in group , thus
(10) 
where each element in represents the fraction of sharing for relay . Note that and . For example, let , , , means in a system where there are two groups and two MMDs, members in group choose relay and members in group choose relay . Combining (3) and (9), we can define the utility of the th source user renting relay as follows,
(11) 
where is the unit cost per bit, is the time fraction that the th source user can get access to relay and is usually set as . It should be noted that equals to if and equals to , otherwise. According to [41], the utility of OMD at time is a function of the group state at time and is a time delay variable. Here, we assume the OMDs within each group have similar distances to their corresponding receivers. In this way, the sub index ‘’ in (11) can be omitted. Similar to [15], we have the replicator dynamics of the population (i.e., the OMDs in the group) as follows,
(12) 
where represents the updating speed based on the observation of OMDs, stands for the utility of an OMD in group that attaches to MMD , and is the average utility of a user in group .
It is shown in (12) that the number of OMDs choosing MMD will increase if the payoff is higher than the group’s average payoff. The evolution will end when the sharing strategy remains constant, which is the evolutionary equilibrium.
VB Competition Between MMDs
When OMDs reach an equilibrium, MMDs will compete with each other to adjust their strategies which is coordinated by the base station to maximize total utility. The behavior of MMDs can be modeled as a noncooperative game. The utility of one MMD is the total payment of all OMDs that attach to it minus its cost for serving as a relay. Let be the utility of the th MMD relay , then we have
(13) 
where is the relay cost per unit bandwidth.
Definition 2
Define the profile strategies for all MMDs except relay as .
Definition 3
The strategy profile is the Nash equilibrium if , for .
The Nash equilibrium can be found in solving the fixed point of all the best responses of players.
Definition 4
The optimal strategy for each MMD is defined as
(14) 
Next, we use a simple example to illustrate how the system evolves towards the Nash equilibrium.
VC Simple Example
We consider a simple example similar to [15], in which there are two MMDs . Under this setting, we will utilize backward induction to derive the Nash equilibrium.
VC1 Evolution Dynamics of OMDs
Assume that each OMD tells its utility truthfully, as illustrated in the previous section, when , the evolutionary game will converge to the equilibrium. The evolution will end because no member in the group can enhance its utility by copying other’s strategy. Thus, we can solve the following equation to determine the equilibrium,
(15) 
where the left hand side of (15) is the utility of an OMD member in group that chooses MMD as relay node, while the right hand side of (15) is the utility of OMD who chooses the other relays except relay . Combining (3)(9)(11)(15), then (15) can be rewritten as (16),
(16) 
(17a)  
(17b) 
where we assume that OMDs and MMDs are assigned with same transmission power and same noise at the receiver for the benefit of simplicity. That’s because the different power consumptions can be modeled by the variant charging prices and costs. Regarding to power control game in the fading channel, please refer to [42]. In group one, the channel gain between source and relay is denoted by , the channel gain between source and destination is denoted by , the channel gain between relay and destination is denoted by where . Let be the number of OMDs in , then and . Therefore, (16) can be rewritten as,
(18) 
where
(19) 
and is defined in (17a), is described in (17b). and are defined as follows,
(20) 
(21) 
Note that (19) is the positive solution of equation (18). As we can see from (16) (21), the term makes equations not easy to be handled. Note that the function is concave, , is also concave. To simplify the analysis, we modify the utility function of OMDs by redefining and (see (3) and (9)) as follows,
(22) 
and
(23) 
where is a system parameter which originates from the coefficient of (3) or (9). Note that through this change, we do not change the concave feature of the original equations (3) and (9), which is also adopted by [43], thus we have
(24) 
and
(25) 
VC2 Pricing competition between two MMDs
When there are multiple MMDs in the system, they may compete with each other in terms of price and bandwidth to sell to OMDs. In this paper, we consider the fixed bandwidth sharing between MMD and MMD . Therefore, MMDs form the noncooperative subgame. The strategy of each MMD is the price charging for OMDs. The payoff of each MMD is the total payment by OMDs minus the consumption for serving OMDs. In this example, the noncooperative game between MMDs can be defined as a tuple . Because the bandwidth sharing is fixed, the utility function of the th player, defined in (13) can be rewritten as,
(29) 
where the term can be determined by (26), which is the equilibrium of the evolutionary game for the OMDs. Substituting (26) into (29), we have
(30) 
where (30) shows the interaction between the MMD and OMD. The first derivative of with respect to is computed as
(31) 
Therefore, the optimal price for the MMD can be calculated by letting . Then from (31), we have
(32) 
VC3 Nash equilibrium for noncooperative game between two MMDs
According to (33), each MMD’s optimal price increases with the growing of other MMD’s price. Therefore, this game is proved to be a supermodular game [16] and there is Nash equilibrium in this game.
Theorem 1
There is a pure Nash equilibrium in the noncooperative game between MMDs. {proof} A supermodular game must satisfy the following properties: Property 1) A strategy is a subset of real set. Property 2) A utility has increasing difference in all sets of strategies. In the noncooperative game, the optimal strategy of player , its price . According to [16], property can be easily verified. For property , it can be verified through . We can calculate as
(34) 
Since , and also, we have
(35) 
hence, we have because . Further, we have . Therefore, the noncooperative game is a supermodular game with a Nash equilibrium.
It is worthy noting that, the channel conditions are known a priory at base stations and are broadcasted to each mobile devices in the network via control packets. We then show that the noncooperative game has a unique Nash equilibrium, shown as follows.
Theorem 2
The above noncooperative game has a unique Nash equilibrium. {proof} According to Theorem 1, there is a Nash equilibrium in the noncooperative game between MMDs. In this theorem, we prove that the Nash equilibrium is unique by showing the selfmapping function of the MMD’s best response function is a contraction. The selfmapping function is expressed as follows,
(36) 
for and . To prove the uniqueness of Nash equilibrium, it is equivalent to demonstrate the selfmapping function is a contraction. We observe that the Jacobian matrix is
(37) 
Let be the largest absolute eigenvalue of the Jacobian matrix . Then we have
(38) 
The selfmapping function is a contraction if and only if . According to (34), we have and thus is established, which means the selfmapping function is a contraction. Therefore, the uniqueness of Nash equilibrium for MMDs is proved.
Vi IMES: A DistriBbuted Implementation
In this section, a distributed Incentive Mechanism for Efficient bandwidth relay Sharing in CD2D networks (IMES) is proposed. The mechanism includes evolution among OMDs and price competition within MMDs. For MMDs, they are leaders and make decisions on the price and bandwidth for OMDs through competition. The objective is to maximize their own utilities. For OMDs, they are followers and only respond to the ask price and bandwidth changes made by MMDs to maximize their own utilities.
Via Evolution Mechanism Among OMDs
In this subsection, an iterative mechanism is proposed for OMDs so that they converge to the equilibrium. Each OMD in the group tries to maximize its own utility. A distributed algorithm is designed to execute at each OMD. Within each group, OMDs can communicate with each other and share the information of the other’s choice. The average utility sent by MMDs can be shared with members in each group. Each member in the group can change the decision with a probability if observing the other member within the group obtains a higher utility. The evolution will end when all OMDs in the same group achieve equal or almost equal utility. The details of the procedure are illustrated as follows. Firstly, each OMD in the group is attached to a MMD relay node randomly. Then, each MMD computes its utility by using the allocated bandwidth and the price charged by the corresponding MMD from (11). After exchanging information with users in the same group, each OMD will get the information of utility and choice to compute the group’s average utility according to the following equation [43],
(39) 
The OMD will change its link to the MMD if it finds another MMD can provide a higher utility when the probability is higher than the random number within , where is defined as [15]
(40) 
The OMDs will repeat those procedures until the evolution is stable. The details of the scheme executed on each OMD are shown in Algorithm 1.
ViB Competition implementation for MMDs
In real scenarios, the multihoming base stations are heterogeneous, a central controller to inform MMDs may not be always available. Therefore, each MMD may learn and make its own decision to adapt to changes. Under this setting, an iterative based updating scheme is proposed. Similar to [15], the MMD can update strategies as follows,
(41) 
and
(42) 
where is a period of time and , are updating speed related parameters. When the offered bandwidth and charging price are updated, they will be broadcast to OMDs within the group. After receiving those data, each OMD will adjust their own strategies. As same as [43], due to the unknown evolution time, we also denote a waiting time for the strategy updating interval. When the results in (41) and (42) are stable, then the Nash equilibrium is achieved by approximation. Details of the algorithm on the MMD is shown in Algorithm 2.
Vii Performance Evaluation
Parameters for Simulation  Values 

, the set of social groups with OMDs  
, the set of MMD relays  
, time delay parameter  
, waiting time  
, updating speed parameter  
, the number of OMDs in group  
, the communication range of devices  
, the number of OMDs in group  
Default network area size  
, system parameter 
According to [45], due to the price simultaneously charged by MMDs, there is no optimal strategy for each OMD. Therefore, the equilibrium performance is studied. In this section, we first evaluate the performance of the proposed game theoretic scheme in Section VIIB. We then analyze the service delay in Section VIIC.
Viia Experimental Setup
The experimental evaluation has been conducted on Matlab simulator [46]. To evaluate the performance of proposed group behavior of users in neighboring groups as most studies do [47] [48], by default we assume that there are two groups of OMDs randomly distributed in a area [49] and competing for two MMDs. As did in [50], we consider small groups by setting the default number of OMDs in group as while the default number of OMDs in group is . During the simulation, nodes may stay static or do not frequently move [35] in the network. For example, in a wireless local area network covering a metropolitan area [51], users may only move around in a restricted area close to their homes, including the office[52], gymnasiums, and so on. As another example, defending soldiers are allowed to move in their defend areas on the battlefield [39]. The communication range is set as for mobile devices[53] and the waiting time interval is set as .
We then set system parameters for group . In particular, the channel gain between source and relay is , the channel gain between source and destination is and the channel gain between relay and destination is [54]. Similarly, we set system parameters for group as , and . Here we adopt the same channel gain of elements in each group to simplify the analysis just the same as in [55] and [56], which does not affect the performance comparison for the proposed scheme. We choose the common transmission power as [57][58] for group and group . Without loss of generality, we set [59]. The results are obtained by averaging over 1000 simulation runs. Table II lists the parameters used in simulations. The behaviors of OMDs in one group are compared with those of OMDs in the other group on choosing MMD relay nodes when Algorithms 1 and 2 are executed. The best strategy of one MMD with respect to the behavior of other MMD is also studied. To evaluate service delay, we design a randomized method to compare with the proposed IMES. When there are more than two groups, i.e. , there are two cases since in the simulation we set .
Case 1: The number of MMDs is odd. In this case, the algorithms will be executed between adjacent groups and neighboring MMDs. Finally three groups of OMDs and three MMDs are left. Then we can divide one group of OMD users in the last three groups into two separate subgroups uniformly, and then duplicate the role of one MMD for the separated two groups by choosing one MMD from the last three MMDs.
Case 2: The number of MMDs is even. As same as Case I, the algorithms will be executed between neighboring OMD groups with the corresponding MMDs.
ViiB Best Strategy
Firstly, we analyze the phase plane of replicator dynamics, as shown in Fig. 3. Although there are multirounds for the replicator dynamics, we only consider a particular round given the offered resources and charging prices. We assume that all OMDs can perform cooperative communications with MMD . In this simulation, , , and . For the charging price, we set and . The proportions of OMDs in group and choosing the MMD relay are plotted in Fig. 3. The phase plane shows the evolution direction of the replicator dynamics towards the Nash equilibrium. It is shown in Fig. 3 that whatever the starting point is, the population of OMDs converges to different evolutionary equilibria. The solid line in Fig.3 shows the set of Nash equilibria. For example, from , the equilibrium will be achieved at . It is worth noting that in the equilibrium, the utility of OMDs in is almost equal to that in .
Further more, the basin of attraction consists of the replicator dynamics is the whole feasible region, that is . Fig. 4 shows the convergence of the evolution of total utility in each group towards the equilibrium from the starting point . In this experiment, we assume that both and offer the same bandwidth of . Both and are equal to . In the equilibrium, the utility of all OMDs in each group is close to the theoretical utility based on the observed value. In order to clearly present the results, we adjust the results of total utility divided by , as shown in Fig. 4. It is observed that the total utility of group is higher than group when the equilibrium is achieved. That’s because (i) the channel gains that result in the total utility for OMDs in group are higher than those in group and (ii) the ask price of is lower than that of .
Next, we investigate the number of OMDs that attach to MMD with changing number of OMDs in group . As shown in Fig. 5, with increasing number of OMDs , the number of OMDs choosing MMD grows accordingly. When the charging price of , i.e. grows from to , increases due to the intention to choose a service provider with lower price. Further more, we study the relationship between and when MMDs and charge the same price at the evolutionary equilibrium. Let , is fixed at , as shown in Fig. 5, when total number of OMDs in group is constant, decreases with the increase of . That’s because when the more bandwidth is offered by , the less number of OMDs will choose .
Fig. 5 shows the best responses of the pricing strategy of the two MMD relays. In this experiment, MMD offers a bandwidth of and MMD offers a bandwidth of . It is observed that both the best response strategy of and the best response strategy of grow in the Stackelberg game. Furthermore, for MMD , the slope of the best response value is greater than whereas it is not the case for MMD . That’s because offers more bandwidth than does. The Nash equilibrium point is achieved when the best price strategy is . To earn more profits, MMD should lease more bandwidth to OMDs.
To better demonstrate the MMD’s best response with its counterpart’s changing bandwidth and charging price, we compare the performance when the twovariable strategy profile