## 4 Joint User Scheduling and Hybrid Beamforming Design for Maximizing EE
### CCCP Algorithm  
From (51), (52) and (54), it can be seen that the problem \(Q_{5}\) is a DC programming problem. To handle this challenge, the CCCP framework algorithm is a common method to solve the DC programming problem [35], which is an iterative framework including two operations: convexification and optimization. In the convexification step, by adopting the first-order Taylor expansion, the convex part of the objective function and the concave part of the constraint function can be linearized; then, the DC programming problem is transformed into a convex problem. It should be noted that the convex problem obtained from the convexification step provides a global lower bound for the original problem, and the optimization step is mainly to maximize the lower bound. Meanwhile, the performance of the CCCP algorithm is closely related to the initial point of the variables, but the equality constraint \(C_{4}\) of the problem \(Q_{5}\) limits the selection of the initial point. To find a feasible initial point, we substitute the constraint \(C_{4}\) into the objective function and set the penalty factor \(\lambda_{2}>0\). Then, the problem \(Q_{5}\) can be equivalently converted to:  
\[ \begin{split} Q_{6}:\max\limits_{\mathbf{\eta},\mathbf{W}\text{SINR}_{l}^{ \min},\zeta}&\text{EE}=2q\bigg{(}B\sum\limits_{l=1}^{L}Y_{l}( \text{SINR}_{l}^{\min})\bigg{)}^{\frac{1}{2}}-q^{2}\bigg{(}\sum\limits_{l=1}^{ L}Tr(\mathbf{W}_{l})+P_{0}\bigg{)}\\ +&\lambda_{1}\sum\limits_{l=1}^{L}\text{P}(\eta_{k,l })-\sum\limits_{l}^{L}\lambda_{2}\bigg{(}\sum\limits_{k}^{|\text{I}_{l}|}\eta_ {k,l}-U_{s}\bigg{)}^{2}\\ & s.t.\;C_{2},C_{3},\;C_{5}\,,C_{6}\,,C_{7},C_{8}\;in\;Q_{5},\end{split}  \tag{55}\]  
_Convexification_: Let \(\left(\eta_{k,l},\text{SINR}_{l}^{\min},\mathbf{W},\zeta\right)^{(t-1)}\) be the estimated value of variables \(\left(\eta_{k,l},\text{SINR}_{l}^{\min},\mathbf{W},\zeta\right)\) in iteration \(t-1\) of the problem \(Q_{6}\). In iteration \(t\), for the convex part \(\lambda_{1}\sum\limits_{l=1}^{L}\text{P}(\eta_{k,l})\), we adopt the first-order Taylor expansion to replace it, which is reflected in line three of Algorithm 1. The first-order Taylor expansion of \(\text{P}(\eta_{k,l})\) can be expressed as:  
\[\text{P}(\eta_{k,l})^{te}=\text{P}\Big{(}\eta_{k,l}^{(t-1)}\Big{)}+\Big{(}\eta _{k,l}-\eta_{k,l}^{(t-1)}\Big{)}\text{VP}\Big{(}\eta_{k,l}^{(t-1)}\Big{)}, \tag{56}\]  
\[\
abla\text{P}\Big{(}\eta_{k,l}^{(t-1)}\Big{)}=\log\Big{(}\eta_{k,l}^{(t-1)} \Big{)}-\log\Big{(}1-\eta_{k,l}^{(t-1)}\Big{)}, \tag{57}\]  
Similarly, in the constraint \(C_{2}:\Gamma_{k,l}(\mathbf{W})-\text{I}_{k,l}(\mathbf{W},\zeta_{k,l})\leq 0\), we replace the concave function \(\text{I}_{k,l}(\mathbf{W},\zeta_{k,l})\) with its first-order Taylor expansion, which is reflected in line three of Algorithm 1. The first-order Taylor expansion of \(\text{I}_{k,l}(\mathbf{W},\zeta_{k,l})\) can be expressed as:  
\[\text{I}_{k,l}(\mathbf{W},\zeta_{k,l})^{te}=\text{I}_{k,l}\Big{(}\mathbf{W}^{(t-1)}, \zeta_{k,l}^{(t-1)}\Big{)}+\
abla^{\text{T}}\text{I}_{k,l}\Big{(}\mathbf{W}^{(t-1 )},\zeta_{k,l}^{(t-1)}\Big{)} \begin{bmatrix}\Big{\{}\mathbf{W}_{l}-\mathbf{W}_{l}^{(t- 1)}\Big{\}}_{l=1}^{L}\\ \zeta_{k,l}-\zeta_{k,l}^{(t-1)}\end{bmatrix}