## 4 Centralized Algorithm
### CE-Based Scheduling Algorithm
#### 4.1.2 Iteration  
Each iteration of the proposed algorithm includes three steps. First, the algorithm generates adequate samples according to a given strategy. Then, it is necessary to exclude those samples that do not satisfy the constraints and to select \"good\" samples for the next stage. At last, the probability distribution needs to be updated according to the selected samples, so that \"better\" samples will be generated in the next iteration. After sufficient iterations, the algorithm gradually approaches the optimal solution. Let \(N_{\text{SAM}}\) denote the number of samples generated in each iteration for each TP and \(\mathbf{X}_{1}^{m}\), \(\cdots,\mathbf{X}_{i}^{m},\cdots,\mathbf{X}_{N_{\text{SAM}}}^{m}\) denote the corresponding samples, where \(\mathbf{X}_{i}^{m}=[x_{i(1)}^{m},\cdots,x_{i(n)}^{m},\cdots,x_{i(N_{\text{RB} })}^{m}]\). Each  
Figure 3: The major principle of the CE method. sample can map into a scheduling index set \(\{\beta_{m,k}^{n},\forall k,n\}\), and leads to a weighted energy efficiency of TP \(m\) given as:  
\[f_{m}\left(\mathbf{X}_{i}^{m}\right)=\sum_{n=1}^{N_{\text{RB}}}\frac{R_{x_{i(n) }^{m}}^{n}}{\overline{\mathbf{X}}_{x_{i(n)}^{m}}^{n}}\Bigg{/}\sum_{n=1,x_{i}^ {m}\left(n\right)\
eq 0}^{N_{\text{RB}}}S \tag{11}\]  
where \(\sum_{n=1,x_{i}^{m}\left(n\right)\
eq 0}^{N_{\text{RB}}}S\) represents the total power consumption at TP \(m\) according to sample \(\mathbf{X}_{i}^{m}\). The sum data rate of TP \(m\) can be estimated as \(R_{m}\left(\mathbf{X}_{i}^{m}\right)=\sum_{n=1}^{N_{\text{RB}}}R_{x_{i(n)}^{n}}^ {n}\). A qualified sample should satisfy two requirements. First, the sum data rate \(R_{m}\) cannot exceed the backhaul capacity of TP \(m\). Therefore, those samples lead to overlarge sum data rates, _i.e., \(R_{m}\left(\mathbf{X}_{i}^{m}\right)>C_{m}\)_, will be removed. Second, the value of \(f_{m}\left(\mathbf{X}_{i}^{m}\right)\) should be high enough. Samples whose weighted energy efficiency \(f_{m}\left(\mathbf{X}_{i}^{m}\right)<f_{\text{thres}}^{\left(t\right)}\) will also be removed, where \(f_{\text{thres}}^{\left(t\right)}\) is a threshold that increases after each iteration until it converges. Consequently, \(N_{\text{IM}}\) (\(N_{\text{IM}}\leq N_{\text{SAM}}\)) qualified samples are left for updating the generation probability. Without loss of generality, qualified samples are denoted as \(\mathbf{X}_{j}^{m}\) (\(1\leq j\leq N_{\text{IM}}\)). At the last stage of an iteration, probability distributions are updated on the basis of qualified samples in order to generate better samples in the next iteration. The updated possibility \(\mathbb{P}\{x_{(n)}^{m}=u\}\) is:  
\[q_{u}^{m,n}=N\left(x_{j(n)}^{m}=u\right)\ /N_{\text{IM}} \tag{12}\]  
where \(N\left(x_{j(n)}^{m}=u\right)\) represents the number of times that UE \(u\) appears in \(N_{\text{IM}}\) samples on the \(n\)-th RB. The proposed iteration algorithm is summarized as Algorithm 1. ```
1:\(f_{\text{max}}=f_{\text{max,pre}}=0\); \(counter=1\);
2:while\(counter\leq N_{\text{SAM}}\)do
3: Generate samples \(\mathbf{X}^{m}\) according to the distribution \(\mathbf{q}^{m,n}\). 4: Calculate utility function of \(\mathbf{X}_{j}^{m}\), _i.e., \(f\left(\mathbf{X}_{i}^{m}\right)\)_, according to (11). 5: Calculate the sum data rate of \(\mathbf{X}^{m}\), _i.e., \(R_{m}\left(\mathbf{X}^{m}\right)=\sum_{k\in\mathcal{U}_{m}}R_{k}^{n}\)_. 6:if\(f\left(\mathbf{X}^{m}\right)<f_{\text{thres}}^{\left(t\right)}\)then
7: CONTINUE;
8:endif
9:if\(R_{m}\left(\mathbf{X}^{m}\right)>C_{m}\)then
10: CONTINUE;
11:endif
12:\(\mathbf{X}_{counter}^{m}=\mathbf{X}^{m}\)
13:\(counter=counter+1\)
14:endwhile
15:for\(i=1\) to \(N_{\text{SAM}}\)do
16: Calculate \(f\left(\mathbf{X}_{i}^{m}\right)\) according to (11). 17:endfor
18: Sort samples in a descending order in terms of \(f\left(\mathbf{X}_{i}^{m}\right)\).