Skip to main content

Table 4 Algorithm to obtain the set of information users \(\mathcal {U}_{I}\)

From: User grouping and resource allocation in multiuser MIMO systems under SWIPT

1: Set \(\mathcal {U}_{I} = \emptyset, Q_{i}\ge 0\), and \(\omega _{i}>0, \, \forall i \in \mathcal {U}_{T}\)

2: Find \(i_{1} = \arg \max _{\forall i \in \mathcal {U}^{S}_{I}} \max _{\mathbf {S}_{i}}\omega _{i}\log \det \left (\mathbf {I} + \mathbf {H}_{i}\mathbf {S}_{i}\mathbf {H}_{i}^{H}\right)\)

Subject to Tr(Si)≤PT,Si≽0

3: Set \(f_{\text {temp}} = \omega _{i_{1}}\log \det \left (\mathbf {I} + \mathbf {H}_{i_{1}}\mathbf {S}_{i_{1}}\mathbf {H}_{i_{1}}^{H}\right)\)

4: Set \(\mathcal {U}_{I} \leftarrow \mathcal {U}_{I} \cup \{i_{1}\}, \,\, \mathcal {U}^{S}_{I} \leftarrow \mathcal {U}^{S}_{I} \setminus \{i_{1}\}\)

5: for j=2 to U

6: for every \(i \in \mathcal {U}^{S}_{I}\)

7: Let \(\mathcal {U}^{(i)}_{I} = \mathcal {U}_{I} \cup \{i\}\)

8: Solve (13) without C1, and obtain \(R^{\star }_{m}, \, \forall m\in \mathcal {U}^{(i)}_{I}\)

9: Compute \(f_{i} = \sum \nolimits _{m\in \mathcal {U}^{(i)}_{I}} \omega _{m}R^{\star }_{m}\)

10: end for

11: Let \(i_{j} = \arg \max _{i \in \mathcal {U}^{S}_{I}} f_{i}\)

12: if\(f_{i_{j}} < f_{\text {temp}} \longrightarrow \), go to 17 (break for)

13: else

14: \(\mathcal {U_{I}} \leftarrow \mathcal {U}_{I} \cup \{i_{j}\}, \,\, \mathcal {U}^{S}_{I} \leftarrow \mathcal {U}^{S}_{I} \setminus \{i_{j}\}\)

15: Let \(\phantom {\dot {i}\!}f_{\text {temp}} = f_{i_{j}}\)

16: end if

17: end for