## 3 Proposed Method
### Utility Function  
The power allocation non-cooperative game is denoted as  
\[\mathcal{G}=\mathcal{G}\{\aleph,\mathcal{U}\}, \tag{9}\]  
where:  
\(\aleph\): set of bidders (clusters). \(\aleph=\{1,2,....,\mathcal{C}\}\). \(\mathcal{B}_{c}\): Auction space of each bidder \(c\in\aleph\). \(\mathcal{U}_{c}:\mathcal{B}\equiv\prod_{c}\mathcal{B}_{c}\to P_{t}\) is the cluster's utility function defined by (10). From the mathematical definition of energy efficiency, we need the balance the date and the power consumption. Therefore, in the proposed game, each cluster is competing to maximize its sum rate with the consideration of price for the power consumption. Consequently, the utility function of the cluster \(c\) can be defined as:  
\[\mathcal{U}_{c}(t)=\mathcal{R}_{c}(t)-b_{c}(t)p_{c}(t), \tag{10}\]  
where \(\mathcal{R}_{c}(t)\) is the sum rate of all users within the cluster \(c\), \(b_{c}(t)\) represents the submitted bid by the cluster and \(P_{t}\) is the total offered resource for auctioning, \(t\) is the iteration index. \(p_{c}(t)\) is the fraction of power assigned to the cluster based on its submitted bid. To initiate the auction process, the clusters can obtain their portion equally at an initial bids (\(b_{c}(0)\)) equal to the reserved price \(\sigma\), thus,  
\[p_{c}(0)=P_{t}\frac{b_{c}(0)h_{c}}{\sum\limits_{k=1}^{C}b_{k}(0)h_{k}}, \tag{11}\]when cluster c submits a new bid \(b_{c}(t)\), the allocated power is updated as follows  
\[p_{c}(t+1)=P_{t}\frac{b_{c}(t)p_{c}(t)}{\sum\limits_{k=1}^{C}b_{k}(t)p_{k}(t)+\sigma}, \tag{12}\]  
taking a derivative of (10) and after rearranging the terms, the bidding status can be updated as:  
\[b_{c}(t+1)=\frac{(\ln 2)^{-1}h_{c}}{1+h_{c}p_{c}(t+1)+\sum\limits_{k=1,k\
eq c }^{C}h_{k}p_{k}(t+1)} \tag{13}\]  
where \(h_{c}\) represents the aggregated gain of all \(\mathcal{N}\) users within cluster \(c\) and it can be calculated as:  
\[h_{c}=\sum\limits_{i=1}^{\mathcal{N}}h_{i}. \tag{14}\]  
\(h_{k}\) represents the aggregated gains in other clusters. After power is allocated to the winner, he is kicked out of the auction. Total offered power is updated after deducting the winner's power. Then, a new round of auctioning starts. Auctioning resumes with new \(P_{t}\) if the previous offered resource was not enough. One of the main objectives of QoS is the fairness. To grant the fairness and quality of service for all users, fair power allocation (FPA) [5] scheme is adopted to see each user's power need properly attended then the user's rate is calculated to check whether rate constraint is fulfilled. Algorithm 1 explains the mechanism of our proposed power allocation scheme. Finally, [PERSON]'s fairness index [17] is adopted to measure the fairness of power allocation algorithm, the definition of this index is given as  
\[J=\frac{\left(\sum\limits_{i=1}^{\mathcal{N}}R_{m,i,l}\right)^{2}}{\mathcal{N }\sum\limits_{i=1}^{\mathcal{N}}R_{m,i,l}^{2}}. \tag{15}\]  
``` Initialization:\(\sigma,P_{t},R^{th}\), \(t=0\), initial bid \(b_{c}(0)=\lambda\),  Calculate \(p_{c}(0)\) for all clusters using (11)  for all \(c\in\aleph\)  Calculate \(p_{c}(t+1)\) using (12)  Calculate \(b_{c}(t+1)\) through (13)  Perform user's power allocation using FPA as in Reference [5]  end for  for all users in cluster \(c\)  if \(R_{m,i,l}\geq R^{th}\) \(p_{c}=p_{c}(t+1)\)  else \(t=t+1\)  end if  end for  if converge (no change in bidding status)  break  end if

## 4 Simulation Results

In this section, we analyze the performance of the proposed power allocation scheme and the comparison with fractional transmit power allocation (FTPA) [18] benchmark algorithm for the NOMA and OFDMA algorithms in Reference [19]. Table 2 shows the simulation parameters. Firstly, the convergence of the algorithm is shown in Figure 1 for a total transmit power \(P_{t}=20\) dBW and \(10\) BS with \(10\) users for each BS, we can notice the algorithm converges in a few iterations.