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

By optimizing the algorithm to comprehensively consider multiple factors of satellite combination, the problem of inaccurate satellite selection in complex environments of existing navigation enhancement methods has been solved, achieving efficient and accurate navigation enhancement effects, which are applicable to aviation, maritime, transportation and other fields.

CN120065263BActive Publication Date: 2026-04-14BEIJING TIANGONG KEYI SPACE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING TIANGONG KEYI SPACE TECH CO LTD
Filing Date
2025-04-30
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing navigation enhancement methods for satellite selection are difficult to comprehensively consider signal strength, multipath effect error, and atmospheric refraction error in complex environments, resulting in inaccurate satellite selection, slow convergence speed, and easy getting trapped in local optima.

Method used

A navigation enhancement satellite selection method based on optimization algorithms is adopted. By randomly generating satellite combinations and encoding them in binary, and combining parameters such as geometric layout, signal strength, multipath effect and atmospheric refraction error, a genetic algorithm is used to select and cross over mutation to optimize the satellite selection process and select the optimal satellite combination.

Benefits of technology

Selecting the optimal combination of navigation satellites in a short time improves positioning accuracy and anti-interference capabilities, meets real-time requirements, and is applicable to fields such as aviation, navigation, and transportation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120065263B_ABST
    Figure CN120065263B_ABST
Patent Text Reader

Abstract

The application discloses a navigation enhanced star selection method and device based on an optimization algorithm, equipment and a medium. The method comprises the following steps: based on a plurality of visible satellites observed by a receiver in a target time period, a plurality of visible satellite combinations are randomly generated, and the combinations are encoded to obtain an initial population; based on a fitness function, the fitness values of the binary code sequences in the population are calculated according to geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters; based on a roulette wheel selection method, n target binary code sequences are selected for cross and mutation operations to obtain a new population; if the geometric dilution of precision of the binary code sequences in the new population is greater than a preset threshold value, the new population is taken as the initial population, and the step of calculating the fitness values is returned until the iteration is completed; and the satellite combination with the highest fitness value in the final new population is taken as a target visible satellite combination. The application is beneficial to improving the star selection efficiency, positioning accuracy and anti-interference capability.
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 in particular to a navigation enhancement satellite selection method, apparatus, device, and medium based on an optimization algorithm. Background Technology

[0002] In satellite navigation systems, navigation enhancement technologies are widely used to improve navigation accuracy and reliability. Among these, navigation enhancement satellite selection methods, as a key technology, primarily optimize navigation performance by selecting the optimal combination of satellites. Currently, navigation enhancement satellite selection methods mainly include those based on the Geometric Dilution Precision (GDOP).

[0003] The GDOP-based satellite selection method evaluates the geometric layout of a satellite constellation by calculating the GDOP values ​​of visible satellites, and then selects the satellite constellation with the lowest GDOP value as the optimal solution. A lower GDOP value indicates a better geometric layout and higher positioning accuracy. However, this method only considers the satellite's geometric layout during the selection process, neglecting other important factors such as signal strength, multipath error, and atmospheric refraction error, leading to significant limitations. For example, in complex environments such as urban canyons and mountainous areas, severe signal obstruction and reflection make it difficult to select the optimal satellite constellation based solely on GDOP values.

[0004] Furthermore, some satellite selection methods based on other algorithms in current technologies also have certain limitations. For example, the search for the optimal solution requires multiple iterations, resulting in slow convergence and affecting real-time performance. Another example is that, due to limitations in the algorithm's own search strategy, it is prone to getting trapped in local optima, leading to the selected satellite combination not being globally optimal. Summary of the Invention

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

[0006] In a first aspect, embodiments of this application provide a navigation enhancement star selection method based on an optimization algorithm, including:

[0007] Based on the multiple visible satellites observed by the receiver within the target time period, multiple combinations of visible satellites are randomly generated. Each combination of visible satellites includes N visible satellites, where N is an integer greater than 1.

[0008] The initial population is obtained by binary encoding the multiple visible satellite combinations, which includes the binary encoding sequences corresponding to each of the multiple visible satellite combinations.

[0009] 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, the fitness value of each binary coding sequence in the initial population is calculated.

[0010] Based on the roulette wheel selection method, and according to the fitness value of each binary coding sequence, a selection operation is performed on multiple binary coding sequences in the initial population to select n target binary coding sequences from multiple binary coding sequences, where n is an integer greater than 1;

[0011] Crossover and mutation operations are performed on n target binary encoded sequences to obtain a new population, which includes multiple newly generated binary encoded sequences;

[0012] If the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than the preset threshold, then the new population is used as the initial population, and the step of calculating the fitness value of each binary coding sequence in the initial population is returned until the geometric precision factor 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.

[0013] The binary encoding sequence with the highest fitness value is selected from the last newly obtained population, and the satellite combination corresponding to the binary encoding sequence is taken as the target visible satellite combination.

[0014] According to some embodiments of this application, optionally, based on multiple visible satellites observed by the receiver within a target time period, multiple visible satellite combinations are randomly generated, including: acquiring the signal strength and elevation angle of multiple visible satellites; removing visible satellites from the multiple visible satellites whose signal strength is less than a preset threshold and / or whose elevation angle is less than a preset angle; randomly selecting N visible satellites from the retained visible satellites to obtain a visible satellite combination, and repeating this step until multiple visible satellite combinations are obtained.

[0015] According to some embodiments of this application, optionally, a roulette wheel selection method is used, and a selection operation is performed on multiple binary coding sequences in the initial population based on the fitness values ​​of each binary coding sequence to select n target binary coding sequences from the multiple binary coding sequences. This includes: dividing the fitness value of each binary coding sequence by the sum of the fitness values ​​of the 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 based on the selection probability of each binary coding sequence; generating a uniformly distributed first random number in the interval [0,1], selecting a binary coding sequence whose cumulative probability is 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.

[0016] According to some embodiments of this application, optionally, crossover and mutation operations are performed on n target binary coding sequences to obtain a new population, including: for any two target binary coding sequences among the n target binary coding sequences, a single-point crossover operation or a multi-point crossover operation is performed to obtain two newly generated first binary coding sequences; the two target binary coding sequences to be crossovered are replaced and this step is repeated until a preset number of first binary coding sequences are obtained; for each gene position in any first binary coding sequence, a second random number corresponding to the gene position is generated in the interval [0,1]; if the second random number corresponding to the gene position is less than a preset mutation probability, the value of the gene position is inverted to obtain a newly generated second binary coding sequence; wherein, the new population includes multiple newly generated second binary coding sequences.

[0017] According to some embodiments of this application, optionally, the single-point crossover operation includes randomly selecting the x-th gene position in two target binary coding sequences as a crossover point, exchanging the gene sequences in the two target binary coding sequences that are located after or before the crossover point, to obtain two newly generated first binary coding sequences, where x is a positive integer;

[0018] The multi-point crossover operation involves randomly selecting multiple gene positions from two target binary coding sequences as multiple crossover points, exchanging the values ​​of the gene positions at the multiple crossover points in the two target binary coding sequences, and obtaining two newly generated first binary coding sequences.

[0019] According to some embodiments of this 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 coded sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters for calculating the fitness value of the binary coded 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 indices corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters and atmospheric refraction error parameters respectively.

[0020] 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, the fitness value of each binary coded sequence in the initial population is calculated, including:

[0021] Calculate the fitness value of each binary encoded sequence in the initial population based on the following expression:

[0022]

[0023] Where X represents the fitness value of the binary encoded sequence, This represents the i-th normalized index value of the j-th criterion parameter. This represents the weight of the i-th normalized index for the j-th criterion parameter. i 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.

[0024] According to some embodiments of this 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 positioning time and positioning error; if the positioning time is greater than a preset duration, and / or the positioning error is greater than a preset error threshold, then adjusting the weights in the fitness function and returning 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 positioning time 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.

[0025] Secondly, embodiments of this application provide a navigation enhancement star selection device based on an optimized algorithm, comprising:

[0026] The generation module is used to randomly generate multiple visible satellite combinations based on multiple visible satellites observed by the receiver within the target time period. Each visible satellite combination includes N visible satellites, where N is an integer greater than 1.

[0027] The encoding module is used to perform binary encoding on multiple visible satellite combinations to obtain an initial population, wherein the initial population includes the binary encoding sequences corresponding to each of the multiple visible satellite combinations;

[0028] The calculation module is used to calculate the fitness value of each binary coded 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.

[0029] The selection module is used to select n target binary codes from multiple binary codes in the initial population based on the roulette wheel selection method and the fitness value of each binary code sequence.

[0030] The crossover and mutation module is used to perform crossover and mutation operations on n target binary encoded sequences to obtain a new population, which includes multiple newly generated binary encoded sequences.

[0031] The iteration module is used to update the initial population to a new population if the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, and return the step of calculating the fitness value of each binary coding sequence in the initial population, until the geometric precision factor 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.

[0032] The determination module is used to select the binary encoded sequence with the highest fitness value from the last obtained new population, and to use the satellite combination corresponding to the binary encoded sequence as the target visible satellite combination.

[0033] Thirdly, embodiments of this application provide an electronic device, which includes a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, it implements the steps of the navigation enhancement star selection method based on the optimization algorithm as described above.

[0034] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the steps of the navigation enhancement star selection method based on the optimization algorithm as described above.

[0035] Fifthly, embodiments of this application provide a computer program product, which includes computer program instructions that, when executed by a processor, implement the steps of the navigation enhancement star selection method based on the optimization algorithm as described above.

[0036] The navigation enhancement satellite selection method, apparatus, device, and medium based on optimization algorithms provided in the embodiments of this application comprehensively consider factors such as satellite geometry, signal strength, multipath effect error, and atmospheric refraction error. Through the selection and calculation of optimization algorithms, the optimal combination of navigation satellites can be selected in a short time to meet the navigation enhancement service requirements of a local area within a specified time interval, satisfying real-time requirements and maximizing the navigation enhancement effect. This method has advantages such as high satellite selection efficiency, high positioning accuracy, and strong anti-interference capability, and can be widely used in aviation, maritime, transportation, and other fields to improve the reliability and accuracy of navigation services. Attached Figure Description

[0037] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings of the embodiments of this application will be briefly described below.

[0038] Figure 1 This is a flowchart illustrating a navigation enhancement star selection method based on an optimization algorithm provided in an embodiment of this application.

[0039] Figure 2 This is a schematic flowchart of step S101 in the navigation enhancement star selection method based on optimization algorithm provided in the embodiments of this application.

[0040] Figure 3 The diagram illustrates the fitness value calculation index system.

[0041] Figure 4 This is a flowchart illustrating step S104 of the navigation enhancement star selection method based on optimization algorithms provided in the embodiments of this application.

[0042] Figure 5 This is a schematic diagram of a navigation enhancement star selection device based on an optimization algorithm provided in an embodiment of this application.

[0043] Figure 6 This is a schematic diagram of the hardware structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0044] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the 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 this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0045] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0046] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0047] Various modifications and variations can be made to this application without departing from its spirit or scope, which will be apparent to those skilled in the art. Therefore, this application is intended to cover modifications and variations falling within the scope of the corresponding claims (the claimed technical solutions) and their equivalents. It should be noted that the implementation methods provided in the embodiments of this application can be combined with each other without contradiction.

[0048] Before describing the technical solutions provided in the embodiments of this application, in order to facilitate understanding of the embodiments of this application, this application first specifically explains the problems existing in the related technologies:

[0049] In satellite navigation systems, navigation enhancement technologies are widely used to improve navigation accuracy and reliability. Among these, navigation enhancement satellite selection methods, as a key technology, primarily optimize navigation performance by selecting the optimal combination of satellites. Currently, navigation enhancement satellite selection methods mainly include those based on the Geometric Dilution Precision (GDOP).

[0050] The GDOP-based satellite selection method evaluates the geometric layout of a satellite constellation by calculating the GDOP values ​​of visible satellites, and then selects the satellite constellation with the lowest GDOP value as the optimal solution. A lower GDOP value indicates a better geometric layout and higher positioning accuracy. However, this method only considers the satellite's geometric layout during the selection process, neglecting other important factors such as signal strength, multipath error, and atmospheric refraction error, leading to significant limitations. For example, in complex environments such as urban canyons and mountainous areas, severe signal obstruction and reflection make it difficult to select the optimal satellite constellation based solely on GDOP values.

[0051] Furthermore, some satellite selection methods based on other algorithms in current technologies also have certain limitations. For example, the search for the optimal solution requires multiple iterations, resulting in slow convergence and affecting real-time performance. Another example is that, due to limitations in the algorithm's own search strategy, it is prone to getting trapped in local optima, leading to the selected satellite combination not being globally optimal.

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

[0053] The navigation enhancement star selection method based on optimization algorithm provided in the embodiments of this application will be introduced first.

[0054] Figure 1 This is a flowchart illustrating a navigation enhancement star selection method based on an optimization algorithm provided in an embodiment of this application. Figure 1 As shown, the navigation enhancement star selection method based on optimization algorithm provided in this application embodiment may include the following steps S101 to S107.

[0055] S101: Based on the multiple visible satellites observed by the receiver within the target time period, multiple combinations of visible satellites are randomly generated. Each combination of visible satellites includes N visible satellites, where N is an integer greater than 1.

[0056] The target time period, also known as the time interval, can be any preset time period, and this application does not limit it. 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, where 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; this step is repeated until multiple combinations of visible satellites are obtained. The value of N can be flexibly adjusted according to actual conditions, and this application does not limit it.

[0057] Figure 2 This is a schematic flowchart of step S101 in the navigation enhancement star selection method based on optimization algorithms provided in an embodiment of this application. Figure 2 As shown, considering the impact of multipath effects and atmospheric delay on positioning accuracy, in some embodiments, S101 may include the following steps S201 to S203.

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

[0059] Specifically, in some embodiments, basic information such as ephemeris data, almanac data, and receiver channel observations from multiple visible satellites can be collected. Ephemeris are mathematical models describing the position and motion of a satellite, typically with time as the variable, providing the satellite's precise position and velocity in its orbit. Ephemeris provide orbital parameters about the satellite, allowing users to calculate the satellite's position at a future time. Ephemeris can be categorized into different types, such as simplified ephemeris and precise ephemeris. Precise ephemeris offer higher accuracy and are suitable for navigation and measurement applications requiring high precision.

[0060] An almanac is a table or database containing orbital information for multiple satellites, typically providing a rough estimate of satellite positions over a relatively long period. Almanacs are updated less frequently than ephemeris systems, but they provide basic information about satellite status, such as orbital parameters and visibility. Users can quickly obtain the approximate positions of various satellites using an almanac, thus guiding the receiver to select the appropriate satellite for positioning within a given timeframe.

[0061] In some embodiments, for example, the ephemeris of a visible satellite may include the orbital parameters of the visible satellite, and the almanac of a visible satellite may include the health status and broadcast ephemeris of the visible satellite. Receiver channel observations may include the pseudorange between the receiver and the visible satellite, the carrier phase of the visible satellite, the signal strength of the visible satellite, and the elevation angle of the visible satellite.

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

[0063] S202: Remove visible satellites from multiple visible satellites whose signal strength is less than a preset threshold and / or whose elevation angle is less than a preset angle.

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

[0065] S203: Randomly select N visible satellites from the retained visible satellites to obtain a visible satellite combination. Repeat this step until multiple visible satellite combinations are obtained.

[0066] After removing visible satellites with signal strength below a preset threshold and / or elevation angle below 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 value of N can be flexibly adjusted according to the actual situation; this application does not limit this. This step is repeated until multiple visible satellite combinations are obtained.

[0067] Thus, removing visible satellites with signal strength less than a preset threshold and / or elevation angle less than a preset angle from multiple visible satellites helps reduce the impact of multipath effects and atmospheric delay on positioning accuracy.

[0068] See also Figure 1 S102: Perform binary encoding on multiple visible satellite combinations to obtain an initial population, wherein the initial population includes the binary encoding sequence corresponding to each of the multiple visible satellite combinations.

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

[0070] Taking a visible satellite constellation consisting of 10 visible satellites as an example, the binary encoding sequence corresponding to one of the visible satellite constellations could be [0010110011]. Each bit in the binary encoding sequence represents whether a visible satellite is selected; 1 indicates selection, and 0 indicates non-selection. Following the order from least significant bit to most significant bit (i.e., from right to left), the binary encoding sequence [0010110011] indicates that visible satellites numbered 1, 2, 5, 6, and 8 are selected.

[0071] 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 value of each binary coding sequence in the initial population.

[0072] Navigation satellite selection methods in related technologies typically only consider the geometric layout of satellites during the selection process, neglecting other important factors such as signal strength, multipath error, and atmospheric refraction error, resulting in significant limitations. For example, in complex environments such as urban canyons and mountainous areas, due to severe signal obstruction and reflection, it is difficult to select the optimal satellite combination based solely on GDOP values.

[0073] To address the aforementioned technical challenges, the fitness function in this application creatively combines multiple factors, including GDOP value, signal strength, multipath effect error, and atmospheric refraction error, and integrates them into a comparable value through a reasonable quantification method. This design allows the algorithm to consider multiple optimization objectives simultaneously during the search process. This multi-dimensional comprehensive evaluation can more fully reflect the merits of satellite combinations, thereby identifying satellite combinations that better meet practical needs, improving navigation accuracy and reliability, and facilitating the selection of optimal satellite combinations even in complex environments such as urban canyons and mountainous areas.

[0074] In step S103, based on a preset fitness function and considering 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 coded sequence in the initial population is calculated to evaluate the quality of each visible satellite combination. A higher fitness value indicates a better visible satellite combination corresponding to that binary coded sequence.

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

[0076] In some embodiments, a genetic algorithm (GA) is selected as the optimization algorithm for navigation enhancement star selection. Of course, the optimization algorithm can also be other optimization algorithms besides the genetic algorithm, such as particle swarm optimization, etc., and this application does not limit it.

[0077] Genetic algorithms (GA) are characterized by strong global search capabilities, good robustness, and ease of parallel computation, making them suitable for handling complex optimization problems. Genetic algorithms can include operations such as selection, crossover, and mutation to simulate natural selection and genetic processes.

[0078] In some embodiments, the selection operation can employ Roulette Wheel Selection. Roulette Wheel Selection is a selection method based on fitness ratios. In genetic algorithms, each individual (i.e., a binary encoded sequence) has a fitness value, which reflects the individual's superiority or inferiority within the population. The basic idea of ​​Roulette Wheel Selection is that the probability of an individual being selected is proportional to its fitness value. In the embodiments of this application, a binary encoded sequence represents one individual.

[0079] In S104, based on the roulette wheel selection method, a selection operation can be performed on multiple binary encoding sequences in the initial population to select n target binary encoding sequences from these sequences. n is a positive integer, and its value can be flexibly adjusted according to actual conditions; this application does not impose any limitations on this. During the selection operation, the higher the fitness value of a binary encoding sequence, the higher its probability of being selected, i.e., the more likely it is to be selected as a target binary encoding sequence.

[0080] S105: Perform crossover and mutation operations on n target binary encoded sequences to obtain a new population, wherein the new population includes multiple newly generated binary encoded sequences.

[0081] By performing crossover and mutation operations on n target binary encoded sequences, multiple new binary encoded sequences can be generated, resulting in multiple newly generated binary encoded sequences. These multiple newly generated binary encoded sequences can form a new population.

[0082] S106: If the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than the preset threshold, then the new population is used as the initial population, and the step of calculating the fitness value of each binary coding sequence in the initial population is returned until the geometric precision factor 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.

[0083] If the geometric precision factor (GDOP) corresponding to at least one binary coded sequence in the new population is greater than a preset threshold, it indicates that the positioning accuracy of the visible satellite combination corresponding to at least one binary coded sequence in the new population is relatively low. In this case, the new population can be used as the initial population, and the process returns to S103, repeating steps S103 to S106 until the geometric precision factors corresponding to multiple binary coded 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 preset threshold and the preset number of iterations can be flexibly adjusted according to actual conditions, and this application does not limit them.

[0084] S107: Select 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.

[0085] For any given binary encoded sequence, a higher fitness value indicates a better visible satellite combination. In S107, the binary encoded sequence with the highest fitness value can be selected from the last obtained new population, and the satellite combination corresponding to this binary encoded sequence can be used as the target visible satellite combination.

[0086] The embodiments of this application provide a navigation enhancement satellite selection method based on an optimization algorithm. This method comprehensively considers factors such as satellite geometry, signal strength, multipath effect error, and atmospheric refraction error. Through the selection and calculation of the optimization algorithm, the optimal combination of navigation satellites can be selected in a short time to meet the navigation enhancement service requirements of a local area within a specified time interval, satisfying real-time requirements and maximizing the navigation enhancement effect. This method has advantages such as high satellite selection efficiency, high positioning accuracy, and strong anti-interference capability, and can be widely used in aviation, maritime, transportation, and other fields to improve the reliability and accuracy of navigation services.

[0087] Furthermore, genetic algorithms or other efficient optimization algorithms are employed as the core algorithms. Compared to traditional exhaustive search or heuristic algorithms, these algorithms possess stronger global search capabilities or faster convergence speeds. Through reasonable encoding schemes, fitness function design, and genetic operations, optimal or near-optimal combinations of visible satellites can be found in a relatively short time.

[0088] To facilitate understanding, the following examples illustrate each step in the navigation enhancement star selection method based on optimization algorithms provided in the embodiments of this application.

[0089] Figure 3 The diagram illustrates the fitness value calculation index system. For example... Figure 3 As shown, in some embodiments, the fitness value calculation index system can be divided into a target layer 31, a criterion layer 32, and an index layer 33 from top to bottom. The target layer 31 is the fitness value of the binary coded sequence of the visible satellite combination, i.e., the target of this calculation. The criterion layer 32 may include multiple criterion parameters for calculating the fitness value of the binary coded sequence. For example, the multiple criterion parameters may include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer 33 may include multiple normalized indices corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters, respectively.

[0090] For example, geometric layout parameters may include or correspond to normalized geometric precision attenuation factor (GDOP), three-dimensional position precision factor (PDOP), horizontal precision factor (HDOP), and vertical precision factor (VDOP). Signal strength parameters may include or correspond to normalized signal strength threshold, signal-to-noise ratio, carrier-to-noise ratio, and signal stability. Multipath effect parameters may include or correspond to normalized multipath error estimates, reflected signal detection, environmental perception, and elevation angle selection. Atmospheric refraction error parameters may include or correspond to normalized ionospheric delay, tropospheric delay, and dual-frequency correction.

[0091] Figure 3 The data for these indicators can first be standardized to eliminate the influence of dimensions; then, through normalization, the data is scaled to the [0,1] range, thereby unifying the data scale and making the indicators at each level comparable.

[0092] According to some embodiments of this application, optionally, S103: Calculating the fitness value of each binary coded 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 may include the following steps:

[0093] Calculate the fitness value of each binary encoded sequence in the initial population based on the following expression:

[0094] (1)

[0095] Where X represents the fitness value of the binary encoded sequence, This represents the i-th normalized index value of the j-th criterion parameter. This represents the weight of the i-th normalized index for the j-th criterion parameter. Let represent the weight of the j-th criterion parameter, p represent the number of indicators corresponding to the j-th criterion parameter, and n represent the number of criterion parameters. i, j, p, and n are all positive integers. For example, such as... Figure 3 As shown, for example, the first criterion parameter is the geometric layout parameter, and the first normalized index of the first criterion parameter is the geometric accuracy attenuation factor.

[0096] Expression (1) uses a weighted average method to pass the calculation results of the underlying indicators upward through a weight matrix, thereby calculating the fitness value of the binary encoded sequence. The weights of each indicator or each criterion parameter in the fitness function shown in expression (1) can be flexibly adjusted according to the actual situation, and this application does not limit this. For example, in some embodiments, a subjective assignment method can be used, where domain experts directly set the weights based on experience. Of course, an objective weighting method can also be used, such as the entropy weighting method, which automatically calculates the weights based on data volatility.

[0097] Thus, the fitness function comprehensively considers multiple factors, including geometric layout parameters (such as the geometric accuracy factor, 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 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 delay on positioning accuracy, thereby improving positioning accuracy and anti-interference capabilities.

[0098] Figure 4 This is a schematic flowchart of step S104 in the navigation enhancement star selection method based on optimization algorithms provided in an embodiment of this application. Figure 4 As shown, according to some embodiments of this application, optionally, S104: Based on the roulette wheel selection method, and based on the fitness value of each binary coding sequence, a selection operation is performed on multiple binary coding sequences in the initial population to select n target binary coding sequences from multiple binary coding sequences, which may include the following steps S301 to S303.

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

[0100] For example, suppose the initial population contains 4 individuals (i.e., 4 binary encoded sequences), with fitness values ​​of 169, 576, 64, and 361, respectively. For the first binary encoded sequence with a fitness value of 169, its selection probability is 169. (169 + 576 + 64 + 361) = 0.144. For the second binary encoded sequence with a fitness value of 576, its selection probability is 576. (169+576+64+361)=0.492. And so on, without further explanation.

[0101] S302: Calculate the cumulative probability of each binary encoding sequence based on the selection probability of each binary encoding sequence.

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

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

[0104] Generate a uniformly distributed first random number x1 within the interval [0,1]. If Q1≥x1, select the first binary encoded sequence as a target binary encoded sequence. If Qm≥x1>Qm-1, select the m-th binary encoded sequence as a target binary encoded sequence. Here, Q1 represents the cumulative probability of the first binary encoded sequence in the initial population, Qm-1 represents the cumulative probability of the (m-1)-th binary encoded sequence in the initial population, and Qm represents the cumulative probability of the m-th binary encoded sequence in the initial population. Repeating this step n times generates multiple different first random numbers, resulting in n target binary encoded sequences.

[0105] According to some embodiments of this application, optionally, S105: performing crossover and mutation operations on n target binary encoded sequences to obtain a new population may include the following steps one and two.

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

[0107] Specifically, any two target binary encoding sequences can be randomly selected from n target binary encoding sequences. A single-point crossover operation or a multi-point crossover operation can be performed on these two target binary encoding sequences to obtain two newly generated binary encoding sequences. For ease of explanation, the newly generated binary encoding sequence through a single-point crossover operation or a multi-point crossover operation is called the first binary encoding sequence. Two newly generated first binary encoding sequences can be obtained through one single-point crossover operation or a multi-point crossover operation.

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

[0109] 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) of S1 and S2 are swapped to generate two first binary coding sequences.

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

[0111] For example, for any two target binary coding sequences S1 and S2, in a multi-point crossover operation, for example, the second and fourth gene positions in the two target binary coding sequences are randomly selected as two crossover points, and then the gene sequences of S1 and S2 at the two crossover points (such as the second and fourth gene positions) are swapped to generate two first binary coding sequences.

[0112] Step 2: For each gene bit in any first binary encoding 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, then invert the value of the gene bit to obtain a newly generated second binary encoding sequence.

[0113] Specifically, in the mutation operation, a mutation probability is first set. The magnitude 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 the gene bit is generated in the interval [0,1]. If the second random number corresponding to the gene bit is less than the preset mutation probability, the value of the gene bit is inverted, that is, 0 becomes 1 and 1 becomes 0, resulting in a newly generated binary coding sequence. For ease of explanation, 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. The new population may include multiple newly generated second binary coding sequences.

[0114] According to some embodiments of this application, optionally, after obtaining the target visible satellite combination in S107, the navigation enhancement satellite selection method based on the optimization algorithm may further include steps three and four.

[0115] Step 3: Position the receiver based on the target's visible satellite array, and record the positioning time and positioning error.

[0116] For example, in some embodiments, simulation software can be used to simulate the operating environment of a low-Earth orbit satellite navigation system, applying the target visible satellite array to the simulation to observe performance indicators such as positioning error and positioning time. Of course, when conditions permit, field experiments can also be conducted to verify the positioning error, positioning time, and other performance indicators of the target visible satellite array.

[0117] Step 4: If the positioning time 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: Based on the multiple visible satellites observed by the receiver within the target time period, randomly generate multiple combinations of visible satellites to obtain a new target visible satellite combination, until the positioning time 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.

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

[0119] Thus, when the positioning time exceeds the preset duration and / or the positioning error exceeds the preset error threshold, the weights in the fitness function can be adjusted based on simulation or experimental results to obtain a new combination of target visible satellites, which can further improve positioning accuracy and shorten the actual positioning time.

[0120] According to some embodiments of this application, the navigation enhancement satellite selection method based on optimization algorithms provided in the embodiments of this application can optionally be applied to autonomous driving satellite navigation, portable terminal device satellite navigation, aviation satellite navigation, or marine satellite navigation, etc.

[0121] Taking autonomous driving satellite navigation as an example, autonomous vehicle navigation places extremely high demands on the accuracy, stability, and reliability of navigation signals. The navigation enhancement satellite selection method based on optimization algorithms provided in this application comprehensively considers various factors such as satellite geometry GDOP value, signal strength, multipath effect error, and atmospheric refraction error, enabling the selection of the optimal combination of navigation satellites to ensure the accuracy and stability of navigation signals.

[0122] Furthermore, autonomous vehicles require rapid response and accurate decision-making, which places higher demands on the real-time performance of navigation systems. The navigation enhancement satellite selection method based on optimization algorithms provided in this application employs efficient optimization algorithms (such as genetic algorithms and particle swarm optimization) to quickly solve the navigation satellite selection problem, achieving real-time processing and transmission of navigation signals.

[0123] Based on the same technical concept as the navigation enhancement star selection method based on the optimization algorithm provided in the above embodiments, this application also provides a specific implementation of a navigation enhancement star selection device based on the optimization algorithm. Please refer to the following embodiments.

[0124] Figure 5 This is a schematic diagram of a navigation enhancement and star selection device based on an optimization algorithm provided in an embodiment of this application. Figure 5 As shown, the navigation enhancement star selection device 40 based on optimization algorithms provided in this application embodiment may include the following modules:

[0125] The generation module 401 is used to randomly generate multiple visible satellite combinations based on multiple visible satellites observed by the receiver within the target time period. Each visible satellite combination includes N visible satellites, where N is an integer greater than 1.

[0126] The encoding module 402 is used to perform binary encoding on multiple visible satellite combinations to obtain an initial population, wherein the initial population includes the binary encoding sequence corresponding to each of the multiple visible satellite combinations;

[0127] The calculation module 403 is used to calculate the fitness value of each binary coding 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.

[0128] Selection module 404 is used to select n target binary codes from multiple binary codes in the initial population based on the roulette wheel selection method and according to the fitness value of each binary code sequence, so as to select n target binary codes from multiple binary codes, where n is an integer greater than 1.

[0129] The crossover and mutation module 405 is used to perform crossover and mutation operations on n target binary encoded sequences to obtain a new population, wherein the new population includes multiple newly generated binary encoded sequences;

[0130] The iteration module 406 is used to update the initial population to a new population and return the step of calculating the fitness value of each binary coding sequence in the initial population if the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, until the geometric precision factor 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.

[0131] The determination module 407 is used to select the binary encoding sequence with the highest fitness value from the last obtained new population, and to use the satellite combination corresponding to the binary encoding sequence as the target visible satellite combination.

[0132] The embodiments of this application provide a navigation enhancement satellite selection device based on an optimization algorithm. This device comprehensively considers factors such as satellite geometry, signal strength, multipath effect error, and atmospheric refraction error. Through the selection and calculation of the optimization algorithm, it can select the optimal combination of navigation satellites in a short time to meet the navigation enhancement service requirements of a local area within a specified time interval, satisfying real-time requirements and maximizing the navigation enhancement effect. This device has advantages such as high satellite selection efficiency, high positioning accuracy, and strong anti-interference capability, and can be widely used in aviation, maritime, transportation, and other fields to improve the reliability and accuracy of navigation services.

[0133] Furthermore, genetic algorithms or other efficient optimization algorithms are employed as the core algorithms. Compared to traditional exhaustive search or heuristic algorithms, these algorithms possess stronger global search capabilities or faster convergence speeds. Through reasonable encoding schemes, fitness function design, and genetic operations, optimal or near-optimal combinations of visible satellites can be found in a relatively short time.

[0134] According to some embodiments of this application, optionally, the generation module 401 can be used to obtain the signal strength and elevation angle of multiple visible satellites; remove 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 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.

[0135] According to some embodiments of this application, optionally, the selection module 404 can be specifically used to divide the fitness value of each binary encoding sequence by the sum of the fitness values ​​of multiple binary encoding sequences in the initial population to obtain the selection probability of each binary encoding sequence; calculate the cumulative probability of each binary encoding sequence based on the selection probability of each binary encoding sequence; generate a uniformly distributed first random number in the interval [0,1], select a binary encoding sequence whose cumulative probability is greater than or equal to the first random number as a target binary encoding sequence, repeat this step n times until n target binary encoding sequences are obtained.

[0136] According to some embodiments of this application, optionally, the crossover mutation module 405 can be used to perform a single-point crossover operation or a multi-point crossover operation on any two target binary coding sequences from n target binary coding sequences to obtain two newly generated first binary coding sequences. The two target binary coding sequences to be crossovered are replaced and this step is repeated until a preset number of first binary coding sequences are obtained. For each gene position in any first binary coding sequence, a second random number corresponding to the gene position is generated in the interval [0,1]. If the second random number corresponding to the gene position is less than the preset mutation probability, the value of the gene position is inverted to obtain a newly generated second binary coding sequence. The new population includes multiple newly generated second binary coding sequences.

[0137] According to some embodiments of this application, optionally, a single-point crossover operation includes randomly selecting the x-th gene position in two target binary coding sequences as a crossover point, and exchanging the gene sequences in the two target binary coding sequences that are located after or before the crossover point to obtain two newly generated first binary coding sequences, where x is a positive integer. A multi-point crossover operation includes 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 to obtain two newly generated first binary coding sequences.

[0138] According to some embodiments of this 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 coded sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters for calculating the fitness value of the binary coded 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 indices corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters, respectively. Specifically, the calculation module 403 can be used to calculate the fitness value of each binary coded sequence in the initial population according to the following expression:

[0139]

[0140] Where X represents the fitness value of the binary encoded sequence, This represents the i-th normalized index value of the j-th criterion parameter. This represents the weight of the i-th normalized index for the j-th criterion parameter. i 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.

[0141] Optionally, according to some embodiments of this application, the navigation enhancement satellite selection device 40 based on optimization algorithm provided in this application embodiment may further include an adjustment module, used to locate the receiver based on the target visible satellite combination, and record the positioning time and positioning error; if the positioning time is greater than a preset duration, and / or the positioning error is greater than a preset error threshold, then the weights in the fitness function are 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 positioning time 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.

[0142] Figure 5 Each module / unit in the device shown has the function of implementing each step in the navigation enhancement star selection method based on the optimization algorithm provided in the above method embodiment, and can achieve its corresponding technical effect. For the sake of brevity, it will not be described in detail here.

[0143] The electronic device in this application embodiment may be a user terminal device, a server, other computing devices, or a cloud server. Figure 6This is a schematic diagram of the hardware structure of an electronic device according to an embodiment of this 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 implements the process or function of any of the methods described above.

[0144] Specifically, processor 501 may include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application. Memory 502 may include a mass storage device for data or instructions. For example, memory 502 may be at least one of the following: a hard disk drive (HDD), read-only memory (ROM), random access memory (RAM), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, universal serial bus (USB) drive, or other physical / tangible memory storage device. Alternatively, memory 502 may include removable or non-removable (or fixed) media. Furthermore, memory 502 may be internal or external to the integrated gateway disaster recovery device. Memory 502 may be non-volatile solid-state memory. In other words, typically 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 (e.g., by one or more processors), it can perform the operations described in the methods of the embodiments of this application. The processor 501 implements the process or function of any of the methods described in the above embodiments by reading and executing computer program instructions stored in the memory 502.

[0145] In one example Figure 6The illustrated electronic device may also include a communication interface 503 and a bus 510. The processor 501, memory 502, and communication interface 503 are connected via bus 510 and communicate with each other. Communication interface 503 is primarily used to enable communication between modules, devices, units, and / or equipment in the embodiments of this application. Bus 510 may include hardware, software, or both, and can couple components of the online data traffic billing device together. For example, the bus may include at least one of the following: Accelerated Graphics Port (AGP) or other graphics bus, Enhanced Industry Standard Architecture (EISA) bus, Front Side Bus (FSB), HyperTransport (HT) Interconnect, Industry Standard Architecture (ISA) bus, Infinite Bandwidth Interconnect, Low Pin Count (LPC) bus, memory bus, Microchannel Architecture (MCA) bus, Peripheral Component Interconnect (PCI) bus, PCI-Express (PCI-X) bus, Serial Advanced Technology Attachment (SATA) bus, Video Electronics Standards Association Local (VLB) bus, or other suitable buses. Bus 510 may include one or more buses. Although specific buses are described or illustrated in the embodiments of this application, any suitable bus or interconnection method may be considered in the embodiments of this application.

[0146] In conjunction with the methods in the above embodiments, this application also provides a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the process or function of any of the methods in the above embodiments.

[0147] In addition, this application also provides a computer program product that stores computer program instructions, which, when executed by a processor, implement the process or function of any of the methods described above.

[0148] The flowcharts and / or block diagrams of methods, apparatuses, systems, and computer program products according to embodiments of this application have been exemplarily described above, and related aspects have been described. It should be understood that each block or combination thereof in the flowcharts and / or block diagrams may be implemented by computer program instructions, by dedicated hardware performing a specified function or action, or by a combination of dedicated hardware and computer instructions. For example, these computer program instructions may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to form a machine that enables the implementation of the function / action specified in each block or combination thereof in the flowcharts and / or block diagrams, executable via such processor. Such a processor may be a general-purpose processor, a dedicated processor, a special-purpose application processor, or a field-programmable logic circuit.

[0149] The functional blocks shown in the structural block diagrams of this application can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc.; when implemented in software, they are programs or code segments used to perform the required tasks. Programs or code segments can be stored in memory or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. Code segments can be downloaded via computer networks such as the Internet or intranets.

[0150] It should be noted that this application is not limited to the specific configurations and processes described above or shown in the figures. The above descriptions are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the described systems, devices, modules, or units can be referred to the corresponding processes in the method embodiments, and need not be repeated here. It should be understood that the scope of protection of this application is not limited thereto. Any person skilled in the art can conceive of various equivalent modifications or substitutions within the scope of the technology disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application.

Claims

1. A navigation enhancement star selection method based on an optimization algorithm, characterized in that, include: Based on the multiple visible satellites observed by the receiver within the target time period, multiple combinations of visible satellites are randomly generated. Each combination of visible satellites includes N visible satellites, where N is an integer greater than 1. The initial population is obtained by binary encoding the multiple visible satellite combinations, which includes the binary encoding sequences corresponding to each of the multiple visible satellite combinations. 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, the fitness value of each binary coding sequence in the initial population is calculated. Based on the roulette wheel selection method, and according to the fitness value of each binary coding sequence, a selection operation is performed on multiple binary coding sequences in the initial population to select n target binary coding sequences from multiple binary coding sequences, where n is an integer greater than 1; Crossover and mutation operations are performed on n target binary encoded sequences to obtain a new population, which includes multiple newly generated binary encoded sequences; If the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than the preset threshold, then the new population is used as the initial population, and the step of calculating the fitness value of each binary coding sequence in the initial population is returned until the geometric precision factor 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 binary encoded sequence with the highest fitness value is selected from the last newly obtained population, and the satellite combination corresponding to the binary encoded sequence is used as the target visible satellite combination. The fitness value calculation index system is divided into three layers from top to bottom: target layer, criterion layer, and index layer. The target layer is the fitness value of the binary coded sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters used to calculate the fitness value of the binary coded sequence. These multiple criterion parameters include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer includes multiple normalized indices corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The geometric layout parameters include or correspond to normalized geometric accuracy attenuation factors, three-dimensional position accuracy factors, horizontal accuracy factors, and vertical accuracy factors. The signal strength parameters include or correspond to normalized signal strength thresholds, signal-to-noise ratio, carrier-to-noise ratio, and signal stability indices. The multipath effect parameters include or correspond to normalized multipath error estimates, reflected signal detection, environmental perception, and elevation angle screening indices. The atmospheric refraction error parameters include or correspond to normalized ionospheric delay, tropospheric delay, and dual-frequency correction indices. 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, the fitness value of each binary coded sequence in the initial population is calculated, including: Calculate the fitness value of each binary encoded sequence in the initial population based on the following expression: Where X represents the fitness value of the binary encoded sequence, This represents the i-th normalized index value of the j-th criterion parameter. This represents the weight of the i-th normalized index for the j-th criterion parameter. The expression represents the weight of the j-th criterion parameter, p represents the number of indicators corresponding to the j-th criterion parameter, and n represents the number of criterion parameters. i, j, p, and n are all positive integers. The fitness function shown in the expression uses a weighted average method to pass the calculation results of the underlying indicators upward through the weight matrix to calculate the fitness value of the binary coded sequence. This quantifies the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters into specific values ​​and assigns different weights to reflect their importance, thereby reducing the impact of multipath effects and atmospheric delay on positioning accuracy.

2. The method according to claim 1, characterized in that, Based on multiple visible satellites observed by the receiver within the target time period, multiple combinations of visible satellites are randomly generated, including: Obtain the signal strength and elevation angle of multiple visible satellites; Remove visible satellites from a pool of visible satellites whose signal strength is less than a preset threshold and / or whose elevation angle is less than a preset angle; Randomly select N visible satellites from the retained visible satellites to obtain a visible satellite combination. 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, and using the fitness values ​​of each binary encoded sequence to perform selection operations on multiple binary encoded sequences in the initial population, n target binary encoded sequences are selected from multiple binary encoded sequences, including: The selection probability of each binary encoded sequence is obtained by dividing the fitness value of each binary encoded sequence by the sum of the fitness values ​​of multiple binary encoded sequences in the initial population. Calculate the cumulative probability of each binary encoded sequence based on the selection probability of each binary encoded sequence; Generate a uniformly distributed first random number in the interval [0,1]. Select a binary encoding sequence whose cumulative probability is greater than or equal to the first random number as a target binary encoding sequence. Repeat this step n times until n target binary encoding sequences are obtained.

4. The method according to claim 1, characterized in that, Crossover and mutation operations are performed on n target binary encoded sequences to obtain a new population, including: For any two target binary encoding sequences among n target binary encoding sequences, perform a single-point crossover operation or a multi-point crossover operation to obtain two newly generated first binary encoding sequences. Replace the two target binary encoding sequences that need to be crossovered and repeat this step until a preset number of first binary encoding sequences are obtained. For each gene bit in any first binary coding sequence, a second random number corresponding to the gene bit is generated in the interval [0,1]. If the second random number corresponding to the gene bit is less than the preset mutation probability, the value of the gene bit is inverted to obtain a newly generated second binary coding sequence. The new population includes several newly generated second binary coding sequences.

5. The method according to claim 4, characterized in that, The single-point crossover operation involves randomly selecting the x-th gene position in two target binary coding sequences as a crossover point, swapping the gene sequences in the two target binary coding sequences that are located after or before the crossover point, and obtaining two newly generated first binary coding sequences, where x is a positive integer. The multi-point crossover operation involves randomly selecting multiple gene positions from two target binary coding sequences as multiple crossover points, exchanging the values ​​of the gene positions at 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, After obtaining the target's visible satellite constellation, the method further includes: The receiver is positioned based on the combination of visible satellites of the target, and the positioning time and positioning error are recorded. If the positioning time is longer than the preset duration and / or the positioning error is greater than the preset error threshold, the weights in the fitness function are adjusted, and the process of randomly generating multiple combinations of visible satellites 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. This process continues until the positioning time 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.

7. A navigation enhancement and star selection device based on an optimization algorithm, characterized in that, include: The generation module is used to randomly generate multiple visible satellite combinations based on multiple visible satellites observed by the receiver within the target time period. Each visible satellite combination includes N visible satellites, where N is an integer greater than 1. The encoding module is used to perform binary encoding on multiple visible satellite combinations to obtain an initial population, wherein the initial population includes the binary encoding sequences corresponding to each of the multiple visible satellite combinations; The calculation module is used to calculate the fitness value of each binary coded 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. The selection module is used to select n target binary codes from multiple binary codes in the initial population based on the roulette wheel selection method and the fitness value of each binary code sequence. The crossover and mutation module is used to perform crossover and mutation operations on n target binary encoded sequences to obtain a new population, which includes multiple newly generated binary encoded sequences. The iteration module is used to update the initial population to a new population if the geometric precision factor corresponding to at least one binary coding sequence in the new population is greater than a preset threshold, and return the step of calculating the fitness value of each binary coding sequence in the initial population, until the geometric precision factor 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 determination module is used to select the binary encoded sequence with the highest fitness value from the last obtained new population, and to use the satellite combination corresponding to the binary encoded sequence as the target visible satellite combination. The fitness value calculation index system is divided into three layers from top to bottom: target layer, criterion layer, and index layer. The target layer is the fitness value of the binary coded sequence of the visible satellite combination. The criterion layer includes multiple criterion parameters for calculating the fitness value of the binary coded sequence. These multiple criterion parameters include geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The index layer includes multiple normalized indices corresponding to the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters. The geometric layout parameters include or correspond to normalized geometric accuracy attenuation factors, three-dimensional position accuracy factors, horizontal accuracy factors, and vertical accuracy factors. The signal strength parameters include or correspond to normalized signal strength thresholds, signal-to-noise ratio, carrier-to-noise ratio, and signal stability indices. The multipath effect parameters include or correspond to normalized multipath error estimates, reflected signal detection, environmental perception, and elevation angle screening indices. The atmospheric refraction error parameters include or correspond to normalized ionospheric delay, tropospheric delay, and dual-frequency correction indices. The calculation module is specifically used to calculate the fitness value of each binary encoded sequence in the initial population based on the following expression: Where X represents the fitness value of the binary encoded sequence, This represents the i-th normalized index value of the j-th criterion parameter. This represents the weight of the i-th normalized index for the j-th criterion parameter. The expression represents the weight of the j-th criterion parameter, p represents the number of indicators corresponding to the j-th criterion parameter, and n represents the number of criterion parameters. i, j, p, and n are all positive integers. The fitness function shown in the expression uses a weighted average method to pass the calculation results of the underlying indicators upward through the weight matrix to calculate the fitness value of the binary coded sequence. This quantifies the geometric layout parameters, signal strength parameters, multipath effect parameters, and atmospheric refraction error parameters into specific values ​​and assigns different weights to reflect their importance, thereby reducing the impact of multipath effects and atmospheric delay on positioning accuracy.

8. An electronic device, characterized in that, The electronic device includes a processor and a memory storing computer program instructions; when the electronic device executes the computer program instructions, it implements the method as described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions that, when executed by a processor, implement the method as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Integrated navigation system positioning satellite selection method

    CN108196273A

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

    CN112578414A