Open Access
This article is

- freely available
- re-usable

*Future Internet*
**2020**,
*12*(1),
8;
https://doi.org/10.3390/fi12010008

Article

A Novel Resource Allocation Scheme in NOMA-Based Cellular Network with D2D Communications

Engineering Optimization and Smart Antenna Institute, Northeastern University, Qinhuangdao 066004, Hebei, China

^{*}

Author to whom correspondence should be addressed.

Received: 6 November 2019 / Accepted: 31 December 2019 / Published: 6 January 2020

## Abstract

**:**

Non-orthogonal multiple access (NOMA) has become a promising technology for 5G. With the support of effective resource allocation algorithms, it can improve the spectrum resource utilization and system throughput. In this article, a new resource allocation algorithm in the NOMA-enhanced cellular network with device-to-device (D2D) communications is proposed, in which we use two new searching methods and an optimal link selection scheme to maximize the system throughput and limit the interferences of the NOMA-based cellular network. In the proposed joint user scheduling, tree-based search power allocation and link selection algorithm, we simplify the solving process of previous methods and set up the optimization function, which does not need to be derivable. With successive interference cancellation (SIC) technology, we give conditions for the D2D devices accessing into the network. We also propose a suboptimal scheme to schedule cellular users and D2D devices into multiple subchannels, which reduces the complexity of the exhaustive search method. Through consistent tree-based searching for the power allocation coefficients, we can get the maximum arithmetic average of the system sum rate. Meanwhile, for the existence of the part of interferences from larger power users which can be canceled by the SIC in NOMA systems, the search options are decreased for increasing the search rate of the power allocation algorithm. Moreover, we propose a distance-aware link selection scheme to guarantee the quality of communications. In summary, the proposed algorithm can improve the system throughput, has a low complexity cost and potentially increases spectral utilization. Numerical results demonstrate that the proposed algorithm achieves a higher data transmission rate than some of the traditional methods and we also investigate the convergence and the computational complexity cost of the joint algorithm.

Keywords:

non-orthogonal multiple access (NOMA); device-to-device (D2D); successive interference cancellation (SIC); user scheduling; tree-based search power allocation algorithm## 1. Introduction

Non-orthogonal multiple access (NOMA) has recently attracted attention from academic communities as a novel energy and spectrum efficient technology due to a higher network capacity compared with orthogonal multiple access (OMA) in the fifth generation (5G) environment [1]. NOMA networks are expected to deliver real-time contents such as monitoring and multimedia streams, and non-real-time contents such as web browsing, images, messaging, and file transfers for users [2,3]. Multi-carrier NOMA (MC-NOMA) along with sparse code multiple access (SCMA) and pattern division multiple access (PDMA) have been comprehensively investigated on the basic principles and enabling schemes in [4]. There are also many articles concerning NOMA. Some works [5,6] pay close attention to the quality of service (QoS) parameters such as SINR of channels and capacity to try to promote the spectral efficiency performance. In [7], with the concept of MIMO-NOMA, some key technical problems in the system are summarized. Moreover, an important issue of successive interference cancellation (SIC) is put forward and the future research directions are presented in this area. In some essays [8,9], to improve QoS, a NOMA radio network with simultaneous wireless information and power transfer is studied under a non-linear energy harvesting model. In [10], a method for predefining a minimum transmission rate for each user to guarantee QoS is focused on. In [11,12], a new secrecy transmission paradigm and an advanced resource allocation algorithm for uplink and downlink NOMA systems are proposed respectively. The energy efficiency (EE) is studied in a NOMA enabled heterogeneous cloud radio access network (H-CRAN) in [13] in which key technologies in 5G network are discussed to be properly implemented that can be applied in NOMA H-CRANs to improve EE. Most of the algorithms mentioned above show that NOMA technology is capable of satisfying the requirements of the 5G wireless communication standard from different aspects, especially in promoting EE and spectrum efficiency (SE) and supporting more network links.

In addition to NOMA, device-to-device (D2D) communication has been an essential way to alleviate the upcoming traffic pressure on the near future networks. Owing to the rapid development of radio resource management algorithms and new peer discovery methods, D2D communication has made a significant contribution to increasing SE and EE of a 3GPP (3rd Generation Partnership Project) Long Term Evolution system by sharing spectrum resources with cellular users [14]. By using D2D technology, cellular network users can directly communicate with each other, and thus it offloads data traffic of the base station (BS) in a more and more dense cellular network. Recently, many works have suggested combing D2D with other technologies in different environments [15,16]. From the following literatures, we can also draw a conclusion that D2D is closely integrated with other communication technologies [17,18,19,20,21,22]. In [17], a novel approach for discovering indoor peers is proposed which is proved to be highly energy efficient and interference limited. In addition, many papers are concerned with applying D2D to full-duplex relay systems [18,19]. In [20], game theory is used in joint power allocation and channel selection under D2D communication scenarios. A priority based joint power control and resource allocation algorithm is proposed for enhancing EE through SIC technology under D2D-aided heterogeneous networks [21]. In [22], both beamforming and interference cancellation (IC) strategies were investigated to improve performance optimization of the D2D enhanced cellular network assisted by a two-way decode-and-forward relay node.

The promising applications of NOMA technology in D2D communications have been put forward to further improve the potential benefits of EE and SE from the algorithms mentioned above and many models with excellent technologies have been presented [23,24,25,26,27,28,29]. In [23,24] models of NOMA-based D2D communications for cooperative relaying systems are proposed. In [25,26] the systems are also combined with energy harvesting. Unlike the traditional concept of “D2D pair”, the concept of “D2D group” in which several D2D receivers are capable of receiving information from one D2D transmitter is presented in [27]. In [28], the resource allocation problem of a NOMA-based cellular network is modeled as a Lagrangian function with KKT conditions, in which there are only two D2D power parameters. Different from the matching method of channel assignment for D2D users in [27], the optimization problem is solved by the sub-gradient method [29]. Through the above analysis, we note that NOMA can provide a fair transmission condition with Pareto optimality in power allocation from the game theory and D2D communications are effective means to improve the network capacity through increasing the number of accessed user devices.

However, the studies mentioned above rely on perfectly transforming the utility functions into convex programming problems. Moreover, they always need a large number of iterations and derivations to get the results. This directly increases the computational complexity cost, and therefore require powerful computing equipment which needs to support MATLAB and other computing software to solve the problems. For example, a group of people go camping in a remote place and they need to temporarily build a high QoS communication mode, but their devices are unable to provide enough computing power. To account for the above problem, we need to adopt a kind of algorithm to solve the problem when it is non-differentiable or non-convex. In [30] a low computational complexity power assignment method is presented for a NOMA system which is called the tree-based search algorithm. Some research has made a further improvement on reducing the computation load and thus decreasing the computational complexity cost [31]. However, both of the papers seem to neglect the aspect of maximizing the sum data rate of the network. The object of our proposed algorithm is to keep the balance of maximizing the user throughput and lowering the computational complexity cost. Compared with the exhaustive search algorithm (ESA) [32], our method largely reduces the computational complexity without significant throughput decline. Besides that, we extend the one subchannel power allocation in [31] to a general case, in which the D2D users can be assigned to multiple subchannels.

Recall that, although D2D can unprecedentedly increase the spectrum efficiency, it divides part of the energy from the cellular network [27,33]. As D2D links reuse the same spectrum allocated to the cellular users, they may impose more interference on the network [34,35,36,37]. To mitigate the two problems, we propose a user scheduling scheme and a D2D link selection scheme. To maximize the total power of the whole cell users, we use SIC technology to calculate a threshold for the transmission rate of D2D. To the best of our knowledge, the existing works cannot use joint user scheduling, tree-based search power allocation and link selecting algorithm in NOMA and D2D enhanced multiple subchannels cellular communication systems. Considering all the problems mentioned above, the proposed algorithm first improves the user data rates, then allocates power to all the users in the network for a further throughput improvement and finally facilitates a high-quality D2D link.

In this paper, we consider a NOMA-based single-cell cellular network with D2D communications on multiple subchannels, in which a D2D device can reuse the same subchannel occupied by a cellular user to improve the spectrum utilization. Because D2D users result in interference with cellular networks, we use SIC technology to impose restrictions on the energy consumption. The main contributions of this work can be summarized as follows:

- (1)
- The proposed algorithm can jointly solve the user scheduling, power allocation and link selection problems for the D2D underlaying cellular network with the NOMA technology, which is a candidate technology for future networks. The D2D communication is introduced to offload traffic from the base station (BS) and increase network capacity.
- (2)
- A low computational complexity cost search algorithm has been given. Compared with the ESA, it reduces the number of searches by considering the SIC decoding order and thus improves the search rate. It is analytically proved that compared with ESA in OMA, the proposed method can reduce the computational complexity cost. Because of the way of searching for solutions without derivation, it becomes easy for the algorithm to give an optimal solution.
- (3)
- We use the geometric mean value and the arithmetic mean value of the data rates as two objective functions of the tree-based search algorithm, respectively. The former considers the impact of the mean value when extremely high or low power signals exist, while the latter reflects the real mean value of the sum rate.
- (4)

The rest of the paper is organized as follows. The channel model and problem formulation are introduced in Section 2. The proposed joint user scheduling, tree-based search power allocation and link selecting algorithm is elaborated in Section 3. In Section 4, the simulation results are presented, while Section 5 finally draws conclusions of the paper.

## 2. Network Model

#### 2.1. Channel Model

We focus on a NOMA-based single-cell downlink scenario which requires a relatively fair way to allocate power to the devices to improve the system capacity and we also use D2D communications to further improve the SE. We consider the elastic (or non-real time) services in network data transmission, which are shiftable in time and delay, to be tolerant. Our utility function is log-based, which means that the higher the data rate that is allocated to the user by the system, the more his utility is increased [3]. In this network, we assume that BS cannot get the perfect channel state information (CSI) and serve cell users (CUs) through $M$ subchannels (SCs) which are orthogonal, i.e., $S{C}_{m}\text{}\in \text{}\mathrm{SC},$ $\mathrm{SC}\text{}=\text{}\left\{S{C}_{1},\text{}\dots \text{},\text{}S{C}_{m},\text{}\dots \text{},\text{}S{C}_{M}\right\}.$ On the same SC of the network, the interference is divided into two parts. The interference received at a D2D receiver (DR) comes from the BS (the long dashed line) and the D2D interference (the short dashed line) represents the interference from a D2D transmitter (DT) to other CUs (as shown in Figure 1a).

In Figure 1b, we consider that, the CUs of $m-\mathrm{th}$ SC (or SC$m),$ $n$CUs are multiplexed on the same SC and split in the power domain by adopting NOMA. We denote $N\text{}=\text{}\left\{1,\text{}\dots \text{},\text{}n\right\}$ as the set of CUs. We denote $L\text{}=\text{}\left\{1,\text{}\dots \text{},\text{}l\right\}$ as the set of D2D users (DUs). The superposition symbol transmitted by BS on SC$m$ to CU$i$ is
where ${s}_{k,m}$ is the transmitting signal for CU$k,$ ${p}_{k,m}$ represents the transmit power for CU$k,$ and ${h}_{i,m}$ denotes the channel gain from BS to CU$i$ on SC$m.$ The receivers are assumed to have the imperfect CSI by channel feedback. Meanwhile, the noise term ${z}_{i,m}$ is a zero-mean complex additive white Gaussian noise (AWGN) at the BS on SC$m$ with variance ${\sigma}^{2}.$

$${y}_{i,m}={h}_{i,m}{\displaystyle {\sum}_{k=1}^{n}{s}_{k,m}\sqrt{{p}_{k,m}}}+{z}_{i,m},$$

It is assumed that the cellular users and D2D transmitters are uniformly distributed in the cell. We also assume that channels between CUs and BS are undergoing a path-loss model with slow fading caused by shadowing and fast fading caused by the multi-path propagation. The channel coefficient is constant for each channel. Thus, the channel gain from BS to CU$i$ on SC$m$ can be expressed as
where $\kappa $ denotes the constant path loss coefficient determined by system parameters, ${\tau}_{i,m}$ is the fast fading gain with exponential distribution, ${\varsigma}_{i,m}$ is the slow fading gain with log-normal distribution, ${d}_{i,m}$ is the distance between CUi and the BS, and α denotes the path loss exponent.

$${h}_{i,m}=\kappa {\tau}_{i,m}{\varsigma}_{i,m}{{d}_{i,m}}^{-\alpha}$$

In general, the distance between the DUs is not so far as that between cellular users and the BS. In here, we just consider fast fading for DUs. The channel gain of the $l-\mathrm{th}$ DU on SC$m$ can be expressed as
where ${\tau}_{l,m}$ is the fast fading gain with exponential distribution, ${d}_{l,m}$ is the distance between the $l-\mathrm{th}$ D2D pair.

$${g}_{l,m}=\kappa {\tau}_{l,m}{{d}_{l,m}}^{-\alpha}$$

In practice, perfect channel state information (CSI) is not usually available. To characterize the channel condition, we apply the minimum mean-square error (MMSE) channel estimation in the channel model. The MMSE estimator employs second order statistics which involve using the channel auto covariance in order to minimize the square error. Here the channel second order statistics are assumed to be known at the receiver. The estimated CSI vector can ${\widehat{H}}_{MMSE}=\left[{\widehat{h}}_{1,m},\text{}\dots \text{},\text{}{\widehat{h}}_{n,m}\right]$ be estimated by
where $S=\left[{\widehat{s}}_{1,m},\text{}\dots \text{},{\widehat{s}}_{n,m}\right]$ and $Y=\left[{y}_{1,m},\text{}\dots \text{},{y}_{n,m}\right]$ are the vector of the transmitted and the received symbols, respectively. ${\sigma}^{2}$ is the power density of the noise. ${R}_{HH}$ is the covariance of the channel frequency response (CFR) at the pilot tones.

$${\widehat{H}}_{MMSE}={R}_{HH}{\left[{R}_{HH}+{\left(S{S}^{H}\right)}^{-1}{\sigma}^{2}\right]}^{-1}{S}^{-1}Y$$

#### 2.2. System Description

In the NOMA system, the BS transmits a multiuser signal to the CUs (as shown in Figure 1b), that comes from the same SC. When a CU receives the multiuser signal, the signal with the maximum power is first detected and eliminated by SIC the technology. The received signals are processed according to a descending sort of their power assigned by BS which is related to their own channel states.

As the channel gain of the users’ increases, the power allocated to the CUs decreases. To give an illustration, the CUs at the edge of the cell usually have poor channel states and thus they are allocated more power. Therefore, the receiving signal of CU$i$ can be divided into low power signals interference and high power signals interference of multiple access. So we note that (1) can be rewritten as
where ${s}_{k,m}$ is the transmitting signal for CU$k,$ ${p}_{k,m}$ represents the transmit power for CU$k.$ And ${p}_{k,m}$ follows an order of decreasing under a hypothesis that $\left|{\widehat{h}}_{1,m}\right|\le \left|{\widehat{h}}_{2,m}\right|\le \cdots \le \left|{\widehat{h}}_{n,m}\right|.$ In NOMA scheme, resource blocks multiplexed are non-orthogonal in power domain. The interferences from other devices need to be removed. Successive interference cancellation (SIC) technology is introduced in the digital signal processing (DSP) based receiver for interference removal. Inside receivers, the SIC receiver needs to decode all data streams whose fractional power ratio is greater than the receiver’s power, then subtracts the interference from the original symbols. The SIC works on a level by level manner, so the receiver should remove the interference from the data stream with the largest power, then remove the interference from the second largest, and so on.

$$\begin{array}{cc}\hfill {y}_{i,m}=& {\widehat{h}}_{i,m}{s}_{i,m}\sqrt{{p}_{i,m}}+{\widehat{h}}_{i,m}{\displaystyle {\sum}_{k=1}^{i-1}{s}_{k,m}\sqrt{{p}_{k,m}}}\hfill \\ & +{\widehat{h}}_{i,m}{\displaystyle {\sum}_{k=i+1}^{n}{s}_{k,m}\sqrt{{p}_{k,m}}}+{z}_{i,m}\hfill \end{array}$$

After the SIC, the CUs with larger power are removed. Therefore, the superposition symbol can be simplified as
where ${h}_{i,m}{\displaystyle {\sum}_{k=i+1}^{n}{s}_{k,m}\sqrt{{p}_{k,m}}}$ represents the interference from the part of the CUs with lower power on the same SC.

$${y}_{i,m}={\widehat{h}}_{i,m}{s}_{i,m}\sqrt{{p}_{i,m}}+{\widehat{h}}_{i,m}{\displaystyle {\sum}_{k=i+1}^{n}{s}_{k,m}\sqrt{{p}_{k,m}}}+{z}_{i,m}$$

By using SIC, the received signal-to-interference-and-noise ratio (SINR) at CUi can be written as
where ${\beta}_{k,m}$ represents the $k-\mathrm{th}$ cell user’s power allocation coefficient on SC$m$ and the signal-to-noise ratio (SNR) of the receiver CU$i$ is

$${\mathrm{SINR}}_{i,m}=\frac{{p}_{i,m}{\left|{\widehat{h}}_{i,m}\right|}^{2}}{{\left|{\widehat{h}}_{i,m}\right|}^{2}{\displaystyle {\sum}_{k=i+1}^{n}{p}_{k,m}}+{\sigma}^{2}}=\frac{{\beta}_{i,m}}{{\displaystyle {\sum}_{k=i+1}^{n}{\beta}_{k,m}}+\frac{1}{{\mathrm{SNR}}_{i,m}}}$$

$${\mathrm{SNR}}_{i,m}=\frac{{\left|{\widehat{h}}_{i,m}\right|}^{2}{p}_{BS,m}}{{\sigma}^{2}}$$

The total power from the BS to the CUs is denoted by ${p}_{BS,m}$ and we have ${p}_{k,m}={\beta}_{k,m}{p}_{BS,m},\forall k\text{}\in \text{}N$ which denotes the power allocated to CU$k$ on SC$m.$

From the Equation (7), we can obtain the achievable rate of CU$i$ of $m-\mathrm{th}$ SC

$${R}_{i,m}={\mathrm{log}}_{2}\left(1+{\mathrm{SINR}}_{i,m}\right)$$

From (7) and (9), we can observe that the SINR is determined by the power allocation coefficient$\beta .$ By adjusting it, the BS can flexibly control the throughput or the achievable transmission rate of each user to optimize the performance of the system.

We assume $\left|{\widehat{h}}_{1,m}\right|\le \left|{\widehat{h}}_{2,m}\right|\le \cdots \le \left|{\widehat{h}}_{n,m}\right|$ and the power allocation coefficients become ${\beta}_{1,m}\ge {\beta}_{2,m}\ge \cdots \ge {\beta}_{n,m},$ then CU$i$ can decode and remove the interference from CU $j,\text{}\forall ji$ successfully through SIC. However, the existing D2D devices also potentially contribute to the co-channel interference which affect the NOMA decoding order. To consider the interference from D2D, we can rewritten the received SINR at CU$i$ to decode the signal ${s}_{j,m},j<i$, on SC$m$ as
where the binary variable ${\alpha}_{l}$ represents whether or not CU $l,\text{}\forall l\text{}\in \text{}N$ is assigned to a D2D user in the same SC, ${q}_{l,m}$ ($0\le {q}_{l,m}\le {q}_{l,\mathrm{max}}$) denotes the transmit power of the D2D pair with ${q}_{l,\mathrm{max}}={p}_{BS,m}/n$, and ${h}_{l,i,m}$ is the channel gain from the $l-\mathrm{th}$ D2D pair to CU$i$ on SC$m.$ And in the same way, we can get the received SINR at CU$j$ to decode its own signal ${s}_{j},$
where ${h}_{j,m}$ denotes the channel gain from BS to CU$j$ on SC$m$ and ${h}_{l,j,m}$ is the channel gain from the $l-\mathrm{th}$ D2D pair to CU$j$ on SC$m.$

$${\mathrm{SINR}}_{i\to j}=\frac{{p}_{j,m}{\left|{\widehat{h}}_{i,m}\right|}^{2}}{{\left|{\widehat{h}}_{i,m}\right|}^{2}{\displaystyle {\sum}_{k=j+1}^{n}{p}_{k,m}}+{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,i,m}\right|}^{2}+{\sigma}^{2}}}$$

$${\mathrm{SINR}}_{j\to j}=\frac{{p}_{j,m}{\left|{\widehat{h}}_{j,m}\right|}^{2}}{{\left|{\widehat{h}}_{j,m}\right|}^{2}{\displaystyle {\sum}_{k=j+1}^{n}{p}_{k,m}}+{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,j,m}\right|}^{2}+{\sigma}^{2}}}$$

Because admitting the access of multiple D2D devices brings a heavy signaling overhead into the system, we suppose that there is at most one D2D pair assigned to the same CU. The constraint of the power allocation coefficient is:

$${\sum}_{l=1}^{n}{\alpha}_{l}\le n,}\text{}{\alpha}_{l}\in \{0,1\$$

When ${\mathrm{SINR}}_{i\to j}$ ≥ ${\mathrm{SINR}}_{j\to j}$, the received SINR from CU$i$ is no less than CU$j\u2019\mathrm{s}$ received SINR and the interference can be successfully canceled by the SIC. According to the given SIC decoding order, the interference is always canceled from the CU with the largest power and the following conditions should be satisfied.
for $i,j\text{}\in \text{}\left\{1,\text{}\dots \text{},\text{}n\right\}\triangleq N,ji,$ and the set $N$ represents the set of CUs’ index on each SC. For $i\in N,$ we note that the in Equation (11) can be simplified to

$$\frac{{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,j,m}\right|}^{2}+{\sigma}^{2}}}{{\left|{\widehat{h}}_{j,m}\right|}^{2}}\ge \frac{{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,i,m}\right|}^{2}+{\sigma}^{2}}}{{\left|{\widehat{h}}_{i,m}\right|}^{2}}$$

$$\frac{{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,i,m}\right|}^{2}+{\sigma}^{2}}}{{\left|{\widehat{h}}_{i,m}\right|}^{2}}\ge \frac{{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,i+1,m}\right|}^{2}+{\sigma}^{2}}}{{\left|{\widehat{h}}_{i+1,m}\right|}^{2}}$$

Also, we define the SINR of the $l-\mathrm{th}$ D2D device on the $m-\mathrm{th}$ downlink SC as
where ${h}_{BS,m}$ is the interference channel gain from BS to D2D devices.

$${\mathrm{SINR}}_{l,m}=\frac{{q}_{l,m}{\left|{g}_{l,m}\right|}^{2}}{{\left|{\widehat{h}}_{BS,m}\right|}^{2}{\displaystyle {\sum}_{k=1}^{n}{p}_{i,m}}+{\sigma}^{2}}$$

## 3. Proposed Joint User Scheduling, Tree-Based Search Power Allocation and Link Selection Algorithm

As discussed in the last section, we consider the SINR of the D2D devices along with the CUs and the system sum rate in the cellular network, in which the power to be allocated to the users is still unknown. To jointly solve the user scheduling, power allocation and link selection problems for the NOMA-based D2D enhanced cellular network, we propose the user scheduling, tree-based search and distance-aware link selection algorithm. In this section, we first discuss the impact of introducing D2D into the cellular network and give the system formulation. In addition, we present the power constraints of the D2D devices to access them into the network and give the data rates of the users. Secondly, we schedule users for improving the system throughput. Then, we propose the principles and steps of the tree-based search algorithm (TSA) to solve the power allocation problem of the entire network. Finally, we consider the subproblem of link selection to guarantee the communication quality between BS and D2D devices.

#### 3.1. System Formulation

Firstly, we formulate the data rates of all the users in the network, including the CUs and the D2D users (DUs). Secondly, we discuss principles to allocate the SCs to the users to maximize the sum data rate of the system. Then we consider how to optimize the power allocation problem for the CUs.

Referring to (7) and (11), we can get a combination formula of the SINR of the NOMA-based D2D enhanced cellular network.
where ${p}_{i,m}$ and ${p}_{k,m}$ represent the transmit power for CU$i$ and CU$k,$ and ${h}_{i,m}$ denotes the channel gain from BS to CU$i$ on the $m-\mathrm{th}$ SC, ${q}_{l,m}$ denotes the transmit power of the D2D device, and ${h}_{l,i,m}$ is the channel gain from the D2D user to CU$i$ on SC$m.$ $l$ is determined in ${\alpha}_{l}=1,$ such that the $l-\mathrm{th}$ D2D receiver is accessed to the CU$i.$

$${\mathrm{SINR}}_{i,m}=\frac{{p}_{i,m}{\left|{\widehat{h}}_{i,m}\right|}^{2}}{{\left|{\widehat{h}}_{i,m}\right|}^{2}{\displaystyle {\sum}_{k=i+1}^{n}{p}_{k,m}}+{\displaystyle {\sum}_{l=1}^{n}{\alpha}_{l}{q}_{l,m}{\left|{\widehat{h}}_{l,i,m}\right|}^{2}+{\sigma}^{2}}}$$

Note that ${p}_{k,m}={\beta}_{k,m}{p}_{BS,m},\text{}0\le {\beta}_{k,m}\le 1$ and integrate (15) into (16), then we have
where the total power from the BS to the CUs on the same SC is denoted by ${p}_{BS,m}.$ There are two variables ${\beta}_{i,m}$ and ${q}_{l,m}$ in Formula (17) which represent the power allocation coefficient of CU$i$ and the power of the $l-\mathrm{th}$ DU respectively on the $m-\mathrm{th}$ SC. As a hypothesis, if we fix the value of ${\beta}_{k,m},$ the SINR of CU$i$ is inversely proportional to ${q}_{l,m}$ when other parameters remain unchanged.

$${\mathrm{SINR}}_{i,m}=\frac{{\beta}_{i,m}}{{\displaystyle {\sum}_{k=i+1}^{n}{\beta}_{k,m}}+\frac{{q}_{l,m}{\left|{\widehat{h}}_{l,m}\right|}^{2}}{{p}_{BS,m}{\left|{\widehat{h}}_{i,m}\right|}^{2}}+\frac{1}{{\mathrm{SNR}}_{i,m}}}$$

Then we consider the data rate of the DUs. To get the minimum transmission power, we need to obtain the constraint condition of ${\mathrm{SINR}}_{l,m}^{D2D},$ i.e.,
where ${\mathrm{SINR}}_{l,m}^{D2D}$ is the SINR of the $l-\mathrm{th}$ DU on the $m-\mathrm{th}$ SC, ${\mathrm{SINR}}_{thr}^{D2D}$ denotes the given threshold for the DUs, ${h}_{l,m}$ denotes the channel gain DU$l$ on the $m-\mathrm{th}$ SC, ${p}_{k,m}$ represents the transmit power for CU $k,$ and ${q}_{l,m}$ denotes the transmit power of DU$l$ on the $m-\mathrm{th}$ SC, ${h}_{k,l}$ denotes the interference channel gain of other CUs. Under the condition that ${\mathrm{SINR}}_{l,m}^{D2D}={\mathrm{SINR}}_{thr}^{D2D},$ we can get the minimum transmission power of the DUs.

$${\mathrm{SINR}}_{l,m}^{D2D}=\frac{{q}_{l,m}{\left|{\widehat{h}}_{l,m}\right|}^{2}}{{\displaystyle {\sum}_{k=1,k\ne l}^{n}{p}_{k,m}{\left|{\widehat{h}}_{k,l,m}\right|}^{2}}+{\sigma}^{2}}\ge {\mathrm{SINR}}_{thr}^{D2D}$$

Based on the expression of SINR in (17) and the Shannon formula, the data rate for the $i-\mathrm{th}$ cellular user CU$i$ on the $m-\mathrm{th}$ SC is given by

$${R}_{i,m}={\mathrm{log}}_{2}\left(1+\frac{{\beta}_{i,m}}{{\displaystyle {\sum}_{k=i+1}^{n}{\beta}_{k,m}}+\frac{{q}_{l,m}{\left|{\widehat{h}}_{l,m}\right|}^{2}}{{p}_{BS,m}{\left|{\widehat{h}}_{i,m}\right|}^{2}}+\frac{1}{{\mathrm{SNR}}_{i,m}}}\right)$$

Similarly, the data transmission rate for the D2D device is written as

$${R}_{l,m}^{D2D}={\mathrm{log}}_{2}\left(1+\frac{{q}_{l,m}{\left|{\widehat{h}}_{l,m}\right|}^{2}}{{\displaystyle {\sum}_{k=1,k\ne l}^{n}{p}_{k,m}{\left|{\widehat{h}}_{k,l,m}\right|}^{2}}+{\sigma}^{2}}\right)$$

#### 3.2. User Scheduling Algorithm of the Network

In this section, we design a user scheduling algorithm for assigning CUs and DUs to different SCs in order to maximize the system data rate. As shown in Algorithm 1, the algorithm also includes a power allocation problem, which is solved in the next section.

We denote $N\text{}=\text{}\left\{1,\text{}\dots \text{},\text{}i,\text{}\dots \text{},\text{}n\right\}$ as the set of CUs and define $\mathrm{L}\text{}=\text{}\left\{1,\text{}\dots \text{},\text{}l,\text{}\dots \text{},\text{}L\right\}$ as the set of DUs. We assume that the maximum number of the D2D users $L$ is no more than $n.$ To optimize the system data rate, we define the expression of the user scheduling as
where ${R}_{C}={\displaystyle {\sum}_{m=1}^{M}{\displaystyle {\sum}_{i=1}^{{n}_{m}}{R}_{i,m}}}$ and ${R}_{D}={\displaystyle {\sum}_{m=1}^{M}{\displaystyle {\sum}_{l=1}^{{L}_{m}}{R}_{l,m}}}$ represent the sum rate of CUs and the sum rate of DUs respectively. ${n}_{m}$ and ${L}_{m}$ denote the number of CU and DU on SC$m$ respectively.

$${U}_{optimal}=\mathrm{arg}\mathrm{max}\left({R}_{C}+{R}_{D}\right),$$

In Algorithm 1, we firstly schedule the CUs onto each SC. We assume equal power allocation for each CU and define ${U}_{\mathrm{max}}$ as the maximum number of CUs allocated on each SC. ${U}_{un}$ is initialized to record the CUs who have not been allocated to any SC. In the scheduling procedure for CUs, we need to find the CUs who have larger channel gains than others and allocate them to the corresponding SCs if the number of CUs multiplexed on this SC is less than ${U}_{\mathrm{max}}.$ If the number of CUs is equal to ${U}_{\mathrm{max}},$ the CUs should be selected from the CU sets ${U}_{m,possible},$ which includes all the CUs who prefer to be assigned on the $m-\mathrm{th}$ SC. The CUs who can provide the maximum data rates on this SC will be allocated on this SC. The CUs who have not been allocated on the SC will be returned to ${U}_{un}.$ This part of algorithm ends when there is no CU left to be assigned [42].

Then we allocate power to the CUs of each SC, which can be updated by Algorithm 2.

Finally, we assigned the DUs of the system into each SC. In this part, similar to CUs, we assume that each DU has the same power and define ${U}_{\mathrm{max}}^{D2D}$ $\left({U}_{\mathrm{max}}^{D2D}\le {U}_{\mathrm{max}}\right)$ as the maximum number of DUs allocated on each SC. ${U}_{un}^{D2D}$ is initialized to record the DUs who have not been allocated to any SC. We calculate the transmission power of each DU by (18) with the condition that ${\mathrm{SINR}}_{l,m}^{D2D}={\mathrm{SINR}}_{thr}^{D2D}.$ In the scheduling process, we need to find the DUs which have larger channel gains than others and access them to the corresponding CUs if the number of CUs multiplexed on this SC is less than ${U}_{\mathrm{max}}^{D2D}.$ If the number of DUs is equal to ${U}_{\mathrm{max}}^{D2D}$, the DUs should be selected from the DU sets ${U}_{m,possible}^{D2D}$, which includes all the DUs who prefer to be assigned on the $m-\mathrm{th}$ SC. The DUs which can provide the maximum data rates in this SC will be allocated on this SC. The DUs which have not been allocated on the SC will be returned to ${U}_{un}^{D2D}.$ This part of algorithm ends when there is no DU left to be allocated.

Since the maximum CUs and DUs can be multiplexed on the same SC is less than ${U}_{\mathrm{max}}$, the global optimal solution can only be obtained by the exhaustive search method (ESA), which has exponential complexity with respect to the number of SCs. In order to lower the computational complexity and increase the processing speed, we propose a tree-based power allocation scheme to for accelerating the searching progress in the next part. The convergence of the proposed algorithm is shown in Section 4.

Algorithm 1 A User Scheduling Algorithm |

1: Initialize the power allocation for each CU ${P}_{i,m}=\frac{{P}_{BS}}{n}.$ 2: Construct the channel gains $\mathrm{H}\triangleq {\left[\left|{h}_{i,m}\right|\right]}_{n\times M}.$ 3: Initial the sets ${U}_{un}$ to record the unallocated CUs in the system. 4: Initial the sets ${U}_{m,possible}$ to record the candidate CUs in the$m-\mathrm{th}$ SC. 5: Initial the sets ${U}_{un}^{D2D}$ to record the unallocated DUs in the system. 6: Initial the sets ${U}_{m,possible}^{D2D}$ to record the candidate DUs in the $m-\mathrm{th}$ SC. 7: while ${U}_{un}\ne \varnothing $ do8: Find the maximum value $\left|{h}_{i,m}\right|$ in $\mathrm{H}$ using $\left|{h}_{i,m}\right|=\mathrm{arg}\underset{i\in {U}_{un},m\in {H}_{un}}{\mathrm{max}}(\mathrm{H}).$ 9: if the number of multiplexed CUs on this SC is less than ${U}_{\mathrm{max}}$ then10: (a) Schedule the CU$i$ onto the SC$m.$ 11: (b) ${U}_{un}$ = ${U}_{un}$\${U}_{i}.$ 12: end if13: if the number of multiplexed CUs on this SC equals ${U}_{\mathrm{max}}$ then14: (a) Assume CU$i$ is allocated on the SC$m$ and the CU set is ${U}_{m,possible}.$ 15: (b) Calculate the data rate of the CUs from ${U}_{m,possible}$ and get a set of ${R}_{m,possible}.$ 16: (c) ${U}_{m}=\mathrm{arg}\underset{U\in {U}_{m,possible}}{\mathrm{max}}\left({R}_{m,possible}\right)$ and ${U}_{i}\notin {U}_{m}.$ 17: (d) ${U}_{un}$ = ${U}_{un}$\${U}_{m}.$ 18: Let the $i-\mathrm{th}$ and $n-\mathrm{th}$ row’s elements in $\mathrm{H}$ be zeros. 19: Let the $n-\mathrm{th}$ column’s elements in $\mathrm{H}$ be zeros. 20: end if21: end while22: Allocate power to the CUs (Algorithm 2). 23: Construct the channel gains ${\mathrm{H}}^{D2D}\triangleq {\left[\left|{h}_{l,m}\right|\right]}_{L\times M}.$ 24: Initialize the power allocation for each DU. 25: while ${U}_{un}^{D2D}\ne \varnothing $ do26: Find the maximum value $\left|{h}_{l,m}\right|$ in ${\mathrm{H}}^{D2D}$ using $\left|{h}_{l,m}\right|=\mathrm{arg}\underset{l\in {U}_{un}^{D2D},\text{}m\in {\mathrm{H}}_{un}^{D2D}}{\mathrm{max}}({\mathrm{H}}^{D2D}).$ 27: if the number of multiplexed DUs on this SC is less than ${U}_{{}_{\mathrm{max}}}^{D2D}$ then28: (a) Schedule the DU$l$ onto the SC$m.$ 29: (b) ${U}_{un}^{D2D}$ = ${U}_{un}^{D2D}$\${U}_{l}$ 30: end if31: if the number of multiplexed DUs on this SC equals ${U}_{{}_{\mathrm{max}}}^{D2D}$ then32: (a) Assume DU$l$ is allocated on the SC$m$ and the DU set is ${U}_{m,possible}^{D2D}.$ 33: (b) Calculate the data rate of the DUs from ${U}_{m,possible}^{D2D}$ and get a set of ${R}_{m,possible}^{D2D}.$ 34: (c) ${U}_{m}^{D2D}=\mathrm{arg}\underset{U\in {U}_{m,possible}^{D2D}}{\mathrm{max}}\left({R}_{m,possible}^{D2D}\right)$ and ${U}_{i}^{D2D}\notin {U}_{m}^{D2D}.$ 35: (d) ${U}_{un}^{D2D}$ = ${U}_{un}^{D2D}$\${U}_{m}^{D2D}.$ 36: Let the $i-\mathrm{th}$ and $n-\mathrm{th}$ row’s elements in ${\mathrm{H}}^{D2D}$ be zeros. 37: Let the $n-\mathrm{th}$ column’s elements in ${\mathrm{H}}^{D2D}$ be zeros. 38: end if39: end while |

#### 3.3. Principles of Tree-Based Search Power Allocation Algorithm

In this section, we suppose that the power ${q}_{l}$ assigned to the transmission from the transmitter CU$l$ to receiver (DR) in each D2D group is a fixed value which can be calculated by (20) with the condition that ${\mathrm{SINR}}_{l,m}^{D2D}={\mathrm{SINR}}_{thr}^{D2D}.$

Note that, by NOMA technology, some access algorithms can allocate power in a gradient increasing way with the deterioration of the users’ channel state. This method simply calculates the representation of the objective function and need not derivative in the process of solving the problem. In order to reduce the cost of computing compared with [30] and [32], we propose a tree-based search power allocation algorithm, which gives a suboptimal method to maximize the system sum rate.

In NOMA, the main interference is from low power signals which cannot be eliminated by SIC. Through the decoding order, because the channel gain of a CU in the cell center is larger, a lower power is allocated to the CU. Thus, by using the SIC technology, other users can gain greater SINR after eliminating the interference of the CUs with higher power and hence have better system performance.

We set the target of power allocation to be maximizing the arithmetic average of achievable user data transmission rates of each SC. The optimization problem can be obtained as
where ${\beta}_{i,m}$ represents a proportional coefficient of the power value that can be allocated to each CU on SC$m.$ (22) is the objective function and constraint (23) is imposed to guarantee the power allocated to the CUs will not exceed the total power from the BS. Constraint (24) shows the power allocated to the CUs of the same SC follow the policy for SIC decoding order. Constraint (25) presents that all the power can be allocated to the CUs. ${n}_{m}$ is the max number of CUs on SC$m.$

$$\left\{{\beta}_{1,m},{\beta}_{2,m},\cdots ,{\beta}_{{n}_{m},m}\right\}=\mathrm{arg}\mathrm{max}\left\{\frac{1}{{n}_{m}}{\displaystyle {\sum}_{k=1}^{{n}_{m}}{R}_{k,m}}\right\},$$

$$s.t.\text{}0{\beta}_{i,m}1,i=1,2,\cdots ,{n}_{m}$$

$${\beta}_{i,m}\le {\beta}_{j,m},i=1,2,\cdots ,{n}_{m}-1,i<j$$

$${\sum}_{i=1}^{{n}_{m}}{\beta}_{i,m}=1$$

In the tree model of TSA, we need to explain several concepts. The first one is the node of the tree which represents a candidate coefficient β of the assigned power. The second one is the depth of a node which is defined by the length of the path from the root to the node. In addition, the nodes with the same depth are identified to be in the same layer and the quantity of the layers depends on the number of the non-orthogonal users on the same SC. Then we define the branches, each of which connects the nodes of two adjacent layers. The tree model of TSA is shown in Figure 2. ${\beta}_{k,m},\forall k\in N$ represents the power coefficients allocated to the users in the $k-\mathrm{th}$ layer on SC$m.$ In a descendant order of the SINR of the CUs according to (5), the coefficients $\beta $ also satisfy (23)–(25), which means the coefficient in current layer cannot be higher than the next layer and cannot be lower than the previous layer at the same time. Two specific conditions that need to be met are shown as follows:
where $k\in N.$

$$0<{\beta}_{1,m}\le \frac{1}{{n}_{m}}$$

$${\beta}_{k-1,m}\le {\beta}_{k,m}\le \frac{1-{\displaystyle {\sum}_{j=1}^{k-1}{\beta}_{j,m}}}{{n}_{m}-k+1}$$

In Figure 2, the power allocated to the CUs in each layer is in the order from low to high. The survival nodes and the redundant nodes in the tree represent whether the power assigned to the current CU can satisfy the requirement of the target function. The path through the redundant node is called a redundant path which does not undergo the search process of the next layer. Therefore, it reduces the searching complexity compared with the ESA. Similarly, the paths through the survival nodes are survival paths. Finally, the longest path becomes the final path containing all the power allocation coefficients of the CUs every layer.

As introduced in (3), after using the SIC technology, the target CU is influenced only by the interference coming from the CUs with low power. Different from traditional tree-based search algorithms [43,44,45,46], we arrange the CUs in a descending order of SINR in a tree and allocate power to the CUs in an increasing order. Thereby, we draw the conclusion that the CUs would only be influenced by the signals from CUs in lower layers rather than in higher layers, which can reduce the number of searches.

#### 3.4. Proposed Tree-Based Search Algorithm (TSA) for Power Allocation

In this section, we first define two kinds of judgement standards for selecting the candidate nodes and decide which nodes should result in survival. One of the standards about the power allocation coefficients ${\beta}_{k,m}$ is
which represents the summary of β from the first layer to the $s-\mathrm{th}$ layer. For ${n}_{m}\in N,$ the number of the CUs on each SC, we have ${\Omega}_{{n}_{m}}=1$ according to (25). Another standard is for the data rates,
which denotes the summary of the data rates of CUs from 1 to $s.$ For ${n}_{m},$ ${\Gamma}_{{n}_{m}}$ represents the summary of the data rates from CU 1 to CU${n}_{m}.$

$${\Omega}_{s,m}={\displaystyle {\sum}_{k=1}^{s}{\beta}_{k,m}},\text{}s\in {n}_{m}$$

$${\Gamma}_{s,m}={\displaystyle {\sum}_{k=1}^{s}{R}_{s,m}},\text{}s\in {n}_{m}$$

The TSA achieves the power allocation of the CUs within each SC and finds a suboptimal solution, as shown in Algorithm 2. The detailed process of TSA is described as the following steps:

- (1)
- Initialization: First, we initialize the standards (28) and (29) mentioned above and the channel gain of each CU on the same SC.
- (2)
- Calculate the values of the power allocation coefficients: Calculate the matrix of candidate power allocation coefficients ${\beta}_{k,m}$ in the $k-\mathrm{th}$ layer, according to (26) and (27), determined by the number of survival nodes of the previous layer and the minimum interval $\Delta $ of the power allocation coefficients.
- (3)
- Delete the redundant nodes: We first divide the nodes into several groups. In each group, through (26), we calculate ${\Omega}_{k,m}={\Omega}_{k-1,m}+{\beta}_{k,m}$ and find out the nodes belong to the $k-\mathrm{th}$ layer which has the same ${\Omega}_{k,m}$ to be classified to the same group. Then through the formulation ${\Gamma}_{k,m}={\Gamma}_{k-1,m}+{R}_{k,m}$ derived from (26), we get the results of ${\Gamma}_{k,m}$ in each group and pick out the maximum nodes. Finally, we select the survival nodes and delete the redundant paths.
- (4)
- Select the final survival path: Repeat step (2) and step (3) until the last layer where ${\beta}_{{n}_{m}}=1-{\Omega}_{{n}_{m}-1}$ and the number of the branches equals to the number of the survival nodes in the previous layer. Satisfying the unique value of ${\Omega}_{{n}_{m}},\text{}\mathrm{i}.\mathrm{e}.,\text{}{\Omega}_{{n}_{m}}=1,$ we pick out the group of survival nodes with the maximum ${\Gamma}_{{n}_{m}}$ and get the final survival path.
- (5)
- Output: From final survival path we can get the suboptimal set of power allocation coefficients $\left\{{\beta}_{1}^{\ast},\text{}\dots \text{},{\beta}_{{n}_{m}}^{\ast}\right\}.$

Figure 3 shows the flow chart of the tree-based search power allocation algorithm (TSA). For the suboptimal solution from Algorithm 1, the combinations of the searching process would be

$$M!\left\{\left(\left(\begin{array}{c}n\\ 1\end{array}\right)+\left(\begin{array}{c}n\\ 2\end{array}\right)+\cdots +\left(\begin{array}{c}n\\ {U}_{\mathrm{max}}\end{array}\right)\right)+\left(\left(\begin{array}{c}L\\ 1\end{array}\right)+\left(\begin{array}{c}L\\ 2\end{array}\right)+\cdots +\left(\begin{array}{c}L\\ {U}_{\mathrm{max}}^{D2D}\end{array}\right)\right)\right\},$$

On the other hand, the complexity of the proposed algorithm is less than the complexity of ESA which would be

$$O\left(N!\left({2}^{n}+{2}^{L}\right)\right),$$

Figure 4 investigates the comparison of the computational complexity cost between TSA and ESA with $\Delta =0.01$ which represents the minimum interval of the power allocation coefficients [38]. Because NOMA allows the receiver to remove the part of the interference coming from the users who have larger power, it decreases the search times for each user. The complexity cost of TSA is $O\left(\frac{1}{{\Delta}^{2}}\left(1-\frac{1}{n}\right)\right)$ and this is lower than ESA whose complexity cost is O$\left(\frac{1}{{\Delta}^{n-1}}\right)$ [31]. The total computational complexity cost of the proposed TSA algorithm with the searching process is $O\left(\frac{1}{{\Delta}^{2}}\left(1-\frac{1}{n}\right)\right)+M!\left\{\left(\left(\begin{array}{c}n\\ 1\end{array}\right)+\cdots +\left(\begin{array}{c}n\\ {U}_{\mathrm{max}}\end{array}\right)\right)+\left(\left(\begin{array}{c}L\\ 1\end{array}\right)+\cdots +\left(\begin{array}{c}L\\ {U}_{\mathrm{max}}^{D2D}\end{array}\right)\right)\right\},$

Algorithm 2 Tree-based Search Power Allocation Algorithm (TSA) |

1: Input: |

⦁ Initial the judgement criteria: Ω_{0} = 0 and Γ_{0} = 0. |

⦁ Initial list of the channel states of the CUs in the same SC {h_{1,m}, …, h_{n,m}}. |

2: Tree-based search: |

for k ∈ {1, …, n_{m}} do |

repeat |

Calculate β_{k,m} according to survival nodes of the previous layer and the minimum interval $\Delta $ of the power allocation coefficients which satisfies the condition (26) and (27). |

Calculate Ω_{k} and find out the nodes of the same Ω_{k} to put them into z groups. |

for r ∈ {1, …, z} do |

Calculate the set of Γ_{r} and Γ_{r}^{*} = max { } and make the new set of Γ_{k}. Save the nodes of Γ_{r}^{*} and delete the others. |

end for |

until k = n_{m}. |

If k = n_{m} then |

Calculate ${\beta}_{{n}_{m}}$ and g = 1. Γ_{n,m}^{*} = max {Γ_{n,m}}. Save the nodes of Γ_{n,m}^{*} and delete the others. Finally get the final survival path. |

end if |

end for |

3: Output: |

Final set of power allocation coefficients $\left\{{\beta}_{1}^{\ast},\text{}\dots ,{\beta}_{{n}_{m}}^{\ast}\right\}.$ |

#### 3.5. Distance-Aware Link Selection Algorithm

In this section, we design a link selection algorithm for accessing DUs to different CUs on different SCs in order to further optimize the system data rate, as shown in Figure 5. The algorithm also influences the power allocation for DUs.

In our model, a DU always chooses a CU to be the signal transmitter (DT) of the D2D pair, as mentioned in Section 2. Thus, the spectrum resources are reused by DUs and CUs of the same D2D pairs on the same SC. As the number of DU increases, the number of the spectrum reused links becomes large, leading to a high computational complexity cost. Different from the user scheduling scheme in Section 3, we select the D2D links by a distance-aware link selection algorithm to relieve complexity stress.

There are two principles in the algorithm. The first one is the distance between the DT and the BS cannot be too short. Based on the interference-limited area based scheme [47], BS has a limit circle where the users cannot choose D2D links with radius ${s}_{d},$ as shown by ${S}_{0}$ in Figure 5. Because the DT may impose severe interference on BS and close-by CUs in the limit circle ${S}_{0}$, this principle can improve the QoS of users in the network.

The other principle is about the distance between DUs. The purpose of the principle, on the other hand, is to limit the co-spectrum interference. In this case, if two D2D receivers (DRs) are close enough that they prepare to choose the same CU to be the DT, the link which can provide better data rate would be chosen. The other DR can choose a relatively long distance link on different SCs.

The principles for choosing appropriate D2D links is illustrated in Figure 5 as follows:

- (1)
- CU
_{1}cannot be chosen as a DT by DR_{1}, because it is inside the limited area ${S}_{0}.$ - (2)
- In area ${S}_{2},$ DR
_{2}has two CUs to be selected to build a D2D link. But one of the CUs has already been chosen by DR_{3}because the distance between the D2D pair is shorter. Thus, DR_{2}can choose CU_{2}to be the DT, in the same area ${S}_{2}.$ - (3)
- When two areas have a communal area (e.g., ${S}_{2}$ and ${S}_{3}$), the DRs may choose the same CU as the DT. In this case, we allocate them in different SCs to limit the co-spectrum interference.

#### 3.6. Joint User Scheduling, Power Allocation and Link Selection Algorithm

Because the ESA, as shown in Figure 6a, has a high complexity cost in optimizing the user scheduling and power allocation problem, it is necessary to update the power of each user after changing the assignment of SCs in each iteration process. We propose the joint user scheduling, power allocation and link selection algorithm (JUPLA), as shown in Figure 6b, to be an alternative low-complexity approach. The proposed algorithm first solves the SC assignment problem, then allocates power to each CU and finally selects the links for DUs and outputs the network data rate. Figure 6 shows the flow chart of the proposed JUPLA.

## 4. Numerical Results and Discussions

In this section, we present the performance of the proposed JSPLA through simulations. To evaluate the performances, a Monte Carlo based system-level simulator has been built. Each point of the simulation result is averaged over 1000 times. We first study the convergence performance of the proposed algorithm. Then we investigate the data rates of three search algorithms including the fractional power allocation algorithm (FRPA), the fixed power allocation algorithm (FIPA) and the TSA. Moreover, the performance comparison of the conventional ESA and OMA based D2D communications demonstrates the potential benefits of the proposed NOMA enhanced D2D scheme. The specific parameter value settings are summarized in Table 1.

#### 4.1. Convergence of the Proposed Algorithm

The cumulative distribution function (CDF) versus the number of searching in JUPLA is shown in Figure 7. The results in Figure 7 are averaged over 10,000 independent adaptation processes which involve different numbers of users from 20 to 80 on 10 SCs. It can be observed that with $\Delta =0.15$ the proposed joint resource allocation algorithm has a fast converge rate in 1000 iterations for all considered numbers of users. As the number of users decreases, the convergence rate slows down.

#### 4.2. NOMA-Enhanced Versus OMA-Based D2D Communication

In Figure 8, the average D2D data rate performance of three algorithms versus the number of the CUs on the same SC is shown in two accessing ways (NOMA and OMA). From Figure 8, the average data rate of the D2D devices decreases with the rising of the CU number on the same SC. Because of the increasing number of CUs, the probability of the D2D users receiving more interference from the CUs increases, which leads to the monotonous decreasing of data rates with the increasing of $n$ according to (20). In addition, the NOMA based on D2D scheme achieves larger data rate than the conventional OMA based on D2D scheme. In NOMA, the performance of FIPA is worst, while that of FRPA is improved. Our proposed algorithm has the best data rate.

#### 4.3. Data Transmission Rates of CUs in the Same SC in the Network

Figure 9 illustrates that the increasing of the number of CUs on the same SC affects the data rates with arithmetic average. The arithmetic average can reflect the real average data rate of all the CUs in the network. In the four algorithms, TSA, FRPA, FIPA and fixed SINR power allocation algorithm (FSPA) [38], the arithmetic average of data rates of CUs decreases with a changing speed that gradually slows down as the number of the CUs increases.

Figure 10 illustrates how the increasing of the number of CUs on the same SC affects the data rates with geometry average. In the four algorithms, the geometry average of data rates of CUs decreases with a changing speed that gradually slows down as the number of the CUs increases. For the geometric average, the standard of the data rates is
which denotes the data rates of CUs from 1 to $s.$ Noticing that the geometry average is less affected by mutation data than the arithmetic average, from two different points of view, we can comprehensively evaluate the simulation results.

$${\Gamma}_{s,m}={\displaystyle {\prod}_{k=1}^{s}{R}_{s,m}}$$

From the two figures, we can note that the output performance is influenced by the number of users. The two figures also give comparison of the four algorithms to demonstrate the superiority of TSA. In FIPA and FSPA, the power is allocated to the CUs in fixed methods without considering the current channel states, whereas in FRPA the power is simply allocated referring to the path loss of each CU without concerning the sum rate of the whole system. In summary, the performance of FSPA is worst and FIPA and FRPA can improve the output performance. However, the proposed algorithm is the best of all the algorithms we considered.

#### 4.4. Sum Data Rate of CUs in the Same SC in the Network

Figure 11 displays the sum data rate of the four algorithms versus the number of CUs on the same SC. In the four algorithms, the sum data rate of CUs increases with a changing speed that gradually slows down as the number of the CUs increases on the same SC. From Figure 11, the increment of sum data rate FSPA is smaller than the other three algorithms and the sum rate performance of FRPA becomes closer to TSA with the increasing of the number of CUs of the network.

Summarizing the results obtained from Figure 9, Figure 10 and Figure 11, we observe that the increasing speed of the data rate slows down with the increase of the number of the non-orthogonal CUs. This is because, with the increasing of the number of CUs, more multiple access interference is introduced into the network and the SINR of each CU decreases along with the data rate.

#### 4.5. Sum Data Rate of the System

Figure 12 displays the sum data rate of the four algorithms versus the number of users in the network. In the four algorithms, the sum data rate of the system increases with a changing speed that gradually slows down as the number of users increases. When the user number increases and the total energy of the BS remains unchanged, the power of CUs is reduced. With the increasing number of D2D users, more CUs need to consume power on extra data transmission, which leads to further energy consumption. As the user number increases, the BS provides more SCs to the network. For example, when the user number is 80, there are 4 SCs in the network with 20 users in each SC. From Figure 12, the increment of sum data rate FSPA is smaller than the other three algorithms and the sum rate performance of FRPA becomes closer to TSA as the number of users of the system increases.

## 5. Conclusions

In this paper, we proposed a joint user scheduling, tree-based search power allocation and link selection algorithm in building a NOMA-based D2D enhanced cellular network. Firstly, we introduced the D2D communication into the cellular network to increase the system capacity by reusing the spectrum of CUs. Secondly, the proposed algorithm jointly solved the user scheduling, power allocation and link selection problems to increase the sum data rate of the network. The user scheduling method and the tree-based search power allocation scheme were proposed not only to achieve the maximum data rate of the CUs and DUs, but also reduce the cost of computing compared with ESA. The distance-aware link selection algorithm limits the interference for the DUs, saves energy for the CUs and offloads part of the heavy traffic for the BS. Finally, we conducted simulations to evaluate the performance of our proposed algorithm. Numerical results demonstrate that our algorithm improves data rate, has a low computational complexity cost and has a good convergence performance. Thus, the algorithm also has significant advantages compared with traditional algorithms.

## Author Contributions

Conceptualization, J.W. and X.S.; methodology, J.W.; software, Y.M.; validation, J.W., X.S. and Y.M.; formal analysis, J.W.; investigation, X.S.; resources, Y.M.; data curation, X.S.; writing—original draft preparation, J.W.; writing—review and editing, J.W. and X.S.; visualization, J.W.; supervision, X.S.; project administration, X.S.; funding acquisition, X.S. All authors have read and agreed to the published version of the manuscript.

## Funding

This research was funded by “the National Nature Science Foundation of China, grant number no. 61601109” and “The APC was funded by the Fundamental Research Funds for the Central Universities under Grant No. N152305001”.

## Acknowledgments

This work was supported by the National Nature Science Foundation of China under Grant no. 61473066 and no. 61601109, and the Fundamental Research Funds for the Central Universities under Grant No. N152305001. The authors thank the anonymous reviewers for their insightful comments that helped improve the quality of this study.

## Conflicts of Interest

The authors declare no conflict of interest.

## References

- Haci, H.; Zhu, H.; Wang, J. Performance of Non-orthogonal Multiple Access With a Novel Asynchronous Interference Cancellation Technique. IEEE Trans. Commun.
**2017**, 65, 1319–1335. [Google Scholar] [CrossRef] - Qian, L.P.; Wu, Y.; Zhou, H.; Shen, X. Non-Orthogonal Multiple Access Vehicular Small Cell Networks: Architecture and Solution. IEEE Netw.
**2017**, 31, 15–21. [Google Scholar] [CrossRef] - Vamvakas, P.; Tsiropoulou, E.E.; Papavassiliou, S.; Baras, J.S. Optimization and Resource Management in NOMA Wireless Networks Supporting Real and Non-Real Time Service Bundling. In Proceedings of the 2017 IEEE Symposium on Computers and Communications (ISCC), Heraklion, Greece, 3–6 July 2017; pp. 697–703. [Google Scholar]
- Zeng, J.; Lv, T.; Liu, R.P.; Su, X.; Peng, M.; Wang, C.; Mei, J. Investigation on Evolving Single-Carrier NOMA Into Multi-Carrier NOMA in 5G. IEEE Access
**2018**, 6, 48268–48288. [Google Scholar] [CrossRef] - Ali, M.S.; Hossain, E.; Kim, D.I. Coordinated Multipoint Transmission in Downlink Multi-Cell NOMA Systems: Models and Spectral Efficiency Performance. IEEE Wirel. Commun.
**2018**, 25, 24–31. [Google Scholar] [CrossRef] - Wang, Q.; Ge, J.; Li, Q.; Bu, Q. Performance Analysis of NOMA for Multiple-Antenna Relaying Networks with Energy Harvesting over Nakagami-M Fading Channels. In Proceedings of the 2017 IEEE/CIC International Conference on Communications in China (ICCC), Qingdao, China, 22–24 October 2017; pp. 1–5. [Google Scholar]
- Huang, Y.; Zhang, C.; Wang, J.; Jing, Y.; Yang, L.; You, X. Signal Processing for MIMO-NOMA: Present and Future Challenges. IEEE Wirel. Commun.
**2018**, 25, 32–38. [Google Scholar] [CrossRef] - Wang, Y.; Wu, Y.; Zhou, F.; Chu, Z.; Wu, Y.; Yuan, F. Multi-Objective Resource Allocation in a NOMA Cognitive Radio Network With a Practical Non-Linear Energy Harvesting Model. IEEE Access
**2018**, 6, 12973–12982. [Google Scholar] [CrossRef] - Moltafet, M.; Azmi, P.; Mokari, N.; Javan, M.R.; Mokdad, A. Optimal and Fair Energy Efficient Resource Allocation for Energy Harvesting-Enabled-PD-NOMA-Based HetNets. IEEE Trans. Wirel. Commun.
**2018**, 17, 2054–2067. [Google Scholar] [CrossRef] - Zeng, M.; Yadav, A.; Dobre, O.A.; Poor, H.V. Energy-Efficient Power Allocation for MIMO-NOMA With Multiple Users in a Cluster. IEEE Access
**2018**, 6, 5170–5181. [Google Scholar] [CrossRef] - Jiang, K.; Jing, T.; Huo, Y.; Zhang, F.; Li, Z. SIC-Based Secrecy Performance in Uplink NOMA Multi-Eavesdropper Wiretap Channels. IEEE Access
**2018**, 6, 19664–19680. [Google Scholar] [CrossRef] - Islam, S.M.R.; Zeng, M.; Dobre, O.A.; Kwak, K.S. Resource Allocation for Downlink NOMA Systems: Key Techniques and Open Issues. IEEE Wirel. Commun.
**2018**, 25, 40–47. [Google Scholar] [CrossRef] - Zhou, F.; Wu, Y.; Hu, R.Q.; Wang, Y.; Wong, K.K. Energy-Efficient NOMA Enabled Heterogeneous Cloud Radio Access Networks. IEEE Netw.
**2018**, 32, 152–160. [Google Scholar] [CrossRef] - Lee, J.; Lee, J.H. Performance Analysis and Resource Allocation for Cooperative D2D Communication in Cellular Networks with Multiple D2D Pairs. IEEE Commun. Lett.
**2019**, 23, 909–912. [Google Scholar] [CrossRef] - Zeng, S.; Wang, C.; Qin, C.; Wang, W. Interference Alignment Assisted by D2D Communication for the Downlink of MIMO Heterogeneous Networks. IEEE Access
**2018**, 6, 24757–24766. [Google Scholar] [CrossRef] - Bhardwaj, A.; Agnihotri, S. Energy- and Spectral-Efficiency Trade-Off for D2D-Multicasts in Underlay Cellular Networks. IEEE Wirel. Commun. Lett.
**2018**, 7, 546–549. [Google Scholar] [CrossRef] - Nguyen, N.T.; Choi, K.W.; Song, L.; Han, Z. ROOMMATES: An Unsupervised Indoor Peer Discovery Approach for LTE D2D Communications. IEEE Trans. Veh. Technol.
**2018**, 67, 5069–5083. [Google Scholar] [CrossRef] - Dang, S.; Chen, G.; Coon, J.P. Multicarrier Relay Selection for Full-Duplex Relay-Assisted OFDM D2D Systems. IEEE Trans. Veh. Technol.
**2018**, 67, 7204–7218. [Google Scholar] [CrossRef] - Ma, B.; Shah-Mansouri, H.; Wong, V.W.S. Full-Duplex Relaying for D2D Communication in Millimeter Wave-based 5G Networks. IEEE Trans. Wirel. Commun.
**2018**, 17, 4417–4431. [Google Scholar] [CrossRef] - Zulkifli, A.A.; Kuroda, K.; Hasegawa, M. Game Theory-Based Power Allocation and Channel Selection of Multi-channel D2D. In Proceedings of the 2017 Fifth International Symposium on Computing and Networking (CANDAR), Aomori, Japan, 19–22 November 2017; pp. 256–262. [Google Scholar]
- Lv, S.; Wang, X.; Meng, X.; Zhang, Z.; Long, K. Energy-Efficient Joint Power Control and Resource Allocation for D2d-Aided Heterogeneous Networks. In Proceedings of the 2017 IEEE/CIC International Conference on Communications in China (ICCC), Qingdao, China, 22–24 October 2017; pp. 1–6. [Google Scholar]
- Ni, Y.; Zhao, J.; Wang, Y.; Zhu, H. Beamforming and interference cancellation for D2D communication assisted by two-way decode-and-forward relay node. China Commun.
**2018**, 15, 100–111. [Google Scholar] [CrossRef] - Kim, J.B.; Lee, I.H.; Lee, J. Capacity Scaling for D2D Aided Cooperative Relaying Systems Using NOMA. IEEE Wirel. Commun. Lett.
**2018**, 7, 42–45. [Google Scholar] [CrossRef] - Zhang, Z.; Ma, Z.; Xiao, M.; Ding, Z.; Fan, P. Full-Duplex Device-to-Device-Aided Cooperative Nonorthogonal Multiple Access. IEEE Trans. Veh. Technol.
**2017**, 66, 4467–4471. [Google Scholar] - Pei, L.; Yang, Z.; Pan, C.; Huang, W.; Chen, M.; Elkashlan, M. Energy-Efficient D2D Communications Underlaying NOMA-Based Networks with Energy Harvesting. IEEE Commun. Lett.
**2018**, 22, 914–917. [Google Scholar] [CrossRef] - Ahmad, A.; Rehmani, M.H.; Tembine, H.; Mohammed, O.A.; Jamalipour, A. IEEE Access Special Section Editorial: Optimization for Emerging Wireless Networks: IoT, 5G, and Smart Grid Communication Networks. IEEE Access
**2017**, 5, 2096–2100. [Google Scholar] [CrossRef] - Zhao, J.; Liu, Y.; Chai, K.K.; Chen, Y.; Elkashlan, M. Joint Subchannel and Power Allocation for NOMA Enhanced D2D Communications. IEEE Trans. Commun.
**2017**, 65, 5081–5094. [Google Scholar] [CrossRef] - 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] - Bertsekas, D.P. Nonlinear Programming; Athena Scientific: Belmont, MA, USA, 1999. [Google Scholar]
- Li, A.; Harada, A.; Kayama, H. A novel low computational complexity power assignment method for non-orthogonal multiple access systems. In IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences; The Institute of Electronics, Information and Communication Engineers: Tokyo, Japan, 2014; Volume 97, pp. 57–68. [Google Scholar]
- Gao, X.; Tan, X.; Wu, G.; Xiao, J. Tree-based search algorithm for power allocation in non-orthogonal multiple access systems. J. Chongqing Univ. Posts Telecommun.
**2017**, 29, 665–671. [Google Scholar] - Otao, N.; Kishiyama, Y.; Higuchi, K. Performance of Non-Orthogonal Access with Sic in Cellular Downlink Using Proportional Fair-Based Resource Allocation. In Proceedings of the 2012 International Symposium on Wireless Communication Systems (ISWCS), Paris, France, 28–31 August 2012; pp. 476–480. [Google Scholar]
- Chu, P.; Wang, X.; Wang, D.; Yu, L. A D2d Mode Selection Scheme with Energy Consumption Minimization Underlaying Two-Tier Heterogeneous Cellular Networks. In Proceedings of the 2017 IEEE 28th Annual International Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC), Montreal, QC, Canada, 8–13 October 2017; pp. 1–5. [Google Scholar]
- Joshi, S.; Mallik, R.K. Cooperative NOMA with AF Relaying over Nakagami-m Fading in a D2D Network. In Proceedings of the 2019 IEEE 89th Vehicular Technology Conference (VTC2019-Spring), Kuala Lumpur, Malaysia, 28 April–1 May 2019; pp. 1–6. [Google Scholar]
- Budhiraja, I.; Tyagi, S.; Tanwar, S.; Kumar, N.; Rodrigues, J.J. DIYA: Tactile Internet Driven Delay Assessment NOMA-based Scheme for D2D Communication. IEEE Trans. Ind. Inf.
**2019**, 15, 6354–6366. [Google Scholar] [CrossRef] - Li, N.; Xiao, M.; Rasmussen, L.K. Diverse Communication Modes in Cooperative Downlink Non-Orthogonal Multiple Access—Invited Paper. In Proceedings of the 2018 IEEE 87th Vehicular Technology Conference (VTC Spring), Porto, Portugal, 3–6 June 2018; pp. 1–5. [Google Scholar]
- Zhang, Y.; Liu, F. A Novel Cooperative Full Duplex Device to Device Communication Underlaying Cellular Networks. In Proceedings of the 2019 IEEE International Conference on Energy Internet (ICEI), Nanjing, China, 27–31 May 2019; pp. 548–553. [Google Scholar]
- Saito, Y.; Kishiyama, Y.; Benjebbour, A.; Nakamura, T.; Li, A.; Higuchi, K. Non-Orthogonal Multiple Access (NOMA) for Cellular Future Radio Access. In Proceedings of the 2013 IEEE 77th Vehicular Technology Conference (VTC Spring), Dresden, Germany, 2–5 June 2013; pp. 1–5. [Google Scholar]
- Balevi, E.; Gitlin, R.D. Pareto Optimization for Uplink NOMA Power Control. In Proceedings of the 2018 Wireless Telecommunications Symposium (WTS), Phoenix, AZ, USA, 17–20 April 2018; pp. 1–5. [Google Scholar]
- Reddy, M.H.; Rebekka, B. Power Allocation Policies for QoS Satisfaction in IoT Using NOMA. In Proceedings of the 2018 2nd International Conference on Trends in Electronics and Informatics (ICOEI), Tirunelveli, India, 11–12 May 2018; pp. 576–581. [Google Scholar]
- Chen, Y.; Bayesteh, A.; Wu, Y.; Ren, B.; Kang, S.; Sun, S.; Xiong, Q.; Qian, C.; Yu, B.; Ding, Z.; et al. Toward the Standardization of Non-Orthogonal Multiple Access for Next Generation Wireless Networks. IEEE Commun. Mag.
**2018**, 56, 19–27. [Google Scholar] [CrossRef] - Fang, F.; Zhang, H.; Cheng, J.; Roy, S.; Leung, V.C.M. Joint User Scheduling and Power Allocation Optimization for Energy-Efficient NOMA Systems with Imperfect CSI. IEEE J. Sel. Areas Commun.
**2017**, 35, 2874–2885. [Google Scholar] [CrossRef] - Wu, C.S.; Khoury, I. Tree-based Search Algorithm for Web Service Composition in SaaS. In Proceedings of the 2012 Ninth International Conference on Information Technology—New Generations, Las Vegas, NV, USA, 16–18 April 2012; pp. 132–138. [Google Scholar]
- Khatiri, A.; Mirjalily, G.; Khademzadeh, A. Energy-Efficient Shortcut Tree Routing in ZigBee Networks. In Proceedings of the 2012 Fourth International Conference on Computational Intelligence, Communication Systems and Networks, Phuket, Thailand, 24–26 July 2012; pp. 117–122. [Google Scholar]
- Yousefvand, M.; Ansari, N.; Khorsandi, S. Maximizing Network Capacity of Cognitive Radio Networks by Capacity-Aware Spectrum Allocation. IEEE Trans. Wirel. Commun.
**2015**, 14, 5058–5067. [Google Scholar] [CrossRef] - Chinnadurai, S.; Yoon, D. Energy Efficient MIMO-NOMA HCN with IoT for Wireless Communication Systems. In Proceedings of the 2018 International Conference on Information and Communication Technology Convergence (ICTC), Jeju, Korea, 17–19 October 2018; pp. 856–859. [Google Scholar]
- Tang, F.; Fadlullah, Z.M.; Kato, N.; Ono, F.; Miura, R. AC-POCA: Anticoordination Game Based Partially Overlapping Channels Assignment in Combined UAV and D2D-Based Networks. IEEE Trans. Veh. Technol.
**2018**, 67, 1672–1683. [Google Scholar] [CrossRef]

**Figure 1.**Illustration of the NOMA-based cellular network with D2D. (

**a**) Interference of cellular and D2D users. (

**b**) Power versus frequency on each subchannel.

**Figure 2.**Propose a tree model and find a final path to allocate power to each CU through the tree-based search method. In each layer the nodes are divided into several groups to pick out the best node for the next layer.

**Figure 4.**Computational complexity cost comparison of the tree-based search algorithm and the exhaustive search algorithm with $\Delta =0.01$.

**Figure 5.**Model of the distance-aware link selection algorithm. In the figure, all the devices are serviced in the same cell by the same base station (BS).

**Figure 6.**Flow chart of the exhaustive search algorithm and the joint user scheduling, tree-based search power allocation and distance-aware link selection algorithm. (

**a**) Flow chart of the exhaustive search algorithm (ESA). (

**b**) Flow chart of the joint user scheduling, power allocation and link selection algorithm (JUPLA).

**Figure 7.**CDF of the number of branches in each search process, with $\Delta $ = 0.15, which depicts the probability of finding out the solution increases with the growing of the search number.

**Figure 8.**D2D data rate versus number of CUs on the same SC. We study how the number of users influences the data rates on each SC where the number of the users changes from 1 to 7.

**Figure 9.**Arithmetic average of data rates versus number of CUs on the same SC. We study how the increasing of users influences the arithmetic average of the data rates on each SC where the number of the users changes from 1 to 7.

**Figure 10.**Geometry average of data rates versus number of CUs on the same SC. We study how the increasing of users impacts on the geometry average of data rates of CUs on each SC where the number of the users changes from 1 to 7.

**Figure 11.**Plot of the sum data rate of CUs on the same SC with respect to the number of CUs. On each SC, the number of CUs changes from 1 to 7.

Parameter | Value |
---|---|

Cellular radius | 450 m |

Maximum distance between D2D pairs | 75 m |

Total bandwidth | 2.0 MHz |

Carrier frequency | 2.6 GHz |

Maximum Transmission power of CU | 21 dBm |

Maximum transmission power of D2D | 21 dBm |

Maximum transmission power of BS | 26 dBm |

Number of CU | 10 |

Number of D2D pairs | 10 |

Number of users on each subchannel | 3 |

SINR threshold of D2D | 1.8 dB |

SINR threshold of CU | 1.3 dB |

Noise Spectral density | −173 dBm |

Path loss constant | 0.01 |

Path-loss exponent | 3.76 |

© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).