I. Introduction
The fifth generation (5G) wireless communication network is expected to connect a large number of smart electronic equipments (e.g., smartphones, wearable devices, laptops, machinetomachine communication devices) [1, 2]. As a result, future mobile communication systems need to meet more stringent requirements compared to current systems including higher data rates, higher mobile traffic quality, lower latency, and higher spectrum/energy efficiency [3, 4].
Cloud radio access networks (CRANs) are considered to be a promising architecture for 5G wireless systems to significantly enhance network performance to meet the aforementioned requirements [5, 6, 7]. In CRANs, most baseband signal processing is performed at the baseband processing unit (BBU) pool, which has a high computation capacity, while the less powerful remote radio heads (RRHs), which are equipped with radio frequency (RF) modules, only perform transmission/reception and compression of radio signals. The RRHs are connected to the BBU via fronthaul links [8, 9, 10, 11, 12, 13, 14]. To take the limitation of the fronthaul links into account, joint fronthaul compression and precoding designs were investigated for downlink CRANs in [8, 9, 10]. The potential of CRANs to improve the energy efficiency of wireless networks was investigated in [11] where the energy consumed by the base station (BS), the RF transmission, and the fronthaul links was minimized. Similarly, to reduce the energy consumption of CRANs, joint precoding and RRH selection was studied for usercentric green multipleinput multipleoutput (MIMO) CRANs in [12, 13, 14]. More recently, the authors of [15] investigated the achievable rate region of downlink CRANs with RRH cooperation. However, the aforementioned works do not consider the possibility of caching at the RRHs to reduce transmission delay and improve network performance.
To alleviate the fronthaul capacity requirement and reduce the userperceived latency in CRANs, recently, an evolved network architecture, referred as fog RAN (FRAN), was proposed where the RRHs have the ability to store and process signals. These RRHs are referred to as enhanced RRHs (eRRHs) [16, 17, 18]. eRRHs can prefetch the most frequently requested files during offpeak traffic periods and store them in their local caches, so that the fronthaul overhead during peak traffic periods is reduced. In this way, lower latency and higher spectral efficiency can be achieved [19]. The fronthaulaware design of the eRRH cache placement strategy was studied in [20] with the objective to minimize the average download delay of user requests given the limited eRRH cache capacity. The authors of [21] investigated how to cache the files at different caching units with the objective to maximize the average requested content data rates subject to a finite service latency. In [22], the joint optimization of cloud and edge precoders was studied for different prefetching strategies used for populating the caches of the eRRHs of the FRAN. The authors of [23] investigated the joint design of multicast beamforming and eRRH clustering for the delivery phase for fixed prefetching strategies, with the goal of minimizing the total transmit power and the fronthaul cost subject to predefined qualityofservice (QoS) requirements. In [24], the authors investigated the joint optimization of user association, data delivery rate, and precoding for MIMO FRANs. More recently, the authors of [25] investigated the BS cache allocation problem for CRANs employing wireless fronthaul links without taking into account the radio access network.
Although CRANs and FRANs can achieve higher network performance by coordinating and centralizing computational tasks at the cloud center, achieving the gigabitpersecond data rates required by 5G networks is still challenging due to the spectrum shortage in the sub6 GHz frequency bands. On the other hand, in the last few years, millimeter wave (mmWave) communication systems have emerged as a promising candidate for providing order of magnitude improvement in the achievable data rate by exploiting the multiGHz bandwidth in the range of GHz. Hence, mmWave communication is regarded as a promising option to significantly increase network capacity [26, 27, 28]. To balance the tradeoff between hardware cost/complexity and system performance of mmWave systems, hybrid precoding schemes combining digital precoding with analog precoding have been extensively investigated [29, 30, 31, 32, 33, 34]. The works in [29, 30, 31, 32, 33, 34] consider the design of hybrid precoders for pointtopoint and downlink multiuser mmWave communication systems. In [35], a hybrid precoder is designed based on smallsize coupling matrices between beam patterns which are obtained via beamforming training. Spatial and frequencywideband effects in massive MIMO systems are analyzed from an array signal processing point of view in [36]. Furthermore, the authors of [37] have investigated the design of hybrid precoders for CRAN systems where the RRHs cannot cache data. More recently, the authors of [38] propose a twolevel transmission scheme to reduce simultaneously the burden on the fronthaul links and delivery latency for cacheenabled radio access network.
In this paper, we investigate the design of hybrid precoders comprising an analog and a digital precoder for the delivery phase of downlink cacheenabled mmWave radio access networks (CeMmRANs) for two different fronthaul information transfer strategies. The first strategy employs hard fronthaul information transfer (HFIT), where the hard information of the requested uncached files is sent to the eRRHs via the fronthaul links. The second strategy employs soft fronthaul information transfer (SFIT), where a quantized version of the precoded signals of the requested uncached files is sent to the eRRHs via the fronthaul links. Compared to conventional microwave MIMO CRANs [8, 9, 10, 11] and FRANs [22, 23, 24], for hybrid precoding in CeMmRANs, there are two fundamental differences, namely the constantmodulus constraint on the analog precoder, which is implemented using phase shifters, and the cascading of a digital precoder and an analog precoder. These differences make the design of hybrid precoders very challenging and motivate the investigation of the design of such precoders for the delivery phase of downlink CeMmRANs in this paper. The main contributions of this paper can be summarized as follows:

We investigate the design of hybrid precoders for CeMmRANs employing HFIT and SFIT, respectively. We jointly optimize the analog precoders and the digital precoders to maximize the minimum user rate in the network.

Two effective optimization algorithms are developed to solve the formulated optimization problem. For optimization of the digital precoder for a given analog precoder, we convexify the nonconvex analytical expressions for the user rate and the fronthaul capacity constraint via successive convex approximation methods. Then, an iterative algorithm, which is proved to converge to a stationary point, is proposed to solve the resulting optimization problem. For optimization of the analog precoder, we use a Taylor series expansion to optimize the phases of the analog precoder^{1}^{1}1We note that the considered optimization problem is more difficult than the related problems in [32, 33]. The authors of [32, 33] investigated the maximization of the spectral efficiency of pointtopoint links under a single transmit power constraint. This allows the use of Orthogonal Matching Pursuit (OMP) [32] and matrix factorization [33] to obtain the analog precoder. However, these methods cannot be directly applied to the problem considered in this paper.. A corresponding effective iterative algorithm is developed. The convergence and computational complexity of the presented algorithms are analyzed.

Numerical experiments are carried out to evaluate the performance of the presented algorithms. Our results unveil that i) when the system performance is constrained by the fronthaul capacity or the file size, for HFIT, hybrid precoding and fully digital precoding achieve almost the same minimum user rate, ii) if the fronthaul capacity is large, HFIT with an approriate number of coordinated eRRHs can outperform SFIT, otherwise, SFIT yields a higher performance, and iii) for mediumtolarge file sizes, hybrid precoding with SFIT outperforms fully digital precoding with SFIT for fronthaul capacity limited mmWave CRANs^{2}^{2}2MmWave CRANs can be regarded as a special case of CeMmRANs where the eRRHs do not cache any files at the local cache..
The remainder of this paper is organized as follows. The system model is described in Section II. In Section III and IV, the design of hybrid precoding schemes for CeMmRANs with HFIT and SFIT is investigated, respectively. In Section V, the performance of the developed algorithms is evaluated via simulation. Conclusions are drawn in Section VI.
Notations
: Bold lower case and upper case letters represent column vectors and matrices, respectively. The superscripts
, , and represent the transpose, the conjugate, and the conjugate transpose operators, respectively. , , and denote the trace, the Euclidean norm, and the Frobenius norm, respectively. is a diagonal matrix whose diagonal elements are the elements of vector . is a positive semidefinite matrix. and denote the zero and identity matrices, respectively. represents the element in row and column of matrix and denotes the column vector obtained by stacking the columns of matrix on top of one another. and denote the Hadamard product and the Kronecker product, respectively. The function rounds to the nearest integer not larger than . denotes the complementof a binary variable
. denotes the expectation operator. is the logarithm with base . is the imaginary unit, i.e., . and are the fields of real and complex numbers, respectively. For a set , denotes the cardinality of the set, while for a complex number , denotes the absolute value of. The circularly symmetric complex Gaussian distribution with mean
and covariance matrix is denoted by . The symbols used frequently in this paper are summarized in Table I.flushleft
Symbol 


,  Numbers of users and eRRHs  
,  Sets of users and eRRHs  
,  Numbers of RF chains of user and eRRH  
,  Total numbers of antennas and RF chains at eRRHs  
,  Numbers of antennas of user and eRRH  
,  Sets of antennas and RF chains at eRRH  
Maximum transmit power of eRRH  
Capacity of fronthaul link to eRRH  
Normalized cache size of eRRH  
Number of files in the library  
,  Sets of all files and all requested files  
,  Normalized size of file and subfile  
Set of subfiles  
Number of subfiles  
File requested by user  
Binary cache variable of subfile at eRRH  
Binary transfer variable of subfile to eRRH  
Number of the spatial data streams of subfile  
Set of subfiles available at eRRH  
Data delivery rate of subfile  
Minimum user rate  
Signal received by user  
Signal transmitted by eRRH  
Channel matrix from eRRH to user  
Noise variance at user 

Number of scatterers  
Analog precoding matrix at eRRH  
Digital precoding matrix for basedband signal at eRRH  
Set of digital precoding matrices at eRRHs  
Digital precoding matrix for basedband signal at BBU for eRRH  
Set of digital precoding matrices at BBU  
MMSE receiver for subfile  
Weight matrix for subfile  
,  Sets of MMSE receivers and weight matrices  
Quantization noise covariance matrix to eRRH  
Set of quantization noise covariance matrices 
II. System Model
Consider the downlink of a CeMmRAN, as illustrated in Fig. 1, where multiantenna users establish wireless communication with eRRHs.
We assume that there are no communication links between the eRRHs. eRRH , , is connected to the BBU through an errorfree fronthaul link of capacity bit/symbol and is equipped with a cache, which can store bits, where is the number of symbols of each downlink coded transmission interval and is the normalized cache size [22]. Furthermore, eRRH is equipped with RF chains and transmit antennas. Each RF chain is connected to the transmit antennas via phase shifters, , as shown in Fig. 2.
Each user , , is equipped with RF chains and receive antennas. Each RF chain is connected with the receive antennas via phase shifters.
A. Channel Model
The signal received at user can be expressed as
(1) 
where denotes the channel matrix between user and eRRH . denotes the signal transmitted by eRRH and is the additive white Gaussian noise (AWGN). Note that in (1), we implicitly assume perfect time and frequency synchronization.
Since mmWave channels have limited numbers of scatterers [26, 27, 28], we adopt a narrowband clustered channel model with scatterers based on the extended SalehValenzuela model. Each scatterer is further assumed to contribute a single propagation path to the channel between a user and an eRRH [29, 31, 32]. Thus, channel matrix can be modeled as
(2) 
where and are the azimuth angles of departure and arrival (AoDs/AoAs) of the th path between eRRH and user , respectively. denotes the average pathloss between eRRH and user . represents the complex gain of the th path between eRRH and user . The path amplitudes are assumed to be Rayleigh distributed, i.e., with being the average power gain, , , . Assume that a uniform linear array (ULA) is adopted at the eRRHs and the users. In particular, for an element ULA, the array response vector is given by [39]
(3) 
where and are the signal wavelength and the antenna spacing, respectively. The array response vector at user can be written in a similar fashion^{3}^{3}3To establish a performance upper bound for hybrid precoding in CeMmRANs, in this paper, we assume that perfect channel state information (CSI) is available. The CSI can be acquired by the eRRHs and reported back to the BBU via the fronthaul links, e.g. [9, 10, 11, 12], [22, 24, 23]. The analysis of the effect of imperfect CSI is an interesting topic for future work..
B. Cache Model
Assume that each user requests contents or files from library stored at the BBU. Without loss of generality, we assume that all files in library have a size of bits, i.e., is the normalized file size. In this work, we assume that each file is split into subfiles of equal size, bits^{4}^{4}4The proposed algorithms can be applied to the case where the file is not divided into multiple subfiles by setting the value of to one.. Based on longterm information regarding the popularity distribution of the files, the cache capacity, the file size, and the fronthaul capacity, each eRRH prestores bits of bits in the library in its cache [22, 24, 23]. Namely, each eRRH selects subfiles from library at the BBU and stores them in its local cache. The cache status of subfile , , , can be modeled by defining binary variables , , , , as
(4) 
For simplicity, in this work, we assume that the cache state information , , , , is predetermined^{5}^{5}5The impact and optimality of the applied caching and content distribution strategies are not studied in this paper. The investigated transmission scheme can be applied for any caching strategy. However, different caching strategies will lead to different system performances [22, 23], of course.. Cached files requested by the users can be retrieved directly from the local cache of the serving eRRHs instead of from the BBU. In contrast, uncached files need to be transferred to eRRH via the fronthaul link. For the information transfer of the uncached files over the fronthaul links to the eRRHs, two different approaches may be distinguished, namely, HFIT and SFIT. In the following, we discuss the design of hybrid precoding for CeMmRANs with HFIT and SFIT, respectively.
III. Hybrid Precoding Design for Hard Fronthaul Information Transfer
In this section, we investigate the design of hybrid precoding for CeMmRANs with HFIT, where the hard information regarding the subfiles that are not cached at the eRRHs is transferred via the fronthaul links. To facilitate the presentation, in the sequel, we assume that user independently requests a random file from library . We further assume that only a single file is transmitted to each user in a given transmission interval, as in [22, 23, 24]. Let be the set of files requested by the users. We define the binary variable , , , , as
(5) 
In this paper, we assume that the values of , , , , are predetermined. As an example, in the numerical results in Section V, we will assume that variables are set such that uncached subfile requested by user is transferred to the eRRHs that have not cached the subfile and have the largest channel gains to user , where is a tunable parameter [22], i.e.^{6}^{6}6To make full use of the limited fronthaul capacity, the eRRH cooperation cluster should be optimized according to the fronthaul capacity and the cache status of each RRH. As this is not the focus of this work, we simply select the eRRHs with the best channel qualities for the cooperation cluster.,
(6) 
Let be the data delivery rate of subfile , so that bits are transferred to the eRRH in the considered transmission interval [22]. The remaining bits can be transferred in the following transmission interval. Thus, the fronthaul capacity constraint for eRRH is given by
(7) 
Each eRRH performs precoding to generate the transmit signal for subfile , which has been cached or transferred via the fronthaul links to the eRRH. Then, signal transmitted by eRRH can be expressed as:
(8) 
where is the digital precoding matrix at eRRH for baseband signal encoding subfile . denotes the number of spatial data streams used for subfile . In this paper, we assume that , , where . is the analog precoding matrix at eRRH . Since is implemented via an analog phase shifter network, its elements are constrained to be constantmodulus. In what follows, we assume that each entry of has unit norm, i.e., , , and .
For convenience of presentation, the digital precoding matrix of all eRRHs for subfile and the channel matrix from all eRRHs to user are denoted by and , respectively, where and . Then, the received signal at user requesting file is
(9) 
where is the analog precoding supermatrix defined as:
(10) 
where permutation matrix is defined as
with and . Thus, the achieve data rate for subfile at user , in units of nats/s/Hz, is computed as
(11) 
where , , and the interferenceplusnoise covariance matrix is given by:
(12) 
In the following subsections, we investigate the design of the digital precoder and the analog precoding supermatrix , where we take into account the fronthaul capacity constraint, the eRRH transmit power constraint, and the constantmodulus constraint on each element of the analog precoder.
A. Problem Formulation
In this paper, our objective is to maximize the minimum user rate defined as subject to constraints on the fronthaul capacity, the file size, the eRRH transmit power, and the constantmodulus of each entry of the analog precoder, where represents the achievable delivery rate for file . By maximizing the minimum user rate , the number of transmission intervals that are needed to deliver all files to the requesting users is minimized and fairness between the users is ensured [40]. For a given cache status and fronthaul information transfer status , , , , the design of the hybrid precoder for CeMmRANs with HFIT is formulated as
(13a)  
(13b)  
(13c)  
(13d)  
(13e)  
(13f)  
(13g) 
where and denote the set of feasible analog precoders and the maximum transmit power for eRRH , respectively. Furthermore, we define , and is given by
(14) 
In problem (13), constraint (13d) ensures that the data delivery rate of subfile does not exceed the normalized subfile size . The limited fronthaul capacity , , constrains the rate on each fronthaul link in (13e). Constraint (13f) limits the maximum allowable transmit power of eRRH . The optimal value of (13) is mainly limited by constraints (13b), (13d), (13e), and (13f). Problem (13) includes the nonconvex rate constraint in (13b), the constantmodulus constraint on the entries of the analog precoder in (13g), and the strong coupling between the analog precoders and the digital precoders. Thus, problem (13) is in general difficult to solve globally. Therefore, first, we resort to a convex approximation approach to transform problem (13) into a tractable form, and then we develop an effective approach to obtain a solution of problem (13).
B. Optimization of Digital Precoder
To avoid the coupling between the analog precoding matrices and the digital precoding matrices, we first optimize the digital precoding matrices for given analog precoding matrices. For fixed analog precoders, problem (13) can be reformulated as:
(15) 
Note that the difficulty in solving problem (15) lies in constraint (13b), as the achievable data rate is nonconvex. To overcome this difficulty, in the sequel, we resort to approximating the achievable data rate by a convex lower bound.
We first note that the achievable data rate of subfile can be expressed as a function of the error covariance matrix after minimummeansquareerror (MMSE) receive filtering [41]. Let be a linear receiver applied at user for recovering subfile . Thus, the meansquareerror (MSE) matrix for recovering subfile is calculated as
(16) 
where is given by
(17) 
Note that for fixed analog precoder and receive filter, (16) is a convex function with respect to (w.r.t.) the digital precoder . Thus, we can exploit this feature to convexify the achievable data rate . According to (16), the MMSEreceive filter at user can be obtained as
(18) 
The MSEmatrix at user for the MMSEreceive filter can be written as:
(19) 
Combining (11) and (19), we have . The authors of [41] have shown that the achievable data rate for subfile can be expressed as
(20) 
where is a weight matrix. For simplicity, define function as
(21) 
with and . According to (20), we have . Note that function is convex w.r.t. each individual optimization variable , , and , but is not jointly convex in these variables. Based on this observation, we replace the achievable data rate in constraint (13b) by and solve the following problem instead of problem (15):
(22a)  
(22b)  
(22c) 
Problem (22) is still a nonconvex problem due to the coupling between the optimization variables in (22b). However, problem (22) is a convex optimization problem w.r.t. each individual optimization variable , , , and . Therefore, the block coordinate ascent method [41] is adopted to solve problem (22). In particular, we first solve problem (22) w.r.t. variables and , respectively, for fixed and . Then, we solve problem (22) w.r.t. variables and for fixed and . For given and , the optimal of problem (22) is the MMSEreceive filter in (18) and the optimal of problem (22) is given by:
(23) 
For given and , the optimal and in (22) can be found by solving the following problem
(24) 
Problem (24) is a convex optimization problem that can be solved by convex program solvers such as CVX [42]. The procedure used for solving problem (22) is summarized in Algorithm 1 where denotes the number of iterations and denotes a predefined stopping criterion.
From Algorithm 1, we observe that each update of the MMSEreceive filters and the weight matrices in Steps 3 and 4, respectively, maximizes function , i.e., the right hand side of constraint (22b), without affecting the other constraints in problem (22). Hence, the update of the MMSEreceive filters and the weight matrices does not change the objective value, but may increase the feasible set for improving the minimum user rate. On the other hand, the update of the optimization variables and in Step 5 of Algorithm 1 maximizes the objective value of problem (22) for the given and . Therefore, we have the following sequence as the iterations proceed
i.e., Algorithm 1 generates a monotonically nondecreasing sequence of objective values. In addition, the objective function of problem (22) is upper bounded due to the limited transmit power of each eRRH. Therefore, Algorithm 1 is guaranteed to converge [43]. Using the same arguments as in [44, Theorem 1] and [45, Theorem 3], we can prove that Algorithm 1 converges to a stationary point of problem (22).
Algorithm 1 involves matrix multiplications, matrix inversions, and solving a convex problem. The computational complexity of Steps 3 and 4 of Algorithm 1 is , where stands for the bigO notation, and with and [46]. In Step 5 of Algorithm 1, a convex optimization problem is solved, which can be efficiently implemented by a primaldual interior point method with an approximate complexity of , where and [47]. Suppose that Algorithm 1 needs iterations to converge. Then, the overall computational complexity of Algorithm 1 is .
C. Optimization of Analog Precoder
In this subsection, we focus on optimizing the analog precoders by solving problem (13) for fixed digital precoders. In particular, we propose to iteratively solve the following problem for given digital precoding matrices :
(25) 
The optimal solutions of and are still given by (18) and (23), respectively. The main difficulty in solving problem (25) is the constantmodulus constraint, which makes the optimization problem more challenging than that for the digital precoders. Therefore, in the following, we iteratively convexify the constantmodulus constraint such that a tractable form is obtained.
For ease of presentation, we denote the analog precoding matrix in the th iteration by and further assume that the initial matix is given. Also, we denote the phase of the th entry of as . In the sequel, we update using a local search in a small vicinity of . The th entry of matrix is updated as with being the phase increment of the th entry of , i.e.,
(26) 
To obtain a tractable form of (25) based on the expression for each updated entry of the analog precoder in (26), exploiting a Taylor series expansion, is approximated as
(27) 
where the th entry of matrix is . Note that the approximation in (27) is inferred from which holds as long as is sufficiently small, e.g., . Unfortunately, the formulation of (27) in terms of a Hadamard product is not compatible with many convex problem solvers. Therefore, we need to rewrite (27) in a more appropriate form such that convex programm solvers can be used to optimize the analog precoders. Note that and let , then the term in (21) in the th iteration can be rewritten as:
(28) 
where and