# A New Codebook Design for Analog Beamforming in Millimeter-wave Communication

←

**Page content transcription**

If your browser does not render page correctly, please read the page content below

1 A New Codebook Design for Analog Beamforming in Millimeter-wave Communication Mehdi Ganji, Student Member, IEEE, Hongbing Cheng, Senior Member, IEEE, Qi Zhan, Member, IEEE, Kee-Bong Song, Member, IEEE arXiv:1902.00838v1 [cs.IT] 3 Feb 2019 Abstract In this study, we analyze the codebook design used for analog beamforming. Analog beamforming and combining suffer from a subspace sampling limitation, that is, the receiver cannot directly observe the channel coefficients; instead, the receiver observes a noisy version of their weighted combination. To resolve this, the transmitter and the receiver usually collaborate to determine the best beamformer combiner pair during the beam-sweeping process. This is done by evaluating a limited number of codewords chosen from a pre-defined codebook. In this study, we propose a new framework inspired by the generalized Lloyd algorithm to design analog beamforming codebooks that optimize various performance metrics including the average beamforming gain, the outage, and the average data rate. The flexibility of our framework enables us to design beamforming codebooks for any array shapes including uniform linear and planar arrays. The other practical complexity in analog beamforming is the low resolution of the phase shifters. Therefore, we have extended our algorithm to create quantized codebooks that outperform the existing codebooks in literature. We have also provided extensive simulations to verify the superiority of our proposed codebook as compared with the existing codebooks. I. I NTRODUCTION Millimeter-wave (mmWave) communication is a promising technology for next-generation wireless communication because of its abundant frequency spectrum resource, which promises a much higher capacity than the current cellular mobile communication. In the mmWave domain, mixed signal components consume very high power and radio frequency (RF) chains M. Ganji is with the Center for Pervasive Communications and Computing, University of California, Irvine, CA, 92697 USA (e-mail: mganji@uci.edu). H. Cheng, Q. Zhan and K. Song are with SoC Lab, Samsung Semiconductor Inc., San Diego, CA, 92121 USA (e-mail: {hongbing.c},{qi.zhan},{keebong.s}@samsung.com). This work was conducted while the first author was an engineering intern at Samsung Semiconductor Inc., San Diego, CA.

2 are expensive. This hinders the realization of digital baseband beamforming as in conventional multiple-input multiple-output (MIMO) systems [1]–[5] particularly in Massive MIMO settings [6]–[9]. Therefore, analog beamforming is usually preferred when all the antennas share a single RF chain and have constant-amplitude constraints on their weights [10]. With one RF chain, the channel coefficients cannot be directly observed. Instead, a noisy version of their linear combination weighted by a vector called the beamforming vector (codeword) is accessible. In the beam-sweeping process, the beamforming vectors are chosen from a pre-defined pool (codebook) of antenna weight vectors that are maintained at the transmitter and the receiver [11]. After the beam-sweeping process, we can attempt to estimate the channel coefficients and use the estimated channel to perform beamforming. Another method is to choose the beamformer/combiner pair that optimizes a certain cost function and use that pair for subsequent transmissions. We call this method as selection-based beamforming, and this will be the focus of our study. The constant modulus constraint imposed by the phase shifters is a major obstacle to optimizing the beamforming designs [12]. One common solution is to consider the discrete Fourier transform (DFT) codebook, which includes N beams, N being the number of antennas in the array. However, the DFT beams have a narrow beam width and limited sweeping resources; therefore, they provide limited coverage and performance. Hence, the challenge is to design a codebook of beamforming vectors with wide beam widths [13]. In addition, to improve the search efficiency, we may define a hierarchical of codebooks [14]–[16]. For example, a coarse codebook may be defined by using a small number of low-resolution beams that cover the intended angle range, whereas a fine codebook may be defined with a large number of high- resolution beams that cover the same intended angle range. In [17], the authors proposed an approach called BeaM Widening via SingleRF Subarray (BMW-SS), where they jointly used the subarray and the deactivation approach to create wide beams. To create wide beams, however, half of the array antennas might need to be deactivated; this limits the application of BMW-SS for mmWave communication. In addition, the proposed approach may not be extended to arrays with an arbitrary number of antenna elements. In [11], a three-level hierarchical codebook was proposed, but it provided a limited beamforming gain. In [14], codewords with wide beams were generated by summing two codewords with narrow beams, but the constant module constraint was not satisfied. In [15], the hybrid precoding structure was used to shape wide beams by exploiting the sparse reconstruction approach, but the wide beams could be shaped accurately

3 only when the number of RF chains was large enough; otherwise, deep sinks appeared within the spatial domain. Another method for creating wider beams falls under the beam-pattern synthesis (BPS) problem [18], [19], where the goal is to design the beamforming vector (codeword) such that it generates some pre-defined beam patterns. For example, in [20], the preferred beamforming vectors were selected to approximate a beamforming gain mask by using a low complexity local search algorithm. In [21], the analog codewords were designed to minimize the MSE between the pre-defined beam patterns and the beam pattern generated by the beamforming vector. In [22], the authors proposed a codebook design by formulating the BPS as an optimization problem by using both the ripple and the transition band of beam patterns. However, imposing pre-defined shapes on the beam patterns limits both the performance of the codebook and its adaptability to different array shapes, such as Uniform Linear Array (ULA), Uniform Planar Array (UPA) and Uniform Circular Array (UCA). In addition, considering a hierarchical design is mainly beneficial when the channel is modeled as a one-ray channel (Line-of-sight); otherwise, the hierarchical design might not capture all the available power [17]. Also, there is error propagation in the search process, which can reduce the beamforming performance. The design of the analog-only beamforming vectors with certain shapes or beam widths relies mostly on the beam steering of ULAs. It is difficult to apply this design to non- ULAs because of the lack of intuition about their beam patterns [23], [24]. Indeed, most antennas already deployed in cellular systems are UPAs, which necessitates the need for a more flexible framework considering different antenna configurations. Besides, the existence of quantized phase shifters complicates the design of non-overlapping beam patterns, which might require an exhaustive search over a large space given the large number of antennas [15]. However, the search complexity involved in determining the optimal beamformers by using the exhaustive search algorithm increases exponentially with the number of antennas and the resolution of the phase shifters; this limits and complicates their implementation [16], [20]. Quantized beamforming with perfect knowledge of channel state information (CSI) is also considered in [25], [26]. However, because of the large size of the antenna arrays and the limited number of sweeping resources, the acquisition of CSI matrices could be challenging and would require a more efficient design for the quantized analog beamforming vectors for UPAs without any CSI information. In this paper, we propose a new framework to design analog beamforming codebooks that enable us to design analog beam vectors without any restrictions on the beam patterns, the number

4 of antennas, or the antenna array shape. We model the codebook design for analog beamforming as a vector quantization problem [27] to seek the codebook that optimizes the performance metric over all possible codebooks. A widely used design approach defines the data source through the use of a finite training set, and uses an iterative procedure called the generalized Lloyd algorithm to generate a codebook [28]. Similarly, our iterative method uses training channel vectors generated based on the system characteristics to output a locally optimal codebook. After the initialization step, the iteration begins by assigning each training channel vector to its “best fit” codeword based on some closeness (distortion) measure and an exhaustive search. Next, given a set of training vectors assigned to a particular codeword, the corresponding codeword is modified to optimize the performance metric relative to its currently assigned training vectors. The algorithm is essentially the same as the k-means algorithm used in pattern recognition [29] where the codebook design can be interpreted as an unsupervised learning problem to optimally cluster all the training channel vectors and find an optimal codeword for each cluster in order to optimize a desired metric. Unlike [30], where an algorithm was proposed to minimize a specific distortion function for ULAs, our generalized Lloyd-based (LB) framework can be applied to various performance metrics including the average beamforming gain, outage, and the average data rate. In addition, we applied the proposed algorithm to the UPAs that were widely used in the 3GPP standards (see 3GPP TR 38.901) with an arbitrary number of antennas. Due to the flexibility of our proposed method even with a low-resolution phase shifter, this method can outperform existing analog beamforming methods with unlimited resolutions. In summary, the contributions of this research are as follows: • We propose a general LB algorithm to design analog beamforming codebooks using different number of codewords. • We consider different antenna array shapes including ULA, which is the most common array shape in the literature, and UPA, which is more practical and insufficiently investigated in literature. • We propose various codebooks intended for optimizing different metrics including the average beamforming gain, the average data rate, and the outage. • We also consider quantized phase shifters and show that our proposed codebooks outperform the existing codebooks having ideal phase shifters. • We compare the performance of our proposed LB codebook with the DFT (beam-steering), BMW-SS [17], and BPS [19] codebooks using extensive simulations.

5 The rest of paper is organized as follows. In Section II, we present the general settings, including the spatial response description in the 3GPP antenna model, the system model assumptions, and the evaluation metrics. In Section III, we present some codebooks in literature and explain their drawbacks. In Section IV, we introduce our proposed framework including some preliminaries on the Lloyd’s algorithm and our generalized algorithm for designing codebooks. We also consider the quantized phase shifters. Then, we provide extensive performance simulations in Section V. Finally, we present our concluding remarks in Section VI. II. G ENERAL S ETTINGS We consider a mmWave communication system with antenna arrays of NT and NR elements equipped at the transmitter and receiver, respectively. Please note that we assumed single antenna array and single RF chain throughout the report, however, the codebook designs can be extended to multiple antenna arrays and multiple RF chains [31]. A. Spatial Response We first describe 3GPP antenna model [e.g. see TR 38.901]. Antennas are defined in 3D coordinate system as in Fig. 1. The incoming ray is represented by a pair of two angles (θ, φ), where θ denotes angle to the zenith and φ is the angle between the projection of incoming ray to x-y plane and the x axis. Antennas are located in y-z plane with Nv elements in vertical direction and Nh elements in horizontal direction. The spacing between two elements are dv and dh in vertical and horizontal directions, respectively. For 1D array, Nh will reduce to 1 and Fig. 1: 3GPP coordinate system for antenna array

6 array response in φ is identical. We define antenna index (nv , nh ) as the nv th antenna in vertical column and the nh th antenna in horizontal row. Assuming a planar wave model, the location of antenna elements introduce phase offsets. The offset at Antenna (nv , nh ) can be written as [32]: dv dh vnv ,nh (θ, φ) =exp j2π (nv − 1) cos(θ) + (nh − 1) sin(θ)sin(φ) λ λ nh = 1, · · · , Nh , nv = 1, · · · , Nv (1) Assume that Antenna (nv , nh ) applies phase shift of wnv ,nh , then the array response of antenna ∗ P system is defined as A(w, θ, φ) = nv ,nh wnv ,nh vnv ,nh (θ, φ) . The spatial response or the beam pattern of the antenna system is then defined as B(w, θ, φ) = A(w, θ, φ)PE (θ, φ), where PE (θ, φ) denotes the directionality of antenna elements and for an isotropic element PE (θ, φ) = 1. In this work, we consider isotropic elements, however, our proposed framework can also be applied to directional antenna elements. For simple and unified representation, we define Nv × Nh matrices of W and V (θ, φ) containing wnv ,nh and vnv ,nh (θ, φ) as their (nv , nh )th element, respectively. Then, the spatial response (beam pattern) of the corresponding codeword can be written as 2 B(w, θ, φ) = wH v(θ, φ) where w = vec(W ) and v(θ, φ) = vec(V (θ, φ)). Note that the mentioned representation can constitute any antenna array shape with N antenna elements given the corresponding phase offsets vector. B. System Model The received signal at the receiver can be written as: p y = Ptot wH H R HwT s + w R n (2) where s denote the transmitted symbol with unit power, wT and wR are the NT × 1 transmit and NR × 1 receive beamforming vectors, respectively, H is the NR × NT channel matrix and n is the Gaussian noise vector with power N0 , i.e., E(nnH ) = N0 INR . Beamforming vectors n o are chosen from W (N ) = √1N [ejθ1 , ejθ2 , · · · , ejθN ] θi ∈ [0, 2π), i = 1, · · · , N where √1N is a normalization factor such that all the vectors have unit power [17]. The channel matrix can be modeled by the combination of a line-of-sight (LOS) path and a few non-line-of-sight (NLOS) paths as [33]: r s I κ 0 0 H 0 0 1 X i H= vR (θR , φR )v T (θT , φT ) + αi vR (θR , φiR )v H i i T (θT , φT ) (3) κ+1 I(κ + 1) i=1 where κ is the Ricean K-factor, αi ∼ CN (0, 1) is the complex channel gain, I is the number of NLOS paths. Each ray is represented by a pair of two angles (θ, φ) where θ denotes angle

7 to the zenith and φ is the angle between the projection of incoming ray to x-y plane and the x axis as shown in Fig. 1. v{R/T } (., .) is a N{R/T } × 1 vector representing the phase offsets introduced at receive/transmit antenna elements. The average power transmitted from each transmit antenna equals Ptot /NT and the total radiated power from the transmitter is thus equal to Ptot . After combining the signals from all receive antenna elements, the effective received signal-to-noise ratio (SNR) is defined as δR = Ptot |wH 2 R HwT | /N0 . The total beamforming gain due to beamforming at the transmitter and the receiver can be denoted as GB = |wH R HwT | 2 [17]. C. Selection-based Beamforming In the selection-based beamforming, a set of codewords is chosen from W (N ) to create the beamforming codebook. After evaluating all the codewords within the pre-designed codebook, the best one which maximizes the desired metric is chosen and used in successive transmissions. Assuming K sweeping resources, then, the beamforming codebook is denoted as an N × K matrix, W, containing beamforming codewords on its columns. Then, the commonly used beam- sweeping process refereed as ping-pong sampling [13] can be explained as follows. During Tx beam-sweeping, the receive beamforming vector can be set to omni-directional beam and then the obtained sample by evaluating the kth codeword in the Tx codebook can be written as: p H H y[k] = Ptot womni R HWT [k] + womni R n[k], k = 1, · · · , K (4) where K is the number of Tx beam-sweeps. The receiver feedbacks the best Tx beamforming vector, i.e., wopt T = WT [kopt ], with kopt = arg maxk |y[k]|2 . After Rx measurement and feedback, the Tx beam is selected and will be kept the same in the Rx beam-sweeping process. At the receiver side, all the codewords in the Rx codebook are applied. Similarly, the receiver chooses the best receive beamforming vector, i.e., wR opt by observing K 0 samples of H p y[k 0 ] = Ptot WR [k 0 ] Hwopt 0 H T + WR [k ] n[k ], 0 k 0 = 1, · · · , K 0 (5) where K 0 is the number of Rx beam-sweeps. Then, the pair of (wopt opt T , w R ) is used for successive transmissions. Consequently, the effective beamforming gain associated with Tx and H Rx codebooks can be denoted as GB (WR , WT ) = |wopt R Hwopt 2 T | . Because the beamforming processes are the same at the transmitter and the receiver, we focus on designing the codebook at the receiver side and the same codebook can be used at the transmitter (the index of T/R is discarded).

8 D. Metrics for Designing Codebooks 1) Average beamforming gain: Different metrics can be considered to compare the codebooks. One of the common metrics is the average of beamforming gain over different channel 2 H realizations, defined as GB (W) = Eh [GB (W)] where GB (W) = wopt h . Neglecting the 2 beam mis-detection, the effective beamforming gain reduces to GB (W) = maxk W[k]H h h i 2 and hence GB (W) can be written as Eh maxk W[k]H h . Then, the codebook design can be formulated as designing the matrix W which includes K codewords from the feasible set W (N ) maximizing: H 2 Javg = Eh max W[k] h (6) k=1,··· ,K 2) Outage: Considering the randomness in the channel vectors, the effective beamforming gain, i.e., GB (W), is a random variable whose distribution depends on distribution of h and also the beamforming codebook. Although the average metric, i.e., GB (W), is an important metric in analyzing system performance, in some applications, the individual performance in each realization is of greater importance. This motivates us to define the outage metric as: H 2 Jout (γ) = P r max W[k] h < γ (7) k=1,··· ,K where γ is a performance threshold specified by the system requirements. The coverage can be defined as the complimentary event of outage as Jcov (γ) = 1 − Jout (γ). Normalizing the threshold by the maximum possible gain, i.e., γ̂ = γ/N , Jcov (γ) and Jout (γ) can be called the γ̂-coverage and the γ̂-outage, respectively. For example, for a 2 × 2 UPA, Jcov (2) and Jcov (1) are called 1/2-coverage and 1/4-coverage or conventionally 3dB-coverage and 6dB-coverage, respectfully. To have a unified framework, we rewrite theoutage metric as follows Jcov (γ) = h i 1 x ≥ 0 H 2 Eh sign maxk W[k] h − γ where sign(x) = . We further simplify the outage 0 x < 0 metric by replacing the sign()˙ function which is not differentiable with sigmoid function defined 1 as: sigmoid(x) = where α is a metric to adjust the steepness of the curve. Thus, the 1+e−αx h i 2 coverage metric can be approximated by Jcov (γ) ≈ Eh sigmoid maxk W[k]H h − γ . 3) Average Data Rate: Average data rate is another important criterion which can be defined as: H 2 Jrate = Eh log2 1 + max W[k] h (8) k=1,··· ,K

9 Other metrics, e.g. bit error rate (BER) performance, can also be considered, thus we propose a unifying approach that can be applied to various performance metrics. Before delving into details of our proposed framework, some of the codebooks in the literature are analyzed in the next Section. III. P ROBLEM STATEMENT Here, we present and discuss some of the existing beamforming codebooks and their drawbacks. Most of the work in the corresponding literature considers the 1D antenna array (ULA), for which the steering vector reduces to a vector, the only input of which is the angle d d to the zenith, v(θ) = [1, ej2π λ cos(θ) , · · · , ej(N −1)2π λ cos(θ) ]T . Assuming a uniform distribution for θ over the spatial domain Ψ, the spatial response can be considered a random variable for any given codeword. For example, for the omni-directional codeword, the spatial response is equal to 1, i.e., B(w) = 1, with a probability of 1. The other common codeword is termed the beam- steering codeword and is defined as w = √1 v(θ). The beam-steering codeword can achieve N the largest array gain toward its directionality, i.e., N ; however, owing to its narrow beam, it has poor performance for other values of θ. To further analyze the behavior of a codebook, 2 we extend the definition of spatial response to B(W) = maxk W[k]H v , which is termed the effective spatial response of the codebook. Assuming θ to be uniformly distributed in [0, 180], the cumulative density function (CDF) of the effective spatial response for the omni-directional codeword and beam-steering codebook with different numbers of codewords is shown in Fig. 2. The beam width of the Beam-Steering codewords are inversely proportional to the number of Fig. 2: CDF of effective spatial response antennas, meaning that, when we increase the number of antennas the beams get narrower with

10 smaller beam width. Therefore, with limited number of codewords, the beam-steering codebook fails to provide reliable performance as shown in Fig. 2. It can be observed that 1,2, or even 3 beam-steering codewords provide a worse performance than omni-directional codeword with the probability of more than half. By increasing the number of codewords, more reliable performance is achieved, specifically, for DFT codebook with N = 8, P r(B(W) < 3.2) = 0. The main problem in analog beamforming is that the number of beam-sweeping resources is usually much lower than that of antenna elements. Therefore, the DFT codebook is not a good candidate owing to narrow beam width of its codewords. One solution offered in literature is deactivation, whereby the antenna elements are deactivated to provide wider beams [34]. However, to create wide beams, the number of active antennas becomes small, which limits the maximal total transmission/reception power of a mmWave device. Another solution is using the sub-array technique. In particular, if a large antenna array is divided into multiple sub-arrays and these sub-arrays point at sufficiently-spaced directions, a wider beam can be shaped. The combination of these two methods is termed BMW-SS in [17] and follows a hierarchical design with log2 (N ) levels, with N being the number of antenna elements. For example, BMW-SS (a) level 1: 2 codewords (b) level 2: 4 codewords (c) level 3: 8 codewords Fig. 3: Beam patterns of BMW-SS codebook codebook for ULA with 8 antenna elements is shown in Fig. 3. Note that the last level coincide with the DFT codebook. It can be seen that, the codewords in the second level suffer from power reduction due to antenna deactivation. In addition, BMW-SS codebook is only applicable to ULAs with the number of elements being a power of two. There are other works in the literature which constraint the spatial response to some pre-defined shapes and then attempt to synthesize it with various algorithms [20], [22]. For example, in Fig. 4, the algorithm in [19] is used to generate a codebook with three levels for ULA with 32 antenna

11 elements. Imposing pre-defined shapes on beam patterns, e.g., rectangular-like beam patterns, limits the performance and requires large number of antennas to be realizable [21]. Unlike ULA (a) level 1: 2 codewords (b) level 2: 4 codewords (c) level 3: 8 codewords Fig. 4: Beam patterns of BPS codebook where many codebooks are proposed in the literature, there are very few works considering 2D antenna arrays, in particular UPA. Authors in [17] propose using Kronecker product to extend the 1D codebooks to 2D arrays. Similarly, beam pattern synthesis methods are proposed to synthesize the cubic-like beam patterns [24]. Another solution for 2D antenna arrays is using beam-steering codewords, where w = √1 v(θ, φ). However, unlike ULA, the shape of covered N space is much more complicated and changes with different steering angles. When steering angle is around the center, the covered space is more like a circle. When beams are steered towards the edge direction, the covered space has irregular shape. Thus, choosing the peak directions of beam-steering vectors is particularly challenging in 2D. Choosing the peak directions are out of scope of this work, however, two examples of steering angles for 3 codewords and 4 codewords are listed in Table I. The beam patterns of the beam-steering codebooks, given in Table I, are TABLE I: beam-steering codebooks with 3 and 4 codewords for 2 × 2 UPA number of codewords beam-steering angles (θ, φ) 3 [(90.0, 35.3),(120.0, 19.5),(60.0, 19.5)] 4 [(90.0, 0.0),(41.4, 40.9),(90.0, 60.0),(138.6, 40.9)] shown in Figs. 5 and 6. However, the extension of the beam-steering codebooks to a larger number of antennas and larger codebook sizes is not straightforward.

12 (a) 3dB-coverage (b) 3D beam patterns Fig. 5: Beam patterns of beam-steering codebook with 3 codewords (a) 3dB-coverage (b) 3D beam patterns Fig. 6: Beam patterns of beam-steering codebook with 4 codewords The drawbacks of the mentioned codebooks, and more importantly, the lack of a general codebook design for 2D arrays, motivate us to propose a general framework encompassing different array shapes with different numbers of elements and various performance metrics. IV. T HE N EW C ODEBOOK D ESIGN F RAMEWORK A. Preliminaries One of the closely related topics to our problem, i.e., codebook design for analog beamforming, is the quantization problem, particularly, the vector quantization. A vector quantizer of dimension N and size K is a mapping from a vector in N-dimensional Euclidean Distance RN into a finite set C containing K output or reproduction points. We can write it mathematically as Q : RN → C where C = {C[1], · · · , C[K]} and C[k] ∈ RN . The set C is called the codebook, and C[k], 1 ≤ k ≤ K, are called the code vectors or codewords. To measure the vector quantizer performance, a distortion measure d(s, Q(s)) has to be defined in association with any input

13 vector s and its reproduction vector Q(s), and consequently the performance of a vector quantizer can be quantified by average distortion as J = Es {d(s, Q(s))} [35]. To permit tractable analysis and easy evaluation, the distortion measure is often chosen to be the squared error, i.e., |s−Q(c)|2 . The algorithm often used for generating the codebook is referred to as generalized Lloyd algorithm, since it is a vector generalization of the well-known clustering algorithm due to Lloyd [36]. Generalized Lloyd algorithm is an iterative algorithm based on a set of training vectors which can be described as follows: • Initialization: The initialization step involves choosing the starting codebook of vectors, i.e., C0 = {C0 [1], · · · , C0 [K]} • Partitioning: Given a codebook Ci obtained from the ith iteration, find the optimal partitioning of the space RN using the least-distortion condition, i.e. Ωi [k] = s| |s − Ci [k]|2 < |s − Ci [j]|2 , j ∈ {1, · · · , K} − {k} (9) • Codeword-Updating: For a given partitioning {Ωi }, find the so-called centroids of each cell, i.e. Ci+1 [k] = arg min Es|s∈Ωi [k] |s − c|2 , k = 1, · · · , K (10) c The solution to the above optimization problems can be obtained as Ci+1 [k] = E[s|s ∈ Ωi [k]], k = 1, · · · , K [37]. For a finite training set, the expected value is replaced by the sample mean of the corresponding cell. • iterate until the convergence criteria is satisfied. Note that many different initialization methods have been proposed, including random coding, pruning, pairwise nearest-neighbor design, product code, and splitting. A thorough survey of these methods can be found in [28]. In addition, to improve the performance of the vector quantization codebook, methods other than the standard generalized Lloyd algorithm have been examined, e.g., using stochastic relaxation, such as the simulated annealing [38]. Next, our codebook design algorithm for analog beamforming is introduced. B. Proposed Algorithm After brief description of the Generalized Lloyd algorithm, the time is ripe to explain our proposed method. We design an algorithm for maximizing a general performance metric defined

14 as follows: H 2 J = Eh f max W[k] h (11) k=1,··· ,K The algorithm can be described as follows: • Generating Training Points: Generate L training vectors of hl , l = 1, · · · , L. • Initialization: Generate initial codewords, W0 = {W0 [1], · · · , W0 [K]} • Partitioning: Partition all the training vectors into K cells, such that Ωi [k] = h| |Wi [k]H h|2 > |Wi [j]H h|2 , j ∈ {1, · · · , K} − {k} • Codeword-Updating: To update the codewords in each iteration, we need to maximize 1 P H 2 J[k] = |Ω[k]| h∈Ω[k] f |w h| . In other words: 1 X f |wH h|2 , s.t. w ∈ W (N ) Wi+1 [k] = arg max (12) w |Ωi [k]| h∈Ωi [k] where f (.) can be any desired metric function. Unfortunately, there is no closed-form solution for a general function, thus we use the Gradient decent method to update the codewords in each iteration. Note that this method can work with any differentiable function. The derivative of J[k] with respect to the vector θ, can be denoted as: ∂J[k] 1 X ∂f ∂x ∂w = (13) ∂θ |Ω[k]| ∂x ∂w ∂θ h∈Ω[k] ∂J[k] where x is the input variable of function f (.). After some calculations, ∂θ can be calculated as: ∂J[k] 1 X f 0 |wH h|2 wH hhH Θ = (14) ∂θ |Ω[k]| h∈Ω[k] where Θ is a diagonal matrix whose nth diagonal element is equal to jejθ(n) . Then, the ∂J[k] phase shifts of the kth codeword can be updated as θk (i+1) = θk (i) + ∂θk where @θk (i) is the step size and should be tuned carefully along with the number of iterations. • Iterate until convergence criteria is satisfied. Remarks: The training points can be empirical points obtained by measurements or drawn from some distributions based on the characteristics of the system. If no prior information is available, uniform spatial coverage, i.e., single-ray with uniform angle of arrival (AOA), can be considered. The proposed algorithm is a decent algorithm, i.e., at each iteration in the algorithm a positive improvement in performance is achieved over the previous iteration, which converges to a local optimal. Powerful initialization techniques and optimization methods that introduce elements of

15 randomness into the algorithm can be applied to improve the resulting performance [38]; however, in this work, to disclose the main concepts, we simply use random initialization and standard gradient decent method as described above. Further improvements in the proposed algorithm can be considered for future work. The algorithm iterates until some convergence criteria, e.g., the difference between two consecutive objective metrics, is satisfied. The flowchart of the algorithm is shown in Fig. 7. The proposed algorithm scheme has several attractive properties. First, it can be applied to arbitrary codebook sizes. Second, it is indifferent to the training channel vectors and it can be applied to different array shapes including ULA, UPA and UCA. Finally, it can be employed to optimize various performance metrics, e.g., average beamforming gain (f (x) = x), average data rate (f (x) = log(1 + x)) and outage (f (x) = sigmoid(x − γ)). Fig. 7: Flowchart of the proposed algorithm C. Outage/Coverage Analysis Here, the effect of the optimization metric in the effective spatial response is shown. In Figs. 8a and 8b, the effective spatial response of two codebooks with 8 codewords are shown which

16 are designed to optimize Javg and Jcov (8), respectively, for a 4 × 4 UPA antenna array. The 3dB-outage of the two codebooks optimizing Javg and Jout (8) are 19% and 15%, respectively. In Figs. 9a and 9b, the 6dB-coverage of the codebooks optimizing Javg and Jout (4) are shown., respectively. The 6dB-outage of the two codebooks are 7% and 0.1%, verifying the effectiveness of the proposed algorithm for minimizing the outage. More simulation results are shown later, in Section V. (a) The LB codebook optimizing Javg : (b) The LB codebook optimizing Jout (8): Jout (8) = 19% Jout (8) = 15% Fig. 8: 3dB-coverage (a) The LB codebook optimizing Javg : (b) The LB codebook optimizing Jout (4): Jout (4) = 7% Jout (4) = 0.1% Fig. 9: 6dB-coverage D. Quantized Phase Shifters So far, we have assumed ideal phase shifters with no constraint on the precision of introduced phase shifts. However, in practice, phase shifters might be limited to few quantized values.

17 Assume that the value of each phase shifter is specified by B bits. Then, the codebook vectors can only be chosen from 2N B feasible quantized vectors. In other words, the feasible set, i.e., W (N ), with an infinite number of entries, reduces to a quantized set with 2N B entries. The most obvious solution for designing the desired codebook with K codewords is an exhaustive search NB of all 2 K combinations of feasible vectors to select the best combination that optimizes our desired metric. However, the complexity of the exhaustive method hinders the practicality of this method. Therefore, to design the codebook, we combine the projection approximation with the proposed algorithms in the previous section. At the end of each iteration, we project the found codewords to the closest vectors in the feasible set of quantized vectors. Furthermore, to avoid divergence, we only update the codeword when the new feasible option is an improvement over the previous feasible option. 1) Quantized Codebook for Optimizing Javg : In Fig. 10a, the effect of quantization in the average beamforming gain is shown. A 2 × 2 UPA array with 4 codewords and a 4 × 4 UPA array with 8 codewords is considered. To achieve the performance of ideal codebook with no quantization, 5 bits per antenna is required. The performance of 1-bit phase shifters depends on the number of antennas in the array. For example, in a 4 × 4 UPA array 12% and in a 2 × 2 UPA array 37% loss occurs, thus, large number of antennas compensates for the loss of quantization and very low resolution phase shifters can enjoy negligible loss when the array size is large. Further analysis are left for future work. 2) Quantized Codebook for Optimizing the Outage Metric: In Fig. 10b, the effect of quantization in the outage probability is shown. As you can see, to reach the ideal outage performance, 3 bits and 5 bits per antenna are required when the array size is 4 × 4 and 2 × 2, respectively. However, 1-bit phase shifter does not provide good outage performance, particularly, when the size of array is large. V. P ERFORMANCE E VALUATION Here, we provide extensive simulations to evaluate the performance of our proposed LB codebooks in different scenarios considering ULA/UPA, LOS/NLOS, and ideal/quantized phase shifters, as well as different performance metrics.

18 (a) Average performance metric (b) Outage performance metric Fig. 10: Comparison of quantized codebook with ideal codebook A. Comparison of Averaged Beamforming Gain for ULA In this section, the average beamforming gain of different codebooks is compared for ULAs with 8 and 16 antennas. In the simulation set-up, I = 5 NLOS paths are considered. For LOS and NLOS scenarios, the Ricean factors are assumed to be 100 (20dB) and 1 (0dB), respectively. The average is taken over 105 different realizations (in each realization, θR i is chosen uniformly from [0, 180]), and the channel gains and noise samples are drawn from CN (0, 1). The beam- steering codebook is created by considering an equi-spaced direction. Assuming K sweeping times, the BMW-SS and BPS codebooks follow a hierarchical design with K/2 levels, with two codewords evaluated at each level. For a fair comparison, (4,6) and (6,8) sweeping times are considered for ULAs with 8 and 16 antennas, respectively. The LB codebooks are designed to optimize Javg , where the training channel vectors are single-rays whose AOA is uniformly distributed in [0, 180]. In Fig. 11, 4 sweeping times are considered; thus, the BMW-SS and BPS codebooks each consist of 2 levels. The LB codebook provides the best average beamforming gain, approximately 4 dB, 2dB, and 1dB more than the BMW-SS, beam-steering, and BPS codebooks, respectively. With a dominant LOS path, the hierarchical designs, particularly the BPS codebook, get closer to the LB codebook in terms of performance. In the low SNR regime, the hierarchical designs suffer from error propagation in the search step for choosing the best codeword, and the performance is even worse than that of the beam-steering codebook. In Fig. 12, 6 sweeping times are considered; thus, the hierarchical codebooks, i.e., BPS and BMW-SS, contains 3 levels, and the last level of the BMW-SS codebook is the DFT codebook. In the low SNR regime, the LB codebook provides approximately 1 and 2.5 dB gains compared with the

19 (a) LOS (b) NLOS Fig. 11: Performance comparison of ULA with 8 antenna elements and 4 sweeping times beam-steering and BPS/BMW-SS codebooks, respectively, in both, the LOS and NLOS scenarios. In the high SNR regime and LOS scenario, the hierarchical codebook performance is very close to that of the LB codebook, particularly the BMW-SS codebook, whose last level coincides with the DFT codebook. However, in the NLOS scenario, the LB codebook provides better performance. In Fig. 13, a ULA with 16 antenna elements and 6 sweeping times is considered. (a) LOS (b) NLOS Fig. 12: Performance comparison of ULA with 8 antenna elements and 6 sweeping times The LB codebook provides better performance, especially under the Low SNR regime and NLOS scenario. The BPS codebook can achieve the performance of the LB codebook under the high SNR regime and LOS scenario; however, at low SNR it performs even worse than the beam-steering codebook. The BMW-SS codebook has poor performance because of antenna deactivation. In Fig. 14, the BMW-SS codebook slightly outperforms the LB codebook in high SNR and LOS scenario. However, in other scenarios, the LB codebook provides significant gain,

20 (a) LOS (b) NLOS Fig. 13: Performance comparison of ULA with 16 antenna elements and 6 sweeping times particularly in low SNR regime which it provides around 4dB (100%) gain. In summary, the (a) LOS (b) NLOS Fig. 14: Performance comparison of ULA with 16 antenna elements and 8 sweeping times LB codebook provides significant beamforming gain in ULAs, particularly in NLOS scenario and also low SNR regime. Besides the effectiveness of our proposed method for ULAs, it can be easily adapted to other array shapes like UPAs which is evaluated next. B. Comparison of Average Beamforming Gain for UPA In this section, the average beamforming gain of different codebooks are compared for UPA with 2 × 2 and 4 × 4 number of antennas which are commonly used in 3GPP specifications. Similarly, the average is taken over 105 different realizations of channel, noise vectors, and also i θR and φiR which are chosen uniformly from [0, 180] and [−90, 90], respectively. The Kronecker extension of BMW-SS and Beam-Sweeping codebooks, 2D BPS codebooks and proposed LB

21 codebooks are compared. hierarchical codebooks evaluate 4 codewords in each level, thus 4 and 8 sweeping times is considered. The LB codebooks are designed to optimize Javg where the training channel vectors are single-rays whose AOAs are uniformly distributed in θ ∼ [0, 180] and φ ∼ [−90, 90]. In Fig. 15, 2 × 2 UPA with 4 sweeping times is considered. The LB codebook is providing around 1 dB (100%) gain compared with other codebooks, in both LOS and NLOS scenarios. In Fig. 16, 4 × 4 UPA with 4 sweeping times is considered. As it can be seen, noticeable (a) LOS (b) NLOS Fig. 15: Performance comparison of UPA with 2 × 2 antenna elements and 4 sweeping times gain is achieved by using the LB codebook. The BMW-SS has the worst performance due to antenna deactivation. In Fig. 17, 4 × 4 UPA with 8 sweeping times is considered. Thus, the (a) LOS (b) NLOS Fig. 16: Performance comparison of UPA with 4 × 4 antenna elements and 4 sweeping times BMW-SS, beam-steering and BPS codebooks consists of 2 levels which result in improvement in their performance. However, the LB codebook still outperforms the other codebooks. In the next section, the codebooks are compared in terms of their effective spatial responses.

22 (a) LOS (b) NLOS Fig. 17: Performance comparison of UPA with 4 × 4 antenna elements and 8 sweeping times C. Effective Spatial Response As explained before, the effective spatial response of a codebook, i.e., B(W, θ) = 2 2 maxk=1,··· ,K W[k]H v(θ) for ULA and B(W, θ, φ) = maxk=1,··· ,K W[k]H v(θ, φ) for UPA, can be considered as a random variable depending on the codebook W. We compare the CDF of spatial response for different codebooks, assuming θ and φ to be uniformly distributed over [0, 180]. We use CDF to capture all the properties of effective spatial response, as the average or max/min metrics might be unable to show the distinctions between the proposed codebooks. In Fig. 18, ULA with 8 antenna elements with different number of codewords are considered. The LB codebooks in this section are designed to optimize Jout (γ) for different values of γ. In Fig.18a, 2 codewords are considered and all three codebooks of beam-steering, BMW-SS and BPS provide B(W) ≈ 1.5, however, their reliability in performance is different. For example, for both BMW- SS and BPS we have P r(B(W) < 1) ≈ 0.3, however, for the beam-steering codebook we have P r(B(W) < 1) ≈ 0.73. Although BMW-SS and BPS codebooks provide more reliability they cannot obtain the maximum gain which can be possibly achieved by the array. Interestingly, the proposed framework provides great flexibility and enables us to design different codebooks satisfying different system requirements. The codebook designed to optimize Jout (γ) provides the least outage at the given threshold, γ, verifying the effectiveness of our proposed method. For example, in Fig. 18a, where 2 codewords are considered, Jout (1) = 0, Jout (1.5) = 15%, Jout (2) = 33%, Jout (2.5) = 47% and Jout (3) = 53% are obtained by the codebooks designed with the corresponding outage threshold. The codebook designed with γ = 3 provides the highest average spatial response B(W) = 3. On the other hand, the codebook with γ = 1

23 (a) 2 codewords (b) 4 codewords (c) 8 codewords Fig. 18: CDF of effective Spatial Response for ULA with 8 antenna elements provides Jout (1) = 0 while LB codebooks with γ = 1.5, 2, 2.5, 3, BMW-SS, BPS and beam- steering codebooks provide Jout (1) = 12%, Jout (1) = 27%, Jout (1) = 38%, Jout (1) = 49%, Jout (1) = 30%, Jout (1) = 38% and Jout (1) = 73%, respectively. Thus, the outage threshold can be adjusted based on the system requirements. Same analysis is shown in Figs. 18b and 18c for 4 and 8 number of codewords, respectively. The maximum value of B(W) for 2, 4 and 8 codewords is equal to 3, 4.3 and 6.3, respectively. In addition, the maximum value of γ such that Jout (γ) = 0, is equal to 1.2, 1.7 and 3.2 for 2, 4 and 8 number of codewords, respectively. Our framework can be utilized to design the system parameters, e.g., number of required sweeping resources, such that specific performance metrics are satisfied. In addition, the beam patterns of (a) γ = 1 (b) γ = 2 (c) γ = 3 Fig. 19: Beam patterns of LB codebook with 2 codewords and different outage thresholds LB codebooks with different values of γ are shown in Figs. 19, 20 and 21. It can be noted that the beam patterns are flexible and can take irregular shapes unlike the BPS codebook where the beam

24 (a) γ = 1.5 (b) γ = 2 (c) γ = 3 Fig. 20: Beam patterns of LB codebook with 4 codewords and different outage thresholds (a) γ = 3 (b) γ = 3.5 (c) γ = 4 Fig. 21: Beam patterns of LB codebook with 8 codewords and different outage thresholds patterns are dictated to take some pre-defined shapes. In Fig. 22, 2×2 UPA with 3 and 4 number of codewords are considered. In Fig. 22a, the codebook presented in Table I and LB codebooks optimizing Jout (γ = 1.5, 2, 2.5, 3) are considered. In Fig. 22b, the codebook presented in Table I, Kronecker extension of BMW-SS, 2D BPS and LB codebooks optimizing Jout (γ = 2, 2.5, 3) are considered. The LB codebooks provide better outage performance compared with other codebooks. For example, when 4 codewords are considered, 3dB-outage of LB codebooks is almost zero except the one for γ = 3.5, while that of BPS and BMW-SS codebooks are around 35%. 3dB-outage of the proposed beam-steering codebook in Table I also equals zero, however, its outage at higher thresholds is worse than LB codebooks. The maximum value of B(W) for 3 and 4 codewords is equal to 3.3 and 3.4, respectively. Besides, the maximum value of γ such that Jout (γ) = 0 is equal to 1.8 and 2.2 for 3 and 4 number of codewords, respectively. The 3/4-coverage of LB codebooks with different values of γ are shown in Figs. 23, and 24,

25 respectively. Obviously, the codebooks optimizing Jout (3) provide the least 3/4-outage of 22% and 12% with 3 codewords and 4 codewords, respectively. (a) 3 codewords (b) 4 codewords Fig. 22: CDF of effective Spatial Response for UPA with 2 × 2 antenna elements (a) γ = 2 (b) γ = 2.5 (c) γ = 3 Fig. 23: 3/4-Coverage of LB codebook with 3 codewords and different outage thresholds D. Data Rate The data rate can also be considered as a random variable denoted by R(W) = log2 (1 + Ptot N0 GB (W)) which depends on the distribution of the channel vectors and also the codebook Ptot design. We plot the CDF of R(W) assuming N0 = 5dB and considering different codebooks including Beam-steering, BMW-SS, BPS and LB. The LB codebooks are designed by optimizing Jrate . In Fig. 25, the CDF of R(W) is shown for ULA with 8 antennas and 4 sweeping times, assuming 105 different realizations of noise vector and channel vector for LOS and NLOS scenarios. The LB codebook provides R(W) = 2.2 and R(W) = 1.8 in LOS and NLOS

26 (a) γ = 2 (b) γ = 2.5 (c) γ = 3 Fig. 24: 3/4-Coverage of LB codebook with 4 codewords and different outage thresholds scenarios, respectively, higher than that of other codebooks. It also provides better outage for every data rate threshold. For example, LB codebook provides P r(R(W) < 1) = 9% in LOS scenario, while BPS, BMW-SS and beam-steering codebooks provide 25%, 28% and 42% data rate outage. Similar analysis is shown in Fig. 26, for 2 × 2 UPA with 4 codewords. Higher average data rate and lower data rate outage are provided by using the LB codebook. (a) LOS (b) N-LOS Fig. 25: CDF of Data rate for ULA with 8 antenna elements E. Quantized Phase Shifters In this section, performance of the quantized codebooks designed with LB algorithm are analyzed. The average data rate, i.e., R(W), is considered and it is shown that the LB codebook with 2-bit phase shifters can outperform other codebooks with ideal phase shifters. In Figs. 27 and 28, 8-antenna ULA with 4 and 6 sweeping times are considered, respectively. The codebook

27 (a) LOS (b) NLOS Fig. 26: CDF of Data rate for UPA with 2 × 2 antenna elements with 4-bit quantized phase shifters provides almost the same average data rate and using 2-bit phase shifters suffers from ≈ 0.1(5%) loss in average data rate. Same analysis for 2 × 2 UPA with 4 codewords is provided in Fig. 29. (a) LOS (b) NLOS Fig. 27: Performance of quantized LB codebook with 4 sweeping times for 8 antenna ULA VI. C ONCLUSION In this work, we studied the codebook design for analog beamforming and proposed a new framework to design beamforming codebooks. The proposed method is inspired by generalized Lloyd algorithm and is able to optimize various performance metrics including, but not limited to, average beamforming gain, outage, and average data rate. In addition, unlike most of the work in the literature, which are limited to ULAs, the proposed algorithm can be applied to any array shapes with arbitrary phase offset vectors. We showed that our proposed codebook outperforms the codebooks in the literature with hierarchical designs; however, our framework

28 (a) LOS (b) NLOS Fig. 28: Performance of quantized LB codebook with 6 sweeping times for 8 antenna ULA (a) LOS (b) NLOS Fig. 29: Performance of quantized LB codebook with 4 sweeping times for 2 × 2 UPA can also be integrated with hierarchical designs by adjusting the objective function and the training channel vectors. We also considered quantized phase shifters and showed the superiority of our quantized codebooks when compared with the existing codebooks in the literature. In a nutshell, the proposed framework enables us to fully exploit analog beamforming; however, it can be further improved by making more diligent choices regarding training points, initialization, a stopping criterion, and number of iterations. The inclusion of an on-line adaption to modify the codebook each time a new subspace sample is observed can be possibly beneficial and interesting to analyze. R EFERENCES [1] H. Jafarkhani, Space-time coding: theory and practice. Cambridge university press, 2005. [2] A. Gershman and N. Sidiropoulos, Space-time processing for MIMO communications. John Wiley & Sons, 2005. [3] T. M. Duman and A. Ghrayeb, Coding for MIMO communication systems. John Wiley & Sons, 2008.

29 [4] M. Ganji and H. Jafarkhani, “Interference mitigation using asynchronous transmission and sampling diversity,” in Global Communications Conference (GLOBECOM), 2016 IEEE. IEEE, 2016, pp. 1–6. [5] X. Yu, J.-C. Shen, J. Zhang, and K. B. Letaief, “Alternating Minimization Algorithms for Hybrid Precoding in Millimeter Wave MIMO Systems,” J. Sel. Topics Signal Processing, vol. 10, no. 3, pp. 485–500, Apr. 2016. [6] E. G. Larsson, O. Edfors, F. Tufvesson, and T. L. Marzetta, “Massive mimo for next generation wireless systems,” IEEE communications magazine, vol. 52, no. 2, pp. 186–195, 2014. [7] L. Lu, G. Y. Li, A. L. Swindlehurst, A. Ashikhmin, and R. Zhang, “An overview of massive mimo: Benefits and challenges,” IEEE journal of selected topics in signal processing, vol. 8, no. 5, pp. 742–758, 2014. [8] M. Ganji and H. Jafarkhani, “On the performance of mrc receiver with unknown timing mismatch-a large scale analysis,” in 2018 IEEE International Conference on Communications (ICC). IEEE, 2018, pp. 1–6. [9] E. Björnson, E. G. Larsson, and T. L. Marzetta, “Massive mimo: Ten myths and one critical question,” IEEE Communications Magazine, vol. 54, no. 2, pp. 114–123, 2016. [10] S. Kutty and D. Sen, “Beamforming for millimeter wave communications: An inclusive survey,” IEEE Communications Surveys & Tutorials, vol. 18, no. 2, pp. 949–973, 2016. [11] J. Wang, Z. Lan, C.-W. Pyo, T. Baykas, C.-S. Sum, M. A. Rahman, J. Gao, R. Funada, F. Kojima, H. Harada et al., “Beam codebook based beamforming protocol for multi-Gbps millimeter-wave WPAN systems,” IEEE Journal on Selected Areas in Communications, vol. 27, no. 8, pp. 1390–1399, 2009. [12] O. El Ayach, S. Rajagopal, S. Abu-Surra, Z. Pi, and R. W. Heath, “Spatially sparse precoding in millimeter wave MIMO systems,” IEEE transactions on wireless communications, vol. 13, no. 3, pp. 1499–1513, Mar. 2014. [13] S. Hur, T. Kim, D. J. Love, J. V. Krogmeier, T. A. Thomas, and A. Ghosh, “Millimeter wave beamforming for wireless backhaul and access in small cell networks,” IEEE transactions on communications, vol. 61, no. 10, pp. 4391–4403, 2013. [14] L. Chen, Y. Yang, X. Chen, and W. Wang, “Multi-stage beamforming codebook for 60GHz WPAN,” Communications and Networking in China (CHINACOM), 2011 6th International ICST Conference on, pp. 361–365, Aug. 2011. [15] A. Alkhateeb, O. El Ayach, G. Leus, and R. W. Heath, “Channel estimation and hybrid precoding for millimeter wave cellular systems,” IEEE Journal of Selected Topics in Signal Processing, vol. 8, no. 5, pp. 831–846, 2014. [16] J.-C. Chen, “Efficient codebook-based beamforming algorithm for millimeter-wave massive MIMO systems,” IEEE Transactions on Vehicular Technology, vol. 66, no. 9, pp. 7809–7817, 2017. [17] Z. Xiao, T. He, P. Xia, and X.-G. Xia, “Hierarchical codebook design for beamforming training in millimeter-wave communication,” IEEE Transactions on Wireless Communications, vol. 15, no. 5, pp. 3380–3392, 2016. [18] B. Fuchs, “Application of convex relaxation to array synthesis problems,” IEEE Transactions on Antennas and Propagation, vol. 62, no. 2, pp. 634–640, 2014. [19] J. Liang, X. Fan, W. Fan, D. Zhou, and J. Li, “Phase-only pattern synthesis for linear antenna arrays,” IEEE Antennas and Wireless Propagation Letters, vol. 16, pp. 3232–3235, 2017. [20] P. Raviteja, Y. Hong, and E. Viterbo, “Analog beamforming with low resolution phase shifters,” IEEE Wireless Communications Letters, vol. 6, no. 4, pp. 502–505, 2017. [21] J. Song, J. Choi, and D. J. Love, “Codebook design for hybrid beamforming in millimeter wave systems,” in Communications (ICC), 2015 IEEE International Conference on. IEEE, 2015, pp. 1298–1303. [22] J. Zhang, Y. Huang, Q. Shi, J. Wang, and L. Yang, “Codebook design for beam alignment in millimeter wave communication systems,” IEEE Transactions on Communications, vol. 65, no. 11, pp. 4980–4995, 2017. [23] J. Choi, K. Lee, D. J. Love, T. Kim, and R. W. Heath, “Advanced limited feedback designs for FD-MIMO using uniform planar arrays,” in Global Communications Conference (GLOBECOM), 2015 IEEE. IEEE, 2015, pp. 1–6.

30 [24] J. Song, J. Choi, and D. J. Love, “Common codebook millimeter wave beam design: Designing beams for both sounding and communication with uniform planar arrays,” IEEE Transactions on Communications, vol. 65, no. 4, pp. 1859–1872, 2017. [25] Z. Wang, M. Li, Q. Liu, and A. L. Swindlehurst, “Hybrid Precoder and Combiner Design With Low-Resolution Phase Shifters in mmWave MIMO Systems,” IEEE Journal of Selected Topics in Signal Processing, vol. 12, no. 2, pp. 256–269, 2018. [26] H. Seleem, A. I. Sulyman, and A. Alsanie, “Hybrid precoding-beamforming design with hadamard RF codebook for mmWave large-scale MIMO systems,” IEEE Access, vol. 5, pp. 6813–6823, 2017. [27] R. Gray, “Vector quantization,” IEEE Assp Magazine, vol. 1, no. 2, pp. 4–29, 1984. [28] A. Gersho and R. M. Gray, Vector quantization and signal compression. Springer Science & Business Media, 2012, vol. 159. [29] A. K. Jain, M. N. Murty, and P. J. Flynn, “Data clustering: a review,” ACM computing surveys (CSUR), vol. 31, no. 3, pp. 264–323, 1999. [30] A. Alkhateeb and R. W. Heath, “Frequency selective hybrid precoding for limited feedback millimeter wave systems,” IEEE Transactions on Communications, vol. 64, no. 5, pp. 1801–1818, 2016. [31] Z. Xiao, P. Xia, and X.-G. Xia, “Codebook design for millimeter-wave channel estimation with hybrid precoding structure,” IEEE Transactions on Wireless Communications, vol. 16, no. 1, pp. 141–153, 2017. [32] W. L. Stutzman and G. A. Thiele, Antenna theory and design. John Wiley & Sons, 2013. [33] K.-N. Hsu, C.-H. Wang, Y.-Y. Lee, and Y.-H. Huang, “Low complexity hybrid beamforming and precoding for 2D planar antenna array mmWave systems,” in Signal Processing Systems (SiPS), 2015 IEEE Workshop on. IEEE, 2015, pp. 1–6. [34] T. He and Z. Xiao, “Suboptimal beam search algorithm and codebook design for millimeter-wave communications,” Mobile Networks and Applications, vol. 20, no. 1, pp. 86–97, 2015. [35] I. Katsavounidis, C.-C. J. Kuo, and Z. Zhang, “A new initialization technique for generalized Lloyd iteration,” IEEE Signal processing letters, vol. 1, no. 10, pp. 144–146, 1994. [36] S. Lloyd, “Least squares quantization in PCM,” IEEE transactions on information theory, vol. 28, no. 2, pp. 129–137, 1982. [37] E. Yair, K. Zeger, and A. Gersho, “Competitive learning and soft competition for vector quantizer design,” IEEE transactions on Signal Processing, vol. 40, no. 2, pp. 294–309, 1992. [38] K. Zeger, J. Vaisey, and A. Gersho, “Globally optimal vector quantizer design by stochastic relaxation,” IEEE Transactions on Signal Processing, vol. 40, no. 2, pp. 310–322, 1992.

You can also read