Navigation enhanced satellite selection method and device based on optimization algorithm, equipment and medium

Through the navigation enhancement star selection method based on optimization algorithm, comprehensively considering factors such as satellite geometric layout, signal strength, multi-path effect error and atmospheric refractive error, the problem of difficulty in selecting the optimal satellite combination in the existing technology is solved, and efficient and accurate navigation enhancement effect is achieved.

CN120065263AActive Publication Date: 2025-05-30BEIJING TIANGONG KEYI SPACE TECH CO LTD

Patent Information

Application Number
CN202510559319.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2025-05-30
Estimated Expiration
2045-04-30

AI Technical Summary

Technical Problem

The existing navigation enhanced star selection method only considers the geometric layout of the satellite during the star selection process, and ignores factors such as signal strength, multipath effect error and atmospheric refractive error, making it difficult to select the optimal satellite combination in complex environments.

Method used

The navigation enhanced star selection method based on optimization algorithm is adopted, and multiple visible satellite combinations are randomly generated, binary encoding is performed, and the fitness value is calculated. The satellite combination is gradually optimized until the preset geometric accuracy factor threshold is met.

Benefits of technology

Select the optimal navigation satellite combination in a short time to improve navigation accuracy and reliability, and is suitable for complex environments and meet real-time requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120065263A_ABST
    Figure CN120065263A_ABST
Patent Text Reader

Abstract

The invention discloses a navigation enhanced satellite selection method and device based on an optimization algorithm, equipment and a medium, and the method comprises the steps: randomly generating a plurality of visible satellite combinations based on a plurality of visible satellites observed by a receiver in a target time period, and coding the visible satellite combinations to obtain an initial population; calculating the fitness value of each binary coding sequence in the population based on a fitness function according to the geometric layout parameter, the signal intensity parameter, the multipath effect parameter and the atmospheric refraction error parameter; based on a roulette selection method, n target binary coding sequences are selected for crossover and mutation operation, and a new population is obtained; if the geometric accuracy factor of the binary coding sequence in the new population is greater than a preset threshold value, taking the new population as an initial population, and returning to the step of calculating the fitness value until iteration is finished; and taking the satellite combination with the highest fitness value in the final new population as a target visible satellite combination. The satellite selection efficiency, the positioning precision and the anti-interference capability can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of satellite navigation technology, and particularly to a navigation enhancement satellite selection method, device, equipment and medium based on an optimization algorithm. Background Technique

[0002] In satellite navigation systems, in order to improve the accuracy and reliability of navigation, navigation enhancement technology has been widely applied. Among them, as one of the key technologies, the navigation enhancement satellite selection method mainly optimizes navigation performance by selecting the optimal satellite combination. At present, the navigation enhancement satellite selection method mainly includes the satellite selection method based on Geometric Dilution of Precision (GDOP).

[0003] Satellite selection method based on GDOP: This method evaluates the geometric layout quality of the satellite combination by calculating the GDOP values of visible satellites, and then selects the satellite combination with the smallest GDOP value as the optimal solution. The smaller the GDOP value, the better the geometric layout of the satellite combination and the higher the positioning accuracy. However, this method only considers the geometric layout of satellites during the satellite selection process, ignoring other important factors such as signal strength, multipath effect error, and atmospheric refraction error, resulting in relatively large limitations. For example, in complex environments such as urban canyons and mountainous areas, due to severe signal occlusion and reflection, it is difficult to select the optimal satellite combination only relying on the GDOP value.

[0004] In addition, some satellite selection methods based on other algorithms in the current related technologies also have certain limitations. For example, during the process of searching for the optimal solution, multiple iterations are required, resulting in a slow convergence speed and affecting real-time performance. Another example is that due to the limitation of the search strategy of the algorithm itself, it is easy to fall into a local optimal solution, and thus the selected satellite combination is not the global optimal. Summary of the Invention

[0005] In view of this, the embodiments of this application provide a navigation enhancement satellite selection method, device, equipment and medium based on an optimization algorithm to solve at least one of the above technical problems.

[0006] In the first aspect, the embodiments of this application provide a navigation enhancement satellite selection method based on an optimization algorithm, including: Based on multiple visible satellites observed by a receiver within a target time period, randomly generate multiple visible satellite combinations, each visible satellite combination including N visible satellites, where N is an integer greater than 1; Perform binary encoding on multiple visible satellite combinations respectively to obtain an initial population, where the initial population includes binary encoding sequences corresponding to multiple visible satellite combinations respectively; Based on a preset fitness function, and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination, calculate the fitness values of each binary coding sequence in the initial population; Based on the roulette wheel selection method, and perform a selection operation on multiple binary coding sequences in the initial population according to the fitness values of each binary coding sequence, so as to select n target binary coding sequences from the multiple binary coding sequences, where n is an integer greater than 1; Perform a crossover operation and a mutation operation on the n target binary coding sequences to obtain a new population, where the new population includes multiple newly generated binary coding sequences; If the geometric dilution of precision corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, then use the new population as the initial population, and return to the step of calculating the fitness values of each binary coding sequence in the initial population, until the geometric dilution of precision corresponding to multiple binary coding sequences in the new population is less than or equal to the preset threshold, or the number of iterations reaches the preset number of iterations; Screen out the binary coding sequence with the highest fitness value from the last obtained new population, and use the satellite combination corresponding to the binary coding sequence as the target visible satellite combination.

[0007] According to some embodiments of the present application, optionally, based on multiple visible satellites observed by the receiver within a target time period, randomly generate multiple visible satellite combinations, including: obtaining the signal strength and elevation angle of multiple visible satellites; excluding visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle from the multiple visible satellites; randomly selecting N visible satellites from the remaining visible satellites to obtain a visible satellite combination, and repeating this step until multiple visible satellite combinations are obtained.

[0008] According to some embodiments of the present application, optionally, based on the roulette wheel selection method, and perform a selection operation on multiple binary coding sequences in the initial population according to the fitness values of each binary coding sequence, so as to select n target binary coding sequences from the multiple binary coding sequences, including: respectively dividing the fitness value of each binary coding sequence by the sum of the fitness values of multiple binary coding sequences in the initial population to obtain the selection probability of each binary coding sequence; calculating the cumulative probability of each binary coding sequence according to the selection probability of each binary coding sequence; generating a uniformly distributed first random number in the interval [0,1], and selecting a binary coding sequence with a cumulative probability greater than or equal to the first random number as a target binary coding sequence, and repeating this step n times until n target binary coding sequences are obtained.

[0009] According to some embodiments of the present application, optionally, performing a crossover operation and a mutation operation on n target binary coding sequences to obtain a new population, including: for any two of the n target binary coding sequences, performing a single-point crossover operation or a multi-point crossover operation to obtain two newly generated first binary coding sequences, replacing the two target binary coding sequences that need to perform the crossover operation and repeating this step until a preset number of first binary coding sequences are obtained; for each gene bit in any one of the first binary coding sequences, generating a second random number corresponding to this gene bit within the interval [0, 1], if the second random number corresponding to this gene bit is less than a preset mutation probability, then taking the inverse of the value of this gene bit to obtain a newly generated second binary coding sequence; wherein, the new population includes a plurality of newly generated second binary coding sequences.

[0010] According to some embodiments of the present application, optionally, the single-point crossover operation includes randomly selecting the x-th gene bit in two target binary coding sequences as a crossover point, and exchanging the gene sequences after or before the crossover point in the two target binary coding sequences to obtain two newly generated first binary coding sequences, where x is a positive integer; The multi-point crossover operation includes randomly selecting a plurality of gene bits in two target binary coding sequences as a plurality of crossover points, and exchanging the values of the gene bits at the plurality of crossover points in the two target binary coding sequences to obtain two newly generated first binary coding sequences.

[0011] According to some embodiments of the present application, optionally, the fitness value calculation index system is divided into a target layer, a criterion layer, and an index layer from top to bottom. The target layer is the fitness value of the binary coding sequence of the visible satellite combination. The criterion layer includes a plurality of criterion parameters for calculating the fitness value of the binary coding sequence. The plurality of criterion parameters include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer includes a plurality of normalized indexes corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters respectively; Based on a preset fitness function, and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination, calculating the fitness value of each binary coding sequence in the initial population, including: Calculating the fitness value of each binary coding sequence in the initial population according to the following expression:

[0012] wherein, X represents the fitness value of the binary coding sequence, represents the i-th normalized index value of the j-th criterion parameter, denotes the weight of the i-th normalized index of the j-th criterion parameter, denotes the weight of the j-th criterion parameter, p denotes the number of indices corresponding to the j-th criterion parameter, n denotes the number of criterion parameters, and i, j, p, and n are all positive integers.

[0013] According to some embodiments of the present application, optionally, after obtaining the target visible satellite combination, the navigation enhancement satellite selection method based on the optimization algorithm further includes: positioning the receiver based on the target visible satellite combination, and recording the time taken for positioning and the positioning error; if the time taken for positioning is greater than a preset duration, and / or, the positioning error is greater than a preset error threshold, then adjust the weights in the fitness function, and return to the step of randomly generating multiple visible satellite combinations based on the multiple visible satellites observed by the receiver within the target time period to obtain a new target visible satellite combination until the time taken for positioning of the new target visible satellite combination is less than or equal to the preset duration, and the positioning error of the new target visible satellite combination is less than or equal to the preset error threshold, or until the number of iterations reaches a preset number of iterations.

[0014] In a second aspect, an embodiment of the present application provides a navigation enhancement satellite selection device based on an optimization algorithm, including: a generation module, configured to randomly generate multiple visible satellite combinations based on multiple visible satellites observed by the receiver within a target time period, each visible satellite combination including N visible satellites, where N is an integer greater than 1; an encoding module, configured to perform binary encoding on the multiple visible satellite combinations respectively to obtain an initial population, where the initial population includes binary encoding sequences corresponding to the multiple visible satellite combinations respectively; a calculation module, configured to calculate the fitness values of the binary encoding sequences in the initial population based on a preset fitness function and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination; a selection module, configured to perform a selection operation on the multiple binary encoding sequences in the initial population based on the roulette wheel selection method and according to the fitness values of the binary encoding sequences, so as to select n target binary encoding sequences from the multiple binary encoding sequences, where n is an integer greater than 1; a crossover and mutation module, configured to perform a crossover operation and a mutation operation on the n target binary encoding sequences to obtain a new population, where the new population includes multiple newly generated binary encoding sequences; An iterative module, configured to update the initial population to the new population if the geometric dilution of precision corresponding to at least one binary encoding sequence in the new population is greater than a preset threshold, and return the step of calculating the fitness value of each binary encoding sequence in the initial population until the geometric dilution of precision corresponding to multiple binary encoding sequences in the new population is less than or equal to the preset threshold, or the number of iterations reaches the preset number of iterations; A determination module, configured to screen out the binary encoding sequence with the highest fitness value from the last obtained new population, and use the satellite combination corresponding to the binary encoding sequence as the target visible satellite combination.

[0015] In a third aspect, an embodiment of the present application provides an electronic device, where the electronic device includes a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, the steps of the navigation enhancement satellite selection method based on an optimization algorithm as described above are implemented.

[0016] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the steps of the navigation enhancement satellite selection method based on an optimization algorithm as described above are implemented.

[0017] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes computer program instructions, and when the computer program instructions are executed by a processor, the steps of the navigation enhancement satellite selection method based on an optimization algorithm as described above are implemented.

[0018] By using the navigation enhancement satellite selection method, device, equipment and medium provided by the embodiments of the present application, the method comprehensively considers factors such as the geometric layout of satellites, signal strength, multipath effect error and atmospheric refraction error. Through the selection and calculation of the optimization algorithm, the optimization algorithm can select the optimal navigation satellite combination in a short time to meet the navigation enhancement service requirements for a certain local area within a specified time interval, meet the real-time requirements, and achieve the maximum effect of navigation enhancement. The method has the advantages of high satellite selection efficiency, high positioning accuracy and strong anti-interference ability, and can be widely applied to fields such as aviation, navigation and transportation to improve the reliability and accuracy of navigation services. Description of the Drawings

[0019] To more clearly illustrate the technical solutions of the embodiments of the present application, the following briefly introduces the drawings in the embodiments of the present application.

[0020] Figure 1 It is a schematic flowchart of a navigation enhancement satellite selection method based on an optimization algorithm provided by an embodiment of the present application.

[0021] Figure 2 It is a schematic flowchart of S101 in the navigation enhancement star selection method based on an optimization algorithm provided by an embodiment of the present application.

[0022] Figure 3 It schematically shows the fitness value calculation index system.

[0023] Figure 4 It is a schematic flowchart of S104 in the navigation enhancement star selection method based on an optimization algorithm provided by an embodiment of the present application.

[0024] Figure 5 It is a schematic structural diagram of a navigation enhancement star selection device provided by an embodiment of the present application.

[0025] Figure 6 It is a schematic hardware structure diagram of an electronic device provided by an embodiment of the present application. Detailed implementation manners

[0026] The features and exemplary embodiments of various aspects of the present application will be described in detail below. To make the objectives, technical solutions and advantages of the present application clearer and more understandable, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without some of these specific details. The following description of the embodiments is only intended to provide a better understanding of the present application by showing examples of the present application.

[0027] It should be noted that, in this document, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprises", "comprising" or any other variation thereof is intended to cover a non-exclusive inclusion, such that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not expressly listed, or elements inherent to such process, method, article or device. Without further limitation, elements defined by the statement "comprising..." do not preclude the existence of additional identical elements in the process, method, article or device comprising the said elements.

[0028] It should be understood that the term "and / or" used herein is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B, which can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " in this document generally represents an "or" relationship between the associated objects before and after.

[0029] Without departing from the spirit or scope of the present application, various modifications and variations can be made in the present application, which are obvious to those skilled in the art. Therefore, the present application is intended to cover the modifications and variations of the present application that fall within the scope of the corresponding claims (the claimed technical solutions) and their equivalents. It should be noted that the embodiments provided in the present application can be combined with each other without conflict.

[0030] Before elaborating on the technical solutions provided in the embodiments of the present application, for the convenience of understanding the embodiments of the present application, the present application first specifically describes the problems existing in the related technologies: In satellite navigation systems, in order to improve the accuracy and reliability of navigation, navigation enhancement technologies have been widely applied. Among them, as one of the key technologies, the navigation enhancement satellite selection method mainly optimizes navigation performance by selecting the optimal satellite combination. Currently, the navigation enhancement satellite selection methods mainly include the satellite selection method based on Geometric Dilution of Precision (GDOP).

[0031] Satellite selection method based on GDOP: This method evaluates the geometric layout quality of the satellite combination by calculating the GDOP values of visible satellites, and then selects the satellite combination with the smallest GDOP value as the optimal solution. The smaller the GDOP value, the better the geometric layout of the satellite combination and the higher the positioning accuracy. However, this method only considers the geometric layout of satellites during the satellite selection process and ignores other important factors such as signal strength, multipath effect error, and atmospheric refraction error, resulting in relatively large limitations. For example, in complex environments such as urban canyons and mountains, due to severe signal occlusion and reflection, it is difficult to select the optimal satellite combination relying solely on the GDOP value.

[0032] In addition, some satellite selection methods based on other algorithms in the current related technologies also have certain limitations. For example, during the process of searching for the optimal solution, multiple iterations are required, resulting in a slow convergence speed and affecting real-time performance. Another example is that due to the limitations of the algorithm's own search strategy, it is easy to fall into a local optimal solution, and thus the selected satellite combination is not the global optimal.

[0033] In view of the above research findings of the inventors, the embodiments of the present application provide a navigation enhancement satellite selection method, device, electronic device, computer-readable storage medium, and computer program product based on an optimization algorithm, which can solve at least one of the above technical problems existing in the related technologies.

[0034] First, the navigation enhancement satellite selection method based on an optimization algorithm provided in the embodiments of the present application will be introduced below.

[0035] Figure 1It is a schematic flowchart of a navigation enhanced satellite selection method based on an optimization algorithm provided by an embodiment of the present application. As Figure 1 shown, the navigation enhanced satellite selection method based on an optimization algorithm provided by an embodiment of the present application may include the following steps S101 to S107.

[0036] S101: Based on multiple visible satellites observed by a receiver within a target time period, randomly generate multiple combinations of visible satellites, where each combination of visible satellites includes N visible satellites, and N is an integer greater than 1.

[0037] Among them, the target time period can also be referred to as a time interval, which can be any preset time period, and the present application does not limit this. The multiple visible satellites observed by the receiver within the target time period are known. In S101, based on the multiple visible satellites observed by the receiver within the target time period, multiple combinations of visible satellites can be randomly generated. Each combination of visible satellites can include N visible satellites, and N is an integer greater than 1. For example, in some embodiments, N visible satellites can be randomly selected from the multiple visible satellites observed by the receiver within the target time period to obtain a combination of visible satellites, and this step can be repeated until multiple combinations of visible satellites are obtained. The size of N can be flexibly adjusted according to actual situations, and the present application does not limit this.

[0038] Figure 2 It is a schematic flowchart of S101 in the navigation enhanced satellite selection method based on an optimization algorithm provided by an embodiment of the present application. As Figure 2 shown, considering the influence of multipath effect and atmospheric delay on positioning accuracy, in some embodiments, S101 may include the following steps S201 to S203.

[0039] S201: Obtain the signal strength and elevation angle of multiple visible satellites.

[0040] Specifically, in some embodiments, for example, basic information such as the ephemeris, almanac, and receiver channel observables of multiple visible satellites can be collected. Ephemeris is a mathematical model that describes the position and motion state of a satellite. Usually, it takes time as a variable and gives the accurate position and speed of the satellite on its orbit. Ephemeris provides orbital parameters of the satellite, allowing users to calculate the position of the satellite at a future moment. Ephemeris can be divided into different types, such as simplified ephemeris and precise ephemeris. Precise ephemeris provides higher accuracy and is suitable for navigation and measurement that require high precision.

[0041] An almanac is a table or database containing orbital information of multiple satellites, usually providing a rough estimate of the positions of satellites over a relatively long period. The almanac is updated less frequently than the ephemeris and can provide basic information about the satellite status, such as the orbital parameters and visibility of the satellite. Users can quickly obtain the approximate positions of individual satellites based on the almanac, thereby guiding the receiver to select appropriate satellites for positioning at a certain time.

[0042] In some embodiments, for example, the ephemeris of visible satellites may include the orbital parameters of visible satellites, and the almanac of visible satellites may include the health status and broadcast ephemeris of visible satellites, etc. The receiver channel observables may include the pseudorange between the receiver and visible satellites, the carrier phase of visible satellites, the signal strength and elevation angle of visible satellites, etc.

[0043] Thus, based on the ephemeris, almanac, and receiver channel observables of multiple visible satellites, the signal strength and elevation angle of multiple visible satellites can be obtained.

[0044] S202: Exclude the visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle from the multiple visible satellites.

[0045] The preset threshold and preset angle can be flexibly adjusted according to the actual situation, and this application does not limit this. For example, in some examples, the preset threshold can be -140 dBm, and the preset angle can be 5°.

[0046] S203: Randomly select N visible satellites from the remaining visible satellites to obtain a visible satellite combination, and repeat this step until multiple visible satellite combinations are obtained.

[0047] After excluding the visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle, N visible satellites can be randomly selected from the remaining visible satellites to obtain a visible satellite combination. N is an integer greater than 1, and the size of N can be flexibly adjusted according to the actual situation, and this application does not limit this. Repeat this step until multiple visible satellite combinations are obtained.

[0048] Thus, excluding the visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle from the multiple visible satellites helps to reduce the influence of multipath effects and atmospheric delays on the positioning accuracy.

[0049] Continue to refer to Figure 1 S102: Perform binary encoding on multiple visible satellite combinations respectively to obtain an initial population, where the initial population includes the binary encoding sequences corresponding to multiple visible satellite combinations respectively.

[0050] In S102, each visible satellite combination can be binary-encoded to obtain a binary-encoded sequence corresponding to each visible satellite combination. The binary-encoded sequences corresponding to multiple visible satellite combinations together form the initial population.

[0051] Taking an example where a visible satellite combination includes 10 visible satellites, for instance, the binary-encoded sequence corresponding to one of the visible satellite combinations can be [0010110011]. Here, each binary digit in the binary-encoded sequence represents whether a visible satellite is selected, with 1 indicating selected and 0 indicating not selected. In the order from the lower bit to the higher bit (i.e., from right to left), the binary-encoded sequence [0010110011] means that the visible satellites numbered 1, 2, 5, 6, and 8 are selected.

[0052] S103: Based on a preset fitness function, and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination, calculate the fitness values of each binary-encoded sequence in the initial population.

[0053] The satellite selection method in the related art usually only considers the geometric layout of satellites during the satellite selection process, ignoring other important factors such as signal strength, multipath effect error, and atmospheric refraction error, resulting in relatively large limitations. For example, in complex environments such as urban canyons and mountainous areas, due to severe signal occlusion and reflection, it is difficult to select the optimal satellite combination only relying on the GDOP value.

[0054] To solve the above technical problems, the fitness function in this application creatively combines multiple factors such as the GDOP value, signal strength, multipath effect error, and atmospheric refraction error, and synthesizes them into a comparable value through a reasonable quantization method. This design enables the algorithm to consider multiple optimization objectives simultaneously during the search process. This multi-dimensional comprehensive evaluation can more comprehensively reflect the advantages and disadvantages of satellite combinations, thereby finding satellite combinations that better meet the actual requirements, improving the accuracy and reliability of navigation, and facilitating the selection of the optimal satellite combination in complex environments such as urban canyons and mountainous areas.

[0055] In S103, based on a preset fitness function, and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination, calculate the fitness values of each binary-encoded sequence in the initial population to evaluate the advantages and disadvantages of each visible satellite combination. The higher the fitness value, the better the visible satellite combination corresponding to the binary-encoded sequence.

[0056] S104: Based on the roulette wheel selection method, perform a selection operation on multiple binary coding sequences in the initial population according to the fitness values of each binary coding sequence, so as to select n target binary coding sequences from the multiple binary coding sequences, where n is an integer greater than 1.

[0057] In some embodiments, the genetic algorithm (GA) is selected as the optimization algorithm to perform navigation enhanced satellite selection. Of course, the optimization algorithm can also be other optimization algorithms other than the genetic algorithm, such as the particle swarm algorithm, etc., and this application does not make any limitation thereto.

[0058] The genetic algorithm (GA) has the characteristics of strong global search ability, good robustness, and easy implementation of parallel computing, and is suitable for dealing with complex optimization problems. The genetic algorithm can include operations such as selection, crossover, and mutation to simulate the natural selection and genetic process.

[0059] In some embodiments, the selection operation can adopt the roulette wheel selection method (Roulette Wheel Selection). The roulette wheel selection method is a selection method based on fitness proportion. In the genetic algorithm, each individual (i.e., binary coding sequence) has a fitness value, which reflects the quality of the individual in the population. The basic idea of the roulette wheel selection method is that the probability of each individual being selected is proportional to the size of its fitness value. In the embodiments of this application, a binary coding sequence is an individual.

[0060] In S104, based on the roulette wheel selection method, a selection operation can be performed on multiple binary coding sequences in the initial population to select n target binary coding sequences from the multiple binary coding sequences. n is a positive integer, and the size of n can be flexibly adjusted according to the actual situation, and this application does not make any limitation thereto. In the selection operation, the higher the fitness value of the binary coding sequence, the higher the probability of being selected, that is, the more likely it is to be selected as the target binary coding sequence.

[0061] S105: Perform a crossover operation and a mutation operation on the n target binary coding sequences to obtain a new population, where the new population includes multiple newly generated binary coding sequences.

[0062] By performing a crossover operation and a mutation operation on the n target binary coding sequences, multiple new binary coding sequences can be generated, that is, multiple newly generated binary coding sequences are obtained. The multiple newly generated binary coding sequences can form a new population.

[0063] S106: If the geometric dilution of precision corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, then use the new population as the initial population, and return to the step of calculating the fitness values of each binary coding sequence in the initial population until the geometric dilution of precision corresponding to multiple binary coding sequences in the new population is less than or equal to the preset threshold, or the number of iterations reaches the preset number of iterations.

[0064] If the geometric dilution of precision (GDOP value) corresponding to at least one binary coding sequence in the new population is greater than the preset threshold, it indicates that the positioning accuracy of the visible satellite combination corresponding to at least one binary coding sequence in the new population is relatively low. At this time, the new population can be used as the initial population, and return to S103, and repeat the above steps S103 to S106 until the geometric dilution of precision corresponding to multiple binary coding sequences in the new population is less than or equal to the preset threshold, or the number of iterations reaches the preset number of iterations. The magnitudes of the preset threshold and the preset number of iterations can be flexibly adjusted according to the actual situation, and the present application does not limit this.

[0065] S107: Select the binary coding sequence with the highest fitness value from the new population obtained last time, and use the satellite combination corresponding to this binary coding sequence as the target visible satellite combination.

[0066] For any binary coding sequence, the higher the fitness value of this binary coding sequence, the better the visible satellite combination corresponding to this binary coding sequence. In S107, the binary coding sequence with the highest fitness value can be selected from the new population obtained last time, and the satellite combination corresponding to this binary coding sequence can be used as the target visible satellite combination.

[0067] The navigation enhancement satellite selection method based on an optimization algorithm provided by the embodiments of the present application comprehensively considers factors such as the geometric layout of satellites, signal strength, multipath effect error, and atmospheric refraction error. Through the selection and calculation of the optimization algorithm, the optimization algorithm can select the optimal navigation satellite combination in a relatively short time to meet the navigation enhancement service requirements for a certain local area within a specified time interval, meet the real-time requirements, and achieve the maximum effect of navigation enhancement. This method has the advantages of high satellite selection efficiency, high positioning accuracy, and strong anti-interference ability, and can be widely applied to fields such as aviation, navigation, and transportation to improve the reliability and accuracy of navigation services.

[0068] In addition, a genetic algorithm or other efficient optimization algorithms are used as the core algorithms. These algorithms have stronger global search capabilities or faster convergence speeds compared to traditional exhaustive methods or heuristic algorithms. Through a reasonable coding scheme, fitness function design, and genetic operations, the optimal or near-optimal visible satellite combination can be searched in a relatively short time.

[0069] For ease of understanding, the following gives examples of the steps in the navigation enhanced satellite selection method based on an optimization algorithm provided by the embodiments of the present application.

[0070] Figure 3 Schematically shows the fitness value calculation index system. As Figure 3 shown, in some embodiments, the fitness value calculation index system can be divided into an objective layer 31, a criterion layer 32, and an index layer 33 from top to bottom. The objective layer 31 is the fitness value of the binary coding sequence of the visible satellite combination, that is, the objective of this calculation. The criterion layer 32 can include multiple criterion parameters for calculating the fitness value of the binary coding sequence. For example, the multiple criterion parameters can include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer 33 can include multiple normalized indexes corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters respectively.

[0071] For example, the geometric layout parameters can include or correspond to normalized indexes such as geometric dilution of precision (GDOP), three-dimensional position dilution of precision (PDOP), horizontal dilution of precision (HDOP), and vertical dilution of precision (VDOP). For example, the signal strength parameters can include or correspond to normalized indexes such as signal strength threshold, signal-to-noise ratio, carrier-to-noise ratio, and signal stability. The multipath effect parameters can include or correspond to normalized indexes such as multipath error estimate value, reflected signal detection, environmental perception, and elevation angle screening. The atmospheric refraction error parameters can include or correspond to normalized indexes such as ionospheric delay, tropospheric delay, and dual-frequency correction.

[0072] Figure 3 The data of these indexes shown first can be standardized to eliminate the influence of dimensions; then through normalization processing, the data is scaled to the interval [0,1], so as to unify the data scale and make the indexes of each layer comparable.

[0073] According to some embodiments of the present application, optionally, S103: Based on a preset fitness function, and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination, calculate the fitness values of each binary coding sequence in the initial population, which can include the following steps: Calculate the fitness values of each binary coding sequence in the initial population according to the following expression: (1) where X represents the fitness value of the binary coding sequence, represents the i-th normalized index value of the j-th criterion parameter, denotes the weight of the \(i\)-th normalized index of the \(j\)-th criterion parameter, denotes the weight of the \(j\)-th criterion parameter, \(p\) represents the number of indicators corresponding to the \(j\)-th criterion parameter, \(n\) represents the number of criterion parameters, and \(i\), \(j\), \(p\), and \(n\) are all positive integers. For example, as Figure 3 shown, for example, the 1st criterion parameter is the geometric layout parameter, and the 1st normalized index of the 1st criterion parameter is the geometric accuracy decay factor.

[0074] Expression (1) uses the weighted average method to transmit the calculation results of the underlying indicators upward through the weight matrix, so as to calculate the fitness value of the binary coding sequence. The weights of each indicator in the fitness function shown in Expression (1) or the weights of each criterion parameter can be flexibly adjusted according to the actual situation, and this application does not make any limitations in this regard. For example, in some embodiments, the subjective assignment method can be adopted, and domain experts can directly set the weights according to experience. Of course, the objective weighting method can also be adopted, such as the entropy weight method, to automatically calculate the weights according to the data volatility.

[0075] In this way, the fitness function comprehensively considers multiple factors such as geometric layout parameters (such as geometric accuracy factors, reflecting the impact of satellite distribution on positioning accuracy), signal strength (ensuring the signal quality of the selected satellites), multipath effects, and atmospheric refraction errors. Quantifying the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters into specific numerical values and assigning different weights to reflect their importance can reduce the impact of multipath effects and atmospheric delays on positioning accuracy and is conducive to improving positioning accuracy and anti-interference ability.

[0076] Figure 4 is a schematic flowchart of S104 in the navigation enhancement star selection method based on an optimization algorithm provided by an embodiment of this application. As Figure 4 shown, according to some embodiments of this application, optionally, S104: Based on the roulette wheel selection method, and perform a selection operation on multiple binary coding sequences in the initial population according to the fitness values of each binary coding sequence, so as to select \(n\) target binary coding sequences from multiple binary coding sequences, which may include the following steps S301 to S303.

[0077] S301: Divide the fitness value of each binary coding sequence by the sum of the fitness values of multiple binary coding sequences in the initial population to obtain the selection probability of each binary coding sequence.

[0078] For example, assume that the initial population contains 4 individuals (i.e., 4 binary coding sequences), and the fitness values of these 4 binary coding sequences are 169, 576, 64, and 361 respectively. For the 1st binary coding sequence with a fitness value of 169, its selection probability is 169 (169 + 576 + 64 + 361) = 0.144. For the binary coding sequence with the second fitness value of 576, its selection probability is 576 (169 + 576 + 64 + 361) = 0.492. And so on, details are not repeated here.

[0079] S302: Calculate the cumulative probability of each binary coding sequence according to the selection probability of each binary coding sequence.

[0080] For example, the cumulative probability of the first binary coding sequence can be equal to the selection probability of the first binary coding sequence, the cumulative probability of the second binary coding sequence can be equal to the sum of the selection probability of the first binary coding sequence and the selection probability of the second binary coding sequence, and the cumulative probability of the m-th binary coding sequence can be equal to the sum of the selection probabilities of the first binary coding sequence to the m-th binary coding sequence, where m is an integer greater than or equal to 2.

[0081] S303: Generate a first random number uniformly distributed in the interval [0, 1], and select a binary coding sequence whose cumulative probability is greater than or equal to the first random number as a target binary coding sequence. Repeat this step n times until n target binary coding sequences are obtained.

[0082] Generate a first random number x1 uniformly distributed in the interval [0, 1]. If Q1 ≥ x1, then select the first binary coding sequence as a target binary coding sequence. If Qm ≥ x1 > Qm - 1, then select the m-th binary coding sequence as a target binary coding sequence. Where Q1 represents the cumulative probability of the first binary coding sequence in the initial population, Qm - 1 represents the cumulative probability of the (m - 1)-th binary coding sequence in the initial population, and Qm represents the cumulative probability of the m-th binary coding sequence in the initial population. Repeat this step n times to generate multiple different first random numbers and obtain n target binary coding sequences.

[0083] According to some embodiments of the present application, optionally, S105: Perform crossover operation and mutation operation on n target binary coding sequences to obtain a new population, which may include the following Step 1 and Step 2.

[0084] Step 1: For any two of the n target binary coding sequences, perform single-point crossover operation or multi-point crossover operation to obtain two newly generated first binary coding sequences. Replace the two target binary coding sequences that need to perform crossover operation and repeat this step until the preset number of first binary coding sequences is obtained.

[0085] Specifically, any two target binary coding sequences can be randomly selected from n target binary coding sequences. For these two target binary coding sequences, single-point crossover operation or multi-point crossover operation can be performed to obtain two newly generated binary coding sequences. For the sake of convenience of description, the binary coding sequences newly generated by single-point crossover operation or multi-point crossover operation are called the first binary coding sequences. Through one single-point crossover operation or multi-point crossover operation, two newly generated first binary coding sequences can be obtained.

[0086] In some specific embodiments, optionally, the single-point crossover operation may include randomly selecting the x-th gene position in two target binary coding sequences as a crossover point, and exchanging the gene sequences after or before the crossover point in the two target binary coding sequences to obtain two newly generated first binary coding sequences, where x is a positive integer.

[0087] For example, for any two target binary coding sequences S1 and S2, in the single-point crossover operation, the x-th gene position in the two target binary coding sequences is randomly selected as a crossover point (such as the 3rd gene position), and then the gene sequences after the crossover point (such as the 3rd gene position) in S1 and S2 are exchanged to generate two first binary coding sequences.

[0088] In some specific embodiments, optionally, the multi-point crossover operation may include randomly selecting multiple gene positions in two target binary coding sequences as multiple crossover points, and exchanging the values of the gene positions at the multiple crossover points in the two target binary coding sequences to obtain two newly generated first binary coding sequences.

[0089] For example, for any two target binary coding sequences S1 and S2, in the multi-point crossover operation, for example, the 2nd gene position and the 4th gene position in the two target binary coding sequences are randomly selected as two crossover points, and then the gene sequences at the two crossover points (such as the 2nd gene position and the 4th gene position) in S1 and S2 are exchanged to generate two first binary coding sequences.

[0090] Step 2: For each gene position in any one of the first binary coding sequences, generate a second random number corresponding to this gene position within the interval [0, 1]. If the second random number corresponding to this gene position is less than the preset mutation probability, then invert the value of this gene position to obtain a newly generated second binary coding sequence.

[0091] Specifically, in the mutation operation, first, a mutation probability is set. The size of the mutation probability can be flexibly adjusted according to the actual situation, and this application does not limit it. For example, in some examples, the mutation probability can be 0.05. Then, each gene bit in each first binary coding sequence is traversed, and a second random number corresponding to this gene bit is generated within the range of [0, 1]. If the second random number corresponding to this gene bit is less than the preset mutation probability, the value of this gene bit is inverted, that is, 0 becomes 1 and 1 becomes 0, to obtain a newly generated binary coding sequence. For the convenience of description, the binary coding sequence generated by the mutation operation is called the second binary coding sequence. In this way, the gene sequence of the first binary coding sequence can be changed to a certain extent, thereby introducing new genetic information. Among them, the new population can include multiple newly generated second binary coding sequences.

[0092] According to some embodiments of the present application, optionally, after S107: obtaining the target visible satellite combination, the satellite selection method for navigation enhancement based on the optimization algorithm may further include the following step three and step four.

[0093] Step three: Position the receiver based on the target visible satellite combination, and record the time taken for positioning and the positioning error.

[0094] For example, in some embodiments, a simulation software can be used to simulate the operating environment of the low-earth orbit satellite navigation system, apply the target visible satellite combination to the simulation, and observe performance indicators such as its positioning error and the time taken for positioning. Of course, when conditions permit, field experiments can also be carried out to verify performance indicators such as the positioning error and the time taken for positioning of the target visible satellite combination.

[0095] Step four: If the time taken for positioning is greater than the preset duration, and / or the positioning error is greater than the preset error threshold, then adjust the weights in the fitness function, and return to S101: the step of randomly generating multiple visible satellite combinations based on multiple visible satellites observed by the receiver during the target time period, to obtain a new target visible satellite combination, until the time taken for positioning of the new target visible satellite combination is less than or equal to the preset duration, and the positioning error of the new target visible satellite combination is less than or equal to the preset error threshold, or until the number of iterations reaches the preset number of iterations.

[0096] The sizes of the preset duration and the preset error threshold can be flexibly adjusted according to the actual situation, and this application does not limit them.

[0097] In this way, when the time taken for positioning is greater than the preset duration and / or the positioning error is greater than the preset error threshold, adjust the weights in the fitness function according to the simulation or experimental results, and re-obtain a new target visible satellite combination, which can further improve the positioning accuracy and shorten the actual time taken for positioning.

[0098] According to some embodiments of the present application, optionally, the navigation enhanced satellite selection method based on an optimization algorithm provided by the embodiments of the present application can be applied to, for example, autonomous driving satellite navigation, portable terminal device satellite navigation, aviation satellite navigation, or marine satellite navigation, etc.

[0099] Taking autonomous driving satellite navigation as an example, in the navigation of autonomous driving vehicles, extremely high requirements are placed on the accuracy, stability, and reliability of navigation signals. By using the navigation enhanced satellite selection method based on an optimization algorithm provided by the embodiments of the present application, various factors such as the satellite geometric layout GDOP value, signal strength, multipath effect error, and atmospheric refraction error are comprehensively considered, and the optimal navigation satellite combination can be selected to ensure the accuracy and stability of navigation signals.

[0100] In addition, autonomous driving vehicles need to respond quickly and make accurate decisions, which places higher requirements on the real-time performance of the navigation system. The navigation enhanced satellite selection method based on an optimization algorithm provided by the embodiments of the present application uses efficient optimization algorithms (such as genetic algorithms, particle swarm algorithms, etc.) to quickly solve the problem of satellite selection for navigation satellites, realizing the real-time processing and transmission of navigation signals.

[0101] Based on the same technical concept as the navigation enhanced satellite selection method based on an optimization algorithm provided in the above embodiments, correspondingly, the present application also provides a specific implementation manner of a navigation enhanced satellite selection device based on an optimization algorithm. Please refer to the following embodiments.

[0102] Figure 5 FIG. is a schematic structural diagram of a navigation enhanced satellite selection device based on an optimization algorithm provided by an embodiment of the present application. As Figure 5 shown, the navigation enhanced satellite selection device 40 provided by the embodiments of the present application may include the following modules: A generation module 401, configured to randomly generate a plurality of visible satellite combinations based on a plurality of visible satellites observed by a receiver within a target time period, where each visible satellite combination includes N visible satellites, and N is an integer greater than 1; An encoding module 402, configured to perform binary encoding on the plurality of visible satellite combinations respectively to obtain an initial population, where the initial population includes binary encoding sequences corresponding to the plurality of visible satellite combinations respectively; A calculation module 403, configured to calculate the fitness values of the respective binary encoding sequences in the initial population based on a preset fitness function and according to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters of each visible satellite combination; A selection module 404, configured to perform a selection operation on a plurality of binary coding sequences in an initial population based on the roulette selection method and according to the fitness values of the respective binary coding sequences, so as to select n target binary coding sequences from the plurality of binary coding sequences, where n is an integer greater than 1; A crossover and mutation module 405, configured to perform a crossover operation and a mutation operation on the n target binary coding sequences to obtain a new population, where the new population includes a plurality of newly generated binary coding sequences; An iteration module 406, configured to, if the geometric dilution of precision corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, update the initial population to the new population, and return to the step of calculating the fitness values of the respective binary coding sequences in the initial population until the geometric dilutions of precision corresponding to the plurality of binary coding sequences in the new population are all less than or equal to the preset threshold, or the number of iterations reaches a preset number of iterations; A determination module 407, configured to screen out the binary coding sequence with the highest fitness value from the finally obtained new population, and use the satellite combination corresponding to the binary coding sequence as the target visible satellite combination.

[0103] The navigation enhancement satellite selection device provided by the embodiment of the present application comprehensively considers factors such as the geometric layout of satellites, signal strength, multipath effect error, and atmospheric refraction error. Through the selection and calculation of an optimization algorithm, the optimization algorithm can select the optimal navigation satellite combination in a short time to meet the navigation enhancement service requirements for a certain local area within a specified time interval, meet the real-time requirements, and achieve the maximum effect of navigation enhancement. The device has the advantages of high satellite selection efficiency, high positioning accuracy, and strong anti-interference ability, and can be widely applied to fields such as aviation, navigation, and transportation to improve the reliability and accuracy of navigation services.

[0104] In addition, a genetic algorithm or other efficient optimization algorithm is used as the core algorithm. These algorithms have stronger global search ability or faster convergence speed compared with traditional exhaustive methods or heuristic algorithms. Through a reasonable coding scheme, fitness function design, and genetic operations, the optimal or near-optimal visible satellite combination can be searched in a short time.

[0105] According to some embodiments of the present application, optionally, the generation module 401 may specifically be configured to obtain the signal strength and elevation angle of a plurality of visible satellites; exclude the visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle from the plurality of visible satellites; randomly select N visible satellites from the remaining visible satellites to obtain a visible satellite combination, and repeat this step until a plurality of visible satellite combinations are obtained.

[0106] According to some embodiments of the present application, optionally, the selection module 404 may specifically be configured to divide the fitness value of each binary coding sequence by the sum of the fitness values of multiple binary coding sequences in the initial population to obtain the selection probability of each binary coding sequence; calculate the cumulative probability of each binary coding sequence according to the selection probability of each binary coding sequence; generate a first random number with a uniform distribution in the interval [0, 1], and select a binary coding sequence whose cumulative probability is greater than or equal to the first random number as a target binary coding sequence, and repeat this step n times until n target binary coding sequences are obtained.

[0107] According to some embodiments of the present application, optionally, the crossover and mutation module 405 may specifically be configured to perform a single-point crossover operation or a multi-point crossover operation on any two of the n target binary coding sequences to obtain two newly generated first binary coding sequences, replace the two target binary coding sequences that need to be crossover-operated, and repeat this step until a preset number of first binary coding sequences are obtained; for each gene position in any one of the first binary coding sequences, generate a second random number corresponding to the gene position in the interval [0, 1], and if the second random number corresponding to the gene position is less than a preset mutation probability, then invert the value of the gene position to obtain a newly generated second binary coding sequence; wherein, the new population includes multiple newly generated second binary coding sequences.

[0108] According to some embodiments of the present application, optionally, the single-point crossover operation includes randomly selecting the xth gene position in two target binary coding sequences as a crossover point, and swapping the gene sequences after or before the crossover point in the two target binary coding sequences to obtain two newly generated first binary coding sequences, where x is a positive integer. The multi-point crossover operation includes randomly selecting multiple gene positions in two target binary coding sequences as multiple crossover points, and swapping the values of the gene positions at the multiple crossover points in the two target binary coding sequences to obtain two newly generated first binary coding sequences.

[0109] According to some embodiments of the present application, optionally, the fitness value calculation index system is divided into a target layer, a criterion layer, and an index layer from top to bottom. The target layer is the fitness value of the binary coding sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters for calculating the fitness value of the binary coding sequence. The multiple criterion parameters include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer includes multiple normalized indexes corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters respectively. The calculation module 403 may specifically be configured to calculate the fitness value of each binary coding sequence in the initial population according to the following expression:

[0110] Among them, X represents the fitness value of the binary coding sequence, represents the i-th normalized index value of the j-th criterion parameter, represents the weight of the i-th normalized index of the j-th criterion parameter, represents the weight of the j-th criterion parameter, p represents the number of indexes corresponding to the j-th criterion parameter, n represents the number of criterion parameters, and i, j, p, and n are all positive integers.

[0111] According to some embodiments of the present application, optionally, the navigation enhancement satellite selection device 40 based on the optimization algorithm provided by the embodiments of the present application may further include an adjustment module, which is used to position the receiver based on the target visible satellite combination and record the time spent on positioning and the positioning error; if the time spent on positioning is greater than the preset duration, and / or the positioning error is greater than the preset error threshold, then adjust the weights in the fitness function, and return to the step of randomly generating multiple visible satellite combinations based on multiple visible satellites observed by the receiver within the target time period to obtain a new target visible satellite combination until the time spent on positioning of the new target visible satellite combination is less than or equal to the preset duration, and the positioning error of the new target visible satellite combination is less than or equal to the preset error threshold, or until the number of iterations reaches the preset number of iterations.

[0112] Figure 5 Each module / unit in the shown device has the functions of implementing each step in the navigation enhancement satellite selection method based on the optimization algorithm provided by the above method embodiments, and can achieve its corresponding technical effects. For the sake of brief description, it will not be repeated here.

[0113] The electronic device in the embodiments of the present application may be a user terminal device, may be a server, may also be other computing devices, or may be a cloud server. Figure 6 It is a schematic hardware structure diagram of the electronic device according to the embodiments of the present application. The electronic device may include a processor 501 and a memory 502 storing computer program instructions. When the processor 501 executes the computer program instructions, it realizes the process or function of the method in any of the above embodiments.

[0114] Specifically, the processor 501 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be one or more integrated circuits configured to implement the embodiments of the present application. The memory 502 may include a mass storage for data or instructions. For example, the memory 502 may be at least one of the following: a hard disk drive (HDD), a read-only memory (ROM), a random access memory (RAM), a floppy disk drive, a flash memory, an optical disc, a magneto-optical disc, a magnetic tape, a universal serial bus (USB) drive, or other physical / tangible memory storage devices. Additionally, the memory 502 may include removable or non-removable (or fixed) media. Further, the memory 502 may be internal or external to the integrated gateway disaster recovery device. The memory 502 may be a non-volatile solid state memory. In other words, generally, the memory 502 includes a tangible (non-transitory) computer-readable storage medium (such as a memory device) encoded with computer-executable instructions, and when the software is executed (such as by one or more processors), it can perform the operations described in the methods of the embodiments of the present application. The processor 501 realizes the processes or functions of any one of the methods in the above embodiments by reading and executing the computer program instructions stored in the memory 502.

[0115] In one example, Figure 6 The illustrated electronic device may further include a communication interface 503 and a bus 510. Among them, the processor 501, the memory 502, and the communication interface 503 are connected through the bus 510 to complete communication with each other. The communication interface 503 is mainly used to implement communication between the modules, devices, units, and / or devices in the embodiments of the present application. The bus 510 includes hardware, software, or both, and can couple the components of the online data flow charging device to each other. For example, the bus may include at least one of the following: an accelerated graphics port (AGP) or other graphics bus, an enhanced industry standard architecture (EISA) bus, a front-side bus (FSB), a hypertransport (HT) interconnect, an industry standard architecture (ISA) bus, an infinite bandwidth interconnect, a low pin count (LPC) bus, a memory bus, a microchannel architecture (MCA) bus, a peripheral component interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a serial advanced technology attachment (SATA) bus, a video electronics standards association local (VLB) bus, or other suitable buses. The bus 510 may include one or more buses. Although the embodiments of the present application describe or illustrate specific buses, the embodiments of the present application may consider any suitable bus or interconnect method.

[0116] Combined with the methods in the above embodiments, an embodiment of the present application further provides a computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the processes or functions of any one of the methods in the above embodiments are implemented.

[0117] In addition, an embodiment of the present application further provides a computer program product, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the processes or functions of any one of the methods in the above embodiments are implemented.

[0118] The flowcharts and / or block diagrams of the methods, devices, systems, and computer program products of the embodiments of the present application are described above by way of example, and the relevant aspects are described. It should be understood that each block in the flowchart and / or block diagram, or a combination thereof, can be implemented by computer program instructions, or by dedicated hardware that performs a specified function or action, or by a combination of dedicated hardware and computer instructions. For example, these computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to form a machine, so that these instructions executed by such a processor enable the implementation of the specified functions / actions in each block or a combination thereof in the flowchart and / or block diagram. Such a processor can be a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit.

[0119] The functional blocks shown in the block diagrams of the embodiments of the present application can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application-specific integrated circuit (ASIC), appropriate firmware, a plug-in, a functional card, etc.; when implemented in software, it is a program or a code segment used to perform the required tasks. The program or code segment can be stored in a memory, or transmitted via a data signal carried in a carrier wave on a transmission medium or a communication link. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.

[0120] It should be noted that the present application is not limited to the specific configurations and processes described above or shown in the figures. The above are only specific implementation manners of the present application. Those skilled in the art can clearly understand that for the convenience and conciseness of description, the specific working processes of the described systems, devices, modules, or units can refer to the corresponding processes in the method embodiments and will not be repeated here. It should be understood that the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can think of various equivalent modifications or substitutions, and these modifications or substitutions should all be covered within the protection scope of the present application.

Claims

1. A navigation enhancement satellite selection method based on an optimization algorithm, characterized in that: include: Based on multiple visible satellites observed by the receiver within a target time period, multiple visible satellite combinations are randomly generated, each visible satellite combination includes N visible satellites, where N is an integer greater than 1; Binary encoding is performed on the plurality of visible satellite combinations respectively to obtain an initial population, wherein the initial population includes binary encoding sequences corresponding to the plurality of visible satellite combinations respectively; Based on a preset fitness function and according to geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters of each visible satellite combination, the fitness value of each binary code sequence in the initial population is calculated; Based on the roulette wheel selection method, a selection operation is performed on multiple binary code sequences in the initial population according to the fitness value of each binary code sequence, so as to select n target binary code sequences from the multiple binary code sequences, where n is an integer greater than 1; Performing crossover and mutation operations on n target binary code sequences to obtain a new population, wherein the new population includes a plurality of newly generated binary code sequences; If the geometric precision factor corresponding to at least one binary code sequence in the new population is greater than the preset threshold, the new population is used as the initial population, and the step of calculating the fitness value of each binary code sequence in the initial population is returned until the geometric precision factors corresponding to multiple binary code sequences in the new population are all less than or equal to the preset threshold, or the number of iterations reaches the preset number of iterations; The binary code sequence with the highest fitness value is selected from the new population obtained last time, and the satellite combination corresponding to the binary code sequence is used as the target visible satellite combination.

2. The method according to claim 1, characterized in that Based on multiple visible satellites observed by the receiver during the target time period, multiple visible satellite combinations are randomly generated, including: Get the signal strength and elevation angle of multiple visible satellites; Eliminate visible satellites whose signal strength is less than a preset threshold and / or whose elevation angle is less than a preset angle from multiple visible satellites; Randomly select N visible satellites from the retained visible satellites to obtain a visible satellite combination, and repeat this step until multiple visible satellite combinations are obtained.

3. The method according to claim 1, characterized in that Based on the roulette wheel selection method, a selection operation is performed on multiple binary coding sequences in the initial population according to the fitness value of each binary coding sequence, so as to select n target binary coding sequences from the multiple binary coding sequences, including: Dividing the fitness value of each binary code sequence by the sum of the fitness values ​​of multiple binary code sequences in the initial population, respectively, to obtain the selection probability of each binary code sequence; Calculate the cumulative probability of each binary code sequence according to the selection probability of each binary code sequence; Generate a uniformly distributed first random number in the interval [0,1], select a binary code sequence with a cumulative probability greater than or equal to the first random number as a target binary code sequence, and repeat this step n times until n target binary code sequences are obtained.

4. The method according to claim 1, characterized in that Perform crossover and mutation operations on n target binary code sequences to obtain a new population, including: For any two target binary code sequences among the n target binary code sequences, a single-point crossover operation or a multi-point crossover operation is performed to obtain two newly generated first binary code sequences, and the two target binary code sequences that need the crossover operation are replaced and this step is repeated until a preset number of first binary code sequences are obtained; For each gene bit in any first binary code sequence, generate a second random number corresponding to the gene bit in the interval [0,1]. If the second random number corresponding to the gene bit is less than the preset mutation probability, invert the value of the gene bit to obtain a newly generated second binary code sequence; The new population includes a plurality of newly generated second binary code sequences.

5. The method according to claim 4, characterized in that The single-point crossover operation includes randomly selecting the x-th gene position in the two target binary coding sequences as a crossover point, exchanging the gene sequences located after the crossover point or before the crossover point in the two target binary coding sequences, and obtaining two newly generated first binary coding sequences, where x is a positive integer; The multi-point crossover operation includes randomly selecting multiple gene bits in two target binary coding sequences as multiple crossover points, exchanging the values ​​of the gene bits of the multiple crossover points in the two target binary coding sequences, and obtaining two newly generated first binary coding sequences.

6. The method according to claim 1, characterized in that The fitness value calculation index system is divided into a target layer, a criterion layer and an index layer from top to bottom. The target layer is the fitness value of the binary code sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters for calculating the fitness value of the binary code sequence. The multiple criterion parameters include geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters. The index layer includes multiple normalized indicators corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters. Based on the preset fitness function and according to the geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters of each visible satellite combination, the fitness value of each binary code sequence in the initial population is calculated, including: According to the following expression, the fitness value of each binary coding sequence in the initial population is calculated: Where X represents the fitness value of the binary coding sequence, represents the i-th normalized index value of the j-th criterion parameter, represents the weight of the i-th normalized indicator of the j-th criterion parameter, represents the weight of the j-th criterion parameter, p represents the number of indicators corresponding to the j-th criterion parameter, n represents the number of criterion parameters, and i, j, p and n are all positive integers.

7. The method according to claim 6, characterized in that After obtaining the target visible satellite combination, the method further includes: Position the receiver based on the target visible satellite combination, and record the time and positioning error taken for positioning; If the time spent on positioning is greater than the preset duration, and / or the positioning error is greater than the preset error threshold, the weight in the fitness function is adjusted, and the step of randomly generating multiple visible satellite combinations based on the multiple visible satellites observed by the receiver within the target time period is returned to obtain a new target visible satellite combination, until the time spent on positioning the new target visible satellite combination is less than or equal to the preset duration, and the positioning error of the new target visible satellite combination is less than or equal to the preset error threshold, or until the number of iterations reaches the preset number of iterations.

8. A navigation enhancement star selection device based on an optimization algorithm, characterized in that: include: A generating module, used for randomly generating a plurality of visible satellite combinations based on a plurality of visible satellites observed by the receiver within a target time period, each visible satellite combination including N visible satellites, where N is an integer greater than 1; An encoding module is used to perform binary encoding on the multiple visible satellite combinations respectively to obtain an initial population, wherein the initial population includes binary encoding sequences corresponding to the multiple visible satellite combinations respectively; A calculation module, used to calculate the fitness value of each binary code sequence in the initial population based on a preset fitness function and according to the geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters of each visible satellite combination; A selection module is used for performing a selection operation on multiple binary code sequences in an initial population based on a roulette wheel selection method and according to the fitness value of each binary code sequence, so as to select n target binary code sequences from the multiple binary code sequences, where n is an integer greater than 1; A crossover mutation module, used for performing a crossover operation and a mutation operation on the n target binary code sequences to obtain a new population, wherein the new population includes a plurality of newly generated binary code sequences; An iteration module, configured to update the initial population to the new population if the geometric precision factor corresponding to at least one binary code sequence in the new population is greater than a preset threshold, and return to the step of calculating the fitness value of each binary code sequence in the initial population, until the geometric precision factors corresponding to multiple binary code sequences in the new population are all less than or equal to the preset threshold, or the number of iterations reaches a preset number of iterations; The determination module is used to select the binary code sequence with the highest fitness value from the new population obtained last time, and use the satellite combination corresponding to the binary code sequence as the target visible satellite combination.

9. An electronic device, characterized in that: The electronic device comprises: a processor and a memory storing computer program instructions; when the electronic device executes the computer program instructions, the method according to any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions, and when the computer program instructions are executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Star choosing method for satellite navigation system

    CN101866010A

  • Method for realizing realtime synchronization with Beidou system to generate pseudo satellite signals

    CN104749588A

  • Integrated navigation system positioning satellite selection method

    CN108196273A

  • Offshore multi-GNSS particle swarm satellite selection method and offshore multi-GNSS particle swarm satellite selection system

    CN112415545A

  • Beidou navigation satellite selection method under tabu search artificial bee colony algorithm

    CN112578414A

Cited By

  • RTK high-precision positioning method based on improved adaptive genetic algorithm satellite selection strategy

    CN122362450A