## 3 Proposed Algorithm  
### An Improved Dynamic Joint Resource Allocation Algorithm Based on SFR  
In this section, we put forward a novel scheme, referred to as the dynamic joint resource allocation algorithm. We aim to find a DJRA solution that maximizes the system data rate and meets the data rate requirements for cell center users and cell edge users at the same time. As objective function (6) is an NP-hard problem and difficult to solve [18]. In this paper, we decompose the multi-cell resource allocation optimization into several single-cell optimization problems. The proposed method is first to find a single cell solution and then extend the solution to optimize multi-cell wireless network performance. We first propose the single-cell resource allocation solution. For a single cell, we aim to find a RB-power allocation scheme which satisfies the condition that the required transmission power at each BS is lower than the maximum power. The single cell optimization problem is described as follows  
\[\{P_{i}^{nplan}\left|P_{i}^{nplan}\leq P_{max},i\in C\,nplan\in W\right\} \tag{13}\]  
where \(i\) is the target cell, \(W\) denotes the set of DJRA schemes and \(nplan\) is one of the DJRA plan. \(P_{i}^{nplan}\) denotes the required transmission power at each BS in cell \(i\) when adopting the \(nplan^{th}\) scheme. Equations (14) to (17) illustrates the constraint conditions. \[R_{i}^{o}\geq R_{o}^{tar} \tag{14}\] \[R_{i}^{in}\geq R_{in}^{tar}\] (15) \[N_{i}^{major}+N_{i}^{min\,or}=N\] (16) \[N_{i}^{major}\leq N-\sum\limits_{m\in C_{adj}^{3},i\
eq m}N_{m}^{major} \tag{17}\]  
where \(R_{o}^{tar}\) and \(R_{in}^{tar}\) denotes the target data rate for edge user and center user respectively. The condition for equality is that the transmit power is the lowest power in Constraints (14) and (15). Once \(N_{i}^{major}\) is determined, we have \(N_{i}^{min\,or}\), \(P_{i}^{in}\), \(P_{i}^{o}\)  
\[N_{i}^{min\,or}=N-N_{i}^{major} \tag{18}\] \[p_{i}^{o}=(2^{\frac{R_{i}^{tar}}{N_{i}^{major}R_{sub}}}-1)\cdot \frac{\sum\limits_{m\in C_{adj}^{3}}p_{m}^{in}g_{1,m}^{o}+N_{o}}{\delta_{i,i}^ {o}}\] (19) \[p_{i}^{in}=(2^{\frac{R_{i}^{tar}}{N_{i}^{min\,or}R_{sub}}}-1)\cdot \frac{\sum\limits_{m\in C_{adj}^{3}}p_{m}^{o}g_{1,m}^{in}+N_{o}}{g_{i,i}^{in}} \tag{20}\]  
where \(p_{m}^{in}\) and \(p_{m}^{o}\) denotes the power allocated to center RBs and edge RBs in cell \(m\). As \(N_{i}^{major}\) and \(N_{i}^{min\,or}\) are both integers, there exist (\(N-1\)) different combinations of RB-power in theory. Before applying the traversing method, DJRA detects edge-user distribution vector \(K=\{k_{1},k_{2},\ldots k_{i}\},i\in\ C\). For the sake of guaranteeing that each user has its frequency resource that can be used, there are only \(N-k_{i}+1\) combinations of FP (frequency block, power allocation) pairs. Then DJRA selects all the FP pairs that yield the throughput requirements as expressed in Constraints (14) and (15), and submits these FP pairs into Equation (12) to get the power set \(W\). Once the power set is set up by above steps, we obtain the total power for each allocation plan. Subsequently, we compute \(P_{max}-P_{i}^{nplan}\) in the target cell. The residual power is equally allocated to each edge of RB to enhance the performance of edge users. In the forth step, DJRA finds the maximum \(R_{i}^{o}+R_{i}^{in}\) and set \(R_{i}^{o}\) and \(R_{i}^{in}\) as the new target data rates to recalculate FP pairs, until the cell capacity does not change any more. The single-cell allocation (Algorithm 1) is shown below. ```
(1) Monitor edge-user distribution; (2) Find all the FP pairs that yield the throughput requirements and get the power set; (3) Compute \(P_{max}-P_{i}^{nplan}\) in the target cell and equally allocate the residual power to each edge RB; (4) Find the maximum \(R_{i}^{o}+R_{i}^{in}\) and set \(R_{i}^{o}\) and \(R_{i}^{in}\) as the new target data rates to recalculate Step 2 to Step 3, until the cell capacity does not change any more.