Skip to main content

A coalitional graph game framework for network coding-aided D2D communication

Abstract

The application of device-to-device (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 coding-aided 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 coding-aided D2D communication. Finally, the performance of the proposed transmission scheme is evaluated through extensive simulations.

1 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 ever-increasing demand for local area services, device-to-device (D2D) communication has been proposed as a key component for next-generation 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 [610]. 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 coding-aided 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 co-channel interference into the system. Existing studies in this area have mainly focused on the problems of resource allocation for direct D2D communication [1114]. For example, Xu et al. [12] proposed a reverse iterative combinatorial auction-based approach to allocate resources between cellular and D2D UEs. Li et al. [13] considered large-scale networks and proposed a coalitional formation game-based 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 [1518]. Kadloor et al. [15] formulated a convex optimization problem for relay selection and designed a heuristic algorithm to achieve close-to-optimal relay selection. Pham et al. [16] formulated relay assignment as a mixed-integer 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 two-way relaying transmissions was analyzed in [19] and [20], but these existing works did not consider co-channel interference which is severe in spectrum-sharing schemes. Our previous work [21] only evaluated the performance of intra-session network coding with a limited number of D2D pairs. In conclusion, joint spectral resource allocation and relay selection for network coding-aided D2D communication is still an open problem and needs to be investigated under large-scale 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 graph-based communication networks, this model can be used to solve certain problems through distributed problem [2426]. 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.

In this paper, we propose a coalitional graph game framework for modelling the problem of joint spectrum allocation and relay selection in network coding-aided D2D communication networks. Suppose that D2D communication shares uplink spectral resources instead of downlink ones, where the BS does not cause strong interference for D2D transmissions in the cell [13, 14]. In such a system, in order to maximize system transmission rates, multiple D2D pairs may use the spectrum occupied by regular cellular users. Different D2D pairs are assisted by a single relay by using orthogonal channel resources, such as different frequency channels. The resource allocation of cellular users has a significant impact on the potential gains of relay-aided D2D transmissions, and relay selection has an important influence on the resource allocation scheme. Therefore, we need to use game theory to model the interactions between the two problems, resource allocation and relay selection. In this paper, we first use an interference graph to depict the interference relationships among communication links. Then, we establish a coalitional graph game framework to model joint resource allocation and relay selection in network coding-aided D2D communication networks, by using the interference graph. Finally, we use physical layer network coding-aided D2D communication as a case study to demonstrate the applications of our proposed framework. Our contributions are summarized as follows.

  • We propose a coalitional graph game framework, which solves the problem of joint resource allocation and relay selection in network coding-aided 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 sum-rate. 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 PNC-aided 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

Consider a set of D2D pairs sharing the resources of cellular users. The direct links from the sources to the destinations are ignored for two-way transmissions due to the half duplexing constraint at the nodes. The relays assist D2D pairs and cellular users to speed up their data transmissions with the implementation of network coding. Network coding includes two coding strategies: intra-session network coding and inter-session network coding [8]. Intra-session network coding encodes the packets within a single flow, while inter-session network coding encodes the packets from different data flows. Intra-session network coding increases the content availability and link reliability with low signaling, while inter-session network coding can improve the spectral efficiency. The network coding-aided D2D communication schemes can be summarized as follows:

  • Intra-session 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. Intra-session 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].

    Fig. 1
    figure 1

    Different network coding-aided D2D communication schemes. a intra-session network coding for content dissemination, b intra-session network coding for cooperative transmission, c inter-session network coding requiring three time slots, and d inter-session network coding requiring two time slots

  • Intra-session 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 re-encoded 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].

  • Inter-session 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 C1C2 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.

  • Inter-session 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 denoise-and-forward (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 self-interference and then recover the packets of their partners.

In order to maximize the overall achievable transmission rates, we need to consider the signal-to-interference-plus-noise ratio (SINR) in each time slot. The SINR of any terminal j receiving the signal from terminal i can be expressed as follows:

$$ {\gamma_{j}} = \frac{{{P_{i}}\rho_{i,j}^{- \alpha }{{\left| {{h_{0}}} \right|}^{2}}}}{{{P_{{\text{int}},j}} + {N_{0}}}}, $$
((1))

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 path-loss 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 coding-aided D2D communication networks.

2.2 Interference graph model

In this subsection, we construct the interference graph to represent the resource-sharing 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 coding-aided 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.

We use an undirected weighted interference graph model \({G} = (\mathcal {V},\mathcal {E})\) to depict the interference due to spectrum sharing in the system. The vertices \(\mathcal {V}\) denote the communication links of the regular cellular users, the D2D pairs and the relays, while the edges \(\mathcal {E}\) represent spectrum-sharing relationships among the communication links. \(\mathcal {E}\) consists of \(e_{d_{i},c_{j}}, d_{i} \in \mathcal {D}, c_{j} \in \mathcal {C}\), \(e_{r_{i},c_{j}}, r_{i} \in \mathcal {R}, c_{j} \in \mathcal {C}\) and \(e_{d_{i},r_{i}}, d_{i} \in \mathcal {D}, r_{i} \in \mathcal {R}\). \(e_{d_{i},c_{j}}\) equals to 1 if a D2D pair d i and a cellular user c j occupy the same spectrum, i.e., co-channel interference occurs. \(e_{r_{i},c_{j}}\) and \(e_{d_{i},r_{i}}\) are defined similarly. The values of \(e_{d_{i},c_{j}}\), \(e_{r_{i},c_{j}}\) and \(e_{d_{i},r_{i}}\) are determined by resource-sharing policies used in D2D communication networks. As illustrated in Fig. 2, we construct the interference graph for the resource usage relationships. For example, c 1, d 1, and d 2 occupy the same spectral resource and the values of mutual edges equal to 1. c 2, d 3, and d 4 occupy the same spectral resource and the values of mutual edges equal to 1. The values of other edges are equal to 0, i.e., there is no interference, and hence are omitted in the interference graph for clarity. For the network coding-aided D2D communication, relays r 1 and r 3 occupy the same spectral resources as c 1 and c 2, respectively, while r 2 does not assist any transmissions.

Fig. 2
figure 2

Illustration of the interference graph for network coding-aided D2D communication underlying cellular networks

2.3 Coalitional graph game framework

From the above system model and interference analysis, we aim to use network coding to improve the achievable rate of all cellular links and D2D links. For the problem of joint resource allocation and relay selection, each D2D user decides whether to occupy the spectral resource of one cellular user. Then, each relay selects the appropriate transmission link to maximize the overall network rate. Therefore, the utility of each D2D user is dependent on \(G(\mathcal {V}, \mathcal {E})\). From the above analysis, the coalitional graph game for network coding-aided D2D communication networks is defined by a triple \(\mathcal {G} = \left (\mathcal {N}, \mathcal {X}, \mathcal {U} \right)\), and the formulation of this game is as follows:

  • 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

Denote the strategy of each D2D user or relay \(n \in \mathcal {N}\) by \(x_{n} \in \mathcal {X}_{n}\), where \(\mathcal {X}_{n} = \{1,2,\dots,C\}\) is a set of all feasible strategies of D2D user or the relay. x n can be determined by the spectrum-sharing policies. For example, x n =j indicates that D2D pair or relay n occupies the same spectral resource with cellular user c j . For our formulated coalition graph game model, let x n =(x 1,…,x n−1,x n+1,…,x N ) be the set of strategies chosen by other D2D users or relays except player n. We also define x=(x 1,x 2,…,x N )=(x n ,x n ) to denote the strategy vector and \(\mathcal {X}\) is the set of all possible x. Given the other users’ strategies x n , user n wants to choose a strategy \(x_{n} \in \mathcal {X}_{n}\) to maximize its network utility, i.e.,

$$\max\limits_{x_{n} \in \mathcal{X}_{n}}U_{n}(x_{n},x_{-n}),\forall n \in \mathcal{N},$$

where U n (x n ,x n ) can be obtained from the following definition.

2.3.2 Utility function

In the system, positive utility is defined to represent the sum rate of network coding-aided communication links, which is related to the strategies of the regular cellular users, D2D users, and relays. Therefore, the utility function is an interference graph-based 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 bi-directional 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 ij, 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.

Suppose the strategy of player \(n \in \mathcal {N}\) is x n =c j , which indicates that player n occupies the same spectrum with cellular user \(c_{j} \in \mathcal {C}\). According to the above definitions, player n is in coalition \(\mathcal {H}_{c_{j}}\). Then, the utility for player n, denoted by U n (G), is defined to be proportional to the achievable sum rate of all communication links in \(\mathcal {H}_{c_{j}}\) and is given by

$$ U_{n}(G) = \mathcal{R}_{c_{j}}, $$
((2))

where \(\mathcal {R}_{c_{j}}\) is the sum rate of cellular links and D2D links in the coalition \(\mathcal {H}_{c_{j}}\). Let \(\overline {d}\) denote the communication link which is chosen by relay \(r_{c_{j}}\) to assist, which can be the link of either the cellular user or a D2D pair. \(\overline {d}\) is decided by solving the following formulated optimization problem:

$$ {\overline d = \mathop{\arg \max }\limits_{d} ({\mathcal{R}}_{c_{j}})}, $$
((3))

which means that relay \(r_{c_{j}}\) will try to maximize the sum rate of coalition \(\mathcal {H}_{c_{j}}\). Therefore, \(\mathcal {R}_{c_{j}}\) can be derived as follows:

$$ \begin{aligned} \mathcal{R}_{c_{j}} = &R_{\overline d}+ \log_{2}\left(1+\gamma_{c_{j}}\right)\\ &+\sum\limits_{d \in \mathcal{D}_{c_{j}} \backslash \{\overline d\}}{\log_{2}\left(1+\gamma_{d}\right)}, \end{aligned} $$
((4))

where \(R_{\overline d}\) is determined by the specific transmission scheme of network coding-aided 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 resource-sharing 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 coding-aided D2D communication networks. As described in Fig. 1, there are four typical application scenarios for D2D communication underlying cellular networks. In the case of intra-session 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 coding-aided two-way 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 PNC-aided two-way 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 two-way D2D data transmissions. PNC can significantly improve the system performance for two-way wireless transmissions [28]. Louie et al. [31] analyzed PNC-aided two-way transmissions using the amplify-and-forward (AF) protocol. Zhao et al. [32] proposed a denoise-and-forward network coding scheme for two-way relaying systems.

In D2D communication underlying cellular networks, co-channel interference exists between relays and D2D pairs as a result of spectrum sharing. The AF protocol may amplify this interference at the relay, which decreases the system performance. Therefore, PNC with the decode-and-forward (DF) strategy is considered in this paper. As illustrated in Fig. 3, the D2D pair \(\left ({d_{1}^{1}},{d_{1}^{2}}\right)\) occupies the spectral resource of c 1, and the D2D pair \(\left ({d_{2}^{1}},{d_{2}^{2}}\right)\) and \(\left ({d_{3}^{1}},{d_{3}^{2}}\right)\) occupy the same spectral resource of c 2. c 1 and c 2 act as the relay for \(\left ({d_{1}^{1}},{d_{1}^{2}}\right)\) and \(\left ({d_{2}^{1}},{d_{2}^{2}}\right)\), respectively, which communicate via PNC-aided two-way D2D transmissions. Some D2D pairs may work under direct two-way D2D mode, i.e., their transmissions are not helped by any relays. For example, \(\left ({d_{3}^{1}},{d_{3}^{2}}\right)\) communicate with each other through the direct transmission scheme.

Fig. 3
figure 3

Illustration of the resource-sharing relationships for PNC-aided two-way D2D communication underlying cellular networks. There are 2 idle cellular users, u 1 and u 2, and 3 D2D pairs, d 1, d 2, and d 3

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 two-way 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 PNC-aided two-way 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 PNC-aided two-way communication schemes requiring two time slots and three time slots, respectively.

3.1.1 Achievable rate of 2TS

In this section, \(d \in \mathcal {D}\) denotes each D2D pair and \(c \in \mathcal {C}\) denotes each cellular user. For brevity, we omit the subscripts for d and c. Let \({R_{d}^{1}}\) denote the achievable rate of PNC-aided two-way D2D d(d 1,d 2) communication with the idle cellular user c over two time slots, and each transmission phase has the same time duration. We adopt the two-time-slot transmission scheme of denoise-and-forward (DNF) in [28, 31] and derive the interference relationships among D2D pairs. As complicated interference exists in D2D communication networks, we consider an upper bound on the achievable rate for PNC-aided two-way D2D transmissions. The upper bound on \({R_{d}^{1}}\) is determined by the weaker link and can be obtained as follows [28]:

$$ {{R_{d}^{1}} = \frac{\text{min}\left\{I_{d^{1},c}, I_{d^{2},c}\right\}\text{min}\left\{I_{c,d^{1}}, I_{c,d^{2}}\right\}}{\text{min}\left\{I_{d^{1},c}, I_{d^{2},c}\right\}+\text{min}\left\{I_{c,d^{1}}, I_{c,d^{2}}\right\}}}, $$
((5))

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.

The resource allocation vector x determines the interference relationships, which have significant impact on the achievable rate of PNC-aided two-way D2D transmission using the DNF scheme [28]. For brevity, we use the binary assignment variables x c,d and y c,d to denote the resource allocation policy. x c,d =1 indicates that D2D pair d uses the resource block of cellular user c; otherwise, x c,d =0. y c,d =1 indicates that idle cellular user c assists D2D pair d; otherwise, y c,d =0. The spectrum-sharing strategy x d =c means x c,d =1. When x r =c, relay r will assist the associated D2D pairs of cellular user c. Then, the value of y c,d can be determined by maximizing the sum rate of the associated D2D pairs of c. Therefore, when strategy vector x of D2D pairs is determined, x c,d and y c,d can also be obtained. For example, x d =c is equal to x c,d =1. From (1), \(I_{{d^{1}},c}\phantom {\dot {i}\!}\), \(I_{{d^{2}},c}\phantom {\dot {i}\!}\), \(I_{c,{d^{1}}}\phantom {\dot {i}\!}\), and \(I_{c,{d^{2}}}\phantom {\dot {i}\!}\) can be obtained as follows:

$$ \left\{ {\begin{array}{*{20}{l}} {{I_{{d^{1}},c}} = {{\log }_{2}}\left(1 + \frac{{{P_{{d^{1}}}}\rho_{{d^{1}},c}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}}}{{\sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}} {{x_{c,{d'}}}{P_{{d'}}}\rho_{{d'},c}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}} + {N_{0}}}}\right);}\\ {{I_{{d^{2}},c}} = {{\log }_{2}}\left(1 + \frac{{{P_{{d^{2}}}}\rho_{{d^{2}},c}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}}}{{\sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}} {{x_{c,{d'}}}{P_{{d'}}}\rho_{{d'},c}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}} + {N_{0}}}}\right);}\\ {{I_{c,d^{1}}} = {{\log }_{2}}\left(1 + \frac{{{P_{c}}\rho_{c,{d^{1}}}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}}}{{\sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}} {{x_{c,{d'}}}{P_{{d'}}}\rho_{{d'},d^{1}}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}} + {N_{0}}}}\right);}\\ {{I_{c,d^{2}}} = {{\log }_{2}}\left(1 + \frac{{{P_{c}}\rho_{c,{d^{2}}}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}}}{{\sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}} {{x_{c,{d'}}}{P_{{d'}}}\rho_{{d'},d^{2}}^{-\alpha}{\left| {{h_{0}}} \right|}^{2}} + {N_{0}}}}\right).} \end{array}} \right. $$
((6))

When \(d(d^{1},d^{2}) \in \mathcal {D}\) works under the direct D2D transmission model, the interference is from cellular user c and other D2D pairs that are assigned the same RB. We obtain the interference for D2D receiver d as follows:

$$ {P_{{\text{int}},d'}} = {P_{nc,d'}} + \sum\limits_{{d^{0}} \in {\mathcal{D}}\backslash \left\{ d, d' \right\}} {{x_{c,d^{0}}}{P_{{d^{0}}}}\rho_{{d^{0}},d}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}}}, $$
((7))

where P nc,d is the interference power incurred by d for the case of PNC-aided D2D transmissions requiring two time slots. For brevity, we define the interference from D2D pairs except d as follows:

$$ P_{\text{int,dir}} = \sum\limits_{{d^{0}} \in {\mathcal{D}}\backslash \left\{ d, d' \right\}} {{x_{c,d^{0}}}{P_{{d^{0}}}}\rho_{{d^{0}},d}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}}}. $$
((8))

In the first and second cooperative phases of PNC-aided two-way D2D communication, the sum interference observed by d, respectively, can be expressed as follows:

$$ \left\{ \begin{array}{l} {P_{\text{int}1,d}} = \sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}}\!\!\!\!\!\! {\delta \left({{y_{c,{d'}}} - 1} \right) {{P_{{d'}}}\rho_{d',d}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}} + P_{\text{int,dir}}} }\\ {P_{\text{int}2,d}} = \sum\limits_{{d'} \in {\mathcal{D}}\backslash \left\{ d \right\}}\!\!\!\!\!\! {\delta \left({{y_{c,{d'}}} - 1} \right) {{P_{c}}\rho_{c,d}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}} + P_{\text{int,dir}}} } \end{array} \right.. $$
((9))

P int1,d indicates the interference of D2D users, while P int2,d denotes the interference of relays and D2D users. Note that the two transmission phases of PNC-aided two-way D2D communication happen at different time slots and have the same time duration. Thus, the achievable transmission rate of D2D pair d can be expressed as follows:

$$ \left\{ {\begin{array}{*{20}{l}} {{R_{d1}} = {{\log }_{2}}\left({1 + \frac{{{P_{d}}\rho_{dd}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}}}}{{{P_{\text{int}1,d}} + {N_{0}}}}} \right)}\\ {{R_{d2}} = {{\log }_{2}}\left({1 + \frac{{{P_{d}}\rho_{dd}^{-\alpha}{{\left| {{h_{0}}} \right|}^{2}}}}{{{P_{\text{int}2,d}} + {N_{0}}}}} \right)}\\ {{R_{d}^{2}} = \left({1 - f} \right)\cdot{R_{d1}} + f\cdot{R_{d2}}} \end{array}} \right., $$
((10))

where \(f = \sum \limits _{{d'} \in {\mathcal {D}}\backslash \left \{ d \right \}} {\delta \left ({{y_{c,{d'}}} - 1} \right){f_{d'}}}\), and f d can be obtained as follows [28]:

$$ {f_{d} = \frac{\text{min}\left\{I_{c,d^{1}}, I_{c,d^{2}}\right\}}{\text{min}\left\{I_{d^{1},c}, I_{d^{2},c}\right\}+\text{min}\left\{I_{c,d^{1}}, I_{c,d^{2}}\right\}}}, $$
((11))

which denotes the ratio of the time duration for the cellular user c. Combining (5) and (10), we obtain the achievable transmission rate of d, denoted by R d (x c,d ,y c,d ), as follows:

$$ {R_{d}(x_{c,d}, y_{c,d})} = \delta \left({{y_{c,d}} - 1} \right){R_{d}^{1}} + \delta \left({{y_{c,d}}} \right){R_{d}^{2}}. $$
((12))

3.1.2 Achievable rate of 3TS

In this subsection, we derive the maximal rate of PNC-aided two-way D2D communication requiring three time slots. Specifically, the direct transmission links between D2D pair are neglected. When three time slots are used, \({R_{d}^{1}}\) can be obtained as follows [28]:

$$ {{R_{d}^{1}} = \frac{I_{{d^{1}},c}I_{{d^{2}},c}\text{min}\left\{I_{c,d^{1}},I_{c,d^{2}}\right\}}{I_{{d^{1}},c}I_{{d^{2}},c}+\left(I_{{d^{1}},c}+I_{{d^{2}},c}\right)\text{min}\left\{I_{c,{d^{1}}},I_{c,{d^{2}}}\right\}}}, $$
((13))

and f d can be obtained as follows:

$$ {f_{d}} = \frac{I_{c,d^{1}}+I_{c,d^{2}}}{I_{{d^{1}},c}I_{{d^{2}},c}+\left(I_{{d^{1}},c}+I_{{d^{2}},c}\right)\text{min}\left\{I_{c,{d^{1}}},I_{c,{d^{2}}}\right\}}. $$
((14))

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

Based on the above analysis, we observe that R d depends on the assignment variables of resource allocation and relay selection, x c,d and y c,d , \(c \in \mathcal {C}\), \(d \in \mathcal {D}\). The sum rate, denoted by R sum(X,Y), can be derived as follows:

$$ {R_{\text{sum}}}(\textbf{X},\textbf{Y}) = \sum\limits_{c \in {\mathcal{C}}} {\sum\limits_{d \in {\mathcal{D}}} {{x_{c,d}}{R_{d}(x_{c,d}, y_{c,d})}} }, $$
((15))

where X and Y are the matrices of x c,d and y c,d , respectively.

In this paper, we focus on maximizing the sum rate of D2D communication. Thus, we formulate joint resource allocation and relay selection in the PNC-aided two-way D2D communication as the following optimization problem:

$$ \begin{array}{l} \mathop{\max}\limits_{{x_{c,d}},{y_{c,d}}} {R_{\text{sum}}}(\textbf{X},\textbf{Y})\\ s.t.\left\{ {\begin{array}{*{20}{l}} {{x_{c,d}},{y_{c,d}} \in \{ 0,1\},\forall c \in {\mathcal{C}}}, d \in {\mathcal{D}};\\ {\sum\limits_{c \in {\mathcal{C}}} {{x_{c,d}}} \le 1,\forall d \in {\mathcal{D}}};\\ {\sum\limits_{d \in {{\mathcal{D}}_{c}}} {{y_{c,d}}} \le 1,\forall c \in {\mathcal{C}}};\\ {{y_{c,d}} = 0,\forall d \notin {{\mathcal{D}}_{c}},c \in {\mathcal{C}}};\\ R_{d}(x_{c,d},y_{c,d}) \ge \overline{R_{d} }. \end{array}} \right. \end{array} $$
((16))

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 non-linear and non-convex programming problem, which can be reduction to the 0–1 Knapsack problem, a well-known NP-hard 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 cluster-forming algorithm based on the coalitional graph game framework. Especially, we introduce the QoS constraints for each cellular user.

The strategy vector x of the cellular users partitions the cellular users into different coalitions. Consider the coalitions \(\mathcal {H}_{c}\) sharing the spectral resource with cellular user \(c \in \mathcal {C}\). Recall that the sum rate of this coalition \(\mathcal {R}(\mathcal {H}_{c})\) is given as follows:

$$ \left\{ {\begin{array}{*{20}{l}} {{\mathcal{R}}({{\mathcal{H}}_{c}}) = \sum\limits_{d \in {\mathcal{H}_{c}} \backslash \{\overline d\}} {{R_{d}}}} + R_{\overline d},\\ {\overline d = \mathop{\arg \max}\limits_{d} ({\mathcal{R}}({{\mathcal{H}}_{c}}))},\\ R_{d} \ge \overline{R_{d}}, \end{array}} \right. $$
((17))

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.

One of the two conditions for D2D pair d to change its strategy from c to c s, i.e., x d =c becomes x d =c s, is given by

$$ {U_{d}}({{G}_{c^{s}}}) > {U_{d}}({{G}_{c}}), $$
((18))

where U d (G c ) denotes the utility of all coalitions when d shares the spectral resource with c, and \({U_{d}}({G_{c^{s}}})\phantom {\dot {i}\!}\) denotes the utility of all coalitions when d changes its strategy from c to c s. From the coalition game framework, we obtain that

$$ \begin{aligned} {U_{d}}({{G}_{c^{s}}}) & - {U_{d}}({{G}_{c}}) \\ &= {\mathcal R}'({{\mathcal{H}}_{c}})+{\mathcal R}'({{\mathcal{H}}_{c^{s}}}) - {\mathcal{R}}({{\mathcal{H}}_{c}})-{\mathcal{R}}({{\mathcal{H}}_{c^{s}}}), \end{aligned} $$
((19))

which indicates that we only need to calculate the utilities of \({\mathcal {H}}_{c}\) and \({\mathcal {H}}_{c^{s}}\) instead of all coalitions. Following those steps similar to the ones in [13], when the constraint is not satisfied, we define the acceptance probability as follows:

$$ {\phi_{c,{c^{s}}}} = \exp \left({\frac{{U_{d}({G_{{c^{s}}}}) - U_{d}({G_{c}})}}{{{T_{n}}}}} \right), $$
((20))

where \({T_{n}} = \frac {{{T_{0}}}}{{\log (n - 1)}}\) with T 0 as a constant value and n is the current times of switch operations. By using this acceptance probability, the second condition for a switch operation is given by

$$ \lambda < {\phi_{c,{c^{s}}}}, $$
((21))

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 large-scale 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 Nash-stable 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 Nash-stable 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

We consider the performance evaluation in a scenario with a cell area of 500 × 500 m 2. In the simulation, the communication channels and the main parameters of the D2D pairs are set the same as in [12]. The main simulation parameters are depicted in Table 1. In order to verify the relay performance, the idle cellular users are distributed in the center region 100 × 500 m 2 uniformly. Let DIR denote the traditional four time slots transmission scheme. We compare the optimal solution through cluster method OP with our proposed modified distributed algorithm based on the coalitional graph game framework.

Table 1 Main Parameters used in the system simulation

In order to better evaluate the performance of PNC-aided D2D communication, we also show in the following the achievable rate of DIR requiring four time slots. Specifically, when four time slots are used, \({R_{d}^{1}}\phantom {\dot {i}\!}\) can be obtained as follows:

$$ {R_{d}^{1}} = \frac{\text{min}\left\{I_{d^{1},c}, I_{d^{2},c}, I_{c,d^{1}}, I_{c,d^{2}}\right\}}{4}, $$
((22))

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

The system sum rates achieved by the proposed algorithm and the comparable schemes are shown as a function of the number of UEs and D2D pairs in Figs. 4 and 5, respectively. OP-2TS and OP-DIR denote the optimal performance of the 2TS scheme and the traditional transmission scheme [21]. MCG-2TS and MCG-DIR denote the performance of MCG in the 2TS case and the direct transmission case.

Fig. 4
figure 4

System sum rate as a function of the number of cellular users comparing with OP

Fig. 5
figure 5

System sum rate as a function of the number of D2D pairs comparing with OP

From Figs. 4 and 5, one can observe that OP-2TS can increase the system sum rate compared to OP-DIR by 50 %.

To verify the convergence of our proposed MCG algorithm, we define the average deviation between the results obtained by MCG and OP as follows:

$$ {\Delta_{ad}} = \frac{1}{8}\sum\limits_{v = 1}^{8} {\frac{{{R^{\text{(OP-2TS)}}}(v) - {R^{\text{(MCG-2TS)}}}(v)}}{{{R^{\text{(OP-2TS)}}}(v)}}} $$
((23))

where R (OP-2TS) and R (MCG-2TS) 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 OP-2TS and MCG-2TS is about 5 %. These observations demonstrate that the performance of the proposed MCG-2TS approaches to the optimal, regardless of the number of UEs and D2D pairs.

4.2 Performance of 2TS compared with 3TS and DIR

Next, to compare the performance of 2TS and 3TS with DIR, the system sum rate is shown as a function of the number of cellular users in Fig. 6 with 8 D2D pairs, and the system sum rate is shown as a function of the number of D2D pairs in Fig. 7 with 8 cellular users. Increasing the number of idle UEs indicates that more spectral resources are available to D2D pairs and also there are more potential relays. But increasing the number of D2D pairs means that more interference is introduced to the network, which causes performance degradation. As can be observed from the two figures, 2TS outperforms all other schemes. In Fig. 7, when the number of D2D pairs is 8, 2TS outperforms 3TS and DIR by about 45 and 100 %, respectively. Since the 2TS mechanism uses the minimal number of time slots, it achieves the best spectral efficiency and therefore the largest sum rate compared with the other schemes.

Fig. 6
figure 6

System sum rate as a function of the number of cellular users with 8 D2D pairs

Fig. 7
figure 7

System sum rate as a function of the number of D2D pairs with 8 cellular users

4.3 Characterize the impact of relaying

To characterize the impact of relays, the system sum rate achieved by the proposed scheme is shown by varying the position of relays in Fig. 8 with 4 idle cellular users and 8 D2D pairs. In order to evaluate the impact of the relay position on the system sum rate, we divide the region from the source to the destination into 7 equal small regions, which are indexed by 1–7 from left to right as depicted in Fig. 8. The relays in the region 1 are nearest to the source users, while the relays in the region 7 are nearest to the destination users.

Fig. 8
figure 8

A snapshot of 4 idle cellular users and 8 D2D pairs

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 well-known fact that symmetric source-relay and relay-destination channel conditions are important to increase the rate for two-way 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

In order to show the convergence rate of our proposed algorithm, we set the number of cellular users to be 8 and 16 and vary the number of D2D pairs N from 4–20. The average number of switch operations required for Algorithm 1 to converge to the final resource allocation vector x fin is shown in Fig. 10. As the number of D2D pairs increases, the average number of switch operations increases. In the case of 16 cellular users, which provide 16 selections for each D2D user, the average number of switch operations increases linearly in order to find the final solution by our algorithm, while exhaustive search needs 16N iterations to find the optimal solution. Therefore, compared with exhaustive search, the use of the proposed algorithm can decrease the computational complexity significantly.

Fig. 9
figure 9

System sum rate as a function of the position of relays with interference among 4 idle cellular users and 8 D2D pairs

Fig. 10
figure 10

System convergence rate in terms of the average number of iterations as a function of the number of D2D pairs

5 Conclusions

We have studied the problem of joint resource allocation and relay selection for network coding-aided D2D communication networks. Based on the interference graph, a coalitional graph game framework was proposed to model this problem. Then, physical layer network coding-aided D2D communication was used as a case study, and the achievable rates of the two-way 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.

References

  1. Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update 2014–2019 White Paper. (2015). http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/white_paper_c11-520862.html.

  2. L Lei, Z Zhong, C Lin, X Shen, Operator controlled device-to-device communications in LTE-advanced networks. IEEE Wireless Commun.19(3), 96–104 (2012).

    Article  Google Scholar 

  3. K Doppler, M Rinne, C Wijting, C Ribeiro, K Hugl, Device-to-device communication as an underlay to LTE-advanced networks. IEEE Commun. Mag.47(12), 42–49 (2009).

    Article  Google Scholar 

  4. G Fodor, E Dahlman, G Mildh, S Parkvall, N Reider, G Miklo’s, Z Tura’nyi, Design aspects of network assisted device-to-device communications. IEEE Commun. Mag.50(3), 170–177 (2012).

    Article  Google Scholar 

  5. R Ahlswede, N Cai, S-YR Li, RW Yeung, Network information flow. IEEE Trans. Inf. Theory.46(4), 1204–1216 (2000).

    Article  MathSciNet  MATH  Google Scholar 

  6. A Osseiran, K Doppler, C Ribeiro, M Xiao, M Skoglung, J Manssour, in Proc. ICT-Mobile Summit. Advances in device-to-device communications and network coding for IMT-Advanced (Santander, Spain, 2009), pp. 1–8. https://www.researchgate.net/publication/228375506_Advances_in_Device-to-Device_Communications_and_Network_Coding_for_IMT-Advanced.

  7. 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).

    Article  Google Scholar 

  8. P Pahlevani, M Hundebøll, MV Pedersen, D Lucani, H Charaf, FHP Fitzek, H Bagheri, M Katz, Novel concepts for device-to-device communication using network coding. IEEE Commun. Mag.52(4), 32–39 (2014).

    Article  Google Scholar 

  9. G Fodor, A Pradini, A Gattami, Device-to-device communications and network coding: friends or foes?. IEEE Comsoc MMTC E-Letter. 9(1), 33–35 (2014).

    Google Scholar 

  10. 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).

    Article  Google Scholar 

  11. C-H Yu, K Doppler, CB Ribeiro, O Tirkkonen, Resource sharing optimization for device-to-device communication underlaying cellular networks. IEEE Trans. Wireless Commun.10(8), 2752–2763 (2011).

    Article  Google Scholar 

  12. C Xu, L Song, Z Han, Q Zhao, X Wang, X Cheng, B Jiao, Efficiency resource allocation for device-to-device underlay communication systems: a reverse iterative combinatorial auction based approach. IEEE J. Sel. Areas Commun.31(9), 348–358 (2013).

    Article  Google Scholar 

  13. Y Li, D Jin, J Yuan, Z Han, Coalitional games for resource allocation in the device-to-device underlaying cellular networks. IEEE Trans. Wireless Commun.13(7), 3965–3977 (2014).

    Article  Google Scholar 

  14. Q Ye, M Al-Shalash, C Caramanis, JG Andrews, Distributed resource allocation in device-to-device enhanced cellular networks. IEEE Trans. Commun.63(2), 441–454 (2015).

    Article  Google Scholar 

  15. S Kadloor, R Adve, Relay selection and power allocation in cooperative cellular networks. IEEE Trans. Wireless Commun.9(5), 1676–1685 (2010).

    Article  Google Scholar 

  16. TT Pham, HH Nguyen, HD Tuan, Relay assignment for max-min capacity in cooperative wireless networks. IEEE Trans. Veh. Technol.61(5), 2387–2394 (2012).

    Article  Google Scholar 

  17. 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.

    Chapter  Google Scholar 

  18. X Lu, P Wang, D Niyato, A layered coalitional game framework of wireless relay network. IEEE Trans. Veh. Technol.63(1), 472–478 (2014).

    Article  Google Scholar 

  19. Y Li, RHY Louie, B Vucetic, Relay selection with network coding in two-way relay channels. IEEE Trans. Veh. Technol.59(9), 4489–4499 (2010).

    Article  Google Scholar 

  20. S Atapattu, Y Jing, H Jiang, C Tellambura, Relay selection schemes and performance analysis approximations for two-way networks. IEEE Trans. Commun.61(3), 987–998 (2013).

    Article  Google Scholar 

  21. Y Zhao, Y Li, X Chen, N Ge, Joint optimization of resource allocation and relay selection for network coding aided device-to-device communications. IEEE Commun. Lett.19(5), 807–810 (2015).

    Article  Google Scholar 

  22. L Song, D Niyato, Z Han, E Hossain, Game-theoretic resource allocation methods for device-to-device (D2D) communication. IEEE Wireless Commun.21(3), 136–144 (2014).

    Article  Google Scholar 

  23. R Myerson, Graphs and cooperation in games. Math. Oper. Res.2(3), 225–229 (1977).

    Article  MathSciNet  MATH  Google Scholar 

  24. 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 

  25. 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).

    Article  Google Scholar 

  26. 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).

    Article  Google Scholar 

  27. 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.

    Chapter  Google Scholar 

  28. P Popovski, H Yomo, in Communications (ICC), 2007 IEEE International Conference on. Physical network coding in two-way wirless relay channels (IEEE Communication SocietyGlasgow, Scotland, 2007), pp. 707–712.

    Chapter  Google Scholar 

  29. R Zhang, X Cheng, Q Yao, C-X Wang, Y Yang, B Jiao, Interference graph based resource sharing schemes for vehicular networks. IEEE Trans. Veh. Technol.62(8), 4028–4039 (2013).

    Article  Google Scholar 

  30. 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).

    Article  Google Scholar 

  31. RHY Louie, Y Li, B Vucetic, Practical physical layer network coding for two-way relay channels: performance analysis and comparison. IEEE Trans. Wireless Commun.9(2), 764–777 (2010).

    Article  Google Scholar 

  32. Z Zhao, M Peng, Z Ding, W Wang, HH Chen, Denoise-and-forward network coding for two-way relay MIMO systems. IEEE Trans. Veh. Technol.63(2), 775–788 (2013).

    Article  Google Scholar 

  33. LA Wolsey, Integer Programming (Wiley-Interscience, Hoboken, 1998).

    MATH  Google Scholar 

Download references

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).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yong Li.

Additional information

Competing interests

The authors declare that they have no competing interests.

Rights and permissions

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.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhao, Y., Li, Y., Ding, Z. et al. A coalitional graph game framework for network coding-aided D2D communication. EURASIP J. Adv. Signal Process. 2016, 2 (2016). https://doi.org/10.1186/s13634-015-0295-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s13634-015-0295-x

Keywords