# Hybrid MU-MIMO Precoding Based on K-Means User Clustering
## 1 Introduction  
Multi-User (MU) Multiple-Input-Multiple-Output (MIMO) increases network capacity by multiplexing spatially-separated users in the same frequency and time resources. It requires transmission precoding, as a random geographic location of the receivers does not enable joint decoding. Thus, it is challenging to send independent data streams simultaneously to a set of properly-selected users to attain the spatial multiplexing gains offered by MU-MIMO. A recent evolution of MU-MIMO is known as massive MIMO or large-scale MIMO [1] and is characterized by Base Stations (BSs) with hundreds of antennas sending different data streams to tens of users. Massive MIMO has been identified as the air interface technology capable of addressing the massive capacity requirement of 5G networks. Linear Precoding (LP) schemes for MU-MIMO eliminate the inter-user interference by projecting the intended user's signal into the null space of the other users [2]. When their channels are strongly correlated, i.e., for closely-separated users, the projection operation makes it almost impossible to separate the received signals and results in high capacity loss [3]. Existing MU-MIMO schedulers estimate the spatial separation between users and try to serve the ones with near-orthogonal channels. The optimum set of users can be found through an exhaustive search. The combinatorial nature ofthese problems makes them computationally infeasible due to an expected large number of users and antennas in massive MIMO systems. Various sub-optimal user grouping strategies, like null space projection or spatial clustering classification, have already been evaluated in the literature, including [2] and the references therein. To reduce the channel estimation overhead in massive MIMO Frequency Division Duplex (FDD) systems, a user grouping algorithm based on K-means clustering was proposed in [4; 5]. The performance of a two-stage precoding algorithm with various distance metrics for user grouping was tested; however, all require complex matrix computations. The Block Diagonalization (BD) linear precoder [6; 7] is used to cancel the inter-group interference. The results are not accurate enough, as the number of clusters is assumed to be known prior, and there are no insights of the spatial separation between the co-scheduled groups. In addition, the subspaces of groups (created using the average covariance matrix of the users in a group) are slightly different from the channel eigenspace of users. As such, the inter-group interference is not entirely canceled. Lastly, the employed intra-group precoder is based on linear regularized zero forcing [8]. While linear precoding mechanisms have a relatively low implementation complexity, they may not exhibit a good performance for highly-correlated channels, which is the case of users inside the same group [3; 9]. Non-Linear Precoding (NLP) schemes, such as Tomlinson-Harashima Precoding (THP) [10], proposed in the standardization phase for 5G NR (New Radio) [11; 12], or hybrid precoding [13], could behave better in such scenarios. A user grouping algorithm based on an optimized K-means clustering is presented in the paper. This further reduces the complexity of the method proposed in [4; 5] and ensures that, at a given time, at least one user in one group is scheduled. In contrast to the related work, the number of co-scheduled clusters is dynamically chosen, such that users of different clusters are separated enough in space to be served through an LP scheme. As users inside the same group have highly correlated channels, they will be scheduled in the same time-frequency resource through a second-stage non-linear precoder. To assess the particularities of the proposed algorithm, the paper is organized into the following sections. Section 2 describes the basic principles of precoding, by identifying three types of precoding schemes. Section 3 defines a model for the spatial correlation in MU-MIMO channels and a metric for evaluating the separation between channels.