An Efficient Application based Many-to-Many Resource Allocation and Sharing with Power Optimization for D2D Communication - A Clustered Approach

Raghu Thekke Veedu and Kiran Manjappa

Abstract

Abstract: This study aims to give an edge to public safety applications over commercial applications in an underlay cellular-assisted device-to-device (D2D) communication. The proposed framework introduces two frameworks: Cluster-based many-to-many resource allocation and resource sharing framework (CMMRARS) and constant time power control algorithm (CTPCA). The RB assigned to a CUE can share with multiple DUE pairs, and the DUE pairs can also use RB assigned to multiple CUEs under the many-to-many strategy. The CMMRARS framework is responsible for resource allocation and resource sharing and accordingly, it is further divided into three sub-problems. The CTPCA framework is divided into two subproblems and used to find optimal power for cellular users and D2D transmitters to avoid cross-tier and co-tier interference. The K-means clustering algorithm is employed to form applicationspecific clusters, and it ensures that more cellular users fall into the public safety clusters so that the D2D users will get more resource-sharing options. Cellular users use a weighted bipartite graph to form a priority list of D2D users for resource sharing. The main objective of the proposed work is to enhance the system’s sum rate by simultaneously reusing the same resource by multiple D2D pairs and safeguarding the Quality of Services provided to all kinds of network users. A theoretical justification is presented to ensure that the proposed frameworks terminate after a certain number of runs and congregate to a consistent matching. Simulation results show that the proposed method influences the overall system’s sum rate and provides a preference for public safety applications over commercial applications.

Keywords: Clustering , D2D communication , interference management , many-to-many resource allocation , power optimization , weighted bipartite graph

I. INTRODUCTION

THE exponential growth in cellular communication and the extensive use of portable devices and mobile apps, particularly multimedia, and gaming, has brought a significant rise in data traffic nowadays [1], [2]. The third generation partnership project (3GPP) introduced a revolutionary strategy called device-to-device (D2D) communication that has been put forth to improve the user experience and functionality of conventional cellular networks. In D2D communication, two closely located cellular user equipments (CUEs) can directly communicate with each other without the association of evolved node base station (eNB) [3]. As a critical method to reduce the traffic load of eNB, D2D communication has attracted many researchers in recent days. The reduced traffic load at eNB in turn reduces the network latency and improves the system throughput significantly. Further, enhanced edge user performance, expanded network coverage, and increased energy efficiency can also be achieved by incorporating D2D communication into cellular networks [4]–[6]. Regardless of these benefits, the enlightening challenges such as interference coordination, resource allocation, and power optimization still need to be researched as they are hindering the performance of the D2D communication [1], [3].

In underlay D2D communication, both CUE and D2D user equipment (DUE) explore the possibilities of spectrum reuse and share the same spectrum for the communications [7]. However, underlay D2D communication might result in significant co-channel interferences (cross-tier and co-tier interference) due to spectrum reuse which results in poor quality of service (QoS) to the users. Cross-tier interference occurs when a DUE communication interferes with a CUE communication, while co-tier interference occurs when a DUE communication interferes with another DUE communication. Hence, optimal resource allocation and power optimization are paramount in D2D-enabled cellular communication to mitigate the interference effects [8].

D2D communication supports both commercial (texting, online gaming, streaming, data sharing, etc.) and public safety applications (disaster relief supportive services), but it is more advantageous for public safety applications as they require high network availability and minimal latency during communication [9]. In addition, during an emergency situation priority can be given to public safety applications over commercial applications at the time of resource allocation. These additional resources provide an edge to DUEs running public safety applications, resulting in more active DUE pairs carrying sensitive information for the first responders. Further, instead of sharing resources from a single CUE, DUEs can be allowed to share resources from multiple CUEs predominantly achieving more data rate in the system.

Hence, the authors in this article propose a joint resource allocation and power optimization algorithm for underlay D2D-enabled cellular communication where DUEs efficiently share resources of multiple CUEs in order to enhance the system data rate. During an emergency, the proposed algorithm prioritizes public safety applications over commercial ones while allocating resources. The proposed framework creates clusters of DUEs, namely public safety (PS) and commercial application (CA) clusters based on the application type in order to distinguish between the DUEs. The CUEs in the cellular network are allocated to these clusters. The DUE pairs can share the available resources of all CUEs in the cluster with QoS constraints. A bipartite graph is used to determine the resource-sharing strategy between the DUE pairs and CUEs under the many-to-many mapping. Further, by optimizing the power requirements for the CUEs and DUEs, the proposed algorithm minimizes cross-tier and co-tier interferences. Thus, it ensures that the required QoS will be met for all users though the resources are shared in the system. The following list summarizes various criteria considered and achieved during the implementation.

· The proposed framework formulates a joint resource allocation and power optimization problem to prioritize PS applications over CA during the resource allocation procedure under the many-to-many strategy to maximize the sum rate of the system. The joint resource allocation and power optimization is a mixed-integer non linear programming (MINLP) problem and is an NP-hard type. Hence, we divide the problem into two sub-problem to make it tractable, namely resource allocation and sharing and power optimization.

· For resource allocation, the proposed framework creates clusters of PS and CA DUEs and prioritizes PS applications over CA during resource allocation. This allows more PS applications to be active and to deliver timesensitive critical information to first responders much sooner. Furthermore, the proposed framework ensures less economic loss, maintain social stability, and ensure the welfare of the people. The proposed framework for analyzing resource allocation in clusters is an innovative solution with significant benefits. It enables seamless sharing between CUE’s RB and multiple DUE pairs using a many-to-many strategy that increases efficiency and optimization for all stakeholders.

· The power optimization subproblem maximizes the system sum rate while assuring the minimum QoS for all users in the cellular networks. The power optimization problems provide the optimum DUE and CUE power required for guaranteed transmissions. The simulation outcomes, an analytical study, and the algorithm’s convergence to a stable match after a definite number of iterations are also presented to highlight the efficiency of the proposed framework.

A. Literature Review

The survey articles [10]–[12] cover a broad range of issues and different methods to optimize resource allocation in D2D communication. The authors in [13] have proposed how multiple DUE pairs can share subchannels with multiple CUEs. One-to-one and one-to-many resource allocation algorithms are proposed in [14]. The optimization of D2D power allocation across multiple resource blocks (RBs) is presented in [15], where the uplink spectrum is reused in the study. Each DUE pair can utilize multiple channels and assumes that each channel will be exploited by multiple DUE pairs in [16]. Game theory is used for joint power, and channel allocation algorithms in [17] and in work [18], authors have considered a “many-to-many” scenario and developed the joint uplink subcarrier assignment and power allocation system. The matching theory is used to minimize the interference effect, and a distributed resource allocation algorithm is proposed in [19]. A weighted bipartite graph is used to find reuse partners for resource allocation in [20] while [21] uses D2D communications to multicast video over cellular networks.

The work in [22] considered single and multiple antenna configurations for optimizing channel and power resources. The work in [23] considered two constraints, namely maximum power and a minimum rate, for optimizing energy efficiency for multicast D2D communication. The work in [24] proposes a framework for a multicast D2D network to maximize the system sum rate. The study in [25] proposes three set power control strategies and channel allocation to reduce interference in D2D underlaid cellular networks. Wireless powered D2D communication technique is proposed in [26], which harvests energy from the power station. D2D communication is used in a full duplex cellular network in [27] and for multimedia services in [28]. Scalable many-to-many resourcesharing framework and low complexity power optimization algorithm are explained in [29], and the potential of D2D communication is explored in smart city applications in [30]. The work in [31] and [32] are used for resource allocation and power optimization, respectively. Table I summarises the stateof- the-art found in the literature for resource allocation and power optimization in D2D-enabled cellular networks. Based on the literature survey, it can be inferred that there has been limited exploration of application-based resource allocation and power optimization under the many-to-many strategy in the uplink D2D system.

TABLE I
SUMMARY OF LITERATURE SURVEY.
B. Paper Contributions

The literature survey reveals that resource allocation is one of the primary areas of research in D2D communication to increase system throughput. Resource allocation falls under three categories: One-to-one, one-to-many and many-to-many. The resource allocation in the one-to-one or one-to-many strategy is comparatively less complex when compared to many-to-many as the throughput gain and the number of DUE pairs actively participating in communication is comparatively higher in the many-to-many strategy. In many-tomany schemes, a DUE pair can use multiple resources, and each resource can be shared by multiple DUE pairs [33]. The resource allocation for CUE is considered to be preallocated in most of the research work described above. However, the system performance can be enhanced by joint resource allocation between CUEs and DUEs together [34]. The delivery of time-sensitive critical information during public safety and crisis recovery scenarios, such as man-made or natural disasters, is dependent on effective and efficient communication for public safety. However, as eNB can not differentiate between public safety and other communications and also due to heavy data traffic through the eNB, a dedicated service to public safety communication will be missed causing a communication delay for the first responders. Providing safe, timely, and accurate public safety communication can help minimize economic losses, maintain social stability, and ensure the welfare of the people. Though D2D communication can also be used for public safety communications [6], [9] authors were unable to locate studies on how to prioritize D2D communication depending on emergency (PS) and nonemergency applications (CA). It can also be observed that most of the research concentrated on either co-tier or crosstier interference but not both. All these factors conclude that, in order to fully optimize the system performance under the overall “many-to-many” strategy, it is still necessary to (a) devise efficient joint resource allocation and power control algorithms for both DUE pairs and CUEs and (b) prioritize PS communication over CA communications for delivering the time-sensitive information to the first responders.

In this study, we attempted to formulate a more plausible scenario where the type of service, such as ‘PS’ or ‘CA’, is taken into account during the resource allocation process under the many-to-many resource allocation strategy. Further, along with the type of service, both co-tier and cross-tier interference are also considered during the resource allocation process mimicking a more general scenario. In order to differentiate the service type, two types of clusters are created, namely PS and CA clusters, in the proposed framework. Accordingly, all DUEs involved in public safety applications are placed in the PS cluster, whereas all other DUEs involved in commercial applications are placed in the CA cluster. DUE’s type and location are considered as parameters to form the clusters. All CUEs are assigned the nearest cluster to share their resources with DUEs present in the cluster as there is a threat of QoS compromise for the CUEs because of resource sharing, a threshold QoS is maintained for all CUEs. If it is found that the QoS of CUEs is going below the threshold, all subsequent resource requests will be placed on a waiting list. As it is found that the uplink resources are typically underutilized when compared to downlink resources, We are using the uplink spectrum for transmission in the proposed work [35]. Our main contributions in the proposed framework are summarized below:

· The DUE pairs are divided into two distinct groups, PS and CA, depending on the application type attribute associated with each DUE pair. Subsequently, the K-means clustering algorithm is employed separately for these two groups to create clusters of CUEs and DUEs. The clustering approach is used mainly to differentiate the applications and prioritize PS applications over CA applications during resource allocation.

· The joint application-based resource allocation and power optimization framework is defined. The QoS of all users in the network is maintained though the resources are shared among the users.

· The many-to-many resource allocation strategy is taken into consideration. Initially, the resources are assigned to CUEs, and the assigned CUE’s resources are shared by each DUE pair in the same cluster using a weighted bipartite graph. The CUEs and DUEs form the two disjoint nodes of the graph, and the edge connecting these nodes indicates that they belong to the same clusters. The weight on each edge reveals the effectiveness of resource sharing in the overall system performance. · The constant time-based power optimization framework is used to calculate the optimum power required for both CUEs and DUEs in the network for communication. The main purpose of power optimization is to reduce the effect of both co-tier and cross-tier interferences during communication. Power optimization improves user equipment’s battery life, enhances the user experience, reduces cost, and supports green initiatives.

The rest of the paper is organized as follows: System model and problem formulation are presented in Section II. The novel framework for resource allocation and sharing is characterized in Section III. The power optimization problem is examined in Section IV. The performance of suggested frameworks is evaluated through simulations and documented in Section V. The paper is finally concluded and outlined in Section VI.

II. PROBLEM FORMULATION AND SYSTEM MODEL

A. System Model
Fig. 1.
System model: Many-to-many cluster based D2D underlay cellular communication.

Consider a single cellular network system underlying both Cellular and D2D communications as shown in the Fig. 1, which consists of [TeX:] $$\mathcal{N}_{\mathcal{R}}$$ RBs indexed by the set [TeX:] $$\mathcal{S}_{\mathcal{B}}=\left\{1,2, \cdots, r, \cdots, \mathcal{N}_{\mathcal{R}}\right\}, \mathcal{N}_{\mathcal{C}}$$ number of CUEs cataloged as [TeX:] $$\mathcal{S}_{\mathcal{C}}=\left\{1,2, \cdots, i, \cdots, \mathcal{N}_{\mathcal{C}}\right\}, \text { and } \mathcal{N}_{\mathcal{D}}$$ number of DUE pairs for reusing uplink cellular spectrum denoted by the set [TeX:] $$\mathcal{S}_{\mathcal{D}}=\left\{1,2, \cdots, j, \cdots, \mathcal{N}_{\mathcal{D}}\right\}$$ in a many-to-many strategy under the control of a single eNB. Based on the application type, [TeX:] $$\mathcal{N}_{\mathcal{L}},$$ the number of clusters is created in the cell, and each cluster consists of multiple DUE pairs and CUEs, inscribed as the set [TeX:] $$\mathcal{S}_{\mathcal{L}}=\left\{1,2, \cdots, l, \cdots, \mathcal{N}_{\mathcal{L}}\right\} .$$ In order to avoid the interferences between the CUEs, an RB is assigned exclusively for a particular CUE. Furthermore, only one RB is assigned to a CUE. DUEs can reuse the RBs assigned to multiple CUEs in a many-to-many strategy. Consequently, the system will experience cross-tier and co-tier interference, depicted in Fig.1, which shows two clusters that are created based on the application type. We assume that channel state information (CSI) of links in the network is accessible and available at eNB [20]. The signal-to-interference-plus-noise ratio (SINR) value is used as the minimum QoS parameter for all DUEs and CUEs. Hence, each CUE’s and DUE’s transmit power is optimized to achieve an acceptable data rate for each resource. We also ensure that the highest transmission power of any user equipment (UE) within the cell shall not exceed the maximum authorized value, [TeX:] $$P_{\max }.$$ During this transmit power optimization phase, path loss, fast fading due to multipath propagation, and slow fading due to shadowing are all taken into consideration. The channel gain of the [TeX:] $$j^{t h}$$ DUE pair in the [TeX:] $$l^{t h}$$ cluster over [TeX:] $$r^{t h}$$ RB is represented as [TeX:] $$h_j^l$$ and is calculated using the following [18], [19]:

(1)
[TeX:] $$h_j^l=G \beta_j \delta_j d_j^{-\alpha}.$$

Where G is path loss constant, α is path loss exponent, β is a fast fading coefficient, δ is slow fading coefficient, and [TeX:] $$d_j$$ is the distance between transmitter and receiver of [TeX:] $$j^{t h}$$ DUE pair. Similarly, the other channel gains present in the system namely, [TeX:] $$h_{i, B}^l,$$ the channel gain between [TeX:] $$i^{t h}$$ CUE and eNB in the [TeX:] $$l^{t h}$$ cluster, [TeX:] $$h_{j, B}^l,$$ the channel gain between transmitter of [TeX:] $$j^{t h}$$ D2D pair and eNB in the [TeX:] $$l^{t h}$$ cluster, [TeX:] $$h_{i, j}^l,$$, the channel gain between [TeX:] $$i^{t h}$$ CUE and receiver of [TeX:] $$j^{t h}$$ D2D pair in the [TeX:] $$l^{t h}$$ cluster and [TeX:] $$h_{j^{\prime}, j}^l,$$ the channel gain between [TeX:] $$j^{\prime t h}$$ D2D pair transmitter and receiver of [TeX:] $$j^{t h}$$ D2D pair in the [TeX:] $$l^{t h}$$ cluster are also calculated similarly to the (1).

B. Problem Formulation

Let [TeX:] $$P_{C_i}^l \text { and } P_{D_j}^l$$ represent the transmit power of [TeX:] $$i^{t h}$$ CUE using [TeX:] $$r^{t h}$$ RB and [TeX:] $$j^{t h}$$ DUE pair transmitter sharing [TeX:] $$i^{t h}$$ CUE’s resources in the [TeX:] $$l^{t h}$$ cluster , respectively, and [TeX:] $$\xi_{C_{i, r}}^l \text { and } \xi_{D_{i, j}}^l$$ designated as the SINR of [TeX:] $$i^{t h}$$ CUE using [TeX:] $$r^{t h}$$ RB and [TeX:] $$j^{t h}$$ DUE receiver who is sharing [TeX:] $$i^{t h}$$ CUE resources in the [TeX:] $$l^{t h}$$ cluster , respectively. The SINR value for the above situation can be calculated using the following equations.

(2)
[TeX:] $$\xi_{D_{i, j}}^l=\frac{P_{D_j}^l h_j^l}{X_{D_{i, j}}^l+Z_{D_{j^{\prime}, j}}^l+N_0}$$

(3)
[TeX:] $$\xi_{C_{i, r}}^l=\frac{P_{C_i}^l h_{i, B}^l}{X_{C_{i, j}}^l+N_0}$$

Where [TeX:] $$X_{D_{i, j}}^l$$ represent the cross-tier interference at [TeX:] $$j^{t h}$$ DUE pair receiver who is sharing [TeX:] $$i^{t h}$$ CUE resources, [TeX:] $$Z_{D_{j^{\prime}, j}}^l$$ denote the co-tier interference at [TeX:] $$j^{t h}$$ DUE receiver by [TeX:] $$j^{\prime}$$ DUE pair transmitter by sharing the same [TeX:] $$i^{t h}$$ CUE resources and [TeX:] $$X_{C_{i, j}}^l$$ is used to indicate for cross-tier interference at eNB by sharing [TeX:] $$i^{t h}$$ CUE RB by [TeX:] $$j^{t h}$$ DUE pairs in the [TeX:] $$l^{t h}$$ cluster. The [TeX:] $$N_0$$ stands for additive white Gaussian noise (AWGN) power.

(4)
[TeX:] $$X_{D_{i, j}}^l=\sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} P_{C_i}^l h_{i, j}^l$$

(5)
[TeX:] $$Z_{D_{j^{\prime}, j}}^l=\sum_{\substack{j^{\prime} \in \mathcal{S}_{\mathcal{D}} \\ j^{\prime} \neq j}} P_{D_{j^{\prime}}}^l h_{j^{\prime}, j}^l$$

(6)
[TeX:] $$X_{C_{i, j}}^l=\sum_{j=1}^{\mathcal{N}_{\mathcal{D}}} P_{D_j}^l h_{j, B}^l$$

Equations (4), (5), and (6) are used to calculate [TeX:] $$X_{D_{i, j}}^l, Z_{D_{j^{\prime}, j}}^l,$$ and [TeX:] $$X_{D_{i, j}}^l, Z_{D_{j^{\prime}, j}}^l,$$ respectively. [TeX:] $$R_{D_{i, j}}^l$$ is the maximum achievable data rate of [TeX:] $$j^{t h}$$ DUE receiver which is sharing [TeX:] $$i^{t h}$$ CUE resources in [TeX:] $$l^{t h}$$ cluster; [TeX:] $$R_{C_{i, r}}^l$$ is the data rate of [TeX:] $$i^{t h}$$ CUE in the [TeX:] $$l^{t h}$$ cluster using [TeX:] $$r^{t h}$$ RB. Both [TeX:] $$R_{D_{i, j}}^l \text { and } R_{C_{i, r}}^l$$ can be expressed using the following equations by the Shannon-Hartley theorem [36].

(7)
[TeX:] $$R_{D_{i, j}}^l=B_0 \log _2\left(1+\xi_{D_{i, j}}^l\right)$$

(8)
[TeX:] $$R_{C_{i, r}}^l=B_0 \log _2\left(1+\xi_{C_{i, r}}^l\right)$$

Our objective is to maximize the sum rate of the system and assure the QoS of all CUE in the system by framing the following joint resource allocation and power optimization problem. The three binary variables, [TeX:] $$y_{C_{i, r}}^l, z_{C_{i, j}}^l \text {, and } x_{D_{i, j}}^l$$ are used in the following objective function. The variable [TeX:] $$y_{C_{i, r}}^l$$ indicates whether [TeX:] $$i^{t h}$$ CUE uses [TeX:] $$r^{t h}$$ RB. The variables [TeX:] $$z_{C_{i, j}}^l \text{ and } x_{D_{i, j}}^l$$ are used to show the many-to-many relationships between an RB and DUE pair. The variable [TeX:] $$z_{C_{i, j}}^l$$ implies that an RB assigned to [TeX:] $$i^{t h}$$ CUE is shared by more than one DUE pair. At the same time, the variable [TeX:] $$x_{D_{i, j}}^l$$ represents that [TeX:] $$j^{t h}$$ DUE pairs share resources of multiple CUEs.

(9)
[TeX:] $$\max _{P_{C_i}^l, y_{C_{i, r}}^l} \sum_{l=1}^{\mathcal{N}_{\mathcal{L}}} \sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} \sum_{r=1}^{\mathcal{N}_{\mathcal{R}}} R_{C_{i, r}}^l+\max _{P_{D_j}^l, x_{D_{i, j}}^l} \sum_{l=1}^{\mathcal{N}_{\mathcal{L}}} \sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} \sum_{j=1}^{\mathcal{N}_{\mathcal{D}}} R_{D_{i, j}}^l$$

Subject To:

(9.a)
[TeX:] $$l \in\{C A, P S\}$$

(9.b)
[TeX:] $$\left\{l_{\mathcal{D}_1}\right\} \bigcup\left\{l_{\mathcal{D}_2}\right\} \bigcup\left\{l_{\mathcal{D}_3}\right\} \cdots \bigcup\left\{l_{\mathcal{D}_{\mathcal{N}_{\mathcal{L}}}}\right\}=\left\{\mathcal{S}_{\mathcal{L}}\right\}$$

(9.c)
[TeX:] $$\left\{l_{\mathcal{D}_1}\right\} \bigcap\left\{l_{\mathcal{D}_2}\right\} \bigcap\left\{l_{\mathcal{D}_3}\right\} \cdots \bigcap\left\{l_{\mathcal{D}_{\mathcal{N}_{\mathcal{L}}}}\right\}=\{\emptyset\}$$

(9.d)
[TeX:] $$\sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} N_{C_i}^l=N_C^{P S} \geq \mathcal{A}_C^{P S}\left|\mathcal{N}_{\mathcal{C}}\right|, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall l \in\{P S\}$$

(9.e)
[TeX:] $$\sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} N_{C_i}^l=N_C^{C A} \geq \mathcal{A}_C^{C A}\left|\mathcal{N}_{\mathcal{C}}\right|, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall l \in\{C A\}$$

(9.f)
[TeX:] $$\xi_{C_{i, r}}^l \geq \xi_{C_{\text {min }}}, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}, \quad \forall r \in \mathcal{S}_{\mathcal{B}}$$

(9.g)
[TeX:] $$0 \leq P_{C_i}^l \leq P_{\max }, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.h)
[TeX:] $$\sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} \sum_{j=1}^{\mathcal{N}_{\mathcal{D}}} z_{C_{i, j}}^l \geq 1, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall j \in \mathcal{S}_{\mathcal{D}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.i)
[TeX:] $$z_{C_{i, j}}^l \in\{0,1\}, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall j \in \mathcal{S}_{\mathcal{D}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.j)
[TeX:] $$\sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} \sum_{r=1}^{\mathcal{N}_{\mathcal{R}}} y_{C_{i, r}}^l=1, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.k)
[TeX:] $$y_{C_{i, r}}^l \in\{0,1\}, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall r \in \mathcal{S}_{\mathcal{B}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.l)
[TeX:] $$x_{D_{i, j}}^l \xi_{C_{i, r}}^l \geq \xi_{C_{\min }}, \forall i \in \mathcal{S}_{\mathcal{C}}, \forall j \in \mathcal{S}_{\mathcal{D}}, \forall l \in \mathcal{S}_{\mathcal{L}}, \forall r \in \mathcal{S}_{\mathcal{B}}$$

(9.m)
[TeX:] $$x_{D_{i, j}}^l \xi_{D_{i, j}}^l \geq \xi_{D_{\min }}, \forall i \in \mathcal{S}_{\mathcal{C}}, \forall j \in \mathcal{S}_{\mathcal{D}}, \forall l \in \mathcal{S} \mathcal{L}$$

(9.n)
[TeX:] $$0 \leq x_{D_{i, j}}^l P_{D_j}^l \leq P_{\max }, \quad \forall j \in \mathcal{S}_{\mathcal{D}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.o)
[TeX:] $$\sum_{j=1}^{\mathcal{N}_{\mathcal{D}}} \sum_{i=1}^{\mathcal{N}_{\mathcal{C}}} x_{D_{i, j}}^l \geq 1, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall j \in \mathcal{S}_{\mathcal{D}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

(9.p)
[TeX:] $$x_{D_{i, j}}^l \in\{0,1\}, \quad \forall i \in \mathcal{S}_{\mathcal{C}}, \quad \forall j \in \mathcal{S}_{\mathcal{D}}, \quad \forall l \in \mathcal{S}_{\mathcal{L}}$$

The problem formulated in the objective function (9) maximizes the sum rate of each cluster in the system by reusing CUE’s resources with DUEs in a many-to-many strategy. It is assumed that a DUE pair is running only one type of application, either ‘PS’ or ‘CA’ and not both. Hence, we create two types of clusters as a rule specifies (9.a). While forming the cluster, (9.b) will make sure that no DUE pairs are excluded, and (9.c) will ensure that no D2D pairs belong to more than one cluster. After cluster formation, for each cluster, the nearest CUEs are included as cluster members so that they can share the resources with DUE pairs. The CUE distribution to each cluster is based on a pre-agreed contract between two application types called the allotment ratio, [TeX:] $$\mathcal{A}_C^l.$$ The allotment ratio ensures that the PS clusters have an additional number of CUEs than the CA clusters. Hence more DUE pairs are active and get reuse partners in the PS clusters for sharing the resources. The total number of CUEs allocated to PS and CA clusters are differentiated using [TeX:] $$N_C^{P S} \text { and } N_C^{C A} \text {, }$$ respectively, and it should be equal to or greater than the respective allotment ratio of the clusters; the rules defined in (9.d) and (9.e) preserve this law. During the RB allocation process to all CUE in the network, we ensure that CUE meets the minimum required SINR values for QoS, and constraint (9.f) is used to hold this rule. Constraint (9.g) ensures that CUE power will always be a non-negative value. The RB assigned to a CUE can be shared by more than one DUE pair in the many-to-many strategy, and constraint (9.h) is used to keep this rule. Constraint (9.i) uses a binary variable [TeX:] $$z_{C_{i, j}}^l$$ to indicate that RB assigned to [TeX:] $$i^{t h}$$ CUE is shared by the [TeX:] $$j^{t h}$$ DUE pair in the [TeX:] $$l^{t h}$$ cluster if its value is one and otherwise zero. No more than one CUE shares the same RB, and only one RB is rationed to a single CUE in the network to avoid co-channel interference between the CUEs, and this restriction is made by constraint (9.j). The binary variable [TeX:] $$y_{C_{i, r}}^l$$ is used to record whether an RB r is assigned to CUE, and the constraint (9.k) is used to verify this rule. If the value is one, then [TeX:] $$i^{t h}$$ CUE in the [TeX:] $$l^{t h}$$ cluster is accessing the [TeX:] $$r^{t h}$$ RB and zero otherwise. The CUE’s performance may be distorted as the DUE pairs will reuse their resources. Hence, constraint (9.l) is used to ensure the minimum QoS, [TeX:] $$\xi_{C_{\min }},$$ for all CUEs in the cluster. Alongside CUEs, a minimum QoS, [TeX:] $$\xi_{D_{\min }},$$ is also maintained for all the DUEs in a cluster using the constraint (9.m). The non-negative power value restriction for the DUEs is set by constraint (9.n). We are using a manyto- many strategy, and every DUE pair in the cluster is free to share more than one CUE’s resources, and constraint (9.o) is used to exercise this restriction. Constraint (9.p) is utilized to show whether the [TeX:] $$j^{t h}$$ DUE pair shares [TeX:] $$i^{t h}$$ CUE resources and it is a binary variable; if the value is one, the [TeX:] $$j^{t h}$$ DUE pair in the [TeX:] $$l^{t h}$$ cluster reuses the [TeX:] $$i^{t h}$$ CUE resources; otherwise, zero.

A many-to-many scheme is employed in the proposed work to maximize the sum rate of the network without compromising the QoS of all UEs. The minimum SINR requirement for the guaranteed QoS of CUEs and DUE pairs are expressed by the constraints (9.l) and (9.m), respectively. The optimum transmit power [TeX:] $$P_{C_i}^l \text { and } P_{D_j}^l$$ required for the QoS transmission can be determined from the constraints (9.l) and (9.m) and can be expressed by the following equations.

(10)
[TeX:] $$P_{C_i}^l=\frac{\xi_{C_{\min }}\left(X_{C_{i, j}}^l+N_0\right)}{h_{i, B}^l}$$

(11)
[TeX:] $$P_{D_j}^l=\frac{\xi_{D_{\min }}\left(X_{D_{i, j}}^l+Z_{D_{j^{\prime}, j}}^l+N_0\right)}{h_j^l}$$

The optimization problem formulated in (9) is the MINLP problem and non-convex in nature [ 37]. It is very challenging to solve such a class of problems directly to find the optimal solution. Hence, in the subsequent section, we introduce two frameworks to solve it by dividing it into sub-problems: Cluster-based many-to-many resource allocation and resource sharing framework (CMMRARS) and constant time power control algorithm (CTPCA). The CMMRARS framework is divided into three sub-frameworks, and the CTPCA framework is divided into two sub-frameworks. The flow of execution of these sub-frameworks is shown in Fig. 2.
Fig. 2.
Execution sequence of different sub-frameworks - CMMRARS and CTPCA

III. CMMRARS FRAMEWORK

The main functionality of the CMMRARS is resource allocation to CUEs and sharing of the CUEs’ resources by DUEs. The CMMRARS consists of three sub-frameworks: Cluster formation, resource allocation for CUEs, and resource sharing for DUE pairs with QoS consciousness. The order of execution of the CMMRARS is cluster formation, resource allocation for CUE, and sharing of allocated resources with DUEs for communications. The sub-frameworks 1 of CMMRARS will create different clusters based on the application type with each cluster comprising a set of CUEs and DUE pairs. The clusters are formed to prioritize PS DUE pairs requests over CA DUE. The sub-framework 2 of the CMMRARS will assign the resources to CUEs based on the highest channel gains among the cellular users. The resources are assigned orthogonally to CUEs and non-orthogonally to DUE pairs. The sub-framework 3 of the CMMRARS will share the assigned resources of CUEs to DUEs for D2D communication. A bipartite graph is used to decide the resource-sharing strategy among CUEs and DUEs in a cluster based on the optimum transmit power of each DUE. To obtain the optimum transmit power required for CUEs and DUEs, the sub-frameworks 1 and 2 of the CMMRARS will in turn use the sub-frameworks 1 and 2 of CTPCA as shown in Fig. 2. The different sub-frameworks of the CMMRARS are explained in detail in the following subsections.

A. Sub-Framework 1: Cluster Formation

For clustering DUEs and CUEs, the K-means clustering algorithm is used since all the constraints required to form the clusters stated in (9.a)–(9.e) will be fulfilled by the said algorithm [38]. First, all the DUE pairs present in the network will be grouped based on the application type, and then the K-means clustering algorithm will act upon these two groups to form clusters. A DUE pair consists of a transmitter and receiver, and the midpoint between these transceivers is used as a clustering parameter in K-Means clustering algorithm. The DUE pairs will be allotted to a particular cluster based on the nearest mean. The K-means clustering algorithm minimizes the euclidean distance within the cluster, where the distance between the middle of the DUE pair and the cluster center is considered as the nearest euclidean distance in this procedure. Considering [TeX:] $$\mathcal{P}\left(p_1, p_2, \cdots, p_n\right) \text { and } \mathcal{Q}\left(q_1, q_2, \cdots, q_n\right)$$ as the position coordinates of the midpoint of the DUE pairs and the cluster center, respectively, the (12) can be used to get the euclidean distance between these two points [38].

(12)
[TeX:] $$d\left(p_i, q_i\right)=\left[\sum_{i=1}^n\left(p_i-q_i\right)^2\right]^{1 / 2}$$

The CUEs located at the nearest cluster center will be instituted into that cluster for sharing its resources with DUE pairs. DUE pairs can only access the resources of all CUEs present in that cluster. No inter-sharing of CUE resources present in other clusters is allowed. Algorithm 1 describes the formation of clusters with multiple CUEs and DUE pairs. The algorithm can be split into four parts. In part 1 of the algorithm (lines 3–9), all DUE pairs in the cellular network are divided into two application groups, either ‘PS’ or ‘CA’ based on the attribute Application Type of each DUE pair. The K-means clustering algorithm is applied on each application group (PS and CA) in part 2 (lines 10–19) of the algorithm to form the application-specific clusters in a cell. Part 3 (lines 20–29) of the algorithm assigns the CUEs to the nearest cluster center and sets the application type of each CUE based on the cluster it belongs to. The assignment of CUEs to the cluster is based on the nearest cluster center. Consequently, there is a chance of getting some clusters to have more number of CUEs than others, irrespective of application types. Hence, we introduce an allotment ratio to prioritize PS application over CA by incorporating more CUEs in PS clusters. Accordingly, the final part of the algorithm (lines 30–32) will rearrange the CUEs to fulfill the allotment ratio of each application type. Each application type receives a proportion of the total number of CUEs present in the network based on the allotment ratio, [TeX:] $$\mathcal{A}_C^l,$$ where [TeX:] $$\sum_{l \in(P S, C A)} \mathcal{A}_C^l \leq 1.$$ These CUEs are shared among all clusters in each application. In the allotment ratio, the PS cluster will be given more weightage than the CA cluster so that more CUEs are allocated to PS than CA, and hence, more DUEs are active in the PS cluster by sharing the CUE’s resources. Theorem 1 and 2 are employed to define the time complexity and convergence of defined Algorithm 1.

Cluster formation algorithm

Theorem 1: The time complexity of Algorithm 1 is [TeX:] $$O\left(\mathcal{N}_{\mathcal{D}}\right)+O\left(k \cdot \mathcal{N}_{\mathcal{D}}\right)+O\left(k \cdot \mathcal{N}_{\mathcal{C}}\right)+O\left(\mathcal{N}_{\mathcal{C}}\right),$$ where [TeX:] $$\mathcal{N}_{\mathcal{D}}$$ is the number of DUE pairs in [TeX:] $$\mathcal{S}_{\mathcal{D}}, \mathcal{N}_{\mathcal{C}}$$ is the number of CUEs in [TeX:] $$\mathcal{S}_{\mathcal{C}}$$ and k is the total number of clusters in the cell.

Proof: The run-time complexity of Algorithm 1 is characterized using four expressions and is equal to the time required to complete the four parts of the algorithm in sequential order. Part 1 of the algorithm forms two groups of DUEs based on the applications, and it contains an if-else statement under a single for loop. If the cellular network comprises of [TeX:] $$\mathcal{N}_{\mathcal{D}}$$ the number of DUE pairs, then part 1 of the algorithm will take [TeX:] $$O\left(\mathcal{N}_{\mathcal{D}}\right)$$ number of operations to complete. The K-means clustering algorithm is used in part 2 of the algorithm. The time required to create a k cluster from an [TeX:] $$\mathcal{N}_{\mathcal{D}}$$ object is [TeX:] $$O\left(k . \mathcal{N}_{\mathcal{D}}\right)$$ [38]. Accordingly, Part 2 of the algorithm contributes a further [TeX:] $$O\left(k . \mathcal{N}_{\mathcal{D}}\right)$$ time complexity to the Algorithm 1. Part 3 of the algorithm is used to assign CUEs to the clusters. The two nested loops are required to execute for the assignment of CUEs into the nearest cluster because each CUE in the set [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ has to find the distance from the k clusters; therefore, part 3 of the algorithm will contribute [TeX:] $$O\left(k . \mathcal{N}_{\mathcal{D}}\right)$$ number of steps for the allotment of CUEs to the clusters. The algorithm’s final part is rearranging CUE to satisfy the allotment ratio, and it requires only a single for loop to take the CUEs from the CA clusters and reallocate them to the PS. Consequently, the final part of the algorithm will take [TeX:] $$O\left(\mathcal{N}_{\mathcal{D}}\right)$$ run time. Adding all these elements together, the total required time for the completion of Algorithm 1 is [TeX:] $$O\left(\mathcal{N}_{\mathcal{D}}\right)+O\left(k . \mathcal{N}_{\mathcal{D}}\right)+O\left(k . \mathcal{N}_{\mathcal{C}}\right)+O\left(\mathcal{N}_{\mathcal{C}}\right).$$

Theorem 2: If set [TeX:] $$\mathcal{N}_{\mathcal{D}} \text { and } \mathcal{N}_{\mathcal{C}}$$ contains a finite number of UEs, then Algorithm 1 must converge.

Proof: The algorithm uses only one unconditional loop, and all other loops are conditional. The conditional loops are used to iterate through the set and terminate after a certain number of executions if the set contains a finite number of UEs. The unconditional loop (lines 12–18) is used to implement the K-means clustering algorithm. The termination condition of the K-means the clustering algorithm depends on the cluster centers stabilizing [38]. Hence, Algorithm 1 must converge after a finite number of executions.

B. Sub-Framework 2: Resource Allocation for CUEs

Most of the existing studies in the literature adopt the technique of preallocating resources to CUEs and transmit power is fixed to 24 dBm [13]–[32]. The proposed work introduces a novel resource allocation algorithm that assigns resources sequentially to the CUEs with the highest channel gain out of [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ CUEs in order to enhance the sum rate of the system while meeting the restrictions (9.f)–(9.k) framed in problem (9). The resource allocation algorithm is shown in Algorithm 2. Algorithm 2 initially considers all CUEs equally and assigns resources to CUEs sequentially, one after another, to fulfill the minimum QoS as expressed by the constraint (9.f). Each CUE searches for maximum channel gain during the resource allocation procedure until it meets the minimum QoS specified in lines 4–13. The CUEs are allowed to utilize only one RB restricted by the rule (9.j), and this precondition is verified at line 6 before assigning the resources to a CUE. Algorithm 4 is invoked at line 7 to determine the transmit power for each CUE for guaranteed QoS. The transmit power value of CUEs are different and varies depending on the distance and signal strength of the network.We are determining the transmit power of CUE, which helps to ensure that the CUE uses less power than required to communicate with the network in the fixed power value scenarios. It can benefit and conserve battery life. Theorems 3 and 4, presented below, emphasize the time complexity and convergence of Algorithm 2, respectively.

Resource allocation for CUEs

Theorem 3: If the cellular network consists of [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ number of CUEs and [TeX:] $$\mathcal{N}_{\mathcal{R}}$$ number of resources, then the time complexity of Algorithm 2 is [TeX:] $$O\left(\mathcal{N}_{\mathcal{C}} . \mathcal{N}_{\mathcal{R}} . 1\right).$$

Proof: Algorithm 2 uses one for-loop and do-while loop statements. The for loop specified at line 3 is used to assign resources to [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ number of CUEs present in the system. Hence the for loop will iterate [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ number of times in the loop. Each time while iterating through the for loop, the algorithm searches for the most appropriate resources for CUE by using the do-while loop statement specified in lines 4–13. In the worst case, the inner loop has to execute [TeX:] $$\mathcal{N}_{\mathcal{R}}$$ the number of times for each CUE in the network. Algorithm 2 uses algorithm 4 to find the transmit power of CUE. Algorithm 4 operates constant time for execution, that is, O(1). Accordingly, the total number of execution required to complete the allocation process is [TeX:] $$O\left(\mathcal{N}_{\mathcal{C}} . \mathcal{N}_{\mathcal{R}} . 1\right).$$

Theorem 4: If the total number of cellular users and resources are defined in sets [TeX:] $$\left\{\mathcal{S}_{\mathcal{C}}\right\} \text { and }\left\{\mathcal{S}_{\mathcal{B}}\right\},$$ respectively, then Algorithm 2 must converge to a stable matching.

Proof: The for loop statement used in the Algorithm stops the execution after finishing all the CUEs in the system. A dowhile statement uses a temporary set called [TeX:] $$B_{temp }$$ to allocate resources. Ultimately, the set [TeX:] $$B_{temp }$$ may shrink to zero after completing the allocation process by updating the statement specified in line 11 of the algorithm. Hence, there is no chance of infinite looping by assigning the same resources to more than one CUE. Finally, the two loops will terminate after finding the minimum required QoS indicated in line 13 of the algorithm for each CUE in the network, and the Algorithm converges to stable matching.

C. Sub-Framework 3: Resource Sharing for DUE pairs with QoS Consciousness

DUE pairs are authorized to share the RBs allocated to CUEs in the same cell to enhance the system’s throughput without compromising the QoS, and this sub-framework is used to ensure the same. The weighted bipartite graph, as shown in the Fig. 3, is utilized to find the D2D resourcesharing partner for each CUE by using the constraints (9.l)–(9.p). The weighted bipartite graph '[TeX:] $$\mathcal{G}$$' is constructed by considering two disjoint sets, namely, a set of CUEs [TeX:] $$\left\{\mathcal{S}_{\mathcal{C}}\right\}$$ and set of DUEs [TeX:] $$\left\{\mathcal{S}_{\mathcal{D}}\right\}$$ and an edge between [TeX:] $$\mathcal{S}_{\mathcal{C}_i} \text { and } \mathcal{S}_{\mathcal{D}_j}$$ indicates they belong to the same cluster l. The weight '[TeX:] $$\mathcal{W}_{i j}^l$$' of an edge in the cluster l is assigned by using the (13), which is the ratio of the effect of cross-tier and co-tier interferences at the [TeX:] $$j^_{t h}$$ DUE pair receiver. Each DUE prepares a list of CUEs in the cluster based on the ratio of weight, and this list is used for the construction of weighted bipartite graphs. The CUEs in the set use these weights on the graph to form a priority list of reuse partners of DUE pairs.

(13)
[TeX:] $$\mathcal{W}_{i, j}^l=\frac{h_j^l}{h_{i, j}^l+\sum_{\substack{j^{\prime} \in \mathcal{D} \\ j^{\prime} \neq j}} h_{j^{\prime}, j}^l+N_0}$$

Fig. 3.
Weighted bipartite graph between DUE pairs and CUE for resource sharing.

Algorithm 3 is employed for sharing the resources of CUEs with DUE pairs. It provides three lists of output for each CUEs, a set of allocated DUE pairs [TeX:] $$\mathcal{S}_{A_{i, j}}^l,$$ waitlisted DUE pairs [TeX:] $$\mathcal{S}_{W_{i, j}}^l,$$ and power values of DUE pairs [TeX:] $$\mathcal{S}_{P_{i, j}}^l.$$ The [TeX:] $$\mathcal{S}_{A_{i, j}}^l.$$ contains the list of DUE pairs that are allowed to share the resource of CUEs with QoS constraints, whereas the list of DUE pairs in the [TeX:] $$\mathcal{S}_{W_{i, j}}^l$$ are not allowed to reuse the resources of CUEs since they violate the QoS constraints defined in the objective function (9). The [TeX:] $$\mathcal{S}_{P_{i, j}}^l$$ gives the optimal power value for all DUE pairs that are either in the [TeX:] $$\mathcal{S}_{A_{i, j}}^l \text { or in } \mathcal{S}_{W_{i, j}}^l$$ which guarantees the QoS to CUEs. The algorithm begins with developing a weighted bipartite graph [TeX:] $$\mathcal{G}$$. Each CUE in the graph can make a priority list, [TeX:] $$\mathcal{P}_{D_{i, j}}^l,$$ based on the weights on the edges incident, shown in line 2 of the algorithm. The RB sharing process is done sequentially for all CUEs in the network (lines 3–15). The maximum value is retrieved from the list during each iteration, and Algorithm 5 is called to obtain the optimal transmit power of the DUE pair and a FLAG value. This process is repeated until the priority list becomes empty (lines 4–14). The FLAG is a binary variable where a value of one indicates that the DUE pair is allowed to share the CUE’s resources and it should be enqueued into the allocation list; the value zero indicates the DUE pair is not allowed to share the CUE resources and DUE pair should be placed in the waiting list (lines 9–13). Theorem 5 and 6 can be used to examine the time complexity analysis and convergence properties of Algorithm 4, respectively.

Resource sharing for DUE pairs with QoS consciousness

Theorem 5: If the cellular network contains [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ number of CUEs and [TeX:] $$\mathcal{N}_{\mathcal{D}}$$ number of DUE pairs, Algorithm 3 will take [TeX:] $$O\left(\left(\mathcal{N}_{\mathcal{C}}+\mathcal{N}_{\mathcal{D}}\right)^2\right)+O\left(\mathcal{N}_{\mathcal{C}} . \mathcal{N}_{\mathcal{D}} . 1\right)$$ number of operations for execution. Where 1 is the order of execution of Algorithm 5.

Proof: The first term expressed in the complexity analysis is the time required to build the weighted bipartite graph, and it is [TeX:] $$O\left(n^2\right),$$ where n is the number of vertices in the graph [39]. Therefore the time for the [TeX:] $$\mathcal{N}_{\mathcal{C}}+\mathcal{N}_{\mathcal{D}}$$ number of vertices is [TeX:] $$O\left(\left(\mathcal{N}_{\mathcal{C}}+\mathcal{N}_{\mathcal{D}}\right)^2\right).$$ The algorithm uses one for loop and a while loop statement at lines 3 and 4, respectively. The for loop will run [TeX:] $$\mathcal{N}_{\mathcal{C}}$$ number of times since it has to consider all CUEs in the network. While loop is executed for the resource sharing process, and in the worst case, it requires [TeX:] $$\mathcal{N}_{\mathcal{D}}$$ number operation to manage all DUEs in the network. Algorithm 5 is called at line 6 and needs only a constant time for execution. Hence, the time complexity of Algorithm 3 will be [TeX:] $$O\left(\left(\mathcal{N}_{\mathcal{C}}+\mathcal{N}_{\mathcal{D}}\right)^2\right)+O\left(\mathcal{N}_{\mathcal{C}} . \mathcal{N}_{\mathcal{D}} . 1\right).$$

Theorem 6: Algorithm 3 must converge to stable matching after a finite number of executions if the number of elements in the sets [TeX:] $$\left\{\mathcal{S}_{\mathcal{D}}\right\} \text { and }\left\{\mathcal{S}_{\mathcal{C}}\right\}$$ is predefined.

Proof: The algorithm uses single for and while loop statements. The for loop will stop after serving all the CUEs in the system. The stopping condition for the while loop is the emptiness of the priority list for each CUE, as indicated in line 4. The maximum weighted DUE pair is retrieved and deleted from the priority list during each iteration in the loop, as mentioned in lines 5 and 8. Ultimately, the priority list becomes empty and exits from the loop. As a result, the algorithm will reach its convergence after a certain number of iterations.

IV. CTPCA FRAMEWORK

A. Sub-Framework 1: Transmit Power Control for CUE

Algorithm 4, transmit power control for CUE, is used for finding the optimal transmit power of CUE. The powercontrolling algorithm is constrained by the restrictions (9.f) and (9.g) of the objective function (9). The list of all DUE pairs, [TeX:] $$\mathcal{P}_{D_{i, j}}^l,$$ is created at the beginning of the algorithm for each CUE in the cluster by using the weighted bipartite graph as an input parameter. We explore the worst-case scenario, in which every DUE pair in the cluster can access the resources of CUE by operating at maximum transmission power, such as 24 dBM. Since the maximum interference level at the eNB is considered, this assumption prevents underestimating the received interference at the eNB. The cross-tier interference is calculated in line 2, while in line 3 of the algorithm, the power required for QoS consciousness is determined. If the computed power exceeds the cellular network’s maximum permitted transmission power of a UE, which is 24 dBm [40], we confine it to 24 dBm at lines 4–6. The theorem 7 can be used to explain the time complexity and convergence of Algorithm 4

Transmit power control algorithm for CUE

Theorem 7: The algorithm can find out and return the transmission power of a CUE with a time complexity of O(1).

Proof: The algorithm uses only a sequence of direct instructions to compute the transmit power of CUE, and no more conditional or unconditional loops are used anywhere in the algorithm. Incidentally, the algorithm will run for a constant amount of time to calculate the transmission power and return the value to the calling program. Accordingly, the algorithm will converge and be executed at O(1) time complexity.

B. Sub-Framework 2: Transmit Power Control for DUE

The transmit power of a DUE pair is determined using Algorithm 5. The constraints (9.l) to (9.n) formulated in the objective function (9) are used for framing this algorithm. The algorithm finds the optimal transmit power for the D2D transmitter, [TeX:] $$\mathcal{P}_{D_{i, j}}^l,$$ by ensuring the QoS for both DUEs as well as CUEs in the cluster. In order to determine the cotier interference generated by all other DUE pairs, the worstcase scenario is taken into account, in which all DUE pairs in the cluster actively participate in the resource sharing of a CUE by utilizing the maximum amount of transmitted power, such as 24 dBm. Consequently, the DUE receiver experiences the highest degree of co-tier interference, and this assumption should never underestimate the interference experienced by the DUE receiver. The DUE receiver will experience cross-tier interference from the CUE by sharing their resources. Hence, the transmit power value generated by Algorithm 4 can be used to determine the effect of cross-tier interference at the DUE receiver caused by a CUE in the cluster. The algorithm can be divided into two sections. The first section (lines 1– 5) determines the optimal transmission power by calculating the effect of cross-tier and co-tier interference at the DUE receiver. The resources are assigned orthogonally to CUEs and non-orthogonal to DUEs. As a result, one resource is used by single CUE and multiple DUE pairs, and these lists are drawn up in steps 1 and 2, respectively. The second section (lines 6–22) of the algorithm is used for checking the QoS of CUE. If the computed transmitted power does not disturb the normal operation of CUE, then the [TeX:] $$\mathcal{F} \mathcal{L} \mathcal{A G}$$ value is set to 1; otherwise, 0. We also ensure that the computed power value never exceeds the maximum allowed value for the transmission. Theorem 8 evaluates the convergence and time complexity of the algorithm.

Transmit power control algorithm for DUE

Theorem 8: Algorithm 5 is able to determine and return a DUE’s transmission power with O(1) time complexity.

Proof: Section 1 and 2 of the algorithm uses simple instruction and if-else statements to find the transmit power of the DUE pair. Hence, there is no chance of indefinite execution inside any part of the algorithm and stop after a finite number of executions using O(1) time complexity.

V. PERFORMANCE EVALUATION

The proposed framework is simulated and analyzed using the MATLAB tool. Table I lists the various simulation parameters considered for the assessment [20]. We consider the single-cell scenario, where the eNB transmission range covers 500 m of radius, and at each transmission time interval, eNB is responsible for assigning resources to UEs. The quantity of data that one RB can carry depends on the channel quality factor. The CTPCA framework determines the optimal transmit power of CUE and DUE in the network and limits UEs’ maximum transmit power to a maximum of 24 dBm. The DUE pairs and CUEs are uniformly distributed inside the cellular region for simulation, and a DUE pair belongs to no more than one cluster. A total of 50 DUE pairs and 10 CUEs are taken into account for simulation. Each DUE pair is identified by the indexes DUE1 to DUE50, whereas CUEs are identified by the indexes CUE1 to CUE10. The number of clusters created using the k-means clustering algorithm is four, two for PS (namely PS1 and PS2) and two for CA (namely CA1 and CA2). The different DUE pairs belong to different clusters based on the location and type of services. The CUEs are allocated to the nearest clusters based on the allotment ratio of services (either PS or CA), and PS clusters get the upper hand over the CA clusters by allocating more number of CUEs in the clusters. The minimum SINR value [TeX:] $$\xi_{D_{\min }}$$ used during the resource-sharing process for DUEs is 7 dB. Two SINR values, [TeX:] $$\xi_{C_{\min -P S}} \text { and } \xi_{C_{\min -C A}} \text {, }$$ are used as QoS benchmarks for CUEs in the PS and CA clusters throughout the resource reuse phase. The value for [TeX:] $$\xi_{C_{\min -P S}} \text { and } \xi_{C_{\min -C A}} \text {, }$$ is set to 7 dB and 13 dB respectively [41]. The 7 dB value of SINR in the PS cluster signifies that signal strength is medium, but the QoS of all CUEs in the cluster can be preserved. On the other hand, maintaining medium SINR allows us to accommodate and serve more DUE pairs in the PS cluster. Thus, public safety communication can be prioritized over commercial applications. To make sure that the QoS of CUEs present in the CA cluster is not disturbed, the SINR value for CUEs in the CA cluster is set to 13 dB during the resource-sharing phase where 13 dB SINR is considered to be a relatively good SINR for providing the QoS. Based on the type of request and the cluster from which the request comes the CUEs and DUEs are identified and accordingly, resources are allocated to CUEs and DUEs. The following section presents a detailed analysis and interpretation of the simulation results.

TABLE II
SIMULATION PARAMETERS AND VALUES.

Fig. 4 shows the sum rate of all CUEs in different clusters. The PS1 cluster comprises 4 CUEs (CUE1, CUE5, CUE7, and CUE10); all other clusters possess 2 CUEs each. The sum rate of all these four CUEs is shown in Fig. 4(a). The CUE2 and CUE6 are present in the PS2 cluster, and their sum rates are displayed in Fig. 4(b). Figs. 4(c) and 4(d) depict the sum rate of CA1 and CA2 clusters, respectively where CA1 contains CUE4 and CUE8 whereas CA2 contains CUE3 and CUE9. The maximum channel gain associated with CUEs is considered a criterion for resource allocation in order to enhance the system’s sum rate. All these figures reveal the fact that there is a decline in the sum rate in all the clusters since the channel condition deteriorated as the average shadowing loss increased.

Fig. 4.
Performance analysis of CUE in different cluster.

Fig. 5 shows the overall performance of the network with respect to the sum rate. Fig. 5(a) illustrates the cluster-wise CUE throughput of the network for which the aggregated average of all CUEs sum rate in the cluster is taken into consideration. Fig. 5(b) shows the sum rate of DUEs in all the clusters, and we can observe that all DUEs are active in PS1. This is mainly because the PS1 cluster contains more CUEs than others thus providing more resource-sharing opportunities for the DUEs. Hence, a higher sum rate than other clusters can be observed in PS1. Fig. 5(c) depicts the system’s overall cluster-wise sum rate, and it delivers that system throughput is enhanced by D2D communication thereby achieving our objective function defined in (9). The maximum achievable D2D data rate is observed to be 80 Kbps in the simulation carried out. Fig. 5(d) shows the resource allotment ratio which is obtained from Algorithm 1 of the CMMRARS framework. Algorithm 1 will create clusters of DUE pairs using the Kmeans clustering algorithm and assign the CUEs to the nearest cluster. The reshuffling of CUEs is done in the final stage of the Algorithm to ensure that the number of CUEs in the PS cluster is always higher than in the CA cluster. Thus, sub-framework 1 of the CMMRARS guarantees that the PS application holds an advantage over other applications. The detailed analysis of each cluster with respect to the sum rate is shown in Figs. 6(a) to 6(d). Due to the crosstier interferences, CUE’s throughput decreases as more DUE pairs share their resources. At the same time, the sum rate of DUE pairs in all clusters is increasing by reusing all CUEs’ resources. The proposed framework preserves the QoS of all CUEs in the system while sharing the resources with DUEs, and all these Figs. 6(a) to 6(d) emphasize these facts. We are implementing a many-to-many strategy in which multiple DUE pairs reuse each CUE’s resources, and each DUE pair can access multiple CUEs’ resources. The allocation sequence is shown in Figs. 7(a) to 7(d). All DUE pairs in the system can access multiple CUE resources, but some DUEs cannot access all of the CUE resources in the cluster upholding the QoS restrictions. The Allocation and Waiting lists are outputs of the proposed framework, and each CUE in the cluster has these two lists. Figs. 8(a) to 8(d) shows the number of DUE pairs active and inactive at each cluster. The request from the waiting list queue can be considered once the allocation list is empty or any of the DUE pairs finishes their communication. The cellular users CUE1, CUE5, CUE7, and CUE10 are in the PS1 cluster, as shown in Fig. 8(a). Nine DUE pairs share the resource of CUE1, and the algorithm has declined six DUE pair’s requests for sharing CUE1 resources because of QoS constraints and these six DUEs are put on the waiting list. Whereas all DUE pairs share the CUE5 resources in PS1, and no DUE pairs are on the waiting list for sharing the CUE5 resources. Similarly, the resources of CUE7 and CUE10 are shared by nine and eleven DUE pairs, whereas the number of DUE pairs in the waiting list for sharing the CUE7 and CUE10 resources are six and four, respectively. Fig. 8(b) shows that the number of DUE pairs sharing the resources of CUE2 and CUE6 in the PS2 cluster is eight and six, respectively. A total of two and four DUE pairs are on the waiting list to access the resources of CUE2 and CUE6, respectively. Fig. 8(c) and 8(d) show the number of DUEs actively using the resources of cellular users in CA1 and CA2 clusters. These figures infer that the number of requests approved for sharing the resources of cellular users for D2D communication is comparatively much less, and hence more DUEs are on waiting lists in CA1 and CA2 clusters. This is mainly because of the QoS constraints of CUEs present in the CA clusters which hinders the resource sharing capability of CUEs with DUE pairs.

Fig. 5.
Aggregate performance analysis of CUEs and DUEs in different cluster.
Fig. 6.
Cluster-wise performance analysis.
Fig. 7.
Cluster-wise allocation sequence.
Fig. 8.
Allocation vs. waiting list.

The overall cluster-wise resource sharing vs. waiting list is shown in Fig. 9(a). The comparison shows that more DUE requests are handled in the PS cluster than in the CA cluster. Thus, it reveals that the DUE users in the PS clusters have gained significant attention over the CA cluster. Fig. 9(b) represents the power allocation of overall CUEs in the network. Algorithm 4 of the CTPCA framework is used to find the optimum power required for all users in the network. Depending on cross-tier and co-tier interferences, a DUE will use different transmit power for different RBs during resource sharing. In the proposed many-to-many strategy, a DUE can reuse multiple CUEs resources in the same cluster. The optimal power used for each resource-sharing process differs for each DUE and is shown in Figs. 10–13, and it is determined using Algorithm 5 of CTPCA. Fig. 10 shows the optimal power required to maintain the QoS of DUEs to share the different resources in the PS1 cluster. The PS2, CA1, and CA2 clusters contain two CUEs each, and Figs. 11, 12, and 13, respectively, show the optimum power required for all DUEs in the cluster. Algorithm 5 returns the optimum power value required to deliver the minimum QoS for all the DUE pairs in the cluster for different resources. If the newly computed power value interferes with CUE’s QoS and disturbs the regular operation of the CUE, then we will hold the affiliated DUE pair in the waiting list of CUE. Otherwise, it will be added to the allocation list. All the DUE pairs in the allocation list will acquire the authorization to reuse the resources. All the results discussed above reveal that the proposed frameworks work correctly with less overhead and complication, thus, fulfilling all our listed objectives.

Fig. 9.
Cluster-wise allocation vs. waiting list and CUE power allocation.
Fig. 10.
Power details of PS1 cluster (Watts).
Fig. 11.
Power details of PS2 cluster (Watts).
Fig. 12.
Power details of CA1 cluster (Watts).
Fig. 13.
Power details of CA2 cluster (Watts).

VI. CONCLUSION AND FUTURE WORK

We address the issues and complications in the many-tomany application-based priority-driven resource allocation and power optimization problems in D2D-enabled cellular communication; accordingly, an objective function is formulated to enhance the system throughput. CMMRARS and CTPCA frameworks are proposed to meet the defined objectives. The CMMRARS framework, in turn, consists of three subframeworks for clustering formation, resource allocation to CUEs, and sharing of allocated resources by DUE pairs. The CMMRAS starts with the formation of two groups of clusters, namely PS and CA, using the K-means clustering algorithm. Using an allotment ratio, the CUEs are designated to each cluster. The sub-framework resource allocation is employed to ration the resources to CUEs based on the criteria of maximum channel gain. The bipartite graph is utilized to reuse the resources assigned to CUEs by DUEs in the cluster by resource sharing sub-framework. The weight on each edge of the bipartite graph acts as a deciding factor for reusing the resources. The ratio of the channel gain to the interference link is used to assign weight to the edges of the graph. CTPCA framework is divided into two sub-framework to calculate the optimum power of CUEs and DUEs for guaranteed QoS. The various theorems have been stated and proved to authenticate that the suggested sub-framework will converge and stop after a finite number of executions. The simulation results prove the proposed frameworks’ effectiveness and show that PS has the edge over CA applications. In the proposed work, only one RB is allocated to a CUE. However, the proposed frameworks can be studied against multiple resources for a CUE in a multiplecell environment for future work. According to the allotment ratio, the nearest PS cluster to a CUE is selected as a victim for reordering CUEs in the CA cluster. In contrast, the minimum number of CUEs in the PS cluster or another method can be considered for future work.

Biography

Raghu Thekke Veedu

Raghu Thekke Veedu received the M.Tech. degree in Computer and Information Science from the Cochin University Of Science and Technology, Cochin, India, in 2013. He is currently pursuing the Ph.D. degree with the Department of Information Technology, National Institute of Technology Karnataka, Surathkal, India. He has eight years of teaching experience. His current research interests is D2D communication.

Biography

Kiran Manjappa

Kiran Manjappa is an Assistant Professor in the Department of Information Technology, National Institute of Technology Karnataka (NITK), Surathkal, India. He holds a Ph.D. from the National Institute of Technology Karnataka (NITK), Surathkal, India. He has contributed to the literature through many international conferences and journal publications under IEEE, IET, and Springer publishers. He is serving as a reviewer for reputed journals and served as a chair and Technical Program Committee member for international conferences. His research interests include blockchain technology, IoT, and 5G networks.

References

  • 1 A. Gupta and R. K. Jha, "A survey of 5G network: Architecture and emerging technologies," IEEE Access, vol. 3, pp. 1206-1232, 2015.doi:[[[10.1109/ACCESS.2015.2461602]]]
  • 2 L. Xu et al., "Energy efficient D2D communications: A perspective of mechanism design," IEEE Trans. Wireless Commun., vol. 15, no. 11, pp. 7272-7285, 2016.doi:[[[10.1109/TWC.2016.2599870]]]
  • 3 I. F. Akyildiz, S. Nie, S.-C. Lin, and M. Chandrasekaran, "5G roadmap: 10 key enabling technologies," Comput. Netw., vol. 106, pp. 17-48, 2016. (Online). Available: https://www.sciencedirect.com/ science/article/pii/S1389128616301918doi:[[[10.1016/j.comnet.2016.06.010]]]
  • 4 A. Asadi, Q. Wang, and V . Mancuso, "A survey on device-to-device communication in cellular networks," IEEE Commun. Surveys Tuts., vol. 16, no. 4, pp. 1801-1819, 2014.doi:[[[10.1109/COMST.2014.2319555]]]
  • 5 F. Jameel, Z. Hamid, F. Jabeen, S. Zeadally, and M. A. Javed, "A survey of device-to-device communications: Research issues and challenges," IEEE Commun. Surveys Tuts., vol. 20, no. 3, pp. 2133-2168, 2018.doi:[[[10.1109/COMST.2018.2828120]]]
  • 6 W. Yu et al., "Survey of public safety communications: User-side and network-side solutions and future directions," IEEE Access, vol. 6, pp. 70 397-70 425, 2018.doi:[[[10.1109/ACCESS.2018.2879760]]]
  • 7 J. Liu, N. Kato, J. Ma, and N. Kadowaki, "Device-to-device communication in lte-advanced networks: A survey," IEEE Commun. Surveys Tuts., vol. 17, no. 4, pp. 1923-1940, 2015.doi:[[[10.1109/COMST.2014.2375934]]]
  • 8 R. Thekke Veedu and K. Manjappa, "A survey on device to device communications," in Proc. ICONAT, 2022.doi:[[[10.1109/COMST.2014.2319555]]]
  • 9 G. Fodor, S. Parkvall, S. Sorrentino, P. Wallentin, Q. Lu, and N. Brahmi, "Device-to-device communications for national security and public safety," IEEE Access, vol. 2, pp. 1510-1520, 2014.doi:[[[10.1109/ACCESS.2014.2379938]]]
  • 10 T. Islam and C. Kwon, "Survey on the state-of-the-art in deviceto-device communication: A resource allocation perspective," Ad Hoc Netw., vol. 136, p. 102978, 2022. (Online). Available: https: //www.sciencedirect.com/science/article/pii/S1570870522001524doi:[[[10.1016/j.adhoc.2022.102978]]]
  • 11 P. Gandotra and R. K. Jha, "Device-to-device communication in cellular networks: A survey," J. Netw. Comput. Appl., vol. 71, pp. 99-117, 2016. (Online). Available: https://www.sciencedirect.com/ science/article/pii/S1084804516301229doi:[[[10.1016/j.jnca.2016.06.004]]]
  • 12 M. K. Pedhadiya, R. K. Jha, and H. G. Bhatt, "Device to device communication: A survey," J. Netw. Comput. Appl., vol. 129, pp. 71-89, 2019. (Online). Available: https://www.sciencedirect.com/ science/article/pii/S1084804518303345doi:[[[10.1016/j.jnca.2018.10.012]]]
  • 13 W. Zhao and S. Wang, "Resource sharing scheme for device-to-device communication underlaying cellular networks," IEEE Trans. Commun., vol. 63, no. 12, pp. 4838-4848, 2015.doi:[[[10.1109/TCOMM.2015.2495217]]]
  • 14 S. M. A. Kazmietal., "Mode selection and resource allocation in deviceto-device communications: A matching game approach," IEEE Trans. Mobile Comput., vol. 16, no. 11, pp. 3126-3141, 2017.doi:[[[10.1109/TMC.2017.2689768]]]
  • 15 R. AliHemmati, M. Dong, B. Liang, G. Boudreau, and S. H. Seyedmehdi, "Multi-channel resource allocation toward ergodic rate maximization for underlay device-to-device communications," IEEE Trans. Wireless Commun., vol. 17, no. 2, pp. 1011-1025, 2018.doi:[[[10.1109/TWC.2017.2773059]]]
  • 16 R. Yinetal., "Joint spectrum and power allocation for D2D communications underlaying cellular networks," IEEE Trans. Veh. Technol., vol. 65, no. 4, pp. 2182-2195, 2016.doi:[[[10.1109/TVT.2015.2424395]]]
  • 17 R. Yin, G. Yu, H. Zhang, Z. Zhang, and G. Y . Li, "Pricing-based interference coordination for D2D communications in cellular networks," IEEE Trans. Wireless Commun., vol. 14, no. 3, pp. 1519-1532, 2015.doi:[[[10.1109/TWC.2014.2368151]]]
  • 18 C. Kai, H. Li, L. Xu, Y . Li, and T. Jiang, "Joint subcarrier assignment with power allocation for sum rate maximization of D2D communications in wireless cellular networks," IEEE Trans. Veh. Technol., vol. 68, no. 5, pp. 4748-4759, 2019.doi:[[[10.1109/TVT.2019.2903815]]]
  • 19 S. Shamaei, S. Bayat, and A. M. A. Hemmatyar, "Interference management in D2D-enabled heterogeneous cellular networks using matching theory," IEEE Trans. Mobile Comput., vol. 18, no. 9, pp. 2091-2102, 2019.doi:[[[10.1109/TMC.2018.2871073]]]
  • 20 D. Feng et al., "Device-to-device communications underlaying cellular networks," IEEE Trans. Commun., vol. 61, no. 8, pp. 3541-3551, 2013.doi:[[[10.1109/TCOMM.2013.071013.120787]]]
  • 21 Y . Cao, T. Jiang, X. Chen, and J. Zhang, "Social-aware video multicast based on device-to-device communications," IEEE Trans. Mobile Comput., vol. 15, no. 6, pp. 1528-1539, 2016.doi:[[[10.1109/TMC.2015.2461214]]]
  • 22 M. Elnourani, S. Deshmukh, and B. Beferull-Lozano, "Resource allocation for underlay interfering D2D networks with multiantenna and imperfect CSI," IEEE Trans. Commun., vol. 70, no. 9, pp. 6066-6082, 2022.doi:[[[10.1109/TCOMM.2022.3194193]]]
  • 23 M. Hmila, M. Fern´ andez-Veiga, M. Rodr´ ıguez-P´ erez, and S. Herrer´ ıaAlonso, "Distributed energy efficient channel allocation in underlay multicast D2D communications," IEEE Trans. Mobile Comput., vol. 21, no. 2, pp. 514-529, 2022.doi:[[[10.1109/TMC.2020.3012451]]]
  • 24 M. Elnourani, S. Deshmukh, and B. Beferull-Lozano, "Distributed resource allocation in underlay multicast D2D communications," IEEE Trans. Commun., vol. 69, no. 5, pp. 3409-3422, 2021.doi:[[[10.1109/TCOMM.2021.3058374]]]
  • 25 A. Abdallah, M. M. Mansour, and A. Chehab, "Power control and channel allocation for D2D underlaid cellular networks," IEEE Trans. Commun., vol. 66, no. 7, pp. 3217-3234, 2018.doi:[[[10.1109/TCOMM.2018.2812731]]]
  • 26 H. Wang, J. Wang, G. Ding, and Z. Han, "D2D communications underlaying wireless powered communication networks," IEEE Trans. Veh. Technol., vol. 67, no. 8, pp. 7872-7876, 2018.doi:[[[10.1109/TVT.2018.2832068]]]
  • 27 T. Yang, R. Zhang, X. Cheng, and L. Yang, "Graph coloring based resource sharing (gcrs) scheme for D2D communications underlaying full-duplex cellular networks," IEEE Trans. Veh. Technol., vol. 66, no. 8, pp. 7506-7517, 2017.doi:[[[10.1109/TVT.2017.2657791]]]
  • 28 Z. Chang, Y . Hu, Y . Chen, and B. Zeng, "Cluster-oriented device-todevice multimedia communications: Joint power, bandwidth, and link selection optimization," IEEE Trans. Veh. Technol., vol. 67, no. 2, pp. 1570-1581, 2018.doi:[[[10.1109/TVT.2017.2762745]]]
  • 29 W. Li, X. Qin, Z. Jia, J. Bi, and X. Li, "Resource sharing for cellularassisted D2D communications with imperfect CSI: A many-to-many strategy," IEEE Syst. J., vol. 16, no. 3, pp. 4454-4465, 2022.doi:[[[10.1109/JSYST.2022.3145398]]]
  • 30 C. Kai, H. Li, L. Xu, Y . Li, and T. Jiang, "Energy-efficient deviceto-device communications for green smart cities," IEEE Trans. Ind. Informat., vol. 14, no. 4, pp. 1542-1551, 2018.doi:[[[10.1109/TII.2017.2789304]]]
  • 31 A. Moubayed, A. Shami, and H. Lutfiyya, "Wireless resource virtualization with device-to-device communication underlaying lte network," IEEE Trans. Broadcast., vol. 61, no. 4, pp. 734-740, 2015.doi:[[[10.1109/TBC.2015.2492458]]]
  • 32 A. Moubayed, A. Shami, and H. Lutfiyya, "Power-aware wireless virtualized resource allocation with D2D communication underlaying lte network," in Proc. IEEE GLOBECOM, 2016.doi:[[[10.1109/GLOCOM.2016.7842159]]]
  • 33 P. Mach, Z. Becvar, and M. Najla, "Resource allocation for D2D communication with multiple D2D pairs reusing multiple channels," IEEE Wireless Commun. Lett., vol. 8, no. 4, pp. 1008-1011, 2019.doi:[[[10.1109/LWC.2019.2903798]]]
  • 34 T. D. Hoang, L. B. Le, and T. Le-Ngoc, "Resource allocation for D2D communication underlaid cellular networks using graph-based approach,"IEEETrans.WirelessCommun., vol. 15, no. 10, pp. 7099-7113, 2016.doi:[[[10.1109/TWC.2016.2597283]]]
  • 35 E. Hossain, M. Rasti, H. Tabassum, and A. Abdelnasser, "Evolution toward 5G multi-tier cellular wireless networks: An interference management perspective," IEEE Wireless Commun., vol. 21, no. 3, pp. 118-127, 2014.doi:[[[10.1109/MWC.2014.6845056]]]
  • 36 A. K. Maini and V . Agrawal, Commun. Techniques. Wiley, 2014, pp. 229-285.custom:[[[-]]]
  • 37 S. Boyd and L. Vandenberghe, Convex optimization. United Kingdom: Cambridge University Press, 2004.custom:[[[-]]]
  • 38 S. Na, L. Xumin, and G. Yong, "Research on k-means clustering algorithm: An improved k-means clustering algorithm," in Proc. IEEE IITSI, 2010.doi:[[[10.1109/IITSI.2010.74]]]
  • 39 T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithm. MA, second edition: MIT Press, Cambridge, 2003.custom:[[[-]]]
  • 40 R. Gour and A. Tyagi, "Channel selection and power allocation for device-to-device enabled cellular networks," IET Communications, vol. 12, no. 15, pp. 1854-1863, 2018.doi:[[[10.1109/JSEN.2021.3060616]]]
  • 41 A. Stafecka, A. Lizunovs, G. Ivanovs, and V . Bobrovs, "Dependence between signal parameter values and perceived internet access service qos in mobile networks," in Proc. PIERS, 2021.doi:[[[10.1109/PIERS53385.2021.9695060]]]

TABLE I

SUMMARY OF LITERATURE SURVEY.
Ref. Objectives UpLink (UL)/DownLink (DL) Methodology Resource Sharing Model
[13] D2D sum rate UL Two-stage resource sharing Many-to-many
[14] D2D sum rate DL Matching theory One-to-one + one-to-many
[15] D2D rate + system sum rate UL Stochastic optimization Multiple cellular environment
[16] D2D sum rate UL Approximation + Stackelberg Many-to-many
[17] D2D power UL Game theory One-to-many
[18] D2D sum rate UL Joint subcarrier and power allocation Many-to-many
[19] Network sum rate DL Matching theory One-to-many
[20] Network throughput UL Weighted bipartite graph One-to-many
[22] Network sum rate DL Joint channel and power allocation One-to-many
[23] Energy efficiency UL Two-stage semi-distribution solution One-to-many
[24] Network sum rate DL Joint channel and power allocation One-to-many
[25] D2D sum rate UL Stochastic geometry One-to-many
[27] Network throughput UL + DL Graph colouring Many-to-many
[28] D2D cluster utility function UL Stackelberg One-to-many
[29] System throughput UL Joint subcarrier and power allocation Many-to-many
[30] System power UL Joint channel and power allocation Many-to-many
[31] System sum rate DL Heuristic algorithm Many-to-many
[32] System sum rate DL Heuristic algorithm Many-to-many

TABLE II

SIMULATION PARAMETERS AND VALUES.
Parameter Value
Cell radius 500 m
Uplink bandwidth 5 MHz
Number of RBs [TeX:] $$\left(\mathcal{N}_{\mathcal{R}}\right)$$ 50
Noise power [TeX:] $$\left(N_0\right)$$ -174 dBm
Path loss exponent (α) 4
Pathloss constant (G) 0.01
Fast fading coefficient (β) Exponential distribution with unit mean
Slow fading coefficient (δ) Log-normal distribution with standard deviation of 8 dB
Number of CUE [TeX:] $$\left(\mathcal{N}_{\mathcal{C}}\right)$$ 10
Number of DUE pairs [TeX:] $$\left(\mathcal{N}_{\mathcal{D}}\right)$$ 50
Maximum UE Tx power [TeX:] $$\left(P_{\max }\right)$$ 24 dBm
Number of Clusters 4
Minimum CUE SINR in PS [TeX:] $$\left(\xi_{C_{\min -P S}}\right)$$ 7 dB
Minimum CUE SINR in CA [TeX:] $$\left(\xi_{C_{\min -C A}}\right)$$ 13 dB
Minimum DUE SINR [TeX:] $$\left(\xi_{D_{\min }}\right)$$ 7 dB
Minimum CUE SINR [TeX:] $$\left(\xi_{C_{\min }}\right)$$ 20 dB
Allotment Ratio of CA [TeX:] $$\left(\mathcal{A}_C^{C A}\right)$$ 0.4
Allotment Ratio of PS [TeX:] $$\left(\mathcal{A}_C^{P S}\right)$$ 0.6
Maximum DUE pair Distance 15 m
System model: Many-to-many cluster based D2D underlay cellular communication.
Execution sequence of different sub-frameworks - CMMRARS and CTPCA
Cluster formation algorithm
Resource allocation for CUEs
Weighted bipartite graph between DUE pairs and CUE for resource sharing.
Resource sharing for DUE pairs with QoS consciousness
Transmit power control algorithm for CUE
Transmit power control algorithm for DUE
Performance analysis of CUE in different cluster.
Aggregate performance analysis of CUEs and DUEs in different cluster.
Cluster-wise performance analysis.
Cluster-wise allocation sequence.
Allocation vs. waiting list.
Cluster-wise allocation vs. waiting list and CUE power allocation.
Power details of PS1 cluster (Watts).
Power details of PS2 cluster (Watts).
Power details of CA1 cluster (Watts).
Power details of CA2 cluster (Watts).