Massive multiple-input multiple-output (MIMO) is one of the core technologies expected to be adopted by the next generation of wireless communication systems. Massive MIMO system equipped with a large number of antennas can increase the throughput by supporting a large number of users simultaneously; the huge number of MIMO degrees of freedom can be exploited for lots of critical capabilities  .
In order to make full use of the spatial multiplexing gain and the antenna gain of massive MIMO, the knowledge of channel state information at transmitter (CSIT) is essential. To obtain CSI at the base station (BS) of frequency division duplexing (FDD) system, the BS first transmits downlink pilot symbols so that users can estimate the downlink CSIs. The channel information are then fed back to the BS via uplink signaling channels . However, the number of transmission resources consumed by downlink training is proportional to the number of BS antennas M, and the number of CSI feedback transmission resources is proportional to the number of users K in the system. For massive MIMO, the pilot training overhead would be increased greatly when M becomes very large . Hence, it is important to investigate the massive MIMO design for FDD systems.
Joint spatial division and multiplexing (JSDM) was proposed to reduce the cost of FDD massive MIMO . The idea of JSDM is to partition the user population into groups with similar channel covariance eigenspace, and split the downlink precoding into two stages. The pre-beamforming stage depends on the channel covariance. Then MU-MIMO precoding stage can be applied on the effective channel with the reduced dimensions. The pre-beamforming matrix is used to suppress the interference between different groups, and the MU-MIMO precoding matrix is designed to reduce the multiuser interference within each group. Therefore, an important issue for JSDM is user grouping. In this paper, we research two different similarity measure methods and two clustering methods . After user grouping, another important issue is user scheduling. We propose an improved user scheduling method in this paper. The efficacy of the proposed schemes is validated with theoretical analysis and simulations.
2. System Model
We consider a downlink system with M antennas at BS and K users equipped with single antenna. We assume that the matrix of dimension M × K is the channel between the BS and users. is the channel matrix of dimension M × 1 between BS and user k. And we specifically consider the case of BS equipped with a uniform linear array (ULA). Denote as the received signal at the user k, k = 1,2, ・・・, K. The signals received by all K users y can be written as
According to JSDM  , y can be rewritten as. The first stage B of dimension M × b is pre-beamforming matrix, which is designed based on the channel covariance matrices. Denote as the effective channel after pre-beamforming. The effective transmit size after pre-beamforming is b, which is determined by the dominant eigenmodes of average transmit correlation of user groups . The second stage P of dimension b × S is the MU-MIMO precoding matrix. d denotes the S × 1 vector of transmitted user data symbols. In general, we have, and this represents the number of simultaneously served users. z is the zero mean circularly symmetric complex Gaussian noise vector.
We adopt the one-ring system model for each user. In Figure 1, θ is the azimuth angle of the user location. r is radius of the scattering ring. s is the distance between BS and the user. Δ is the angle spread. The correlation coefficient about covariance matrix R has (m, p)-th element
D is the distance between adjacent antennas. Considering Rayleigh correlated channel coefficients such as, let. is the channel covariance for the user k. of dimension M × rk is the matrix of the eigenvectors corresponding to the rk non-zero eigenvalues of and is a diagonal matrix. The actual channel vector of the user k is given as
where the entries of wk~CN (0, I).
In JSDM, the K users are divided into G groups based on the similarity of their channel covariance. Let G be the number of groups, and Kg be the size of group g, then we get. Similarly, we let Sg denote the number of independent data streams sent to the users in group g, such that. We then have, , , and, where Bg of M × bg is the pre-beam- forming matrix for group g.
3. User Grouping in Massive Mimo System
In order to suppress the inter-group interference, the pre-beamforming matrix Bg for group g shall be carefully designed based on the channel covariance matrices of all the group centers Rg, g = 1,2, ・・・, G. User grouping also has impacts on user scheduling, since for each group after pre-beamforming, only the users in the group can be scheduled. The detailed discussion of user scheduling is described in Section 5. Therefore, it is important to design an effective user grouping method for enhanced system capacity.
Figure 1. One-ring system model.
Users are partitioned into groups according to the following two principles : 1) users in the same group have approximately same channel covariance eigenspace spanning a given common subspace, which characterizes the group; 2) the subspaces of groups served on the same time-frequency slot by JSDM must be approximately mutually orthogonal.
User grouping method consists of two parts, the similarity measure method and clustering method. In this section, we choose two similarity measure methods: chordal distance measure and weighted likelihood similarity measure, and two clustering methods: K-means clustering method and K-medoids clustering method. The chordal distance (CHD) between user k and group g is given by 
where Uk of dimension is the matrix of eigenvectors of Rk, i.e., , and is a design parameter. Vg is the matrix of eigenvectors of Rg. In each iteration, the group center is updated with the users associated to the group as
Note that ϒ(・) denotes the unitary matrix after eigen decomposition. The weighted likelihood (WLD) between user k and group g is given by
For instance, if user k is very close to group g, or Uk ≈ Vg, the result of dc = (Uk, Vg) is close to zero and the result of L = (Rk, Vg) is a very large value.
K-means clustering is a standard iterative algorithm which aims at partitioning K users into G groups such that each user belongs to the group with the highest similarity. The K-means clustering algorithm process is as follows:
1) Randomly choose G different users from K users as the group centers. 2) In each iteration, for each user k, compute dc = (Uk, Vg) or L = (Rk, Vg) for each group g, then assigned user k to the group with the highest similarity. 3) Update each group center Vg by Equation (5). 4) The algorithm stops when there is no further change of total similarity.
K-medoids clustering method is similar to K-means clustering . However, the main difference lies in the approach of updating group center. K-me- doids tries every group member as the group center and uses the one which has the minimum total distance among all other users for chordal distance or the maximum total similarity among all other users for weighted likelihood.
4. Pre-Beamforming and Precoding Matrix
After user grouping, we let V = BP. To exactly eliminate (or approximately) the inter-group interference, the pre-beamforming matrix B and precoding matrix P shall be designed carefully. Let and suppose that. The received signal can be written in the following manner:
The signal vector received by the users of group g is then given by
where the bracketed term denotes the inter-group interference. If the estimation and feedback of the whole effective channel can be obtained at the transmitter, the precoding matrix P can be determined as a function of. We refer to this approach as joint group processing (JGP) . Hence, a suitable design goal for the pre-beamforming matrices is to make the inter-group interference close to zero. We can design B as
such that. For the pre-beamforming matrix B in JGP, the regularized zero forcing precoding matrix is given by
where, is a regularization factor, and ζ is a normalization factor chosen to satisfy the power constraint and is given by
where S is the number of transmitted user data symbols.
5. User Scheduling in Massive Mimo Systems
Under linear precoding method, in order to eliminate the interference among the users, the number of BS transmit antennas is no less than the total number of simultaneously served users. If the number of active users in the system is very large, or the total number of data streams to be transmitted is more than the number of the BS antennas, it is necessary to select only a part of the users to service at each time. In this section, we propose three user scheduling algorithms including MAX user scheduling, greedy user scheduling and improved greedy user scheduling.
The MAX user scheduling algorithm first calculates signal-to-interference noise ratio (SINR) in Equation (15) for all active users,
and then select the users with maximum SINR with the limit. Denote and as the set of the scheduled users in group g and the set of overall scheduled users respectively. Then the sum rate of group g can be calculated as
and overall system throughput is written as
The greedy user scheduling algorithm schedules users in a greedy manner. First compute the SINR for all the K users, and choose the user with max SINR as the first scheduled user. Second, only considering the interference of the scheduled users, select one user from inactive users that can achieve the maximum system sum rate. Then update the ag. Third, repeat the second step until system throughput reaches maximum value. The complexity of the greedy user scheduling algorithm is. As K increased, the overhead of user scheduling would be prohibitively large.
In this paper, we propose an improved greedy user scheduling algorithm as seen in algorithm 1. The improved greedy user scheduling algorithm consists of two parts. Firstly, select S users following MAX user scheduling. Next, at each time slot, select SMAX users with maximum SINR from scheduled users, and then update Sgreedy = S − SMAX users with greedy scheduling algorithm. The complexity of improved algorithm would be much lower than the greedy user scheduling.
6. Simulation Study
Numerical simulations are conducted to evaluate the performance of the proposed algorithm. The simulations are based on the multi-user one-ring channel model, which is a MU-MIMO system with M = 100 antennas with 0.5λ spacing of ULA at BS. The system configuration is provided in Table 1. In particular, we consider a 120˚ sector. For each user drop, the azimuth angle, angle spread and distance
Figure 2 presents the result of the proposed clustering methods. For a fair comparison, we use the same WLD similarity measure and user scheduling is not considered. The total number of users K = 200. Users from different groups are differentiated by different markers and colors. We can find that the number of each groups after K-medoids clustering method is more uniform, K-medoids is more robust than K-means and is not susceptible to extreme values. However, the computational complexity of K-medoids is higher than K-means.
Figure 3 presents a comparison of the different similarity measure methods and clustering methods. Also, user scheduling is not considered. We can find that K-medoids with CHD has slightly higher sum rate than K-means with WLD, and K-medoids with WLD has lowest sum rate. In addition, with the increase of users, the interference among users is also increasing, all the performance curves with the increase of users shows a trend of decline when the number of users exceed S.
In order to verify the performance of the proposed scheduling algorithm, the
Table 1. System configuration in the simulations.
Figure 2. The user distribution of user grouping. (a) K-means user grouping. (b) K-medoids user grouping.
simulations of user grouping including user scheduling have done. The simulation and comparison results are show in Figure 4. For a fair comparison, we used the same K-medoids clustering and CHD similarity measure adopted in . Ac- cording to Figure 4, we can find that greedy user scheduling achieves the highest throughput and the proposed improved greedy user scheduling has only slightly lower throughput than the greedy algorithm in . However, the computational complexity of improved greedy user scheduling algorithm is significantly lower than greedy algorithm, and the loss in sum rate is acceptable.
Figure 3. Comparison of similarity measure methods and clustering methods.
Figure 4. Comparison of user scheduling algorithms.
In this paper, we have studied the user grouping and scheduling problems based on JSDM for FDD massive MIMO systems. Two similarity measure methods and two clustering methods are adopted and compared for user grouping algorithm. An improved dynamic user scheduling scheme for FDD massive MIMO systems is proposed in this paper to reduce the computational complexity. The proposed method not only reduces the downlink training and feedback overhead, but also can obtain a relatively satisfying system performance as well. The efficacy of the proposed algorithm has been validated with simulations and analysis.
This work has been supported by the National High Technology Research and Development Program (“863” Program) of China under Grants 2014AA01A704.
 Larsson, E.G., Edfors, O., Tufvesson, F. and Marzetta, T.L. (2014) Massive MIMO for Next Generation Wireless Systems. IEEE Communications Magazine, 52, 186- 195. https://doi.org/10.1109/MCOM.2014.6736761
 Rao, X. and Lau, V.K.N. (2014) Distributed Compressive CSIT Esti-mation and Feedback for FDD Multi-User Massive MIMO Systems. IEEE Transactions on Signal Processing, 62, 3261-3271. https://doi.org/10.1109/TSP.2014.2324991
 Choi, J., Love, D.J. and Bidigare, P. (2014) Downlink Training Tech-niques for FDD Massive MIMO Systems: Open-Loop and Closed-Loop Training with Memory. IEEE Journal of Selected Topics in Signal Processing, 8, 802-814. https://doi.org/10.1109/JSTSP.2014.2313020
 Nam, J., Adhikary, A., Ahn, J.Y. and Caire, G. (2014) Joint Spatial Di-vision and Multiplexing: Opportunistic Beamforming, User Grouping and Simplified Downlink Scheduling. IEEE Journal of Selected Topics in Signal Processing, 8, 876-890. https://doi.org/10.1109/JSTSP.2014.2313808
 Xu, Y., Yue, G., Prasad, N., Rangarajan, S. and Mao, S. (2014) User Grouping and Scheduling for Large Scale MIMO Systems with Two-Stage Precoding. 2014 IEEE International Conference on Communications (ICC), Sydney, NSW, 10-14 June 2014, 5197-5202. https://doi.org/10.1109/ICC.2014.6884146
 Adhikary, A., Nam, J., Ahn, J.Y. and Caire, G. (2013) Joint Spatial Divi-sion and Multiplexing—The Large-Scale Array Regime. IEEE Transactions on Information Theory, 59, 6441-6463. https://doi.org/10.1109/TIT.2013.2269476