## 4 Centralized Algorithm
### Power Allocation Algorithm  
With the obtained RB scheduling result, the power allocation problem can be given as:  
\[\begin{split}\max_{\beta_{m,k}^{n},p_{m}^{n}}&\sum_{k=1 }^{K}\sum_{n=1}^{N_{\text{RB}}}\frac{R_{k}^{n}}{R_{k}}\left/\sum_{m=1}^{M}\sum _{n=1}^{N_{\text{RB}}}\sum_{k=1}^{K}\beta_{m,k}^{n}p_{m}^{n}\right.\\ \text{s.t.}&\text{C1: }0\leq p_{m}^{n}\leq S,\forall m,n\\ &\text{C3: }\sum_{n=1}^{N_{\text{RB}}}\sum_{k=1}^{K}\beta_{m,k}^{n}R_{k}^{n} \leq C_{m},\forall m\\ &\text{C4: }R_{k}^{n}\geq R_{\text{thres}},\forall k,n\end{split} \tag{13}\]  
The objective function in (13) is a well-known non-convex function for which the optimal solution does not exist. In this work, we use an analytical method on the base of the KKT-condition to approach a local optimal solution of power allocation.  
A solution of Equation (13) can be achieved by solving its dual function in terms of backhaul and data rate constraints given as:  
\[\begin{split}\max_{p_{m}^{n}}&\sum_{n=1}^{N_{\text {RB}}}\left(\sum_{k=1}^{K}\frac{R_{k}^{n}}{R_{k}}\middle/\sum_{m=1}^{M}p_{m}^{n} \right)-\sum_{m=1}^{M}\lambda_{m}\left(\sum_{n=1}^{N_{\text{RB}}}\sum_{k=1}^{K }\beta_{m,k}^{n}R_{k}^{n}-C_{m}\right)+\sum_{n=1}^{N_{\text{RB}}}\sum_{k=1}^{K }\mu_{n,k}\left(R_{k}^{n}-R_{\text{thres}}\right)\\ \text{s.t.}& 0\leq p_{m}^{n}\leq S,\forall m,n\\ \end{split} \tag{14}\]where \(\{\lambda_{m},\ \forall m\}\) and \(\{\mu_{n,k},\ \forall n,k\}\) are non-negative Lagrangian multipliers. However, the dual function given above is still hard to solve, since it involves too many variables (\(MN_{\text{RB}}\) variables and Lagrangian multipliers). To further simplify the problem, we intend to decompose Equation (14) into independent subproblems with fewer variables.  
Let \(\beta_{m}=\sum\limits_{n=1}^{N_{\text{RB}}}\sum\limits_{k=1}^{K}\beta_{m,k}^{n}\). \(\beta_{m}=0\) indicate the situation where no transmission is scheduled for TP \(m\). This is unreasonable in the high-loading network we considered. Thus, we suppose that \(\beta_{m}\
eq 0\); then \(C_{m}\) can be rewritten as:  
\[C_{m}=\sum\limits_{n=1}^{N_{\text{RB}}}\sum\limits_{k=1}^{K}\beta_{m,k}^{n} \frac{C_{m}}{\sum\limits_{n=1}^{K}\sum\limits_{k=1}^{K}\beta_{m,k}^{n}}=\sum \limits_{n=1}^{N_{\text{RB}}}\sum\limits_{k=1}^{K}\beta_{m,k}^{n}\frac{C_{m}}{ \beta_{m}} \tag{15}\]  
After substituting (15) into (14), the problem can be decomposed into \(N_{\text{RB}}\) independent subproblems, where each subproblem is given as:  
\[\begin{split}\max\limits_{p_{m}^{n}}&\sum\limits_{k= 1}^{K}\frac{R_{k}^{n}}{R_{k}}\Bigg{/}\sum\limits_{m=1}^{M}p_{m}^{n}-\sum\limits _{k=1}^{K}\sum\limits_{m=1}^{M}\lambda_{m}\beta_{m,k}^{n}\left(R_{k}^  
Lagrangian multipliers can be updated in each iteration by the sub-gradient method [16] as follows,  
\[\lambda_{m}^{(t+1)} =\max\left\{\lambda_{m}^{(t)}-v_{\lambda}^{(t)}\left(\sum_{n=1}^{N_{ \text{RB}}}\sum_{k=1}^{K}\delta_{m,k}^{n}R_{k}^{n}-C_{m}\right),0\right\}\] \[\mu_{n,k}^{(t+1)} =\max\left\{\mu_{n,k}^{(t)}-v_{\mu}^{(t)}\left(R_{\text{thres}}-R_ {k}^{n}\right),0\right\} \tag{21}\]  
where \(v_{\lambda}^{(t)}\) and \(v_{\mu}^{(t)}\) are the step sizes used in the current iteration for updating \(\lambda_{m}\) and \(\mu_{n,k}\).