## 1 Introduction  
Future cellular networks aim to deliver high data rates to meet the requirements for various services, with new communications paradigms such as device-to-device (D2D) communications. D2D communications is a standardized technology for Long Term Evolution-Advanced (LTE-A), which was introduced in the Third Generation Partnership Project (3 GPP) Release 12 [1]. In D2D communications, nearby devices can communicate directly by reusing uplink cellular links. Thus, D2D communications can offload traffic from the evolved Node B (eNB), avoid collision, reduce transmission delay, and greatly improve the system performance [2]. This approach promotes the concept of the Internet of Things (IoT). The IoT comprises of large number of devices that have information sharing capability over wireless networks. In the D2D approach, communications can be generated in two ways: network-assisted communications and non-network-assisted communications [3]. Network-assisted D2D communications can be established with the aid of a radio access network. In LTE-A, the eNB provides information regarding the D2D pairs (DPs). Thus, the system obtains proximity devices information, which periodically updates the location of the devices. In the non-network-assisted D2D approach, communications can be independently established without a radio access network. As the main benefit of network-assisted D2D communications, the transmit power of users is periodically maintained. However, network-assisted D2D communications introduces new challenges into the traditional cellular networks when available resources are shared. The primary challenge lies in co-channel interference caused by DPs to traditional cellular users (CUs). Moreover, mutual interference between DPs also arises. Thus, to address the uplink interference issue, an efficient resource management algorithm for D2D communications is necessary. The allocation of uplink resources in D2D communications occurs either in overlay or underlay inband cellular networks [4; 5]. In an overlay scenario, different resources are assigned to both DPs and CUs. This mechanism has negligible interference between CUs and DPs. However, spectral efficiency is not achieved in the network. On the other hand, in an underlay scenario, DPs and CUs share the same resources. Thus, spectral efficiency is achieved in the network. However, the main challenge faced by the network is the high uplink interference between CUs and DPs. In order to alleviate the co-channel interference from DPs to traditional CUs, majority of the literature has focused on resource sharing methods. In [6], an efficient resource management scheme was proposed to maximize the spectrum efficiency by mitigating interference. In this study, the authors considered the transmission length of D2D communications based on transmission time slots. An optimization problem was formulated in [7], in which a two-stage resource management scheme was analyzed in terms of subcarrier assignment. The authors also analyzed a power control algorithm using the Lagrangian dual technique. In [8], the authors proposed a power management scheme for an underlay D2D communications in cellular networks. The problem was analyzed in two steps. First, proximity discovery was performed for D2D pairing, and second, direct communication between proximate devices was generated. In this study, the traditional CUs were defined as broadcasters and/or observers: a broadcaster advertises their connection-oriented information to establish D2D communications and an observer monitors the information for the connection. A mode selection method for D2D communications was presented in [9], aiming to improve the sum throughput and alleviate the average traffic delay. In [10], a resource management method was discussed to maintain the QoS of users by maintaining the transmission power of each DP in a cell. The capacity of the DPs was analyzed by defining the minimum signal-to-interference-noise ratio (SINR) demand of the DPs.