BAHONAR et al

Mohammad Hossein Bahonar, Department of Electrical and Computer Engineering,
Isfahan University of Technology, Isfahan, 84156- 83111, Iran.

# Distributed Pricing-based Resource Allocation for Dense D2D Communications
in Beyond 5G Networks

Mohammad Hossein Bahonar  Mohammad Javad Omidi  Department of Electrical and
Computer Engineering, Isfahan University of Technology, Isfahan 84156-83111,
Iran<EMAIL_ADDRESS>Bahonar M. H  Omidi M. J  Yanikomeroglu H

(<day> <Month>, <year>; <day> <Month>, <year>; <day> <Month>, <year>)

###### Abstract

[Abstract] Considering the dramatic increase of data rate demand in beyond 5G
networks due to the numerous transmitting nodes, dense device-to-device (D2D)
communications where multiple D2D pairs can simultaneously reuse a cellular
link (CL) can be considered as a communication paradigm for future wireless
networks. Since distributed methods can be more practical compared to complex
centralized schemes, we propose a low-complexity distributed pricing-based
resource allocation algorithm to allocate power to cellular user equipments
(CUEs) and D2D pairs  constrained to the minimum quality-of-service (QoS)
requirements of CUEs and D2D pairs in two phases. The price of each link is
set by the base station (BS). CUEs and D2D pairs maximize their rate-and-
interference-dependent utility function by adjusting their power in the first
phase, while the price of each link is updated at the BS based on the minimum
QoS requirements of CUEs and D2D pairs in the second phase. The proposed
utility function controls D2D admission, hence it is suitable for dense
scenarios.  The proposed method is fast due to the closed-form solution for
the first phase power allocation. Numerical results verify the effectiveness
of the proposed method for practical dense beyond 5G scenarios by allocating
resources to multiple D2D pairs and taking advantage of the spatial reuse gain
of D2D pairs. Furthermore, the utility function definition is discussed to
illustrate its effectiveness for SE maximization. Finally, the SE of the
proposed method is compared to other centralized and distributed algorithms to
demonstrate the higher sum-rate performance of the proposed algorithm.

, , (2016), Distributed Pricing-based Resource Allocation for Dense D2D
Communications, Trans Emerging Tel Tech, 2020;eXXXX.
https://doi.org/10.1002/ett.XXXX

###### keywords:

Device-to-device communications, pricing-based resource allocation, multiple
D2D pairs, distributed algorithms, dense cellular networks.

††articletype: Article Type

##  1 Introduction

With the development of new wireless generation systems such as 5th generation
(5G) and 6th generation (6G), smart devices and new applications such as
augmented reality (AR), virtual reality (VR), and vehicular Internet-of-Things
(IoT) has emerged.1 Considering the new applications and the dense deployment
of transmitting nodes in beyond 5G networks,2 it is estimated that the data
rate demand growth from 2010 to 2020 is more than 1000x and the number of
connected devices in 2020 is almost 50 billion devices. 3, 4

To achieve a high data rate, new communication paradigms such as massive
multiple-input multiple-output (M-MIMO), reflecting intelligent surface (RIS),
and device-to-device (D2D) communication should be developed to improve
spectral efficiency (SE) of cellular networks. Considering the dense
deployment of transmitting nodes and to address the data rate demand challenge
of beyond 5G cellular networks, D2D communications that enable direct data
transmission among user equipments (UEs) by exploiting physical proximity of
UEs can be a key technology for 5G new radio (NR) networks.5, 6 It has been
shown that D2D communications can improve the overall SE of cellular networks
by allowing D2D pairs to reuse the cellular spectrum and managing the
interference properly  while guaranteeing the minimum quality-of-service (QoS)
requirements of cellular UEs (CUEs), D2D pairs, or both. 7, 8, 9, 10 Data
offloading, energy efficiency (EE) improvement,11 coverage extension,12, 13
and battery life extension14 are some of the other advantages of D2D
communications.  Different tools such as game theory 15, 16, stochastic
geometry 11, 17, convex optimization 9, and machine learning 18, 19 have been
used for resource allocation to D2D communications in the literature.

Outband operation corresponding to D2D communications in unlicensed bands has
limited usage since it is not controlled by the base station (BS) and the
minimum QoS requirements of the D2D pairs may not be guaranteed.20 Therefore,
we study resource allocation for D2D communications in a licensed spectrum
termed as an inband operation that can take place in an overlay or an underlay
manner. 21 Interference mitigation among D2D tier and cellular tier is one of
the key challenges of D2D communications.  Dedicated resources are assigned to
D2D pairs in the overlay inband scheme as it has been discussed in Reference
22 where the authors propose a three-phase overlay spectrum sharing scheme,
hence the inter-tier interference issue is avoided. The study of the overlay
inband scheme is less challenging and results in lower SE improvement compared
to the study of the underlay inband scheme where D2D pairs can reuse the
cellular spectrum of CUEs. Reuse of the cellular spectrum is investigated and
proposed by the majority of the literature on D2D communications.17, 9, 23, 24
The authors of Reference 24, simultaneously address the interference
management and energy consumption problems by efficiently allocating resources
in energy harvesting-assisted underlay D2D communications.

The resource allocation to D2D pairs and CUEs can be performed in a
centralized 9, 25 or a distributed manner 26. In Reference 9, optimal resource
allocation to D2D pairs using a centralized scheme is investigated but it is
assumed that each cellular link (CL) can be used by at most one D2D pair,
hence the investigated system model is not a dense scenario. In References 25,
27, it is assumed that multiple D2D pairs can reuse each CL which results in
higher SE improvement compared to the case where at most one D2D pair can
reuse each CL. A heuristic approach is presented at Reference 27 to maximize
the sum-rate of the cell. The authors of Reference 25, propose a subchannel
sharing protocol followed by a greedy D2D selection procedure which can be
used for dense scenarios but has high computational complexity. The
centralized approaches usually result in higher SE with higher computational
complexity and signaling overhead compared to distributed schemes but are
usually impractical for dense scenarios and beyond 5G networks. The D2D pairs
can reuse the downlink 28, 29, 30 or the uplink 31, 32, 33 cellular spectrum
in an underlay inband scheme. The reuse of the downlink spectrum results in
lower SE improvement compared to the reuse of the uplink spectrum as the
uplink spectrum is less utilized, and hence a larger number of D2D pairs can
reuse the uplink spectrum due to its spatial reuse gain.34, 27 Therefore, we
study distributed resource allocation for dense D2D communications undelaying
the uplink spectrum of cellular networks.

Due to the dense deployment of transmitting nodes and D2D pairs in beyond 5G
networks, distributed resource allocation methods can be considered as
practical algorithms due to their low computational complexity. Most of the
distributed resource allocation methods use game-theoretic approaches to
develop and propose efficient algorithms. 35, 36, 37, 38 In Reference 35, the
spectrum trading problem has been investigated but one D2D pair is considered.
In Reference 36, a power control mechanism has been proposed for D2D
communications using game theory but one CUE is considered. The authors of
Reference 37 investigate cognitive D2D communications underlaying cellular
networks using a double-sided bandwidth-auction game but one D2D pair is
assumed to exist in the cell. In Reference 38, a distributed resource sharing
algorithm for D2D communications which jointly considers mode selection,
resource allocation, and power control is proposed. However, it is assumed
that each CL can be shared with at most one D2D pair and each D2D pair can
reuse multiple CLs. Additionally, the QoS constraints of D2D pairs are not
considered.

Considering dense networks 39, it is necessary to assume that the number of
D2D pairs is larger than the number of CUEs. In References 26, 38, it is
assumed that each D2D pair may reuse the CL of multiple CUEs simultaneously
which is not a practical assumption from the hardware point of view since it
is logical to assume that the transmitter of each D2D pair has one transmitter
module. The authors of Reference 26, propose a pricing-based interference
management algorithm. However, the proposed method does not maximize the
overall sum-rate of the cell but tries to guarantee the QoS constraints of
CUEs using an interference management scheme. Some other researches such as
Reference 10, 40, 41, 42, 43 assume that each D2D pair can reuse at most one
CL but multiple D2D pairs can reuse one CL which is a reasonable assumption
from the hardware point of view but makes the resource allocation problem more
challenging since binary resource sharing indicator variables may be needed in
the resource allocation problem formulation to indicate resource sharing
between D2D pairs and CUEs.

The authors of Reference 10, propose an auction-based distributed resource
allocation algorithm. However, the downlink spectrum of the cellular network
is proposed to be shared with D2D pairs and it is assumed that the
transmission power of each transmitter is selected from a finite set of
transmission powers. It is also assumed that the resource allocation to all
D2D pairs is possible and the resource allocation problem is feasible
considering all D2D pairs. This assumption is not valid for dense scenarios
since some of the D2D pairs may not be able to share resources with CUEs and
may remain unadmitted. Coalitional games have been used in Reference 40 for
resource allocation of D2D communications in uplink cellular networks.
However, the minimum QoS requirements of CUEs and D2D pairs are not considered
and the transmission powers are assumed to be fixed. Joint mode selection and
resource allocation of D2D communications has been investigated in Reference
41 using a matching game approach but transmission powers are assumed to be
constant and are not optimized. In Reference 42, a Stackelberg game with
pricing has been proposed to allocate resources for D2D communications in a
time-varying environment. However, the downlink spectrum is considered, the BS
to CUE transmission power is assumed to be constant, and the proposed payoff
function is a function of expected interference. The proposed payoff function
is not rate-dependent, and hence it may not be able to maximize the SE of the
cell. The authors of Reference 43 use coalitional games to allocate resources
to D2D communications underlaying uplink cellular networks. However, the
transmission powers are assumed to be fixed and a selection procedure is
utilized to maximize the sum-rate of the cell.

In this paper, we investigate D2D communications underlaying cellular networks
considering the dense deployment of transmitting nodes in beyond 5G networks
for uplink resource allocation.  All CUEs which are primary users must remain
admitted since the cell is fully-loaded. Hence, we aim to allocate
transmission power to each CUE. Considering the dense deployment of D2D pairs,
the admission of each D2D pair may not be guaranteed. Therefore, we aim to
allocate CL and transmission power to each D2D pair. We propose a resource
allocation algorithm in a distributed manner using a pricing-based approach
due to its lower computational complexity compared to centralized schemes. By
introducing price values for the interference links and an innovative utility
function, we propose a novel two phases distributed pricing-based non-
cooperative game for resource allocation where CUEs and D2D pairs are the
players of the game. In the first phase, the transmission powers of CUEs and
the transmission powers and CLs of D2D pairs are adjusted in a distributed
manner where each player of the game maximizes its utility function.
Considering the innovative proposed utility function, closed-form solutions
are derived for transmission power adjustment problems, and hence the proposed
scheme has low computational complexity. In the second phase, the BS updates
the prices of interference links using the efficient proposed updating scheme
in order to guarantee the minimum QoS requirements of CUEs and D2D pairs. We
also develop fast and effective admission criteria for the admission of D2D
pairs based on the proposed utility function. Additionally, the signaling
overhead is reduced significantly due to the innovative distance based
definition of utility function. Numerical results verify the effectiveness of
the proposed resource allocation method for practical dense scenarios of
beyond 5G networks. The main contributions of the paper can be summarized as
follows:

  * •

We consider dense deployment of D2D communications underlaying cellular
networks where multiple D2D pairs can reuse a CL and each D2D pair may reuse
at most one CL. By formulating the SE maximization problem constrained to
minimum QoS requirements of CUEs and D2D, we jointly allocate transmission
power and spectrum to CUEs and D2D pairs in a decentralized manner that has
not been investigated thoroughly in the literature.

  * •

An innovative utility function that considers the data rate as a reward and
the interference as a cost has been proposed which results in effectively
distributed maximization of the overall-sum rate of the cell guaranteeing the
minimum QoS requirements of CUEs and D2D pairs.

  * •

Considering the locations of UEs, the innovative proposed utility function
uses the distances between UEs to estimate the interference cost. Therefore,
the proposed algorithm has a low signaling overhead that is practical for
dense scenarios.

  * •

The transmission power adjustment of each CUE and the transmission power
adjustment and CL selection of each D2D pair are modeled as convex and mixed-
integer optimization problems, respectively. The derived closed-form solutions
cause the proposed algorithm to have low computational complexity.

  * •

Considering the proposed utility function, a fast and effective D2D pair
admission control has been proposed that causes the proposed method to be
practical for dense scenarios.

The rest of the paper is organized as follows. We describe the system model
and formulate the resource allocation problem in Section 2. The phases of the
distributed resource allocation problem are presented in Section 3. In Section
4, the proposed algorithm and some remarks are discussed. The simulation
results are reported in Section 5. Section 6 concludes the paper.

##  2 System Model and Problem Formulation

In this section, we present the system model, formulate the interference and
data rate of CUEs and D2D pairs, and then express the formulation of the
resource allocation problem.

###  2.1 System Model

We consider a single cell dense cellular network with $N$ orthogonal and equal
bandwidth CLs as shown in Fig. 1. It is reasonable to assume a single cell
network as interference management is the main challenge of D2D communications
and can be managed efficiently 44. The BS which is located at the center of
the cell has greater transmission power capability compared to CUEs and D2D
pairs. The downlink signal of the BS exists at most parts of the cell coverage
area while the uplink signal of each CUE exists in its proximity. Hence, the
downlink spectrum has lower reuse capability compared to the uplink spectrum.
We consider the uplink spectrum due to its underutilization 34 and the fact
that it can result in higher SE improvement.

The cellular network is assumed to be fully loaded consisting of two layers:
the cellular layer and the D2D layer. There exists $N$ CUEs denoted by
$\bm{\mathcal{C}}=\\{c_{1},c_{2},...,c_{N}\\}$ in the cellular layer where
each CUE occupies exactly one CL. There are $M$ D2D pairs in the D2D layer
denoted by $\bm{\mathcal{D}}=\\{d_{1},d_{2},...,d_{M}\\}$ and coexist with the
CUEs in the cell and reuse the uplink spectrum in an underlay manner. Each D2D
pair consists of two proximate UEs. One of the UEs is considered as the D2D
transmitter (Tx) while the other one is the D2D receiver (Rx).  It is assumed
that the locations of CUEs and D2D pairs are approximated using well known
GPS-based 45 or localization-based 46, 47 methods. The transmission of the
location data of all CUEs and D2D pairs requires a tiny fraction of the CL
capacity considering the typical values of CL bandwidth and user mobility in
cellular networks. Without loss of generality, half-duplex communication is
assumed among the Tx and Rx of a D2D pair since a full-duplex communication
consists of two half-duplex communications using two different CLs when the
transmitter of the first half-duplex communication is the receiver of the
second one and the receiver of the second half-duplex communication is the
transmitter of the first one. It is reasonable to assume that each D2D pair
can reuse the CL of exactly one CUE since the Tx module of each UE can
transmit at one CL at a time while multiple D2D pairs can share the same CL
simultaneously. The dense cell where the number of D2D pairs is greater than
the number of CUEs, i.e., $M>N$, is considered.

Figure 1: The system model of D2D communications underlaying a single cell
dense cellular network.

###  2.2 Interference and Data Rate

The channel gains of desired links from the Tx of $d_{j}$ to the Rx of $d_{j}$
and from $c_{i}$ to the BS are denoted by $h^{d}_{j}$ and $h^{c}_{i}$,
respectively. The channel gains of interference links from $c_{i}$ to the Rx
of $d_{j}$, from the Tx of $d_{j}$ to the Rx of $d_{k}$, and from the Tx of
$d_{j}$ to the BS are denoted by $h^{c,d}_{i,j}$, $h^{d,d}_{j,k}$, and
$h^{d,b}_{j}$, respectively. The power of additive white Gaussian noise is
denoted by $\sigma^{2}$. The bandwidths of all CLs are assumed to be equal.
The minimum QoS requirements of $c_{i}$ and $d_{j}$ in terms of bandwidth
normalized data rate (spectral efficiency) are denoted by $R^{c,\rm{min}}_{i}$
and $R^{d,\rm{min}}_{j}$, respectively.

There is no inter-layer interference in the cellular layer due to the
orthogonality of CLs. The signal to noise and interference ratios (SINRs) of
$c_{i}$ and $d_{j}$ are denoted by $\gamma^{c}_{i}$ and $\gamma^{d}_{j}$,
respectively, and expressed as

$\displaystyle\gamma^{c}_{i}$
$\displaystyle=\frac{p^{c}_{i}h^{c}_{i}}{\sigma^{2}+\sum\limits_{j=1}^{M}\psi_{i,j}p^{d}_{j}h^{d,b}_{j}},$
(1) $\displaystyle\gamma^{d}_{j}$
$\displaystyle=\frac{p^{d}_{j}h^{d}_{j}}{\sigma^{2}+\sum\limits_{i=1}^{N}\psi_{i,j}p^{c}_{i}h^{c,d}_{i,j}+\sum\limits_{k=1\atop
k\neq j}^{M}\sum\limits_{i=1}^{N}\psi_{i,j}\psi_{i,k}p^{d}_{k}h^{d,d}_{k,j}},$
(2)

respectively, where $\psi_{i,j}$ denotes the CUE-D2D resource sharing
indicator variable, $\psi_{i,j}=1$ when $c_{i}$ and $d_{j}$ use the same CL;
otherwise, $\psi_{i,j}=0$. The transmission powers of $c_{i}$ and Tx of
$d_{j}$ are denoted by $p^{c}_{i}$ and $p^{d}_{j}$, respectively. The second
term in the denominator of (1) corresponds to the intra-layer interference
power received at $c_{i}$ and caused by the D2D pairs that use the CL of
$c_{i}$. The second and third terms of the denominator of (2) corresponds to
the intra-layer and inter-layer interference powers received at $d_{j}$,
respectively. The intra-layer and inter-layer interferences are caused by the
CUE and D2D pairs that use the same CL of $d_{j}$, respectively. The spectral
efficiency of $c_{i}$ and $d_{j}$ can be formulated as

$\displaystyle R^{c}_{i}$ $\displaystyle=\log_{2}(1+\gamma^{c}_{i}),$ (3)
$\displaystyle R^{d}_{j}$ $\displaystyle=\log_{2}(1+\gamma^{d}_{j}),$ (4)

respectively.

###  2.3 Problem Formulation

We aim to maximize the overall sum-rate of the cell by joint assignment of CLs
and transmission powers to CUEs and underlaying D2D pairs in a distributed
manner. Due to the dense cell assumption, multiple admitted D2D pairs may
reuse one CL and some of the D2D pairs may remain unadmitted. Maximizing the
sum-rate of the cell is equivalent to maximizing the overall spectral
efficiency of the cell due to the equality of the bandwidths of CLs. Hence,
the sum-rate function which is normalized by the bandwidth can be expressed as

$\displaystyle
R^{\rm{Total}}=\sum_{i=1}^{N}R^{c}_{i}+\sum_{j=1}^{M}\rho_{j}R^{d}_{j},$ (5)

where $\rho_{j}$ is the D2D resource sharing indicator variable, $\rho_{j}=1$
when $d_{j}$ is able to reuse the CL of any CUE; otherwise, $\rho_{j}=0$. The
D2D resource sharing indicator can be expressed as

$\displaystyle\rho_{j}=\sum^{N}_{i=1}\psi_{i,j},~{}~{}\forall j=1,...,M,$ (6)
$\displaystyle\psi_{i,j}\in\\{0,1\\},~{}~{}\forall i=1,...,N,~{}~{}\forall
j=1,...,M.$ (7)

The transmission power vectors of CUEs and D2D pairs can be expressed as
$\bm{p}^{c}=[p^{c}_{1},p^{c}_{2},...,p^{c}_{N}]^{T}$ and
$\bm{p}^{d}=[p^{d}_{1},p^{d}_{2},...,p^{d}_{M}]^{T}$, respectively.  The
resource sharing vector of $d_{j}$ can be expressed as
$\bm{\psi}_{j}=[\psi_{1,j},\psi_{2,j},...,\psi_{N,j}]^{T}$. Hence, the
transmission power vector of all CUEs and D2D pairs and the CUE-D2D resource
sharing matrix can be expressed as
$\bm{P}=[(\bm{p}^{c})^{T},(\bm{p}^{d})^{T}]^{T}$ and
$\bm{\Psi}\triangleq[\bm{\psi}_{1},\bm{\psi}_{2},...,\bm{\psi}_{M}]$,
respectively. By expressing the minimum QoS requirements of $c_{i}$ and
$d_{j}$ in terms of their SINRs as

$\displaystyle\gamma^{c,\rm{min}}_{i}$
$\displaystyle=2^{R^{c,\rm{min}}_{i}}-1,$ (8)
$\displaystyle\gamma^{d,\rm{min}}_{j}$
$\displaystyle=2^{R^{d,\rm{min}}_{j}}-1,$ (9)

respectively.

Hence, the resource allocation problem can be formulated as the following
mixed-integer non-linear non-convex optimization problem:

$\displaystyle\max_{\bm{P},\bm{\Psi}}~{}~{}$ $\displaystyle R^{\rm{Total}},$
$\displaystyle\rm{s.t.}$ $\displaystyle\eqref{PsiDef},$
$\displaystyle\gamma_{i}^{c}\geq\gamma_{i}^{c,\rm{min}},~{}~{}$
$\displaystyle\forall i=1,...,N,$ (10a)
$\displaystyle\gamma_{j}^{d}\geq\rho_{j}\gamma_{j}^{d,\rm{min}},~{}~{}$
$\displaystyle\forall j=1,...,M,$ (10b) $\displaystyle 0\leq p^{c}_{i}\leq
P^{c,\rm{max}}_{i},~{}~{}$ $\displaystyle\forall i=1,...,N,$ (10c)
$\displaystyle 0\leq p^{d}_{j}\leq P^{d,\rm{max}}_{j},~{}~{}$
$\displaystyle\forall j=1,...,M,$ (10d)
$\displaystyle\rho_{j}\in\\{0,1\\},~{}~{}$ $\displaystyle\forall j=1,...,M,$
(10e)

where the optimization variables are $\bm{P}$ and $\bm{\Psi}$. The maximum
transmission powers of $d_{j}$ and $c_{i}$ are denoted by $P^{d,\rm{max}}_{j}$
and $P^{c,\rm{max}}_{i}$, respectively. The minimum QoS constraints of CUEs
and D2D pairs are expressed as (10a) and (10b), respectively. Using the D2D
resource sharing indicator variable, D2D admission control is incorporated in
constraint (10b). The transmission power limits of CUEs and D2D pairs are
expressed as (10c) and (10d), respectively. Constraint (10e) guarantees that
each D2D pair can share the CL of at most one CUE. Considering the definition
of the D2D resource sharing indicator variable (6), the constraint (10e)
implies that $\bm{\Psi}\in\\{0,1\\}^{(N\times M)}$ has at most one "1" element
in each column which means that each D2D pair can reuse at most one CL. Hence,
there may be several "1" elements in each row of $\bm{\Psi}$ which means that
each CL can be shared with multiple D2D pairs.

It is important to notice that finding the solution to the optimization
problem (10) using optimization methods at the BS is considered as a
centralized resource allocation approach which has a high computational
complexity and is not the aim of this research paper. We aim to solve the the
optimization problem (10) using a pricing-based game theoretic distributed
manner with low computational complexity which is practical for dense D2D
deployments. In other words, we propose a distributed resource allocation
algorithm which decomposes the centralized resource allocation algorithm to
different phases such that the sum-rate is maximized in a distributed manner
while the minimum QoS requirements and the transmission power limit
constraints of CUEs and D2D pairs are guaranteed. The simulation results
verify the effectiveness the proposed resource allocation algorithm which is
described in the next section.

##  3 Distributed Pricing-based Resource Allocation

In this section, we propose our pricing based game-theoretical algorithm to
jointly allocate CLs and transmission powers to CUEs and D2D pairs in a
distributed manner in order to maximize the overall sum-rate of the cell. In
order to mitigate the inter-layer interference among CUEs and D2D pairs and
the intra-layer interference among D2D pairs, we propose to define a set of
price values in order to be used to formulate the interference cost of
interfering links which are maintained at the BS. The game is modeled as a
two-phase non-cooperative pricing based game. CUEs and D2D pairs adjust their
transmission powers and CLs in order to maximize their own utility functions
in the first phase as explained in Section 3.1. In the second phase, the price
values of the interfering links are updated considering the minimum QoS
requirements of CUEs and D2D as explained in Section 3.2. By repeating the two
phases as explained in Section 4 the sum-rate is maximized as a result of the
first phase and the minimum QoS requirements of CUEs and D2D pairs are
guaranteed as a result of the second phase. Hence, the sum-rate is maximized
constrained to the minimum QoS requirement of CUEs and D2D pairs in a
distributed manner using our two phases proposed algorithm.

###  3.1 Non-cooperative Game among CUEs and D2D Pairs

In order to propose the pricing based resource allocation algorithm, the
parameters that represent the price values for the interference links should
be introduced. The price charged for the interference from from $c_{i}$ to the
Rx of $d_{j}$, from the Tx of $d_{i}$ to the BS, and from the Tx of $d_{i}$ to
the Rx of $d_{j}$ are denoted by $\theta^{c,d}_{i,j}$, $\theta^{d}_{i}$, and
$\theta^{d,d}_{i,j}$, respectively. The D2D to BS price vector is defined as
$\bm{\bar{\theta}}^{d}(i)\triangleq\theta^{d}_{i}$. The cellular to D2D and
D2D to D2D price matrix elements are defined as
$\bm{\theta}^{c,d}(i,j)\triangleq\theta^{c,d}_{i,j}$ and
$\bm{\theta}^{d,d}(i,j)\triangleq\theta^{d,d}_{i,j}$, respectively and can be
expressed in a vector form as
$\bm{\bar{\theta}}^{c,d}\triangleq\rm{vec}(\bm{\theta}^{c,d})$ and
$\bm{\bar{\theta}}^{d,d}\triangleq\rm{vec}(\bm{\theta}^{d,d})$, respectively ,
where $\rm{vec}(.)$ function transforms a matrix into a vector in a column-
wise manner. Hence, the total price vector can be defined as
$\bm{\theta}\triangleq[(\bm{\bar{\theta}}^{c,d})^{T},(\bm{\bar{\theta}}^{d})^{T},(\bm{\bar{\theta}}^{d,d})^{T}]^{T}$.

Using the total price vector, the first phase of the proposed algorithm which
is the game among CUEs and D2D pairs that can be defined as

$\mathcal{G}=\\{\bm{\mathcal{K}},(\bm{\mathcal{S}}_{k})_{k\in\mathcal{K}},(U_{k}(\bm{\theta},\bm{P},\bm{\Psi})_{k\in\mathcal{K}})\\},$
(11)

where $\bm{\mathcal{K}}=\\{\bm{\mathcal{C}},\bm{\mathcal{D}}\\}$ is the set of
all CUEs and D2D pairs that are the players of the game. The strategy of UE
$k$ is denoted as $\bm{\mathcal{S}}_{k}$ which can be formulated as

$\bm{\mathcal{S}}_{k}=\left\\{\begin{array}[]{ll}\bm{\mathcal{S}}_{i}^{c}\triangleq\\{p^{c}_{i},l_{i}\\},&\mbox{if
}k=c_{i}\in\mathcal{C}\\\
\bm{\mathcal{S}}_{j}^{d}\triangleq\\{p^{d}_{j},l_{j}\\},&\mbox{if
}k=d_{j}\in\mathcal{D}\end{array}\right.,$ (12)

where $\bm{\mathcal{S}}_{i}^{c}$ and $\bm{\mathcal{S}}_{j}^{d}$ are the
strategies of $c_{i}$ and $d_{j}$, respectively. The transmission powers of
$c_{i}$ and the Tx of $d_{j}$ are denoted as $p^{c}_{i}$ and $p^{d}_{j}$,
respectively. The parameters $l_{i}\in\\{1,2,...,N\\}$ and
$l_{j}\in\\{1,2,...,N+1\\}$ are the index of the CLs that $c_{i}$ and $d_{j}$
use for data transmission, respectively. Due to the fully loaded assumption of
the cell, each $c_{i}$ uses its own CL and hence, $l_{i}=i$. Each D2D pair
reuses one CL or remains unadmitted. Hence, $l_{j}\in\\{1,2,...,N+1\\}$, where
$l_{j}=k,k\in\\{1,2,...,N\\}$ corresponds to the case where $d_{j}$ reuses the
the CL of $c_{k}$ and $l_{j}=N+1$ corresponds to the case where $d_{j}$
remains unadmitted. The utility function of the UE $k$ is denoted by
$U_{k}(\bm{\theta},\bm{P},\bm{\Psi})$ and can be expressed as

$U_{k}(\bm{\theta},\bm{P},\bm{\Psi})=\left\\{\begin{array}[]{ll}U_{i}^{c}(\bm{\theta},\bm{P},\bm{\Psi}),&\mbox{if
}k=c_{i}\in\mathcal{C}\\\ U_{j}^{d}(\bm{\theta},\bm{P},\bm{\Psi}),&\mbox{if
}k=d_{j}\in\mathcal{D}\end{array}\right.,$ (13)

where $U_{i}^{c}(\bm{\theta},\bm{P},\bm{\Psi})$ and
$U_{j}^{d}(\bm{\theta},\bm{P},\bm{\Psi})$ are the utility functions of $c_{i}$
and $d_{j}$, respectively.

By the innovative introduction of $(N+1)^{th}$ CL, the assignment problem can
be formulated effectively which will be used to define the D2D index sharing
set and to derive the effective closed-form solution to the problem in the
next section. It should be noted that the following conclusion can also be
driven:

$l_{j}=N+1~{}\Leftrightarrow~{}\psi_{i,j}=0,\forall
i=1,2,...,N~{}\Leftrightarrow~{}\rho_{j}=0.$ (14)

Each UE (CUE or D2D pair) maximizes its payoff function constrained to
transmission power limits. The proposed utility functions of CUEs and D2D
pairs and their maximization is discussed in the next sections.

####  3.1.1 CUEs

Our proposed utility function of $c_{i}$ can be expressed as

$U^{c}_{i}(\bm{\theta},\bm{P},\bm{\Psi})=R^{c}_{i}(\bm{P},\bm{\Psi})-p^{c}_{i}\sum_{j=1}^{M}\psi_{i,j}\theta_{i,j}^{c,d}\Big{(}\frac{s(c_{i},d_{j})}{s(d_{j})}\Big{)}^{-\alpha}$
(15)

where the distance between $c_{i}$ and the Rx of $d_{j}$ and the distance
between the Tx of $d_{j}$ and its corresponding Rx are denoted by
$s(c_{i},d_{j})$ and $s(d_{j})$, respectively. The first and second terms of
(15) are the rate reward and the interference cost of $c_{i}$, respectively.
It is important to notice that the interference cost is a function of the
distances between $c_{i}$ and other D2D pairs which cause the proposed method
to have low signaling overhead when the locations of CUEs and D2D pairs are
available.  It should be mentioned that channel-gain-based utility function
definition would result in high signaling overhead as there are
$N+M+NM+\binom{M}{2}$ channel gain values in the network, while the distance-
based utility function definition which requires $N+M$ location values is much
more suitable from the signaling overhead point of view and can be considered
as a practical approach. Each CUE aims to maximize its payoff function by
adjusting its transmission power which can be formulated as

$\displaystyle{p^{c}_{i}}^{*}=$
$\displaystyle\operatorname*{arg\,max}_{p^{c}_{i}}~{}~{}$ $\displaystyle
U^{c}_{i}(\bm{\theta},\bm{P},\bm{\Psi}),$ (16a)
$\displaystyle~{}~{}~{}~{}~{}\rm{s.t.}$ $\displaystyle 0\leq p^{c}_{i}\leq
P^{c,\rm{max}}_{i},$ (16b)

where ${p^{c}_{i}}^{*}$ is the optimal transmission power strategy of $c_{i}$.
The optimization variable of (16) is $p^{c}_{i}$ as $c_{i}$ can only adjust
its transmission power and is not able to change the transmission powers of
other CUEs and D2D pairs, the resource sharing indicator variables of D2D
pairs, and the interference cost which is set by the BS. Therefore, the
utility function $U^{c}_{i}(\bm{\theta},\bm{P},\bm{\Psi})$ can be expressed as
a function of $p^{c}_{i}$ as
$U^{c}_{i}(\bm{\theta},\bm{P},\bm{\Psi})\triangleq f^{c}_{i}(p^{c}_{i})$.

We define the D2D sharing index set $\bm{\beta}_{i},(i=1,2,...,N)$ as the set
of indices of the D2D pairs that reuse the CL of $c_{i}$ which is formulated
as
$\bm{\beta}_{i}\triangleq\\{\beta_{i,1},\beta_{i,2},...,\beta_{i,N_{i}}\\}$,
where $N_{i}$ and $\beta_{i,k}$ are the number of D2D pairs and the index of
$k^{th}$ D2D pair that reuse the CL of $c_{i}$, respectively. Since some D2D
pairs may remain unadmitted, we define the set of unadmitted D2D pairs as D2D
sharing index set
$\bm{\beta}_{N+1}\triangleq\\{\beta_{i,1},\beta_{i,2},...,\beta_{i,N_{N+1}}\\}$,
where $N_{N+1}$ is the number of unadmitted D2D pairs. Considering the
definition of $\bm{\beta}_{i}$ it can be concluded that

$\displaystyle\bigcup_{i=1}^{N+1}\bm{\beta}_{i}=\mathcal{D},$ (17a)
$\displaystyle\bm{\beta}_{i}\cap\bm{\beta}_{j}=\emptyset,~{}\forall
i\in\\{1,2,...,N+1\\}\neq j\in\\{1,2,...,N+1\\}.$ (17b)

Since the D2D sharing index set $\bm{\beta}_{i}$ consists of all the D2D pairs
that reuse the CL of $c_{i}$, the utility function of (15) can be simplified
by removing the D2D and CUE-D2D resource sharing indicator variables as

$f^{c}_{i}(p^{c}_{i})=\log_{2}(1+p^{c}_{i}\Gamma^{c}_{i})-p^{c}_{i}q^{c}_{i},$
(18)

where $\Gamma^{c}_{i}$ and $q^{c}_{i}$ are constant with respect to
$p^{c}_{i}$ and can be formulated as

$\displaystyle\Gamma^{c}_{i}$
$\displaystyle=\frac{h^{c}_{i}}{\sigma^{2}+\sum\limits_{j=1}^{N_{i}}p^{d}_{\beta_{i,j}}h^{d,b}_{j}},$
(19) $\displaystyle q^{c}_{i}$
$\displaystyle=\sum_{j=1}^{N_{i}}\theta_{i,\beta_{i,j}}^{c,d}\Big{(}\frac{s(c_{i},d_{\beta_{i,j}})}{s(d_{\beta_{i,j}})}\Big{)}^{-\alpha},$
(20)

respectively. The function $f^{c}_{i}(p^{c}_{i})$ is strictly concave with
respect to $p^{c}_{i}$ since the first and second terms of (18) are strictly
concave and linear with respect to $p^{c}_{i}$, respectively. Due to the
linearity of (16b) with respect to $p^{c}_{i}$, the feasible area of (16) is
convex. Considering the concavity of (18), the optimization problem (16) is
also convex and can be solved analytically. The closed-form solution can be
formulated as

${p^{c}_{i}}^{*}=\mathcal{F}(q^{c}_{i},\Gamma^{c}_{i},P^{c,\rm{max}}_{i}),$
(21)

where

$\mathcal{F}(x,y,z)\triangleq\left\\{\begin{array}[]{ll}0,&\mbox{if}~{}(\frac{1}{\ln(2)x}-\frac{1}{y})\leq
0\\\
\frac{1}{\ln(2)x}-\frac{1}{y},{}&\mbox{if}~{}0<(\frac{1}{\ln(2)x}-\frac{1}{y})<z\\\
z,&\mbox{if}~{}(\frac{1}{\ln(2)x}-\frac{1}{y})\leq 0\end{array}\right.,$ (22)

and the proof is  presented in appendix A.

####  3.1.2 D2D Pairs

If $d_{j}$ reuses the CL of $c_{i}$, our proposed utility function for $d_{j}$
can be formulated as

$U^{d}_{j}(\bm{\theta},\bm{P},\bm{\Psi})=\rho_{j}R^{d}_{j}(\bm{P},\bm{\Psi})-p^{d}_{j}\Big{(}\sum_{i=1}^{N}\psi_{i,j}\theta^{d}_{j}\Big{(}\frac{s(d_{j},BS)}{s(c_{i})}\Big{)}^{-\alpha}+\sum_{i=1}^{N}\sum\limits_{k=1\atop
k\neq
j}^{M}\psi_{i,j}\psi_{i,k}\theta_{j,k}^{d,d}\Big{(}\frac{s(d_{j},d_{k})}{s(d_{k})}\Big{)}^{-\alpha}\Big{)},$
(23)

where the distance between the Tx of $d_{j}$ and the BS, the distance between
$c_{i}$ and its corresponding receiver which is the BS, and the distance
between the Tx of $d_{j}$ and the Rx of $d_{k}$ are denoted by $s(d_{j},BS)$,
$s(c_{i})$, and $s(d_{j},d_{k})$, respectively. The first and second terms of
(23) are the rate reward and the interference cost of $d_{j}$, respectively.
The proposed cost term is a function of the locations of D2D pairs and CUEs.
It should be mentioned that the rate reward depends on the admission of
$d_{j}$ and hence is multiplied by $\rho_{j}$. Each D2D pair aims to maximize
its utility function by adjusting its transmission power and CL which can be
formulated as the following mixed-integer programming:

$\displaystyle{\\{{p^{d}_{j}}^{*},{\bm{\psi}_{j}}^{*}\\}}=$
$\displaystyle\operatorname*{arg\,max}_{p^{d}_{j},\bm{\psi}_{j}}~{}~{}$
$\displaystyle U^{d}_{j}(\bm{\theta},\bm{P},\bm{\Psi}),$ (24a)
$\displaystyle~{}~{}~{}~{}~{}\rm{s.t.}$ $\displaystyle 0\leq p^{d}_{j}\leq
P^{d,\rm{max}}_{j},$ (24b) $\displaystyle\sum^{N}_{i=1}\psi_{i,j}\leq 1,$
(24c) $\displaystyle\psi_{i,j}\in\\{0,1\\},$ (24d)

where ${p^{d}_{j}}^{*}$ and ${\bm{\psi}_{j}}^{*}$ are the optimal transmission
power and resource sharing indicator variable of $d_{j}$, respectively, that
correspond to the optimal strategy of $d_{j}$. Since the optimization problem
(24) is a mixed-integer problem, each D2D pair may update its strategy
according to one of the following three CL updating schemes:

  * •

Keeping CL: The D2D pair is using a specific CL for data transmission. By
optimizing the utility function of the D2D pair and considering all the other
CLs, it is concluded that reusing the other CLs does not result in a higher
payoff compared to reusing the current one. Hence, the D2D pair keeps its
current CL.

  * •

Changing CL: The highest payoff of the D2D pair can be obtained by reusing a
CL other than the current one that the D2D pair is reusing. Hence, the CL of
the D2D pairs is changed to the new CL.

  * •

Un-admission: An unadmitted D2D pair is not able to reuse any of the CLs and
its transmission power should remain zero to avoid interference to other CUEs
and D2D pairs, and hence its data rate is equal to zero. Considering (23), it
can be concluded that the payoff of an unadmitted D2D pair is equal to zero.

In order to solve the mixed-integer problem (24), the D2D sharing index sets
and CL strategy updating schemes can be used to simplify the D2D utility
functions. Thus, the utility function of $d_{j}$ which is expressed as (23)
can be simplified as $f^{d}_{j}(p^{d}_{j})$ and $\bar{f}^{d}_{j,i}(p^{d}_{j})$
when the CL strategy updating scheme of $d_{j}$ is Keeping CL and Changing CL,
respectively. The utility function of $d_{j}$ when the D2D pair changes its CL
to the CL of $c_{i}$ is denoted by $\bar{f}^{d}_{j,i}(p^{d}_{j})$. As the
simplified utility functions $f^{d}_{j}(p^{d}_{j})$ and
$\bar{f}^{d}_{j,i}(p^{d}_{j})$ are formulated in the following, it can be seen
that the resource sharing indicator variables are removed from the initial
utility function definition (23) as a result of using D2D sharing index sets.
The simplified utility function of $d_{j}$ is a function of the D2D
transmission power $p^{d}_{j}$ as a result of considering the cL strategy
updating schemes.

The utility function of $d_{j}$ when it is using the CL of $c_{i}$ and its CL
strategy updating scheme is Keeping CL can be formulated as

$f^{d}_{j}(p^{d}_{j})=\log_{2}(1+p^{d}_{j}\Gamma^{d}_{j})-p^{d}_{j}q^{d}_{j},$
(25)

where $j\in\bm{\beta}_{i}$. The parameters $\Gamma^{d}_{j}$ and $q^{d}_{j}$
are constant with respect to $p^{d}_{j}$ and can be expressed as

$\displaystyle\Gamma^{d}_{j}$
$\displaystyle=\frac{h^{d}_{j}}{\sigma^{2}+p^{c}_{i}h^{c,d}_{i,j}+\sum\limits_{k=1\atop\beta{i,k}\neq
j}^{N_{i}}p^{d}_{\beta_{i,k}}h^{d,d}_{\beta_{i,k},j}},$ (26) $\displaystyle
q^{d}_{j}$
$\displaystyle=\theta^{d}_{j}\Big{(}\frac{s(d_{j},bs)}{s(c_{i})}\Big{)}^{-\alpha}+\sum\limits_{k=1\atop\beta_{i,k}\neq
j}^{N_{i}}\theta^{d,d}_{j,\beta_{i,k}}\Big{(}\frac{s(d_{j},d_{\beta_{i,k}})}{s(d_{\beta_{i,k}})}\Big{)}^{-\alpha},$
(27)

respectively. Using a similar approach to the previous section, the optimal
power of $d_{j}$ when its CL is not changed can be expressed using a closed-
form solution as

${p^{d}_{j}}^{*}=\mathcal{F}(q^{d}_{j},\Gamma^{d}_{j},P^{d,\rm{max}}_{j}),$
(28)

where the proof is similar to the proof of (21).

Similarly, the utility function of $d_{j}$ when its CL is changed to the CL of
$c_{i}$ can be expressed as

$\bar{f}^{d}_{j,i}(p^{d}_{j})=\log_{2}(1+p^{d}_{j}\bar{\Gamma}^{d}_{j,i})-p^{d}_{j}\bar{q}^{d}_{j,i},$
(29)

where $j\notin\bm{\beta}_{i}$. The parameters $\bar{\Gamma}^{d}_{j,i}$ and
$\bar{q}^{d}_{j,i}$ are constant with respect to $p^{d}_{j}$ and can be
expressed as

$\displaystyle\bar{\Gamma}^{d}_{j,i}$
$\displaystyle=\frac{h^{d}_{j}}{\sigma^{2}+p^{c}_{i}h^{c,d}_{i,j}+\sum\limits_{k=1}^{N_{i}}p^{d}_{\beta_{i,k}}h^{d,d}_{\beta_{i,k},j}},$
(30) $\displaystyle\bar{q}^{d}_{j,i}$
$\displaystyle=\theta^{d}_{j}\Big{(}\frac{s(d_{j},bs)}{s(c_{i})}\Big{)}^{-\alpha}+\sum\limits_{k=1}^{N_{i}}\theta^{d,d}_{j,\beta_{i,k}}\Big{(}\frac{s(d_{j},d_{\beta_{i,k}})}{s(d_{\beta_{i,k}})}\Big{)}^{-\alpha},$
(31)

respectively. Hence, the optimal power of $d_{j}$ when the its CL is changed
to the CL of $c_{i}$ can be formulated as

${p^{d}_{j}}^{*}=\mathcal{F}(\bar{q}^{d}_{j,i},\bar{\Gamma}^{d}_{j,i},P^{d,\rm{max}}_{j}),$
(32)

which is a closed-form solution and its proof is similar to the proof of (21).

Each D2D pair computes its payoff value considering the three CL updating
schemes. The transmission powers of the Keeping CL and Changing CL schemes
have been derived in a closed-form, and hence their payoff values can be
computed from the D2D pair utility function expression (23). One and $(N-1)$
payoff values are computed for the Keeping CL and Changing CL schemes,
respectively. From the D2D utility function definition it can be easily
verified that the payoff value of the Un-admission scheme is equal to zero.
Most of the admission strategy evaluation metrics in the literature such as
the proposed admission strategy of 9 are based on complex formulas or formulas
that are different from the proposed resource allocation method and result in
additional computational complexity of the algorithm. Our proposed admission
strategy is to compare the payoff value with zero which utilizes the novel D2D
utility function definition and hence is a simple, fast, and novel admission
strategy. In other words, the payoff values of both Keeping CL and Changing CL
schemes are computed and compared to zero. The CL corresponding to the maximum
payoff value is selected as the optimal CL. If all the payoff values
corresponding to both Keeping CL and Changing CL schemes of a D2D pair are
less than zero, the D2D pair will select the Un-admission scheme with zero
payoff value which is our proposed D2D admission strategy suitable for dense
D2D deployment in beyond 5G networks.

###  3.2 Pricing Considering QoS Constraints

The interference cost should be updated by adjusting the price vector
$\bm{\theta}$. Each CUE and D2D pair request a minimum QoS in terms of data
rate from the network. If the achievable data rate of a CUE or a D2D pair is
lower than its minimum required rate, we propose to increase those elements of
the price vector that are corresponding to the interference links of that CUE
or D2D pair. The price of the interference links can be decreased if the data
rate is much larger than the minimum required rate. The pricing vector update
procedure depends on the QoS of CUEs and D2D pairs.

####  3.2.1 QoS of CUEs

After transmission power updating of CUEs and D2D pairs that is described in
Section 3.1, the QoS constraints of CUEs should be investigated to adjust the
price vector $\bm{\theta}$. All $N_{i}$ D2D pairs with indices
$\bm{\beta}_{i}$ reuse the CL of $c_{i}$ and cause interference to it. The
data rate of $c_{i}$ in $n^{th}$ iteration denoted as ${R^{c}_{i}}^{(n)}$,
should be compared to the minimum QoS requirement of $c_{i}$, i.e.,
$R^{c,\rm{min}}_{i}$, at the BS. If ${R^{c}_{i}}^{(n)}<R^{c,\rm{min}}_{i}$, we
propose to increase the price of the links that cause interference to $c_{i}$
in the $(n+1)^{th}$ iteration as

${\theta^{d}_{\beta_{i,j}}}^{(n+1)}={\theta^{d}_{\beta_{i,j}}}^{(n)}(1+\lambda_{1}),~{}j=1,...,N_{i},$
(33)

where ${\theta^{d}_{\beta_{i,j}}}^{(n+1)}$ and
${\theta^{d}_{\beta_{i,j}}}^{(n)}$ are the price of the interference links
from $d_{\beta_{i,j}}$ to the BS in the $(n+1)^{th}$ and $n^{th}$ iterations,
respectively. The price updating parameter for the price increment scheme is
denoted by $\lambda_{1}$.

Additionally, we propose to decrease the price of interference links, if the
data rate is larger than minimum required data rate plus a marginal rate. In
other words, if ${R^{c}_{i}}^{(n)}>R^{c,\rm{min}}_{i}(1+\zeta)$, we propose to
update the price of interference links as

${\theta^{d}_{\beta_{i,j}}}^{(n+1)}={\theta^{d}_{\beta_{i,j}}}^{(n)}(1-\lambda_{2}),~{}j=1,...,N_{i},$
(34)

where $\zeta$ is the marginal rate adjustment parameter and $\lambda_{2}$ is
the price updating parameter for the price decrement scheme.

####  3.2.2 QoS of D2D Pairs

Similar to the pricing procedure of CUEs, the data rate of $d_{j}$ in $n^{th}$
iteration denoted as ${R^{d}_{j}}^{(n)}$, should be compared to the minimum
required data rate of $d_{j}$, i.e., $R^{d,\rm{min}}_{j}$, at its receiver.
Assuming $d_{j}$ to be using the CL of $c_{i}$, $(N_{i}-1)$ D2D pairs with
indices $\bar{\bm{\beta}}_{i}=\bm{\beta}_{i}-\\{k|\beta_{i,k}=j\\}$ and
$c_{i}$ cause interference to $d_{j}$. If
${R^{d}_{j}}^{(n)}<R^{d,\rm{min}}_{j}$, we propose to update the price of the
interference links as

$\displaystyle{\theta^{c,d}_{i,j}}^{(n+1)}$
$\displaystyle={\theta^{c,d}_{i,j}}^{(n)}(1+\lambda_{1}),$ (35)
$\displaystyle{\theta^{d,d}_{k,j}}^{(n+1)}$
$\displaystyle={\theta^{d,d}_{k,j}}^{(n)}(1+\lambda_{1}),~{}k\in\bar{\bm{\beta}}_{i}.$
(36)

Additionally, if ${R^{d}_{j}}^{(n)}>R^{d,\rm{min}}_{j}(1+\zeta)$, we proposed
price updating of the interference links can be expressed as

$\displaystyle{\theta^{c,d}_{i,j}}^{(n+1)}$
$\displaystyle={\theta^{c,d}_{i,j}}^{(n)}(1-\lambda_{2}),$ (37)
$\displaystyle{\theta^{d,d}_{k,j}}^{(n+1)}$
$\displaystyle={\theta^{d,d}_{k,j}}^{(n)}(1-\lambda_{2}),k\in\bar{\bm{\beta}}_{i}.$
(38)

##  4 Proposed Algorithm

In this section, we propose our resource allocation algorithm named
Distributed Spectrally Efficient Resource Allocation (DSERA) algorithm from an
algorithmic point of view. In addition to that, some remarks related to the
DSERA algorithm are also discussed.

###  4.1 Two Phases of the Resource Allocation Algorithm

Our proposed resource allocation algorithm consists of two phases that are
already explained in the previous sections. It should be noted that the first
phase of the proposed algorithm results in a distributed overall sum-rate
maximization since the data rate is considered as the reward term and the
interference is modeled as the cost term of the utility function. The maximum
and minimum transmission power constraints are considered in the optimization
process of the first phase. The price values of the interfering links are
adjusted in the second phase according to the QoS constraints of CUEs and D2D
pairs. The repeated competition among CUEs and D2D pairs to reuse the uplink
spectrum considering the set of prices that are maintained by the BS will
eventually result in a resource allocation that guarantees the minimum QoS
requirements of CUEs and admitted D2D pairs.

###  4.2 Signaling Overhead

The signaling overhead is an important issue in wireless systems. In our
proposed method, the channel gains of the links from the CUEs to the BS and
from the Txs of D2D pairs to their corresponding Rxs which are the desired
links should be estimated. In order to compute the data rate of $c_{i}$, the
BS measures the aggregate interference of the CL corresponding to $c_{i}$ and
computes the data rate of $c_{i}$ using $h^{c}_{i}$ and $p^{c}_{i}$.
Therefore, the payoff value of $c_{i}$ is also computed. In order to compute
the data of $d_{j}$, the Rx of $d_{j}$ measures the aggregate interference of
the CL corresponding to $d_{j}$ and computes its data rate and payoff value
using $p^{d}_{j}$ and $h^{d}_{j}$. The channel gains of other links are not
required to compute the data rate as the aggregate interference is computed at
each receiver and the proposed utility function utilizes a distance-based cost
term. Hence, the final proposed algorithm has a low signaling overhead.
Therefore, our proposed algorithm is a practical resource allocation scheme
for dense scenarios.

###  4.3 Price Updating Procedure

We propose two price updating schemes which are whole price updating and step-
by-step price updating schemes and are introduced in the following:

  * •

Whole price updating: In this scheme the price values of all the links are
updated simultaneously at the evaluation of phase two of the proposed
algorithm, and hence is quicker compared to the other price updating strategy.

  * •

Step-by-step price updating: In this scheme the price values corresponding to
one CUE and the D2D pairs that are using the CL of the CUE are updated at each
evaluation of the proposed algorithm which is slower compared to the other
price updating strategy.

Due to the distributed manner of our proposed resource allocation algorithm,
the step-by-step price updating scheme which updates a part of the prices at
each evaluation of phase two of the proposed algorithm is expected to results
in a higher sum-rate compared to the sum-rate of the whole price updating
scheme. The effect of the price updating procedure is investigated using
numerical evaluation.

###  4.4 Algorithmic Representation of the First Phase

The first phase of the DSERA algorithm which is a non-cooperative game among
CUEs and D2D pairs has been discussed in Section 3.1 and summarized as
Algorithm 1.

Algorithm 1 First Phase of the DSERA Algorithm

1:for $i\in\mathcal{C}$ do

2: Compute $\Gamma^{c}_{i}$ from (19)

3: Compute $q^{c}_{i}$ from (20)

4: Compute $p^{c}_{i}={p^{c}_{i}}^{*}$ from (21)

5:end for

6:for $j\in\mathcal{D}$ do

7: $\tilde{u}^{d}_{j}=\\{0,...,0\\}^{T}\in\\{0,1\\}^{(N+1)\times 1}$

8: $\tilde{p}^{d}_{j}=\\{0,...,0\\}^{T}\in\mathcal{R}^{(N+1)\times 1}$

9: for $i\in\mathcal{C}$ do

10: if $\psi_{i,j}=1$ then

11: Compute $\Gamma^{d}_{j}$ from (26)

12: Compute $q^{d}_{j}$ from (27)

13: Compute $\tilde{p}^{d}_{j}(i)={p^{d}_{j}}^{*}$ from (28)

14: Compute $\tilde{u}^{d}_{j}(i)=f^{d}_{j}(p^{d}_{j})$ from (25)

15: else

16: Compute $\bar{\Gamma}^{d}_{j,i}$ from (30)

17: Compute $\bar{q}^{d}_{j,i}$ from (31)

18: Compute $\tilde{p}^{d}_{j}(i)={p^{d}_{j}}^{*}$ from (32)

19: Compute $\tilde{u}^{d}_{j}(i)=\bar{f}^{d}_{j,i}(p^{d}_{j})$ from (29)

20: end if

21: end for

22: $l_{j}=\arg\max_{k\in\\{0,1\\}^{(N+1)}}\tilde{u}^{d}_{j}$

23: $p^{d}_{i}=\tilde{p}^{d}_{j}(l_{j})$

24:end for

Algorithm 2 Second Phase of the DSERA Algorithm - Whole price updating scheme

1:Given $n$

2:for $i\in\mathcal{C}$ do

3: Compute ${R^{c}_{i}}^{(n)}=R^{c}_{i}$ from (3)

4: if ${R^{c}_{i}}^{(n)}<R^{c,\rm{min}}_{i}$ then

5: Update price vector from (33)

6: else if ${R^{c}_{i}}^{(n)}>R^{c,\rm{min}}_{i}(1+\zeta)$ then

7: Update price vector from (34)

8: end if

9:end for

10:for $j\in\mathcal{D}$ do

11: Compute ${R^{d}_{j}}^{(n)}=R^{d}_{j}$ from (4)

12: if ${R^{d}_{j}}^{(n)}<R^{d,\rm{min}}_{j}$ then

13: Update price vector from (35) and (36)

14: else if ${R^{c}_{i}}^{(n)}>R^{c,\rm{min}}_{i}(1+\zeta)$ then

15: Update price vector from (37) and (38)

16: end if

17:end for

Algorithm 3 Second Phase of the DSERA Algorithm - Step-by-step price updating
scheme

1:Given $n$ and $i$

2:Compute ${R^{c}_{i}}^{(n)}=R^{c}_{i}$ from (3)

3:if ${R^{c}_{i}}^{(n)}<R^{c,\rm{min}}_{i}$ then

4: Update price vector from (33)

5:else if ${R^{c}_{i}}^{(n)}>R^{c,\rm{min}}_{i}(1+\zeta)$ then

6: Update price vector from (34)

7:end if

8:for $j\in\bm{\beta}_{i}$ do

9: Compute ${R^{d}_{j}}^{(n)}=R^{d}_{j}$ from (4)

10: if ${R^{d}_{j}}^{(n)}<R^{d,\rm{min}}_{j}$ then

11: Update price vector from (35) and (36)

12: else if ${R^{c}_{i}}^{(n)}>R^{c,\rm{min}}_{i}(1+\zeta)$ then

13: Update price vector from (37) and (38)

14: end if

15:end for

Algorithm 4 Distributed Spectrally Efficient Resource Allocation (DSERA)
algorithm

1:Set counter $n=1$, $i=1$, initialize $\bm{\theta}(0)$ and $\bm{P}(0)$

2:while $\\{\exists
k\in\mathcal{C}~{}\textrm{s.t.}~{}{R^{c}_{k}}^{(n)}<R^{c,\rm{min}}_{k}\\}~{}\textrm{OR}~{}\\{\exists
k\in\mathcal{D}~{}\textrm{s.t.}~{}{R^{d}_{k}}^{(n)}<R^{d,\rm{min}}_{k}\\}$ do

3: if
${R^{c}_{i}}^{(n)}<R^{c,\rm{min}}_{i}~{}\textrm{AND}~{}{R^{d}_{j}}^{(n)}<R^{d,\rm{min}}_{j},\forall
j\in\bm{\beta}_{j}$ then

4: $i=\textrm{mod}(i,N)+1$ and Continue

5: end if

6: while $||\bm{P}(n)-\bm{P}(n-1)||>\epsilon$ do

7: First phase of the DSERA algorithm as described in Algorithm 1.

8: end while

9: Second phase of the DSERA algorithm as described in Algorithm 3.

10: $n=n+1$, $i=\textrm{mod}(i,N)+1$

11:end while

###  4.5 Algorithmic Representation of the Second Phase

Interference price vector updating considering the QoS constraints is the
second phase of our proposed resource allocation algorithm. The algorithmic
procedure of this phase of the DSERA algorithm depends on the utilized price
updating scheme. This step considering the whole and step-by-step price
updating schemes are described as Algorithms 2 and 3, respectively.

###  4.6 Proposed Resource Allocation Algorithm

The final resource allocation algorithm is the repetition of the introduced
first and second phases. Our proposed DSERA algorithm can be summarized as
Algorithm 4. It should be noted that our proposed price updating procedure is
the step-by-step price updating scheme as it has been used in the DSERA
algorithm. The price values at $n^{th}$ iteration is also denoted by
$\bm{P}(n)$.

###  4.7 Computational Complexity Analysis

Due to the time variant channel gains and the mobility of users, the resource
allocation algorithm has to be repeated once in a while to find the subchannel
allocation and transmission powers of CUEs and D2D pairs. During each run of
the resource allocation algorithm, the channel gains as well as the locations
of the users are assumed to be constant. Our system model consists of three
type of computation nodes that are the D2D receivers, the BS acting as the
receiver of CUEs, and the BS acting as the central computation node. We
present the computational complexity of each computation node in the
following.

  * •

BS acting as the central computation node:

This computation node updates the price values and computes the constant
values. Considering the locations of CUEs and D2D pairs, the distance values
denoted by $s(c_{i},bs)$, $s(c_{i},d_{j})$,$s(d_{i},d_{j})$, and $s(d_{i},bs)$
and the ratio of the distance values to the power of $(-\alpha)$ denoted by
$\Big{(}\frac{s(c_{i},d_{\beta_{i,j}})}{s(d_{\beta_{i,j}})}\Big{)}^{-\alpha}$,
$\Big{(}\frac{s(d_{j},bs)}{s(c_{i})}\Big{)}^{-\alpha}$, and
$\Big{(}\frac{s(d_{j},bs)}{s(c_{i})}\Big{)}^{-\alpha}$ which are used in
equations (20), (27), and (31) are constants. The constant values of the
algorithm can be computed just once to avoid high computational complexity and
these values should be computed at the BS acting as the central computation
node. Hence, $2(M+1)(M+N)$ multiplications, $M^{2}+2MN$ divisions, and
$M^{2}+2MN$ powers are required to compute the ratios of the distances to the
power of $(-\alpha)$. Considering the highest computational complexity
operation, the computational complexity of computing the constant values is
$O(M(M+N))$ which is performed at the BS acting as a central computation node.

Considering the equations (33) and (34) the price updating procedure of each
CUE consists of $N_{i}$ multiplications. Assuming the upper bound average
value of $N_{i}$ to be $M/N$, the number of required multiplications for the
price updating of CUEs would be bounded by $K_{1}N(M/N)=K_{1}M$ where $K_{1}$
represents the number of iterations of the outer loop of Algorithm 4.
Considering the equations (35), (36), (37), and (38) the price updating
procedure of each D2D pair consists of $1+(N_{i}-1)$ multiplications. Hence,
the number of required multiplications for the price updating of D2D pairs
would be bounded by $K_{1}M(M/N)=K_{1}M^{2}/N$. Hence, the computational
complexity of the price updating procedure is $O(K_{1}M^{2}/N)$.

It can be concluded that the computational complexity of the BS acting as a
central computation node is $O(M(M+N))$ since the price updating procedure is
based on multiplications but the computation of constant values is based on
divisions.

  * •

BS acting as the receiver of CUEs:

The equations (19), (20), and (21) should be computed at the BS acting as the
receiver of CUEs. Considering the computation of the constants at the BS
acting as the central computation node and the computation of the aggregate
interference, there exist $N_{i}$ and three divisions for each CL at each
iteration of the game. Hence, the computational complexity of the BS acting as
the receiver of CUEs would be bounded by $O(K_{1}K_{2}M/N*N)=O(K_{1}K_{2}M)$
where $K_{2}$ represents the number of iterations of the inner loop of
Algorithm 4.

  * •

D2D receivers:

The equations (26), (27), (28), (30), (31), and (32) should be computed at the
D2D receivers. Considering the computation of the constants at the BS acting
as the central computation node and the computation of the aggregate
interference, there exist $1+(N_{i}-1)$ multiplications and three divisions
for the computation of equations (26), (27), and (28) followed by
$(N-1)(N_{i}+1)$ multiplications and $3N_{i}$ divisions for the computation of
equations (30), (31), and (32). Hence, the computational complexity of D2D
receivers would be $O(K_{1}K_{2}MN_{i}N)=O(K_{1}K_{2}M^{2})$.

It should be noted that computation of constants can be implemented using very
fast methods based on the usage of look-up tables on hardware. These methods
consume more storage but reduce the computational complexity dramatically. As
a result, It can be concluded that the computational complexity of the
proposed method is $O(K_{1}K_{2}M^{2})$.

##  5 Numerical Results

The performance of our proposed algorithm is evaluated in this section through
computer simulations. We consider a fully loaded single cell network with
uniformly distributed CUEs and D2D-Txs. Each D2D-Rx is uniformly distributed
in a cluster around its corresponding transmitter. The path loss model of 25
is used.  The minimum QoS requirements of the CUEs and D2D pairs are assumed
to have a uniform distribution as it has been used in a wide range of research
papers such as 9, 25, 48.  The main simulation parameters are listed in Table
1. The network performance evaluation metric is the sum-rate of CUEs and
admitted D2D pairs. We investigate the sum-rate and the average rate of
different utility functions to verify the effectiveness of our proposed
utility function. In order to demonstrate the higher SE performance of our
proposed scheme, the performance of the proposed algorithm is compared to
other existing methods for different numbers of CLs and deployment densities
of D2D pairs.

Table 1: Simulation Parameters Parameter |  Value
---|---
Physical link type |  Uplink
Cell radius |  400 m
Noise power ($\sigma^{2}_{N}$) |  -114 dBm
Path loss model |  $15.3+37.6\log_{10}D$ (D in m)
Max D2D Tx power ($P^{d,\rm{max}}$) |  21 dBm
Max CUE power ($P^{c,\rm{max}}$) |  24 dBm
CUE and D2D min QoS ($\gamma^{c,\rm{min}}$) |  Uniformly distributed in [0, 10] dB
Shadowing standard deviation |  8 dB
D2D cluster radius |  Uniformly distributed in [10, 40] m
Number of CUEs (N) |  6, 8, …, 16
Number of D2D pairs (M) |  4N, 6N, …, 20N

###  5.1 Utility Function Definition and Price Updating Procedure

Figure 2: Sum-rate of different utility function definitions and price
updating procedures versus the number of CLs when $M/N=20$. Figure 3: Sum-rate
of different utility function definitions and price updating procedures versus
the cell density when $N=10$. Figure 4: Average data rate of different utility
function definitions and price updating procedures versus the number of CLs
when $M/N=20$. Figure 5: Average data rate of different utility function
definitions and price updating procedures versus the cell density when $N=10$.

In order to evaluate the performance and demonstrate the effectiveness of our
proposed utility function and price updating procedure, we introduce other
resource allocation algorithms with different utility functions and price
updating procedures to be compared to our proposed resource allocation
algorithm in the following:

  * •

Scheme 1: This algorithm is the modified version of the proposed resource
allocation algorithm of Reference 26 where our innovative D2D pair admission
procedure is added to it and the utility function of $d_{j}$ is formulated as

$U^{d}_{j}(\bm{\theta},\bm{P},\bm{\Psi})=-p^{d}_{j}\sum_{i=1}^{N}\theta_{i}\psi_{i,j}\frac{h^{d,b}_{j}}{h^{c}_{i}}.$
(39)

This algorithm can also be considered as a modified version of our proposed
algorithm when no reward term is considered in the utility function
definition, a limited number of interference prices are utilized, all the
prices are updated at once, and no CUE utility function is defined.

  * •

Scheme 2: By defining interference prices for all the interference links, this
algorithm can be considered as the updated version of the Scheme 1 algorithm
when multiple interference prices are utilized and the utility function of
$d_{j}$ is expressed as

$U^{d}_{j}(\bm{\theta},\bm{P},\bm{\Psi})=-p^{d}_{j}\Big{(}\sum_{i=1}^{N}\psi_{i,j}\theta^{d}_{j}\frac{h^{d,b}_{j}}{h^{c}_{i}}+\sum_{i=1}^{N}\sum\limits_{k=1\atop
k\neq
j}^{M}\psi_{i,j}\psi_{i,k}\theta_{j,k}^{d,d}\frac{h^{d,d}_{j,k}}{h^{d}_{k}}\Big{)}.$
(40)

The Scheme 2 algorithm can be considered as a modified version of our proposed
DSERA algorithm with no utility function reward term, no CUE utility function
definition, and the whole price updating scheme.

  * •

Scheme 3: This algorithm is the modified version of our proposed DSERA
algorithm where the whole price updating scheme is utilized and the other
definitions and steps remain unchanged.

Fig. 2 demonstrates the sum-rate of different utility function definitions and
price updating procedures for different numbers of CLs when $M/N=20$. It is
shown that the sum-rate of the Scheme 1 algorithm is lower than that of the
other algorithms due to its interference-dependent utility function
definition. Considering the utility function of the Scheme 1 algorithm which
is not rate-dependent, the data rate of CUEs and D2D pairs cannot be maximized
but the minimum QoS requirements of CUEs and admitted D2D pairs can be
guaranteed in a distributed manner. Therefore, this algorithm has a lower sum-
rate compared to the other ones. By introducing prices for all the
interference links, the Scheme 2 algorithm can result in a higher overall sum-
rate compared to the Scheme 1 algorithm due to its better interference
management. The Scheme 3 and the Scheme 4 algorithms consider the data rate as
a reward term in their utility functions which is the reason for the higher
sum-rates of these two algorithms compared to the Scheme 1 and the Scheme 2
algorithms. The Scheme 3 algorithm with the whole price updating scheme has a
lower sum-rate compared to the Scheme 4 algorithm which utilizes the step-by-
step price updating scheme. Since the sum-rate maximization is solved in a
distributed manner by adjusting the price values, the step-by-step price
updating scheme results in a higher sum-rate compared to the whole price
updating scheme since a part of the prices is updated at each evaluation of
phase two of the proposed algorithm.

Fig. 3 illustrates the sum-rate of the different utility function definitions
and price updating procedures for different $M/N$ values when there are $N=10$
CLs. The $M/N$ parameter which is the ratio of the number of D2D pairs to the
number of CUEs can be considered as the cell density parameter. It is shown
that the gap between the sum-rate performances of different utility function
definitions is small for low-density deployments while the gap is enhanced
when the deployment density is increased. Therefore, it can be concluded that
the proposed utility function and the proposed price updating procedure of the
DSERA algorithm result in a higher sum-rate and SE compared to the other
utility function definitions and price updating schemes for different numbers
of CLs and cell densities.

The effect of utility function definition and price updating procedure on the
average data rate is shown in Figs. 4 and 5. It should be noted that the
overall sum-rate of the cell is the objective function of our optimization
problem and the average data rate is not a performance evaluation metric. From
Fig. 4, it can be concluded that the average data rates of the introduced
algorithms increase with respect to the number of CLs. Fig. 5 shows the
decreasing behavior of average data rates of the introduced algorithms with
respect to the cell density. It is verified that the DSERA algorithm is more
effective for resource allocation in terms of average data rate compared to
the other methods with different utility function definitions and price
updating procedures when the number of CLs or the cell density is increased.

###  5.2 Number of CLs

Figure 6: Sum-rate of different resource allocation methods versus the number
of CLs when $M/N=20$. Figure 7: Average data rate of different resource
allocation methods versus the number of CLs when $M/N=20$.

In order to compare our proposed resource allocation algorithm with other
existing methods, the 3Step and the DenseCell resource allocation algorithms
which are the slightly modified and improved versions of the resource
allocation methods of Reference 9 and Reference 25, respectively, are
introduced in the following:

  * •

3Step: In Reference 9, it is assumed that the number of CUEs is equal to the
number of D2D pairs and the Kuhn-Munkres 49 algorithm is used to find the
optimal matching between CUEs and D2D pairs among $N^{2}$ possible matchings.
Due to the dense deployment of D2D pairs assumption, the number of D2D pairs
is much larger than the number of CUEs. Hence, we modify the Kuhn-Munkres
algorithm to check all the $MN$ possible matchings. The modified resource
allocation algorithm is denoted as the 3Step algorithm.

  * •

DenseCell: In Reference 25, a greedy resource allocation algorithm for D2D
communications when $M>N$ has been proposed where the sum-rate of D2D pairs
and the minimum QoS requirements of CUEs are considered. The DenseCell method
is the modified version of the proposed algorithm of Reference 25 where sum-
rate and minimum QoS requirements of CUEs and admitted D2D pairs are
considered.

It should be noted that the Scheme 1 algorithm is the improved version of the
proposed algorithm of Reference 26 which has been introduced in the previous
section.

Fig. 6 shows the sum-rate of the DSERA algorithm compared to the other
resource allocation algorithms for different numbers of CLs when $M/N=20$. The
Scheme 1 algorithm has a lower sum-rate compared to our proposed resource
allocation algorithm due to the minimum QoS requirement guaranteeing behavior
of this method as it has been explained in the previous section. The 3Step
algorithm assigns at most one D2D pair to each CL in an optimal manner and
does not take advantage of the spatial reuse gain of D2D pairs. Hence, the
sum-rate performance of the 3Step algorithm is much less than the other
methods. The sum-rate performance of the DenseCell algorithm is slightly lower
than the sum-rate performance of the DSERA algorithm but it has a
computationally complex subchannel sharing protocol.

Fig. 7 demonstrates the average data rate of the DSERA algorithm compared to
other existing methods for different numbers of CLs when $M/N=20$. The average
data rate of the Scheme 1 algorithm is lower than the other methods since the
rate of CUEs and D2D pairs are not maximized in this algorithm but the minimum
QoS requirements are just guaranteed. The average data rate of the 3Step
method is higher compared to the other ones since at most one D2D pair can
reuse each CL. Therefore, no interference exists among different D2D pairs and
a higher average data rate can be achieved by admitted D2D pairs. It should be
noted that the average data rate behavior of all methods is increasing with
respect to the number of CLs.

###  5.3 Cell Density

Our proposed algorithm can also be compared to the other existing methods for
different cell densities. Fig. 8 compares the sum-rate of the DSERA algorithm
with the sum-rate of the other methods for different cell densities when
$N=10$ CLs are considered. It is verified that the low complexity DSERA
algorithm has higher sum-rate compared to the distributed and low complexity
Scheme 1 algorithm as well as the complex and centralized DenseCell algorithm.
The sum-rate performance of the 3Step algorithm is lower than the other
algorithms since it is assumed that at most one D2D pair can reuse each CL.

Figure 8: Sum-rate of different resource allocation methods versus the cell
density when $N=10$. Figure 9: Average data rate of different resource
allocation methods versus the cell density when $N=10$.

Fig. 9 compares the average data rate of the DSERA algorithm with the average
data rate of the other methods for different cell densities when $N=10$ CLs
are considered. It is shown that the DSERA, the Scheme 1, and the DenseCell
algorithms have a decreasing behavior with respect to the cell density since
the cellular resources are allocated to multiple D2D pairs reusing each CL in
these algorithms. Considering the fact that at most one D2D pair can reuse
each CL in the 3Step algorithm, each CL can be shared among a larger number of
D2D pairs when the cell density is increased. In other words, increasing the
cell density can be considered as a diversity gain in the 3Step scheme. Hence,
the average data rate of the 3Step algorithm has an increasing behavior with
respect to the cell density.

##  6 Conclusion

In this paper, a distributed framework of joint transmission power control and
spectrum allocation for dense D2D communications underlaying cellular networks
where multiple D2D pairs can reuse each CL and each D2D pair can reuse at most
one CL is proposed to maximize the overall SE of the cell. Our proposed low
complexity distributed method (DSERA) maximizes the sum-rate of the cell using
a novel pricing based resource allocation algorithm by transforming the mixed-
integer non-convex centralized problem into a distributed algorithm consisting
of two phases. The sum-rate of the cell is maximized as a result of the first
phase of the proposed algorithm where the derived closed-form solutions result
in low complexity implementation of the proposed algorithm. The QoS
constraints of the CUEs and D2D pairs are guaranteed as a result of the price
vector updating of the second phase. We proposed a fast and innovative
admission control for D2D pairs which cause the proposed method to be
practical for dense beyond 5G networks. The distance-based cost term of the
proposed novel utility function results in low signaling overhead and cause
the proposed algorithm to be a practical one. Furthermore, the SINR
computation at each receiver using aggregate interference is discussed. The
numerical results are provided to verify the effectiveness of the proposed
utility function definition and the price updating procedure in terms of
overall sum-rate. Additionally, the SE of DSERA is compared to other
centralized and distributed resource allocation schemes to illustrate the
higher sum-rate performance of DSERA. It is demonstrated that the proposed
method can effectively improve the SE of cellular networks while guaranteeing
the minimum QoS requirements of CUEs and admitted D2D pairs in a distributed
manner considering the dense deployment of D2D pairs in beyond 5G networks for
different numbers of CLs and cell densities.

## Data Availability

Data sharing not applicable to this article as no datasets were generated or
analysed during the current study.

## References

  * 1 Komlós J. On the determinant of random matrices. Studia Scient. Math. Hungarica 1968; 3: 387–399.
  * 2 Chowdhury MZ, Shahjalal M, Ahmed S, Jang YM. 6G wireless communication systems: Applications, requirements, technologies, challenges, and research directions. IEEE O. J. of the Commun. Soc. 2020; 1: 957–975.
  * 3 Bello O, Zeadally S. Intelligent device-to-device communication in the internet of things. IEEE Syst. J. 2014; 10(3): 1172–1182.
  * 4 Wang R, Hu H, Yang X. Potentials and challenges of C-RAN supporting multi-RATs toward 5G mobile networks. IEEE Access 2014; 2: 1187–1195.
  * 5 David K, Berndt H. 6G vision and requirements: Is there any need for beyond 5G?. IEEE Veh. Technol. Mag. 2018; 13(3): 72–80.
  * 6 Yin R, Wu Z, Liu S, Wu C, Yuan J, Chen X. Decentralized Radio Resource Adaptation in D2D-U Networks. IEEE Internet Things J. 2020\.
  * 7 Ali S, Ahmad A. Resource allocation, interference management, and mode selection in device-to-device communication: a survey. Trans. Emerg. Tel. Tech. 2017; 28(7): e3148.
  * 8 Jose J, Agarwal A, Singh Sengar A, Gangopadhyay R, Debnath S. Multichannel allocation for full-duplex underlay device-to-device communication. Trans. Emerg. Tel. Tech. 2020; 31(4): e3852.
  * 9 Feng D, Lu L, Yuan-Wu Y, Li GY, Feng G, Li S. Device-to-device communications underlaying cellular networks. IEEE Trans. Commun. 2013; 61(8): 3541–3551.
  * 10 Hasan M, Hossain E. Distributed resource allocation in D2D-enabled multi-tier cellular networks: An auction approach. Paper presented at: 2015 IEEE International Conference on Communications (ICC); 2015: 2949–2954.
  * 11 Zabetian N, Mohammadi A, Masoudi M. Energy-efficient power allocation for device-to-device communications underlaid cellular networks using stochastic geometry. Trans. Emerg. Tel. Tech. 2019; 30(12): e3768.
  * 12 Zhang P, Kang X, Li X, Liu Y, Wu D, Wang R. Overlapping community deep exploring-based relay selection method toward multi-hop D2D communication. IEEE Wireless Commun. Lett. 2019; 8(5): 1357–1360.
  * 13 Banagar M, Maham B, Shah-Mansouri V. Bounds on the coverage probability of heterogeneous cellular networks. Paper presented at: 2016 IEEE International Conference on Communications (ICC); 2016 : 755-759.
  * 14 Zhou Z, Gao C, Xu C, Chen T, Zhang D, Mumtaz S. Energy-Efficient Stable Matching for Resource Allocation in Energy Harvesting-Based Device-to-Device Communications. IEEE Access 2017; 5: 15184–15196.
  * 15 Yu G, Xu L, Feng D, Yin R, Li GY, Jiang Y. Joint mode selection and resource allocation for device-to-device communications. IEEE Trans. Commun. 2014; 62(11): 3814–3824.
  * 16 Sun Y, Wang F, Liu Z. Coalition formation game for resource allocation in D2D uplink underlaying cellular networks. IEEE Commun. Lett. 2019; 23(5): 888–891.
  * 17 Amodu OA, Othman M, Noordin NK, Ahmad I. Relay-assisted D2D underlay cellular network analysis using stochastic geometry: Overview and future directions. IEEE Access 2019; 7: 115023–115051.
  * 18 Sreedevi A, Rama Rao T. Reinforcement learning algorithm for 5G indoor device-to-device communications. Trans. Emerg. Tel. Tech. 2019; 30(9): e3670.
  * 19 Khuntia P, Hazra R. An efficient Deep reinforcement learning with extended Kalman filter for device-to-device communication underlaying cellular network. Trans. Emerg. Tel. Tech. 2019; 30(9): e3671.
  * 20 Asadi A, Wang Q, Mancuso V. A survey on device-to-device communication in cellular networks. IEEE Commu. Surveys Tuts. 2014; 16(4): 1801–1819.
  * 21 Banagar M, Maham B, Popovski P, Pantisano F. Power distribution of device-to-device communications in underlaid cellular networks. IEEE Wireless Commun. Lett. 2016; 5(2): 204–207.
  * 22 Gurjar DS, Upadhyay PK. Overlay spectrum sharing for device-to-device communications in two-way cellular networks with nodes mobility. Trans. Emerg. Tel. Tech. 2017; 28(10): e3164.
  * 23 Wang H, Ding G, Wang J, Wang L, Tsiftsis TA, Sharma PK. Resource allocation for energy harvesting-powered D2D communications underlaying cellular networks. Paper presented at: 2017 IEEE International Conference on Communications (ICC); 2017: 1–6.
  * 24 Yu S, Ejaz W, Guan L, Anpalagan A, Rizvi IA. Resource allocation in RF energy harvesting-assisted underlay D2D communication. Trans. Emerg. Tel. Tech. 2019; 30(7): e3589.
  * 25 Zhao W, Wang S. Resource sharing scheme for device-to-device communication underlaying cellular networks. IEEE Trans. Commun. 2015; 63(12): 4838–4848.
  * 26 Yin R, Yu G, Zhang H, Zhang Z, Li GY. Pricing-based interference coordination for D2D communications in cellular networks. IEEE Trans. Wireless Commun. 2015; 14(3): 1519–1532.
  * 27 Bahonar MH, Omidi MJ. Centralized QoS-aware resource allocation for D2D communications with multiple D2D pairs in one resource block. Paper presented at: 2018 Iranian Conference on Electrical Engineering (ICEE); 2018: 643–648.
  * 28 Semasinghe P, Hossain E. Downlink power control in self-organizing dense small cells underlaying macrocells: A mean field game. IEEE Trans. Mobile Comput. 2016; 15(2): 350–363.
  * 29 Gupta S, Zhang R, Hanzo L. Energy harvesting aided device-to-device communication underlaying the cellular downlink. IEEE Access 2017\.
  * 30 Ku ML, Lai JW. Joint Beamforming and Resource Allocation for Wireless-Powered Device-to-Device Communications in Cellular Networks. IEEE Trans. Wireless Commun. 2017; 16(11): 7290–7304.
  * 31 Feng D, Yu G, Xiong C, et al. Mode switching for energy-efficient device-to-device communications in cellular networks. IEEE Trans. Wireless Commun. 2015; 14(12): 6993–7003.
  * 32 Lee J, Lee JH. Performance analysis and resource allocation for cooperative D2D communication in cellular networks with multiple D2D pairs. IEEE Commun. Lett. 2019; 23(5): 909–912.
  * 33 Yang HH, Lee J, Quek TQ. Heterogeneous cellular network with energy harvesting-based D2D communication. IEEE Trans. Wireless Commun. 2016; 15(2): 1406–1419.
  * 34 Zulhasnine M, Huang C, Srinivasan A. Efficient resource allocation for device-to-device communication underlaying LTE network. Paper presented at: 2010 IEEE International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob); 2010: 368–375.
  * 35 Farshbafan MK, Bahonar MH, Khajehraveni F. Spectrum trading for device-to-device communication in cellular networks using incomplete information bandwidth-auction game. Paper presented at: 2019 Iranian Conference on Electrical Engineering (ICEE); 2019: 1441–1447.
  * 36 Huang J, Huang S, Xing CC, Qian Y. Game-theoretic power control mechanisms for device-to-device communications underlaying cellular system. IEEE Trans. Veh. Tech. 2018; 67(6): 4890–4900.
  * 37 Kebriaei H, Maham B, Niyato D. Double-sided bandwidth-auction game for cognitive device-to-device communication in cellular networks. IEEE Trans. Veh. Tech. 2016; 65(9): 7476–7487.
  * 38 Wu D, Cai Y, Hu RQ, Qian Y. Dynamic distributed resource sharing for mobile D2D communications. IEEE Trans. Wireless Commun. 2015; 14(10): 5417–5429.
  * 39 Zhang H, Song L, Zhang YJ. Load balancing for 5G ultra-dense networks using device-to-device communications. IEEE Trans. Wireless Commun. 2018; 17(6): 4039–4050.
  * 40 Li Y, Jin D, Yuan J, Han Z. Coalitional games for resource allocation in the device-to-device uplink underlaying cellular networks. IEEE Trans. Wireless Commun. 2014; 13(7): 3965–3977.
  * 41 Kazmi SA, Tran NH, Saad W, et al. Mode Selection and Resource Allocation in Device-to-Device Communications: A Matching Game Approach. IEEE Trans. Mobile Comput. 2017\.
  * 42 Dominic S, Jacob L. Distributed resource allocation for D2D communications underlaying cellular networks in time-varying environment. IEEE Commun. Lett. 2017; 22(2): 388–391.
  * 43 Chen Y, Ai B, Niu Y, Guan K, Han Z. Resource allocation for device-to-device communications underlaying heterogeneous cellular networks using coalitional games. IEEE Trans. Wireless Commun. 2018; 17(6): 4163–4176.
  * 44 Xu S, Wang H, Chen T, Huang Q, Peng T. Effective interference cancellation scheme for device-to-device communication underlaying cellular networks. Paper presented at: 2010 IEEE 72nd Vehicular Technology Conference-Fall ; 2010: 1–5.
  * 45 Bajaj R, Ranaweera SL, Agrawal DP. GPS: location-tracking technology. Computer 2002; 35(4): 92–94.
  * 46 Peral-Rosado dJA, Raulefs R, López-Salcedo JA, Seco-Granados G. Survey of cellular mobile radio localization methods: From 1G to 5G. IEEE Commun. Surveys Tuts. 2017; 20(2): 1124–1148.
  * 47 Laoudias C, Moreira A, Kim S, Lee S, Wirola L, Fischione C. A survey of enabling technologies for network localization, tracking, and navigation. IEEE Commun. Surveys Tuts. 2018; 20(4): 3607–3644.
  * 48 Liu Y, Wang Y, Sun R, Miao Z. Distributed resource allocation for D2D-assisted small cell networks with heterogeneous spectrum. IEEE Access 2019; 7: 83900–83914.
  * 49 West DB, others . Introduction to Graph Theory. 2.  Prentice Hall Upper Saddle River, NJ .  1996\.

##  Appendix A Proof of equation (21)

The optimization problem can be formulated as

$\displaystyle{p^{c}_{i}}^{*}=$
$\displaystyle\operatorname*{arg\,max}_{p^{c}_{i}}~{}~{}$
$\displaystyle\log_{2}(1+p^{c}_{i}\Gamma^{c}_{i})-p^{c}_{i}q^{c}_{i},$ (41a)
$\displaystyle~{}~{}~{}~{}~{}\rm{s.t.}$ $\displaystyle 0\leq p^{c}_{i}\leq
P^{c,\rm{max}}_{i}.$ (41b)

The parameters $\Gamma^{c}_{i}$ and $q^{c}_{i}$ are positive constants with
respect to the optimization variable $p^{c}_{i}$. The second derivative of the
objective function can be computed as

$\frac{d^{2}f^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}^{2}}=-\frac{{\Gamma^{c}_{i}}^{2}}{(\ln
2)(1+p^{c}_{i}\Gamma^{c}_{i})^{2}},$ (42)

which is always less than zero. Therefore, the objective function is strictly
concave with respect to $p^{d}_{j}$.

As the objective function is differentiable and strictly concave with respect
to the only optimization variable, there exist only one point of zero slope.
The first derivative of the objective function can be expressed as

$\frac{df^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}}=\frac{\Gamma^{c}_{i}}{(\ln
2)(1+p^{c}_{i}\Gamma^{c}_{i})}-q^{c}_{i}$ (43)

and the point of zero slope $\bar{p^{c}_{i}}$ can be computed as

$\frac{df^{c}_{i}(\bar{p^{c}_{i}})}{{dp^{c}_{i}}}=0\Rightarrow\bar{p^{c}_{i}}=\frac{1}{(\ln
2)q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}}.$ (44)

The point $p^{c}_{i}=\bar{p^{c}_{i}}$ is the global maximum of the
unconstrainted form of (41). Hence, the optimization problem (41) is solved if
the point $p^{c}_{i}=\bar{p^{c}_{i}}$ is inside the feasible region which can
be expressed as

${p^{c}_{i}}^{*}=\bar{p^{c}_{i}}=\frac{1}{(\ln
2)q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}},~{}\textrm{if}~{}~{}0\leq\bar{p^{c}_{i}}\leq
P^{c,\rm{max}}_{i}.$ (45)

If the point $p=\bar{p^{c}_{i}}$ is outside the feasible region and
$\bar{p^{c}_{i}}<0$, it can be concluded that

$\frac{df^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}}<0,~{}~{}\textrm{if}~{}~{}0\leq
p^{c}_{i}\leq P^{c,\rm{max}}_{i},$ (46)

due to the fact that $\frac{df^{c}_{i}(\bar{p^{c}_{i}})}{{dp^{c}_{i}}}=0$,
$\bar{p^{c}_{i}}<0$, and
$\frac{d^{2}f^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}^{2}}<0,~{}\forall p^{c}_{i}$.
Therefore, the point of maximum value for the objective function is
$p^{c}_{i}=0$ which can be expressed as

${p^{c}_{i}}^{*}=0,~{}\textrm{if}~{}~{}\bar{p^{c}_{i}}\leq 0.$ (47)

If the point $p=\bar{p^{c}_{i}}$ is outside the feasible region and
$\bar{p^{c}_{i}}>0$, it can be concluded that

$\frac{df^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}}>0,~{}~{}\textrm{if}~{}~{}0\leq
p^{c}_{i}\leq P^{c,\rm{max}}_{i},$ (48)

due to the fact that $\frac{df^{c}_{i}(\bar{p^{c}_{i}})}{{dp^{c}_{i}}}=0$,
$\bar{p^{c}_{i}}>0$, and
$\frac{d^{2}f^{c}_{i}(p^{c}_{i})}{{dp^{c}_{i}}^{2}}<0,~{}\forall p^{c}_{i}$.
Therefore, the point of maximum value for the objective function is
$p^{c}_{i}=P^{c,\rm{max}}_{i}$ which can be expressed as

${p^{c}_{i}}^{*}=P^{c,\rm{max}}_{i},~{}\textrm{if}~{}~{}\bar{p^{c}_{i}}\geq
P^{c,\rm{max}}_{i}.$ (49)

Considering (45), (47), and (49) the final solution can be expressed as

${p^{c}_{i}}^{*}=\mathcal{F}(q^{c}_{i},\Gamma^{c}_{i},P^{c,\rm{max}}_{i})=\left\\{\begin{array}[]{ll}0,&\mbox{if}~{}(\frac{1}{\ln(2)~{}q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}})\leq
0\\\
\frac{1}{\ln(2)~{}q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}},{}&\mbox{if}~{}0<(\frac{1}{\ln(2)~{}q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}})<P^{c,\rm{max}}_{i}\\\
P^{c,\rm{max}}_{i},&\mbox{if}~{}(\frac{1}{\ln(2)~{}q^{c}_{i}}-\frac{1}{\Gamma^{c}_{i}})\leq
0\end{array}\right.,$ (50)

and the proof is complete.