NOMA Based Matching Game Algorithm for Narrowband Internet of Things (NB-IoT) System

NOMA Based Matching Game Algorithm for Narrowband Internet of Things (NB-IoT) System

Samar Shaker MetwalyAhmed M. Abd El-Haleem Osama El-Ghandour 

Electronics and Communication Department, Helwan University, Cairo 11792, Egypt

Corresponding Author Email:
2 March 2020
27 April 2020
3 May 2020
Available online: 
30 June 2020
| Citation

© 2020 IIETA. This article is published by IIETA and is licensed under the CC BY 4.0 license (



Narrowband Internet of Things (NB-IoT) is introduced by the third generation partnership project (3GPP) as a standardized technology for machine type communication (MTC) in Long Term Evolution (LTE). NB-IoT can satisfy many IoT requirements, Nevertheless, NB-IoT suffers a low data rate and low network capacity. This paper provides non-orthogonal multiple access (NOMA) scheme based matching game for uplink in NB-IoT systems to enhance the capacity and data rate by providing more connectivity for massive MTC devices. We formulate our optimization problem to maximize the total system rate by using a matching game. Simulation results show that the proposed scheme increases the total system rate by at least 150% and the system capacity by at least 125%, compared to OMA, and NOMA-water filling scheme.


NB-IoT, NOMA, matching game, LTE, URLLC, mMTC

1. Introduction

Internet of Things is a promising technology that aims to revolutionize the world through connected physical objects. IoT interconnects “Things” and enables machine-to-machine (M2M) communication [1]. Fifth-generation (5G) mobile network classifying the IoT devices according to its Quality of Service (QoS) requirements into two categories massive machine-type communications (mMTC) and ultra-reliable and low latency communications (URLLCs), also the International Telecommunications Union (ITU) characterizes services of IoT as two types URLLCs and mMTCs in LTE with different characteristics. Where mMTC needs massive connectivity of active low power and cost IoT devices, and the URLLC needs reliable data transmission with low latency [2]. Recently, due to the development of IoT more connectivity, low complexity, low power consumption to prolong the battery life to 10 years and extend coverage area are required, so 3GPP introduced licensed technologies for MTCs in Release 13 that satisfy the requirement of IoT in LTE-advanced (LTE-A) as enhanced MTC (e-MTC), NB-IoT. NB-IoT technology can satisfy most of the requirements of IoT so some of the industrial players’ interests it like Ericsson, Nokia, intel [3, 4]. NB-IoT of limited spectrum 180 kHz suffers low capacity and low rate. OMA technique is used to support NB-IoT devices with different QoS, which provide a downlink data rate of 250kb/s and uplink data rate of 15kb/s, so many papers interest enhance the capacity and rate of it [5, 6]. One of the key issues of this is how to efficiently manage NB-IoT resources to maximize the rate and enhance connectivity. Recently, NOMA technique is used which has an important role in connectivity enhancement, where NOMA enables multiple devices to share the same spectral resource, which increases the connectivity significantly comparing with the OMA technique, therefore NOMA can help in the NB-IoT system performance enhancement.

1.1 Related work

Recently researching investigate maximizing the theoretical throughput of NB-IoT devices, where NB-IoT system suffers from low rate and connectivity as a result of limited bandwidth. Some research papers study the capacity of NB-IoT network based OMA technique [5, 6]. Chen et al. [5] compare between SC-FDMA and FDMA capacity and find that SC-FDMA has better capacity than FDMA. Malik et al. [6] firstly presented a theoretical analysis of NB-IoT downlink and uplink data rate, then introduced a sub-optimal iterative algorithm and cooperative approaches. Finally, Malik et al. [6] proposed a QoS aware resource allocation algorithm to reduce the repetition times of the system. The proposed cooperative approaches are done between the neighbor cells by optimizing the transmitted power of neighbor cells which causing minimum interference on each other to maximize the rate of NB-IoT. 

Other Researches support NOMA to increase the capacity of the NB-IoT system [7-9], which Hina et al. [7] uses NOMA in the uplink and downlink to improve the connectivity of massive machine type communication devices (MTCDs). Authors in [8, 9] formulate a joint subcarrier and transmission power allocation algorithm allowing multiple URLLC and mMTC devices to share the same sub-carrier. These proposed algorithms are not simple and consume more time to solve two algorithms. 

Other research works try to enhance the capacity and maximize the rate [10-12]. Sun et al. [10] introduce NOMA into short packet communication in downlink where formulate an optimization problem to maximize the throughput of the user with a higher channel gain and other users achieved a lower level of throughput. A user pairing for downlink NOMA networks using a matching algorithm is proposed by Wei et al. [11] based cognitive radio-NOMA network (CR-NOMA), where the primary user (PU’s) and cognitive user (CU’s) assumed to be paired based on matching algorithm, they negotiate for obtaining the appropriate power allocation to maximize the system throughput. Ali and Ansari [12] propose a NOMA clustering method for the uplink NB-IoT system. that classify the NB-IoT devices into different NOMA clusters that each cluster members share the same frequency resource considering QoS requirements. The authors try to maximize the total sum rate of the uplink using heuristic algorithm, which optimizes NOMA clustering (water filling) and resource allocation.

1.2 Contribution

In this work, a NOMA based Matching game algorithm is proposed for NB-IoT systems, where the NB-IoT devices are divided into two groups according to its received power at the base station; which based on the uplink channel conditions; then a matching game algorithm is used to help Power domain NOMA (PNOMA) technique in choosing the optimum pairing between NB-IoT devices which maximizing the overall system data rate. The virtualization of devices in the pairing process is proposed to enhance the NOMA-resource utilization to increase the system capacity to satisfy the massive connectivity needs of IoT. So the main contributions of this paper are

  1. We propose PNOMA technique for NB-IoT devices with different QoS requirements. Considering the intra-cell interferences and the received power maps with the channel condition of each device.
  2. We formulate an optimization problem to maximize the total data rate of uplink transmission for NB-IoT systems based on NOMA technique satisfying the QoS requirement by optimizing the resource utilization of NB-IoT system.
  3. We propose a matching game algorithm (low complexity) to solve the problem by optimizing the NOMA Pairing and resource utilization of NB-IoT system.
  4. It is the first work using matching game for NOMA pairing to maximize the total system data rate of considering required QoS.
  5. We evaluate the performance of our proposed NOMA based matching game algorithm by simulation to explain the increase of the total data rate of the NB-IoT system using NOMA based matching game and compare it with the well-known OMA technique and NOMA-water filling multi-users algorithm. Tacking into our consideration the different coding rates and coding efficiency in both of NOMA and OMA schemes, and the different values of NB-IoT subcarriers bandwidth.

The rest of this paper is organized as follows. In section (2) We present the system model including NB-IoT devices with different required QOS. In section (3) we formulate the throughput maximization problem. In section (4) we explain the matching game algorithm. In section, (5) presents the simulation results. finally, conclude this paper in section (6).

2. System Model

We consider some NB-IoT devices under the coverage of a microcell base station based on uplink NB-IoT standard as shown in Figure 1. Where the NB-IoT devices are a mix of URLLC and mMTC devices based on ITU definition, which are distributed randomly in the cell with different QoS requirements.

Based on the using of PNOMA a pairing between every two NB-IoT devices; according to their channel conditions; is done in the uplink direction for maximizing the connectivity and the spectral efficiency. According to the different data rate requirements of mMTC and URLLC devices and due to the different channel condition the assigned number of subcarrier for each device are not equal, which lead to inefficient resources utilization in the case of direct paring between NB-IoT devices due to the mismatch between the required resources of the two devices.

Figure 1. NB-IoT system model

For example, if one device needs three subcarriers and the other needs only two then the direct pairing between those two devices is done over three subcarriers, in this case, we lose the benefit of using one subcarrier in NOMA mode. Therefore, to fully utilize the uplink radio resources each physical NB-IoT device can be represented by several virtual NB-IoT (VNB-IoT) devices that equals the number of required subcarriers satisfying its QoS requirement. Therefore, the paring between any two VNB-IoT devices leads to a paring in the level of subcarriers, which fully utilized the available radio resources. Based on this and according to the channel conditions the VNB-IoT devices are divided into two groups, a group represented by a set  $\mathcal{M}=\{1,2, \ldots \ldots, M\}$ with cardinality M representing the VNB-IoT devices having a good channel condition (which results in a high received power at evolved node B (eNB), and the second group represented by a set $\mathcal{N}=\{1,2, \ldots \ldots N\}$ with cardinality N representing the VNB-IoT devices having a bad channel condition (which results in a low received power at eNB). According to the PNOMA technique, the pairing will be done between any device $m \in \mathcal{M}$; with high received power at eNB; and another device $n \in \mathcal{N}$; with low received power at eNB. For this, the received signal at eNB is a combination of two uplink- pairing signals on one subcarrier and the additive white Gaussian noise (AWGN) and can be represented as 

$\mathrm{Y}=\sqrt{p_{m}} h_{m} x_{m}+\sqrt{p_{n}} h_{n} x_{n}+N_{0}$     (1)

where, xm and xn denotes the transmitted messages of the two paired VNB-IoT devices, which are received with AWGN N0. While pm and pn are the transmitted power of the two paired devices $m \in \mathcal{M}$ and $n \in \mathcal{N}$ respectively. The channel gain between the two paired devices and eNB are hm, hn..

According to our goal to enhance the overall NB-IoT network data rate, the uplink data rate of each VNB-IoT device is calculated, however, the actual uplink data rate cannot be calculated simply using Shannon channel model, instead of that the physical uplink data rate can be used [13, 14]. By using the physical rate Eq. (2) we can calculate the exact rate because the rate calculations depend actually on the channel conditions which represented by the modulation order and the coding rate (which reflects the coding efficiency) and repetition factor used in NB-IoT networks. By neglecting the intercell interference from the neighbor cell the physical rate can be formed for any VNB-IoT device x as

$R_{x}^{p h}=\frac{N_{f B} N_{s u} \cdot N_{n} \cdot N_{b x} \cdot E C R_{x}}{T_{S f}} \times \frac{1}{R_{e p x}}$      (2)

where, NfB is the number of  frequency blocks in bandwidth B, Nsu is the number of subcarriers in one Block (which depend on the subcarrier bandwidth), Nn is the number of symbols on each subcarrier, Tsf  is the duration of one subframe, Repx is the repetition factor (which represents the NB-IoT coverage enhancement). Furthermore, Nbx is the number of bits in each symbol (which depend on the modulation order) and ECRx is the effective code rate. The modulation order and code rate can be mapped from SINR value according to the Channel Quality Indicator (CQI) index, this mapping is done using the LTE adaptive Modulation and Coding Scheme (MCS) mapping Table [15], so it is necessary to calculate SINR for each VNB-IoT device. which can be calculated for any device m as,

$\gamma_{m}=\frac{P_{r m}}{N_{0}+P_{r n}}$     (3)

where, $P_{r m}=P_{m}\left|h_{m}\right|^{2}$ is the received power form device $\in \mathcal{M}$ and $P_{r n}=P_{n}\left|h_{n}\right|^{2}$ is the received power from device $n \in \mathcal{N}$ which represents the interference effect from device $n$ on device $m$ signal due to using PNOMA technique.

Similarly, the SINR of any device n is represented as,

$\gamma_{n}=\frac{P_{r n}}{N_{0}+\frac{P r m}{e_{A W G N}}}$   (4)

where, $P_{r m} / e_{A W G N}$ is the interference caused by the Successive Interference Cancellation (SIC) channel estimation error of device m signal, it is represents the residual error caused due to the imperfect detection of the high power signal of device m at the base station and its effect on the detection of the low power signal of device n [16], which is one of the costs of using PNOMA scheme NB-IoT network.

Finally, the overall data rate achieved after the pairing between the two VNB-IoT devices $m \in \mathcal{M}$ and $n \in \mathcal{N}$ can be calculated as,

$R_{m, n}^{p h}=R_{m}^{p h}+R_{n}^{p h}, \quad \forall m \in \mathcal{M}$ and $n \in \mathcal{N}$     (5)

where, $R_{m}^{p h}, R_{n}^{p h}$ are the physical rate of $m \in \mathcal{M}$ and $n \in \mathcal{N}$ devices respectively.

3. Problem Formulation

In this section, the pairing of VNB-IoT devices formulated as an optimization problem with the objective of maximizing the overall NOMA based NB-IoT network overall rate depending on the formula in Eq. (5), as follows:

$\mathrm{P}: \max \sum_{i \in \mathcal{M}} \sum_{j \in \mathcal{N}} X_{i j} R_{i, j}^{p h}$      (6)

Subject to   

$\mathrm{Cl}: P_{r m}>P_{r n}, \quad \forall \quad m \in \mathcal{M}$ and $n \in \mathcal{N}$

$\mathrm{C} 2: P_{m}$ and $P_{m} \leq P_{\max }, \forall m \in \mathcal{M}$ and $n \in \mathcal{N}$

$\mathrm{C} 3: \gamma_{m}$ and $\gamma_{n} \geq \gamma_{t h}, \quad \forall \quad m \in \mathcal{M}$ and $n \in \mathcal{N}$

$\mathrm{C} 4: X_{i j}=\{0,1\}$

where, constrain C1 states that the received power Prm of device $m \in \mathcal{M}$ at eNB is bigger than the received power Prn of device $n \in \mathcal{N}$ at eNB, to achieve the condition of perfect SIC. The second constrain C2 limits the transmission power of each devices $m \in \mathcal{M}$ and device $n \in \mathcal{N}$ to the maximum power budget Pmax. C3 limits the SINR of the m and n devices to the threshold SINR to be in the coverage area. Finally, constrain C4 indicates that the pairing indicator takes only a binary value.

4. Proposed Matching Game Algorithm for Users Pairing in NOMA Based NB-IOT

In recent years Matching Game has been widely used to develop high performance and low complexity. In many complex networks, different types of agents with various characteristics and requirements want to interact with each other so the matching game is used [17-19]. To solve the optimization problem in section 3 a one-to-one matching game is used as an algorithm for devices paring on one resource which formulated with a tuple $(\mathcal{M}, \mathcal{N}),$ the matching game is defined as $\mu_{\mathrm{DP}}: \mathrm{M} \rightarrow \mathrm{N},$ where $\mu_{\mathrm{DP}}$ is the devices pairing outcome of matching game. The device $m \in \mathcal{M}$ utility function can be defined as:

$\bigcup_{m}(n)=\gamma_{m}, \quad \forall m \in \mathcal{M}$ and $n \in \mathcal{N}$     (7)

where, each $m \in \mathcal{M}$ device try to maximizing its SINR by minimizing the interference caused due to the pairing with $n \in$ $\mathcal{N}$ device, which help in increasing the uplink data rate.

The device $n \in \mathcal{N}$ utility function can be defined as:

$\bigcup_{n}(\mathrm{m})=R_{m, n}^{p h}, \quad \forall m \in \mathcal{M}$ and $n \in \mathcal{N}$      (8)

Also, here every $n \in \mathcal{N}$ device tries to pair with a device m that maximizing the overall NB-IoT network data rate.

The proposed matching game devices pairing algorithm is provided in Algorithm 1. Initially, each URLLC and mMTC device sends access request to the serving base station via the contention-based signaling channel; assuming all requests are received successfully at the base station. Then the base station calculates the required subcarriers for each NB-IoT device, so it can construct a set contains the VNB-IoT devices and divided it into to sets $\mathcal{M}$ and $\mathcal{N}$ according to the received signal strength from all devices.

After initialization, the base station running the matching game algorithm by constructing the preference list $\left(L_{n i}\right)$ for each device $n \in \mathcal{N},$ and $m \in \mathcal{M}$ based on Eq. (7) and Eq. (8) respectively. Then, in the first iteration, it decides which VNB-IoT devices will be paired to maximize the over NB-IoT network data rate, and reject the other. The rejected devices enter the second iteration with the next device from its preference list and repeat the process until pairing all devices or all the subcarrier are used. 

Algorithm 1: Matching game for NB-IOT Devices pairing

  • Initialization: URLLC, mMTC groups according to the required rate.
  • Determine the required subcarrier for each device.
  • Construct virtual devices with a known received power.
  • Check SINR-Limit condition.
  • Classify: $\mathcal{M}, \mathcal{N}$ groups.
  1. For every device $n \in \mathcal{N}\left(d_{n i}\right)$ construct a preference list $\left(L_{n i}\right)$ using $\bigcup_{n}(\mathrm{m})$
  2. While $\Sigma \forall \mathrm{i}, j Q_{j \rightarrow i} \neq 0$ do:
  3. For each unpaired device $n \in \mathcal{N}$ Find $L_{n i}$
  4. Calculate the sum- physical rate $R_{m, n}^{p h}=$ $\sum R_{m}^{p h}+\sum R_{n}^{p h}$
  5. Select the maximum sum- physical rate (R) for each N-device.
  6. Send a request $Q_{j \rightarrow i}$ of each device $n \in \mathcal{N}$.
  7. For each devices $m \in \mathcal{M}$ construct preference list $\left(L_{m j}\right)$ using $\bigcup_{\mathrm{m}}(\mathrm{n})$ according to $Q_{j \rightarrow i}$
  8. Accept $d_{n i}$ from $L_{m j}$
  9. Rejected the other
  10. Repeat 
  11. end while
  12. Calculate $R_{T}^{p h}$
  13. Results: a stable matching mDP
5. Simulation Results

In this section, we evaluate the performance of proposed NB-IoT NOMA based matching game algorithm to the well-known OMA scheme where each NB-IoT device assigned a number of subcarriers according to its required rate, and also to the power domain NOMA with user clustering scheme (NOMA-water filling) proposed by Ali and Ansari [12]. In the simulation, we consider one cell with randomly uniform distribution NB-IoT devices (URLLC, mMTC) over its area. The other simulation parameters shown in Table 1.

Table 1. Simulation parameters

Simulation parameters


The Cell redius

0.5 km

NB-IoT bandwidth


Number of subcarriers for 3.75KHZ/subcarrier

48 subcarriers

Number of subcarriers for 12KHZ/subcarrier

15 subcarriers

Additive white Gaussian noise(psd)


Max transmit power (Pmax) of NB-IoT


SINR limit for coverage ($\gamma_{t h}$)

-5.5 dBm

The required rate range of URLLC devices


The required rate range of mMTC devices


The number of frequency blocks in bandwidth B


During the simulation, we consider one microcell with 0.5km radius, where the mMTC and URLLC devices are distributed randomly within the cell. We use the standard bandwidth of NB-IoT system which is 180kHZ, the bandwidth used as one block and divided to either 48 subcarriers with 3.75kHZ subcarrier bandwidth or 12 subcarriers with 15kHZ subcarrier bandwidth. Also, the transmitted power 23dBm is the maximum transmitted power in NB-IoT system [6, 12]. We also consider SNR of each NB-IoT device with coverage limit -5.5dBm that calculated based on additive Gaussian noise with power spectral density -174 dBm/HZ. The required data rate of the mMTC and URLLC devices are selected randomly in range 0.1-2kb/s for mMTC devices and 2-20kb/s for URLLC devices [5, 6, 12].

Figure 2 shown the variation of the overall system data rate based on 48 subcarriers versus the number of NB-IoT devices. As we can see, at a small and medium number of requesting NB-IoT devices for a connection (less than 50 devices) our proposed scheme success in maximizing the overall data rate with high enhancement rate $\frac{3 \times 10^{4}}{2}$ bps/device. However, as the number of request increase (greater than 50 devices) the OMA scheme rejects all the new requests, the NOMA-water filling still accepts the requests and maximize the overall data rate due to the pairing of multi-devices over the same resources. Finally, our proposed algorithm still accepts the request with smaller enhancement rate 103 bps/device due to the paring is done for two devices only over the same resources but it still offers the maximum overall data rate over the others.

Figure 2 below shows that our proposed scheme success to maximize the NB-IoT network overall data rate on the average by 50% above the NOMA-water filling (multi-users) and 115% above the OMA technique. So we can say that our proposed scheme success in optimizing the paring of NB-IoT devices, by reduces the effect of the mutual interference between the paired devices which maximizing the overall NB-IoT network data rate compared to the other algorithms (OMA and NOMA-water filling).

The total system rate versus the number of NB-IoT devices for the case of 12 subcarriers is shown in Figure 3. We can see that our proposed scheme provided the maximum overall NB-IoT network data rate as in the case of 48 subcarriers, but as increasing the number of NB-IoT devices the NOMA-water filling algorithm(multi-users) provides a comparable total system rate. As seen in Figure 3 it has the behavior of Figure 2 but with a smaller enhancement rate due to the small number of subcarriers, where the proposed scheme maximizes the overall data rate on the average by 20% above the NOMA-water filling, and 85% above the OMA technique.

We can conclude that as the subcarrier bandwidth decreased our proposed scheme optimally utilize the NB-IoT resource and maximize the NB-IoT network data rate, which contribute to solving NB-IoT problems.

Figure 2. Total rate versus the number of NB-IoT devices for 48 subcarriers

Figure 3. Total rate versus the number of NB-IoT devices for 12 subcarriers

Figure 4. System capacity versus the average required rate of NB-IoT devices for 48 subcarriers

Figure 5. System capacity versus the average required rate of NB-IoT devices for 12 subcarriers

In Figures 4 and 5, the capacity is plotted with respect to the URLLC and mMTC devices average required rate for a constant number of device requests reach 100, which is more than the system maximum capacity. Where the system capacity is defined as the number of served NB-IoT devices by the network, and the average required rate is calculated as $\left(\frac{R_{U R L L C}+R_{m M T C)}}{2}\right)$.

Figure 4 illustrates the capacity of NB-IoT system with respect to the URLLC and mMTC devices average required rate using 3.75KHz subcarriers bandwidth. We observe that the system capacity decreases slowly by increasing the average rate. This is due to; if a required rate of NB-IoT device A is less than the rate offered by one subcarrier then the number of reserved subcarrier for user A is one with transmission bandwidth equal the subcarrier bandwidth. Similarly, as the required rate of NB-IoT device A is greater than the rate offered by K-1 subcarrier and less than K subcarrier then the number of reserved subcarriers are K with transmission bandwidth equal the (K ´ subcarrier bandwidth). Therefore, we can say that for 180KHZ NB-IoT bandwidth as the users required rate increases the user transmission bandwidth increases, which decreases the system capacity.

We find in Figure 4 that NOMA based matching game algorithm outperform the OMA and NOMA-water filling schemes due to the using of NB-IoT virtualization concept which maximizes the utilization of NOMA resources. As we can see the maximum system capacity of OMA technique is equal to the number of subcarriers until the require rate exceed the subcarrier physical rate then the capacity decreases. In addition, the proposed NOMA based matching game and NOMA-water filling schemes have similar capacity except at low required rate our proposed scheme has a capacity 10% above the NOMA-water filling scheme and at average required rate more than 20kb/s.

The system capacity versus the NB-IoT devices average required rate is shown in Figure 5, for 15KHz subcarriers bandwidth. The results show that NOMA based matching game algorithm also outperforms the OMA and NOMA-water filling schemes by an average of 21.5% above the NOMA-water filling scheme, and 54% above the OMA technique.

6. Conclusion

In this paper, we proposed a non-orthogonal multiple access scheme based matching game for NB-IoT system. That every two MTCDs share the same subcarrier. Then, we formulate a problem to maximize the overall NB-IoT network rate by optimizing the two devices pairing. Then we propose the matching game algorithm to solve this problem. We also study the system capacity at a different average rate of URLLC and mMTC devices. Simulation results show that the proposed scheme; compared to OMA and NOMA-water filling schemes; enhances the system total rate by at least 150%, and success in optimize the paring over subcarriers by virtualizing the NB-IoT devices which increase the system capacity by at least 125%.The results also illustrate that the system performance at 48 subcarriers (bandwidth = 3.75KHz/subcarrier) overcomes which of 12subcarriers (bandwidth = 15KHz/subcarrier), so this paper recommends working at 48 subcarriers for NB-IoT with good performance system. So we can conclude that the proposed NOMA Based Matching Game Algorithm for NB-IoT System success in solving some NB-IoT network issues by maximizing the overall data rate, which done by using PNOMA technique with matching game algorithm to optimize the pairing process. Also, the proposed scheme success in increasing the NB-IoT network capacity by enhancing the NOMA-resource utilization which providing more connectivity for massive MTC devices.


[1] Akpakwu, G.A., Silva, B.J., Hancke, G.P., Abu-Mahfouz, A.M. (2018). A survey on 5G networks for the internet of things: Communication technologies and challenges. IEEE Access, 6: 3619-3647.

[2] Shafi, M., Molisch, A.F., Smith, P.J., Haustein, T., Zhu, P.Y., De Silva, P., Tufvesson, F., Benjebbour, A., Wunder, G. (2017). 5G: A tutorial overview of standards, trials, challenges, deployment, and practice. IEEE Journal on Selected Areas in Communications, 35(6): 1201-1221.

[3] Al-Fuqaha, A., Guizani, M., Mohammadi, M., Aledhari, M., Ayyash, M. (2015). Internet of things: A survey on enabling technologies, protocols, and applications. IEEE Communications Surveys & Tutorials, 17(4): 2347-2376.

[4] Chafii, M., Bader, F., Palicot, J. (2018). Enhancing coverage in narrow band-IoT using machine learning. 2018 IEEE Wireless Communications and Networking Conference (WCNC). IEEE, Barcelona, Spain.

[5] Chen, M., Miao, Y., Hao, Y., Hwang, K. (2017). Narrow band internet of things. IEEE Access, 5: 20557-20577.

[6] Malik, H., Pervaiz, H., Mahtab Alam, M., Le Moullec, Y., Kuusik, A., Ali Imran, M. (2018). Radio resource management scheme in NB-IoT systems. IEEE Access, 6: 15051-15064.

[7] Tabassum, Hina, Ali, M.S., Hossain, E., Hossain, M.J. (2016). Non-orthogonal multiple access (NOMA) in cellular uplink and downlink: Challenges and enabling techniques. arXiv preprint arXiv:1608.05783v1 [cs.NI].‏

[8] Mostafa, E.A, Zhou, Y., Wong, V.W.S. (2017). Connectivity maximization for narrowband IoT systems with NOMA. 2017 IEEE International Conference on Communications (ICC), Paris, France.

[9] Li, S., Wang, Q.M., Sun, Y.J., Cui, X. (2018). Resource management for non-orthogonal multiple access based machine type communications. Proceedings, APSIPA Annual Summit and Conference, 2018: 413-419.

[10] Sun, L.X., Yan, S., Yang, N., Ding, Z., Shen, C., Zhong, Z. (2018). Short-Packet Downlink Transmission With Non-Orthogonal Multiple Access. IEEE Transactions on Wireless Communications, 17(7): 4550-4564.

[11] Wei, L., Ding, Z.G., Li, Y.H., Song, L.Y. (2017). User pairing for downlink non-orthogonal multiple access networks using matching algorithm. IEEE Transactions on Communications, 65(12): 5319-5332.

[12] Shahini, A., Ansari, N. (2019). NOMA aided narrowband IoT for machine type communications with user clustering. IEEE Internet of Things Journal, 6(4): 7183-7191.

[13] Poornima, P., Laxminarayana, G., Srinivas Rao, D. (2017). Performance analysis of channel capacity and throughput of lte downlink system. International Journal of Computer Networks & Communications (IJCNC), 9(5): 55-69.

[14] Anany, M., Elmesalawy, M.M., Abd El-Haleem, A.M. (2019). Matching game-based cell association in multi-RAT hetnet considering device requirements. IEEE Internet of Things Journal, 6(6): 9774-9782. 

[15] Chiumento, A., Bennis, M., Desset, C., Van der Perre, L., Pollin, S. (2015). Adaptive CSI and feedback estimation in LTE and beyond: a Gaussian process regression approach. EURASIP Journal on Wireless Communications and Networking, 2015: 168.

[16] Su, X., Yu, H.F., Kim, W., Choi, C., Choi, D. (2016). Interference cancellation for non-orthogonal multiple access used in future wireless mobile. EURASIP Journal on Wireless Communications and Networking, 2016: 231. 

[17] Bayat, S., Li, Y.H., Song, L.Y., Han, Z. (2016). Matching theory: Applications in wireless communications. IEEE Signal Processing Magazine, 33(6): 103-122.

[18] Gu, Y.N., Saad, W., Bennis, M., Debbah, M., Han, Z. (2015). Matching theory for future wireless networks: Fundamentals and applications. IEEE Communications Magazine, 53(5): 52-59.

[19] An, C.Q., Liu, Y. (2011). A matching game algorithm for spectrum allocation based on POMDP model. 2011 7th International Conference on Wireless Communications, Networking and Mobile Computing, Wuhan, China.