A coalitional graph game framework for network codingaided D2D communication
 Yulei Zhao^{1},
 Yong Li^{1}Email author,
 Zhiguo Ding^{2, 3},
 Ning Ge^{1} and
 H. Vincent Poor^{2}
https://doi.org/10.1186/s136340150295x
© Zhao et al. 2016
Received: 18 June 2015
Accepted: 1 December 2015
Published: 8 January 2016
Abstract
The application of devicetodevice (D2D) communication in cellular networks can significantly improve the efficiency of spectrum utilization, which benefits local area cooperative services. On the other hand, network coding can realize more efficient cooperation among cellular users. Thus, it is natural to combine network coding with D2D communication in order to further increase the system sum rate. In this paper, a coalitional graph game framework is proposed to jointly accomplish resource allocation and relay selection, two challenging problems in network codingaided D2D communication networks. It is shown that this framework can model D2D communication combined with various network coding schemes. Based on the coalitional graph game framework, a distributed algorithm with low computational complexity is proposed to solve the formulated problem for physical layer network codingaided D2D communication. Finally, the performance of the proposed transmission scheme is evaluated through extensive simulations.
Keywords
Devicetodevice communication Network coding Coalitional graph game Resource allocation Relay selection1 Introduction
Wireless access and mobile Internet are gaining popularity globally. For example, Cisco estimates that mobile data traffic will grow at an annual rate of 57 % from 2015 and reach over 24.3 exabytes per month in 2019 [1]. Over two thirds of this traffic will be related to local area video content service. To meet this everincreasing demand for local area services, devicetodevice (D2D) communication has been proposed as a key component for nextgeneration cellular networks [2], where user equipments (UEs) send data to nearby devices over direct links, instead of through base stations (BSs) [3]. Such direct D2D transmission enables proximate cellular users to share content directly, which reduces power consumption and improves transmission rates [4]. Meanwhile, when D2D pairs reuse the bandwidth resources being used by regular cellular users, the spectrum efficiency can be further improved.
On the other hand, network coding allows intermediate nodes to process their received data more spectrally efficiently, which increases the capacity of wireless networks [5]. In the context of D2D communication, the application of network coding is particularly important since it enables users to cooperate more effectively and hence enhances the performance of local content sharing [6–10]. Osseiran et al. [6] combined network coding with cooperative transmissions to decrease the frame error rate, while Fitzek et al. [7] used network coding to achieve efficient cooperation for mobile clouds. The application of various network coding schemes to D2D communication scenarios has been investigated in [8] and [9]. Pyattaev et al. [10] used random linear network coding (RLNC) to significantly improve the degrees of content availability for cellular users and speed up content downloading.
These existing studies provided important insights for combining network coding with D2D communication networks. However, two challenging problems in network codingaided D2D communication systems, resource allocation and relay selection, have not yet been jointly investigated. The motivation for carrying out resource allocation is that D2D pairs and relays may occupy the same spectrum as regular cellular user and therefore introduce cochannel interference into the system. Existing studies in this area have mainly focused on the problems of resource allocation for direct D2D communication [11–14]. For example, Xu et al. [12] proposed a reverse iterative combinatorial auctionbased approach to allocate resources between cellular and D2D UEs. Li et al. [13] considered largescale networks and proposed a coalitional formation gamebased scheme to allocate the uplink resources among multiple D2D and cellular users. While the application of network coding to D2D communication can enhance the system throughput, this application makes the resource allocation problem more challenging since the use of network coding introduces relays into the D2D communication systems.
Meanwhile, relay selection becomes significantly complicated for the D2D scenario with multiple users and relays [15–18]. Kadloor et al. [15] formulated a convex optimization problem for relay selection and designed a heuristic algorithm to achieve closetooptimal relay selection. Pham et al. [16] formulated relay assignment as a mixedinteger linear programming problem by maximizing the minimum capacity. Joint relay selection and subcarrier assignment were considered in OFDMA D2D communication in [17]. Lu et al. [18] utilized a layered coalitional game to select the relays and allocate spectral resources. Relay selection for twoway relaying transmissions was analyzed in [19] and [20], but these existing works did not consider cochannel interference which is severe in spectrumsharing schemes. Our previous work [21] only evaluated the performance of intrasession network coding with a limited number of D2D pairs. In conclusion, joint spectral resource allocation and relay selection for network codingaided D2D communication is still an open problem and needs to be investigated under largescale network scenarios.
Coalitional graph games have many important applications for distributed resource allocation problems in wireless communication networks [22]. Myerson [23] was the first to define the coalitional graph game model, where each player maximizes its individual utility based on a graph model for a network. In graphbased communication networks, this model can be used to solve certain problems through distributed problem [24–26]. Saad et al. [24] used the network formation game model to construct a tree uplink structure, which can be used to maximize the packet success rate. Wang et al. [26] proposed a model for the popular content distribution among onboard units (OBUs) in vehicular ad hoc networks by applying the coalitional graph game formalism.

We propose a coalitional graph game framework, which solves the problem of joint resource allocation and relay selection in network codingaided D2D communication networks. The proposed framework is able to provide significant flexibility for modeling the application of different network coding schemes to D2D networks.

We focus on the application of physical layer network coding (PNC) to D2D communication, which requires only two time slots. The achievable rate of different transmission modes is developed in the presence of the interference between relays and D2D pairs. We formulate the problem of joint relay selection and resource allocation in PNC D2D networks as an optimization problem, which is shown to be NP hard. To solve the formulated problem, we use the coalitional graph game framework, in which the utility of each coalition is defined as the maximum achievable sum rate of each coalition with different resource allocation policies.

We carry out extensive simulations which show that our proposed PNC scheme provides the maximum sumrate. Furthermore, it is shown that the performance of our proposed solution is close to that of the optimal solution. The overall transmission rate of the network can be improved up to 50 % without increasing the computational complexity, compared with the existing schemes.
The rest of this paper is organized as follows. After presenting the system model and proposing the coalitional graph game framework in Section 2, we formulate the optimization problem for PNCaided D2D communication in Section 3, in which the distributed algorithm based on the coalitional graph game framework is also proposed. Performance evaluations are given in Section 4, and finally Section 5 concludes this paper.
2 Coalition graph game framework
2.1 System model

Intrasession network coding for content dissemination. This technique speeds up content downloading and sharing among cellular users. As depicted in Fig. 1 a, both cellular users UE1 and UE2 request the same content from the service provider. UE1 obtains two packets Data1 and Data2, while UE2 only gets Data1 from the BS. Then, UE2 can retrieve Data2 from UE1 through D2D link. In particular, Data1 and Data2 are the coded packets instead of original packets. Intrasession network coding can significantly increase the content availability for cellular users. Based on RLNC, it has been shown that each connected cellular user can obtain the required packets with a probability close to one [10].

Intrasession network coding for cooperative transmission. This technique uses the rateless feature of network coding to improve the achievable rate. Specifically RLNC, an algebraic coding scheme, can be adopted to realize reliable cooperative transmissions [27]. Let P _{ K×L } denote the transmitting packet matrix and G _{ N×K } denote the random coefficient matrix. The encoding process of RLNC can be written as C _{ N×L }=G _{ N×K }×P _{ K×L }, where C _{ N×L } is the encoded packet matrix. Note that K denotes the block size of the original information packets, N represents the number of coded packets, and L is the number of bytes in each packet. As depicted in Fig. 1 b, for uplink transmissions, S first transmits the coded packets to the BS in the time slot allocated to the source, where the relay R can overhear the signals. When R has an adequate number of coded packets, it recodes its received packets without decoding them and transmits the reencoded packets to the BS. At the same time, S stops sending the coded packets. The fraction of the time slots allocated to the source and the relay is determined by their channel state information [21].

Intersession network coding requiring three time slots. As described in Fig. 1 c, three time slots will be required for this case. In time slot 1, the cellular user D1 sends its data C1 to the cellular user D2, and D2 sends its data C2 to D1 in time slot 2. Due to the broadcast nature of the wireless medium, the relay can hear both C1 and C2. Next, the relay generates the encoded data C1⊕C2 and broadcasts it to the cellular users D1 and D2 simultaneously. Finally, the cellular user D1 recovers C2 and D2 recovers C1, as they already know their own data, C1 and C2, respectively.

Intersession network coding requiring two time slots. As described in Fig. 1 d, two time slots are required for this case. In time slot 1, D1 and D2 transmit their data to the relay simultaneously. The relay will use advanced decoding strategies, such as denoiseandforward (DNF) [28], to manipulate its received mixture. Then, the relay broadcasts the unique mapping data \(\mathcal {M}(C1,C2)\) to D1 and D2 at the same time. Again as D1 and D2 know their own data, they can remove the selfinterference and then recover the packets of their partners.
where P _{int,j } denotes the interference power received by terminal j, and N _{0} is the noise power at the receiver. We model the transmission link from node i to node j as a Rayleigh fading channel. Further, path loss is also considered, i.e., the received power of node j from node i can be expressed as \({P_{\textit {ij}}} = {P_{i}} \cdot {\left  {{h_{i,j}}} \right ^{2}} = {P_{i}} \cdot \rho _{i,j}^{ \alpha } \cdot {\left  {{h_{0}}} \right ^{2}}\), where ρ _{ ij } is a distance between the two nodes, α is the pathloss exponent, and h _{0} is the complex Gaussian channel coefficient. Based on the above interference model, we now establish the framework for joint resource allocation and relay selection in network codingaided D2D communication networks.
2.2 Interference graph model
In this subsection, we construct the interference graph to represent the resourcesharing relations in D2D communication networks [29, 30]. In particular, we assume there are C cellular users grouped in a set denoted by \(\mathcal {C}=\{c_{1},c_{2},\cdots,c_{C}\}\). Besides the cellular users, there are D D2D pairs grouped in a set denoted by \(\mathcal {D}=\{d_{1},d_{2},\cdots,d_{D}\}\), which share the uplink resources with. Each D2D pair \(d_{i}\left ({d_{i}^{1}}, {d_{i}^{2}}\right)\) consists of transmitter \({d_{i}^{1}}\) and receiver \({d_{i}^{2}}\). These D2D pairs can choose the spectral resources occupied by any cellular users c _{ i }, \(\forall c_{i} \in \mathcal {C}\). In network codingaided D2D communication networks, we also consider the use of R relays grouped in a set denoted by \(\mathcal {R}=\{r_{1},r_{2},\cdots,r_{R}\}\). It is assumed that each D2D link or cellular link is limited to be aided by only one relay.
2.3 Coalitional graph game framework

Players: \(\mathcal {N}\) is the set of the regular cellular users, the D2D pairs, and the relays in the D2D communication network, which are the game players with N representing the number of all game players.

Strategy: \(\mathcal {X}\) is the set of strategies for the regular cellular users, D2D pairs, and relays. The strategies of the players are to make decisions on resource allocation in order to maximize each player’s utility.

Utility: denotes the network utility of each player. In our proposed coalitional graph game model, all the players in the same coalition work cooperatively to increase.
2.3.1 Strategy space
2.3.2 Utility function
In the system, positive utility is defined to represent the sum rate of network codingaided communication links, which is related to the strategies of the regular cellular users, D2D users, and relays. Therefore, the utility function is an interference graphbased function, which is denoted by U(G). When relay i occupies the spectral resource of cellular user j, it is supposed that relay i has the capability to help uplink transmissions from cellular user j to the BS or the bidirectional transmissions between D2D pairs.
In order to calculate the utility of each player, we define a set of coalitions denoted by \(\mathcal {H}=\{\mathcal {H}_{0},\mathcal {H}_{1},\mathcal {H}_{2},\cdots,\mathcal {H}_{C}\}\), where C is the total number of the coalitions \(\mathcal {H}_{i}\) in the structure \(\mathcal {H}\), \(\mathcal {H}_{i} \cap \mathcal {H}_{j} = \varnothing \) for any i≠j, and \(\cup _{i=0}^{C} \left  \mathcal {H}_{i} \right  = \left  \mathcal {H} \right \). Each coalition \(\mathcal {H}_{j}\) consists of one cellular user c _{ j } and its associated D2D pairs and one relay. All the nodes in the same coalition occupy the same spectrum. We use \(\mathcal {D}_{c_{j}}\) and \(r_{c_{j}}\) to denote the D2D pairs in coalition \(\mathcal {H}_{j}\), respectively. \(\mathcal {H}_{0}\) represents the coalition of D2D pairs and relays, which are inactive. The utility function of each player is depending on which coalition it belongs to.
where \(R_{\overline d}\) is determined by the specific transmission scheme of network codingaided D2D communication. \(\gamma _{c_{j}}\) and γ _{ d } can be obtained from (1). From the above analysis, the strategy vector x=(x _{ n },x _{−n }) determines the interference graph G. Therefore, U _{ n }(x _{ n },x _{−n })=U _{ n }(G), which is the general definition and can be adapted to different application scenarios.
2.3.3 Nash equilibrium
For the proposed coalitional graph game model, the number of transmission links aided by each relay needs to be less than predefined M, which is determined by the available spectral resources of each relay. When the number of aided links is less than M, the relay may definitely select the strategy to aid the communication links in a new coalition. When the total number of links is equal to M, the relay only change the strategy when its utility is increased and other players’ utilities are not decreased. Therefore, we first define the feasible local strategy.
Definition 1.
(Feasible local strategy) The feasible local strategy for a coalitional graph game \(\mathcal {G} = \left (\mathcal {N}, \mathcal {X}, \mathcal {U} \right)\) is defined as the strategy \(x_{i} \in \mathcal {X}_{i}\), which satisfies: (1) U _{ i }(G ^{′})>U _{ i }(G); (2) U _{ k }(G ^{′})≥U _{ k }(G) for \(k \neq i, k \in \mathcal {N}\), where G(V,E) is the current interference graph in the communication domain, and G ^{′}(V,E ^{′}) is the changed interference graph caused by strategy x _{ i }.
The set of all feasible local strategies for player i is denoted by \(\mathcal {S}_{i} \in \mathcal {X}_{i}\), which can be obtained from Definition 1. Then, we give the definition of the local best response for player i, which aims to select the strategy \(x_{i} \in \mathcal {S}_{i}\) to maximize its utility.
Definition 2.
(Local best response) A feasible local strategy \(x^{*}_{i} \in \mathcal {S}_{i}\) is the local best response for player \(i \in \mathcal {N}\) if \(U_{i}(x^{*}_{i},x_{i}) \geq U_{i}(x_{i},x_{i}), \forall x_{i} \in \mathcal {S}_{i}\).
Therefore, the local best response for player i is to occupy the appropriate spectral resource, if this strategy can maximize its utility. For joint resource allocation and relay selection, each cellular user selects its local best response in a distributed way and the coalitional graph game \(\mathcal {G} = \left (\mathcal {N}, \mathcal {X}, \mathcal {U} \right)\) converges to the local Nash equilibrium.
Definition 3.
(Coalitional graph Nash equilibrium (CGNE)) The coalitional graph game \(\mathcal {G} = \left (\mathcal {N}, \mathcal {X}, \mathcal {U} \right)\) has the Nash equilibrium if no player can increase its network utility by changing its resourcesharing strategy, i.e., \(x_{i}^{*} = \arg \max \limits _{x_{i}\in \mathcal {S}_{i}}U_{i}(x_{i},x_{i}),\forall i \in \mathcal {N}\). Therefore, \(\textbf {x}^{*} = \left \{ x_{1}^{*}, x_{2}^{*}, \cdots, x_{N}^{*} \right \}\) is the CGNE.
According to the above definition, it is important that the strategy of each player must be the local best response when the coalitional graph game achieves the CGNE.
2.4 Game theoretic solutions by using the proposed framework
The coalitional graph game framework is able to solve the problem of joint resource allocation and relay selection in network codingaided D2D communication networks. As described in Fig. 1, there are four typical application scenarios for D2D communication underlying cellular networks. In the case of intrasession network coding for content dissemination, the network performance is determined by resource allocation among D2D links. Therefore, the strategy of each D2D link d is to occupy the appropriate spectral resource of cellular users to increase the sum rate of its coalition, which is the set of transmission links that shares the same spectrum with d. From the interference graph, we can obtain the utility function U _{ d }. Based on the above utility value, the Nash equilibrium can be achieved through the myopic algorithm [26].
In the case of network codingaided twoway D2D transmission, spectrum sharing of D2D users has the impact on the potential gains of the transmission links aided by relays, and relay selection in turn influences the resource allocation scheme among the D2D links. Based on the proposed framework, the strategy of each D2D link or a relay is to select a cellular user with which the spectral resource is shared. When relay r occupies the same spectrum with cellular user \(c_{j} \in \mathcal {C}\) and its associated D2D pairs \(\mathcal {D}_{c_{j}}\), the utility of this coalition is determined by which link is aided by the relay. We can obtain the utility from (2), and the Nash equilibrium can also be achieved by again applying the myopic algorithm.
3 Coalitional graph game framework for physical layer network coding
3.1 System overview
In this section, we apply the coalitional graph game framework to PNCaided twoway wireless transmissions. Specifically, we focus on the scenario with a single cell involving multiple idle cellular users and D2D pairs within its coverage. The idle cellular users have no data to transmit, and the spectral resources allocated to them can be reused. Therefore, D2D pairs occupy the spectral resources allocated to these idle cellular users, which are used as relays for twoway D2D data transmissions. PNC can significantly improve the system performance for twoway wireless transmissions [28]. Louie et al. [31] analyzed PNCaided twoway transmissions using the amplifyandforward (AF) protocol. Zhao et al. [32] proposed a denoiseandforward network coding scheme for twoway relaying systems.
In this work, we use the physical resource block (RB) in LTE as the minimum resource allocation unit, which occupies 0.5 ms in the time domain and 180 kHz in the frequency domain. D2D pairs can occupy the RBs allocated to an idle cellular user. In order to maximize the system performance, multiple D2D pairs can share the same idle cellular user’s spectral resource [12, 13]. However, one twoway D2D communication pair is limited to be assisted by only one relay. Furthermore, the BS is in charge of resource allocation and relay selection, since it is the control center of the D2D communication network.
As an example to analyze the interference relationship, we consider the direct transmissions from \({d_{3}^{1}}\) to \({d_{3}^{2}}\) and the PNCaided twoway D2D transmissions from \({d_{2}^{1}}\) to \({d_{2}^{2}}\), as depicted in Fig. 3. The receiver \({d_{2}^{2}}\) and its relay c _{2} of the PNC scheme are interfered with by the transmitter \({d_{3}^{1}}\) of d _{3}. The receiver of \({d_{3}^{2}}\) is interfered with by the transmitter \({d_{2}^{1}}\) and relay c _{2} of the PNC scheme, as \({d_{2}^{1}}\) and c _{2} transmit in the different time slots. In other words, the received signal at D2D receiver d _{2} under the PNC scheme consists of the signals from the source node and the relay node, the interference from other D2D pairs, and additive white Gaussian noise (AWGN). Similarly, the received signal at D2D receiver d _{3} under the direct transmission scheme consists of the signal from the source node, the interference from other D2D pairs, and AWGN. Therefore, the interference of D2D pairs needs to be suppressed to protect the transmission rate of D2D users. We define the minimum required transmission rate as \(\overline {R_{d}}, d \in {\mathcal {D}}\) for each D2D pair, i.e., the transmission rate of any D2D pair should be larger than \(\overline {R_{d}}\). To simplify notation, we use 2TS and 3TS to denote the PNCaided twoway communication schemes requiring two time slots and three time slots, respectively.
3.1.1 Achievable rate of 2TS
where \(I_{d^{1},c}\phantom {\dot {i}\!}\) and \(I_{d^{2},c}\phantom {\dot {i}\!}\) denote the channel capacities from d ^{1} and d ^{2} to c, respectively, and \(I_{c,d^{1}}\phantom {\dot {i}\!}\) and \(I_{c,d^{2}}\phantom {\dot {i}\!}\) denote the channel capacities from c to d ^{1} and d ^{2}, respectively.
3.1.2 Achievable rate of 3TS
Substituting (13) and (14) into (12), we can obtain the achievable rate R _{ d }(x _{ c,d },y _{ c,d }) for the three time slots scheme.
3.2 Optimization problem formulation
where X and Y are the matrices of x _{ c,d } and y _{ c,d }, respectively.
The first constraint means that each D2D pair occupies only one cellular user’s resource block; the second and third constraints guarantee that each idle cellular user at most serves one D2D pair. The last constraint maintains the minimum required rate of each D2D pair. It is straightforward to show that this formulated objective function is not a concave function of x _{ c,d } and y _{ c,d }. Thus, it is a binary integer nonlinear and nonconvex programming problem, which can be reduction to the 0–1 Knapsack problem, a wellknown NPhard problem [33]. Therefore, the problem formulated in (16) is NP hard. However, the coalitional graph game framework can be used to solve the above problem in a distributed manner.
3.3 Distributed algorithm based on coalitional graph game
Introducing the D2D pairs cluster \(\mathcal {G}\) allows us to obtain the optimal resource allocation solution, and we let OP denote the optimal solution in [21]. However, it is important to point out that the cardinality of \(\mathcal {G}\) increases exponentially with the cardinality of \(\mathcal {D}\).
In this subsection, we propose a distributed clusterforming algorithm based on the coalitional graph game framework. Especially, we introduce the QoS constraints for each cellular user.
which represents the sum of all achievable rates of the whole coalition \(\mathcal {H}_{c}\). R _{ d } and \(R_{\overline d}\) can be defined in (5) and (12), respectively. Again, \(\overline {R_{d}}\) is the minimum rate requirement of cellular user d.
where λ is a random number uniformly distributed in (0,1].
Based on the above analysis and definitions, the proposed distributed algorithm is described in Algorithm 1. In Step 1, D2D pair d is selected randomly and placed into a coalition. Then, a potential switch coalition \(\mathcal {H}_{c^{s}}\) is randomly selected. Next, in Step 2, cooperative relay r _{ s } is selected to maximize the achievable sum rate of each coalition under the QoS constraints. Finally, in Step 3, when switch conditions (18) and (21) are satisfied, the switch operation is executed and \({\mathcal {H}_{\text {cur}}}\) is updated. It is proved in [13] that Algorithm 1 converges to the stable solutions with finitely many switch operations.
To analyze the computational complexity, we study the complexity of the distributed algorithm as a function of the number of cellular users C and D2D pairs D. As shown in Algorithm 1, the complexity of the distributed algorithm is determined by the predefined maximum number of iterations, which is proportional to the number of D2D pairs D. The complexity of each switch operation is O(C) in a largescale network and the overall complexity of Algorithm 1 is O(DC).
3.3.1 Convergence and stability
We will analyze the properties of convergence and stability for Algorithm 1. In terms of convergence, since the number of strategy vectors is finite and we aim to maximize each coalition’s utility, the switch operation will always terminate.
According to coalitional graph game theory and the concept of local Nash equilibrium for the coalitional graph game, the stability of the final strategy vector x _{fin} depends on whether a Nashstable network exists.
The convergence and the stability of our proposed switching algorithm are guaranteed as follows.
Theorem 1.
Starting from any initial strategy vector x _{ini}, the proposed distributed algorithm will always converge to a Nashstable strategy vector x _{fin}.
Proof.
In this paper, we focus on a cooperative coalition graph game, in which all players aim to improve the system sum rate cooperatively. This can be observed from the utility of each player and the Definition 1, which guarantees that each feasible local strategy can increase system sum rate. Therefore, the strategy vector x ^{∗}, which maximizes the system sum rate, is the Nash equilibrium. Due to the finite resource allocation strategies, we can obtain x ^{∗} from exhaustive search.
Each switch operation in Algorithm 1 will yield a new strategy vector after adopting a new strategy and changing existing strategies, and the maximum number of strategies for each D2D user is C−1 since there are only C cellular users in the system. Therefore, the number of strategy vectors for the given D2D users set \(\mathcal {D}\) is finite. Thus, the sequence of random switch operations will terminate with probability 1, and the system then converges to a final strategy vector x _{fin} after finitely many iterations with probability 1, which proves the convergence in probability for our proposed distributed algorithm.
Now, we prove the stability of the proposed algorithm by contradiction. Suppose the final strategy vector x _{fin} obtained from Algorithm 1 is not Nash stable. Then, there exists a D2D user \(i\in \mathcal {D}\) whose strategy is x _{ i }∈x _{fin}. When D2D user i adopts the new strategy \({x}^{\prime }_{i} \notin \textbf {x}_{\textit {fin}}\), U(x ^{′})>U(x _{ fin }), where \(\textbf {x}'=({x}^{\prime }_{i}, x_{i})\). According to Algorithm 1, D2D user i can perform a switch operation from x _{ i } to \({x}^{\prime }_{i}\), which contradicts the fact that x _{fin} is the final strategy vector. Thus, we have proved that the final network strategy vector x _{fin} resulting from Algorithm 1 must be Nash stable.
4 Performance evaluation
Main Parameters used in the system simulation
Parameter  Value 

The cell area for simulations  500 × 500 m 
Maximum transmit power of D2D transmitters  −10 dBm 
Noise figure of D2D device  9 dBm 
Subcarrier bandwidth  15 kHz 
Noise spectral density  −174 dBm/Hz 
Path loss exponent  3.7 
and \(f_{d}=\frac {1}{2}\). Substituting (22) and f _{ d } into (12), we can obtain the achievable rate R _{ d }(x _{ c,d },y _{ c,d }) for DIR. For brevity, we omit the expression for the achievable rate for the traditional transmission scheme.
4.1 Performance of MCG compared with OP
From Figs. 4 and 5, one can observe that OP2TS can increase the system sum rate compared to OPDIR by 50 %.
where R ^{(OP2TS)} and R ^{(MCG2TS)} denote the system sum rate obtained by the OP and MCG for the 2TS case, respectively, and v denotes the cardinality of \(\mathcal {D}\) or \(\mathcal {C}\). In Figs. 4 and 5, the average deviation between OP2TS and MCG2TS is about 5 %. These observations demonstrate that the performance of the proposed MCG2TS approaches to the optimal, regardless of the number of UEs and D2D pairs.
4.2 Performance of 2TS compared with 3TS and DIR
4.3 Characterize the impact of relaying
Next, to demonstrate the impact of the positions of the relays in the scenario with interference, the system sum rate is shown by varying the positions of cellular users with 4 cellular users and 8 D2D pairs in Fig. 9. One can observe that the system sum rate increases when the relays move to the region 4. The reason is that as relays move away from the source, the achievable rate of the worst link increases. We note that when the relays move towards the destination from the small region 4, the sum rate is determined by the transmission rate from the source to the relay. Therefore, the system sum rate decreases. As can be observed from Fig. 9, the maximal sum rate can be achieved when the relay is located in the region 4. The reason for this is that the relay is in the center between the source and the destination, which is consistent with the wellknown fact that symmetric sourcerelay and relaydestination channel conditions are important to increase the rate for twoway relaying channels. From the above results, we also observe that the 2TS scheme performs best under both two conditions. Therefore, we conclude that the relay position distribution is important to the system transmission rate.
4.4 Convergence rate
5 Conclusions
We have studied the problem of joint resource allocation and relay selection for network codingaided D2D communication networks. Based on the interference graph, a coalitional graph game framework was proposed to model this problem. Then, physical layer network codingaided D2D communication was used as a case study, and the achievable rates of the twoway transmission schemes were derived in the presence of interference. The system sum rate maximization problem for the addressed network was shown to be NP hard, and then a coalitional graph game framework was applied to solve the problem of joint resource allocation and relay selection. Then, based on this framework, a low complexity distributed algorithm was proposed, and the stability of the proposed algorithm was also studied. The provided extensive simulations demonstrate that the proposed game theoretic algorithm can outperform existing schemes.
Declarations
Acknowledgements
This work is supported by the National Nature Science Foundation of China under grant no. 61132002, 61301080, and 61201183, the National Basic Research Program of China under grant No. 2013CB329001, and the Creative Research Group Program from NSFC (61321061).
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Authors’ Affiliations
References
 Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update 2014–2019 White Paper. (2015). http://www.cisco.com/c/en/us/solutions/collateral/serviceprovider/visualnetworkingindexvni/white_paper_c11520862.html.
 L Lei, Z Zhong, C Lin, X Shen, Operator controlled devicetodevice communications in LTEadvanced networks. IEEE Wireless Commun.19(3), 96–104 (2012).View ArticleGoogle Scholar
 K Doppler, M Rinne, C Wijting, C Ribeiro, K Hugl, Devicetodevice communication as an underlay to LTEadvanced networks. IEEE Commun. Mag.47(12), 42–49 (2009).View ArticleGoogle Scholar
 G Fodor, E Dahlman, G Mildh, S Parkvall, N Reider, G Miklo’s, Z Tura’nyi, Design aspects of network assisted devicetodevice communications. IEEE Commun. Mag.50(3), 170–177 (2012).View ArticleGoogle Scholar
 R Ahlswede, N Cai, SYR Li, RW Yeung, Network information flow. IEEE Trans. Inf. Theory.46(4), 1204–1216 (2000).MathSciNetView ArticleMATHGoogle Scholar
 A Osseiran, K Doppler, C Ribeiro, M Xiao, M Skoglung, J Manssour, in Proc. ICTMobile Summit. Advances in devicetodevice communications and network coding for IMTAdvanced (Santander, Spain, 2009), pp. 1–8. https://www.researchgate.net/publication/228375506_Advances_in_DevicetoDevice_Communications_and_Network_Coding_for_IMTAdvanced.
 FHP Fitzek, J Heide, MV Pedersen, M Katz, Implementation of network coding for social mobile clouds. IEEE Signal Proc. Mag.30(1), 159–164 (2013).View ArticleGoogle Scholar
 P Pahlevani, M Hundebøll, MV Pedersen, D Lucani, H Charaf, FHP Fitzek, H Bagheri, M Katz, Novel concepts for devicetodevice communication using network coding. IEEE Commun. Mag.52(4), 32–39 (2014).View ArticleGoogle Scholar
 G Fodor, A Pradini, A Gattami, Devicetodevice communications and network coding: friends or foes?. IEEE Comsoc MMTC ELetter. 9(1), 33–35 (2014).Google Scholar
 A Pyattaev, O Galinina, S Andreev, M Katz, Y Koucheryavy, Understanding practical limitations of network coding for assisted proximate communication. IEEE J. Sel. Areas Commun.33(2), 156–170 (2015).View ArticleGoogle Scholar
 CH Yu, K Doppler, CB Ribeiro, O Tirkkonen, Resource sharing optimization for devicetodevice communication underlaying cellular networks. IEEE Trans. Wireless Commun.10(8), 2752–2763 (2011).View ArticleGoogle Scholar
 C Xu, L Song, Z Han, Q Zhao, X Wang, X Cheng, B Jiao, Efficiency resource allocation for devicetodevice underlay communication systems: a reverse iterative combinatorial auction based approach. IEEE J. Sel. Areas Commun.31(9), 348–358 (2013).View ArticleGoogle Scholar
 Y Li, D Jin, J Yuan, Z Han, Coalitional games for resource allocation in the devicetodevice underlaying cellular networks. IEEE Trans. Wireless Commun.13(7), 3965–3977 (2014).View ArticleGoogle Scholar
 Q Ye, M AlShalash, C Caramanis, JG Andrews, Distributed resource allocation in devicetodevice enhanced cellular networks. IEEE Trans. Commun.63(2), 441–454 (2015).View ArticleGoogle Scholar
 S Kadloor, R Adve, Relay selection and power allocation in cooperative cellular networks. IEEE Trans. Wireless Commun.9(5), 1676–1685 (2010).View ArticleGoogle Scholar
 TT Pham, HH Nguyen, HD Tuan, Relay assignment for maxmin capacity in cooperative wireless networks. IEEE Trans. Veh. Technol.61(5), 2387–2394 (2012).View ArticleGoogle Scholar
 X Zhang, X Tao, Y Li, N Ge, J Lu, in Communications (ICC), 2014 IEEE International Conference on. On optimal relay selection and subcarrier assignment in OFDMA relay networks with QoS guarantees (IEEE Communication SocietySydney, NSW, 2014), pp. 2660–2664.View ArticleGoogle Scholar
 X Lu, P Wang, D Niyato, A layered coalitional game framework of wireless relay network. IEEE Trans. Veh. Technol.63(1), 472–478 (2014).View ArticleGoogle Scholar
 Y Li, RHY Louie, B Vucetic, Relay selection with network coding in twoway relay channels. IEEE Trans. Veh. Technol.59(9), 4489–4499 (2010).View ArticleGoogle Scholar
 S Atapattu, Y Jing, H Jiang, C Tellambura, Relay selection schemes and performance analysis approximations for twoway networks. IEEE Trans. Commun.61(3), 987–998 (2013).View ArticleGoogle Scholar
 Y Zhao, Y Li, X Chen, N Ge, Joint optimization of resource allocation and relay selection for network coding aided devicetodevice communications. IEEE Commun. Lett.19(5), 807–810 (2015).View ArticleGoogle Scholar
 L Song, D Niyato, Z Han, E Hossain, Gametheoretic resource allocation methods for devicetodevice (D2D) communication. IEEE Wireless Commun.21(3), 136–144 (2014).View ArticleGoogle Scholar
 R Myerson, Graphs and cooperation in games. Math. Oper. Res.2(3), 225–229 (1977).MathSciNetView ArticleMATHGoogle Scholar
 W Saad, Z Han, M Debbah, A Hjorungnes, in Global Telecommunications Conference, 2008. Network formation games for distributed uplink tree construction in IEEE 802.16J networks (IEEE Communication SocietyNew Orleans, LO, 2008), pp. 1–5.Google Scholar
 W Saad, Z Han, M Debbah, A Hjorungnes, T Basar, Coalitional game theory for communication networks: a tutorial. IEEE Signal Proc. Mag.26(5), 77–97 (2009).View ArticleGoogle Scholar
 T Wang, L Song, Z Han, Coalitional graph games for popular content distribution in cognitive radio VANETs. IEEE Trans. Veh. Technol.62(8), 4010–4019 (2013).View ArticleGoogle Scholar
 G Angelopoulos, A Paidimarri, AP Chandrakasan, M Medard, in Communications (ICC), 2013 IEEE International Conference on. Experimental study of the interplay of channel and network coding in low power sensor applications (IEEE Communication SocietyBudapest, Hungary, 2013), pp. 5126–5130.View ArticleGoogle Scholar
 P Popovski, H Yomo, in Communications (ICC), 2007 IEEE International Conference on. Physical network coding in twoway wirless relay channels (IEEE Communication SocietyGlasgow, Scotland, 2007), pp. 707–712.View ArticleGoogle Scholar
 R Zhang, X Cheng, Q Yao, CX Wang, Y Yang, B Jiao, Interference graph based resource sharing schemes for vehicular networks. IEEE Trans. Veh. Technol.62(8), 4028–4039 (2013).View ArticleGoogle Scholar
 R Zhang, X Cheng, Y Yang, B Jiao, Interference graph based reource allocation (InGRA) for D2D communications underlaying cellular networks. IEEE Trans. Veh. Technol.64(8), 3844–3850 (2015).View ArticleGoogle Scholar
 RHY Louie, Y Li, B Vucetic, Practical physical layer network coding for twoway relay channels: performance analysis and comparison. IEEE Trans. Wireless Commun.9(2), 764–777 (2010).View ArticleGoogle Scholar
 Z Zhao, M Peng, Z Ding, W Wang, HH Chen, Denoiseandforward network coding for twoway relay MIMO systems. IEEE Trans. Veh. Technol.63(2), 775–788 (2013).View ArticleGoogle Scholar
 LA Wolsey, Integer Programming (WileyInterscience, Hoboken, 1998).MATHGoogle Scholar