A deep learning based joint user scheduling and hybrid precoding method
Patent Information
- Application Number
- CN202311465979.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-06
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-11-06
AI Technical Summary
[0012]为了解决上述强干扰、信道资源浪费等问题,针对单小区多用户MIMO系统的下行传输,本发明提供了一种基于深度学习的联合用户调度和混合预编码方法
[0048]相比现有技术,本发明的有益效果在于:(1)本发明方法设置的“预处理器”和“调度器”模块学到的从用户信道、权重输入到用户调度结果输出的映射关系不光滑,既没有破坏置换性质,又避免了相似信道、权重的用户得到相同的调度结果。从而,信道资源得到充分利用,且避免了强用户间的干扰。(2)本发明方法通过无监督学习的方式联合训练上述多个GNN模块,训练过程不需要依赖其他方法生成标签;在推断应用时可以获得接近常用迭代算法的系统性能,并可以泛化应用到训练样本中不包含的用户和天线规模,而且获得调度和预编码结果所需的推断时间明显小于现有迭代算法。
Smart Images

Figure CN117478180B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of wireless communication technology and relates to a joint user scheduling and hybrid precoding method based on deep learning. Background Technology
[0002] Hybrid precoding can leverage the potential performance of millimeter-wave multiple-input multiple-output (MIMO) systems at a lower cost. However, the number of radio frequency links limits the number of users the system can serve simultaneously. Rationally scheduling users from a large pool of candidate users is crucial for improving system performance. User scheduling and precoding are inherently coupled. However, jointly optimizing user scheduling and precoding typically requires significant computational overhead; for example, precoding all possible user combinations has complexity that grows exponentially with the number of users.
[0003] In order to reduce the computation time of complex algorithms, deep learning methods have been applied to user scheduling and precoding problems in recent years. For example, given a precoding method, a deep neural network (DNN) trained by supervised learning[1] and a DNN trained by reinforcement learning[2] are used to execute user scheduling policies; or, two DNNs trained by reinforcement learning are used to execute user scheduling and precoding policies respectively[3]; furthermore, two DNNs trained by unsupervised learning are used to perform user scheduling and intelligent reflector configuration respectively, while precoding is implemented by the weighted minimum mean square error (WMMSE) algorithm[4]. All of the above methods decompose the joint optimization problem into multiple sub-problems, making it difficult for DNNs to learn the joint optimal solution. In reference [5], discrete variables are relaxed to continuous variables and precoding is performed on all candidate users, so a single DNN can jointly optimize user scheduling and precoding through unsupervised learning. However, this method utilizes the duality of uplink and downlink and cannot be applied to hybrid precoding systems.
[0004] On the other hand, the DNNs in references [4] and [5] are designed as graph neural networks (GNNs) with user vertices to achieve dimensional generalization to user scale, that is, to directly apply the trained network to systems with different user scales. However, existing GNN structures cannot inherently guarantee generalization ability. For example, the precoding subproblem in reference [4] is solved using the WMMSE algorithm, and the precoding result in reference [5] is derived from the converted equivalent uplink power. These simplifications cannot be applied to hybrid precoding. In addition, existing GNNs do not utilize the permutation property of antennas in joint optimization, which leads to a larger hypothesis space of the learned mapping, reduced learning efficiency, and inability to generalize to antenna scale.
[0005] Finally, existing GNN-based user scheduling methods overlook a crucial issue: due to the permutation nature of GNNs and the continuity inherent in all neural networks, users on similar channels will inevitably receive the same scheduling results. This means that users in close proximity may be served simultaneously, leading to strong interference between them; or they may be simultaneously abandoned, resulting in a waste of channel resources.
[0006] The references are as follows:
[0007] [1] M.Mohammadkarimi, M.Darabi, and B.Maham, "User scheduling in massiveMIMO: Ajoint deep learning and genetic algorithm approach," IEEE VTC-Spring, 2022.
[0008] [2] W.Mauricio, T.Maciel, A.Klein et al., "Scheduling for massive MIMO with hybrid precoding using contextual multi-armed bandits," IEEETrans.Veh.Technol., vol.71, no.7, pp.7397–7413, 2022.
[0009] [3] R.Huang and V.Wong, "Joint user scheduling, phase shift control, and beamforming optimization in intelligent reflecting surface-aided systems," IEEE Trans.Wireless Commun., vol.21, no.9, pp.7521–7535, 2022.
[0010] [4]Z.Zhang, T.Jiang, and W.Yu, "Learning based user scheduling inreconfigurable intelligent surface assisted multiuser downlink," IEEEJ.Sel.Top.Signal Process., vol.16, no.5, pp.1026-1039, 2022.
[0011] [5] S.He, J.Yuan, Z.An et al., "Joint user scheduling and beamformingdesign for multiuser MISO downlink systems," IEEE Trans.Wireless Commun., vol.22, no.5, pp.2975–2988, 2023. Summary of the Invention
[0012] To address the aforementioned issues of strong interference and waste of channel resources, this invention provides a joint user scheduling and hybrid precoding method based on deep learning for downlink transmission in single-cell multi-user MIMO systems.
[0013] The deep learning-based joint user scheduling and hybrid precoding method of the present invention includes the following steps:
[0014] Step 1: Collect the channel status and priority weights of all users in the cell in the communication scenario.
[0015] Suppose there is one base station in a certain cell in a communication scenario, equipped with N t One antenna and N s A hybrid precoder consists of RF links. There are K single-antenna candidate users waiting to receive service within this cell. Channel state information from these K candidate users to all base station antennas is collected or simulated and denoted as the channel matrix H = [h1, ..., h2].K ] T Collect or simulate the priority weights of these K candidate users, and denote them as a weight vector β = [β1, ..., β2]. K ] T h k and β k These represent the channel state and priority of the k-th user, respectively; the superscript T indicates transpose.
[0016] Step 2: Calculate the features γ1 and γ2 for assisted user scheduling based on the channel state information.
[0017] Where, γ1=[γ 1,1 ,…,γ 1,K ] T , γ2=[γ 2,1 ,…,γ 2,K ] T Features that assist in scheduling the k-th user γ 2,k =||h k ||,k=1,…,K.
[0018] Step 3: Model the cell communication scenario as a bipartite graph, containing K user vertices and N... t There are several antenna vertices. Channel H is modeled as a feature on the edges of this graph, and β, γ1, and γ2 are modeled as features on the user vertices. The scheduling result a = [a1, ..., a2] is then used. K ] T and baseband pre-encoder Modeling actions at user vertices to simulate the precoder The model is based on actions at the antenna vertices. The scheduling result a = [a1, ..., a K ] T The elements in the array are either 0 or 1. If a k =1 means scheduling the kth user, if a k =0 means the k-th user will not be scheduled. And since the number of data streams cannot exceed the number of radio frequency links, the number of 1s in the scheduling result 'a' will not exceed N. s .
[0019] Step four: Input H, β, γ1, and γ2 into the preprocessor to extract the common feature B required by the subsequent scheduler and precoder. The preprocessor is a GNN that updates the hidden representations on the edges between all user vertices and antenna vertices in the bipartite graph. The finally updated hidden representations on all edges are combined as the common feature B.
[0020] Step 5: Input the common feature B into the "Scheduler" module to obtain the scheduling result a for all candidate users. The "Scheduler" consists of N... sIt consists of N different GNN cascades. s Each GNN has the same number of network layers and hidden representation dimension; the output of the m-th GNN of the scheduler is the action probability r on K user vertices. m =[r m,1 ,…,r m,K ] T r m,k This represents the probability that the m-th GNN selects the k-th user. The input of the m-th GNN is the common feature B and the sum of the outputs of the first m-1 GNNs; the input of the first GNN is only B.
[0021] Step 6: Calculate the auxiliary hybrid precoding features H′ and β′, where H′ is obtained by multiplying each element in a by the row corresponding to H, and β′ is obtained by multiplying each element in a by the element corresponding to β.
[0022] Step 7: Input B, a, H′, and β′ into the “pre-encoder” module to obtain the preliminary analog pre-encoder W′. RF and baseband pre-encoder W′ BB The "preencoder" module is a GNN that includes an attention mechanism to update the hidden representations on the edges.
[0023] Step 8: Convert the initial precoding result W′ BB The elements in the matrix are multiplied by the scheduling results of the corresponding users in matrix a; then, based on the system requirements and constraints, the preliminary precoding result W′ is processed. F and W′ B After normalization adjustment, we obtain W. RF and W BB .
[0024] Step nine: Jointly train all GNNs from the preprocessor, scheduler, and preencoder modules using unsupervised learning; during the training phase, use H, β, and the a obtained in step five and W obtained in step eight. RF and W BB Calculate the loss function and perform gradient backpropagation to update the trainable weights of all GNNs in the three modules. During the testing phase, the user's scheduling result 'a' is obtained from step five, and the simulated preencoder W is obtained from step eight. RF and baseband pre-encoder W BB .
[0025] Step four includes the following:
[0026] Step 4.1, construct the initial hidden representation on the edges of the input preprocessor; let the initial hidden representation on the edge connecting the k-th user vertex and the n-th antenna vertex be vector x. 0,k,n Let the real and imaginary parts of the channel state corresponding to this edge be x respectively.0,k,n The two dimensions are the priority weight of the k-th user and the feature γ that assists in scheduling the k-th user. 1,k and γ 2,k As x respectively 0,k,n The three dimensions of the value;
[0027] Step 4.2: Update the hidden representations on all edges using the preprocessor. Assume the preprocessor's GNN has L1 layers (excluding the initial hidden representation). Let x be the hidden representation of the edge between the k-th user vertex and the n-th antenna vertex after l layers of updates. l,k,n The update process for the hidden edge representation is shown in the following equation:
[0028] l=0,…L1-1,k=1,…,K,n=1,…,N t ,
[0029] Where P l,1 P l,2 P l,3 Here, φ represents the trainable weights, and φ is the activation function. Layer number l = 0 represents the initial hidden representation of the input.
[0030] Step 4.3: Update the hidden representation vectors on all edges of the last layer of the preprocessor GNN, for a total of K×N. t There are 3 vectors, each with a dimension of D. B Together, they are defined as the common feature B on the edges.
[0031] Step five includes:
[0032] Starting from m=1, repeat steps 5.1 to 5.3, incrementing m by 1 in each iteration, until m=N. s After execution is complete, end the loop and proceed to step 5.4:
[0033] Step 5.1: Obtain the initial hidden representation of the m-th input GNN. This initial hidden representation has a total of D values. B +1 dimension, front D B The dimension D is a hidden representation on the edges between the user vertex and the antenna vertex, directly copied from the common feature B. B +1 dimension represents the sum of the outputs of the first m-1 GNNs. Initially, m = 1, and the input of the first GNN contains only the common feature B. Let an initial hidden representation of the input to the m-th GNN be...
[0034] Step 5.2, update the hidden representation of the m-th GNN. Assume the m-th GNN has L2 layers. The update formula is as follows:
[0035]
[0036] l=0,…,L2-1,k=1,…,K,n=1,…,N t ,
[0037] in Let φ be the trainable weights and φ be the activation function. The updated hidden representation of the l-th layer of the m-th GNN is: The last layer of hidden representation The dimension is 1, that is
[0038] Step 5.3: For each user vertex, obtain the unnormalized action probability from the hidden representation of the last layer of the m-th GNN of the scheduler. Then use the Softmax function to apply the modulus to r′. m,k Normalization yields r m,k The action probabilities r of the K user vertices are obtained from the m-th GNN. m Then sum it with the outputs of the first m-1 GNNs. m is incremented by 1, then it is checked whether m is greater than N. s If so, proceed to step 5.4; otherwise, continue to step 5.1.
[0039] Step 5.4: Collect all N values from the scheduler. s The output of each GNN yields the user vertex's action—the scheduling result 'a'. During the training phase, let... During the testing phase, Middle front N s The scheduling results for users corresponding to the larger numbers are discretized as 1, and the rest are KN. s The scheduling result for each user is discretized into 0.
[0040] Step seven includes:
[0041] Step 7.1: Generate the initial hidden representation of the GNN input to the preencoder; the initial hidden representation of the GNN of the preencoder has D. B +4 dimensions, the hidden representation on the edges of user vertices and antenna vertices copied from common feature B occupies D. B The scheduling results and priority weights obtained from a and β′ each occupy one dimension, and the real and imaginary parts of the channel state obtained from feature H′ each occupy one dimension; let z be an initial hidden representation of the GNN input to the precoder. 0,k,n ;
[0042] Step 7.2, assuming the pre-encoder GNN has L3 layers, update the hidden representation at each layer of the pre-encoder GNN using the following formula:
[0043]
[0044]
[0045] l=0,…,L3-1,k=1,…,K,n=1,…,N t ,
[0046] Where R l,1 R l,3 R l,4 R l,5 R l,6 Here, φ represents the trainable weights, φ is the activation function, and ⊙ represents element-wise multiplication. The introduced attention mechanism weights measure the interference of the i-th user on the k-th user on the n-th antenna.
[0047] Step 7.3, extract the hidden representation from the last layer of the GNN from the pre-encoder. Preliminary precoding results W were obtained. RF and W′ BB .set up The dimension is 4N s , its first 2N s Each dimension and the last 2N s Each dimension is a vector. and Then we get: and
[0048] Compared with the prior art, the beneficial effects of the present invention are as follows: (1) The mapping relationship learned by the "preprocessor" and "scheduler" modules of the present invention from user channel and weight input to user scheduling result output is not smooth. This does not destroy the permutation property and avoids users with similar channels and weights from getting the same scheduling result. Thus, channel resources are fully utilized and interference between strong users is avoided. (2) The present invention jointly trains the above multiple GNN modules through unsupervised learning. The training process does not need to rely on other methods to generate labels. When applying inference, it can achieve system performance close to that of commonly used iterative algorithms and can be generalized to users and antenna scales not included in the training samples. Moreover, the inference time required to obtain scheduling and precoding results is significantly less than that of existing iterative algorithms. Attached Figure Description
[0049] Figure 1 This is a flowchart of a deep learning-based joint user scheduling and hybrid precoding method according to the present invention;
[0050] Figure 2 This is a comparison chart of the weighted sum data rate performance of the present invention and existing methods in test samples under the condition that the base station is equipped with different numbers of radio frequency links;
[0051] Figure 3 This is a comparison chart of the weighted sum data rate performance of the present invention and existing methods in test samples under different base station transmit power conditions. Detailed Implementation
[0052] The embodiments of the present invention will now be described in complete and detailed manner with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.
[0053] like Figure 1 As shown in the figure, the deep learning-based joint user scheduling and hybrid precoding method of this invention includes the following nine steps, which are described in detail below.
[0054] Step 1: Collect the channel status and priority weights of all users.
[0055] One scenario of this invention is: a base station is set up in a certain cell, equipped with a uniform linear antenna array and N s A hybrid precoder consisting of N radio frequency links, wherein the antenna array contains N t There are K single-antenna candidate users waiting to receive service in this cell. This embodiment uses the Saleh-Valenzuela model to simulate and generate the channel state information from these K candidate users to all base station antennas, denoted as the channel matrix H = [h1, ..., h2]. K ] T The channel state h of the k-th user k for:
[0056]
[0057] Where, N cl N is the number of scattering clusters. ray It is the number of scattering paths in each cluster, α k,i,l θ is the complex gain of the l-th scattering path in the i-th scattering cluster from the base station to user k. k,i,l The scattering path is the departure angle relative to the base station antenna array, and the resulting array response is... d is the antenna spacing, and λ is the carrier wavelength. The simulation generates priority weights for these K candidate users, denoted as a weight vector β = [β1, ..., β2]. K ] T The superscript T indicates transpose, and j is the imaginary unit.
[0058] In this embodiment of the invention, the system simulation condition is N. t =8~128, N s=3~8, K=10~40. Channel simulation conditions are N cl =5, N ray =10, α k,j,j Follows a standard complex Gaussian distribution, β k The values of the antennas are uniformly distributed between 0.8 and 1.2. The overall departure angle of each cluster is uniformly and randomly selected within (0, 2π). The departure angle within a cluster follows a Laplace distribution with a standard deviation of 10°. The antenna spacing d is half a wavelength.
[0059] Step 2: Calculate the scheduling features γ1 and γ2 for assisted user scheduling based on the channel state information.
[0060] Where, γ1=[γ 1,1 ,…,γ 1,K ] T , γ2=[γ 2,1 ,…,γ 2,K ] T ;
[0061] Features that assist in scheduling the k-th user γ 2,k =||h k ||, k=1,…,K; superscript H indicates conjugate transpose.
[0062] Step 3: Model the above-mentioned cell communication system as a bipartite graph, containing K user vertices and N... t There are several antenna vertices. Channel H is modeled as a feature on the edges of this graph, and β, γ1, and γ2 are modeled as features on the user vertices. The scheduling result a = [a1, ..., a2] is then used. K ] T and baseband pre-encoder Modeling actions at user vertices to simulate the precoder The model is based on the actions at the antenna vertices. Subsequent GNN modules learn on this graph, keeping the graph topology unchanged, but the features and actions of the graph used are selected according to different modules, meaning that the inputs and outputs of different GNN modules are different.
[0063] In this embodiment, the constraints of the MIMO system include: scheduling result a = [a1, ..., a2] K ] T The elements in the array are either 0 or 1. If a k =1 means scheduling the kth user, if a k =0 means that the k-th user will not be scheduled, where k = 1, ..., K. Furthermore, since the number of data streams cannot exceed the number of radio frequency links, the number of 1s in the scheduling result 'a' will not exceed N. s The total power of the hybrid pre-encoder is P. tot ,Right now Since the analog precoder consists of phase shifters, all of its elements have a modulus of 1.
[0064] Existing technologies for all-digital precoding problems model the precoding problem as a bipartite graph containing user and antenna vertices, and model the precoder on the edges. This invention differs from existing technologies in that it addresses hybrid precoding problems by modeling the two precoders on different vertices.
[0065] Step four involves inputting H, β, γ1, and γ2 into the "preprocessor" module to extract the common feature B. The "preprocessor" module is a GNN that updates the hidden representations on all edges in the bipartite graph. The specific steps of step four are as follows: 4.1 to 4.3.
[0066] Step 4.1: Construct the initial hidden representation of the edges in the input "preprocessor" GNN. The initial hidden representation of the edge connecting the k-th user vertex and the n-th antenna vertex is denoted as vector x. 0,k,n To obtain this initial hidden representation, the real and imaginary parts of H are copied to the first and second dimensions of the hidden representation of the corresponding edges, respectively. Since β, γ1, and γ2 are all user vertex features, they are copied to the third, fourth, and fifth dimensions of the hidden representation of all edges connected to the user vertex, respectively. Where h k,n It is the element in the k-th row and n-th column of H.
[0067] Step 4.2: Update the hidden representations on all edges using the "preprocessor" GNN. Let x be the hidden representation of the edge between the k-th user vertex and the n-th antenna vertex after the l-th layer update. l,k,n The dimension of the vector varies with l, but for each given l, the dimension of the hidden representation on all edges is the same. The total number of layers L1 of the "preprocessor" GNN and the dimension of the hidden representation in each layer (except the first layer) are empirically tuned hyperparameters.
[0068] The update process for the hidden representation is shown in the following equation:
[0069]
[0070] l=0,1,2,k=1,…,K,n=1,…,N t ,
[0071] Where P l,1 P l,2 P l,3For trainable weights, the activation function φ is chosen as the ReLU function. The total number of layers L1 and the dimension of the hidden representation in each layer (except the first layer) are hyperparameters adjusted empirically. In this embodiment of the invention, the "preprocessor" GNN is updated three times, i.e., it has a three-layer network, with the dimension of the hidden representation changing from the initial 5 to 64, 64, and 16 respectively. When the layer number l = 0, it represents the initial hidden representation of the input.
[0072] Step 4.3: Extract the hidden representation vectors from all edges of the last layer, totaling K×N. t There are vectors, each with dimension D. B =16, together they are defined as the common feature of the edges. Each vector is This common feature is needed by the subsequent "Scheduler" and "Precoder" modules, i.e., it is the input of these GNNs, but for the "Preprocessor" module, B is the output, i.e., the actions on all edges in the graph.
[0073] Step 5: Input the common feature B into the "Scheduler" module to obtain the scheduling result a for all candidate users. The "Scheduler" consists of N... s It consists of a cascade of different GNNs, where the output of the m-th GNN is the action probability r on the K user vertices. m =[r m,1 ,…,r m,K ] T , where each r m,k It is a scalar representing the probability that the m-th GNN selects the k-th user. The input is the sum of the common feature B on the edges and the outputs of the previous m-1 GNNs. Naturally, the input to the first GNN is only B.
[0074] In this embodiment of the invention, these N s These are three different GNNs with the same number of layers and the same dimension of hidden representations. They all have a total of 2 layers, corresponding to layer numbers l = 0, 1, 2 including the initial hidden representation, and each layer has a hidden representation dimension of D. B +1, 32, 1. D B =16 refers to the dimension of the hidden representation vector on each edge in the common feature B.
[0075] The specific steps are as follows: starting from m=1, execute steps 5.1 to 5.3 repeatedly, incrementing m by 1 in each iteration, until m=N. s After execution is complete, the loop ends, and step 5.4 is executed.
[0076] Step 5.1, combine common feature B and Transform it into the initial hidden representation of the m-th GNN, where each vector in B is directly copied as an edge feature to the first D elements of the initial hidden representation. B Dimension, and vertex features The Dth initial hidden representation is copied to all edges connected to this vertex. B +1 dimension.
[0077] Let the initial hidden representation of the m-th GNN input to the scheduler be... b k,n Let r be the hidden representation of the edge connecting the k-th user vertex and the n-th antenna vertex in B. j,k This represents the probability that the j-th GNN will select the k-th user.
[0078] Step 5.2: Update the hidden representation of the m-th GNN in the same way as in Step 4.2, i.e.
[0079]
[0080] l=0,1,k=1,…,K,n=1,…,N t ,
[0081] in For trainable weights, the activation function φ is chosen to be the ReLU function. for The hidden representation updated by the l-th layer of the m-th GNN. The total number of layers L2 and the dimension of each hidden representation (except for the first and last layers) are empirically adjusted hyperparameters. In this embodiment, the last hidden representation... The dimension is 1, that is
[0082] Step 5.3: For each user node, obtain the unnormalized action probability based on the hidden representation updated by the last layer of the m-th GNN of the scheduler. Next, use the Softmax function to apply the modulus to r′. m,k Normalization yields r m,k .
[0083] In this embodiment, the function is normalized using a Softmax function containing the temperature parameter τ to obtain... Where τ = 0.1 + 0.9exp(-0.01×epoch), all samples in the training set participate in one training round, and epoch is the number of training rounds.
[0084] Step 5.4: Collect all N values from the "Scheduler" module. s The output of each GNN yields the user vertex's action—the scheduling result 'a'. During the training phase, let... During the testing phase, Middle front N s The scheduling results for users corresponding to the larger numbers are discretized as 1, and the rest are KN. s The scheduling result for each user is discretized into 0.
[0085] Step 6: Calculate the auxiliary hybrid precoding features H′ and β′, where H′ is the result of multiplying each element in a by the row corresponding to H, and β′ is the result of multiplying each element in a by the element corresponding to β.
[0086] Step 7: Input B, a, H′, and β′ into the “pre-encoder” module to obtain the preliminary analog pre-encoder W′. RF and baseband pre-encoder W′ BB The "preencoder" module is a GNN that updates the hidden representations on the edges using an attention mechanism. The specific implementation steps of step seven are described in sections 7.1 to 7.3 below.
[0087] Step 7.1: Transform B, a, H′, and β′ into the initial hidden representations of the "pre-encoder" GNN using the same method as in Step 4.1. The dimension of the first layer of the GNN is D. B +4, of which B occupies D B There are three dimensions, with a and β′ each occupying one dimension, and the real and imaginary parts of H′ each occupying one dimension. Specifically, the initial hidden representation of the "pre-encoder" GNN in this embodiment is as follows: Where h′ k,n It is the element in the k-th row and n-th column of H′, β′ k It is the k-th element of β′, and Re and Im represent taking the real part and imaginary part, respectively.
[0088] Step 7.2, update the hidden representation on each edge at each layer of the "preencoder" GNN using the following formula:
[0089]
[0090]
[0091] l=0,1,…,5,k=1,…,K,n=1,…,N t ,
[0092] Where R l,1 R l,3 R l,4 R l,5 R l,6φ represents the trainable weights; φ is the activation function, chosen as the ReLU function. The total number of layers L3 and the dimension of the hidden representation in each layer (except for the first and last layers) are empirically adjusted hyperparameters. In this embodiment, the pre-encoder's GNN has 6 layers, corresponding to l = 0, 1, 2, 3, 4, 5, and the dimension of the hidden representation in each layer is D. B +4, 128, 128, 128, 128, 4N s . These are the weights of the introduced attention mechanism, used to measure the interference of the i-th user on the k-th user on the n-th antenna. The difference between the introduced attention mechanism and the existing scaled dot-product attention mechanism is that the summation term traverses all antennas, rather than traversing the dimension of the vector.
[0093] Step 7.3, hide representation z from the last layer 5,k,n The preliminary precoding result W′ is obtained. RF and W′ BB .
[0094] Specifically, and Where z′ 5,k,n For z 5,k,n The first 2N s Each dimension, z″ 5,k,n For z 5,k,n The latter 2N s Each dimension.
[0095] Step 8, due to the unscheduled users It should be zero, so all All must be multiplied by the corresponding scheduling result a k Then, based on the system requirements and constraints, the initial precoding result W′ is processed. RF and W′ BB After normalization adjustment, we obtain W. RF and W BB .
[0096] Based on the system requirements and constraints in this embodiment, for W RF The constant modulus constraint can be obtained through a normalization function. n = 1, ..., N t ,l=1,…,N s Implementation, in which For W RF The element in the nth row and lth column, For W′ RF The element in the nth row and lth column; the total power constraint can be achieved through a normalization function. Implementation, where P totIt is the total power of the hybrid pre-encoder as indicated in step three.
[0097] Step nine involves jointly training all GNNs in the preprocessor, scheduler, and preencoder modules using unsupervised learning. During the testing phase, based on the application scenario and the values H, β, γ1, and γ2 obtained in steps one through three, these are input into the trained preprocessor module, and steps four through eight are executed. Step five yields the user's scheduling result 'a', and step eight yields the simulated preencoder W. RF and baseband pre-encoder W BB The base station, based on the obtained a and W RF With W BB Execute the corresponding scheduling and precoding strategies.
[0098] During the training phase, H, β, and a obtained in step five and W obtained in step eight are used. RF and W BB The loss function is calculated, and gradient backpropagation is performed to update the trainable weights of all GNNs in the three modules. The loss function is the performance objective of the MIMO system, such as maximizing spectral efficiency and energy efficiency, and a penalty term is appropriately added to ensure that the elements in 'a' are close to the discrete variables 0 or 1 during training, so as to reduce the performance gap between testing and training.
[0099] In this embodiment of the invention, the objective of the MIMO system is to maximize the weighted sum data rate, therefore the loss function is:
[0100]
[0101] The last two terms of the loss function Loss are penalty terms, used to control the scheduling result to approximate a discrete variable, and to ensure that the number of scheduled users does not exceed the number of radio frequency links. Weights are set w1 = 0.01, w2 = 0.1, and σ... 2 This refers to the receiver noise power. Signal-to-noise ratio (SNR)
[0102] In this embodiment of the invention, 500,000 channel samples were generated during the training phase. The Adam algorithm was used to optimize the neural network weights, with an initial learning rate of 0.0003. Mini-batch learning and batch normalization were used, with a batch size of 500. The above-mentioned graph neural network was built using Python 3.7.10 and PyTorch 1.9.0 framework.
[0103] The neural network trained according to the embodiment was compared with other commonly used methods on 10,000 test channel samples. The comparison results are as follows: Figure 2 and 3 As shown, the comparison schemes include:
[0104] Option 1: Use an iterative greedy algorithm, adding a user each time that maximizes the increase in the current weighted sum data rate, for a total of N iterations. s The hybrid precoding is achieved by manifold optimization (reference [6]).
[0105] Option 2: Use a semi-orthogonal user selection algorithm to schedule users (reference [7]). Its hybrid precoding is implemented by manifold optimization.
[0106] Option 3: Scheduling N s The user with the strongest channel. Its hybrid precoding is implemented using manifold optimization.
[0107] Option 4: Use a GNN, take H and β as inputs, and directly output a and W. RF and W BB .
[0108] Reference [6]: T. Yoo and A. Goldsmith, "On the optimality of multiantenna broadcast scheduling using zero-forcing beamforming," IEEE J. Sel. Areas Commun., vol. 24, no. 3, pp. 528–541, 2006.
[0109] References [7]:
[0110] like Figure 2 As shown, when the base station is equipped with different numbers of radio frequency links, the weighted sum and data rate that can be achieved by determining the scheduled users and precoding according to the present invention all exceed those of schemes two, three, and four, and are very close to scheme one when there are fewer radio frequency links. At the same time, the computational complexity required by the present invention is much lower than that of schemes one, two, and three.
[0111] like Figure 3 As shown, when the base station transmit power is different, the weighted sum and data rate achieved by determining the scheduled users and precoding according to this invention all exceed those of Schemes 2, 3, and 4, and are very close to Scheme 1 when the SNR is low. The calculation time of Scheme 1 is approximately 300 times that of this invention.
[0112] Because the trainable weights of a GNN are shared across all edges, a trained neural network can be directly applied to systems with different user and antenna sizes without needing to be trained again.
[0113] The foregoing has provided a detailed description of the joint user scheduling and hybrid precoding method based on deep learning proposed in this invention, and has elucidated the principles and implementation methods of this invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this invention. Therefore, the content of this specification should not be construed as a limitation of this invention.
Claims
1. A joint user scheduling and hybrid precoding method based on deep learning, characterized in that, Includes the following steps: Step 1: Collect the channel status and priority weights of all users in the cell; Suppose there is one base station in a certain cell, equipped with One antenna and A hybrid precoder consisting of multiple radio frequency links is available in this cell. A single-antenna candidate user is waiting to receive service; data collection Channel state matrix from each candidate user to all base station antennas and Priority weight of each candidate user ; Step two, the characteristics for assisting user scheduling are calculated from the channel state. and ; Among them, the features that assist in scheduling the kth user. , , ; For the channel state of the kth user, the superscript T indicates transpose and H indicates conjugate transpose; Step 3: Model the cell communication scenario as a bipartite graph, which contains... User vertices and Each antenna vertex models the channel state as the feature of the edge between the user vertex and the antenna vertex. , and Modeling the features of user vertices and scheduling results and baseband pre-encoder Modeling actions as user vertices, simulating the pre-encoder Modeled as the action of the antenna vertex; when scheduling the first When there are multiple users, the scheduling result is... elements in ,otherwise Scheduling results The number of 1s in the middle does not exceed ; Step four, , , Input preprocessor extracts common features The preprocessor is a graph neural network (GNN) used to update the hidden representations on the edges between all user vertices and antenna vertices in the bipartite graph, and then combines the updated hidden representations of all edges as a common feature. The dimension of the hidden representation on the edge between the user vertex and the antenna vertex is... ; Step 5, combine common features The input scheduler obtains the scheduling results for all candidate users. The scheduler is composed of Composed of cascaded different GNNs Each of the m-th GNNs has the same number of network layers and hidden representation dimensions, where the input of the m-th GNN is a common feature. The sum of the outputs of the first m-1 GNNs, and the output of the m-th GNN is: Action probability at each user vertex , This represents the probability that the m-th GNN selects the k-th user; the input of the first GNN is only... ;Collecting scheduler The scheduling result is obtained from the output of each GNN. ; Step 6: Calculate the features of the auxiliary hybrid precoding. and ,in To be Each element in the multiplier is multiplied by The corresponding row is obtained. To be Each element in the multiplier is multiplied by Obtained from the corresponding element in the middle; Step 7, , , , Input precoder to obtain preliminary analog precoder and baseband pre-encoder ; Depend on , , and The initial hidden representation is generated and input into the preencoder, which is a GNN with an attention mechanism used to update the hidden representation of the input, obtained from the last updated hidden representation. and ; Step 8: Install the baseband pre-encoder elements and The scheduling results for the corresponding users are multiplied, and then, based on the system's required constraints, the preliminary precoding results are processed. and After normalization adjustment, we get and ; Step nine: Jointly train all GNNs (preprocessor, scheduler, and preencoder) using unsupervised learning. , and the result obtained in step five Step 8 and Calculate the loss function and perform gradient backpropagation to update the trainable weights of all GNNs; during the testing phase, obtain the scheduling results from step five. The analog precoder obtained from step eight and baseband pre-encoder .
2. The deep learning-based joint user scheduling and hybrid precoding method according to claim 1, characterized in that, Step four includes: Step 4.1, construct the initial hidden representation on the edges of the input preprocessor; let the connection of the first... The user vertex and the first The initial hidden representation of the edges of the antenna vertices is a vector. The real and imaginary parts of the channel state corresponding to this edge are respectively used as The two dimension values will be the first The priority weight of each user, and the auxiliary first Features of user scheduling , As respectively The three dimensions of the value; Step 4.2: The preprocessor updates the hidden representations on all edges. Let the preprocessor's GNN have a total of The update formula for each layer is as follows: in, For the After the layer update, the first The user vertex and the first Hidden representation on the edges of each antenna vertex; , , For trainable weights, It is an activation function; Step 4.3: Combine the hidden representations of all edges updated in the last layer of the preprocessor to obtain the common features. .
3. The deep learning-based joint user scheduling and hybrid precoding method according to claim 1, characterized in that, Step five includes: Step 5.1: Obtain the initial hidden representation of the m-th GNN in the input scheduler. This initial hidden representation has a total of Dimension, among which Dimension is the hidden representation on the edges between the user vertex and the antenna vertex copied from the common feature B. The dimension is the sum of the outputs of the first m-1 GNNs; the input of the first GNN of the scheduler has only the common feature B; initially m=1; let an initial hidden representation of the input to the m-th GNN be... ; Step 5.2, update the hidden representation of the m-th GNN. Let the m-th GNN have a total of The update formula for each layer is as follows: in , , For trainable weights, For activation functions; Here, we have the updated hidden representation of the l-th layer of the m-th GNN, and the hidden representation output from the last layer of the m-th GNN. The dimension is 1; Step 5.3: For each user vertex, obtain the unnormalized action probability based on the hidden representation output by the last layer of the m-th GNN of the scheduler. = Use the Softmax function to Normalization yields The action probabilities of the K user vertices are obtained from the m-th GNN. Then with the previous Summing the outputs of each GNN Increment m by 1, then check if m is greater than 1. If so, proceed to step 5.4; otherwise, continue to step 5.
1. Step 5.4, collect scheduler data. The scheduling result is obtained from the output of each GNN. ; During the training phase, During the testing phase, Center front The scheduling results for users corresponding to the larger numbers are discretized as 1, and the rest... The scheduling result for each user is discretized into 0.
4. The deep learning-based joint user scheduling and hybrid precoding method according to claim 3, characterized in that, In step 5.3, temperature parameters are used. The Softmax function for Normalization, as follows: , Where parameters epoch is the number of training rounds.
5. The deep learning-based joint user scheduling and hybrid precoding method according to claim 3, characterized in that, In step 5.1, let an initial hidden representation of the m-th GNN be... , For the connection in B, the first The user vertex and the first Hidden representations on the edges of each antenna vertex This represents the probability that the j-th GNN will select the k-th user.
6. The deep learning-based joint user scheduling and hybrid precoding method according to claim 1, characterized in that, Step seven includes: Step 7.1, generate the initial hidden representation of the input preencoder's GNN; the initial hidden representation of the preencoder's GNN has Dimension, the hidden representation on the edges of user vertices and antenna vertices copied from common feature B occupies Wei, from , The obtained scheduling results and priority weights each occupy one dimension, from the feature... The real and imaginary parts of the obtained channel state each occupy one dimension; let an initial hidden representation of the input precoder be... ; Step 7.2, assume the pre-encoder's GNN has a total of In each layer, the hidden representation is updated as follows: in, , , , , For trainable weights, It is an activation function. This indicates element-wise multiplication; These are the introduced attention mechanism weights, used to measure the... The user on the first The user in the first Interference on one antenna; Step 7.3, update the hidden representation from the last layer of the GNN pre-encoder. From and Middle element; in, The dimension is ,set up The former Each dimension is ,back Each dimension is Then we get: , .
7. The deep learning-based joint user scheduling and hybrid precoding method according to claim 6, characterized in that, In step 7.1, the initial hidden representation is input. ,in, For the connection in B, the first The user vertex and the first Hidden representations on the edges of each antenna vertex yes The Middle One element, yes The Middle Line 1 The elements of the column, Re and Im, represent taking the real part and imaginary part, respectively.
8. The deep learning-based joint user scheduling and hybrid precoding method according to claim 1, characterized in that, In step eight, for and Normalization adjustments include: (1) Based on the The constant modulus constraint is obtained through the normalization function. ,get ;in, , They are respectively , The Middle Line 1 Column elements; (2) Based on the total power constraint, through the normalization function ,get ;in The total power of the hybrid pre-encoder.
9. The deep learning-based joint user scheduling and hybrid precoding method according to claim 1, characterized in that, In step nine, during the training phase, the loss function is set to the performance target of the MIMO system, and a penalty term is added to ensure that the training process is optimized. The elements in the middle are close to the discrete variable 0 or 1.
Citation Information
Patent Citations
An acquisition method of pre-detection signal and design method of PN sequence in TDS-OFDM system
CN101217290A
Joint feedback and hybrid precoding design method based on deep learning
CN113839697A