[0069] In order to make those skilled in the art better understand the present invention, the implementation process of the technical solution is further described in detail below with reference to the accompanying drawings.
[0070] like figure 1 As shown, the large-scale MIMO (multiple input multiple output) dynamic environment fingerprint positioning method based on the domain adaptive network disclosed in the embodiment of the present invention mainly includes two parts: a training phase and a positioning phase.
[0071] Training phase: Divide the two-dimensional positioning area into uniform N block =N 1 ×N 2 grid blocks and numbered, N 1 ,N 2 are the total number of rows and columns for dividing grid blocks, and record the center coordinates of each grid block in corresponds to the nth 1 line n 2 The horizontal and vertical coordinates of the center position of the column grid block. In the initial environment, K sample points are divided at equal intervals, and the base station collects the uplink pilot signals at each sample point for channel estimation to obtain the channel frequency response (CFR) matrix of the user at each sample point, where k The CFR matrix at the sample point is , and then use sparse domain transformation to obtain the fingerprint at the sample point , and record the position coordinates corresponding to the sample points at the same time and the grid block number I where k , It is the two-dimensional abscissa and ordinate value of the position of the sample point. The fingerprint at the sample point, the corresponding position coordinate and the grid block number form a position fingerprint pair The set of position fingerprint pairs of all sample points constitutes the initial position fingerprint database D s. In the current environment, the fingerprints of Z users are obtained in the positioning area, and the fingerprint at the zth sample point is , all fingerprints obtained in the current environment constitute the target database D t. Constructing a domain adaptive network, the D s and D t The fingerprints in as the input data of the domain adaptive network, D s The grid block number corresponding to each fingerprint is used as a label, and the two databases are used to train the network.
[0072] Positioning stage: The positioning module in the trained domain adaptive network is loaded to the base station, and the base station receives the CFR information of the user in real time. The CFR matrix of the user to be located is H u , the user's fingerprint F is obtained after sparse domain transformation u Used as the input of the positioning model, the probability of the user in each grid block is obtained through the model, and the center coordinate u of the search block and the search set D are obtained by combining the center coordinates of each grid block using the method of block center relocation u , using the user's fingerprint F u in D u The estimated value of the user's location coordinates is obtained by the Weighted K Nearest Neighbor (WKNN) matching method..
[0073] The specific operations of each step will be described in detail below in conjunction with specific scenarios and datasets.
[0074]In this embodiment, the fingerprint data set uses the public DeepMIMO outdoor data set simulated by ray tracing. Specifically, two positioning areas separated by 162m on the same street are selected, which respectively represent the initial environment and the current environment. The positions of the base stations relative to the positioning area are exactly the same, that is, the relative positions of the positioning areas are exactly the same, and each positioning area is 50 × 36m 2 , collected the uplink CFR information of 45431 precise location users, among which the interval between adjacent users is 0.2m. The massive MIMO at the base station is a Uniform Linear Array (ULA) composed of 64 antennas. The center frequency of the communication signal between the user and the base station is 3.5 GHz, and the signal bandwidth is 20 MHz. The channel matrix is obtained by 64 equally frequency-spaced samples within a 20MHz bandwidth, so the complex CFR matrix dimension per sample is 64×64. The position coordinates of the samples are calibrated by a two-dimensional rectangular coordinate system with the center of the array antenna as the coordinate origin.
[0075] Step 1: According to the size of the total positioning area and the sampling density of each area of the original environment, divide the two-dimensional positioning area into uniform N block =N 1 ×N 2 (The specific value is determined comprehensively by the size of the positioning area and the positioning accuracy requirements) grid blocks and numbered, the length and width of each block are d respectively 1 ,d 2. Record the center coordinates of each grid block N 1 ,N 2 are the total number of rows and columns for dividing grid blocks;
[0076]
[0077] in corresponds to the nth 1 line n 2 The horizontal and vertical coordinates of the center position of the column grid block. In this example, N block =450,d 1 =d 2 =2m.
[0078] Step 2: Collect the location fingerprints of the initial environment and build an initial location fingerprint database.
[0079] Divide K sample points at equal intervals in the positioning area in the initial environment (the specific value is determined comprehensively by the size of the positioning area and the positioning accuracy requirements), obtain the CFR information on each sample point and transform it into a fingerprint, record the corresponding position coordinates and owning grid block.
[0080] Consider a massive MIMO system under the broadband Orthogonal Frequency Division Multiplexing (OFDM) modulation scheme. In the uplink, each user sends a pilot signal, and the base station transmits a pilot signal to each user through the received pilot signal. Channel estimation is performed on the link, and the channel frequency response matrix of the uplink at each sample point position of the user is obtained, wherein the CFR information H on the lth subcarrier in the uplink of the user at the kth sample point position received by the base station k,l As shown in the following formula:
[0081]
[0082] in is all the N times that the user signal passes through from the kth sample point to the base station p is the complex channel gain on the p-th path among the paths, means that the mean is 0, the real and imaginary parts are statistically independent and the variances are The complex Gaussian distribution of ; are the zenith angle and azimuth angle of the user signal at the kth sample point position reaching the base station through the pth path, respectively, is the antenna array response matrix at the base station; d p,k is the distance from the user signal at the kth sample point to the first receiving antenna through the pth path, λ c is the lth subcarrier wavelength.
[0083] Due to the multipath delay on the p-th path
[0084]
[0085]
[0086] c is the speed of light, T c is the symbol duration, N c is the total number of subcarriers, T s is the sampling interval, and the specific value is determined by the bandwidth of the system. make in In order to round down the function, the continuous channel frequency response of formula (1) can be converted into the CFR information at each sampling time, as shown in the following formula:
[0087]
[0088] Taking the signal phase of the first antenna as the reference phase, the antenna array response matrix The specific expression is:
[0089]
[0090] in, is the Crowneco product of matrices, e (v) and e (h) are the vertical and horizontal components of the antenna array response matrix, respectively:
[0091]
[0092] in are the spacing between the rows and columns of the antennas in the antenna array at the base station, respectively, and λ is the carrier wavelength.
[0093] Then the base station receives all N in the uplink of the user at the kth sample point c Channel frequency response matrix H at subcarriers k for
[0094] bind H k The structural characteristics of the matrix are reconstructed through sparse transform reconstruction, namely Discrete Fourier Transform (DFT) transform to the angle delay domain, and the angle delay domain channel from the user signal at the kth sample point to the base station matrix G k The expression is:
[0095]
[0096] where N g is the number of cyclic prefixes, which is determined by the maximum multipath delay of the system. M and N are the number of rows and columns of the antenna, respectively. Since the antenna array at the base station in this example is a ULA array of 64, M=64, N=1 ; is the Crowneco product of matrices; V M ∈C M×M , V N ∈C N×N are the angular discrete Fourier transform (DFT) matrices of the antenna row and column, respectively, where C represents the set of complex numbers, is the delay DFT matrix, and the specific expression is as follows:
[0097]
[0098] where [V M ] m,n for V M The m-th row and n-column elements, for The m-th row and n-column elements.
[0099] V M , V N matrix and matrices respectively the CFR matrix H k Map to the angle domain and the delay domain to obtain the angle delay domain matrix G k ∈C 64×64 , C stands for the set of complex numbers. Further ask for G k The expectation of the absolute value of each element in to obtain its corresponding fingerprint F k , whose expression is:
[0100]
[0101] where E{·} is the expected value, and ⊙ is the Hadamard product.
[0102] In this embodiment, the CFR matrix of each sample point is saved in the data set, where N c =N t =64, then H k ∈C 64 ×64 Represents the channel frequency response of the user signal at the position of the kth sample point at 64 subcarriers on 64 antennas.
[0103] In this embodiment, the CFR matrix of each sample point in the initial environment and the current environment positioning area has been obtained in the data set. In the initial environment, we take the data point at the 0.85 position in the data set as the sample point, and the data at the remaining position is used for the domain adaptive network. The verification and positioning accuracy of the positioning model are tested, so K=38616 in this embodiment. The fingerprints of all sample points are obtained by formulas (6), (7) and (8), where the fingerprint of the kth sample point in the initial environment is expressed as
[0104] The base station obtains the two-dimensional position coordinates of each sample point in the initial environment through the user's active reporting and its grid block number I k , in this example y k The value of is available directly from the dataset. The position coordinates are calibrated by a two-dimensional plane coordinate system with the center of the base station antenna array as the origin. The x-axis direction of the two-dimensional coordinate system is parallel to the antenna array plane and along the horizontal direction, and the y-axis direction is perpendicular to the antenna array plane and points to the area to be positioned. Put the user's fingerprint at the kth sample point , the corresponding position coordinate y k and grid block number I k make up fingerprint pairs It means that the fingerprint in the initial environment is of users whose location is y k , the corresponding grid block number is I k. The set of fingerprint pairs of all sample points in the initial environment in the positioning area constitutes the initial position fingerprint database D s , D s ={pair k |k=0,1,...,K-1}.
[0105] Step 3: Collect user fingerprints in the current environment and build a target database.
[0106] In the current environment, it is necessary to obtain the CFR information of Z users. In this embodiment, the data at position 0.1 in the current environment data set is randomly selected, that is, Z=4543, and their CFR information is obtained through formulas (6), (7), (8) Obtain the corresponding fingerprint, where the fingerprint of the zth sample point in the current environment is expressed as , the fingerprint set of all sample points in the current environment constitutes the target database D t ,
[0107] Step 4: Build a Domain Adaptive Network, leveraging D s and D t train the network;
[0108] After obtaining the fingerprint database, it is necessary to build a domain adaptive network and train it with the database to obtain the final localization model. like figure 2As shown, the domain adaptation network contains a feature extraction network ψ, a grid block classification network f and an auxiliary classification network f'. where the input of the domain adaptive network during training is D s or D t fingerprint in and , the input fingerprint data obtains the dimension-reduced feature vector through the feature extraction network ψ; the feature vector is input into the grid block classification network and the auxiliary classification network respectively, and finally the fingerprints located in different grid blocks are obtained in the output layer of the two classification networks. Predict the probability.
[0109] The feature extraction network ψ is composed of 6 convolution blocks cascaded; each of the first 5 convolution blocks contains a convolution layer, a batch normalization layer and a maximum pooling layer, and the last convolution A block consists of only one convolutional layer and one batch normalization layer. The activation functions of the convolutional layers are all ReLU functions. In this embodiment, the convolution kernel sizes of all convolutional layers are 32×32, 16×16, 8×8, 5×5, and 3×3, respectively. The numbers are 8, 16, 32, 64, 64, 256 respectively.
[0110] The grid block classification network f consists of two fully connected layers and a batch normalization layer, the activation function of the former fully connected layer is the ReLU function, and the dimension of the latter fully connected layer is the total number of grid blocks N block , and the Softmax activation function is used to obtain the probability of the fingerprint in each grid block. The formula for the Softmax function is:
[0111]
[0112] where x is the output vector of the network, [ ] i represents the ith element of the vector, N class is the number of categories. The batch normalization layer acts between the two fully connected layers to prevent overfitting and speed up training. In this example, N block =4450, the dimensions of the two fully connected layer vectors are 256 and 450 in turn, of which 450 corresponds to the total number of grid blocks.
[0113] The auxiliary classification network f' is basically the same as the grid block classification network, and it has an additional gradient reversal layer at the input end, which is used to perform the inversion operation in the process of gradient back propagation.
[0114] In this embodiment, the fingerprints of the initial environment and the current environment are input into the domain adaptive network, the size of the input fingerprint data is 64*64*1, and the feature size after the feature extraction network is 1024*1. Then, it is respectively passed to the grid block classification network and the auxiliary classification network to obtain the 450-dimensional output vector corresponding to the estimated probability of the fingerprint in each grid block.
[0115] The sample classification loss and divergence difference loss are used as the loss function of the network, in which the sample classification loss is only estimated by the labeled samples of the initial database, and the divergence difference loss is estimated jointly by the samples of the initial database and the target database. The sample classification loss adopts the cross entropy loss function, and its estimated value is:
[0116]
[0117] in is the initial fingerprint sample F s The kth fingerprint sample in , I k is the grid block label corresponding to the kth fingerprint sample in the sample grid block label I, [f( )] Ik represents the probability that the grid block classification network outputs the Ith k The probability of the block grid; the divergence difference loss is calculated as:
[0118]
[0119] where F t is the fingerprint sample in the target database, γ is a weight factor greater than 1, and 6 is taken in this embodiment, where L(f'(·), f(·)) is the cross-entropy loss function, which is used to calculate the grid block classification The divergence of the network and the auxiliary classification network on the initial database,
[0120] L(f'(·),f(·))=-log[[f'(·)] argmax{f()} ] (12)
[0121] where arg max{·} is the subscript of the largest element of the vector. To avoid exploding gradients, L'(f'( ), f( )) uses a modified cross-entropy loss to calculate the divergence of the two classification networks on the target database,
[0122] L'(f'(·),f(·))=log[[1-f'(·)] argmax{f(·)} ] (13)
[0123] The training of the final domain adaptation network requires alternating two parts of adversarial training:
[0124]
[0125] Update the corresponding f,ψ,f'. α is a weighting factor between 0 and 1, and 1 is taken in this embodiment. due to ε γ is not differentiable on f, i.e. ε γ f will not be updated during gradient backpropagation, so through the gradient reversal layer in f', the above two-part training can be converted into direct training to optimize the objective function Specifically, in this embodiment, the fingerprints in the fingerprint database of the initial environment and the current environment are input into the domain adaptive network to obtain their output probabilities on the two classifiers, and then the objective function L is estimated. c -αε γ , and then update the weight parameters of the domain adaptive network through the stochastic gradient descent method to train the domain adaptive network.
[0126] Step 5: In the positioning phase, the positioning model is loaded to the base station, and the base station receives the user information and predicts the probability of the grid block where it is located.
[0127] The feature extraction network ψ and grid block classification network f in the trained domain adaptive network are composed of a positioning model and loaded on the base station, and the corresponding positioning module can be expressed as O(·)=f(ψ(·)). The base station receives the pilot information of the positioning user signal in real time, and estimates the uplink CFR matrix. The calculation process and the H at each sample point in the training phase k The calculation process is the same. Let the CFR matrix of the current user to be located be H u , which is transformed into the user fingerprint F by formulas (6), (7), (8) u , and input it into the positioning module O(·), the probability b of each grid block can be obtained u =O(F u ), where [b u ] i ,i=0,1,...,N block -1 represents the probability that the user's fingerprint is in the ith grid block.
[0128] Step 6: Use the block center relocation method to obtain the search block coordinates, determine the search set, and estimate the user position through WKNN.
[0129] Since there is no space between adjacent grid blocks, the positioning model is prone to misjudgment when the user is close to the boundary of the grid block. Directly using the grid block with the highest probability as the search block will easily lead to the search block not including the user's real position. The user position estimate obtained by WKNN matching has a large error. Using the block center relocation method to obtain the center coordinates of the search block by weighted summation according to the probability of the user to be located in all grid blocks combined with the center coordinates of the grid blocks, this problem can be avoided to a large extent.
[0130] After obtaining the probability vector b of the user to be located in each grid block u Then filter first to get b' u to avoid the interference of small probability grid blocks, where:
[0131]
[0132] then b' u The indexes in are sorted according to their corresponding element values from large to small to obtain the index vector g, that is, to sort each block according to the probability of the block, there is b' u The index value corresponding to the i-th largest element in [g] i. in 0≤i≤N block -2. Consider b' if and only if the user is close to the 4 corners of the grid block u Have at most 4 larger element values at the same time. Therefore, select the four grid blocks with the greatest probability of the user's fingerprint, and combine the center coordinates of the corresponding blocks obtained in step 1 to perform a weighted summation to obtain the center coordinates of the search block u=(u 1 ,u 2 ),
[0133]
[0134] The search block is the same size as the grid block.
[0135] The search set D can be further obtained by searching blocks u , in this example, due to the length and width d of the grid block 1 =d 2 =1m, then the search set can be expressed as:
[0136]
[0137] Use the fingerprint of the user to be located to perform WKNN matching in the search set to obtain the final estimated position y of the user u
[0138]
[0139] where y u To locate the estimated location of the user, N a for from D u The number of position fingerprint logarithms with the highest similarity with the fingerprint of the user to be located is selected as 3 in this embodiment, and the cosine similarity is selected as the similarity. is the nth screened out a The location coordinates of each sample fingerprint
[0140]
[0141] in Indicates to locate the user fingerprint and the nth a The cosine similarity of the fingerprints of the sample points:
[0142]
[0143] where vec{·} is the vectorization of the matrix, ||·||| F is the Frobenius norm of the matrix. .
[0144] The specific embodiments described herein are merely illustrative of the spirit of the invention. Those skilled in the art to which the present invention pertains can make various modifications or additions to the described specific embodiments or substitute in similar manners, but will not deviate from the spirit of the present invention or go beyond the definitions of the appended claims range.