Satellite image data downlink scheduling method, system and device
By employing intelligent segmentation and a two-stage optimization model, combined with differential evolution algorithm, the problem of mismatch between satellite observation and transmission capabilities was solved, achieving efficient and reliable downlink scheduling of satellite image data and meeting the efficiency and robustness requirements of modern satellite communication.
Patent Information
- Application Number
- CN202511378898.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-25
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2045-09-25
AI Technical Summary
In existing technologies, the mismatch between satellite observation and downlink transmission capabilities prevents data from being transmitted within the visible time window. Furthermore, existing methods fail to effectively balance the two major optimization objectives of transmission failure rate and number of segmentations, resulting in low transmission efficiency.
The original data is divided into transmittable units using intelligent segmentation technology, and data integrity is ensured through a family attribute mechanism. Combined with a two-stage optimization model and differential evolution algorithm, the transmission failure rate and the number of segmentations are optimized to construct a downlink scheduling scheme for satellite image data.
It significantly improves scheduling efficiency and reliability, reduces the risk of transmission failure, shortens processing time, and makes full use of visible time window resources, making it suitable for complex collaborative scheduling scenarios involving multiple satellites and multiple ground stations.
Smart Images

Figure CN120849069B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of satellite mission planning and scheduling technology, and in particular to a method, system and apparatus for downlink scheduling of satellite image data. Background Technology
[0002] With the continuous development of high-resolution Earth observation satellite technology, modern satellites are able to capture massive amounts of remote sensing data at extremely high resolution. However, due to the mismatch between satellite observation and downlink transmission capabilities, raw image data generated within a single observation period often cannot be transmitted within a visible time window, resulting in data loss or uneven scheduling. Traditional methods typically model the downlink scheduling problem of satellite image data as a one-dimensional bin packing problem with time window constraints, but they ignore the characteristic that raw image data can be segmented into multiple segmented image datasets, leading to inefficiencies in some data transmission schemes. Although existing literature contains research on raw image data segmentation and scheduling, it mostly focuses on single-objective or single-stage solutions, failing to consider both the transmission failure rate and the number of segmentations as optimization objectives. Furthermore, in multi-objective optimization, maintaining solution diversity and global convergence is also a challenge.
[0003] Therefore, there is an urgent need for a new method that can intelligently segment raw image data and perform joint scheduling optimization in multiple visual time windows. Summary of the Invention
[0004] The purpose of this invention is to provide a method, system, and apparatus for downlink scheduling of satellite image data, so as to solve at least one of the above-mentioned technical problems existing in the prior art.
[0005] In a first aspect, to solve the aforementioned technical problems, the present invention provides a downlink scheduling method for satellite image data, comprising: determining visible time window data based on satellite parameters and ground station parameters; segmenting each available image data in the available image dataset and assigning it a family attribute based on a preset minimum image data size and visible time window data to obtain a segmented image dataset; constructing an initial population based on a two-stage coding system according to the available image dataset, the segmented image dataset, the visible time window data, and preset scheduling constraints; the initial population includes a one-stage coding system and a two-stage coding system; and optimizing the dual objective function using a differential evolution algorithm based on a preset operator and the initial population to obtain a downlink scheduling scheme.
[0006] Optionally, the available image dataset can be determined by filtering the original image data according to the minimum image data size, removing data with insufficient data volume, and generating the available image dataset.
[0007] Optionally, based on a preset minimum image data size and a visible time window, each available image data in the available image dataset is segmented and assigned a family attribute to obtain a segmented image dataset. This includes: calculating the minimum number of segmentations for each available image data in the available image dataset based on the minimum image data size and the visible time window; segmenting the available image data based on the minimum number of segmentations to obtain a pre-segmented image dataset; and assigning a unified family attribute to the segmented image data corresponding to the same available image data based on the pre-segmented image dataset to generate a segmented image dataset.
[0008] Optionally, the preset scheduling constraints include: a visible time window capacity constraint and a setting time constraint. The visible time window capacity constraint can be determined by: determining the maximum allowable duration based on the visible time window data; constraining the total transmission duration of all segmented image data corresponding to the same available image data within any visible time window based on the maximum allowable duration to generate the visible time window capacity constraint. The setting time constraint can be determined by: obtaining the minimum setting time based on satellite parameters; constraining the interval time between adjacent visible time windows based on the minimum setting time to generate the setting time constraint.
[0009] Optionally, the preset scheduling constraints also include: uniqueness constraints and complete transmission constraints; based on the segmented image dataset, the visible time window, and the preset scheduling constraints, an initial population is constructed using two-stage coding, including: according to the complete transmission constraints, randomly assigning binary codes to any available image data in the available image dataset to obtain a one-stage code; wherein, when the binary code is 1, the corresponding available image data participates in transmission; when the binary code is 0, the corresponding available image data does not participate in transmission; based on the family attribute of any segmented image data in the segmented image dataset, determining whether each segmented image data participates in transmission according to the one-stage code; according to the uniqueness constraints, the visible time window capacity constraints, and the setting time constraints, randomly assigning a visible time window number to each segmented image data participating in transmission using an integer vector to obtain a two-stage code; and constructing the initial population using the one-stage code and the two-stage code based on the uniqueness constraints and the complete transmission constraints.
[0010] Optionally, based on uniqueness constraints, visible time window capacity constraints, and time constraints, an integer vector is used to randomly assign a visible time window number to each segmented image data participating in the transmission in the first-stage coding, resulting in second-stage coding. This includes: randomly assigning a visible time window number to each segmented image data participating in the transmission to obtain an integer vector code; organizing the integer vector code according to the uniqueness constraint to ensure that each segmented image data corresponds to a visible time window, resulting in a unique integer vector code; and correcting the unique integer vector code according to the visible time window capacity constraint and the time constraint, resulting in second-stage coding.
[0011] Optionally, based on the preset operator and the initial population, the bi-objective function is optimized using the differential evolution algorithm to obtain the downlink scheduling scheme, including: performing a two-stage optimization on the initial population using the preset operator to obtain an optimized population; determining elite individuals and updating weights based on the optimized population; iteratively optimizing the optimized population using the updated weights until the number of iterations reaches a preset iteration threshold to obtain the final elite individuals; and decoding the final elite individuals to obtain the downlink scheduling scheme.
[0012] Optionally, the preset operators include: an insertion operator, a mutation operator, a reordering operator, and a swapping operator; the preset operators are used to perform two-stage optimization on the initial population to obtain an optimized population, including: performing one-stage optimization on the one-stage encoding in the initial population according to the insertion operator and the mutation operator to obtain a one-stage optimized population; and performing two-stage optimization on the two-stage encoding in the one-stage optimized population according to the reordering operator and the swapping operator to obtain an optimized population.
[0013] Secondly, based on the same inventive concept, this application also provides a satellite image data downlink scheduling system, specifically comprising: a time window determination module, used to determine the visible time window data according to satellite parameters and ground station parameters; an original image segmentation module, used to segment each available image data in the available image dataset and assign family attributes according to the preset minimum image data size and the visible time window data, to obtain a segmented image dataset; an initial population construction module, used to construct an initial population based on two-stage coding according to the available image dataset, the segmented image dataset, the visible time window data and preset scheduling constraints; the initial population includes one-stage coding and two-stage coding; and a scheduling scheme generation module, used to optimize and solve the dual objective function using a differential evolution algorithm according to preset operators and the initial population, to obtain a downlink scheduling scheme.
[0014] Thirdly, based on the same inventive concept, this application also provides a satellite image data downlink scheduling device, specifically including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform any of the methods in the embodiments of the present invention.
[0015] By adopting the above technical solution, this invention has the following beneficial effects: Addressing the problem of incomplete data transmission due to the mismatch between satellite observation and transmission capabilities, this invention effectively improves scheduling efficiency and reliability through an innovative two-stage optimization strategy. First, this method employs intelligent segmentation technology to rationally divide the original data into transmittable units, and ensures data integrity through a family attribute mechanism, avoiding the data fragmentation problem in traditional scheduling. Second, by constructing a dual-objective optimization model, it simultaneously optimizes the transmission failure rate and the number of segmentations, maximizing execution efficiency while ensuring task success rate. The designed two-stage differential evolution algorithm combines global search and local optimization, which can quickly find the optimal segmentation scheme and finely adjust the transmission scheduling order. Combined with an elite solution selection strategy, it significantly improves the solution quality. This method not only greatly reduces the risk of transmission failure but also shortens processing time and fully utilizes visible time window resources. It is particularly suitable for complex collaborative scheduling scenarios involving multiple satellites and multiple ground stations, providing a practical solution for efficient and reliable satellite data transmission and meeting the core requirements of modern satellite communication for efficiency and robustness.
[0016] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0017] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0018] Figure 1 A flowchart illustrating the satellite image data downlink scheduling method provided in an embodiment of the present invention;
[0019] Figure 2 This is a schematic diagram of a process for updating and optimizing a population using a non-dominated sorting genetic algorithm, provided by an embodiment of the present invention.
[0020] Figure 3This is a schematic diagram of a process for obtaining the final elite solution using the differential evolution algorithm, provided in an embodiment of the present invention.
[0021] Figure 4 This is a schematic diagram of the structure of a satellite image data downlink scheduling system provided in an embodiment of the present invention;
[0022] Figure 5 This is a schematic diagram of the structure of a satellite image data downlink scheduling device provided in an embodiment of the present invention. Detailed Implementation
[0023] The technical solution of the present invention will now be clearly and completely described with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0024] In the description of this invention, it should be noted that the terms "center," "upper," "lower," "left," "right," "vertical," "horizontal," "inner," and "outer," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing the invention and for simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0025] In the description of this invention, it should be noted that, unless otherwise explicitly specified and limited, the terms "installation," "connection," and "linking" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this invention based on the specific circumstances.
[0026] The present invention will be further explained below with reference to specific embodiments.
[0027] Example 1:
[0028] This disclosure provides a method for downlink scheduling of satellite image data. Figure 1This is a flowchart illustrating a satellite image data downlink scheduling method according to an embodiment of the present disclosure. This method can be applied to a satellite image data downlink scheduling system. The satellite image data downlink scheduling system is located in a device. This device includes, but is not limited to, fixed equipment and / or mobile equipment. For example, fixed equipment includes, but is not limited to, servers, which can be cloud servers or ordinary servers. Mobile equipment includes, but is not limited to, mobile phones, tablets, and vehicle-mounted terminals. In some possible implementations, the satellite image data downlink scheduling method can also be implemented by a processor calling computer-readable instructions stored in memory. Figure 1 As shown, the downlink scheduling method for satellite image data includes:
[0029] Step S101: Determine the visible time window data based on satellite parameters and ground station parameters.
[0030] Step S102: Based on the preset minimum image data size and visible time window data, segment each available image data in the available image dataset and assign it a family attribute to obtain a segmented image dataset.
[0031] Step S103: Based on the available image dataset, segmented image dataset, visible time window data, and preset scheduling constraints, construct an initial population based on two-stage coding; the initial population includes one-stage coding and two-stage coding.
[0032] Step S104: Based on the preset operator and the initial population, the biobjective function is optimized and solved using the differential evolution algorithm to obtain the downlink scheduling scheme.
[0033] Satellite parameters refer to various parameters that affect communication between the satellite and the ground station. In this embodiment of the disclosure, satellite parameters may include satellite number, orbital parameters, attitude angles, and other physical characteristics, which determine the satellite's visible area and transmission capabilities.
[0034] Ground station parameters refer to the relevant attributes of the ground station. In this embodiment of the disclosure, ground station parameters may include the unique identifier of each ground station, its geographical location, antenna rotation angle, and reception capability parameters, etc.
[0035] The visible time window refers to the time range within which effective communication can be established between the satellite and the ground station. Due to the satellite's orbital motion and the ground station's fixed location, downlink data transmission can only occur if the satellite is within the ground station's communication coverage area for a certain period of time.
[0036] In this embodiment, satellite parameters and ground station parameters can be obtained first. For example, satellite parameters can be provided by the satellite manufacturer or operator. Orbital data can also be obtained from public data sources, and dynamic data such as satellite attitude, position, and communication status can be obtained in real time through a ground station monitoring system. Then, based on the satellite's orbital parameters (such as position and velocity) and the ground station's location, the start and end times of the satellite entering the ground station's communication range can be calculated using an orbital prediction model. Furthermore, the ground station's geographical location (latitude, longitude, and altitude) can be used as a fixed reference point. Simultaneously, the satellite's precise position and altitude at a specific time are calculated using the satellite's orbital parameters and the orbital prediction model. Combined with the fixed reference point, the geometric relationship between the satellite and the ground station is determined. Based on the ground station's antenna coverage, time periods that meet communication conditions are selected. Finally, all time periods that meet communication conditions are used as the final effective visible time windows, and the start time, end time, and maximum allowed transmission duration of each visible time window are recorded as visible time window data. This provides accurate time data for subsequent data segmentation and scheduling optimization, avoiding unnecessary resource waste during non-communication periods. The above is merely an illustrative example and is not intended to limit all possible scenarios for determining the visible time window data; it is simply not an exhaustive list.
[0037] The minimum image data size refers to the smallest unit of image data segmentation, which is usually set according to constraints such as downlink bandwidth and time window length to facilitate data transmission.
[0038] The available image dataset refers to the set of image data whose data volume meets the minimum image data size requirement after filtering the original data. In this embodiment of the disclosure, the image data in this set can be subsequently segmented and transmitted, and image data with insufficient data volume or that does not meet the requirements has been removed.
[0039] In this context, the family attribute refers to an identifier that "bundles" all segmented image data obtained after segmenting any available image data. In this embodiment, the family attribute ensures that all segmented image data of the same available image data are transmitted as a whole; otherwise, none are transmitted, thus avoiding image reconstruction failure due to the omission of some segments.
[0040] Among them, the segmented image dataset refers to the data set after each available image data in the available image dataset is divided according to a certain size, which facilitates flexible scheduling within a limited time window.
[0041] In this embodiment, the satellite first acquires raw image data in orbit using remote sensing equipment (such as optical cameras, radar, or infrared sensors). The acquired raw image data is then integrated to obtain a raw image dataset. Next, the raw image data is sorted and filtered to remove unsuitable data, resulting in a usable image data set. Then, a minimum image data size is preset based on factors such as downlink bandwidth, visible time window length, task priority, and image resolution and integrity requirements. Finally, based on the preset minimum image data size and the requirements of the visible time window, all usable image data is segmented to generate a segmented image dataset. Simultaneously, each image data in the segmented dataset is assigned a family attribute identifier, indicating which part of the original image it originates from, ultimately resulting in a segmented image dataset. Data segmentation avoids the problem of insufficient transmission within a limited time window due to excessively large usable image data, providing data support for subsequent steps. The above is merely an illustrative example and does not limit the possibilities for obtaining a segmented image dataset; it is simply not exhaustive.
[0042] Scheduling constraints refer to the conditions and limitations that need to be met in downlink data transmission scheduling. In this embodiment of the disclosure, scheduling constraints may include visible time window capacity constraints, setting time constraints, uniqueness constraints, and complete transmission constraints.
[0043] Two-stage coding refers to a coding method for scheduling problems.
[0044] The initial population refers to the set of initial solutions in the optimization process of genetic algorithms or differential evolution algorithms, which is usually generated randomly or based on heuristic methods.
[0045] In this context, the first-stage coding indicates whether each available image data is selected and its segmentation status.
[0046] The two-stage coding represents the visual time window number assigned to each segmented image data, ensuring that uniqueness constraints and other scheduling constraints are met.
[0047] In this embodiment, the scheduling problem can first be transformed into an optimization problem based on the available image dataset, segmented image dataset, visible time window data, and scheduling constraints. A mathematical model for downlink scheduling of satellite image data is then constructed, defining the optimization objective and scheduling constraints. For example, the model construction process can be achieved by defining decision variables to represent the correspondence between the allocation of segmented image data to ground stations and the visible time window. Constraints are established by combining scheduling constraints (such as time window limits, bandwidth limits, priority requirements, etc.). The objective (such as maximizing data transmission volume, minimizing transmission delay, etc.) is quantified through an objective function, thereby obtaining the mathematical model for downlink scheduling of satellite image data. Then, a two-stage encoding process can be performed based on the segmented image dataset and scheduling constraints. In the first stage, encoding determines which available image data needs to be transmitted and the optimal number of segmentations for the available image data, ensuring reasonable planning of transmission tasks within a limited visible time window. In the second stage, encoding arranges the allocation order of the segmented image data within the visible time window and the allocation of ground station transmission resources, maximizing the utilization of transmission bandwidth and reducing latency. Finally, multiple encoding schemes can be randomly generated or heuristic algorithms (such as prioritizing the transmission of high-priority data) can be introduced to optimize some of the initial individuals, ensuring population diversity and basic feasibility, thus obtaining an initial population set as input for subsequent optimization algorithms, laying the foundation for subsequent optimization. The above is only an illustrative example and does not represent all possible cases for constructing the initial population; it is simply not exhaustive here.
[0048] The preset operator refers to the operational rules in the differential evolution algorithm. In this embodiment of the disclosure, the preset operator may include an insertion operator, a mutation operator, a reordering operator, and a swapping operator.
[0049] Among them, differential evolution is a global optimization algorithm based on population evolution, which continuously optimizes the objective function through differential mutation, crossover and selection.
[0050] The dual-objective function optimizes two objectives simultaneously. In this embodiment, the optimization objectives may include minimizing the transmission failure rate and minimizing the number of partitions, ensuring that the scheduling scheme achieves a balance between efficiency and timeliness.
[0051] The downlink scheduling scheme is the final data transmission plan. In this embodiment, the downlink scheduling scheme may include the visual time window number and transmission time allocated to each segmented image data.
[0052] In this embodiment of the disclosure, a dual-objective function can be defined based on specific optimization goals and requirements. For example, the first objective can define how the transmission failure rate is calculated (e.g., the proportion of data blocks that were not fully transmitted out of the total data blocks) and minimize it. The second objective can define how the number of segmentations is calculated and minimize it.
[0053] Preferably, a dual objective function can be set by minimizing the transmission failure rate and minimizing the number of segmentations. Then, a mathematical model for downlink scheduling of satellite image data with family attributes is constructed by combining scheduling constraints. The transmission failure rate reflects whether all available image data in the scheduling scheme is successfully transmitted. If any segment of an available image data fails to be transmitted, it is considered a transmission failure. The transmission failure rate is obtained by summing and normalizing the data over all available image data. Therefore, minimizing the transmission failure rate can be used as one of the optimization objectives. Furthermore, the number of segmentations reflects the total number of segmentations for all available image data in the entire scheme. The more segmentations, the higher the complexity of data segmentation, which can be used to evaluate the segmentation complexity of all available image data in the scheduling scheme. Therefore, minimizing the number of segmentations can be used as another optimization objective.
[0054] For example, the transmission failure rate can be expressed by the following formula:
[0055]
[0056]
[0057] In the formula, Indicates the transmission failure rate; This represents the value of the available image data set; This indicates the transmission status of each available image data; This represents any available image data in the available image dataset; This represents segmented image data; Indicates available image data; This indicates the available image data set.
[0058] For example, the number of splits can be expressed by the following formula:
[0059]
[0060] In the formula, This indicates the total number of segmentations to transmit all available image data; This represents the minimum number of segments required to transmit any available image data.
[0061] Specifically, normalizing the number of segmentations for all available image data yields a standardized total number of segmentations. Normalization gives the number of segmentations a fixed range, facilitating comparison and trade-offs with other metrics (such as transmission failure rate) in multi-objective optimization, and can also be used to measure segmentation efficiency. For example, the formula for normalizing the number of segmentations for all available image data can be:
[0062]
[0063] In the formula, This represents the maximum possible number of segmentations across all available image data; This indicates the number of normalized partitions.
[0064] Furthermore, based on the initial population, a new solution can be generated using a differential evolution algorithm, and a selection operation can be used to retain the optimal solution. Simultaneously, the dual objective function can be iteratively optimized multiple times to balance the transmission failure rate and the number of segmentations. Finally, when the iterative optimization process satisfies the preset iterative objective, the algorithm terminates, and the final scheduling scheme is output. For example, the scheduling scheme may include the visual time window number and transmission time assigned to each segmented image dataset. The above is merely an illustrative example and does not constitute a limitation on all possible cases for obtaining a downlink scheduling scheme; it is simply not exhaustive.
[0065] The technical solution of this disclosure improves problem-solving efficiency by decomposing a complex scheduling problem into two relatively simple sub-problems through global partitioning optimization and local scheduling optimization. The definition of a dual objective function ensures that the scheduling scheme balances task completion rate and execution efficiency, guaranteeing efficient task completion under limited resources and time constraints. Through reasonable time window calculation, data partitioning, initial population generation, and optimization iteration, this method ultimately achieves an efficient and reliable downlink scheduling scheme for satellite image data, meeting the requirements of modern satellite communication missions for efficiency and robustness.
[0066] In some embodiments, the available image dataset is determined by filtering the original image data according to the minimum image data size, removing data with insufficient data volume, and generating the available image dataset.
[0067] Here, raw image data refers to complete image data captured by a satellite, typically large-scale, high-resolution raw remote sensing images. In this embodiment, raw image data can first be obtained from a satellite observation platform. Each piece of raw image data may include a unique identifier, transmission duration, priority, release time, and expiration time. Specifically, the unique identifier is used to distinguish different image data; the transmission duration is the time required for the raw image data to be transmitted, and its value is positively correlated with the amount of image data; the release time and expiration time determine the validity of the data within the scheduling window and the transmission time limit.
[0068] In this embodiment, all acquired raw image data are first integrated to obtain a raw image dataset. For each raw image in the raw image dataset, its data size is checked to see if it is less than a preset minimum image data size. Then, image data with a data size less than the preset minimum image data size is removed, i.e., raw image data with insufficient data size is removed, ensuring that all data to be transmitted meets the basic requirements. For example, raw image data with insufficient data size may include images that are too small, have low resolution, or are incomplete. Finally, the raw image data that meets the conditions is added to the usable image dataset to generate a usable image dataset. The above is merely an illustrative example and is not intended to limit all possible cases for generating a usable image dataset; it is simply not exhaustive.
[0069] The technical solution of this disclosure improves data quality and transmission efficiency by filtering the original image data, removing data with insufficient volume to generate a usable image dataset, and ensuring that the minimum image data size requirement is met during transmission. Simultaneously, this method effectively avoids the transmission of low-quality or redundant data, optimizes resource utilization, simplifies the preprocessing stage of data filtering, and provides a reliable input data foundation for subsequent scheduling and transmission.
[0070] In some embodiments, each available image data in the available image dataset is segmented and assigned a family attribute based on a preset minimum image data size and a visible time window, to obtain a segmented image dataset. This includes: calculating the minimum number of segmentations for each available image data in the available image dataset based on the minimum image data size and the visible time window; segmenting the available image data based on the minimum number of segmentations to obtain a pre-segmented image dataset; and assigning a unified family attribute to the segmented image data corresponding to the same available image data based on the pre-segmented image dataset to generate a segmented image dataset.
[0071] The minimum number of segmentations refers to the minimum number of segmentations required for each available image data while satisfying the minimum image data size and the visible time window constraints. Furthermore, the size of the image data block generated by each segmentation is no less than the minimum image data size, while also taking into account the amount of data that can be transmitted within the visible time window.
[0072] In this embodiment, for each available image in the available image dataset, the total time required to transmit the available image data can first be calculated based on the total amount of any available image data and the transmission rate. Then, based on the total time and the maximum allowable transmission time of the visible time window, the theoretical number of visible time windows required to complete the transmission can be calculated. At this point, the number of segmentations should be greater than or equal to the required number of theoretical visible time windows, resulting in the initial number of segmentations. Then, the total time required to transmit any available image data can be segmented according to the initial number of segmentations. To ensure data integrity, the transmission time of each segmented image must not be less than a preset minimum image data size; otherwise, the initial number of segmentations needs to be adjusted and recalculated. Finally, based on the above two requirements, the minimum number of initial segmentations that satisfies both requirements is selected as the minimum number of segmentations. The above is merely an illustrative example and does not limit all possible cases for calculating the minimum number of segmentations; it is simply not exhaustive.
[0073] The pre-segmented image dataset refers to the collection of image data generated after actually segmenting all available image data according to the minimum number of segmentations. The pre-segmented image dataset is the segmentation result before it has been assigned family attributes, and further processing is required to associate the segmented blocks with the source of their original image data.
[0074] In this embodiment, each available image in the available image dataset can first be segmented into several pre-segmented image data based on the calculated minimum number of segmentations. Specifically, during the segmentation process, it is necessary to ensure that the size of each pre-segmented image data is not less than the minimum image data size. Finally, all the segmented pre-segmented image data are integrated to generate a pre-segmented image dataset. At this point, the pre-segmented image data in the set has not yet established a clear association with the original available image data. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining the pre-segmented image dataset; it is simply not exhaustive.
[0075] In this embodiment of the disclosure, all pre-segmented image data derived from the same available image data in the pre-segmented image dataset can be assigned the same family attributes (such as image identifier, source information, etc.) to ensure that each pre-segmented image data can be traced back to its original available image data through the family attributes, and then the segmented image dataset is obtained for subsequent scheduling optimization. The above is only an illustrative example and is not intended to limit all possible cases of generating the segmented image dataset; it is simply not exhaustive.
[0076] Preferably, the method for obtaining the pre-segmented image dataset can also be as follows: First, the available image data is segmented into multiple pre-segmented image data using a fast segmentation operator, and all pre-segmented image data are integrated to obtain the pre-segmented image dataset. The fast segmentation operator can employ a minimum segmentation strategy to ensure that the transmission time of each segmented pre-segmented image data is not less than the preset minimum image data size. Then, an identifier is used to "bundle" all pre-segmented image data obtained after segmenting the same available image data. Ensuring that all pre-segmented image data of the same available image data are transmitted as a whole or not transmitted at all avoids image reconstruction failure due to omissions in some segmentations. By generating a unique family identifier for each available image data and assigning it to each pre-segmented image data segmented from that available image data to implement family attributes, it is ensured that the transmission effect of the available image data must be considered holistically during scheduling. In particular, the minimum number of segmentations for each available image data can be calculated using the following formula:
[0077]
[0078] In the formula, k represents the number of initial divisions, which is a positive integer; d(o) represents a positive integer; d(o) represents the time required for the available image data to be transmitted. This indicates the maximum allowed transmission duration for each visible time window; MSID indicates the minimum image data size.
[0079] In particular, in the formula This represents the theoretically required number of visible time windows, that is, the theoretically required number of visible time windows if the time required to complete the transmission of usable image data is evenly divided. In the formula, the condition... To ensure the transmission time of each segmented image data. The image data size must be no smaller than the preset minimum size to ensure data integrity.
[0080] In particular, if If we set s(o)=1, it means that the available image data does not need to be segmented and can be directly used as pre-segmented image data for subsequent steps.
[0081] In this way, by calculating the minimum number of segmentations to ensure the rationality of segmentation, the image is pre-segmented to generate compliant data blocks, and family attributes are assigned to preserve the correlation between the segmented blocks and the original image. The entire process effectively improves the efficiency of data segmentation, ensures the adaptability of segmented data transmission, and provides a clear logical relationship for subsequent scheduling and data reconstruction, ultimately significantly improving the overall performance of the scheduling system and the success rate of transmission.
[0082] In some embodiments, the preset scheduling constraints include: a visible time window capacity constraint and a setting time constraint; the visible time window capacity constraint can be determined by: determining the maximum allowable duration based on the visible time window data; constraining the total transmission duration of all segmented image data corresponding to the same available image data in any visible time window based on the maximum allowable duration to generate the visible time window capacity constraint; the setting time constraint can be determined by: obtaining the minimum setting time based on satellite parameters; constraining the interval time between adjacent visible time windows based on the minimum setting time to generate the time constraint.
[0083] The visible time window capacity constraint represents the maximum capacity that can be used to transmit data within the visible time window, i.e., it limits the transmission time of segmented image data so that it does not exceed the actual available time of the time window.
[0084] Setting time constraints refers to the time limit set for task switching or preparation operations (such as antenna adjustment or link switching) to ensure that the interval between adjacent visible time windows is sufficient for the necessary settings.
[0085] The maximum allowable duration refers to the maximum transmission time range within the visible time window. In this embodiment of the disclosure, it can be calculated based on the communication conditions and orbit between the satellite and the ground station, representing the theoretical upper limit of data that can be transmitted within this time period.
[0086] In this embodiment of the disclosure, the start time and end time of each visible time window can be obtained based on the visible time window data, thereby determining the maximum allowable duration of the visible time window, i.e., the longest time for which the satellite and the ground station can establish effective communication. The above is only an illustrative example and is not intended to limit all possible situations for determining the maximum allowable duration; it is simply not exhaustive.
[0087] The total transmission time refers to the total transmission time of all segmented image data within a certain visible time window.
[0088] In this embodiment of the disclosure, based on the maximum allowed duration and the segmented image dataset, all segmented image data with the same family attributes within a certain visual time window are statistically analyzed to calculate their total transmission duration. Finally, the total transmission duration is compared with the maximum allowed duration. If the total transmission duration exceeds the maximum allowed duration, it is restricted to ensure that data transmission within the time window is not overloaded, thus obtaining the visual time window capacity constraint.
[0089] Preferably, the total transmission time of all segmented image data of the same family attribute can be calculated by dividing the available image data into segments of the minimum number of segments, and calculating the transmission time of each segmented image data. The total transmission time of the available image data can be obtained by integrating the transmission times of all segmented image data. For example, the transmission time of each segmented image data can be expressed by the following formula:
[0090]
[0091] In the formula, This indicates the transmission time for each segmented image data.
[0092] Preferably, since the visible time window capacity constraint can represent that the total duration of data transmission within each visible time window must not exceed its maximum allowable duration, the visible time window capacity constraint can also be expressed by the following formula:
[0093]
[0094] In the formula, For decision variables; This indicates the transmission time of each segmented image data after the available image data has been segmented; Represents the set of visible time windows; Indicates the visible time window.
[0095] in, Let be a binary (0-1) decision variable, representing whether to allocate any segmented image data obtained after segmenting the original image data to any visible time window for transmission. The decision variable can be expressed by the following formula:
[0096]
[0097] The above is merely an illustrative example and does not constitute a limitation on all possible cases of generating a visible time window capacity constraint; it is simply not exhaustive.
[0098] The minimum setup time refers to the shortest time required for a satellite or ground station to complete communication link switching, antenna adjustment, or related task preparation.
[0099] In this embodiment, the minimum setup time can be calculated based on satellite parameters, such as antenna adjustment speed, link establishment time, and other hardware performance, as well as the operational capabilities of the ground station, to complete the shortest time required to establish a communication link or switch tasks. The above is merely an illustrative example and is not intended to limit all possible scenarios for obtaining the minimum setup time; it is simply not exhaustive.
[0100] Adjacent visible time windows refer to two consecutive visible time windows, which usually correspond to the time range in which the satellite establishes communication with the ground station at different times.
[0101] The interval time refers to the time interval between two adjacent visible time windows, which is usually used for task switching, setting operations, or waiting for the next window.
[0102] In this embodiment of the disclosure, setting a time constraint can be based on a minimum setting time, constraining the interval between two adjacent visible time windows, requiring the interval to be greater than or equal to the minimum setting time. If the interval is insufficient to complete the task switching or setting operation, the scheduling scheme needs to be adjusted to prevent conflicts between adjacent tasks and improve the stability of data transmission and the efficiency of task switching.
[0103] Preferably, to ensure sufficient setup time for the satellite to switch from one visible time window to the next, allowing for necessary activities such as antenna switching and attitude adjustment, a time constraint can be used to represent the reserved satellite antenna switching time that must be met between different visible time windows. For example, the setup time constraint can be expressed by the following formula:
[0104]
[0105] In the formula, Indicates the start time of each visible time window; Indicates the next adjacent visible time window; Indicates the end time of each visible time window; Indicates the preceding adjacent visible time window; This refers to the time reserved for setting up antenna pointing and system calibration when the antenna of a satellite or ground station switches from serving one satellite to another.
[0106] In particular, It can be expressed by the following formula:
[0107]
[0108] In the formula, This indicates the angle at which the antenna of the next transmission task is pointing; This indicates the angle at which the antenna was pointing in the previous transmission mission; This indicates the rotation rate of the ground station antenna.
[0109] For example, to simplify the model, it can be The value is set to 60 seconds.
[0110] The above is merely an illustrative example and is not intended to limit all possible scenarios for setting time constraints; it is simply not an exhaustive list.
[0111] Thus, by defining visible time window capacity constraints and setting time constraints, the data transmission duration and task switching time are reasonably limited, ensuring the scheduling scheme is practically feasible in terms of time and resources. Visible time window capacity constraints optimize the allocation and transmission efficiency of data blocks, preventing task failures due to overload. Setting time constraints provides the necessary operation time for switching between adjacent tasks, reducing link switching conflicts and transmission delays. The overall approach enhances the reliability and efficiency of the scheduling system.
[0112] In some embodiments, the preset scheduling constraints further include: uniqueness constraints and complete transmission constraints; constructing an initial population based on two-stage coding according to the segmented image dataset, the visible time window, and the preset scheduling constraints includes: randomly assigning binary codes to any available image data in the available image dataset according to the complete transmission constraints to obtain a one-stage code; wherein, when the binary code is 1, the corresponding available image data participates in transmission; when the binary code is 0, the corresponding available image data does not participate in transmission; determining whether each segmented image data participates in transmission based on the family attribute of any segmented image data in the segmented image dataset and according to the one-stage code; randomly assigning a visible time window number to each segmented image data participating in transmission using an integer vector according to the uniqueness constraints, the visible time window capacity constraints, and the setting time constraints to obtain a two-stage code; and constructing an initial population using the one-stage code and the two-stage code according to the uniqueness constraints and the complete transmission constraints.
[0113] The uniqueness constraint means that each segmented image data must be uniquely assigned to a visible time window for transmission, and cannot be repeatedly assigned or transmitted across multiple windows.
[0114] The complete transmission constraint requires that all segmented image data of the available image data must be transmitted completely to ensure that no data is missed.
[0115] In this embodiment of the disclosure, a uniqueness constraint can be used to indicate that each available image data or all its corresponding segmented image data is allowed to be transmitted only once in the scheduling scheme. For example, a uniqueness constraint can be expressed by the following formula:
[0116]
[0117]
[0118] In the formula, This represents segmented image data (corresponding to available image data).
[0119] Furthermore, the full transfer constraint can be used to indicate that only segmented image data that can be fully transferred within the visible time window is allowed to participate in scheduling. For example, the full transfer constraint can be expressed by the following formula:
[0120]
[0121] In the formula, Indicates by the first Available image data All segmented image data obtained from segmentation; Indicates the first Segmented image data; Indicates the first Transmission time of segmented image data; Indicates the first Available image data Whether it has been selected for transmission; Indicates the first Available image data Total transmission time; This represents the set of visible time windows, which is the total number of visible time windows to which segmented image data can be assigned.
[0122] In particular, The value can be 0 or 1, when When, it indicates the first Available image data Not involved in transmission; when When, it indicates the first Available image data Participate in transmission.
[0123] The above is merely an illustrative example and is not intended to limit all possible cases of obtaining uniqueness constraints and complete transport constraints; it is simply not an exhaustive list.
[0124] In this embodiment of the disclosure, a binary code can be randomly assigned to each available image data according to the available image dataset and the complete transmission constraints. This binary code of the available image data is used as a one-stage code. Specifically, when the assigned binary code is 1, it indicates that the available image data participates in transmission; when the assigned binary code is 0, it indicates that the available image data does not participate in transmission. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining a one-stage code; it is simply not exhaustive.
[0125] In this embodiment, all available image data to be transmitted can first be segmented according to the minimum number of segmentations to obtain a segmented image dataset. Then, based on family attributes, the segmented image dataset can be traversed, and based on the one-stage encoding of the available image data corresponding to each segmented image data, it can be determined whether each segmented image data participates in the transmission. The above is only an illustrative example and is not intended to limit all possible cases of determining whether each segmented image data participates in the transmission; it is simply not exhaustive.
[0126] Here, the integer vector refers to the use of integer values to represent the relationship between the segmented image data involved in transmission and its specific assigned visual time window. In this embodiment of the disclosure, each integer corresponds to a time window number, indicating which visual time window the segmented image data is assigned to for transmission.
[0127] The visible time window number refers to the specific number used to identify the visible time window, ensuring that the transmission task can be completed within a limited time range.
[0128] In this embodiment, an integer vector can be used to randomly assign a time window number to each segmented image data participating in transmission. Then, it is checked whether each assignment satisfies the uniqueness constraint, the visible time window capacity constraint, and the setting time constraint. If all constraints are satisfied, the number is assigned as the two-stage code. If any constraint is not satisfied, the assignment needs to be corrected until all constraints are satisfied, thus obtaining the two-stage code. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining the two-stage code; it is simply not exhaustive.
[0129] In this embodiment of the disclosure, an initial population can be constructed by combining one-stage coding and two-stage coding. Each individual in the population represents a scheduling scheme, which consists of one-stage coding and two-stage coding, representing a complete transmission scheduling, and all schemes satisfy the uniqueness constraint and the complete transmission constraint.
[0130] Preferably, the process of constructing the initial population based on two-stage coding can also be:
[0131] First, one-stage coding can use binary vectors to represent whether each available image data point is selected and its segmentation status. For example, one-stage coding can be represented by the following formula:
[0132]
[0133] In the formula, This is a one-stage encoding; N represents the amount of available image data; Indicates the first Whether available image data is involved in the transmission. The value can be 0 or 1, and In particular, when When, it indicates the first One available image data point is not involved in the transmission; when When, it indicates the first One available image data is used in the transmission.
[0134] Then, two-stage coding can use an integer vector to represent the visual time window number assigned to each segmented image data. For example, for all segmented image data involved in the transmission, two-stage coding can be represented by the following formula:
[0135]
[0136] In the formula, This indicates two-stage coding; Indicates the number of segmented image data items involved in the transmission; , Indicates the first Each segmented image data participating in the transmission is assigned a number to a visible time window.
[0137] Specifically, each visible time window in the set of visible time windows can be numbered. For example, the visible time window numbering can be... ,in This represents the total number of visible time windows in the set of visible time windows.
[0138] Finally, it can be generated based on the transmission status of each randomly determined available image data. And the generation of visual time window numbers randomly assigned to the segmented image data involved in transmission. Each allocation is checked to ensure it meets the visible time window capacity constraint, setting time constraint, uniqueness constraint, and complete transmission constraint. Allocations that do not meet the constraints are corrected until an initial population that meets the conditions is generated.
[0139] The above is merely an illustrative example and is not intended to limit all possible scenarios for constructing the initial population; however, it is not exhaustive.
[0140] Thus, by screening available image data through one-stage encoding and determining the transmission participation of segmented image data based on family attributes, and then allocating the visible time window through two-stage encoding, an initial population satisfying the uniqueness and complete transmission constraints is finally constructed. This method ensures the integrity, efficiency, and rationality of the transmission task, while optimizing the resource allocation scheme and providing a reliable basic input for subsequent optimization.
[0141] In some embodiments, based on uniqueness constraints, visible time window capacity constraints, and time constraints, an integer vector is used to randomly assign a visible time window number to each segmented image data participating in the transmission in the first-stage coding to obtain the second-stage coding. This includes: randomly assigning a visible time window number to each segmented image data participating in the transmission to obtain an integer vector code; organizing the integer vector code according to the uniqueness constraint to ensure that each segmented image data corresponds to a visible time window to obtain a unique integer vector code; and correcting the unique integer vector code according to the visible time window capacity constraint and time constraint to obtain the second-stage coding.
[0142] The segmented image data used for transmission is the segmented image data filtered through the first stage of coding, that is, all segmented image data used for the available image data pairs marked as 1 in the first stage of coding. These data blocks will be actually allocated to the visible time window for transmission.
[0143] In this process, integer vector encoding is the initial allocation result of the second stage. It assigns a visual time window number to each segmented image data participating in the transmission.
[0144] In this embodiment of the disclosure, all segmented image data participating in transmission can be selected from the one-stage encoding. Then, a visual time window number is randomly assigned to each segmented image data participating in transmission, generating an integer vector code. In particular, this allocation process does not consider constraints, only ensuring that the segmented image data participating in transmission is randomly assigned to a time window, providing candidate solutions for subsequent adjustments and optimizations. The above is merely an illustrative example and is not intended to limit all possible cases for obtaining integer vector codes; it is simply not exhaustive.
[0145] Among them, unique integer vector encoding is the result of organizing integer vector encoding, ensuring that each segmented image data is assigned to only one time window.
[0146] In this embodiment, the generated integer vector codes are traversed to check for duplicate allocations (i.e., the same data block is assigned to multiple time windows). If a duplicate allocation or conflict is found, the problematic allocation is removed, and the conflicting data block is randomly reassigned an unoccupied visible time window number to ensure that each segmented image data participating in transmission is assigned only one visible time window. Finally, an integer vector code conforming to the uniqueness constraint is generated. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining a unique integer vector code; it is simply not exhaustive.
[0147] In this embodiment, the allocated data volume for each visual time window is first calculated based on the capacity constraint. If the capacity limit is exceeded, some of the segmented image data participating in the transmission needs to be reallocated to other visual time windows to balance the load. Then, the switching time between adjacent visual time windows can be checked based on the set time constraints. If it is not sufficient, the allocation is readjusted to reduce conflicts or delays. Finally, a unique integer vector encoding that meets all requirements is used as the two-stage encoding.
[0148] The above is merely an illustrative example and is not intended to limit all possible cases of obtaining two-phase coding; it is simply not an exhaustive list.
[0149] Thus, through three steps of random allocation, organization, and correction, an allocation scheme that satisfies scheduling constraints is generated for the segmented image data participating in the transmission, ensuring that each segmented image data participating in the transmission can be effectively and accurately allocated to an appropriate time window. The method ensures that the allocation scheme not only meets the uniqueness constraint but also satisfies the requirements of time window capacity and switching time, thereby optimizing transmission efficiency, avoiding resource conflicts, and ensuring the smooth completion of the transmission task.
[0150] In some embodiments, based on a preset operator and an initial population, a differential evolution algorithm is used to optimize the bi-objective function to obtain a downlink scheduling scheme. This includes: performing a two-stage optimization on the initial population using the preset operator to obtain an optimized population; determining elite individuals and updating weights based on the optimized population; iteratively optimizing the optimized population using the updated weights until the number of iterations reaches a preset iteration threshold to obtain the final elite individuals; and decoding the final elite individuals to obtain the downlink scheduling scheme.
[0151] In this context, the preset operator refers to the operational rules or strategies used in the differential evolution algorithm to generate new solutions. In this embodiment, the preset operator may include an insertion operator, a mutation operator, a reordering operator, and a swapping operator.
[0152] Two-stage optimization refers to improving the solution step by step through two consecutive optimization processes, each targeting a different objective function or different constraints.
[0153] The optimized population refers to a set of candidate solutions obtained after two-stage optimization, which are closer to the optimal solution of the bi-objective function than the initial population.
[0154] In this embodiment, based on the initial population, during the first stage of optimization, coarse-grained optimization can be performed using differential mutation and crossover operators to ensure the population can explore the solution space and escape local optima as much as possible. Then, during the second stage of optimization, the objective function value can be further optimized through selection operators and refined search, gradually approaching the optimal solution of the biobjective function. Finally, an optimized population is obtained, which is a set of candidate solutions that are better than the initial population. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining the optimized population; it is simply not exhaustive.
[0155] Elite individuals refer to the best-performing individuals in the population, typically the current optimal solution obtained in the objective function optimization.
[0156] Among them, updating weights refers to dynamically adjusting weights based on the performance of elite individuals, which is used to control the impact of different objective functions on the optimization process.
[0157] In this embodiment, the best or second-best individual can first be selected as the elite individual based on the objective function performance of each individual in the optimization population. Then, the contribution of the elite individual to the dual objective function is calculated, and the weights are dynamically adjusted (e.g., through linear weighting, fuzzy logic, etc.) to adapt to the current optimization progress and objective requirements. Finally, updated weights are obtained. The population with updated weights exhibits further improved adaptability to the objective function, and the optimization direction becomes clearer. The above is merely an illustrative example and does not constitute a limitation on all possible scenarios for determining elite individuals and updating weights; it is simply not exhaustive.
[0158] The iteration threshold refers to the maximum number of iterations of the algorithm, which is used to control the stopping condition of the optimization process.
[0159] In this embodiment, updated weights can be used to guide differential mutation, crossover, and selection operations in each iteration to generate new candidate solutions. This allows for the gradual elimination of poorly performing individuals while retaining and improving better-performing ones, ensuring the population adapts to the optimization objective of the objective function. When the number of iterations reaches a preset iteration threshold, the loop terminates, and the best individual in the current population is output as the final elite individual. For example, a change magnitude can also be set as an iteration threshold. When the change magnitude of the optimization index is lower than the preset threshold for several consecutive generations, the algorithm is considered to have converged, the algorithm terminates, and the current elite solution is output. Specifically, a hypervolume (HV) index can also be set as an iteration threshold. When the HV index changes lower than the preset threshold for several consecutive generations, the algorithm terminates, and the current elite solution is output. The above are merely illustrative examples and are not intended to limit all possible scenarios for obtaining the final elite individual; an exhaustive list is not provided here.
[0160] Preferably, the process of determining elite individuals and updating weights based on the optimized population can also be as follows: First, optimize the initial population using preset operators and the operators of the current round to update weights. Then, update the optimized population using the Differential Evolutionary-Crowding Distance (DE-CD) algorithm, while simultaneously calculating the operator update weights for the next round. Use the resulting optimized population as the new initial population, and repeat the above optimization and update iterative process until a preset iteration threshold is reached. Finally, use the DE-CD algorithm to select non-dominant elite individuals, and simultaneously calculate the operator update weights for each iteration round. The operator update weights for each iteration round can be expressed by the following formula:
[0161]
[0162] In the formula, Indicates the first Update weights of operators in each iteration round; Indicates the first The weights of the operators in the previous iteration of each iteration; For the first Real-time scores of operators in each iteration round; This is the sum of real-time scores for all operators in the population; This is the sensitivity parameter. Specifically, the update weight of the operator in the first iteration can be set to 1.
[0163] Specifically, the real-time scores can be obtained from Table 1.
[0164] In particular, to balance "historical performance" and "real-time feedback", the sensitivity parameter can be set to 0.5. This means that the historical weight and the current score each account for half, which can both preserve the memory of the long-term validity of the operator and respond quickly to new environmental changes.
[0165] Table 1 Real-time Score Calculation Table
[0166]
[0167] In particular, Figure 2 This diagram illustrates a process for updating and optimizing a population using the DE-CD algorithm. Figure 2 As shown, it includes:
[0168] S201. Perform non-dominated sorting on the individuals in the initial population after operator optimization, and divide the population into several non-dominated layers.
[0169] For example, this ranking method can be based on the Pareto principle of multi-objective optimization, comparing each individual in the population with other individuals. If an individual is superior to another individual in all objectives, the former dominates the latter. Non-dominated ranking divides the initial population after operator optimization into multiple non-dominated layers (Pareto layers), with the earlier layers indicating better individual quality.
[0170] S202. Assign a crowding distance value to each individual within the non-dominated layer.
[0171] For example, individuals can be ranked according to their specific performance within the biobjective function, and the performance gap between each individual and its left and right neighbors can be calculated. These gaps are then summed to obtain the crowding distance value for that individual. The crowding distance for boundary individuals is set to infinity to ensure the priority preservation of boundary solutions.
[0172] S203. Prioritize individuals at the front of the non-dominated layer, and then for individuals within the same non-dominated layer, prioritize individuals with larger crowding distances until the number of selected individuals meets the demand.
[0173] S204. Integrate all selected non-dominant individuals to obtain an optimized population.
[0174] Decoding refers to converting the elite individuals (mathematical solutions) obtained by the differential evolution algorithm into actual downlink scheduling schemes.
[0175] In this embodiment of the disclosure, the final elite individual obtained by the optimization algorithm can be converted into an actual scheduling scheme. Exemplarily, the elite individual may be a resource allocation matrix, a time scheduling sequence, or a frequency band allocation scheme. In particular, the decoding process relies on specific rules and constraints of the scheduling problem to ensure that the output scheme can be directly applied to a real-world environment. The above is merely an illustrative example and is not intended to limit all possible cases of obtaining a downlink scheduling scheme; an exhaustive list is not provided here.
[0176] Thus, through the two-stage optimization of the differential evolution algorithm, combined with a dynamic weight update mechanism and iterative optimization process, complex dual-objective optimization problems can be effectively solved, generating efficient and optimized downlink scheduling schemes. The method possesses both global search and local optimization capabilities, enabling multi-objective balance in practical problems such as resource allocation and scheduling timing, thereby improving system resource utilization and transmission efficiency.
[0177] In some embodiments, the preset operators include: an insertion operator, a mutation operator, a reordering operator, and a swapping operator; the preset operators are used to perform two-stage optimization on the initial population to obtain an optimized population, including: performing a one-stage optimization on the initial population according to the insertion operator and the mutation operator to obtain a one-stage optimized population; and performing a two-stage optimization on the one-stage optimized population according to the reordering operator and the swapping operator to obtain an optimized population.
[0178] The insertion operator is an optimization operation that improves the quality of a solution by inserting a new element at a certain position or adjusting the position of existing elements. In this embodiment, the insertion operator is used for global optimization, helping the population explore new solution spaces and avoid getting trapped in local optima.
[0179] Mutation operators are random mutation operations that increase population diversity by changing certain parameters or elements of the solution. In this embodiment, mutation operators are used for global search, helping the population escape local optima and improving the algorithm's exploration capabilities.
[0180] The reordering operator is an adjustment operation that optimizes the solution structure by changing the order of elements in the solution. In this embodiment, the reordering operator is used for refinement optimization, which can improve the performance of the solution and satisfy specific constraints.
[0181] The exchange operator is an operation that optimizes the arrangement of solutions by swapping the positions of two elements. In this embodiment, the exchange operator is used for fine-tuning optimization, which can further improve the quality of the solution or adjust unreasonable solution structures.
[0182] The first-stage optimization refers to using insertion and mutation operators to perform coarse-grained optimization on the initial population, generating more promising candidate solutions. In this embodiment, during this stage, the population undergoes global search and local adjustments to initially improve the quality of the solutions.
[0183] The first-stage optimized population refers to the population optimized by the insertion operator and the mutation operator, which contains a set of preliminary improved candidate solutions.
[0184] In this embodiment, an insertion operator can be used first to insert an element into each candidate solution in the initial population. For example, a new element can be inserted at a certain position in the solution, or an element can be inserted from one position to another. The insertion operation encourages the solution to better adapt to the objective function locally. Then, a mutation operator can be used to randomly select some elements in the solution and perform random mutations on their parameters or positions. The mutation operation increases the diversity of the population, ensuring that the population can explore more solution spaces and avoid premature convergence. Finally, through joint optimization of insertion and mutation, a one-stage optimized population is obtained, initially improving the quality of the solutions. The above is merely an illustrative example and is not intended to limit all possible cases for obtaining a one-stage optimized population; it is simply not exhaustive.
[0185] The second-stage optimization involves using reordering and exchange operators to refine the first-stage optimization population, further improving the quality of the solution. In this embodiment, the population undergoes local fine-tuning and structural optimization during this stage, ultimately generating an optimized population.
[0186] In this embodiment, a reordering operator can first be used to reorder the candidate solutions in the first-stage optimization population, changing the order of elements within the solution. The reordering operation refines the structure of the candidate solutions, making them more consistent with the objective function or constraints. Then, a swap operator can be used to exchange the positions of two elements in the solution. This swap operation further optimizes the arrangement of the solutions and improves their local quality. For example, the temporal order of resource allocation or the order of task scheduling can be swapped. Finally, through the refinement and optimization of reordering and swapping, an optimization population is generated, and the final solution is closer to the global optimum.
[0187] Preferably, the two-stage optimization process can also be:
[0188] One-stage optimization can employ insertion and mutation operators to adjust the one-stage encoding of the initial population, determining whether each available image data should be transmitted and its optimal segmentation count. For example, during one-stage optimization, the insertion operator can be used to set untransmitted available image data to participate in transmission with an insertion probability, and the minimum segmentation count can be recalculated. Specifically, the insertion probability can be assigned a value of 0.4, based on which the one-stage encoding of untransmitted available image data is changed from 0 to 1, and the minimum segmentation count is recalculated accordingly. Further, during one-stage optimization, the mutation operator can be used to randomly flip the one-stage encoding of some available image data or adjust the segmentation count of available image data with a mutation probability. Specifically, the mutation probability can be assigned a value of 0.8, based on which the one-stage encoding of transmitted available image data is flipped from 1 to 0, or the minimum segmentation count of transmitted available image data that still meets the minimum image data size requirement is fine-tuned within the range of the segmentation count condition. Finally, the adjusted one-stage optimized population is obtained. The above-mentioned first-stage optimization process can enhance population diversity and optimize the global segmentation scheme.
[0189] For example, the new one-stage code after one-stage optimization can be represented by the following formula:
[0190]
[0191] In the formula, This indicates a new stage of coding after one stage of optimization. It is a random perturbation vector whose elements follow a Bernoulli distribution, which can control the probability of insertion and mutation.
[0192] Then, the two-stage optimization can optimize the allocation of segmented image data within the visible time window by employing reordering and swapping operators for the two-stage encoding of the initial population. For example, during the one-stage optimization process, the reordering operator can be used to arrange segmented image data with the same family attributes in consecutive visible time windows to reduce setup time. Furthermore, during the one-stage optimization process, the swapping operator can be used to randomly swap the visible time window numbers of two segmented image data sets to further improve local scheduling. Specifically, randomly selecting two segmented image data sets and swapping their visible time window numbers can explore better local scheduling combinations. Finally, based on the two-stage optimization process and combined with the one-stage optimization results, the optimized population after the two-stage optimization is obtained.
[0193] The above is merely an illustrative example and is not intended to limit the possibilities of obtaining an optimized population; it is simply not an exhaustive list.
[0194] Thus, through joint optimization using insertion, mutation, reordering, and swap operators, the population quality is gradually improved, achieving a two-stage optimization process from coarse-grained to fine-grained optimization. This method effectively enhances the population's search capability and the quality of the solutions, ensuring that the final optimized population possesses both global exploration capabilities and the ability to meet local fine-tuning needs, thereby providing an efficient and high-quality solution for complex scheduling problems.
[0195] In some implementations... Figure 3 This diagram illustrates a process for obtaining the final elite solution using the differential evolution algorithm, as shown below. Figure 3 As shown, it includes:
[0196] S301. Substitute the initial population into the objective function and calculate the fitness of each individual.
[0197] For example, the specific performance of each individual in the initial population can be calculated based on a bi-objective function, and the specific performance of each individual can be used as the fitness of the individual.
[0198] S302. Check if the iteration threshold is met. If not, continue with the subsequent steps. If yes, proceed to step S309.
[0199] S303. Randomly select the required number of individuals from the current population as the target vector.
[0200] S304. Based on the differential mutation algorithm, the corresponding mutation vector is calculated based on any target vector.
[0201] S305. Compare the value of each target vector with its corresponding mutation vector, and generate the corresponding test vector according to the crossover probability.
[0202] S306. Map each trial vector to the objective function and calculate the fitness of each trial vector.
[0203] S307. Compare the fitness of each trial vector with its corresponding target vector and select the vector with higher fitness as each update vector.
[0204] S308. Replace the corresponding target vector with each update vector to update the current population and obtain the optimized population. Then, execute step S302 on the optimized population.
[0205] S309. Select the optimal solution from the current population that satisfies the iteration threshold, and end the algorithm.
[0206] It should be understood that Figure 2 and Figure 3 The schematic diagrams shown are merely illustrative and not limiting, and are scalable; those skilled in the art can use them as a basis. Figure 2 and Figure 3Even with various obvious changes and / or substitutions to the examples, the resulting technical solutions still fall within the scope of this disclosure.
[0207] Example 2:
[0208] This disclosure provides a satellite image data downlink scheduling system, such as... Figure 4 As shown, the system may include: a time window determination module 401, used to determine the visible time window data based on satellite parameters and ground station parameters; an original image segmentation module 402, used to segment each available image data in the available image dataset and assign family attributes according to a preset minimum image data size and visible time window data to obtain a segmented image dataset; an initial population construction module 403, used to construct an initial population based on two-stage coding according to the available image dataset, segmented image dataset, visible time window data and preset scheduling constraints; the initial population includes one-stage coding and two-stage coding; and a scheduling scheme generation module 404, used to optimize the bi-objective function using a differential evolution algorithm based on preset operators and the initial population to obtain a downlink scheduling scheme.
[0209] In some embodiments, the satellite image data downlink scheduling system further includes a data acquisition module ( Figure 4 (Not shown in the image) is used to filter the original image data based on the minimum image data size, remove data with insufficient data volume, and generate a usable image dataset.
[0210] In some embodiments, the original image segmentation module 402 includes: a minimum segmentation submodule, used to calculate the minimum number of segmentations for each available image data in the available image dataset based on the minimum image data size and the visible time window data; a pre-segmentation submodule, used to segment the available image data according to the minimum number of segmentations to obtain a pre-segmented image dataset; and a family attribute submodule, used to assign a unified family attribute to the segmented image data corresponding to the same available image data based on the pre-segmented image dataset, thereby generating a segmented image dataset.
[0211] In some embodiments, the satellite image data downlink scheduling system includes a scheduling constraint module ( Figure 4 (Not shown in the image). The scheduling constraint module includes: a capacity constraint submodule, used to determine the maximum allowable duration based on the visible time window data; and, based on the maximum allowable duration, to constrain the total transmission duration of all segmented image data corresponding to the same available image data within any visible time window, generating a visible time window capacity constraint. The minimum setting time is obtained based on satellite parameters. A time constraint submodule is used to constrain the interval time between adjacent visible time windows based on the minimum setting time, generating a setting time constraint.
[0212] In some embodiments, the scheduling constraint module further includes a uniqueness constraint submodule and a transmission constraint submodule. The initial population construction module 403 includes: a one-stage encoding submodule, used to randomly assign binary codes to any available image data in the available image dataset according to the complete transmission constraint, to obtain a one-stage code; wherein, when the binary code is 1, the corresponding available image data participates in transmission; when the binary code is 0, the corresponding available image data does not participate in transmission. A transmission determination submodule, used to determine whether each segmented image data participates in transmission based on the family attributes of any segmented image data in the segmented image dataset, according to the one-stage code. A two-stage encoding submodule, used to randomly assign a visual time window number to each segmented image data participating in transmission using an integer vector according to the uniqueness constraint, the visual time window capacity constraint, and the setting time constraint, to obtain a two-stage code. A population construction submodule, used to construct an initial population using the one-stage and two-stage codes according to the uniqueness constraint and the complete transmission constraint.
[0213] In some embodiments, the two-stage coding submodule is used to randomly assign a visible time window number to each segmented image data participating in transmission to obtain an integer vector code; according to the uniqueness constraint, the integer vector code is sorted to ensure that each segmented image data corresponds to a visible time window to obtain a unique integer vector code; according to the visible time window capacity constraint and the setting time constraint, the unique integer vector code is corrected to obtain the two-stage code.
[0214] In some embodiments, the scheduling scheme generation module 404 includes: an optimization population submodule, used to perform two-stage optimization on an initial population using preset operators to obtain an optimized population; an iterative optimization submodule, used to determine elite individuals and update weights based on the optimized population; an elite individual submodule, used to iteratively optimize the optimized population using the updated weights until the number of iterations reaches a preset iteration threshold to obtain the final elite individuals; and a scheme decoding submodule, used to decode the final elite individuals to obtain a downlink scheduling scheme.
[0215] In some embodiments, the population optimization submodule is used to perform one-stage optimization on the one-stage coding in the initial population according to the insertion operator and the mutation operator to obtain a one-stage optimized population; and to perform two-stage optimization on the two-stage coding in the one-stage optimized population according to the reordering operator and the exchange operator to obtain an optimized population.
[0216] The specific functions and examples of each module and submodule of the system in this disclosure embodiment can be found in the relevant descriptions of the corresponding steps in the above method embodiments, and will not be repeated here.
[0217] This disclosure discloses a satellite image data downlink scheduling system that decomposes a complex scheduling problem into two relatively simple sub-problems through global segmentation scheme optimization and local scheduling optimization, thereby improving problem-solving efficiency. The definition of a dual objective function ensures that the scheduling scheme balances task completion rate and execution efficiency, guaranteeing efficient task completion under limited resources and time constraints. Through reasonable time window calculation, data segmentation, initial population generation, and optimization iteration, this method ultimately achieves an efficient and reliable satellite image data downlink scheduling scheme, meeting the efficiency and robustness requirements of modern satellite communication missions.
[0218] Example 3:
[0219] According to embodiments of this disclosure, this disclosure also provides a satellite image data downlink scheduling device.
[0220] Figure 5 A schematic block diagram of apparatus 500 that can be used to implement embodiments of the present disclosure is shown. It is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers, and may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0221] like Figure 5 As shown, the device 500 includes a computing unit 501, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. The RAM 503 may also store various programs and data required for the operation of the device 500. The computing unit 501, the ROM 502, and the RAM 503 are interconnected via a bus 504. An I / O (input / output) interface 505 is also connected to the bus 504.
[0222] Multiple components in device 500 are connected to I / O interface 505, including: input unit 506, such as keyboard, mouse, etc.; output unit 507, such as various types of displays, speakers, etc.; storage unit 508, such as disk, optical disk, etc.; and communication unit 509, such as network card, modem, wireless transceiver, etc. Communication unit 509 allows device 500 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0223] The computing unit 501 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. The computing unit 501 performs the various methods and processes described above, such as satellite image data downlink scheduling methods. For example, in some embodiments, the multi-label feature selection method can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 508. In some embodiments, part or all of the computer program can be loaded and / or installed on device 500 via read-only memory 502 and / or communication unit 509. When the computer program is loaded into random access memory 503 and executed by computing unit 501, one or more steps of the multi-label feature selection method described above can be performed. Alternatively, in other embodiments, computing unit 501 may be configured to perform a satellite image data downlink scheduling method by any other suitable means (e.g., by means of firmware).
[0224] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0225] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory (EPROM), flash memory, optical fiber, compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0226] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0227] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0228] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for downlink scheduling of satellite image data, characterized in that, The method includes: Based on satellite parameters and ground station parameters, determine the visible time window data; Based on the preset minimum image data size and the visible time window data, each available image data in the available image dataset is segmented and assigned a family attribute to obtain a segmented image dataset; wherein, the family attribute refers to the identifier for binding and managing all segmented image data obtained after segmenting any available image data, which is used to ensure that all segmented image data of the same available image data are transmitted as a whole. Based on the minimum image data size and the visible time window data, calculate the minimum number of segmentations for each available image data in the available image dataset; The available image data is segmented according to the minimum number of segmentations to obtain a pre-segmented image dataset; Based on the pre-segmented image dataset, segmented image data corresponding to the same available image data are assigned a unified family attribute to generate the segmented image dataset. Based on the available image dataset, the segmented image dataset, the visual time window data, and the preset scheduling constraints, an initial population is constructed based on two-stage coding; the initial population includes one-stage coding and two-stage coding. The preset scheduling constraints include: visible time window capacity constraints and setting time constraints; The visual time window capacity constraint is determined in the following way: Based on the visible time window data, determine the maximum allowable duration; Based on the maximum allowed duration, the total transmission duration of all segmented image data corresponding to the same available image data in any visible time window is constrained to generate the visible time window capacity constraint. The time constraint is determined in the following way: Based on the satellite parameters, the minimum setup time is obtained; Based on the minimum setting time, the interval time between adjacent visible time windows is constrained to generate the setting time constraint; The preset scheduling constraints also include: uniqueness constraints and complete transmission constraints; The step of constructing an initial population based on two-stage coding according to the segmented image dataset, the visual time window, and preset scheduling constraints includes: According to the complete transmission constraint, a binary code is randomly assigned to any available image data in the available image dataset to obtain the first-stage encoding; wherein, when the binary code is 1, the corresponding available image data participates in the transmission; when the binary code is 0, the corresponding available image data does not participate in the transmission. Based on the family attributes of any segmented image data in the segmented image dataset, and according to the first-stage encoding, it is determined whether each segmented image data participates in the transmission. Based on the uniqueness constraint, the visible time window capacity constraint, and the setting time constraint, an integer vector is used to randomly assign a visible time window number to each segmented image data participating in transmission, resulting in the two-stage encoding, specifically including: Each segmented image data participating in transmission is randomly assigned a visual time window number to obtain an integer vector code; Based on the uniqueness constraint, the integer vector code is organized to ensure that each segmented image data corresponds to a visual time window, thus obtaining a unique integer vector code; Based on the visible time window capacity constraint and the set time constraint, the unique integer vector encoding is modified to obtain the two-stage encoding; Based on the uniqueness constraint and the complete transmission constraint, the initial population is constructed using the one-stage coding and the two-stage coding. Based on the preset operator and the initial population, the biobjective function is optimized and solved using the differential evolution algorithm to obtain the downlink scheduling scheme.
2. The method according to claim 1, characterized in that, The available image dataset was determined in the following way: Based on the minimum image data size, the original image data is filtered to remove data with insufficient data volume, thereby generating the usable image dataset.
3. The method according to claim 1, characterized in that, The step of optimizing the biobjective function using a differential evolution algorithm based on a preset operator and the initial population to obtain a downlink scheduling scheme includes: The initial population is optimized in two stages using the preset operator to obtain an optimized population; Based on the optimized population, elite individuals are identified and their weights are updated; The optimized population is iteratively optimized using the updated weights until the number of iterations reaches a preset iteration threshold, thus obtaining the final elite individuals. The downlink scheduling scheme is obtained by decoding the final elite individual.
4. The method according to claim 3, characterized in that, The preset operators include: insertion operator, mutation operator, reordering operator, and exchange operator; The step of performing a two-stage optimization of the initial population using the preset operator to obtain an optimized population includes: Based on the insertion operator and the mutation operator, the one-stage encoding in the initial population is optimized in one stage to obtain a one-stage optimized population. Based on the reordering operator and the exchange operator, the two-stage encoding in the first-stage optimized population is optimized in two stages to obtain the optimized population.
5. A satellite image data downlink scheduling system employing the method described in any one of claims 1-4, characterized in that, include: The time window determination module is used to determine the visible time window data based on satellite parameters and ground station parameters; The original image segmentation module is used to segment each available image data in the available image dataset and assign family attributes according to the preset minimum image data size and the visible time window data, so as to obtain the segmented image dataset; An initial population construction module is used to construct an initial population based on two-stage coding according to the available image dataset, the segmented image dataset, the visual time window data, and preset scheduling constraints; the initial population includes one-stage coding and two-stage coding; The scheduling scheme generation module is used to optimize the bi-objective function using the differential evolution algorithm based on the preset operator and the initial population to obtain the downlink scheduling scheme.
6. A satellite image data downlink scheduling device, characterized in that, include: At least one processor; as well as A memory that is communicatively connected to at least one processor; wherein, The memory stores instructions that can be executed by at least one processor to enable the at least one processor to perform the method as described in any one of claims 1-4.
Citation Information
Patent Citations
To-be-observed task determination method for multi-satellite synergistic earth observation
CN104680238A
Heterogeneous satellite cluster autonomous measurement and control resource allocation method, system and equipment
CN120509668A