NOMA signal spectrum sensing method based on GMM and particle swarm optimization
Through the combination of GMM and particle swarm algorithm, a Gaussian hybrid model is established for channel estimation, which solves the problem of multiple perceived durations in traditional methods, and realizes the rapid identification of multiple master users, improving spectrum utilization and efficiency.
Patent Information
- Application Number
- CN202310237512.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-07
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2043-03-07
AI Technical Summary
The existing NOMA signal spectrum perception method requires multiple perception durations, limiting the application efficiency of spectrum perception and unable to effectively identify the number of multiple main users.
Using a method based on GMM and particle swarm algorithm, channel estimation is carried out by establishing a Gaussian hybrid model, and the particle swarm algorithm is used to solve optimization problems, identify the number of main users on busy channels, and only a single perceptual duration is required.
Improve spectrum utilization, enables rapid identification of the number of master users on busy channels, and improves the speed and efficiency of spectrum perception.
Smart Images

Figure CN116388901B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a cognitive radio technology, and in particular to a NOMA (Non-Orthogonal Multiple Access) signal spectrum sensing method based on GMM (Gaussian Mixture Model) and particle swarm algorithm, which performs channel coefficient estimation through GMM and particle swarm algorithm to realize NOMA signal spectrum sensing. Background Art
[0002] With the rapid development of fifth-generation wireless communication technology, the number of wireless devices requiring radio access to networks has increased dramatically, leading to an increasing demand for wireless communications. While research on millimeter-wave communications is increasing, their higher frequency bands present disadvantages such as poor penetration and limited coverage. Achieving wide-area coverage using millimeter-wave communications is costly. Therefore, improving spectrum efficiency in mid- and low-frequency bands is equally important for the development of 5G and the Internet of Things. To improve spectrum efficiency in mid- and low-frequency bands, a number of technologies have been designed, including non-orthogonal multiple access (NOMA) and cognitive radio. NOMA allocates orthogonal resources in the same frequency, time, or code domain to multiple users, improving system throughput without requiring any bandwidth expansion. Cognitive radio, based on spectrum reuse, allows secondary users to perceive the surrounding radio environment, detect spectrum holes, and access idle frequency bands without impacting primary users. Given that NOMA and cognitive radio can improve spectrum efficiency in different ways, combining these two technologies is particularly beneficial for improving spectrum efficiency.
[0003] Based on the theory that NOMA can allocate a single time-frequency resource to multiple users, multiple primary users and one secondary user exist in the same frequency band. In traditional spectrum sensing, a secondary user detects the presence of a primary user, which translates into a binary hypothesis problem. However, spectrum sensing based on NOMA signals, due to the presence of multiple primary users, requires secondary users to detect the number of primary users present, effectively transforming this into a multiple hypothesis testing problem. Since different primary users in the same channel have different power levels, secondary users can adjust their power based on the sensing result to match that of any inactive primary user, allowing them to access the channel and communicate.
[0004] Machine learning algorithms such as K-means and K-nearest-neighbor (KNN) have been used to address spectrum sensing based on NOMA signals. These methods classify energy vectors received by multiple secondary users across multiple sensing durations (or time slots). These methods, based on clustering algorithms, classify signals from different sensing durations into multiple categories. Consequently, they require multiple sensing durations to achieve spectrum sensing, limiting their application. Summary of the Invention
[0005] The technical problem to be solved by the present invention is to provide a NOMA signal spectrum sensing method based on GMM and particle swarm algorithm. In this method, multiple primary users share the same channel using NOMA technology, and channel estimation is performed by establishing a Gaussian mixture model to sense the number of primary users working in the channel. The channel can be accessed based on the power of the non-working primary users, which can effectively improve the spectrum utilization rate and does not require multiple sensing durations. Only a single sensing duration is required to receive the signal for spectrum sensing.
[0006] The technical solution adopted by the present invention to solve the above technical problems is: a NOMA signal spectrum sensing method based on GMM and particle swarm algorithm, characterized by comprising the following steps:
[0007] Step 1: In the cognitive radio system, assume that there is only one secondary user and the maximum number of primary users sharing the same channel using NOMA technology is K. These primary users are numbered starting from 1. In any sensing time slot, the secondary user receives a continuous signal as the NOMA signal. Then, the NOMA signal received by the secondary user in any sensing time slot is sampled N times to obtain N discrete signals. Where K ≥ 2, N represents the number of samples, and N ≥ 500.
[0008] Step 2: For the N discrete signals of the secondary user, traverse each discrete signal in the order of sampling, and define the currently traversed discrete signal as the current discrete signal;
[0009] Step 3: Set the current discrete signal to the nth discrete signal and record it as r(n). Describe r(n) as: Determine the Determine H c Next Where n = 1, 2, ..., N, H0 means that there is no primary user in the channel, H1 means that there is one primary user in the channel, and H c It is assumed that there are c primary users in the channel, H KIt is assumed that there are K primary users in the channel, 1≤c≤K, w(n) represents the noise in r(n), which is independent and identically distributed complex additive Gaussian white noise, with a mean of 0 and a variance of i represents the serial number of the i-th primary user, which is a positive integer in the interval [1, K]. Indicates the set of sequence numbers of the primary user when there is one primary user in the channel. represents the set of sequence numbers of the primary users when there are c primary users in the channel. represents the set of sequence numbers of K primary users when there are K primary users in the channel, Ω i represents the power coefficient of the transmitted signal of the i-th primary user, which satisfies And Ω i ∈[0,1], represents the total power of the primary user's transmitted signal, and the signal-to-noise ratio is h i represents the block Rayleigh fading channel coefficient from the i-th primary user to the secondary user, h i The phase is evenly distributed in [-π,π), h i The amplitude follows the Nakagami-m distribution, s i (n) represents the transmitted signal of the i-th primary user, represents a complex Gaussian distribution with mean a and variance b, represents the jth signal transmitted by the i-th primary user when the continuous signal received by the secondary user is sampled for the nth time. i symbols, 1≤j i ≤J, where J represents the order of digital modulation of the transmitted signal of the i-th primary user in the process of obtaining multiple symbols through digital modulation after transmission;
[0010] Step 4: Make Denotes the null hypothesis of the i-th primary user, let Denote the alternative hypothesis of the i-th primary user, let η i Indicates whether the i-th primary user exists or not, η i =0 corresponds to η i =1 corresponds to Then Convert to Then get in,
[0011] Step 5: According to Get the probability density function of r(n), recorded as f(r(n)), Among them, exp() represents the exponential function with the natural base e as the base;
[0012] Step 6: Traverse the next discrete signal in the order of sampling, use the next traversed discrete signal as the current discrete signal, and then return to step 3 to continue processing until all N discrete signals of the secondary user are processed, and obtain the probability density function of each discrete signal of the secondary user;
[0013] Step 7: Calculate the joint probability density function of the N discrete signals of the secondary user, denoted as f(r),
[0014] ; Then, according to f(r), a Gaussian mixture model of N discrete signals of the secondary user is established, denoted as f GMM (r), Re-establish get Where r represents the vector composed of N discrete signals of the secondary user, r = [r(1), r(2), ..., r(N)], r(1) represents the first discrete signal, r(2) represents the second discrete signal, r(N) represents the Nth discrete signal, and f GMM (r(n)) represents the Gaussian mixture model of r(n), represents the mixing coefficient,
[0015] Step 8: According to Construct an estimation optimization problem, described as: Then the particle swarm algorithm is used to solve Get g i ,i=1,2,…,K estimated value; where, Indicates finding f GMM (r) takes the maximum value when g i The value of
[0016] Step 9: Perform spectrum sensing on the NOMA signal received by the secondary user in any sensing time slot. If |g i |,i=1,2,…,K is greater than or equal to the decision threshold λ, then the decision Established; if |g i |,i=1,2,…,K is less than the decision threshold λ, then the decision At the same time, the number of users whose values are greater than or equal to the decision threshold λ is counted and the number is used as the number of working main users; wherein the value of λ is determined according to the false alarm probability.
[0017] In step 8, the particle swarm algorithm is used to solve The process is:
[0018] Step 8_1: Assume that there are L particles in the particle swarm, and the dimension of each particle is K; set the position boundary value and velocity boundary value of all particles in the particle swarm, where the position boundary value is determined according to the search range required by the particle swarm, and the velocity boundary value is 10% to 20% of the position boundary value; then randomly initialize the position value of each of the L particles in the particle swarm within the range determined by the position boundary value, and randomly initialize the velocity value of each of the L particles in the particle swarm within the range determined by the velocity boundary value, and record the initial value of the position value of the αth particle in the particle swarm as The initial value of the velocity of the αth particle in the particle swarm is recorded as Among them, L∈[50,100], 1≤α≤L;
[0019] Step 8_2: Let q be the number of iterations, let Q be the preset maximum number of iterations; let g best Represents the global optimal particle position value of all particles in the particle swarm, let p best,α represents the individual optimal particle position value of the αth particle in the particle swarm; where the initial value of q is 1, 1≤q≤Q, Q≥50;
[0020] Step 8_3: For the qth iteration, when q=1, the initial value of the position value of each particle in the particle swarm is substituted into the fitness function. As g1,g2,…,g i ,…,g K , calculate the fitness value corresponding to each particle in the particle swarm, record the maximum value of the L fitness values at the qth iteration, and assign the initial value of the position value of the particle corresponding to the maximum value at the qth iteration to g best ; When q=1, Assign to p best,α ;
[0021] When q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function. As g1,g2,…,g i ,…,g K The value of g is calculated to obtain a fitness value corresponding to each particle in the particle swarm, and the maximum value of the L fitness values at the qth iteration is recorded. The maximum value recorded at the qth iteration is compared with the value of g best Substitute the fitness value obtained by the fitness function. If the former is greater than or equal to the latter, the position value of the particle corresponding to the maximum value at the qth iteration is assigned to g best , if the former is less than the latter, then g best Remain unchanged; when q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function As g1,g2,…,g i ,…,g K The value of α is used to calculate the fitness value corresponding to each particle in the particle swarm. The fitness value corresponding to each particle in the particle swarm is compared with the size of the individual optimal particle position value. If the former is greater than or equal to the latter, the former is assigned to the latter. That is, for the αth particle in the particle swarm, the fitness value corresponding to the particle is assigned to p best,α , if the former is smaller than the latter, the latter remains unchanged, that is, for the αth particle in the particle group, keep p best,α constant;
[0022] Step 8_4: Calculate the position value of each particle in the particle swarm at the qth iteration, and record the position value of the αth particle in the particle swarm at the qth iteration as Among them, when q=1 That is That is When q≠1 represents the position value of the αth particle in the particle swarm at the q-1th iteration, represents the velocity value of the αth particle in the particle swarm at the q-1th iteration, express The first dimension of express The second dimension of express The Kth dimension of
[0023] Step 8_5: Calculate the velocity value of each particle in the particle swarm at the qth iteration, and record the velocity value of the αth particle in the particle swarm at the qth iteration as Where ω represents the inertia weight, ω = 0.729, C1 and C2 represent the learning factors, C1 = C2 = 1.494, R1 and R2 are random values, and R1 and R2 obey the uniform distribution on [0, 1];
[0024] Step 8_6: Determine whether q is greater than or equal to Q or g best Convergence, if q is greater than or equal to Q or g best Convergence, the iteration process ends, and then execute step 8_7; if q is less than Q and g best If it does not converge, set q = q + 1, and then return to step 8_3 to continue iterating; where the "=" in q = q + 1 is an assignment symbol;
[0025] Step 8_7: Converge the g best Each dimension corresponds to g1,g2,…,gi ,…,g K estimated value.
[0026] Compared with the prior art, the advantages of the present invention are:
[0027] 1) When multiple primary users share the same channel using NOMA technology, the method of the present invention performs spectrum sensing and can identify the number of primary users on the busy channel.
[0028] 2) This paper proposes a novel spectrum sensing method that only requires a single sensing duration signal to effectively sense the spectrum, unlike traditional clustering algorithms that require multiple signals. This method can greatly improve the speed and efficiency of spectrum sensing. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] Figure 1 This is a block diagram of the overall implementation of the method of the present invention;
[0030] Figure 2 The figures are comparison diagrams of the false detection probability obtained by using the method of the present invention and commonly used clustering algorithms (K-means method, GMM method, KNN method) as the signal-to-noise ratio changes. DETAILED DESCRIPTION
[0031] The present invention will be described in further detail below with reference to the accompanying drawings and embodiments.
[0032] The present invention proposes a NOMA signal spectrum sensing method based on GMM and particle swarm algorithm, and its overall implementation block diagram is as follows: Figure 1 As shown, it includes the following steps:
[0033] Step 1: In the cognitive radio system, it is assumed that there is only one secondary user, and the maximum number of primary users sharing the same channel using NOMA technology is K, and these primary users are numbered starting from 1; in any sensing time slot, the secondary user receives a continuous signal as the NOMA signal, and then the NOMA signal received by the secondary user in any sensing time slot is sampled N times to obtain N discrete signals; among them, K≥2. Theoretically, the more primary users, the better, but the more primary users there are, the greater the demodulation complexity at the receiving end. Usually, researchers consider that there are two primary users in the power domain NOMA, that is, K=2, so K=2 is taken in this embodiment. When NOMA technology is not used, K=1, N represents the number of sampling times, N≥500, and N=1000 is taken in this embodiment.
[0034] Step 2: For the N discrete signals of the secondary user, traverse each discrete signal in sequence according to the order of sampling, and define the currently traversed discrete signal as the current discrete signal.
[0035] Step 3: Set the current discrete signal to the nth discrete signal and record it as r(n). Describe r(n) as: For example, when K=2 It is easy to see that under different assumptions, r(n) obeys a complex Gaussian distribution with different means and the same variance. Determine H c Next Where n = 1, 2, ..., N, H0 means that there is no primary user in the channel, H1 means that there is one primary user in the channel, and H c It is assumed that there are c primary users in the channel, H K It is assumed that there are K primary users in the channel, 1≤c≤K, w(n) represents the noise in r(n), which is independent and identically distributed complex additive Gaussian white noise, with a mean of 0 and a variance of i represents the serial number of the i-th primary user, which is a positive integer in the interval [1, K]. Indicates the set of sequence numbers of the primary user when there is one primary user in the channel. represents the set of sequence numbers of the primary users when there are c primary users in the channel. It represents the set of sequence numbers of K primary users when there are K primary users in the channel. are all subsets of the set {1,2,…,K}, for example, when K=2 or Ω i represents the power coefficient of the transmitted signal of the i-th primary user, which satisfies And Ω i ∈[0,1], represents the total power of the primary user's transmitted signal, and the signal-to-noise ratio is h i represents the block Rayleigh fading channel coefficient from the i-th primary user to the secondary user, h i The phase is evenly distributed in [-π,π), h i The amplitude of follows the Nakagami-m distribution, and the distribution function is The symbol “||” is a modulo operator, u is the independent variable of the distribution function, Ω represents the average power gain of the channel, and in this embodiment, Ω=1 is taken, m represents the degree of channel fading, and a larger value of m indicates a more severe channel fading, and in this embodiment, m=3 is taken, Γ(m) represents the gamma function, and e is the natural cardinality, e=2.71…,s i(n) represents the transmission signal of the i-th primary user, H2 represents the assumption that there are two primary users in the channel, Ω1 represents the power coefficient of the transmission signal of the first primary user, Ω2 represents the power coefficient of the transmission signal of the second primary user, h1 represents the coefficient of the block Rayleigh fading channel from the first primary user to the secondary user, h2 represents the coefficient of the block Rayleigh fading channel from the second primary user to the secondary user, s1(n) represents the transmission signal of the first primary user, s2(n) represents the transmission signal of the second primary user, represents a complex Gaussian distribution with mean a and variance b, represents the jth signal transmitted by the i-th primary user when the continuous signal received by the secondary user is sampled for the nth time. i symbols, 1≤j i ≤J, J represents the order of digital modulation in the process of obtaining multiple symbols by digital modulation of the transmitted signal of the i-th primary user after transmission. The digital modulation methods include BPSK, QPSK, 16QAM, etc. When the digital modulation method is BPSK, J=2, When the digital modulation method is QPSK, J=4, When the digital modulation method is 16QAM, J=16.
[0036] Step 4: The purpose of spectrum sensing is to determine which hypothesis r(n) belongs to, i.e. H0, H1, ..., H c ,……,H K In which case, since the hypothesis testing method is only applicable to one alternative hypothesis corresponding to the null hypothesis, it cannot be directly applied to this spectrum sensing problem, so we consider the multiple hypothesis testing problem. Denotes the null hypothesis (non-existence) of the i-th primary user, let Denote the alternative hypothesis (existence) of the i-th primary user, let η i Indicates whether the i-th primary user exists or not, η i =0 corresponds to η i =1 corresponds to Then Convert to Then get in,
[0037] Step 5: Different from traditional channel estimation, the pilot signal is not available in this case. The key to spectrum sensing is to use estimate according to Get the probability density function of r(n), recorded as f(r(n)), Here, exp() represents an exponential function with the natural base e as the base.
[0038] Step 6: Traverse the next discrete signal in the order of sampling, take the next traversed discrete signal as the current discrete signal, and then return to step 3 to continue executing until all N discrete signals of the secondary user are processed, and obtain the probability density function of each discrete signal of the secondary user.
[0039] Step 7: Calculate the joint probability density function of the N discrete signals of the secondary user, denoted as f(r),
[0040] ; Then, according to f(r), a Gaussian mixture model of N discrete signals of the secondary user is established, denoted as f GMM (r), Taking into account Usually, the probability of generating from the constellation is equal, and then setting get Where r represents the vector composed of N discrete signals of the secondary user, r = [r(1), r(2), ..., r(N)], r(1) represents the first discrete signal, r(2) represents the second discrete signal, r(N) represents the Nth discrete signal, and f GMM (r(n)) represents the Gaussian mixture model of r(n), represents the mixing coefficient,
[0041] Step 8: Since the only unknown parameters in the Gaussian mixture model are Therefore, it is estimated Can be based on Construct an estimation optimization problem, described as: Then the particle swarm algorithm is used to solve Get g i ,i=1,2,…,K estimated value; where, Indicates finding f GMM (r) takes the maximum value when g i The value of f GMM (r) For complex variables It is non-convex, and exhaustive search in 2K-dimensional real space requires high computational complexity. Therefore, the particle swarm algorithm with few parameters and fast convergence speed is used to obtain the suboptimal solution of the above estimation optimization problem.
[0042] In this specific embodiment, in step 8, the particle swarm algorithm is used to solve The process is:
[0043] Step 8_1: Assume that there are L particles in the particle swarm, and the dimension of each particle is K; set the position boundary value and velocity boundary value of all particles in the particle swarm, where the position boundary value is determined according to the search range required by the particle swarm, and the velocity boundary value is generally 10% to 20% of the position boundary value; then randomly initialize the position value of each of the L particles in the particle swarm within the range determined by the position boundary value, and randomly initialize the velocity value of each of the L particles in the particle swarm within the range determined by the velocity boundary value, and record the initial value of the position value of the αth particle in the particle swarm as The initial value of the velocity of the αth particle in the particle swarm is recorded as Wherein, L∈[50,100], such as taking L=80, 1≤α≤L, in this embodiment, the position boundary value is (5+5j), and the speed boundary value is (1+j), that is, the range determined by the position boundary value is [-5-5j,5+j], and the range determined by the speed boundary value is [-1-j,1+j], where j is an imaginary unit.
[0044] Step 8_2: Let q be the number of iterations, let Q be the preset maximum number of iterations; let g best Represents the global optimal particle position value of all particles in the particle swarm, let p best,α represents the individual optimal particle position value of the αth particle in the particle swarm; wherein, the initial value of q is 1, 1≤q≤Q, Q≥50, and in this embodiment, Q=50.
[0045] Step 8_3: For the qth iteration, when q=1, the initial value of the position value of each particle in the particle swarm is substituted into the fitness function. As g1,g2,…,g i ,…,g K The value of the particle swarm is calculated to obtain a fitness value corresponding to each particle in the particle swarm, namely f GMM (r) value, record the maximum value of the L fitness values at the qth iteration, and assign the initial value of the position value of the particle corresponding to the maximum value at the qth iteration to g best ; When q=1, Assign to p best,α .
[0046] When q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function. As g1,g2,…,g i ,…,g K The value of the particle swarm is calculated to obtain a fitness value corresponding to each particle in the particle swarm, namely f GMM (r) value, record the maximum value of the L fitness values at the qth iteration, compare the maximum value recorded at the qth iteration with gbest Substitute the fitness value obtained by the fitness function. If the former is greater than or equal to the latter, the position value of the particle corresponding to the maximum value at the qth iteration is assigned to g best , if the former is less than the latter, then g best Remain unchanged; when q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function As g1,g2,…,g i ,…,g K The value of the particle swarm is calculated to obtain a fitness value corresponding to each particle in the particle swarm, namely f GMM (r) value, compare the fitness value corresponding to each particle in the particle swarm with the size of the individual optimal particle position value, if the former is greater than or equal to the latter, the former is assigned to the latter, that is, for the αth particle in the particle swarm, the fitness value corresponding to the particle is assigned to p best,α , if the former is smaller than the latter, the latter remains unchanged, that is, for the αth particle in the particle group, keep p best,α constant.
[0047] Step 8_4: Calculate the position value of each particle in the particle swarm at the qth iteration, and record the position value of the αth particle in the particle swarm at the qth iteration as Among them, when q=1 That is That is When q≠1 represents the position value of the αth particle in the particle swarm at the q-1th iteration, represents the velocity value of the αth particle in the particle swarm at the q-1th iteration, express The first dimension of express The second dimension of express The Kth dimension of .
[0048] Step 8_5: Calculate the velocity value of each particle in the particle swarm at the qth iteration, and record the velocity value of the αth particle in the particle swarm at the qth iteration as Where ω represents the inertia weight, ω = 0.729, C1 and C2 represent learning factors, C1 = C2 = 1.494, R1 and R2 are random values, and R1 and R2 obey the uniform distribution on [0, 1].
[0049] Step 8_6: Determine whether q is greater than or equal to Q or g best Convergence, if q is greater than or equal to Q or g bestConvergence, the iteration process ends, and then execute step 8_7; if q is less than Q and g best If it does not converge, set q=q+1 and then return to step 8_3 to continue iterating; where the "=" in q=q+1 is an assignment symbol.
[0050] Step 8_7: Converge the g best Each dimension corresponds to g1,g2,…,g i ,…,g K estimated value.
[0051] Step 9: Perform spectrum sensing on the NOMA signal received by the secondary user in any sensing time slot. If |g i |,i=1,2,…,K is greater than or equal to the decision threshold λ, then the decision Established; if |g i |,i=1,2,…,K is less than the decision threshold λ, then the decision while statistics greater than or equal to the number of decision threshold λ, the number as the number of working main users; wherein the value of λ is determined according to the false alarm probability, in this embodiment the value of the false alarm probability is 0.1.
[0052] The feasibility and effectiveness of the method of the present invention are further illustrated by the following simulation.
[0053] In the simulation, the maximum number of primary users sharing the same channel using NOMA technology is K = 2, the power coefficient ratio of the transmitted signals of the two primary users is Ω1:Ω2 = 1:2, the number of single time slot sampling is N = 1000, and the variance of the noise is The signal-to-noise ratio range is -5 to 7, the average power gain of the channel Ω=1, the degree of channel fading m=3, and the value of the false alarm probability is 0.1.
[0054] The commonly used clustering algorithms used for comparison include K-means method, GMM method, and KNN method. When comparing, each method uses 6400 perception durations in each Monte Carlo experiment.
[0055] Figure 2 A comparison chart showing the change of the false detection probability with the signal-to-noise ratio obtained by using the method of the present invention and commonly used clustering algorithms (K-means method, GMM method, KNN method) is given. Figure 2 Middle, dotted line Indicates the probability of misjudging a channel as having two primary users or no primary user; solid line It indicates the probability that there is a primary user in the channel but it is misjudged as an unprimary user. middle and represents the results obtained by various methods, and H2 represents the actual state; middle Indicates the results obtained by various methods, and H1 indicates the actual state. Figure 2 It can be seen from the figure that the false detection probability of the method of the present invention is Compared with other clustering algorithms, the probability of false detection is significantly reduced. Compared with the K-means method and GMM method, the Figure 2 It can also be seen that since the average power distribution overlap under H1 and H2 is the same under different signal-to-noise ratios, the false detection probability of other clustering algorithms is The false detection probability of the K-means method does not decrease with the increase of the signal-to-noise ratio. The false detection probability of the KNN method does not decrease with the increase of the signal-to-noise ratio. Although it decreases with the increase of signal-to-noise ratio, the degree of decrease is limited. The method of the present invention provides the lowest probability of false detection. and
Claims
1. A NOMA signal spectrum sensing method based on GMM and particle swarm optimization, characterized by The following steps are involved: Step 1: In the cognitive radio system, assume that there is only one secondary user and the maximum number of primary users sharing the same channel using NOMA technology is K. These primary users are numbered starting from 1. In any sensing time slot, the secondary user receives a continuous signal as the NOMA signal. Then, the NOMA signal received by the secondary user in any sensing time slot is sampled N times to obtain N discrete signals. Where K ≥ 2, N represents the number of samples, and N ≥ 500. Step 2: For the N discrete signals of the secondary user, traverse each discrete signal in the order of sampling, and define the currently traversed discrete signal as the current discrete signal; Step 3: Set the current discrete signal to the nth discrete signal and record it as r(n). Describe r(n) as: Determine the Determine H c Next Where n = 1, 2, ..., N, H0 means that there is no primary user in the channel, H1 means that there is one primary user in the channel, and H c It is assumed that there are c primary users in the channel, H K It is assumed that there are K primary users in the channel, 1≤c≤K, w(n) represents the noise in r(n), which is independent and identically distributed complex additive Gaussian white noise, with a mean of 0 and a variance of i represents the serial number of the i-th primary user, which is a positive integer in the interval [1, K]. Indicates the set of sequence numbers of the primary user when there is one primary user in the channel. represents the set of sequence numbers of the primary users when there are c primary users in the channel. represents the set of sequence numbers of K primary users when there are K primary users in the channel, Ω i represents the power coefficient of the transmitted signal of the i-th primary user, which satisfies And Ω i ∈[0,1], represents the total power of the primary user's transmitted signal, and the signal-to-noise ratio is h i represents the block Rayleigh fading channel coefficient from the i-th primary user to the secondary user, h i The phase is evenly distributed in [-π,π), h i The amplitude follows the Nakagami-m distribution, s i (n) represents the transmitted signal of the i-th primary user, represents a complex Gaussian distribution with mean a and variance b, pj i (n) represents the jth signal transmitted by the i-th primary user when the continuous signal received by the secondary user is sampled for the nth time. i symbols, 1≤j i ≤J, where J represents the order of digital modulation of the transmitted signal of the i-th primary user in the process of obtaining multiple symbols through digital modulation after transmission; Step 4: Make Denotes the null hypothesis of the i-th primary user, let Denote the alternative hypothesis of the i-th primary user, let η i Indicates whether the i-th primary user exists or not, η i =0 corresponds to η i =1 corresponds to Then Convert to Then get in, Step 5: According to Get the probability density function of r(n), recorded as f(r(n)), Among them, exp() represents the exponential function with the natural base e as the base; Step 6: Traverse the next discrete signal in the order of sampling, use the next traversed discrete signal as the current discrete signal, and then return to step 3 to continue processing until all N discrete signals of the secondary user are processed, and obtain the probability density function of each discrete signal of the secondary user; Step 7: Calculate the joint probability density function of the N discrete signals of the secondary user, denoted as f(r), ; Then, according to f(r), a Gaussian mixture model of the N discrete signals of the secondary user is established, denoted as f GMM (r), Re-establish get Where r represents the vector composed of N discrete signals of the secondary user, r = [r(1), r(2), ..., r(N)], r(1) represents the first discrete signal, r(2) represents the second discrete signal, r(N) represents the Nth discrete signal, and f GMM (r(n)) represents the Gaussian mixture model of r(n), represents the mixing coefficient, Step 8: According to Construct an estimation optimization problem, described as: Then the particle swarm algorithm is used to solve Get g i ,i=1,2,…,K estimated value; where, Indicates finding f GMM (r) takes the maximum value when g i The value of Step 9: Perform spectrum sensing on the NOMA signal received by the secondary user in any sensing time slot. If |g i |,i=1,2,…,K is greater than or equal to the decision threshold λ, then the decision Established; if |g i |,i=1,2,…,K is less than the decision threshold λ, then the decision At the same time, the number of users whose values are greater than or equal to the decision threshold λ is counted and the number is used as the number of working main users; wherein the value of λ is determined according to the false alarm probability.
2. The NOMA signal spectrum sensing method based on GMM and particle swarm algorithm according to claim 1 is characterized in that In step 8, the particle swarm algorithm is used to solve The process is: Step 8_1: Assume that there are L particles in the particle swarm, and the dimension of each particle is K; set the position boundary value and velocity boundary value of all particles in the particle swarm, where the position boundary value is determined according to the search range required by the particle swarm, and the velocity boundary value is 10% to 20% of the position boundary value; then randomly initialize the position value of each of the L particles in the particle swarm within the range determined by the position boundary value, and randomly initialize the velocity value of each of the L particles in the particle swarm within the range determined by the velocity boundary value, and record the initial value of the position value of the αth particle in the particle swarm as The initial value of the velocity of the αth particle in the particle swarm is recorded as Among them, L∈[50,100], 1≤α≤L; Step 8_2: Let q be the number of iterations, let Q be the preset maximum number of iterations; let g best Represents the global optimal particle position value of all particles in the particle swarm, let p best,α represents the individual optimal particle position value of the αth particle in the particle swarm; where the initial value of q is 1, 1≤q≤Q, Q≥50; Step 8_3: For the qth iteration, when q=1, the initial value of the position value of each particle in the particle swarm is substituted into the fitness function. As g1,g2,…,g i ,…,g K , calculate the fitness value corresponding to each particle in the particle swarm, record the maximum value of the L fitness values at the qth iteration, and assign the initial value of the position value of the particle corresponding to the maximum value at the qth iteration to g best ; When q=1, Assign to p best,α ; When q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function. As g1,g2,…,g i ,…,g K The value of g is calculated to obtain a fitness value corresponding to each particle in the particle swarm, and the maximum value of the L fitness values at the qth iteration is recorded. The maximum value recorded at the qth iteration is compared with the value of g best Substitute the fitness value obtained by the fitness function. If the former is greater than or equal to the latter, the position value of the particle corresponding to the maximum value at the qth iteration is assigned to g best , if the former is less than the latter, then g best Remain unchanged; when q≠1, the position value of each particle in the particle swarm at the q-1th iteration is substituted into the fitness function As g1,g2,…,g i ,…,g K The value of α is used to calculate the fitness value corresponding to each particle in the particle swarm. The fitness value corresponding to each particle in the particle swarm is compared with the size of the individual optimal particle position value. If the former is greater than or equal to the latter, the former is assigned to the latter. That is, for the αth particle in the particle swarm, the fitness value corresponding to the particle is assigned to p best,α , if the former is smaller than the latter, the latter remains unchanged, that is, for the αth particle in the particle group, keep p best,α constant; Step 8_4: Calculate the position value of each particle in the particle swarm at the qth iteration, and record the position value of the αth particle in the particle swarm at the qth iteration as Among them, when q=1 That is That is When q≠1 represents the position value of the αth particle in the particle swarm at the q-1th iteration, represents the velocity value of the αth particle in the particle swarm at the q-1th iteration, express The first dimension of express The second dimension of express The Kth dimension of Step 8_5: Calculate the velocity value of each particle in the particle swarm at the qth iteration, and record the velocity value of the αth particle in the particle swarm at the qth iteration as Where ω represents the inertia weight, ω = 0.729, C1 and C2 represent the learning factors, C1 = C2 = 1.494, R1 and R2 are random values, and R1 and R2 obey the uniform distribution on [0, 1]; Step 8_6: Determine whether q is greater than or equal to Q or g best Convergence, if q is greater than or equal to Q or g best Convergence, the iteration process ends, and then execute step 8_7; if q is less than Q and g best If it does not converge, set q = q + 1, and then return to step 8_3 to continue iterating; where "=" in q = q + 1 is an assignment symbol; Step 8_7: Converge the g best Each dimension corresponds to g1,g2,…,g i ,…,g K estimated value.
Citation Information
Patent Citations
Spectrum sensing method and device based on machine learning in NOMA system
CN113300796A
Intelligent spectrum sensing method and system for cognitive Internet of Vehicles
CN113869238A