Discrete orthogonal code sequence optimization method based on iterative greedy code search memetic algorithm

The iterative greedy code search memetic algorithm optimizes discrete orthogonal code sequences in MIMO radar waveforms, enhancing orthogonality and search efficiency by addressing local optima and ensuring diversity, thus improving autocorrelation and cross-correlation performance.

CN119250167AActive Publication Date: 2025-01-03UNIV OF ELECTRONICS SCI & TECH OF CHINA

Patent Information

Application Number
CN202411281468.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2025-01-03
Estimated Expiration
2044-09-13

AI Technical Summary

Technical Problem

Existing discrete orthogonal code sequence sets in MIMO radar waveforms exhibit significant differences between autocorrelation and cross-correlation performance and the lower bound, limiting their orthogonality and optimization effectiveness.

Method used

A discrete orthogonal code sequence optimization method based on an iterative greedy code search memetic algorithm, utilizing a memetic algorithm framework with genetic operators and iterative greedy code search to optimize code sequences, addressing local optima and ensuring population diversity.

Benefits of technology

The method improves the orthogonality and search efficiency of discrete orthogonal code sequences, reducing the difference with the existing lower bound and achieving better autocorrelation and cross-correlation performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119250167A_ABST
    Figure CN119250167A_ABST
Patent Text Reader

Abstract

The invention discloses a discrete orthogonal code sequence optimization method based on an iterative greedy code search memetic algorithm, and belongs to the technical field of radar waveform design. The performance of the method provided by the invention is superior to that of the existing method, and the self-correlation and cross-correlation performance of the discrete orthogonal code sequence set optimized by the method provided by the invention is further close to the existing lower bound, so that the difference between the self-correlation and cross-correlation performance of the discrete orthogonal code sequence set and the existing lower bound is reduced. Compared with a greedy code search method, the iterative greedy code search strategy provided by the invention is stronger in local search capability, better in optimization effect and higher in search efficiency. And the method can improve the final search optimization result of the algorithm under the condition of not increasing the operation time of the algorithm. By simultaneously adopting crossover and mutation operators in each iteration, the search diversity of the algorithm is increased, and the search space of the algorithm is expanded, so that a discrete orthogonal code sequence set with better orthogonality can be obtained more possibly.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of radar waveform design, and in particular relates to a discrete orthogonal sequence optimization method based on an iterative greedy code search meme algorithm. Background Art

[0002] Once proposed, multiple input multiple output (MIMO) radar has become a research hotspot in the radar community at home and abroad. Currently, the commonly used MIMO radar waveforms are divided into four categories: (1) Time Division Multiplexing (TDM) MIMO waveform, (2) Frequency Division Multiplexing (FDM) MIMO waveform, (3) Doppler Division Multiplexing (DDM) MIMO waveform and (4) Code Division Multiplexing (CDM) MIMO waveform.

[0003] Among these four MIMO radar waveforms, the TDM-MIMO waveform is not conducive to improving the radar detection distance because it wastes the multi-channel transmission capability; the FDM-MIMO waveform can obtain a good main-to-slave ratio after sidelobe suppression, but the system implementation structure is complex and it cannot be implemented on the current millimeter-wave radar chip; the DDM-MIMO waveform has the problem of limited Doppler unambiguity range, and its maximum unambiguous speed is greatly reduced, so it is suitable for application scenarios with low speed, such as short-range radar (SRR) applications.

[0004] CDM-MIMO waveforms include fast-time CDM-MIMO waveforms and slow-time CDM-MIMO waveforms. The fast-time CDM-MIMO waveform requires phase modulation within a single pulse, which cannot be implemented on the mainstream millimeter-wave radar chips currently on the market. The slow-time CDM-MIMO waveform phase modulates each pulse in the slow-time dimension to obtain orthogonality. The DDM-MIMO waveform mentioned above is a special case of the slow-time CDM-MIMO waveform. The slow-time CDM-MIMO waveform has the following advantages: low range sidelobes, no loss of transmission capability, can be implemented on the mainstream millimeter-wave radar chips currently on the market, there is no problem of limited Doppler unambiguous range, and it is suitable for all application scenarios. However, it also has disadvantages: the velocity sidelobes of the slow-time CDM-MIMO waveform will be affected by the orthogonality of the discrete orthogonal code sequence set. However, the differences between the non-cyclic autocorrelation and cross-correlation functions of the existing discrete orthogonal code sequence sets and the lower bound of the peak sidelobe of the correlation function (such as the lower bound of the peak sidelobe of the Welch non-cyclic correlation function) are quite large. How to obtain a discrete orthogonal code sequence set with better orthogonality and a code sequence optimization method with better optimization effect is still an open problem worthy of study. Summary of the invention

[0005] The technical problem to be solved by the present invention is that the code sequence set designed by the existing code sequence optimization method still has a large difference between its autocorrelation and cross-correlation performance and the existing lower bound. To solve this problem, the present invention provides a discrete orthogonal code sequence optimization method based on an iterative greedy code search meme algorithm, which can further improve the code sequence performance and improve the search efficiency.

[0006] To achieve the above object, the present invention provides the following technical solution: a discrete orthogonal code sequence optimization method based on an iterative greedy code search meme algorithm, the specific steps are as follows:

[0007] Step 1: Initialize the maximum number of iterations T max 、Number of parents p 、Number of offspring o , the number of sequences in the code sequence set L, the code length N, the number of optional phases of the code sequence M, and the weight coefficient w;

[0008] Step 2: Generate Num based on the number of sequences L, code length N, and the number of optional phases M p initial individuals;

[0009] Step 3: Calculate the generated Num p The objective function of the initial individuals is sorted in ascending order according to the objective function. p The initial individuals constitute the initial parents;

[0010] Step 4: Determine whether the current number of iterations has reached the maximum number of iterations T max Or the algorithm termination condition is met, if the maximum number of iterations T has been reached max Or if the algorithm termination condition is met, the algorithm is terminated and the code sequence set with the lowest objective function is returned; otherwise, the next iteration is continued;

[0011] Step 5: Generate Num through mutation and crossover o offspring individuals;

[0012] Where Num o / 2 offspring individuals are generated by crossover, from Num p Select one parent from each of the Num parents as the target individual, and then select p A parent is randomly selected from the parents as the base individual, and the target individual and the base individual are cross-operated through the crossover function, and finally a new offspring individual is generated based on the target individual; the remaining Num o / 2 offspring individuals are generated through mutation, each time from Num p One parent is selected from each parent as the target individual, and the mutation operation is performed on the target individual through the mutation function to generate a new offspring individual;

[0013] Step 6: Calculate the newly generated Num o The objective function of the offspring individuals is generated, and each newly generated offspring individual is subjected to iterative greedy code search to obtain the new individuals after search optimization and their corresponding objective functions;

[0014] Step 7: Merge all new individuals and parents obtained after iterative greedy code search in step 6, sort the merged population in ascending order according to the objective function, delete duplicate individuals in the ascending population, and obtain a new population without duplicate individuals;

[0015] Step 8: For the population obtained in step 7, use the selection function to select the Num with the smallest objective function p Individuals serve as parents for the next iteration;

[0016] Step 9: Repeat steps 4 to 9 for the parent obtained in step 8 until the current number of iterations reaches the maximum number of iterations T max Or the algorithm termination condition is met and the individual with the smallest objective function is output. This individual is the discrete orthogonal code sequence set with the best orthogonal performance after final optimization.

[0017] Furthermore, the initial individual in the above step 2 is generated by a random function, and a phase is randomly selected from the optional phases of the code sequence each time by the random function;

[0018] The optional phase of the code sequence is shown as follows:

[0019] δ l (n)∈{0,2π / M,…,(M-1)*2π / M}

[0020] The final generated initial individual is represented by an L×N matrix:

[0021]

[0022] where δ l (n) represents the phase of the nth sub-pulse of the lth signal.

[0023] Furthermore, in step 3, the objective function is to minimize the autocorrelation peak sidelobe and the cross-correlation peak simultaneously.

[0024] Furthermore, the specific process of step 6 is as follows:

[0025] A greedy code search is performed on each newly generated offspring individual. After the first greedy code search is completed, it is determined whether the objective function of the individual after the search is reduced; if it is not reduced, the individual after the search is directly output; if it is reduced, a greedy code search is performed on the individual after the search again, and it is determined again whether the objective function of the individual after the search is reduced; the previous operation is repeated until the objective function of the individual after the search is no longer reduced, and the individual after the final search optimization and its objective function are output.

[0026] Furthermore, in step 7, a method for processing evolutionary stagnation is used, and the specific process is as follows:

[0027] Perform a check on the sameness of the populations that have been merged and sorted in ascending order in step 7; starting from the first individual in the population, compare it with the remaining 2nd, ..., Numth o +Num p -1 individuals are compared; if two individuals are the same, the duplicate individual being compared is deleted, and if they are different, they are retained; after deleting the duplicate individual or retaining the individual, the comparison of the next individual is continued; after the search for the first individual is completed, there may be several situations: the first is that only the first individual is left; the second is that only two individuals are left; the third is that n individuals are left and n>3; obviously, the first two situations do not need to be compared again because they have been compared; if it is the third situation, start from the second individual and compare the third, ..., n individuals in turn; until all individuals are compared, a new population without duplicate individuals is finally obtained.

[0028] Furthermore, the objective function E is specifically:

[0029]

[0030] Where w is the weight coefficient between the autocorrelation peak sidelobe and the cross-correlation peak, ranging from 0 to 1; the higher w is, the more attention the optimization method pays to the autocorrelation peak sidelobe of the code sequence, and vice versa, the more attention the optimization method pays to the cross-correlation peak of the code sequence; when the objective function E is smaller, the orthogonality of the discrete code sequence set is better;

[0031]

[0032] Where k is the discrete time index, and the superscript * indicates conjugation; A(s p ,k) represents the non-periodic autocorrelation function of the pth signal in the discrete orthogonal code sequence set, C(s p ,s q , k) represents the non-periodic cross-correlation function between the p-th signal and the q-th signal in the discrete orthogonal code sequence set; δ p (n) represents the nth element of the pth signal in the discrete orthogonal code sequence set, δ p (n+k) represents the n+kth element of the pth signal in the discrete orthogonal code sequence set; Where N represents the code length. It represents the normalization of the non-periodic autocorrelation function and the non-periodic cross-correlation function. After normalization, the value of the non-periodic autocorrelation function when k=0, that is, the peak value of the non-periodic autocorrelation function becomes 1. When k≠0, the value of the non-periodic autocorrelation function becomes a number in [-1,1]; the value of the non-periodic cross-correlation function after normalization also becomes a number in [-1,1].

[0033] The beneficial effects of the present invention are:

[0034] 1. The present invention provides a discrete orthogonal code sequence optimization method based on an iterative greedy code search memetic algorithm. The method adopts the iterative greedy code search strategy (IGCS) proposed by the present invention under the framework of a memetic algorithm (MA). Therefore, the performance of the method proposed by the present invention is better than that of the existing methods, and the autocorrelation and cross-correlation performance of the discrete orthogonal code sequence set optimized by the method proposed by the present invention are further close to the existing lower bound, reducing the difference with the existing lower bound.

[0035] 2. The present invention provides an iterative greedy code search strategy to optimize the disadvantage of the original greedy code search method that it is easy to fall into the local optimum. Compared with the greedy code search method, the iterative greedy code search strategy proposed by the present invention has stronger local search ability, better optimization effect and higher search efficiency.

[0036] 3. The present invention provides a method for dealing with evolutionary stagnation by deleting duplicate individuals in the population to ensure population diversity, thereby ensuring that the algorithm can continue to explore better solutions; and this method can improve the final search optimization results of the algorithm without increasing the running time of the algorithm.

[0037] 4. The present invention adopts a new genetic strategy to generate Num through crossover and mutation in each iteration. o / 2 generations. By using crossover and mutation operators simultaneously in each iteration, the algorithm's search diversity is increased and the algorithm's search space is expanded, making it more likely to obtain a discrete orthogonal code sequence set with better orthogonality. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 A flowchart of a discrete orthogonal code sequence optimization method based on an iterative greedy code search meme algorithm;

[0039] Figure 2 Specific search optimization process for iterative greedy code search strategy;

[0040] Figure 3 The specific process of the greedy code search method;

[0041] Figure 4 A specific process for dealing with evolutionary stagnation;

[0042] Figure 5 A comparison chart of the average autocorrelation levels of discrete orthogonal code sequences with different symbol lengths designed based on various algorithms;

[0043] Figure 6 A comparison chart of the average cross-correlation levels of discrete orthogonal code sequences with different symbol lengths designed based on various algorithms;

[0044] Figure 7 A comparison chart of the average autocorrelation levels of discrete orthogonal code sequence sets with different numbers of sequences designed based on various algorithms;

[0045] Figure 8 A comparison chart of the average cross-correlation levels of discrete orthogonal code sequence sets with different numbers of sequences designed based on various algorithms;

[0046] Fig. 9 A comparison chart of the average autocorrelation levels of discrete orthogonal code sequence sets with different discrete phase numbers designed based on various algorithms;

[0047] Fig.10 A comparison chart of the average cross-correlation levels of discrete orthogonal code sequence sets with different discrete phase numbers designed based on various algorithms. DETAILED DESCRIPTION

[0048] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0049] Embodiment 1

[0050] First, the Memetic Algorithm (MA) is introduced, which is also called the memetic algorithm. The word Memetic comes from Meme, but according to the original meaning of the word proposed by its author, it should be understood as "cultural gene". For the sake of simplicity, MA is called the memetic algorithm below. The memetic algorithm is an optimization algorithm proposed by Pablo Moscato based on the simulation of cultural evolution. It is essentially a combination of population-based global search and individual-based local heuristic search. The memetic algorithm proposes a framework and a concept. Under this framework, different search strategies can form different memetic algorithms. For example, the global search strategy can adopt genetic algorithms, evolutionary strategies, evolutionary programming, etc., and the local search strategy can adopt hill climbing search, simulated annealing, greedy algorithm, taboo search, guided local search, etc.

[0051] The invention provides a discrete orthogonal code sequence optimization method based on an iterative greedy code search meme algorithm, which adopts an improved genetic algorithm (GA) as a global search strategy and an iterative greedy code search strategy as a local search strategy.

[0052] Based on this, Figure 1 As shown, the present invention provides a discrete orthogonal code sequence optimization method based on an iterative greedy code search meme algorithm, and the specific steps are as follows:

[0053] Step 1: Initialize the maximum number of iterations T max 、Number of parents p 、Number of offspring o , the number of sequences in the code sequence set L, the code length N, the number of optional phases of the code sequence M, the weight coefficient w and other parameters;

[0054] Furthermore, the discrete orthogonal code sequence is first introduced in detail, and the optional phase of the code sequence is shown in the following formula:

[0055] δ l (n)∈Φ∈{0, 2π / M,…, (M-1)*2π / M}

[0056] Step 2: Generate Num based on the number of sequences L, code length N, and the number of optional phases M p initial individuals;

[0057] Furthermore, the specific generation process of the initial individual is described in detail:

[0058] The initial individual is composed of L code sequences with a code length of N. The generation of an initial individual requires L×N random selection operations; a number is randomly selected from {0, 1, ..., (M-1)}, and the phases corresponding to the selected pseudo-random integers are {0, 2π / M, ..., (M-1)*2π / M}. Repeat the random selection operation L×N times, and the final generated initial individual and all subsequent individuals can be represented by an L×N matrix:

[0059]

[0060] Step 3: Calculate the generated Num p The objective function of the initial individuals is sorted in ascending order according to the objective function. p The initial individuals constitute the initial parents;

[0061] Furthermore, the present invention takes the minimization of the autocorrelation peak sidelobe and the cross-correlation peak as the objective function, and the specific mathematical expression of the objective function is:

[0062]

[0063] Where w is the weight coefficient between the autocorrelation peak sidelobe and the cross-correlation peak, ranging from 0 to 1. The higher w is, the more attention the optimization method pays to the autocorrelation peak sidelobe of the code sequence, and vice versa. The smaller the objective function E is, the better the orthogonality of the discrete code sequence set is.

[0064] The non-periodic autocorrelation function A(s p , k) and the non-periodic cross-correlation function C(s p ,s q , k) is calculated as follows:

[0065]

[0066]

[0067] Where k is the discrete time index, and the superscript * indicates conjugation. p , k) represents the non-periodic autocorrelation function of the pth signal in the discrete orthogonal code sequence set, C(s p ,s q, k) represents the non-periodic cross-correlation function between the p-th signal and the q-th signal in the discrete orthogonal code sequence set. p (n) represents the nth element of the pth signal in the discrete orthogonal code sequence set, δ p (n+k) represents the n+kth element of the pth signal in the discrete orthogonal code sequence set. Where N represents the code length. It represents the normalization of the non-periodic autocorrelation function and the non-periodic cross-correlation function. After normalization, the value of the non-periodic autocorrelation function when k=0, that is, the peak value of the non-periodic autocorrelation function becomes 1. When k≠0, the value of the non-periodic autocorrelation function becomes a number in [-1,1]; the value of the non-periodic cross-correlation function after normalization also becomes a number in [-1,1].

[0068] After calculating Num p After the initial individual objective functions are obtained, the initial individuals are sorted in ascending order according to the objective function. p The initial individuals constitute the initial parents.

[0069] Step 4: Determine whether the current number of iterations has reached the maximum number of iterations T max Or the algorithm termination condition is met, if the maximum number of iterations T has been reached max Or if the algorithm termination condition is met, the algorithm is terminated and the code sequence set with the lowest objective function is returned; otherwise, the next iteration is continued;

[0070] Step 5: Generate Num through mutation and crossover respectively o / 2 children; where Num o / 2 offspring individuals are generated by crossover, from Num p Select one parent from each of the Num parents as the target individual, and then select p A parent is randomly selected from the parents as the base individual, and the target individual and the base individual are cross-operated through the crossover function, and finally a new offspring individual is generated based on the target individual; the remaining Num o / 2 offspring individuals are generated through mutation, each time from Num p One parent is selected from each parent as the target individual, and the mutation operation is performed on the target individual through the mutation function to generate a new offspring individual;

[0071] Step 6: Calculate the newly generated Num o The objective function of the offspring individuals is calculated, and each newly generated offspring individual is subjected to iterative greedy code search to obtain the new individuals after search optimization and their corresponding objective functions.

[0072] It should be noted that if Figure 2As shown, the present invention adopts an iterative greedy code search strategy as a local search strategy, and its specific search optimization process is as follows:

[0073] A greedy code search is performed on each newly generated offspring individual. After the first greedy code search is completed, it is determined whether the objective function of the individual after the search is reduced. If it is not reduced, the individual after the search is directly output; if it is reduced, a greedy code search is performed on the individual after the search again, and it is determined again whether the objective function of the individual after the search is reduced; the previous operation is repeated until the objective function of the individual after the search is no longer reduced, and the individual after the final search optimization and its objective function are output.

[0074] Furthermore, if Figure 3 As shown, the specific process of the greedy code search method is as follows:

[0075] It should be noted that all individuals in the optimization method proposed in the present invention, that is, the discrete orthogonal code sequence set, can be represented by an L×N matrix; the following operations are performed on each element in the matrix to obtain the search optimized individual:

[0076] Start from the first element of the first row in the matrix to the Nth element of the first row, then start from the second row until the Nth element of the Lth row is searched. Search the phase of the current element, select one of the remaining M-1 phases to replace the original phase, and calculate the objective function of the individual after the phase is replaced. If the objective function of the individual decreases during the replacement process, the replaced phase will replace the original phase, and the remaining M-2 phases will continue to replace the existing phase until all phases have been tried; if the objective function of the individual does not change or increases, the original phase of the element will not be changed, and the phase search process of the current element will continue.

[0077] Step 7: Merge the new population obtained after iterative greedy code search in step 6 with the parent, sort the merged population in ascending order according to the objective function, and then delete duplicate individuals in the ascending population to obtain a new population without duplicate individuals.

[0078] Furthermore, if Figure 4 As shown, in step 7, a method for dealing with evolutionary stagnation is used to ensure population diversity by deleting duplicate individuals in the population; the specific process of deleting duplicate individuals is as follows:

[0079] Perform a check on the sameness of the populations that have been merged and sorted in ascending order in step 7; starting from the first individual in the population, compare it with the remaining 2nd, ..., Numth o +Num pIndividuals are compared. If two individuals are the same, the duplicate individuals being compared are deleted, and if they are different, they are retained; after deleting duplicate individuals or retaining individuals, the comparison of the next individual continues. After the search for the first individual is completed, there may be several situations: the first one, only the first individual is left; the second one, only two individuals are left; the third one, n (n>3) individuals are left. Obviously, the first two situations do not need to be compared again because they have been compared; if it is the third situation, start from the second individual and compare the third, ..., n individuals in turn. Until all individuals are compared, a new population without duplicate individuals is finally obtained.

[0080] Step 8: For the population obtained in step 7, use the selection function to select the Num with the smallest objective function p individuals serve as parents for the next iteration.

[0081] Step 9: Repeat steps 4 to 9 for the parent obtained in step 8 until the current number of iterations reaches the maximum number of iterations T max Or the algorithm termination condition is met and the individual with the smallest objective function is output. This individual is the discrete orthogonal code sequence set with the best orthogonal performance after final optimization.

[0082] Embodiment 2

[0083] Based on the first embodiment, a simulation example of the present invention is given below, and its implementation process is analyzed and explained. Figure 1 shown.

[0084] Step 1: Initialize parameters and the maximum number of iterations T max =100, number of parents Num p =64, number of offspring Num o =128, number of sequences in the code sequence set L=4, code length N=40, number of optional phases of the code sequence M=4, weight coefficient w=0.5;

[0085] Step 2: Generate the initial individuals and generate Num according to the number of sequences L, code length N, and the number of optional phases M. p Initial individuals; the initial individuals are composed of 4 code sequences with a code length of 40. The generation of an initial individual requires 4×40 random selection operations; a number is randomly selected from {0, 1, ..., 3)}, and the phases corresponding to the selected pseudo-random integers are {0, 2π / 4, ..., (4)*2π / 4}. Repeat the random selection operation 4×40 times to finally generate an initial individual. Repeat Num p = 64 times to generate 64 initial individuals.

[0086] Step 3: Calculate the generated Num p= The objective function of 64 initial individuals, and the initial individuals are arranged in ascending order according to the objective function. p =64 initial individuals constitute the initial parents;

[0087] It should be noted that the non-periodic autocorrelation function A(s p , k) and the non-periodic cross-correlation function C(s p ,s q , k); then calculate Num according to the mathematical expression of the objective function p = Objective function of 64 individuals;

[0088] Furthermore, the initial individuals are arranged in ascending order according to the objective function. p = 64 initial individuals constitute the initial parents for the next iteration;

[0089] Step 4: Determine whether the current number of iterations has reached the maximum number of iterations T max Or the algorithm termination condition is met, if the maximum number of iterations T has been reached max Or if the algorithm termination condition is met, the algorithm is terminated and the code sequence set with the lowest objective function is returned; otherwise, the next iteration is continued;

[0090] Step 5: Generate Num through mutation and crossover respectively o / 2 = 64 offspring; 64 offspring individuals are generated through crossover, from Num p = Select one parent from the 64 parents as the target individual, and then randomly select one parent from the 64 parents as the base individual. Use the crossover function to cross the target individual and the base individual, and finally generate a new offspring individual based on the target individual; the remaining Num o / 2 = 64 offspring individuals are generated through mutation. Each time, one parent is selected from the 64 parents as the target individual, and the mutation operation is performed on the target individual through the mutation function to generate new offspring individuals;

[0091] It should be noted that from Num p =64 parents, select the 1st, ..., 64th parents as the target individuals, and then select p =A parent is randomly selected from 64 parents as the base individual;

[0092] Step 6: Calculate the newly generated Num o =The objective function of 128 offspring individuals is used to perform iterative greedy code search on each newly generated offspring individual to obtain the new individual after search optimization and its corresponding objective function.

[0093] Step 7: Merge the new population obtained after iterative greedy code search in step 6 with the parent, sort the merged population in ascending order according to the objective function, and then delete duplicate individuals in the ascending population to obtain a new population without duplicate individuals.

[0094] It should be noted that after merging in step 7, Num o +Num p = 192 individuals, arrange the 192 individuals in ascending order, and perform an operation to determine whether the individuals in ascending order are the same; starting from the first individual in the population, compare it with the remaining second, ..., 192 individuals. If two individuals are the same, delete the duplicate individuals being compared, and keep them if they are different; after the comparison of the first individual is completed, compare the second individual, until all individuals are compared, and obtain a population without duplicate individuals.

[0095] Step 8: For the population obtained in step 7, use the selection function to select the Num with the smallest objective function p individuals serve as parents for the next iteration.

[0096] It should be noted that the population without repeated individuals obtained in step 7 is selected and the first Num p = 64 individuals as new parents;

[0097] Step 9: Repeat steps 4 to 9 for the parent obtained in step 8 until the current number of iterations reaches T max =100 or the algorithm termination condition is met, and the individual with the smallest objective function is output. This individual is the discrete orthogonal code sequence set with the best orthogonal performance after final optimization.

[0098] According to the above steps, under the conditions that the number of sequences in the code sequence set is L=4, the code length is N=40, the number of optional phases of the code sequence is M=4, and the weight coefficient is w=0.5, the discrete orthogonal code sequence set is designed as shown in Table 1 below;

[0099] Table 1 Discrete orthogonal code sequence set designed under the conditions of L = 4, N = 40, M = 4, w = 0.5

[0100]

[0101] In order to further compare the performance of existing optimization algorithms with the optimization algorithm proposed in the present invention (MA-IGCS), the improved ion motion algorithm (IIMA) proposed in 2021, the genetic algorithm first applied to the optimization of discrete orthogonal code sequence sets, and the Greedy Code Search Based Memetic Algorithm (MA) with the best existing optimization performance are used to design discrete orthogonal code sequence sets with the same parameters.

[0102] By adjusting the parameters of each algorithm, each algorithm has the same maximum number of iterations, and the number of parents is taken as Num p =64, the same number of Num is generated in each iteration o = 128 offspring, compare the performance of discrete orthogonal code sequence sets designed by various algorithms under the conditions of the same number of iterations, the same number of parents, and the same number of offspring generated in each iteration. The results are as follows Figures 5 to 10 As shown in the figure, according to the experimental results, MA-IGCS can obtain the best design result under the same maximum number of iterations, the same number of parents, and the same number of offspring generated in each iteration. Moreover, the autocorrelation and cross-correlation performance of the discrete orthogonal code sequence set optimized by the method proposed in the present invention are closer to the existing lower bound, and the difference with the existing lower bound is reduced. It can be seen that the MA-IGCS algorithm proposed in the present invention is superior to other algorithms such as IIMA, GA, and MA-GCS.

[0103] Furthermore, in order to illustrate the superiority of the method proposed in the present invention in detail, the MA-IGCS algorithm proposed in the present invention is compared with the MA-GCS algorithm under the conditions of L=4, N=40, M=4, w=0.5, L=4, N=512, M=2, w=0.5 and L=4, N=512, M=4, w=0.5, and the performance of discrete orthogonal code sequence sets designed by the two algorithms under the conditions of the same number of iterations, the same number of parents and the same number of offspring generated in each iteration is compared.

[0104] Table 2 Performance comparison between MA-IGCS and MA-GCS algorithms under the conditions of L=4, N=40, M=4, and w=0.5

[0105]

[0106] Table 3 Performance comparison between MA-IGCS and MA-GCS algorithms under the conditions of L=4, N=512, M=2, and w=0.5

[0107]

[0108] Table 4 Performance comparison between MA-IGCS and MA-GCS algorithms under the conditions of L=4, N=512, M=4, w=0.5

[0109]

[0110] According to the experimental results, under the conditions of the same maximum number of iterations, the same number of parents, and the same number of offspring generated in each iteration, the performance of the discrete orthogonal code sequence set optimized by MA-IGCS is better than that of MA-GCS, and its autocorrelation and cross-correlation performance are closer to the existing lower bound, reducing the difference with the existing lower bound. In the three experiments, from the objective function point of view, the objective function of the worst discrete orthogonal code sequence set optimized by MA-IGCS is better than or close to the objective function of the optimal discrete orthogonal code sequence set optimized by MA-GCS. It can be seen that the MA-IGCS algorithm proposed by the present invention is better than MA-GCS.

[0111] The preferred embodiments of the present invention disclosed above are only used to help explain the technical solutions of the present invention. The preferred embodiments do not describe all the details in detail, nor do they limit the present invention to specific implementation methods. Obviously, many modifications and changes can be made according to the content of this specification. This specification selects and specifically describes these embodiments in order to better explain the principles and practical applications of the present invention, so that those skilled in the art can understand and use the present invention well. The present invention is limited only by the claims and their full scope and equivalents.

Claims

1. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm, the specific steps are as follows: Step 1: Initialize the maximum number of iterations T max 、Number of parents p 、Number of offspring o , the number of sequences in the code sequence set L, the code length N, the number of optional phases of the code sequence M, and the weight coefficient w; Step 2: Generate Num based on the number of sequences L, code length N, and the number of optional phases M p initial individuals; Step 3: Calculate the generated Num p The objective function of the initial individuals is sorted in ascending order according to the objective function. p The initial individuals constitute the initial parents; Step 4: Determine whether the current number of iterations has reached the maximum number of iterations T max Or the algorithm termination condition is met, if the maximum number of iterations T has been reached max Or if the algorithm termination condition is met, the algorithm is terminated and the code sequence set with the lowest objective function is returned; otherwise, the next iteration is continued; Step 5: Generate Num through mutation and crossover o offspring individuals; Where Num o / 2 offspring individuals are generated by crossover, from Num p Select one parent from each of the Num parents as the target individual, and then select p A parent is randomly selected from the parents as the base individual, and the target individual and the base individual are cross-operated through the crossover function, and finally a new offspring individual is generated based on the target individual; the remaining Num o / 2 offspring individuals are generated through mutation, each time from Num p One parent is selected from each parent as the target individual, and the mutation operation is performed on the target individual through the mutation function to generate a new offspring individual; Step 6: Calculate the newly generated Num o The objective function of the offspring individuals is generated, and each newly generated offspring individual is subjected to iterative greedy code search to obtain the new individuals after search optimization and their corresponding objective functions; Step 7: Merge all new individuals and parents obtained after iterative greedy code search in step 6, sort the merged population in ascending order according to the objective function, delete duplicate individuals in the ascending population, and obtain a new population without duplicate individuals; Step 8: For the population obtained in step 7, use the selection function to select the Num with the smallest objective function p Individuals serve as parents for the next iteration; Step 9: Repeat steps 4 to 9 for the parent obtained in step 8 until the current number of iterations reaches the maximum number of iterations T max Or the algorithm termination condition is met and the individual with the smallest objective function is output. This individual is the discrete orthogonal code sequence set with the best orthogonal performance after final optimization.

2. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm as claimed in claim 1, characterized in that: The initial individual in step 2 is generated by a random function, and a phase is randomly selected from the optional phases of the code sequence each time by the random function; The optional phase of the code sequence is shown as follows: δ l (n)∈{0,2π / M,…,(M-1)*2π / M} The final generated initial individual is represented by an L×N matrix: where δ l (n) represents the phase of the nth sub-pulse of the lth signal.

3. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm as claimed in claim 1, characterized in that: In step 3, the objective function is to minimize the autocorrelation peak sidelobe and the cross-correlation peak simultaneously.

4. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm as claimed in claim 1, characterized in that: The specific process of step 6 is as follows: A greedy code search is performed on each newly generated offspring individual. After the first greedy code search is completed, it is determined whether the objective function of the searched individual is reduced; if not, the searched individual is directly output; If it is reduced, a greedy code search is performed on the individual after the search to determine whether the objective function of the individual after the search is reduced again; the previous operation is repeated until the objective function of the individual after the search is no longer reduced, and the individual and its objective function after the final search optimization are output.

5. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm as claimed in claim 1, characterized in that: In step 7, a method for processing evolutionary stagnation is used, and the specific process is as follows: Perform a check on the sameness of the populations that have been merged and sorted in ascending order in step 7; starting from the first individual in the population, compare it with the remaining 2nd, ..., Numth o +Num p -1 individuals are compared; if two individuals are the same, the duplicate individual being compared is deleted, and if they are different, they are retained; after deleting the duplicate individual or retaining the individual, the comparison of the next individual is continued; after the search for the first individual is completed, there may be several situations: the first is that only the first individual is left; the second is that only two individuals are left; the third is that n individuals are left and n>3; obviously, the first two situations do not need to be compared again because they have been compared; if it is the third situation, start from the second individual and compare the third, ..., n individuals in turn; until all individuals are compared, a new population without duplicate individuals is finally obtained.

6. A discrete orthogonal code sequence optimization method based on iterative greedy code search meme algorithm as claimed in claim 3, characterized in that: The objective function E is specifically: Where w is the weight coefficient between the autocorrelation peak sidelobe and the cross-correlation peak, ranging from 0 to 1; the higher w is, the more attention the optimization method pays to the autocorrelation peak sidelobe of the code sequence, and vice versa, the more attention the optimization method pays to the cross-correlation peak of the code sequence; when the objective function E is smaller, the orthogonality of the discrete code sequence set is better; Where k is the discrete time index, and the superscript * indicates conjugation; A(s p ,k) represents the non-periodic autocorrelation function of the pth signal in the discrete orthogonal code sequence set, C(s p ,s q , k) represents the non-periodic cross-correlation function between the p-th signal and the q-th signal in the discrete orthogonal code sequence set; δ p (n) represents the nth element of the pth signal in the discrete orthogonal code sequence set, δ p (n+k) represents the n+kth element of the pth signal in the discrete orthogonal code sequence set; Where N represents the code length. It represents the normalization of the non-periodic autocorrelation function and the non-periodic cross-correlation function. After normalization, the value of the non-periodic autocorrelation function when k=0, that is, the peak value of the non-periodic autocorrelation function becomes 1. When k≠0, the value of the non-periodic autocorrelation function becomes a number in [-1,1]; the value of the non-periodic cross-correlation function after normalization also becomes a number in [-1,1].

Citation Information

Patent Citations

  • Discrete orthogonal polyphase code set optimization method based on memetic algorithm

    CN113722983A

  • Method of generating code sequence, transmittingsignals, apparatus thereof, code sequence, and codesequence set

    KR1020070065657A

Cited By

  • Complementary sequence set-oriented memetic island optimization method and related device

    CN121860002A

  • A method and related apparatus for optimizing meme islands for complementary sequence sets.

    CN121860002B