An agile satellite task planning method based on rolling island hybrid genetic algorithm

CN122736249APending Publication Date: 2026-09-11JIANGSU UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610975927.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-02
Publication Date
2026-09-11

AI Technical Summary

Technical Problem

精确求解算法在应对大规模任务规划问题时,求解时间随任务数量呈指数级增长,导致求解效率低下,无法满足大规模场景的实时规划需求

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122736249A_ABST
    Figure CN122736249A_ABST
Patent Text Reader

Abstract

This invention discloses an agile satellite mission planning method based on a rolling island hybrid genetic algorithm. It employs a sliding window mechanism with a fixed overlap rate to divide the global mission set into multiple locally overlapping sub-windows. Within each sub-window, the population size, number of islands, and evolutionary generations are adaptively configured according to mission density. Each island independently performs genetic operations based on NSGA-II. A ring-shaped topology hybrid migration strategy based on Pareto front dynamic characteristics is used between islands. The migration trigger interval and the mixing ratio of elite and random individuals are adaptively adjusted by calculating the average crowding distance of the front in real time. After optimization, the precise attitude angle and timestamp status of the satellite at the end of the window are passed to the next window. Finally, the local Pareto front solutions of all windows are sorted globally without dominance and deduplicated to output the final mission planning sequence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an agile satellite mission planning method based on a rolling island hybrid genetic algorithm. Background Technology

[0002] Agile Earth observation satellites possess three-axis rapid attitude maneuvering capabilities, enabling them to image and observe multiple dispersed ground targets during a single transit by adjusting their attitude. Their observation efficiency and flexibility are significantly superior to traditional satellites that can only perform side-swing imaging.

[0003] However, while the attitude maneuvering capabilities of agile satellites enhance observation flexibility, they also bring complex challenges to resource scheduling and mission planning. During observation missions, each attitude maneuver consumes onboard fuel resources. An unreasonable mission execution sequence can lead to redundant maneuvers, unnecessary attitude maintenance, and excessively long mission latency, resulting in fuel waste and shortening the satellite's on-orbit lifespan. Simultaneously, satellite observations of each target are constrained by strict time windows and attitude maneuvering capabilities. Therefore, balancing low observation energy consumption and high mission coverage while meeting complex spatiotemporal constraints is a core challenge in agile satellite mission planning. This problem is characterized by strong constraints, multiple objectives, and NP-hard nature, and the solution space exhibits a combinatorial explosive growth as mission scale increases.

[0004] To address the aforementioned issues, existing satellite mission planning methods mainly include exact solution algorithms and traditional heuristic algorithms. When dealing with large-scale mission planning problems, the solution time of exact solution algorithms increases exponentially with the number of missions, resulting in low efficiency and failing to meet the real-time planning requirements of large-scale scenarios. While traditional heuristic algorithms can obtain approximate solutions within an acceptable timeframe, they are prone to getting trapped in local optima or premature convergence, leading to insufficient global search capabilities and poor distribution of multi-objective solution sets. Furthermore, existing methods typically employ fixed population size, fixed generation number, and fixed migration parameters, failing to adaptively adjust computational resource allocation based on mission density, resulting in resource waste or insufficient search. When using a divide-and-conquer strategy to handle long-cycle missions, existing window partitioning methods lack state transfer and overlap mechanisms between windows, easily causing tasks to be rigidly divided, creating planning blind spots and resulting in discontinuous task sequences between adjacent windows. Summary of the Invention

[0005] This invention provides an agile satellite mission planning method based on a rolling island hybrid genetic algorithm to address the problems existing in the prior art.

[0006] The technical solution of the present invention is as follows:

[0007] An agile satellite mission planning method based on a rolling island hybrid genetic algorithm includes the following steps:

[0008] S1: Acquire the data of the task set to be observed and the initial state parameters of the satellite;

[0009] S2: Based on the timeline, an overlapping scrolling window strategy is adopted to divide the global task set into several continuous and partially overlapping sub-windows;

[0010] S3: Perform adaptive island genetic optimization sequentially on each sub-window to generate the local Pareto front solution set for that sub-window; wherein, the adaptive island genetic optimization includes:

[0011] The population size, number of islands, and maximum number of generations are dynamically configured based on the number of tasks within the sub-window.

[0012] The population is divided into multiple islands that evolve in parallel, with each island independently performing genetic operations based on the NSGA-II framework; and,

[0013] Individual migration between islands is carried out according to a ring topology hybrid migration strategy based on the dynamic characteristics of the Pareto front. The strategy adaptively adjusts the migration parameters according to the average crowding distance of the current Pareto front of the island.

[0014] S4: Select a representative solution from the local Pareto front solution set of the current sub-window, extract the satellite terminal state corresponding to the representative solution, and pass it to the next sub-window as its initial state;

[0015] S5: Merge the local Pareto front solutions generated after optimizing all sub-windows, perform deduplication and global non-dominated sorting, and output the final task planning sequence.

[0016] Furthermore, in S2, the overlapping scrolling window strategy is specifically as follows:

[0017] Let the earliest start time of the global task set be The latest end time is Set a fixed window length L and overlap rate. Then the time interval of the kth sub-window is:

[0018] ,

[0019] Truncate the window boundaries to ensure the time interval does not exceed [the specified threshold]. ;

[0020] Each sub-window contains all tasks that intersect with the time interval, i.e., satisfy... Task ,in For the task The earliest start time, For the task The latest end time, Let k be the start time of the k-th sub-window. This is the end time of the k-th sub-window.

[0021] Furthermore, in S3, the population size, number of islands, and maximum number of generations are dynamically configured based on the number of tasks within the sub-window. Specifically, let the number of tasks in the current sub-window be... Then the population size Number of islands Maximum number of generations The following linear positive correlation rules with thresholds are used to determine the following:

[0022] ,

[0023] Among them, symbols This indicates the floor function.

[0024] Furthermore, the adaptive adjustment of migration parameters in S3 includes: adaptively adjusting the migration trigger interval between islands and the mixing ratio of elite individuals and random individuals in the immigrant population.

[0025] Furthermore, the migration trigger interval and mixing ratio are determined as follows:

[0026] First, define the Pareto front of island i in generation g. Average crowding distance :

[0027] ,

[0028] Where d(p) is the crowding distance of individual p. The number of individuals at the forefront;

[0029] Then, calculate the relative diversity index. :

[0030] ,

[0031] in, To reference the crowding distance, each island is maintained independently, with its initial value taken as the average crowding distance at the Pareto front of that island at the initial population stage, and subsequently adjusted according to... Dynamic updates For update rate;

[0032] Finally, dynamically adjust the migration trigger interval. and the proportion of elite individuals :

[0033] ,

[0034] ,

[0035] in, Based on the value, , This is the adjustment coefficient.

[0036] Furthermore, the construction and execution of immigrants in the hybrid migration strategy are specifically as follows:

[0037] Let the total number of immigrants in each migration be... , ,in Population size for each island, The preset immigration ratio ranges from 10% to 20%.

[0038] The number of elite individuals is The number of random individuals is ;

[0039] The elite individuals are randomly selected from the current Pareto front, while the random individuals are randomly selected from the entire population.

[0040] Migration occurs via a unidirectional ring topology, meaning each island sends migrants only to its next neighboring island.

[0041] Furthermore, in S4, the satellite terminal state is obtained recursively according to the following state transition equation:

[0042] Let j be the last task representing the solution obtained after optimizing the current sub-window, then the terminal timestamp and terminal attitude angle for:

[0043] ,

[0044] ,

[0045] in, To execute the end time of the previous task, for the first task within each child window, Get the initial satellite time for the current sub-window; Let be the earliest start time of task j. Let j be the duration of observation. For attitude maneuver time, based on the satellite's maximum angular velocity and maximum angular acceleration It was calculated based on the trapezoidal velocity curve.

[0046] Furthermore, attitude maneuver time Calculate as follows:

[0047] Let the current attitude angle be... The target attitude angle is ,

[0048] The rolling axis angle difference is The pitch axis angle difference is Then the rolling axis motion time and pitch axis maneuver time Calculate according to the following trapezoidal velocity curves respectively:

[0049] when hour, otherwise, ;

[0050] when hour, ;otherwise, ;

[0051] Final attitude maneuver time ;

[0052] in, This represents the satellite's maximum attitude angular velocity. This represents the satellite's maximum attitude angular acceleration.

[0053] Furthermore, the genetic operation in S3 optimizes for a multi-objective function, which includes the objectives of minimizing fuel consumption and maximizing task coverage.

[0054] Furthermore, the objective of minimizing fuel consumption is:

[0055] ,

[0056] in, This refers to the task sequence number in the task execution sequence. Based on fuel consumption, These are the weighting coefficients. Let the attitude maneuver time be for the k-th task. Let be the waiting time for the k-th task. The duration of observations for the k-th task;

[0057] The objective of maximizing task coverage is:

[0058] ,

[0059] in, This represents the total number of tasks in the task set. This represents the number of tasks that were actually successfully scheduled.

[0060] Furthermore, the deduplication process in S5 specifically involves:

[0061] For each individual, a task sequence is simulated to obtain a list of feasible scheduling tasks and the corresponding satellite terminal status;

[0062] If two individuals have completely identical feasible scheduling task lists and the Euclidean distance between their normalized terminal states is less than a preset threshold, they are considered duplicate individuals, and only one of them is retained.

[0063] The present invention has the following beneficial effects:

[0064] (1) By using the decomposition mechanism of overlapping scrolling windows, the long-cycle global optimization problem is transformed into a local optimization problem of multiple small-scale sub-windows. The time complexity of a single optimization is significantly reduced, effectively solving the technical problem of low efficiency of existing accurate algorithms in large-scale task scenarios.

[0065] (2) By using a hybrid migration strategy of multi-island parallel genetic evolution and ring topology based on Pareto front dynamic features, the algorithm can autonomously adjust the balance between exploration and utilization according to the population evolution state, effectively overcoming the defects of traditional heuristic algorithms that are prone to getting trapped in local optima or premature convergence, while improving the distribution uniformity of the solution set of multi-objective Pareto front.

[0066] (3) The population size, number of islands and maximum number of generations are dynamically configured according to the number of tasks in the sub-window, so that the algorithm can flexibly adapt to different task density scenarios, avoid resource waste or insufficient search under fixed parameter settings, and significantly improve the utilization efficiency of computing resources.

[0067] (4) By using the precise satellite terminal status transfer and window overlap mechanism between windows, adjacent sub-windows can maintain continuity in the optimized initial state, avoiding hard task division and planning blind spots caused by window division, and ensuring smooth connection of the global task planning sequence. Attached Figure Description

[0068] Figure 1 This is a flowchart of the present invention.

[0069] Figure 2 This is a schematic diagram of the invention.

[0070] Figure 3 A graph comparing fuel consumption and mission coverage. Detailed Implementation

[0071] The invention will now be further described with reference to the accompanying drawings.

[0072] This embodiment provides an agile satellite mission planning method based on a rolling island hybrid genetic algorithm, targeting an on-board mission planning scenario involving 200 Earth observation targets. The overall execution flow of the method is as follows: Figure 1As shown, the system schematic is as follows: Figure 2 .

[0073] In this embodiment, the satellite only considers two-dimensional attitude maneuvers along the roll and pitch axes, with the yaw angle fixed at 0° and the maximum attitude angular velocity set to... The maximum angular acceleration is set to 200 ground observation tasks are randomly generated. Each task includes parameters such as longitude, latitude, earliest start time, latest end time, and observation duration. The task time window is randomly distributed within a 24-hour cycle, and the observation duration of a single task is 30 to 90 seconds.

[0074] Satellite initial state parameters are set to initial time. Initial roll angle Initial pitch angle .

[0075] First, task parameter modeling and initialization are performed, specifically: obtaining the set of tasks to be observed, which includes the latitude and longitude coordinates (longitude) of each task. ,latitude Time window (earliest start time) Latest end time ), duration of observation ; Obtain the satellite's initial orbital attitude parameters, including initial time. Initial roll angle and pitch angle The aforementioned task information is pre-stored in the task set. In addition, in actual task planning, the yaw angle mainly affects the imaging side-looking direction. Its maneuver is usually coupled with the roll angle and the adjustment range is small. To reduce the complexity of the problem, this scheme only considers the two-dimensional attitude maneuver of the roll angle and pitch angle, and assumes that the yaw angle is kept at 0° and is not involved in the optimization.

[0076] This invention employs a sliding window mechanism with a fixed overlap rate to divide a long-cycle global task sequence into multiple locally optimized sub-windows with overlapping beginnings and ends. The specific steps are as follows:

[0077] Scan the time windows of all tasks to determine the earliest start time of the global task. and latest end time .

[0078] Set a fixed window length L = 6 hours and a window overlap ratio r = 0.2 ( The sliding step of the window is (1−r)L = 4.8 hours.

[0079] The time intervals for generating the k-th sub-window are generated sequentially: And truncate the interval boundary so that it does not exceed .

[0080] Determine each child window The included set of tasks: all tasks that satisfy All tasks i are included in this sub-window.

[0081] This embodiment generates a total of 5 sub-windows, and the time intervals of each sub-window are as follows:

[0082] Sub-window 1: [0,6] hours

[0083] Sub-window 2: [4.8, 10.8] hours

[0084] Sub-window 3: [9.6, 15.6] hours

[0085] Sub-window 4: [14.4, 20.4] hours

[0086] Sub-window 5: [19.2, 25.2] hours, truncated to [19.2, 24] hours.

[0087] This overlapping design ensures that tasks located at the edges of sub-windows are not rigidly segmented, allowing for smooth transfer of optimization information and satellite status between adjacent sub-windows, and avoiding planning blind spots introduced by task truncation.

[0088] It should be noted that, since the current sub-window only transmits the satellite terminal state corresponding to a single representative solution to the next sub-window, rather than the entire Pareto front state set, there is a risk that locally optimal decisions may restrict subsequent sub-windows in extreme cases. To mitigate this risk, the present invention adopts the following measures:

[0089] (1) The overlap rate of the sub-windows is positive (20% in this embodiment), which allows adjacent sub-windows to share some tasks. The later sub-window has the opportunity to reschedule the tasks at the end of the previous sub-window, thereby correcting the suboptimal decision.

[0090] (2) The representative solution is not fixed as the single objective optimal. Users can select different preferred solutions (such as fuel and coverage equilibrium solutions) from the Pareto front for state transfer according to actual needs. This invention does not limit this.

[0091] Parallel evolutionary architecture for optimization process, such as Figure 2 As shown.

[0092] First sub-window (sub-window 1) planning: For each sub-window, the improved island model genetic algorithm is executed sequentially to generate the locally optimal task sequence within that sub-window. This step is the core innovation of this invention.

[0093] Traditional methods, employing fixed population size and generation numbers, lead to resource misallocation. This invention, however, determines resource allocation based on the number of tasks within the current sub-window. Key parameters for dynamic calculation optimization algorithms:

[0094] Population size To ensure that a small population is used for small windows (few tasks) to save computation, and a large population is used for large windows (many tasks) to ensure search breadth.

[0095] Number of islands Parallelism is linked to problem size; the more intensive the tasks, the more islands can evolve in parallel.

[0096] Maximum number of generations : Ensure that complex windows receive sufficient iterative search.

[0097] Here, the symbol ⌊∙⌋ represents the floor function. The lower bound of the parameter is used to ensure basic search capabilities for small-scale tasks, while the upper bound of the parameter is used to control the consumption of computational resources for large-scale tasks. When the number of islands is 1, the migration strategy automatically fails, and only single-population evolution is performed.

[0098] Count of tasks in sub-window 1 According to the adaptive formula, the following is calculated:

[0099] ,

[0100] ,

[0101] ,

[0102] In sub-window 1, where tasks are sparse, the algorithm degenerates into a standard single-population genetic algorithm to avoid parallel overhead. Based on the aforementioned adaptive parameters, 180 randomly permuted individuals are generated, and NSGA-II-based genetic optimization is performed. Permutation encoding is used, where each individual is a random execution sequence of all tasks within the sub-window. The encoding within a sub-window only includes tasks that appear within that sub-window; tasks not appearing in a sub-window do not participate in the optimization of that sub-window. After identifying each individual, distribute them evenly to... There are 10 islands. Let the basic number of individuals on each island be 1. remainder Each of the first R islands gains an additional individual, meaning the population size of the first R islands is [missing information]. The remaining islands are This allocation method ensures that all individuals are assigned and that the size of each island differs by no more than 1.

[0103] For each individual within each island, its bi-objective fitness value is calculated based on the fuel consumption model and the coverage model. The fuel consumption minimization objective is:

[0104] ,

[0105] Where k is the task number in the task execution sequence. Based on fuel consumption, These are the weighting coefficients. Let the attitude maneuver time be for the k-th task. Let be the waiting time for the k-th task. The duration of observation for the k-th task.

[0106] In this embodiment, the weighting coefficients are taken as: basic fuel consumption Angle consumption coefficient maneuver time coefficient Waiting time coefficient Observation duration coefficient The above coefficients can be calibrated based on the actual propellant consumption model of the satellite, and this embodiment does not impose any limitations on them.

[0107] Waiting time The calculation formula is:

[0108] ,

[0109] The objective of maximizing task coverage is:

[0110] ,

[0111] in, This represents the total number of tasks in the task set. This represents the number of tasks that were actually successfully scheduled.

[0112] For individuals that violate the time window constraint, this invention employs a penalty function method for processing, as detailed below:

[0113] When calculating fuel consumption for each mission, if the satellite's arrival time at the target exceeds the mission's latest completion time, this factor is considered. If a fixed penalty P is added to the fuel value for that task, in this embodiment, P = 20. The formula for calculating the fuel consumption after the penalty is:

[0114] ,

[0115] in The number of tasks that violate the time window. This penalty makes infeasible solutions significantly worse than feasible solutions on the fuel objective.

[0116] Coverage calculations only consider tasks that can be successfully scheduled within the time window, specifically as follows:

[0117] The function simulates the execution of a task sequence: it iterates through each task sequentially, and if the time it takes for the satellite to reach the target after attitude maneuvers from its current state does not exceed the latest completion time of that task... If the satellite is successfully executed, the task is performed and its status (attitude angle, time) is updated; otherwise, the task is skipped. Finally, a list of indexes of all successfully executed tasks (i.e., "feasible task subsequences") is returned. Coverage is calculated as the length of the subsequence divided by the total number of tasks. The ratio of .

[0118] Attitude maneuverability constraints: Attitude maneuver time in this scheme The calculations are based on the maximum angular velocity. By imposing constraints, every individual naturally satisfies the angular velocity constraint when calculating fuel, and no individual will violate the angular velocity constraint. The angular velocity constraint check added in this embodiment is only used for algorithm debugging and performance statistics; it does not participate in any fitness evaluation or selection process and does not affect the ranking of individuals. The purpose of this check is to verify the correctness of the maneuver time calculation model and is not part of the core optimization logic of this invention.

[0119] After adopting the above penalty strategy, tasks that violate the time window constraint will significantly increase the individual's fuel consumption target value, and the task will not be included in the coverage count because it cannot be actually scheduled. However, in non-dominated sorting, it is theoretically possible for a high-coverage but slightly non-dominated infeasible solution and a low-coverage but strictly feasible solution to be mutually non-dominated. To avoid such infeasible solutions interfering with population evolution, this invention embeds a feasibility priority rule into the tournament selection operator: when comparing two individuals, if one is feasible and the other is infeasible, the feasible individual wins directly without comparing target values; only when both are equally feasible are selections made based on non-dominated level and crowding distance. This rule works synergistically with the penalty function to ensure that feasible solutions dominate the evolution, thereby effectively eliminating infeasible solutions.

[0120] Intra-island genetic operations: Each island independently executes a multi-objective evolutionary process based on the NSGA-II framework, including: non-dominated sorting, crowding distance calculation, tournament selection, order crossover (OX), and exchange / inversion mutation operations. Building upon this, to prevent island populations from becoming homogeneous and falling into premature convergence, and to overcome the limitation of fixed migration parameters in adapting to dynamic evolutionary processes, this invention designs a dynamic adaptive migration strategy based on the Pareto front average crowding distance. The core of this strategy lies in allowing the algorithm to autonomously decide "when to migrate" and "what to migrate" based on the island's own evolutionary state.

[0121] After each generation of evolution, for all individuals in the current Pareto front Fi of each island i, calculate their crowding distance. Crowding distance is an indicator used in NSGA-II to measure the density of individuals surrounding an individual in the target space. A larger distance indicates a sparser solution and better diversity in that region. This invention defines islands. In the Average crowding distance of the generation for:

[0122] ,

[0123] in For individuals Crowded distance, The number of individuals at the forefront. crowded distance Calculated according to the NSGA-II standard method: Each objective function (fuel consumption, coverage) is sorted separately. The congestion distance of boundary points is set to infinity, and the congestion distance of an interior point p is the normalized sum of the differences between adjacent points on each objective. The specific calculation formula is as follows:

[0124] ,in , Let m be the target value of individual p for the two adjacent individuals on target m. and These are the maximum and minimum values ​​of the objective m in the current Pareto front, respectively. If If the objective item's contribution is zero, then the contribution of that objective item is zero.

[0125] To eliminate the influence of different sub-windows or different evolutionary stages, a relative diversity index is further defined. :

[0126] ,

[0127] in, For reference to crowded distances.

[0128] This method maintains a dynamically updated reference value for each island independently, with the initial value being the average crowding distance of the Pareto front at the initial population stage (generation 0). If the Pareto front of the initial population is empty or the average crowding distance is 0, the initial reference crowding distance is set to 1. During evolution, the relative diversity index is calculated whenever migration occurs. At that time, the reference value is updated according to the following exponentially weighted moving average formula:

[0129]

[0130] in For update rate, a typical value is taken as... This dynamic update mechanism enables the reference value to smoothly track the evolutionary trend of population diversity, avoiding the failure of the indicator due to the initial reference value not matching the later population state. This indicates that the current population diversity is better than the reference state (sparse frontier). This indicates that the population is converging (dense at the front).

[0131] According to the relative diversity index Dynamically adjust two key migration parameters:

[0132] Migration trigger interval Control the pace of "exploration" and "utilization" in optimization.

[0133] ,

[0134] The range of values ​​for the migration interval is set to... .when When diversity is superior to reference and the frontier is sparse, the index ,therefore The migration interval is reduced, and the migration frequency is increased, so as to accelerate the spread of superior genes; When diversity is inferior to reference and frontiers are dense, the exponent is... , The increased migration interval reduces external interference, allowing each island to focus on local depth search. This mechanism achieves symmetric adaptive adjustment with δ=1 as the equilibrium point.

[0135] The proportion of elite individuals among immigrants : Balancing "development" and "exploration" in controlling migration.

[0136] ,

[0137] The range of values ​​for the elite ratio is set to... .when hour, A higher proportion of elite individuals among immigrants accelerates the spread of superior genes (enhanced development); when hour, The proportion of random individuals in the immigrant population increases accordingly, maintaining population diversity through random perturbation (enhancing exploration). The tanh function ensures smooth adjustment and saturation at the boundaries.

[0138] The above formula uses an exponential function to adjust the migration interval. Its design principle is that the exponential function has a non-linear amplification effect on deviations from the relative diversity index δ—when δ increases slightly from 1 to 1.2, the migration interval can be shortened by approximately 10% (within...). This allows for a rapid response to improvements in population diversity; and when δ deviates small, the adjustment is gradual, avoiding frequent fluctuations. In contrast, using a simple linear function requires setting an additional sensitivity coefficient and is prone to generating negative migration intervals when δ is large.

[0139] For the proportion of elites, using the tanh function can ensure that the adjustment range is within a certain range. Smooth saturation within the range avoids the elite proportion exceeding the limit due to extreme values ​​of δ. The adjustment coefficient in this invention... , A typical value of 0.5 is used, and users can adjust it within the range of 0.2 to 1.0 to change the algorithm's sensitivity to changes in diversity.

[0140] During the evolution of each island, the timing of the next migration is dynamically calculated. This occurs when the current island's dynamic migration interval is reached. Migration is triggered when the migration occurs. A unidirectional ring topology is used, meaning island i sends immigrants to island i+1. The source island i is determined based on its current elite ratio. Constructing an immigrant pool:

[0141] ,

[0142] Among them, the number of elite individuals is The number of random individuals is , The total immigration size is typically set at 10% to 20% of the island's population size; in this example, it is set at 15% (i.e., ...). ),in Number of individuals per island (total population size) Divide by the number of islands Then round down to the nearest whole number, and distribute the remainder among the first few islands.

[0143] Elite individuals are randomly selected from the current Pareto front, while random individuals are randomly selected from the entire population. After the target island receives immigrants, the immigrant individuals are merged with the existing population to form a temporary population. A non-dominated ranking (NSGA-II standard method) is applied to this temporary population, retaining individuals in ascending order of rank; within the same rank, individuals are retained in descending order of crowding distance. The population is ultimately truncated to the size of the original island population. Immigrant individuals and existing island individuals are treated completely equally during the truncation process, meaning no priority differences are given.

[0144] This dynamic adaptive mechanism enables the algorithm to autonomously adjust its migration behavior throughout the evolution process, strengthening exploration in the early stages of evolution or when it escapes local optima, and accelerating convergence in the later stages of evolution, which significantly improves the robustness and solution quality of the algorithm.

[0145] When the number of iterations reaches the maximum number of generations. The algorithm terminates when the following early stopping condition is met: Let the stall window length be... The fuel value of the individual with the lowest fuel consumption in each generation's Pareto front. And the coverage value of the individual with the highest coverage. If, within W consecutive iterations, both of the following conditions are met simultaneously, the process terminates early and outputs the Pareto front solution set of the current sub-window:

[0146] ,

[0147] ,

[0148] in, For the first Minimum fuel consumption and maximum coverage in the Pareto front. To prevent the denominator from being too small, take a minimum constant. The denominator uses the value before W to avoid numerical instability caused by an excessively small denominator.

[0149] A representative solution is selected from the Pareto front solution set of the current sub-window to calculate the satellite's terminal state and pass it to the next sub-window. The selection of the representative solution only affects the state transfer path between sub-windows, but does not lose the diversity of the final global Pareto front due to any non-dominated solutions, because all local Pareto front individuals generated by all sub-windows participate in the global merging in step five. In this embodiment, the individual with the lowest fuel consumption is selected as the representative solution for that sub-window. .

[0150] It should be noted that in practical applications, users can arbitrarily select a representative solution from the Pareto front of the current sub-window based on task preferences, such as selecting the solution with the highest coverage or the solution with the optimal weighted sum of fuel and coverage. Furthermore, as another optimization variant of this invention, multiple representative solutions (such as boundary and intermediate solutions) of the entire Pareto front can be passed to the next sub-window, generating multiple parallel transmission chains. Finally, the local Pareto fronts of all chains are merged and then globally sorted. This variant also falls within the scope of this invention. The purpose of using a single representative solution is to reduce computational complexity; experiments have shown that a single representative solution can achieve satisfactory results under typical task scales.

[0151] After optimization, the Pareto front solution set for sub-window 1 is obtained. The individual with the lowest fuel consumption is selected as the representative solution. Calculate its terminal state. Assume that after executing the last task representing the solution, the satellite time becomes... Hours, rolling angle Pitch angle The terminal state is saved and passed to child window 2.

[0152] To ensure the spatiotemporal consistency of the global planning sequence, after the current sub-window optimization terminates, the solution is determined based on its representative solution. The satellite's terminal status is accurately calculated and passed to the next sub-window.

[0153] Let j represent the last task of the solution. After the satellite completes its task... The subsequent state is known, especially for the first task within the child window ( ), the end time of the previous task Get the initial satellite time of the current sub-window The attitude angle is taken from the initial attitude of the window. Waiting time Its fuel consumption is already included in the fuel consumption target. The process of executing task j consists of: attitude maneuvering, waiting (if arriving early), and observation.

[0154] The terminal timestamp and attitude angle are derived recursively using the following formula:

[0155] ,

[0156] ,

[0157] in, It is determined by the maximum angular velocity difference between the current attitude and the target attitude. Specifically, let the maximum angular velocity of the satellite be... The maximum angular acceleration is The current attitude angle is The target attitude angle is .

[0158] The minimum time required for a single-axis maneuver is calculated using a trapezoidal velocity curve: for rolling axes, ,like ,but ;otherwise The same applies to the pitch axis.

[0159] The final attitude maneuver time is the maximum value of the two axes: In this embodiment, we take... The terminal status This will serve as the initial state for the next adjacent child window.

[0160] The second sub-window (sub-window 2) plans and performs hybrid migrations as follows:

[0161] Set the terminal state of child window 1 ( Set as the initial state of child window 2. , , ) .

[0162] Count of tasks in sub-window 2 The calculation yields:

[0163] ,

[0164] ,

[0165] .

[0166] The 400 individuals were evenly distributed across 4 islands, with 100 individuals per island. Each island underwent independent NSGA-II evolution. Based on this, a dynamic migration strategy was implemented: for each island i, the average crowding distance at its current Pareto front was calculated in real-time. For example, in generation 50, the Pareto front distribution of island 1 is very dispersed. This indicates excellent population diversity. Based on the dynamic formula, take... Calculated , , generation; Therefore, the system will shorten the migration interval (from 20 generations to 15 generations), increase the migration frequency, and increase the proportion of elites to 73%.

[0167] Conversely, if in generation 120, the front edge of island 3 is dense ( ),but , , generation, The migration interval was increased to 24 generations to reduce migration interference, while significantly reducing the proportion of elites to introduce more random individuals.

[0168] Each evolution Island i, based on the current immigrant composition ratio Construct the immigrant set. Let the total number of immigrants for each migration be . :

[0169] ,

[0170] in, The preset immigration ratio ranges from 10% to 20%, and in this embodiment, λ = 0.15 is used. Population size for each island (i.e., total population size) Divide by the number of islands Then round down to the nearest whole number, and distribute the remainder to the first few islands. (In this embodiment...) Therefore, Nmig = max(1, ⌊0.15 × 100⌋) = 15.

[0171] The number of elite individuals is The number of random individuals is Elite individuals are randomly selected from the current Pareto front, while random individuals are randomly selected from the entire population. Migration occurs through a unidirectional circular topology, meaning each island sends migrants only to its next neighboring island.

[0172] After receiving immigrants, the target island merges the immigrant individuals with the existing population to form a temporary population. A non-dominated sorting method (NSGA-II standard method) is applied to this temporary population, retaining individuals in ascending order of rank; within the same rank, individuals are retained in descending order of crowding distance. The population is eventually truncated to the size of the original island population. Immigrant individuals and existing island individuals are treated completely equally during the truncating process, without any priority differences.

[0173] The evolutionary process of sub-window 2 continues until the maximum number of generations (360) is reached or the early stopping condition is met. After the algorithm terminates, the Pareto front and representative solution of sub-window 2 are output. The adaptive island genetic optimization and state transfer process described above is repeated to complete the planning of sub-window 3, sub-window 4, and sub-window 5 in sequence. Each sub-window starts optimization based on the accurate terminal state transferred from the previous sub-window, ensuring the spatiotemporal continuity of the global planning sequence.

[0174] After all sub-windows are optimized, all Pareto front individuals generated by the five sub-windows are collected (approximately several hundred in total). In the Pareto front solution set obtained from each sub-window optimization, the individual sequence stores the local index (1 to...) of the task within that sub-window. During merging, based on the task set of the child windows. , each local index Mapped to global task index Different sub-windows may contain the same global task (due to overlapping sub-windows). After mapping, the indices of the same task in different solutions will be naturally aligned without additional processing. The individual global sequences mapped from each sub-window are aggregated into a candidate set, forming a global candidate solution set.

[0175] For each individual, a task sequence is simulated to obtain a list of feasible scheduling tasks and the corresponding satellite terminal status. Let the feasible lists returned by the two individuals be denoted as follows: and If L1 and L2 have the same length and their corresponding elements are identical, then these two individuals are considered equivalent in terms of feasible scheduling results. It's important to note that if two individuals have identical feasible lists but the order of unexecuted tasks differs (e.g., individual A ends with [...], while individual B ends with [...], and neither x nor y is actually executed), the feasibility check will ignore the unexecuted tasks. Therefore, they would be judged as duplicates. Although the two entities behave identically in the current sub-window in this case, retaining both may have different effects on the initial state of subsequent sub-windows (because attitude maneuver calculations for tasks not yet performed will still affect the terminal state). To solve this problem, before deduplication, this invention first performs a complete state recursion for each individual, recording the final satellite terminal time and attitude angle; if two individuals are judged to be duplicates in the feasible list according to the above rules, but the normalized Euclidean distance of their final satellite terminal states exceeds a preset threshold... If the solutions are not in the same state, they are still treated as different individuals and retained to avoid incorrect merging of state differences caused by different order of task execution. Then, a global non-dominated sort is performed to remove all dominated solutions, resulting in the final Pareto front.

[0176] Then, a global non-dominated sort is performed, removing all dominated solutions to obtain the final Pareto front. In this embodiment, no upper limit is set on the size of the solution set, and all non-dominated solutions are retained.

[0177] Experimental data shows that when handling 200 missions, the method of this invention has an average fuel consumption of 589.5L and an average mission coverage of 90%, while the traditional standard genetic algorithm with the same experimental configuration consumes 3193.5L of fuel and has a coverage of only 69%. This invention improves the coverage by nearly 21 percentage points (from 69% to 90%) while reducing fuel consumption by approximately 82% (from 3193.5L to 589.5L), verifying its significant superiority in large-scale agile satellite mission planning scenarios.

[0178] The optimization effect of this embodiment is as follows: Figure 3 As shown.

[0179] The above description is only a preferred embodiment of the present invention. It should be noted that those skilled in the art can make several improvements without departing from the principle of the present invention, and these improvements should also be considered within the scope of protection of the present invention.

Claims

1. An agile satellite mission planning method based on a rolling island hybrid genetic algorithm, characterized in that: Includes the following steps: S1: Acquire the data of the task set to be observed and the initial state parameters of the satellite; S2: Based on the timeline, an overlapping scrolling window strategy is adopted to divide the global task set into several continuous and partially overlapping sub-windows; S3: Perform adaptive island genetic optimization sequentially on each sub-window to generate the local Pareto front solution set for that sub-window; wherein, the adaptive island genetic optimization includes: The population size, number of islands, and maximum number of generations are dynamically configured based on the number of tasks within the sub-window. The population is divided into multiple islands that evolve in parallel, with each island independently performing genetic operations based on the NSGA-II framework; and, Individual migration between islands is carried out according to a ring topology hybrid migration strategy based on the dynamic characteristics of the Pareto front. The strategy adaptively adjusts the migration parameters according to the average crowding distance of the current Pareto front of the island. S4: Select a representative solution from the local Pareto front solution set of the current sub-window, extract the satellite terminal state corresponding to the representative solution, and pass it to the next sub-window as its initial state; S5: Merge the local Pareto front solutions generated after optimizing all sub-windows, perform deduplication and global non-dominated sorting, and output the final task planning sequence.

2. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: In S2, the overlapping scrolling window strategy is specifically as follows: Let the earliest start time of the global task set be The latest end time is Set a fixed window length L and overlap rate. Then the time interval of the kth sub-window is: , Truncate the window boundaries to ensure the time interval does not exceed [the specified threshold]. ; Each sub-window contains all tasks that intersect with the time interval, i.e., satisfy... Task ,in For the task The earliest start time, For the task The latest end time, Let k be the start time of the k-th sub-window. This is the end time of the k-th sub-window.

3. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: In S3, the population size, number of islands, and maximum number of generations are dynamically configured based on the number of tasks within the sub-window. Specifically, let the number of tasks in the current sub-window be... Then the population size Number of islands Maximum number of generations The following linear positive correlation rules with thresholds are used to determine the following: , Among them, symbols This indicates the floor function.

4. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: The adaptive adjustment of migration parameters in S3 includes: adaptively adjusting the migration trigger interval between islands and the mixing ratio of elite individuals and random individuals in the migration.

5. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 4, characterized in that: The migration trigger interval and mixing ratio are determined as follows: First, define the Pareto front of island i in generation g. Average crowding distance : , Where d(p) is the crowding distance of individual p. The number of individuals at the forefront; Then, calculate the relative diversity index. : , in, To reference the crowding distance, each island is maintained independently, with its initial value taken as the average crowding distance at the Pareto front of that island at the initial population stage, and subsequently adjusted according to... Dynamic updates For update rate; Finally, dynamically adjust the migration trigger interval. and the proportion of elite individuals : , , in, Based on the value, , This is the adjustment coefficient.

6. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 4 or 5, characterized in that: The specific steps of immigrant creation and migration execution in the hybrid migration strategy are as follows: Let the total number of immigrants in each migration be... , ,in Population size for each island, The preset immigration ratio ranges from 10% to 20%. The number of elite individuals is The number of random individuals is ; The elite individuals are randomly selected from the current Pareto front, while the random individuals are randomly selected from the entire population. Migration occurs via a unidirectional ring topology, meaning each island sends migrants only to its next neighboring island.

7. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: In S4, the satellite terminal state is obtained recursively according to the following state transition equation: Let j be the last task representing the solution obtained after optimizing the current sub-window, then the terminal timestamp and terminal attitude angle for: , , in, To execute the end time of the previous task, for the first task within each child window, Get the initial satellite time for the current sub-window; Let be the earliest start time of task j. Let j be the duration of observation. For attitude maneuver time, based on the satellite's maximum angular velocity and maximum angular acceleration It was calculated based on the trapezoidal velocity curve.

8. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 7, characterized in that: Attitude maneuver time Calculate as follows: Let the current attitude angle be... The target attitude angle is , The rolling axis angle difference is The pitch axis angle difference is Then the rolling axis motion time and pitch axis maneuver time Calculate according to the following trapezoidal velocity curves respectively: when hour, otherwise, ; when hour, ; otherwise, ; Final attitude maneuver time ; in, This represents the satellite's maximum attitude angular velocity. This represents the satellite's maximum attitude angular acceleration.

9. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: In S3, genetic operations are used to optimize multi-objective functions, including minimizing fuel consumption and maximizing task coverage.

10. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 9, characterized in that: The objective of minimizing fuel consumption is: , in, This refers to the task sequence number in the task execution sequence. Based on fuel consumption, These are the weighting coefficients. Let the attitude maneuver time be for the k-th task. Let be the waiting time for the k-th task. The duration of observations for the k-th task; The objective of maximizing task coverage is: , in, This represents the total number of tasks in the task set. This represents the number of tasks that were actually successfully scheduled.

11. The agile satellite mission planning method based on rolling island hybrid genetic algorithm as described in claim 1, characterized in that: The specific deduplication process in S5 is as follows: For each individual, a task sequence is simulated to obtain a list of feasible scheduling tasks and the corresponding satellite terminal status; If two individuals have completely identical feasible scheduling task lists and the Euclidean distance between their normalized terminal states is less than a preset threshold, they are considered duplicate individuals, and only one of them is retained.