Next Article in Journal
Real-Time, Deep Learning Based Wrong Direction Detection
Next Article in Special Issue
Two Optimization Algorithms for Name-Resolution Server Placement in Information-Centric Networking
Previous Article in Journal
Quartz-Enhanced Photoacoustic Detection of Ethane in the Near-IR Exploiting a Highly Performant Spectrophone
Previous Article in Special Issue
Performance Analysis of D2D Communication with Retransmission Mechanism in Cellular Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Social-Aware-Based Resource Allocation for NOMA-Enhanced D2D Communications

1
Jiangsu Key Laboratory of Wireless Communications, Nanjing University of Posts and Telecommunications, Nanjing 210003, China
2
Engineering Research Center of Health Service System Based on Ubiquitous Wireless Networks, Nanjing University of Posts and Telecommunications, Nanjing 210003, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(7), 2446; https://doi.org/10.3390/app10072446
Submission received: 28 February 2020 / Revised: 28 March 2020 / Accepted: 31 March 2020 / Published: 3 April 2020

Abstract

:
In mobile communication systems, device-to-device (D2D) communication and nonorthogonal multiple access (NOMA) are effective ways to improve spectrum efficiency and system throughput. In the NOMA-based D2D system, social relationship among D2D users is introduced to form D2D clusters, and NOMA is used for many-to-one communication in each D2D cluster. This paper proposes a joint channel allocation and power control algorithm which decomposes the resource allocation problem into two subproblems: channel allocation and power control. Matching theory is utilized to allocate channels for D2D clusters and sequential convex programming is applied to transform the optimization target to a convex problem before solving it via genetic algorithm. Simulation results indicate the superiority of our algorithm in improving the system throughput on the basis of meeting users’ needs for files.

1. Introduction

Recently, a growing mobile devices and multimedia applications have largely accelerated people’s requirement for low-latency and high-rate data transmission and aggravated core network pressure. Device-to-device (D2D) communication enables users to communicate through a direct connection without the base station, which effectively improves spectrum utilization and system throughput. Therefore, D2D communication is considered to be a promising technology for next-generation communication system [1,2].
In D2D communication, resource allocation has a huge impact on system performance which has caused widespread concern. In Reference [3], the Nash bargaining game was applied to D2D resource allocation in order to improve the throughput of users. In Reference [4], cooperative and noncooperative games were applied to allocate transmit power for D2D users. In Reference [5], a channel allocation mechanism for D2D users based on Kuhn–Munkres (KM) algorithm was proposed, then D2D users’ transmit power was optimized in order to reduce interference. In Reference [6], cellular, D2D, and relay users formed a student-project matching model to improve the system throughput. However, the above algorithms only consider one-to-one D2D communication with orthogonal multiple access (OMA). Many-to-one D2D communication has not been considered to further improve the system throughput through nonorthogonal multiple access (NOMA).
NOMA enables multiple users to communicate on the same channel. It further improves the spectrum utilization and increases the system throughput. Reference [7] studied resource allocation for D2D communication assisted by NOMA under the scenario of a D2D transmitter and multiple D2D receivers (one-to-many). It optimized D2D user’s throughput while ensuring cellular user’s quality of service (QoS). Reference [8] modeled the resource allocation under NOMA-based D2D as the Nash bargaining game and used the Karush–Kuhn–Tucker (KKT) condition to solve the power optimization problem. Reference [9] solved the joint channel and power optimization problem of D2D–NOMA system to reduce the system interference through optimizing the total transmit power. Reference [10] proposed a joint resource allocation method, which used KM algorithm and KKT conditions to achieve NOMA-enabled D2D resource allocation. Reference [11] used the differential evolution (DE) algorithm to allocate channels and power for D2D users under NOMA to achieve maximum energy efficiency while ensuring all users’ QoS. However, the above solutions have only considered one-to-many scenario, and have not considered D2D communication with multiple D2D transmitters and one D2D receiver (many-to-one).
In the practical environment, when a user needs to get some contents, he can request contents from multiple users around him to reduce the backhaul burden. At this time, many-to-one D2D communication could be implemented. However, one-to-many D2D communication is commonly studied in current papers and many-to-one D2D communication has not been studied in any paper as we know. This paper considers the cellular uplink network in which independent channels are allocated to different cellular users. D2D users are classified into D2D content requesters and D2D content providers. They form D2D clusters to communicate with NOMA by reusing cellular users’ uplink channels. In each D2D cluster, multiple D2D content providers send contents to a D2D content requester at the same time. We propose a joint optimization method which combines channel and power optimization while ensuring all the users’ QoS on each channel. The main contributions of this paper can be summarized as follows:
  • Social relationships among D2D users are considered. One D2D content requester form a D2D cluster with multiple D2D content providers according to social relationship and other factors. NOMA is used to realize many-to-one D2D communication. An optimization model is constructed to maximize the throughput of all D2D users who communicate through NOMA-enhanced D2D while ensuring all the users’ QoS on each channel.
  • D2D users communicate through cellular users’ uplink channels, and the many-to-one matching game is used to allocate channels for D2D clusters. We prove the convergence of the matching game and optimize the channel allocation problem for D2D users.
  • The successive convex approximation (SCA) method is used to convert the nonconvex optimization problem into a convex problem, and the convexity of the optimization problem is proved based on the negative semidefiniteness of the Hessian matrix. The genetic algorithm (GA) is used to optimize the transmit power of D2D content providers and the convergence of the algorithm is proved.
The remainder of this paper is organized as follows. Section 2 shows the system model. Section 3 defines the utility function of D2D content requesters to form D2D clusters, allocates cellular channels for D2D clusters, and optimizes the transmit power for D2D content providers in the cluster. We also prove that the algorithm can converge to a stable solution. Section 4 plots and analyzes the simulation results. Section 5 summarizes the whole paper.

2. System Model

System model in this paper is shown in Figure 1. M cellular users, N D2D content requesters and K D2D content providers are randomly distributed in the cell which centered in the base station (BS). Cellular users { C 1 , C 2 , , C M } communicate with the BS through dedicated channels { S C 1 , S C 2 , , S C M } . Each cellular user is assigned with a dedicated and orthogonal channel. Hence, it can be assumed that cellular user C m is assigned with the channel S C m without loss of generality. { D R 1 , D R 2 , , D R N } is the set of D2D content requesters (receivers) and { D T 1 , D T 2 , , D T K } is the set of D2D content providers (transmitters). There are F files that can be requested in the system. D2D content requesters ask for each file with a probability of p . The request file set can be represented as { r e q } n = { e s } s F . e s = 1 indicates F i l e s is requested, otherwise e s = 0 . Assume that all files are cached at the base station. D2D content providers cache each file with a probability q . The cache file set can be represented as { c a c h e } k = { e s } s F . e s = 1 indicates F i l e s is cached, otherwise e s = 0 .
A D2D content requester can obtain contents in two ways: (1) from D2D content providers around him through D2D communication. Through establishing D2D communication links with D2D content providers by reusing cellular user’s channel, he can get content files from users in proximity. (2) From the BS through traditional cellular communication. The D2D content requester would choose the first way preferentially in order to reduce the cellular traffic pressure. By selecting appropriate D2D content providers to form a D2D cluster, D2D content requester can receive several desired contents from multiple D2D content providers in the cluster simultaneously through NOMA. D2D content requester correctly demodulates the received content from different D2D content providers with serial interference cancellation (SIC) technology and NOMA transmission protocol. If none of the D2D content provider in proximity has cached any file the requester wants, D2D content requester should choose the second way to obtain contents. After D2D clusters have been formed, each D2D cluster reuses the uplink cellular channel for D2D communication. We assume that each cellular channel can be reused by multiple D2D clusters while each D2D cluster can only reuse one cellular channel. D2D communication can be established through coordinating interference between cellular users and D2D users. This paper does not consider cellular users’ power optimization problem, and the transmit power can be set to a fixed value.
Due to the fact that mobile devices are dominated by users, it is more reasonable to pair D2D users by considering social relationship between them. According to the system model in physical domain in Figure 1, a corresponding system model in social domain can be established as shown in Figure 2.
In practical network environment, channel conditions along with system interference can be described with physical domain. In this paper, D2D users in D2D clusters communicate by reusing the uplink cellular channels. Therefore, D2D content providers may cause interference to the BS and D2D content requesters may suffer interference from cellular users. We can represent the system model in physical domain as a graph G ( V p , E p ) , where V p indicates users and E p denotes the data transmission quality for channel. G ( V p , E p ) indicates if user’s communication requirement can be met in physical domain.
Users’ social attributes can be represented as social domain G ( V s , E s ) , where V s indicates the users corresponding to users in physical domain and E s denotes the social relationship between D2D users. Social relationship can be defined as S k , n , S k , n [ 0 , 1 ] . A larger S k , n means a closer social relationship and users should be more willing to cooperate with each other.

3. Social-Aware-Based Resource Allocation

The social-aware-based NOMA-enhanced D2D resource allocation proposed in this paper includes three steps: (1) form D2D clusters according to certain rules, (2) allocate channels for D2D clusters, and (3) optimize transmit power for D2D users in D2D clusters. The formation of clusters mainly considers the user’s content requirements, physical location, and social relationship with other users. When D2D clusters are formed, the many-to-one matching game is utilized to allocate channels for D2D users. After converting the nonconvex optimization problem to a convex problem via SCA, GA is performed to solve the D2D transmit power optimization.

3.1. Cluster Formation

N D2D content requesters are randomly distributed in the cell. They choose D2D content providers within their D2D communication range to join them and form D2D clusters. The utility function of D2D content requesters can be defined as
U D R n = ω 1 ( r e q n , k D n c a c h e k ) r e q n 1 + ω 2 k D n d k , n d t h | D n | + ω 3 k D n S k , n | D n |
where r e q n indicates the request content of D2D content requester D R n , c a c h e k indicates the cache content of D2D content provider D T k . d k , n represents the distance between D T k and D R n , whereas d t h indicates the D2D communication range. S k , n denotes the social relationship between D T k and D R n . ( ) represents the dot product between vectors and 1 represents the 1-norm of a vector (the sum of all elements in the vector). | | represents the number of elements in . The first term on the right side of Equation (1) indicates the degree of content matching between D T k and D R n . The second term indicates their physical distance factor and the third term indicates their social relationship factor. All influencing factors are normalized according to other D2D content providers in the cluster D n . ( ω 1 , ω 2 , ω 3 ) is the weighting factor which satisfies ω 1 + ω 2 + ω 3 = 1 .
According to the utility function in Equation (1), the D2D content requester selects the D2D content provider with the largest utility within the D2D communication range and adds it to his cluster until no D2D content provider nearby can increase his utility. If a D2D content provider is selected by several D2D content requesters, he will choose the one with the largest utility. After every D2D content requester has drawn up a shortlist for his cluster, the cluster formation is done. The proposed cluster formation algorithm is shown in Algorithm 1.
Algorithm 1 D2D cluster formation algorithm.
1: For n = 1: N
2:   For k = 1: K
3:     If d k , n < d t h
4:       Calculate the utility U D R n of D T k and D R n according to Equation (1)
5:     End if
6:   End for
7:   Compare and select D T k who obtains the largest U D R n to join D n
8:   If D T k has been selected by D R n
9:     Compare U D R n and U D R n , select the one with larger utility and restart the loop
10:   End if
11:   While Equation (1)
12:     For k = 1:K
13:       If d k , n < d t h
14:         Calculate the increased utility Δ U D R n , k according to Equation (1)
15:       End If
16:     End for
17:     If Δ U D R n , k > 0
18:       Compare and select D T k who obtains the largest Δ U D R n , k to join D n
19:       If D T k has been selected by D R n
20:        Compare U D R n and U D R n
21:        Select the one with larger utility and restart the loop
22:       End if
23:     Else
24:       Break
25:    End while
26: End for
27: Output: { D }

3.2. Optimization Model

After D2D clusters have been formed, users in the cell are divided into five categories: (1) cellular users whose channel resources can be reused by D2D users, (2) D2D content requesters in D2D clusters, (3) D2D content providers in D2D clusters, (4) D2D content requesters who failed to find a D2D content provider and can only request BS for content files via traditional cellular communication, and (5) unselected D2D content providers.
Assume that each cellular user is assigned with a dedicated channel. A D2D cluster can only reuse one cellular channel while each cellular channel can be reused by multiple D2D clusters. Therefore, the signal received by BS on the cellular channel S C m can be defined as
y m = P c g m , B x m + n k η m , n μ n , k P d k g k , B x k + ζ m
where P c and P d k represent the transmit power of the cellular user and the D2D content provider. g m , B and g k , B are the channel gain between cellular user C m and BS and D2D content provider D T k and BS, respectively. η m , n indicates whether D2D cluster D n reuse cellular channel S C m , i.e., S C m is reused by D n , η m , n = 1 ; otherwise η m , n = 0 . μ n , k indicates whether D T k belongs to D n , i.e., D T k belongs to D n , μ n , k = 1 ; otherwise μ n , k = 0 . x m and x k are the signals sent by C m and D T k . ζ m denotes the additive white Gaussian noise (AWGN) on S C m . Hence, the signal-to-interference-plus-noise-ratio (SINR) and data rate of C m are defined as
γ m = P c g m , B n k η m , n μ n , k P d k g k , B + σ 2
R m = log 2 ( 1 + γ m )
where σ 2 represents the noise power.
Considering that multiple D2D content providers send files to the D2D content requester simultaneously with NOMA in D2D clusters, the signal received by the D2D content requester can be defined as
y n = k μ n , k P d k g n , k x k + n k ρ n , n P d k g n , k x k + P c g m , n x m + ζ n
where g n , k and g m , n are the channel gain between D T k and D2D content provider D R n , C m , and D R n . ρ n , n represents whether D n and D n use the same cellular channel, i.e., D n and D n use the same cellular channel, ρ n , n = 1 ; otherwise ρ n , n = 0 . ζ n represents the AWGN at D R n .
Using SIC in NOMA, the optimal decoding order is the descending order of channel gain. Therefore, the SINR and data rate of D2D content provider D T k in D2D cluster D n can be defined as
γ d k = P d k g n , k k D n g n , k < g n , k P d k g n , k + n k ρ n , n μ n , k P d k g n , k + P c g m , n + σ 2
R d k = log 2 ( 1 + γ d k )
This paper maximizes D2D users’ throughput by optimizing the D2D channel and power allocation problem. Hence, the throughput maximization problem can be modeled as
max η , P d k   k { D } R d k ( η , P d k )
s . t . γ m γ m t h m
γ d k γ d t h k { D }
η m , n { 0 , 1 } m , n
m η m , n 1 n
n η m , n w m
μ n , k { 0 , 1 } n , k
ρ n , n { 0 , 1 } n
0 P d k P max k
where Equation (8) is the optimization goal we set to maximize the sum rate of all D2D content providers in D2D clusters. Constraint (9) limits the interference D2D users cause to cellular users and ensures the cellular users’ QoS. Constraint (10) ensures the D2D users’ QoS. Constraint (11) indicates η m , n should be either 1 or 0, representing whether reusing S C m . Constraint (12) represents each D2D cluster can be assigned with one cellular channel. Constraint (13) represents each cellular channel can be reused by no more than w D2D clusters in order to reduce interference on cellular channels and decrease computational complexity. Constraint (14) indicates μ n , k should be either 1 or 0, and it shows the members of the D2D cluster. Constraint (15) indicates ρ n , n should be either 1 or 0, indicating whether two D2D clusters reuse the same cellular channel. Constraint (16) limits D2D content providers’ transmit power.
Considering that the optimization problem is a nonconvex mixed integer nonlinear programming (MINLP) problem which is usually NP-hard and there is no systematic and effective method to directly solve such problems, we decompose the optimization problem into two subproblems to solve the D2D resource allocation problem. We solve the channel allocation problem by many-to-one matching game and power control problem by SCA and GA.

3.2.1. Channel Allocation

In this section, we assume that the transmit power of D2D content providers in the D2D cluster is a constant: P d k = P d k * , k { D } . However, if the D2D content provider has not been selected by any D2D content requester, then we have P d k = 0 , k { D } . Therefore, the channel allocation problem can be modeled as
P 1   :   max η   k { D } R d k ( η , P d k * )
s . t . γ m γ m t h m
γ d k γ d t h k { D }
η m , n { 0 , 1 } m , n
m η m , n 1 n
n η m , n w m
ρ n , n { 0 , 1 } n
The channel allocation problem can be constructed as a many-to-one matching problem. A D2D cluster can only access one cellular channel and a cellular channel can be reused by no more than w D2D clusters. The cellular channel chooses to accept or reject the D2D cluster according to its own preference. When all D2D clusters are stably matched or there exist unmatched D2D clusters, but they have been rejected by all cellular channels, the matching ends.
The D2D cluster set D and the cellular channel set S C form two sets of vertices in the matching game. The matching can be represented as ( D , S C , D , S C ) , where D = { n } n D indicates the preference relations of the D2D cluster over the cellular channel and S C = { m } m S C indicates the preference relations of the cellular channel over the D2D cluster.
Definition 1.
In the many-to-one matching game, a matching Ω is a function from the set   D S C into all subsets of   D S C , such that (1)   | Ω ( D n ) | = 1 , Ω ( D n ) S C and   Ω ( D n ) = ϕ if   D n does not match to any cellular channel; (2)   0 | Ω ( S C m ) | w , Ω ( S C m ) D and   Ω ( S C m ) = ϕ if   S C m does not match to any D2D cluster; and (3)   D n Ω ( S C m ) if only if   Ω ( D n ) = S C m .
During the matching game, D2D clusters and cellular channels constantly make new decisions. In order to characterize the behavior of each player, the concept of a preference list can be denoted as
P L = { P ( D 1 ) , , P ( D N ) , P ( S C 1 ) , P ( S C M ) }
where P ( D n ) represents the preference list of D2D clusters over cellular channels and P ( S C m ) represents the preference list of cellular channels over D2D clusters. The order in the preference list is based on the descending order of the utility of players. Therefore, the utility function has a great impact on forming the preference list.
For the D2D cluster, whether to reuse the certain cellular channel depends on his data rate on this channel. Therefore, the utility function of the D2D cluster can be defined as
U n = k D n R d k
It can be seen from Equation (25) that the utility of the D2D cluster is not only related to the matched cellular channel but also to other D2D clusters that reuse the same cellular channel. Therefore, the preference list of the D2D cluster can be established according to
( S C m , Ω ) n ( S C m , Ω ) U n ( S C m , Ω ) > U n ( S C m , Ω )
where U n ( S C m , Ω ) represents the utility of D n when reusing S C m in the matching Ω .
For the cellular channel, whether to accept a D2D cluster depends on the sum rate on the channel. Considering that the optimization goal of this paper is to maximize the throughput of all D2D users, we set the utility of the channel consistent with the optimization goal which is the sum rate of D2D clusters. Therefore, we can obtain the utility function of the channel as
U m = D n Ω ( S C m ) k D n R d k
It can be seen from Equation (27) that the utility of the channel is related to each D2D cluster accessing itself. Therefore, the preference list of the cellular channel can be established according to
( Ω ( S C m ) , Ω ) m ( Ω ( S C m ) , Ω ) U m ( Ω ( S C m ) , Ω ) > U m ( Ω ( S C m ) , Ω )
where Ω ( S C m ) represents the set of D2D clusters reusing S C m in the matching Ω . U m ( Ω ( S C m ) , Ω ) represents the utility of S C m when being reused by multiple D2D clusters in the matching Ω .
The utility of the D2D cluster can be calculated according to Equation (25) and sorted in descending order to obtain the preference list of the D2D cluster over the cellular channel. The utility of the channel can be calculated according to Equation (27) and sorted in descending order to obtain the preference list of the cellular channel. It can be seen from the two utility functions that as the matching pair changes, the decision of one D2D cluster will affect the decision of other D2D clusters, and the preference list of the cellular channel will also dynamically change. We can call this phenomenon as externality. Externality can affect the stable matching. Considering the concept of swap-matching proposed in [12], the stability of the matching game can be defined as
Definition 2.
Given a matching Ω ,   ( S C m , D n ) , ( S C m , D n ) Ω with   S C m , S C m S C ,   D n , D n D , such that no   Ω m , m n , n = { Ω / { ( S C m , D n ) , ( S C m , D n ) } } { ( S C m , D n ) , ( S C m , D n ) } ,   { Ω ( S C m ) } m n , n = { Ω ( S C m ) } / D n D n exists and,   { Ω ( S C m ) } m n , n = { Ω ( S C m ) } / D n D n meet   x { S C m , S C m , Ω ( S C m ) m n , n , Ω ( S C m ) m n , n } ,   U x ( Ω m , m n , n ) U x ( Ω ) , and   x { S C m , S C m , Ω ( S C m ) m n , n , Ω ( S C m ) m n , n } ,   U x ( Ω m , m n , n ) > U x ( Ω ) .
During the matching process, the D2D cluster can be a vacant position, so that the D2D cluster can access the cellular channel that still has vacancies. Definition 2 states that two conditions must be met during the swapping process: (1) the utility of all players involved in the swapping process cannot be reduced and (2) there must be a player whose utility will increase after swapping. A matching Ω is a stable matching if it meets Definition 2.
In order to find the stable matching, we should first initialize the channel allocation. The D2D cluster access the cellular channel which provides it with the highest data rate. If the cellular channel has been reused by w D2D clusters, w + 1 cluster rate should be compared and the cluster with the lowest data rate should find the other channel. When a user accesses the cellular channel and makes someone else on this channel unable to meet the QoS, the suboptimal cellular channel should be searched until all D2D clusters are matched to form an initial match Ω 0 . Then we swap the matching pair according to the utility function of all players until the matching is stable. The proposed channel allocation based on many-to-one matching game is described in Algorithm 2.
Algorithm 2 Channel allocation based on many-to-one matching game.
1: Initialization: D2D content providers’ transmit power P d k , initial matching Ω 0 .
2: While Equation (1)
3:    For I = 1: N
4:        Perform swap operations according to Equations (25) and (27)
5:        Update Ω 0
6:    End for
7:    If Ω 0 is stable
8:        Break
9:    End if
10: End while
11: Output: Ω *
Theorem 1.
The sum rate of D2D content providers in the D2D cluster is increased after swap operations.
Proof. 
Suppose that the matching Ω m , m n , n becomes Ω m , m n , n after the swap operation, which means U m ( Ω m , m n , n ) U m ( Ω m , m n , n ) and U m ( Ω m , m n , n ) U m ( Ω m , m n , n ) according to Definition 2. Because the utility of the channel is related to the sum rate of D2D clusters, we have
Ψ Ω Ω = U m ( Ω m , m n , n ) + U m ( Ω m , m n , n ) U m ( Ω m , m n , n ) U m ( Ω m , m n , n )     = k D R d k ( Ω m , m n , n ) k D R d k ( Ω m , m n , n ) 0
Theorem 2.
The final matching Ω * is stable after a limited number of iterations.
Proof. 
The number of D2D clusters and cellular channels in the cell is limited, and the number of D2D clusters allowed to access a cellular channel is limited. Therefore, the number of swap operations is limited. According to Theorem 1, the sum D2D rate is increased after each swap operation. After a limited number of iterations, the matching converges because there is an upper bound on the sum D2D rate due to the limited spectrum resources. In addition, assume that there still exists a swapping pair that can improve the utility of the users when the matching is stable. According to Definition 2, the user will definitely exchange the pairing to maximize the utility, which is contradictory to the assumption. □
The computational complexity of the many-to-one matching game mainly depends on the number of iterations when converging. However, it is uncertain that when the matching converges. Hence, we only discuss the upper bound of the computational complexity here. According to Theorem 1, the sum rate of D2D users is increased after each swap operation. Then, we can define the rate difference between the initial match and the final match as Ψ Ω 0 Ω * ; the minimum rate difference after each swap operation as Δ min . Therefore, the computational complexity of the matching game is O ( Ψ Ω 0 Ω * Δ min ) in the worst case.

3.2.2. Power Control

In this section, we need to solve the power allocation problem for D2D content providers according to the channel allocation result η * . The power allocation problem can be described as
P 2   :   max P d k   k { D } R d k ( η * , P d k )
s . t . γ m γ m t h m
γ d k γ d t h k { D }
0 P d k P max k
The optimization problem is a nonconvex NP-hard problem because of the interference between D2D clusters. So as to reduce the computational complexity, we use SCA [13] to transform the optimization problem into a convex problem, and find the suboptimal solution of it.
Equation (30) can be rewritten as
max P d k   k { D } log 2 ( 1 + γ d k )
The optimization problem conforms to the following inequality according to [14]:
log 2 ( 1 + γ d k ) α d k log γ d k + β d k
where α d k and β d k are defined as
α d k = γ ^ d k 1 + γ ^ d k
β d k = log ( 1 + γ ^ d k ) γ ^ d k 1 + γ ^ d k log γ ^ d k
The equality is satisfied when γ d k = γ ^ d k .
Then the lower bound of the optimization problem can be represented as
k { D } log 2 ( 1 + γ d k ) f ( P d k )
where f ( P d k ) can be defined as
f ( P d k ) = k { D } ( α d k log 2 γ d k + β d k )
The original optimization problem can be transformed into maximizing its lower bound. We set P d k = 2 P ^ d k in order to transform the optimization problem into a convex problem. The original optimization problem can be rewritten as
max P ^ d k   f ( 2 P ^ d k )
s . t . γ m γ m t h m
γ d k γ d t h k { D }
0 2 P ^ d k P max k
In the transformed optimization problem, both the optimization goal and the constraint conditions are formed by log-sum-exp function. As the log-sum-exp function is a convex structure [15], the transformed optimization problem is a convex problem. In order to prove the convexity of the optimization problem (Equation (40)), we can make the following proposition.
Proposition 1.
Assume that there are two D2D clusters in the cell reusing the same cellular channel. One D2D cluster contains one D2D content requester and one D2D content provider. They communicate via one-to-one D2D communication. The other contains one D2D content requester and two D2D content providers. They communicate via many-to-one D2D communication with NOMA inFigure 3. In such scenario, the optimization problem (Equation (40)) is convex.
Proof. 
The data rate of D2D content provider D T 1 , D T 2 , and D T 3 can be represented as
R 1 = log 2 ( 1 + P 1 g 1 P 2 g 2 + P 3 h 3 + P C h C 1 + σ 2 )
R 2 = log 2 ( 1 + P 2 g 2 P 3 h 3 + P C h C 1 + σ 2 )
R 3 = log 2 ( 1 + P 3 g 3 P 1 h 1 + P 2 h 2 + P C h C 3 + σ 2 )
According to previous analysis, the data rate can be rewritten as
R 1 = α 1 log 2 e P ^ 1 g 1 e P ^ 2 g 2 + e P ^ 3 h 3 + P C h C 1 + σ 2 + β 1
R 2 = α 2 log 2 e P ^ 2 g 2 e P ^ 3 h 3 + P C h C 1 + σ 2 + β 2
R 3 = α 3 log 2 e P ^ 3 g 3 e P ^ 1 h 1 + e P ^ 2 h 2 + P C h C 3 + σ 2 + β 3
In order to maximize the sum rate of all D2D content providers in D2D clusters, the optimization goal can be defined as
max P 1 , P 2 , P 3   R 1 + R 2 + R 3
We can obtain the Hessian matrix by seeking the second partial derivative of Equations (47)–(49) as
H 1 = [ 0 0 0 0 α 1 ln 2 ( e P 3 h 3 + P C h C 1 + σ 2 ) e P 2 g 2 ( e P 2 g 2 + e P 3 h 3 + P C h C 1 + σ 2 ) 2 α 1 ln 2 e P 2 g 2 e P 3 h 3 ( e P 2 g 2 + e P 3 h 3 + P C h C 1 + σ 2 ) 2 0 α 1 ln 2 e P 3 h 3 e P 2 g 2 ( e P 2 g 2 + e P 3 h 3 + P C h C 1 + σ 2 ) 2 α 1 ln 2 ( e P 2 g 2 + P C h C 1 + σ 2 ) e P 3 h 3 ( e P 2 g 2 + e P 3 h 3 + P C h C 1 + σ 2 ) 2 ]
H 2 = [ 0 0 0 0 0 α 2 ln 2 e P 3 h 3 0 0 α 2 ln 2 ( P C h C 1 + σ 2 ) e P 3 h 3 ( e P 3 h 3 + P C h C 1 + σ 2 ) 2 ]
H 3 = [ α 3 ln 2 ( e P 2 h 2 + P C h C 3 + σ 2 ) e P 1 h 1 ( e P 1 h 1 + e P 2 h 2 + P C h C 3 + σ 2 ) 2 α 3 ln 2 e P 1 h 1 e P 2 h 2 ( e P 1 h 1 + e P 2 h 2 + P C h C 3 + σ 2 ) 2 0 α 3 ln 2 e P 2 h 2 e P 1 h 1 ( e P 1 h 1 + e P 2 h 2 + P C h C 3 + σ 2 ) 2 α 3 ln 2 ( e P 1 h 1 + P C h C 3 + σ 2 ) e P 2 h 2 ( e P 1 h 1 + e P 2 h 2 + P C h C 3 + σ 2 ) 2 0 0 0 0 ]
We can draw the conclusion that the optimization goal is concave because H 1 0 , H 2 0 , H 3 0 . Moreover, Constraints (41) and (43) are linear function about e P d k . Constraint (42) has a similar structure to the optimization goal, and the convexity will not be proofed again. As a consequence, the optimization problem is convex. □
Since the optimization problem has been transformed into a convex problem, we can solve it via GA. GA searches for the optimal solution by simulating the natural evolutionary process. It finds the solution with the highest fitness through encoding, selection, crossover, and mutation. Because of the convexity of the optimization problem, we can use GA to solve the power allocation problem so as to reduce the time complexity and quickly obtain the optimal solution. The proposed power allocation method based on SCA and GA is described in Algorithm 3.
Algorithm 3 Power allocation based on SCA and GA.
1: Initialization: α d k ( 0 ) = 1 , β d k ( 0 ) = 0 , convergence threshold Δ , t = 0 .
2: Solve (40) via GA and obtain γ d k ( 0 )
3: While | γ d k ( t ) γ d k ( t 1 ) | Δ
4:     t = t + 1
5:     γ ^ d k = γ d k ( t 1 )
6:    Update α d k ( t ) and β d k ( t ) according to Equations (36) and (37)
7:    Solve Equation (40) via GA and obtain γ d k ( t )
8: End while
9: Output: P d k *
Theorem 3.
The power allocation algorithm based on SCA and GA can converge to the optimal strategy.
Proof. 
Assume the optimal solution is P d k ( t ) after t iterations, then we can obtain the following inequality:
k D R d k ( t ) = f ( P d k ( t ) ) < f ( P d k ( t + 1 ) ) k D R d k ( t + 1 )
The first equality holds because γ d k ( t ) is derived from α d k ( t ) and β d k ( t ) . The second inequality holds because f ( P d k ( t + 1 ) ) is the optimal solution of the t + 1 iteration. The third inequality holds because of the lower bound theory in Equation (38). Since the sum rate of D2D users in the cell is limited, the power allocation algorithm will finally converge. □
The computational complexity of the power allocation algorithm consists of two parts. The complexity of SCA depends on the number of iterations when it converges. In each iteration, the relevant parameters of each D2D content provider are calculated. Therefore, the complexity of SCA is O ( T 1 | D | ) . The complexity of GA mainly depends on the complexity of the fitness function O ( f ) . Assume that population size is Q , the maximum number of iterations is T 2 , and the complexity of GA is O ( T 2 Q O ( f ) ) . Therefore, the total computational complexity is O ( T 1 | D | + T 2 Q O ( f ) ) .

3.2.3. Joint Optimization Method for Resource Allocation

The resource allocation is a process of allocating channel and power for D2D users in a D2D cluster. The channel allocation and power control results are continuously iterated and eventually converge. According to the previous description, the joint optimization method for resource allocation is shown in Algorithm 4.
Algorithm 4 Joint optimization method for resource allocation.
1: Initialization: cellular users { C 1 , C 2 , , C M } , cellular channels { S C 1 , S C 2 , , S C M } , D2D content requesters { D R 1 , D R 2 , , D R N } , D2D content providers { D T 1 , D T 2 , , D T K } , D2D clusters { D 1 , D 2 , , D N } , and historical channel allocation { H i ( t ) } i N = .
2: While Equation (1)
3:    Perform channel allocation for D2D clusters in Algorithm 2
4:    If channel allocation results { H i ( t ) } i N
5:       Perform D2D power allocation in Algorithm 3 for P d k *
6:       Break
7:    Else
8:       Save the channel allocation result to { H i ( t ) } i N
9:       Perform D2D power allocation in Algorithm 3 for P d k *
10:    End if
11: End while
12: Output: ( η * , P d k * )
Theorem 4.
The joint resource allocation algorithm can converge to the optimal strategy.
Proof. 
It can be proved that there is a convergence solution for each subproblem according to the previous sections. Considering that the algorithms in each subproblem can ensure that the sum D2D rate will not decrease, and the resources in the cell are limited, we can draw a conclusion that the joint resource allocation algorithm which combines channel and power allocation will finally converge. □
The computational complexity of the joint resource allocation algorithm is composed of the complexity of the two subproblems. Assume that the maximum number of iterations between the two subproblems is G , the computational complexity of the channel allocation subproblem is O 1 , and the computational complexity of the power control subproblem is O 2 . The computational complexity of the joint resource allocation is O ( G ( O 1 + O 2 ) ) .

4. Simulation and Performance Analysis

This section investigates the performance of the proposed resource allocation algorithm with MATLAB. Figure 1 presents the system model, and the cell radius is 300 m. The channel gain is composed of large-scale fading and small-scale fading. The large-scale fading is based on distance loss and can be defined as κ d α , where d denotes the transmission distance and κ and α denote the possible fading and pathloss exponent. The small-scale fading is based on Rayleigh fading which follows C N ( 0 , 1 ) [16]. We list the simulation parameters in Table 1.
Figure 4 shows the impact of the number of D2D content requesters on the average number of swap operations in the matching game. As the number of D2D content requesters increases, the number of swap operations also increases, which indicates that the number of swap-blocking pairs in the system increases. In the meanwhile, the number of cellular channels could affect the number of D2D users who can access the cellular channel. Hence, the number of potential swap-blocking pairs increases as the number of cellular channels increases. Therefore, both the cellular channel and D2D content requester could affect the swap operations. When there are 6 D2D content requesters and 5 cellular channels in the cell, the average number of swap operations is about 15. As a consequence, the matching game converges with a small number of iterations.
Figure 5 shows the impact of the number of D2D content providers on the accessed probability of D2D content requesters. D2D accessed probability indicates that D2D users communicate through D2D mode, which depends on two conditions: (1) the D2D content requester succeeds in finding D2D content providers within the D2D communication range, and filters them into the D2D cluster and (2) the D2D cluster communicates by reusing the cellular channel, and each user’s QoS must be ensured on the cellular channel. If any user’s QoS cannot be ensured, the D2D content requester in this D2D cluster cannot communicate in the D2D mode. It can be seen from Figure 5 that as the number of D2D content providers increases, the D2D accessed probability continues to increase while the trend slows down. This is because D2D content providers correspond to the first condition we proposed. As the number of D2D content providers increases, the possibility of forming the D2D clusters increases. Hence, the D2D accessed probability increases. However, it becomes saturated for D2D content requesters with more and more D2D content providers, and more D2D content providers are less meaningful for clustering. As a consequence, the curve tends to be flat. Moreover, the number of cellular channels corresponds to the second condition. The more cellular channels, the more channels D2D users can choose, which also has a certain impact on D2D accessed probability.
Figure 6 illustrates the impact of the number of D2D content providers on the D2D accessed probability. Along with the increase of the number of D2D content requesters, the channel resources are relatively decreased, and the interference between D2D clusters is relatively increased. Hence, the D2D accessed probability is continuously decreased. When the channel resources are sufficient, the impact of D2D content requesters on the accessed probability is much smaller than when the channel resources are scarce.
Figure 7 shows the impact of the number of D2D content providers on the D2D throughput. As the number of D2D content providers increases, D2D throughput continues to increase, but the trend slows. The more D2D content providers in the cell, the more users may exist in the D2D cluster. Hence, the D2D throughput can be further increased with NOMA. However, with more users in the D2D cluster, the interference between them also becomes more complicated. Moreover, there are certain standards when D2D users are clustered. As the number of D2D content providers in the cell increases, the number of users in the cluster may increase as well, but it will not increase infinitely. As users in the cluster gradually become saturated, D2D throughput increases with a slower trend. Moreover, the more cellular channels represent the more available channel resources. More D2D clusters can access in the cellular channel with small interference when channel resources are sufficient. Therefore, more the cellular channels, the faster the D2D throughput increases.
Figure 8 illustrates the impact of the number of D2D content requesters on the D2D throughput. Along with the increase of the number of D2D content requesters, the D2D throughput continues to increase. It can be seen that D2D throughput increases at a faster rate when the channel resources are sufficient because of the relatively small interference. Moreover, our algorithm is obviously superior to that in Reference [17] because of the one-to-one D2D communication Reference [17] uses. Since [17] did not consider NOMA in D2D groups, the throughput is lower than that in this paper, and our advantage becomes larger with more D2D users.

5. Conclusions

We propose a D2D cluster resource allocation method which combines channel allocation and power control in this paper. First, we present the system model of cellular users and D2D users which includes D2D content requesters and D2D content providers. The utility function of D2D content requesters is defined combined with the social relationship among D2D users in order to form D2D clusters. D2D users in D2D clusters communicate by reusing cellular channels. NOMA is used in D2D clusters for many-to-one communication. In order to ensure the QoS of each user, we also set the SINR threshold. Second, the resource allocation problem is decoupled into two subproblems. Many-to-one matching game is used to allocate channels for D2D clusters. The nonconvex optimization problem is transformed into a convex problem which can be solved by GA through SCA. Hence, we can easily obtain the optimal D2D transmit power. We also discuss the convergence and the computational complexity, respectively. Finally, we set historical channel allocation set and obtain the stable solution through iterating over the two subproblems. The simulation results show the superiority of our algorithm for it can significantly improve the system throughput. Moreover, by considering social relationship between users, we can obtain a more realistic resource allocation scheme.

Author Contributions

W.G. conceived the proposal of the paper, analyzed the data, and performed experiments using MATLAB. Q.Z. provided guidance, key suggestions, and finalized the paper. All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by the National Natural Science Foundation of China (61971239 and 61631020) and Postgraduate Research and Practice Innovation Program of Jiangsu Province (KYCX19_0945).

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Yan, J.; Wu, D.; Wang, R. Socially aware trust framework for multimedia delivery in D2D cooperative communication. IEEE Trans. Multimed. 2019, 21, 625–635. [Google Scholar] [CrossRef]
  2. Xiao, S.; Zhou, X.; Yuan-Wu, Y.; Li, G.Y.; Guo, W. Energy-efficient relay placement and power allocation for two-hop D2D relay networks. In Proceedings of the 2017 IEEE International Conference on Communications (ICC), Paris, France, 21–25 May 2017; pp. 1–6. [Google Scholar]
  3. Liu, T.; Wang, G. Resource allocation for device-to-device communications as an underlay using nash bargaining game theory. In Proceedings of the International Conference on Information and Communication Technology Convergence (ICTC), Jeju, Korea, 28–30 October 2015; pp. 366–371. [Google Scholar]
  4. Baniasadi, M.; Maham, B.; Kebriaei, H. Power control for D2D underlay cellular communication: Game theory approach. In Proceedings of the International Symposium on Telecommunications (IST), Tehran, Iran, 27–28 September 2016; pp. 314–319. [Google Scholar]
  5. Baniasadi, M.; Maham, B.; Kebriaei, H. Resource management in device-to-device underlaying cellular network. In Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC), New Orleans, LA, USA, 9–12 March 2015; pp. 1631–1636. [Google Scholar]
  6. Cao, L.; Yao, F.; Zhao, H.; Zhang, J. Distributed resource allocation for D2D-enabled two-tier cellular networks with channel uncertainties. In Proceedings of the IEEE International Conference on Communication Systems (ICCS), Shenzhen, China, 14–16 December 2016; pp. 1–5. [Google Scholar]
  7. Pan, Y.; Pan, C.; Yang, Z.; Chen, M. Resource Allocation for D2D Communications Underlaying a NOMA-Based Cellular Network. IEEE Wirel. Commun. Lett. 2018, 7, 130–133. [Google Scholar] [CrossRef] [Green Version]
  8. Zheng, H.; Hou, S.; Li, H.; Song, Z.; Hao, Y. Power allocation and user clustering for uplink MC-NOMA in D2D underlaid cellular networks. IEEE Wirel. Commun. Lett. 2018, 7, 1030–1033. [Google Scholar] [CrossRef]
  9. Yoon, T.; Nguyen, T.H.; Nguyen, X.T.; Yoo, D.; Jang, B.; Nguyen, V.D. Resource allocation for NOMA-Based D2D systems coexisting with cellular networks. IEEE Access 2018, 6, 66293–66304. [Google Scholar] [CrossRef]
  10. Alemaishat, S.; Saraereh, O.A.; Khan, I.; Choi, B.J. An efficient resource allocation algorithm for D2D communications based on NOMA. IEEE Access 2019, 7, 120238–120247. [Google Scholar] [CrossRef]
  11. Li, B.; Zhang, H.; Ji, H.; Li, X. Energy-aware resource allocation scheme for device-to-device communication based on NOMA underlaying cellular networks. In Proceedings of the IEEE 17th International Conference on Communication Technology (ICCT), Chengdu, China, 27–30 October 2017; pp. 513–517. [Google Scholar]
  12. Di, B.; Song, L.; Li, Y. Sub-channel assignment, power allocation, and user scheduling for non-orthogonal multiple access networks. IEEE Trans. Wirel. Commun. 2016, 15, 7686–7698. [Google Scholar] [CrossRef] [Green Version]
  13. Marks, B.R.; Wright, G.P. Technical note—A general inner approximation algorithm for nonconvex mathematical programs. Oper. Res. 1978, 26, 681–683. [Google Scholar] [CrossRef]
  14. Papandriopoulos, J.; Evans, J.S. Scale: A low-complexity distributed protocol for spectrum balancing in multiuser dsl networks. IEEE Trans. Inf. Theory 2009, 55, 3711–3724. [Google Scholar] [CrossRef]
  15. Boyd, S.; Vandenberghe, L. Convex Optimization; Cambridge Univ. Press: Cambridge, UK, 2004. [Google Scholar]
  16. Sawyer, N.; Smith, D.B. Flexible resource allocation in device-to-device communications using stackelberg game theory. IEEE Trans. Commun. 2019, 67, 653–667. [Google Scholar] [CrossRef]
  17. Yuan, Y.; Yang, T.; Xu, Y.; Feng, H.; Hu, B. A cascaded channel-power allocation for D2D underlaid cellular networks using matching theory. In Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC), Barcelona, Spain, 15–18 April 2018; pp. 1–6. [Google Scholar]
Figure 1. System model (physical domain).
Figure 1. System model (physical domain).
Applsci 10 02446 g001
Figure 2. System model (social domain).
Figure 2. System model (social domain).
Applsci 10 02446 g002
Figure 3. System model of Proposition 1.
Figure 3. System model of Proposition 1.
Applsci 10 02446 g003
Figure 4. Average swap operations for different numbers of cellular channels with different D2D content requesters.
Figure 4. Average swap operations for different numbers of cellular channels with different D2D content requesters.
Applsci 10 02446 g004
Figure 5. Accessed probability for different numbers of cellular channels with different numbers of D2D content providers, N = 5 .
Figure 5. Accessed probability for different numbers of cellular channels with different numbers of D2D content providers, N = 5 .
Applsci 10 02446 g005
Figure 6. Accessed probability for different numbers of cellular channels with different numbers of D2D content requesters, K = 200 .
Figure 6. Accessed probability for different numbers of cellular channels with different numbers of D2D content requesters, K = 200 .
Applsci 10 02446 g006
Figure 7. Sum rate of D2D clusters for different numbers of cellular channels with different numbers of D2D content providers, N = 5 .
Figure 7. Sum rate of D2D clusters for different numbers of cellular channels with different numbers of D2D content providers, N = 5 .
Applsci 10 02446 g007
Figure 8. Sum rate of D2D clusters for different numbers of cellular channels with different numbers of D2D content requesters, K = 200 .
Figure 8. Sum rate of D2D clusters for different numbers of cellular channels with different numbers of D2D content requesters, K = 200 .
Applsci 10 02446 g008
Table 1. Simulation parameters.
Table 1. Simulation parameters.
ParameterValue
Cellular radius300 m
Maximum D2D communication range50 m
Noise power−174 dBm
Number of files50
Request probability0.2
Cache probability0.5
Social relationship[0, 1]
Weighting factor(0.6, 0.2, 0.2)
Maximum D2D clusters on cellular channel3
Cellular transmit power23 dBm
Maximum D2D transmit power20 dBm
Cellular SINR threshold1.8 dB
D2D SINR threshold1.8 dB
Possible fading0.01
Path loss exponent4

Share and Cite

MDPI and ACS Style

Gu, W.; Zhu, Q. Social-Aware-Based Resource Allocation for NOMA-Enhanced D2D Communications. Appl. Sci. 2020, 10, 2446. https://doi.org/10.3390/app10072446

AMA Style

Gu W, Zhu Q. Social-Aware-Based Resource Allocation for NOMA-Enhanced D2D Communications. Applied Sciences. 2020; 10(7):2446. https://doi.org/10.3390/app10072446

Chicago/Turabian Style

Gu, Wenying, and Qi Zhu. 2020. "Social-Aware-Based Resource Allocation for NOMA-Enhanced D2D Communications" Applied Sciences 10, no. 7: 2446. https://doi.org/10.3390/app10072446

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop