Compressed sensing large-scale random access method based on grouped pilot frequency and user ID
By combining grouped pilots and user IDs, along with a multi-slot structure and a sparse adaptive matching pursuit algorithm, the problem of excessive pilot quantity and pilot collisions in large-scale user access scenarios is solved, improving user detection capability and channel estimation accuracy. It is suitable for large-scale, high-overload random access scenarios.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-05
- Publication Date
- 2026-03-24
AI Technical Summary
Existing CS-MUD multiple access schemes suffer from problems such as excessive number of pilots, high cross-correlation, decreased algorithm performance, and increased complexity in large-scale user access scenarios. Furthermore, user-random pilot selection leads to pilot collisions that make it difficult to separate user signals.
A compressed sensing large-scale random access method based on grouped pilots and user IDs is adopted. By dividing user terminals into multiple groups, generating a shared pilot sequence for each group, and using the grouped pilot sequence to generate a unique user ID for each user, the method combines a multi-slot structure and a sparse adaptive matching pursuit algorithm (PASAMP) to perform user activity detection, channel estimation, and uplink data detection.
It effectively reduces computational complexity, improves active user detection capabilities and channel estimation accuracy, reduces pilot collision probability, and is suitable for large-scale, high-overload random access scenarios.
Smart Images

Figure CN121728604A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of wireless communication technology, and in particular to a compressed sensing large-scale random access method based on packet pilots and user IDs, applicable to random access systems in massive machine-type communication (mMTC) scenarios. Background Technology
[0002] With the rapid development of the Internet of Things (IoT), mMTC has become one of the key application scenarios for 5G and future B5G / 6G mobile communication systems. In mMTC scenarios, base stations need to support the concurrent access of tens of thousands of devices, which typically have low power consumption, low data rate, and random burst communication characteristics. Utilizing the sporadic burst access transmission characteristics of a large number of devices, researchers have proposed a random access mechanism based on Compressive Sensing (CS): user terminals spread service data with a specific spreading sequence, i.e., ID, and then randomly transmit short data packets to the base station. The base station receives uplink signals from multiple active users frame by frame. By constructing an uplink sparse signal matrix and an observation matrix, the uplink signals of multiple active users are reconstructed using Compressive Sensing-Multiuser Detection (CS-MUD) technology.
[0003] Compared with traditional multiple access technologies, CS-based access mechanisms offer numerous advantages such as no authorization required, lower signaling overhead, and higher resource utilization, making them suitable for bursty transmission scenarios of user terminals. Before data reconstruction, the CS-MUD multiple access scheme requires User Activity Detection (UAD) and Channel Estimation (CE), tasks typically accomplished using user-transmitted pilot signals. After receiving all user and pilot signals, the base station utilizes the sparsity of the pilot matrix resulting from bursty user transmissions and CS technology to recover the active user set, i.e., the support set. Simultaneously, it estimates the uplink channel coefficients of each active user and reconstructs the user's uplink data.
[0004] Most existing CS-MUD multiple access schemes employ a fixed user-pilot pre-allocation strategy. The number of pilots in the system increases with the number of users, which not only expands the size of the user pilot matrix but also increases the cross-correlation between pilots from different users, leading to a decrease in CS-MUD algorithm performance. To address this issue, existing technologies propose a random access scheme based on pilot contention. In this scheme, users randomly select a pilot sequence from the pilot pool for uplink access transmission upon access. The base station detects active users based on the pilot signals and determines the access user's identity using an ID signal. This scheme solves the performance degradation problem caused by the excessive number of pilots in the fixed user-pilot configuration scheme. However, random pilot selection by users introduces pilot collisions, making it difficult for the base station to separate signals from different users selecting the same pilot.
[0005] Furthermore, most existing CS-MUD multiple access schemes are implemented in the code domain. Large-scale user detection has limited capacity to handle large-scale access. When the number of users is too large, the cross-correlation of user pilot signals also increases significantly, leading to a decrease in the performance of the CS-MUD algorithm and a substantial increase in its actual complexity. Summary of the Invention
[0006] The present invention aims to at least partially solve the technical problems existing in the related art.
[0007] The purpose of this invention is to provide a compressed sensing large-scale random access method based on packet pilots and user IDs, suitable for large-scale, high-overload multi-user uplink random access scenarios.
[0008] To achieve the above objectives, this invention provides a compressed sensing large-scale random access method based on packet pilots and user IDs, comprising the following steps:
[0009] S1. The base station divides the N user terminals to be accessed into K groups, and generates a shared pilot sequence for each group. And using grouped pilot sequences Generate a unique user ID for each user terminal within the group;
[0010] S2. The user uses a time frame structure consisting of one pilot time slot, one ID time slot, and L data time slots to perform uplink signal transmission, and transmits its pilot sequence, user ID, and ID spread spectrum service signal in sequence.
[0011] S3. The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing equations. The SAMP algorithm is used to jointly perform user activity detection, channel estimation and uplink data detection.
[0012] S4. The base station determines whether the user access is successful based on the uplink signal detection result. If the uplink data is successfully detected, the user access is successful; otherwise, the access fails.
[0013] A further preferred embodiment of the present invention is that step S1 specifically comprises:
[0014] S11. The base station obtains the daily active time feature vectors of all users, and uses the K-means algorithm to divide all N user terminals into K groups, with the number of users in each group being... , Indicates rounding up to the nearest integer;
[0015] S12. Select a group k. The base station randomly selects B points from the unit circle in the complex plane to form a B-dimensional column vector, which serves as the common pilot sequence for group k, expressed as:
[0016] (1)
[0017] in, Represents the transpose of a vector or matrix; Indicates pilot signal The b-th element, , j is the imaginary unit. Represents a B-dimensional complex field column vector space;
[0018] S13. Repeat step S12 until pilot sequences for all groups are generated;
[0019] S14, Based on the generated grouped pilot sequence According to a specific shift pattern The user's ID is generated by a circular right shift, represented as follows:
[0020] (2)
[0021] (3)
[0022] in, This represents the remainder operation in division, that is, taking the remainder when n is divided by G. Let B be the user's spreading sequence, i.e., the user's ID, and let B be the length of the user ID. B is greater than the data G for each user group.
[0023] As a preferred embodiment, the service signal spread by user ID is specifically described as follows: Let user n's ID be... Its upstream business data vector is ,data Represents a user-modulated data symbol, consisting of the user's spreading sequence. Spread spectrum to vector Spread spectrum service signal of user n Represented as:
[0024] (4)
[0025] Let the pilot signal of the group k containing user n be... That is, the pilot sequence of user n is A frame of uplink signal for user n Represented as:
[0026] (5)
[0027] Specifically, when user n is in an inactive state because they have not sent any service data in the current frame, their service data... .
[0028] As a preferred option, step S3 specifically involves:
[0029] S31. The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing equations.
[0030] S32. Based on the compressed sensing equation, the SAMP algorithm is used to jointly perform user activity detection, channel estimation and uplink data detection.
[0031] Preferably, in step S31, the base station receives the uplink signals from multiple users frame by frame and models them as compressed sensing equations, specifically as follows:
[0032] S311. Model the received signal of the pilot time slot in one frame:
[0033] Pilot signals received by the base station in the pilot time slot The sum of pilot signals from all N users in K clusters is expressed as:
[0034] (6)
[0035] in, It is the sum of the uplink channel coefficients of the active users in the k-th group. , Let be the set of all user indices in the k-th group. Indicates an indicator function, For users Narrowband channel fading coefficient between the base station and the station. For path loss, Rayleigh fading coefficient, , It is additive white Gaussian noise in the preamble slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, ;
[0036] Equation (6) can be written in matrix form:
[0037] (7)
[0038] in, It is a grouped pilot matrix. , This represents the user-weighted sum of channel coefficients vectors for all packets. , It is a sparse vector;
[0039] S312. Model the received signal of the ID time slot in a frame:
[0040] The base station receives the signal in the ID time slot of a frame Represented as:
[0041] (8)
[0042] in, Indicates the state of user n. This indicates that user n is active. Let n be the channel fading coefficient from user n to the base station. The ID slot signal for the nth user;
[0043] Equation (8) can be written in matrix form as follows:
[0044] (9)
[0045] in, This is the weighted channel coefficient vector from the user to the base station. , For the user's spreading matrix, It is additive white Gaussian noise in the ID time slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, , It is a sparse vector;
[0046] S313. Model the received signal of a data time slot in a frame:
[0047] The data signal vector received by the base station in the l-th data time slot of a frame Represented as:
[0048] (10)
[0049] in, For user n, the spreading sequence This represents the channel coefficient matrix for N users. For N users transmitting service data vectors in the l-th data time slot, This is the additive interference vector received in the l-th data time slot;
[0050] Introducing matrices The specific formula for calculating a frame of data signal received by the base station is as follows:
[0051] (11)
[0052] in, This represents the service data matrix transmitted by the user in L data time slots. This represents the additive noise matrix received by the base station in L data time slots.
[0053] Preferably, step S32 employs the SAMP algorithm to jointly perform user activity detection, channel estimation, and uplink data detection, specifically as follows:
[0054] S321, The base station uses the received pilot signal vector The SAMP algorithm is used to detect groups with active users and obtain the active user set. and its rough estimate , This indicates the number of active user groups, where This indicates finding the number of elements in a set;
[0055] S322, Set The m-th element corresponds to the user pilot sequence (m) Vertically concatenated with its ID to form an extended pilot vector , ; set Extended pilot for all users Arranged in column order to form a joint observation matrix ;Received user pilot sequence and ID signal vector The observation signal was obtained by longitudinal splicing. Combined with vectors sum matrix Construct new CS equations:
[0056] (12)
[0057] in, Represents a set Channel coefficient vectors of active users, Represents a set The m-th element is the active user. Channel attenuation coefficient;
[0058] Based on equation (12), the SAMP algorithm is used to detect the precise set of active users, i.e., the support set. and active user channel coefficient vector This allows for the reconstruction of the uplink data signal.
[0059] Preferably, step S321 is as follows:
[0060] S3221, Input received pilot signal vector User ID signal vector Data signal matrix Grouped pilot matrix User ID matrix noise variance ;
[0061] Set the iteration rounds as In the i-th iteration, the residual of the preamble signal is The initial selection set of active groups is The active group candidate set is The final selection of active groups is The channel coefficient residual is Select the initial set of active users as Active user candidate set is The final selection of active users is The sparsity of the grouping is User sparsity is ;
[0062] S3222, Parameter Initialization:
[0063] Set the number of iterations Time; Observation matrix of active groups Initial value of leading residual Initial values of the active group initial selection set = Initial value of active group candidate set Active Group Final Selection The initial value for the sparsity of active groups is... ;
[0064] Let the number of iterations The sparsity of active groups in the current iteration ;
[0065] S3223. Determine the initial selection set of active groups;
[0066] Calculate the pilot matrix Residuals of all columns and the leading time slot The relevant values are selected, and the largest one is chosen. The indexes of the relevant values constitute the initial selection set of active groups. The specific calculation formula is as follows:
[0067] (13)
[0068] in, This represents the set or matrix formed by taking the indices of the M largest elements in a vector *. Represents the leading matrix The conjugate transpose of ;
[0069] S3224. Determine the active group candidate set;
[0070] Based on the final selection set of active groups from the previous iteration and the initial selection set of this iteration The active grouping candidate set for this iteration is obtained by taking the union of the sets. The specific calculation formula is as follows:
[0071] (14);
[0072] S3225, Calculate the final selection set of active groups;
[0073] Compute set Active group weighted sum channel coefficient vector The estimated value Select the vector with the largest absolute value. The indices of the elements constitute the final selection set of the active groups. The specific calculation formula is as follows:
[0074] (15)
[0075] in, Represents a set The matrix formed by arranging the leading elements of the active groups in columns. For matrix The pseudo-inverse matrix;
[0076] S3226. Update the leading residual;
[0077] Calculate the leading residual for the current round :
[0078] (16)
[0079] in, Represents a set A matrix formed by arranging the group leaders of active users in columns; Representation matrix The pseudo-inverse matrix;
[0080] S3227, Iterate through active group detection until convergence;
[0081] Calculate the energy of the leading residual Combine it with noise variance In comparison, among them for E() represents the statistical average;
[0082] 1) When When the iterative detection of active groups terminates, the output is... ;
[0083] 2) When At that time, compare the residual energy of this iteration. Residual energy compared to the previous iteration :
[0084] when At that time, let the number of iterations be... Return to step S3223 and perform the next round of active group detection;
[0085] when When, let the group sparsity And the number of iterations Return to step S3223 to perform the next round of active group detection.
[0086] As a preferred option, step S322 specifically includes:
[0087] S3231, Based on the active user group set output in step S321 Construct a joint observation matrix and CS equations;
[0088] The active group set output in step S322 All user indexes are placed in a set The middle part serves as a rough estimate of the set of active users; the initial set of active users for each ID slot is... = ; the initial selection Construct an extended pilot matrix by arranging the pilots of all active users in column order. The preliminary selection Construct an extended ID matrix by arranging all active user IDs in column order. The specific formula is as follows:
[0089] (17)
[0090] (18)
[0091] in, Represents a set The m-th element is the active user. The preceding, Represents a set The m-th element is the active user. ID; Represents a set The number of elements in the middle, which is a rough estimate of the number of active users;
[0092] matrix sum matrix Arranged in column-aligned groups to form a joint observation matrix. :
[0093] (19)
[0094] in, For matrix The m-th column vector represents active users. Extended ID, ;matrix ;
[0095] Received user pilot vector and user ID vector Vertical stitching yields joint observation signals. ; by matrix sum vector Construct the new CS equation described in equation (12);
[0096] S3232, Parameter Initialization:
[0097] Set the number of iterations Initial values of channel coefficient residuals Initial values of the initial selection set of active users = Initial value of active user candidate set Initial value of the final selection set of active users ;make Initial value of active user sparsity ;
[0098] S3233, Constructing an initial selection of active users:
[0099] Calculate the observation matrix The column vectors and the residuals of the current channel coefficients The correlation is selected from the top of the correlation. The user indices corresponding to each column vector constitute the initial set of active users for this iteration. :
[0100] (20);
[0101] S3234. Construct a candidate set of active users:
[0102] Final selection of active users based on the previous iteration With the initial selection of active users in this iteration By combining the sets, we obtain the candidate set of active users for this iteration. :
[0103] (twenty one);
[0104] S3225. Determine the final selection of active users:
[0105] Reconstruct collection The channel coefficient vector of active users is Select the vector with the largest absolute value from the reconstructed vectors. The user indexes constitute the final selection set of active users for this iteration. ,Right now
[0106] (twenty two)
[0107] in, Represents a set The observation matrix is composed of the extended IDs of active users arranged in column order. For matrix The pseudo-inverse matrix; Representing vectors The m-th element, Represents a set The number of elements in the middle;
[0108] S3226. Residual calculation, the specific calculation formula is as follows:
[0109] (twenty three)
[0110] in, Represents a set A matrix composed of the extended IDs of active users arranged in column order. For matrix The pseudo-inverse matrix;
[0111] S3227. Iterate through active user detection until convergence;
[0112] Calculate residual energy Combine it with noise In comparison, among them for E() represents the statistical average;
[0113] 1) When When the active user iteration detection terminates, the support set is output. and the uplink channel coefficient vector of active users The estimated value ;
[0114] make ,in, The complete set consisting of all users. This represents the set of inactive users; and Merge them in user sequence number order to obtain the uplink channel attenuation coefficient vector. The estimated value ;
[0115] 2) When At that time, compare the residual energy of this iteration. Residual energy compared to the previous iteration :
[0116] when At that time, let the number of iterations be... Return to step S3233 and perform the next round of active user detection;
[0117] when At that time, user sparsity Number of iterations Return to step S3233 to perform the next round of active user detection;
[0118] S3228, Business Data Estimation:
[0119] Based on support set The received signal matrix for the data time slot Performing least squares estimation yields the uplink signal matrix of active users. The estimated value :
[0120] (twenty four)
[0121] in, , Indicates from the spreading matrix Extract the set of active users A matrix formed by the columns corresponding to the user serial numbers.
[0122] Beneficial effects: This invention utilizes a multi-slot frame structure that combines grouped pilots and user IDs, and introduces a pilot-assisted sparsity adaptive matching tracking algorithm. By narrowing the search range of the second step of accurate active user detection through the first step of active group detection, the computational complexity of the original SAMP algorithm is greatly reduced; it is suitable for large-scale high-overload random access scenarios.
[0123] By using pilot time slots to assist subsequent time slots in executing the adaptive matched pursuit algorithm, the dimensionality of the observation is improved to a certain extent. This not only significantly increases the maximum number of active users that can be supported, but also improves the accuracy of subsequent LS channel estimation.
[0124] The PASAMP detection scheme inherits the idea of multiple users sharing the same pilot in the traditional pilot contention orthogonal matching tracking scheme. It can reduce the total number of pilots to enhance the characteristics of individual users, thereby effectively improving the maximum active user detection capability of the CS algorithm. At the same time, the PASAMP algorithm replaces random pilot contention with pilot grouping, which limits the range of pilot collisions and can reduce the probability of access failure caused by collisions through accurate active user detection in the second step. Attached Figure Description
[0125] Figure 1 This is a model diagram of a large-scale multiple access system based on pilot ID adaptive matching pursuit according to an embodiment of the present invention.
[0126] Figure 2 This is an uplink transmission frame structure diagram of the large-scale multiple access method based on pilot ID adaptive matching pursuit in an embodiment of the present invention.
[0127] Figure 3 This is a block diagram illustrating the SAMP algorithm principle of the large-scale multiple access method based on pilot ID adaptive matching pursuit in this embodiment of the invention.
[0128] Figure 4 This is a comparison chart of simulation results of access success rates for four schemes under different numbers of active users in this embodiment of the invention. Detailed Implementation
[0129] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, embodiments of this invention, and should not be construed as limiting the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention. In the description of this invention, it should be understood that the terminology used is for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0130] The following is combined with Figures 1-4 This invention describes a large-scale multiple access method based on pilot ID adaptive matched pursuit. In this scheme, terminal users perform uplink random access transmission using a multi-timeslot transmission frame structure of "pilot time slot + ID time slot + data time slot". The base station receives uplink signals from multiple users frame by frame and uses a pilot-aided sparsity adaptive matching pursuit algorithm (PASAMP) to jointly perform user activity detection, channel estimation, and uplink data detection. First, the base station uses the pilot time slot to receive signals and perform active packet detection to obtain a set of packets that may contain active users, reducing the computational complexity of subsequent multi-user detection. Then, it combines the pilot time slot and ID time slot signals to perform accurate active detection of users within the packets, determining the active user set and improving the accuracy of active user detection and channel estimation performance. Finally, it estimates the uplink channel coefficients of active users based on the detected support set and reconstructs their uplink service data.
[0131] Example 1: This example provides a compressed sensing large-scale random access method based on packet pilots and user IDs, including the following steps:
[0132] Step 1: As Figure 1 As shown, the base station located in the center of the cell divides all N user terminals waiting to access into K user groups, and each group is assigned a shared pilot sequence. And assign a unique user ID to each user terminal within the group. ;
[0133] Step Two: As Figure 2 As shown, the user performs uplink access transmission using time frames. Each frame contains one pilot time slot, one ID time slot, and L data time slots. The user transmits its pilot sequence, user ID, and service signal spread by ID in (2+L) time slots in a frame in sequence.
[0134] Step 3: The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing (CS) observation equations. It then uses a pilot-assisted sparse adaptive matched pursuit algorithm (PASAMP) to jointly perform user activity detection, channel estimation, and uplink data detection. Figure 3 As shown, in the first stage, the SAMP algorithm is used to detect the user group to which the active user belongs by the CS equation received from the pilot time slot; in the second stage, the SAMP algorithm is used to detect the specific active user support set by combining the CS equations of the pilot time slot and the user ID time slot, and the channel coefficients are reconstructed; in the third stage, the service data signal is reconstructed based on the support set and the channel coefficients.
[0135] Step 4: The base station determines whether the user's access is successful based on the uplink signal detection results. If the uplink data is successfully detected, the user's access is successful; otherwise, the access fails.
[0136] like Figure 1 The system scenario diagram shown below illustrates the specific settings of the cellular system described in step one:
[0137] Consider a single-cell system where the base station is located in the cell center and manages N users within the cell. At any given moment, only a small number of users, na, send signals to the base station, where na < 0. <N;
[0138] Considering that users of similar terminals typically have relatively fixed and periodic active periods, i.e., user activity patterns are quasi-periodic, the K-means algorithm is used to cluster N users in a cell based on their daily active time feature vectors to obtain K cluster centers. Then, users are divided into K groups according to their distance from the cluster centers, with users having similar active periods grouped into the same group. Each group contains G users. , This indicates taking the integer part.
[0139] The user pilot and ID sequence allocation and generation methods described in step one are as follows:
[0140] Pilot signals for all users are assigned by the base station, which assigns one pilot signal to each user group. All users in the group use this pilot:
[0141] The pilot sequence for the Kth user packet is It is randomly selected from the unit circle in the complex plane. The vector generated by the points, where Represents the transpose of a vector or matrix; j is the imaginary unit. Let represent the B-dimensional complex field column vector space.
[0142] At the same time, the base station assigns a user ID to each user, and the ID of the nth user is the spreading sequence. It consists of the pilot sequence of the group to which user n belongs. According to a specific shift pattern Generates by circular right shift, shift mode and user ID They are represented as follows:
[0143] (1)
[0144] (2)
[0145] in, This represents the remainder operation in division, that is, taking the remainder when n is divided by G. Let B be the user's spreading sequence, i.e., the user's ID, and let B be the length of the user ID. B is greater than the data G for each user group.
[0146] like Figure 2 The uplink transmission frame structure shown in step two comprises the following signal composition for the user frame:
[0147] For any user n, without loss of generality, let user n belong to group k, then its pilot signal... Let its ID be... The upstream business data vector is Each data This represents a user-modulated data symbol, which is represented by the user ID. Spread spectrum to vector Therefore, the spread spectrum service signal of user n Represented as:
[0148] (3)
[0149] Therefore, one frame of uplink signal for user n Represented as
[0150] (4)
[0151] Specifically, if user n is in an inactive state because they have not sent any service data in the current frame, their service data vector is specified. A schematic diagram of the signals transmitted by all users within one uplink frame is shown below. Figure 2 As shown.
[0152] In step three, the process of the base station receiving multi-user signals from three time slots in a frame and modeling them as CS equations is as follows:
[0153] Step 1-1: The multi-user signal received via pilot time slot is modeled using the following CS equation:
[0154] Pilot signals received by the base station in the pilot time slot The sum of pilot signals from all N users in K clusters is expressed as:
[0155] (5)
[0156] in, It is the sum of the uplink channel coefficients of the active users in the k-th group. , Let be the set of all user indices in the k-th group. Indicates an indicator function, For users Narrowband channel fading coefficient between the base station and the station. For path loss, Rayleigh fading coefficient, , It is additive white Gaussian noise in the preamble slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, ;
[0157] Equation (5) can be written in matrix form as follows:
[0158] (6)
[0159] in, It is a grouped pilot matrix. , This represents the user-weighted sum of channel coefficients vectors for all packets. , It is a sparse vector;
[0160] The received signal for the ID time slot is:
[0161] The base station receives the signal in the ID time slot of a frame Represented as:
[0162] (7)
[0163] in, Indicates the state of user n. This indicates that user n is active. Let n be the channel fading coefficient from user n to the base station. The ID slot signal for the nth user;
[0164] Equation (7) can be written in matrix form as follows:
[0165] (8)
[0166] in, This is the weighted channel coefficient vector from the user to the base station. , For the user's spreading matrix, It is additive white Gaussian noise in the ID time slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, , It is a sparse vector;
[0167] The received signal for the service data time slot is:
[0168] The data signal vector received by the base station in the l-th data time slot of a frame Represented as:
[0169] (9)
[0170] in, For user n, the spreading sequence This represents the channel coefficient matrix for N users. For N users transmitting service data vectors in the l-th data time slot, This is the additive interference vector received in the l-th data time slot;
[0171] Introducing matrices The specific formula for calculating a frame of data signal received by the base station is as follows:
[0172] (10)
[0173] in, This represents the service data matrix transmitted by the user in L data time slots. This represents the additive noise matrix received by the base station in L data time slots.
[0174] The specific steps of the pilot ID-based adaptive matching pursuit (PASAMP) algorithm described in step three are as follows:
[0175] Step 3-2-1: Algorithm input and parameter definition;
[0176] The pilot signal vectors received in different time slots within a frame User ID signal vector and data signal matrix and the corresponding pilot matrix User ID matrix noise variance This serves as the input to the PASAMP algorithm; the active user support set... Reconstructed user channel coefficient vectors and reconstructed business data signals Algorithm output. The variable names used in the PASAMP algorithm are defined as follows: Let the iteration round be... In the i-th iteration, the residual of the preamble signal is The initial selection set of active groups is The active group candidate set is The final selection of active groups is The channel coefficient residual is Select the initial set of active users as Active user candidate set is The final selection of active users is The sparsity of the grouping is User sparsity is .
[0177] Phase 1: Active user packet detection based on pilot signals:
[0178] Step 3-2-2: Parameter initialization;
[0179] Let the number of iterations ; Observation matrix of active groups Initial value of leading residual Initial values of the active group initial selection set = Initial value of active group candidate set Active Group Final Selection The initial value for the sparsity of active groups is... Let the number of iterations be... The sparsity of active groups in the current iteration .
[0180] Step 3-2-3: Determine the initial selection set of active groups;
[0181] Calculate the pilot matrix Residuals of all columns and the leading time slot The relevant values are selected, and the largest one is chosen. The indexes of the relevant values constitute the initial selection set of active groups. It is calculated as follows:
[0182] (11)
[0183] in, This represents the set formed by taking the indices of the M largest elements in a vector *; matrix Represents the leading matrix The conjugate transpose of .
[0184] Step 3-2-4: Determine the active group candidate set;
[0185] The final selection of active groups from the previous iteration The initial selection set of this iteration Taking the union of the sets yields the active grouping candidate set for this iteration. The calculation is as follows:
[0186] (12).
[0187] Step 3-2-5: Calculate the final selection set of active groups;
[0188] Compute set Active group weighted sum channel coefficient vector The estimated value Select the vector with the largest absolute value. The indices of the elements constitute the final selection set of the active groups. ,Right now
[0189] (13)
[0190] in, Represents a set The matrix formed by arranging the leading elements of the active groups in columns. For matrix The pseudo-inverse matrix.
[0191] Step 3-2-6: Update the leading residual;
[0192] Calculate the leading residual of the current round according to equation (11). :
[0193] (14)
[0194] Among them, matrix Represents a set A matrix formed by arranging the grouped elements in columns. The pseudo-inverse matrix.
[0195] Step 3-2-7: Determine if the algorithm has converged;
[0196] Calculate the energy of the leading residual Combine it with noise variance In comparison, among them for E() is the statistical average; used to determine whether the algorithm converges:
[0197] 1) If The iterative detection of active groups terminates, and the output is... ; Perform step 2-2-1;
[0198] 2) If Further compare the residual energy of this iteration Residual energy compared to the previous iteration To determine whether the algorithm should continue updating the sparsity values;
[0199] a) If Let the number of iterations be... Return to step 3-2-3 and perform the next round of detection for active groups;
[0200] b) If Make the group sparsity And let the number of iterations Return to step 3-2-3 to perform the next round of detection for active groups.
[0201] The second stage of SAMP—Accurate Active User Detection and Channel Estimation:
[0202] Step 3-2-8: Construct the joint observation matrix and initialize the algorithm;
[0203] Step 3-2-8-1: Construct the joint observation equations for pilot signals and ID slots;
[0204] Construct extended pilot matrices for all users That is, the matrix composed of the pilot vectors of each user.
[0205] (15)
[0206] The results obtained from the previous module As an initial support set for active users, the original user ID matrix In The columns are selected and used to form a new spreading matrix. This will expand the pilot matrix. In Select columns to form a new pilot matrix Rewrite equation (6) as
[0207] (16)
[0208] At the same time, rewrite equation (5) as
[0209] (17)
[0210] in, Represents a set The channel coefficient vector of active users, where Represents a set The m-th element is the active user. The channel attenuation coefficient. Represents a set The number of elements in the equation represents a rough estimate of the number of active users. Equations (13) and (14) are then combined into a system of equations.
[0211] (18)
[0212] in, , .
[0213] Step 3-2-8-2: Algorithm initialization;
[0214] Let the number of iterations Initial values of channel coefficient residuals Initial values of the initial selection set of active users = Initial value of active user candidate set Initial value of the final selection set of active users ;
[0215] make Initial value of active user sparsity .
[0216] Step 3-2-9: Construct an initial selection set of active users;
[0217] Calculate the observation matrix The column vectors and the residuals of the current channel coefficients The correlation is selected from the top of the correlation. The user indices corresponding to each column vector constitute the initial set of active users for this iteration. :
[0218] (19).
[0219] Step 3-2-10: Construct a candidate set of active users;
[0220] The final selection of active users from the previous iteration With the initial selection of active users in this iteration The union of the sets yields the candidate set of active users for this iteration. ,Right now
[0221] (20).
[0222] Step 3-2-11: Determine the final selection of active users;
[0223] Reconstruct collection The channel coefficient vector of active users is Select the vector with the largest absolute value from the reconstructed vectors. The user indexes constitute the final selection set of active users for this iteration. ,Right now
[0224] (twenty one)
[0225] in, Represents a set The observation matrix is composed of the extended IDs of active users arranged in column order. For matrix The pseudo-inverse matrix; Representing vectors The m-th element; Represents a set The number of elements in the text.
[0226] Step 3-2-12: Update the residuals of this iteration;
[0227] Calculate the residual of the current iteration according to equation (19). ,Right now
[0228] (twenty two)
[0229] in, Represents a set A matrix composed of extended IDs of active users arranged in columns. For matrix The observation matrix is the pseudo-inverse matrix.
[0230] Step 3-2-13: Determine if the algorithm has converged;
[0231] Calculate residual energy Combine it with noise variance In comparison, among them for E() represents the statistical average; this is used to determine whether the algorithm converges.
[0232] (1) If The active user iteration detection terminates, and the active user support set is output. and the estimated values of the uplink channel coefficient vectors of active users , Let support set The channel fading coefficients of all inactive users are zero, i.e. .
[0233] (2) If Further compare the residual energy of this iteration Residual energy compared to the previous iteration To determine whether the algorithm should continue updating the sparsity values;
[0234] a. If Let the number of iterations be... Return to step 3-2-9 to perform the next round of active user detection;
[0235] b. If Increase user sparsity Number of iterations Return to step 3-2-9 to perform the next round of active user detection.
[0236] Phase Three: Reconstructing User Data
[0237] Step 3-2-14 Business Data Reconstruction: Utilize the precise active user set obtained in Step 3-2-13 The received signal matrix for the data time slot Performing least squares estimation yields the uplink signal matrix of active users. The estimated value for:
[0238] (twenty three)
[0239] in, ; Indicates from the spreading matrix Extracting active user sets The matrix formed by the corresponding columns.
[0240] To verify the results of this embodiment, MATLAB software was used to simulate the above method, and the algorithm performance of this method (PASAMP) was compared with that of three other existing CS-MUD schemes under different numbers of active users. The system parameter settings are shown in Table 1. In the simulation, the successful access rate is defined as the probability that any user's signal sent to the base station at that moment is successfully detected and the channel coefficient is accurately estimated. The SAMP scheme is a sparsity adaptive matched pursuit (SAMP) scheme using two pilot time slots, the CB-SOMP algorithm is a synchronous orthogonal matched pursuit (SOMP) scheme based on pilot contention, and Heuristc AMP is the basic AMP algorithm.
[0241] Table 1 Simulation Parameter Settings
[0242]
[0243] Simulation results are as follows Figure 4 As shown, the access success rate of the three algorithms initially decreases slowly with the increase in the number of active users, and then drops rapidly after exceeding a certain threshold, i.e., the maximum number of effective access users. It can be seen that the PASAMP algorithm has a significantly higher active user access success rate than the basic SAMP algorithm, and its capacity to support a larger number of active users is significantly higher than the original SAMP scheme. Secondly, the improved two-step access pilot contention scheme, compared to the random pilot contention scheme CB-OMP, increases the success rate of access within the maximum number of effective access users by 10%, due to the introduction of a pilot collision elimination mechanism. Simultaneously, the performance of the PASAMP algorithm is also significantly better than the basic AMP algorithm. (Overload rate is defined.) Overall, the improved two-step random access algorithm in this scheme shows a significant performance improvement compared to the original one-step random access algorithm, especially when the overload rate is... In high-overload scenarios, it achieves an active user access capability with an overall activity rate of 7%, which is suitable for large-scale terminal communication scenarios.
[0244] Meanwhile, the time complexity of the proposed scheme was analyzed and compared with the other three schemes. Table 2 shows the time complexity of the four schemes.
[0245] Table 2 Comparison of Time Complexity of Four Schemes
[0246]
[0247] Considering high sparsity uplink transmission scenarios, i.e. The time complexity of the PASAMP, AMP, CB-OMP, and SAMP algorithms is approximately O(n). O( O O Both in terms of time complexity and actual running time, it's clear that the PASAMP algorithm has a significantly lower time complexity than the SAMP algorithm. This is because the PASAMP algorithm introduces an active user initial screening mechanism, expanding the support set search range for both active user detections from... Reduced to This significantly reduces computational time overhead. While the CB-SOMP algorithm has lower time complexity, it has a higher probability of user access collisions. The Huristic AMP algorithm has a longer actual running time than the PASAMP algorithm, and simulation results show that its performance is also inferior to the PASAMP algorithm. Furthermore, the actual running times of the four schemes were simulated on MATLAB software, as shown in Table 3, which further verifies the above analysis of time complexity.
[0248] Table 3 Actual simulation time for four schemes
[0249]
[0250] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A compressed sensing large-scale random access method based on packet pilots and user IDs, characterized in that, Includes the following steps: S1. The base station divides the N user terminals to be accessed into K groups, and generates a shared pilot sequence for each group. And using grouped pilot sequences Generate a unique user ID for each user terminal within the group; S2. The user uses a time frame structure consisting of one pilot time slot, one ID time slot, and L data time slots to perform uplink signal transmission, and transmits its pilot sequence, user ID, and ID spread spectrum service signal in sequence. S3. The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing equations. The SAMP algorithm is used to jointly perform user activity detection, channel estimation and uplink data detection. S4. The base station determines whether the user access is successful based on the uplink signal detection result. If the uplink data is successfully detected, the user access is successful; otherwise, the access fails.
2. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 1, characterized in that, Step S1 is as follows: S11. The base station obtains the daily active time feature vectors of all users, and uses the K-means algorithm to divide all N user terminals into K groups, with the number of users in each group being... , Indicates rounding up to the nearest integer; S12. Select a group k. The base station randomly selects B points from the unit circle in the complex plane to form a B-dimensional column vector, which serves as the common pilot sequence for group k, expressed as: (1) in, Represents the transpose of a vector or matrix; Indicates pilot signal The b-th element, , j is the imaginary unit. Represents a B-dimensional complex field column vector space; S13. Repeat step S12 until pilot sequences for all groups are generated; S14, Based on the generated grouped pilot sequence According to a specific shift pattern The user's ID is generated by a circular right shift, represented as follows: (2) (3) in, This represents the remainder operation in division, that is, taking the remainder when n is divided by G. Let B be the user's spreading sequence, i.e., the user's ID, and let B be the length of the user ID. B is greater than the data G for each user group.
3. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 2, characterized in that, The service signal spread by user ID is specifically described as follows: The ID of user n is set as... Its upstream business data vector is ,data Represents a user-modulated data symbol, consisting of the user's spreading sequence. Spread spectrum to vector Spread spectrum service signal of user n Represented as: (4) Let the pilot signal of the group k containing user n be... That is, the pilot sequence of user n is A frame of uplink signal for user n Represented as: ] (5) Specifically, when user n is in an inactive state because they have not sent any service data in the current frame, their service data... .
4. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 3, characterized in that, Step S3 is as follows: S31. The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing equations. S32. Based on the compressed sensing equation, the SAMP algorithm is used to jointly perform user activity detection, channel estimation and uplink data detection.
5. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 4, characterized in that, Step S31: The base station receives uplink signals from multiple users frame by frame and models them as compressed sensing equations, specifically as follows: S311. Model the received signal of the pilot time slot in one frame: Pilot signals received by the base station in the pilot time slot The sum of pilot signals from all N users in K clusters is expressed as: (6) in, It is the sum of the uplink channel coefficients of the active users in the k-th group. , Let be the set of all user indices in the k-th group. Indicates an indicator function, For users Narrowband channel fading coefficient between the base station and the station. For path loss, Rayleigh fading coefficient, , It is additive white Gaussian noise in the preamble slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, ; Equation (6) can be written in matrix form: (7) in, It is a grouped pilot matrix. , This represents the user-weighted sum of channel coefficients vectors for all packets. , It is a sparse vector; S312. Model the received signal of the ID time slot in a frame: The base station receives the signal in the ID time slot of a frame Represented as: (8) in, Indicates the state of user n. This indicates that user n is active. Let n be the channel fading coefficient from user n to the base station. The ID slot signal for the nth user; Equation (8) can be written in matrix form as follows: (9) in, This is the weighted channel coefficient vector from the user to the base station. , For the user's spreading matrix, It is additive white Gaussian noise in the ID time slot. That is, each of its elements is independently and identically distributed, and all have a mean of zero and a variance of 0. The complex Gaussian distribution, , It is a sparse vector; S313. Model the received signal of a data time slot in a frame: The data signal vector received by the base station in the l-th data time slot of a frame Represented as: (10) in, For user n, the spreading sequence This represents the channel coefficient matrix for N users. For N users transmitting service data vectors in the l-th data time slot, This is the additive interference vector received in the l-th data time slot; Introducing matrices The specific formula for calculating a frame of data signal received by the base station is as follows: (11) in, This represents the service data matrix transmitted by the user in L data time slots. This represents the additive noise matrix received by the base station in L data time slots.
6. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 5, characterized in that, Step S32 employs the SAMP algorithm to jointly perform user activity detection, channel estimation, and uplink data detection, specifically as follows: S321, The base station uses the received pilot signal vector The SAMP algorithm is used to detect groups with active users and obtain the active user set. and its rough estimate , This indicates the number of active user groups, where This indicates finding the number of elements in a set; S322, Set The m-th element corresponds to the user pilot sequence (m) Vertically concatenated with its ID to form an extended pilot vector , ; set Extended pilot for all users Arranged in column order to form a joint observation matrix ;Received user pilot sequence and ID signal vector The observation signal was obtained by longitudinal splicing. Combined with vectors sum matrix Construct new CS equations: (12) in, Represents a set Channel coefficient vectors of active users, Represents a set The m-th element is the active user. Channel attenuation coefficient; Based on equation (12), the SAMP algorithm is used to detect the precise set of active users, i.e., the support set. and active user channel coefficient vector This allows for the reconstruction of the uplink data signal.
7. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 6, characterized in that, Step S321 is as follows: S3221, Input received pilot signal vector User ID signal vector Data signal matrix Grouped pilot matrix User ID matrix noise variance ; Set the iteration rounds as In the i-th iteration, the residual of the preamble signal is The initial selection set of active groups is The active group candidate set is The final selection of active groups is ; Channel coefficient residuals are Select the initial set of active users as Active user candidate set is The final selection of active users is The sparsity of the grouping is User sparsity is ; S3222, Parameter Initialization: Set the number of iterations Time; Observation matrix of active groups Initial value of leading residual Initial values of the active group initial selection set = Initial value of active group candidate set Active Group Final Selection The initial value for the sparsity of active groups is... ; Let the number of iterations The sparsity of active groups in the current iteration ; S3223. Determine the initial selection set of active groups; Calculate the pilot matrix Residuals of all columns and the leading time slot The relevant values are selected, and the largest one is chosen. The indexes of the relevant values constitute the initial selection set of active groups. The specific calculation formula is as follows: (13) in, This represents the set or matrix formed by taking the indices of the M largest elements in a vector *. Represents the leading matrix The conjugate transpose of ; S3224. Determine the active group candidate set; Based on the final selection set of active groups from the previous iteration and the initial selection set of this iteration The active grouping candidate set for this iteration is obtained by taking the union of the sets. The specific calculation formula is as follows: (14); S3225, Calculate the final selection set of active groups; Compute set Active group weighted sum channel coefficient vector The estimated value Select the vector with the largest absolute value. The indices of the elements constitute the final selection set of the active groups. The specific calculation formula is as follows: (15) in, Represents a set The matrix formed by arranging the leading elements of the active groups in columns. For matrix The pseudo-inverse matrix; S3226. Update the leading residual; Calculate the leading residual for the current round : (16) in, Represents a set A matrix formed by arranging the group leaders of active users in columns; Representation matrix The pseudo-inverse matrix; S3227, Iterate through active group detection until convergence; Calculate the energy of the leading residual Combine it with noise variance In comparison, among them for E() represents the statistical average; 1) When When the iterative detection of active groups terminates, the output is... ; 2) When At that time, compare the residual energy of this iteration. Residual energy compared to the previous iteration : when At that time, let the number of iterations be... Return to step S3223 and perform the next round of active group detection; when When, let the group sparsity And the number of iterations Return to step S3223 to perform the next round of active group detection.
8. The compressed sensing large-scale random access method based on packet pilots and user IDs according to claim 7, characterized in that, Step S322 is as follows: S3231, Based on the active user group set output in step S321 Construct a joint observation matrix and CS equations; The active group set output in step S322 All user indexes are placed in a set The middle part serves as a rough estimate of the set of active users; the initial set of active users for each ID slot is... = ; the initial selection Construct an extended pilot matrix by arranging the pilots of all active users in column order. The preliminary selection Construct an extended ID matrix by arranging all active user IDs in column order. The specific formula is as follows: (17) (18) in, Represents a set The m-th element is the active user. The preceding, Represents a set The m-th element is the active user. ID; Represents a set The number of elements in the middle, which is a rough estimate of the number of active users; matrix sum matrix Arranged in column-aligned groups to form a joint observation matrix. : (19) in, For matrix The m-th column vector represents active users. Extended ID, ;matrix ; Received user pilot vector and user ID vector Vertical stitching yields joint observation signals. ; by matrix sum vector Construct the new CS equation described in equation (12); S3232, Parameter Initialization: Set the number of iterations Initial values of channel coefficient residuals Initial values of the initial selection set of active users = Initial value of active user candidate set Initial value of the final selection set of active users ;make Initial value of active user sparsity ; S3233, Constructing an initial selection of active users: Calculate the observation matrix The column vectors and the residuals of the current channel coefficients The correlation is selected from the top of the correlation. The user indices corresponding to each column vector constitute the initial set of active users for this iteration. : (20); S3234. Construct a candidate set of active users: Final selection of active users based on the previous iteration With the initial selection of active users in this iteration By combining the sets, we obtain the candidate set of active users for this iteration. : (21); S3225. Determine the final selection of active users: Reconstruct collection The channel coefficient vector of active users is Select the vector with the largest absolute value from the reconstructed vectors. The user indexes constitute the final selection set of active users for this iteration. ,Right now (22) in, Represents a set The observation matrix is composed of the extended IDs of active users arranged in column order. For matrix The pseudo-inverse matrix; Representing vectors The m-th element, Represents a set The number of elements in the middle; S3226. Residual calculation, the specific calculation formula is as follows: (23) in, Represents a set A matrix composed of the extended IDs of active users arranged in column order. For matrix The pseudo-inverse matrix; S3227. Iterate through active user detection until convergence; Calculate residual energy Combine it with noise In comparison, among them for E() represents the statistical average; 1) When When the active user iteration detection terminates, the support set is output. and the uplink channel coefficient vector of active users The estimated value ; make ,in, The complete set consisting of all users. This represents the set of inactive users; and Merge them in user sequence number order to obtain the uplink channel attenuation coefficient vector. The estimated value ; 2) When At that time, compare the residual energy of this iteration. Residual energy compared to the previous iteration : when At that time, let the number of iterations be... Return to step S3233 and perform the next round of active user detection; when At that time, user sparsity Number of iterations Return to step S3233 to perform the next round of active user detection; S3228, Business Data Estimation: Based on support set The received signal matrix for the data time slot Performing least squares estimation yields the uplink signal matrix of active users. The estimated value : (24) in, , Indicates from the spreading matrix Extract the set of active users A matrix formed by the columns corresponding to the user serial numbers.