## 3 Transmission Point Selection in Multi-Band Multi-Connectivity Operation
### Transmission Point Selection Algorithm  
Algorithm 1 shows the proposed transmission point selection algorithm, where TPs are selected at most \(C\) according to the minimum value in Equation (4), i.e., \(v_{k}^{n}=t_{k}^{n}\) (see line 5 in Algorithm 1). In contrast to finding the minimum value (e.g., interference, service latency [12], etc. ), TPs can be selected based on the maximum value (e.g., achievable data rate in Equation (1)) sequentially, i.e., line 5 in Algorithm 1 is replaced by the following:  
\[n\leftarrow\operatorname*{argmax}_{n\in\mathcal{N}}v_{k}^{n}. \tag{8}\]  
In addition, \(\mathcal{K}_{n}\leftarrow\mathcal{K}_{n}\cup\{k\}\) and \(x_{k}^{n}\gets 1\) (see lines 6-7 in Algorithm 1) when the TP \(n\) is selected to serve the user \(k\) as a result of Equation (8). We have defined the following lemmas, extended from [9; 12], on the optimal solution of the service time, denoted by \(T^{*}\), where the optimal solution \(T^{*}\) for the given optimal allocation \(\mathcal{K}_{n}^{*}\) for TP \(n\) is as follows:  
\[T^{*}=\max_{n}\sum_{k\in\mathcal{K}_{n}^{*}}t_{k}^{n}. \tag{9}\]  
For optimality analysis, we also define the following:  
\[\hat{t}_{k}=\min_{n\in\mathcal{N}}t_{k}^{n}. \tag{10}\]  
```
1:\(\mathcal{K}=\{1,2,\dots,K\},\mathcal{N}=\{1,2,\dots,N\},C(1\leq C\leq N)\)
2:Initialise \(\mathcal{K}_{n}\leftarrow\emptyset,\forall n\in\mathcal{N}\), \(x_{k}^{n}\gets 0,\forall n\in\mathcal{N},\forall k\in\mathcal{K}\)
3:while\(\mathcal{K}\
eq\emptyset\)do
4: Choose any user \(k\in\mathcal{K}\)
5:for\(i\gets 0\) to \(C-1\)do
6: Find TP having the minimum value \(v_{k}^{n}\) in \(\mathcal{N}\) for user \(k\): \[n\leftarrow\operatorname*{argmin}_{n\in\mathcal{N}}v_{k}^{n}\]
7: Set \(\mathcal{K}_{n}\leftarrow\mathcal{K}_{n}\cup\{k\}\)
8: Set \(x_{k}^{n}\gets 1\)
9: Remove \(n\) from \(\mathcal{N}\): \(\mathcal{N}\leftarrow\mathcal{N}\setminus\{n\}\)
10:\(i\gets i+1\)
11:endfor
12: Remove \(k\) from \(\mathcal{K}\): \(\mathcal{K}\leftarrow\mathcal{K}\setminus\{k\}\)
13:endwhile
14:return\(\mathcal{N},\mathcal{K}_{n},x_{k}^{n},\forall n,k\)
```  
**Algorithm 1** Transmission Point Selection Algorithm  
**Lemma 1**. : _The optimal solution, denoted by \(T^{*}\), is bounded by_  
\[T^{*}\geq\frac{1}{N}\sum_{k\in\mathcal{K}}\hat{t}_{k}, \tag{11}\]  
_where \(\hat{t}_{k}=\min_{n\in\mathcal{N}}t_{k}^{n}\)._  
Proof. : Optimal solution is \(T^{*}\) for the given optimal allocation \(\mathcal{K}_{n}^{*}\) for TP \(n\). Thus,  
\[T^{*}\geq\frac{1}{N}\sum_{n\in\mathcal{N}}\sum_{k\in\mathcal{K}_{n}}\hat{t}_{k} =\frac{1}{N}\sum_{k\in\mathcal{K}_{n}}\hat{t}_{k}. \tag{12}\]It is true that the value of \(T^{*}\) is always greater than the mean of the minimum values by the definition of \(\hat{t}_{k}\) in (10). In addition, the sum of the network-wide service time is the same as the sum of service time of the set of all users in the network. The optimal solution, denoted by \(T^{*}\), is bounded by  
\[T^{*}\geq\max\hat{t}_{k}, \tag{13}\]  
where \(\hat{t}_{k}=\min_{n\in\mathcal{N}}t_{k}^{n}\). Proof. : By (9), it is clear that  
\[T^{*}=\max_{n}\sum_{k\in\mathcal{K}_{n}^{*}}t_{k}^{n}\geq\max_{n}\sum_{k\in \mathcal{K}_{n}^{*}}t_{k}^{n}. \tag{14}\]  
It is also clear that the service time is at least the maximum service time of any one user, i.e., served by any TP in the network. The computational complexity of the transmission point selection in Algorithm 1 is \(\mathcal{O}(CNK)\), where \(C\), \(N\) and \(K\) denotes the total number of connections for each user, the total number of TPs operating in all frequency bands over the network, and the number of users, respectively. Proof. : The TPS algorithm selects the \(C\) number of TPs having the highest, the second highest,..., the \(C\)-th highest value of \(v_{k}\) sequentially, without considering the other users' value \(v_{j}(j\
eq k)\), i.e., \(\mathcal{O}(C\times N)\). In accordance with this algorithm, a single TP can be selected by multiple users. It is due to the fact that multiple users can have the maximum value (e.g., SINR) from an identical TP.