Remote sensing satellite task regulation method, device and equipment
By dynamically adjusting the priority and resource allocation of remote sensing satellite mission requests, the problems of low resource utilization and poor mission execution efficiency under the static allocation method are solved, realizing efficient resource utilization and flexible mission scheduling, and improving the mission execution capability of remote sensing satellites.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZHEJIANG LAB
- Filing Date
- 2026-02-12
- Publication Date
- 2026-05-29
Smart Images

Figure CN122114495A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of remote sensing satellite technology, and in particular to a method, apparatus and equipment for remote sensing satellite mission control. Background Technology
[0002] As remote sensing satellite missions become increasingly complex and diverse, the efficient and precise allocation of limited satellite resources has become crucial for enhancing mission execution capabilities.
[0003] Currently, most remote sensing satellite resource scheduling systems adopt a static allocation method, which pre-sets the allocation plan for resources such as energy, storage, and orbital positions, and executes the plan according to the established schedule during mission execution.
[0004] However, this static allocation cannot cope with resource competition, schedule deviations, and abnormal consumption in actual execution, resulting in low resource utilization and poor task execution efficiency. Summary of the Invention
[0005] This application provides a remote sensing satellite mission control method, apparatus, and equipment, which solves the technical problems of low resource utilization and low mission execution efficiency during remote sensing satellite mission control. It achieves the effect of improving onboard resource utilization and mission execution efficiency through reasonable mission control and resource allocation under the limited resource conditions of remote sensing satellites.
[0006] To achieve the above objectives, the main technical solutions adopted in this application include: In a first aspect, embodiments of this application provide a remote sensing satellite mission control method, the method comprising: Based on the currently available resources of the remote sensing satellite and the execution information of historical tasks corresponding to the task requests stored in the remote sensing satellite, the priority of the task requests to be executed in the remote sensing satellite is adjusted. After adjusting the priority of the task request to be executed in the remote sensing satellite according to the task request, the currently available resources of the remote sensing satellite are allocated to the task request, and then the task request is executed.
[0007] Secondly, embodiments of this application provide a remote sensing satellite mission control device, the method comprising: The adjustment module is used to adjust the priority of the task requests to be executed in the remote sensing satellite based on the current available resources of the remote sensing satellite and the execution information of the historical tasks corresponding to the task requests stored in the remote sensing satellite. The execution module is used to allocate the currently available resources of the remote sensing satellite to the task request according to the adjusted priority of the task request to be executed in the remote sensing satellite, and then execute the task request.
[0008] Thirdly, embodiments of this application provide a computer device, including: a memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the computer instructions to perform the method described in any of the above embodiments.
[0009] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer instructions, which are used to cause a computer to perform the method described in any one of the above embodiments.
[0010] Fifthly, embodiments of this application provide a computer program product, including computer instructions, which are used to cause a computer to perform the method described in any of the above embodiments.
[0011] This application achieves maximum efficiency in satellite mission execution under limited resource conditions through refined resource allocation and mission scheduling strategies. Furthermore, the resource allocation plan in this application ensures that energy, storage, and orbital resources are rationally allocated to each mission according to priority and resource requirements, avoiding resource waste and excessive competition. Simultaneously, this application can also flexibly optimize resource usage based on actual execution conditions through real-time monitoring and dynamic adjustments, ensuring efficient mission completion.
[0012] This application enables timely detection of deviations in mission execution by real-time monitoring of mission execution status and resource consumption. Furthermore, through deviation assessment and dynamic reallocation, it allows for adaptive adjustments to mission scheduling and resource allocation based on actual mission performance. This closed-loop feedback mechanism enables satellite missions to flexibly respond to complex and changing environments, ensuring that each mission is completed on time within actual resource constraints.
[0013] This application effectively reduces uncertainty in mission execution and improves the reliability of satellite missions through precise execution of autonomous control strategies and real-time deviation assessment. Specifically, the ability to dynamically reallocate and optimize mission sequences enables the system to promptly resolve resource conflicts and mission delays, further enhancing its adaptability to different mission requirements and resource conditions. This technical solution not only ensures the smooth execution of high-priority missions but also improves the flexibility and reliability of the entire mission execution process by optimizing resource allocation and adjustment strategies. Attached Figure Description
[0014] To more clearly illustrate the technical solutions in the specific embodiments of this application or 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 this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0015] Figure 1 A flowchart illustrating a remote sensing satellite mission control method provided in this application embodiment; Figure 2 A flowchart illustrating a remote sensing satellite mission control method provided in this application embodiment; Figure 3 A structural diagram of a remote sensing satellite mission control device provided in an embodiment of this application; Figure 4 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation
[0016] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0017] This application provides a method for controlling a remote sensing satellite mission. This method can be applied to computer equipment on a remote sensing satellite. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed on the computer equipment via a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here. The computer equipment can be a terminal device with computing capabilities installed on the remote sensing satellite.
[0018] Figure 1 A flowchart of a remote sensing satellite mission control method provided in this application embodiment is shown below. Figure 1 As shown, with a computer device as the execution subject, the process includes the following steps: S101. Based on the currently available resources of the remote sensing satellite and the execution information of historical tasks corresponding to the task requests stored in the remote sensing satellite, adjust the priority of the task requests to be executed in the remote sensing satellite.
[0019] For example, the computer device first obtains the currently available resources of the remote sensing satellite at the current moment. The computer device can also obtain the task requests to be executed by the remote sensing satellite at the current moment. The computer device may also store execution information of historical tasks performed by the remote sensing satellite.
[0020] Computer equipment can comprehensively consider the current available resources of remote sensing satellites and dynamically adjust the priority of pending task requests to prioritize tasks with sufficient resources. Furthermore, the computer equipment can comprehensively consider historical task execution information corresponding to the task requests and dynamically adjust the priority of pending task requests to prioritize tasks with higher efficiency and better execution results. Dynamically adjusting the priority of pending task requests based on current available resources and historical task execution information ensures that subsequent resource allocation is used for tasks with higher execution efficiency, thus making task execution more rational and efficient.
[0021] In one implementation, the currently available resources of a remote sensing satellite refer to the various resources that the satellite can use to perform its mission at the current moment. For example, these resources may include energy levels, storage space, and orbital position. Currently available resources may include currently available energy, currently available storage, and currently available orbital position.
[0022] In one implementation, the execution information of the historical tasks corresponding to the task request includes the execution information of historical tasks related to the task request within a preset time period in the past.
[0023] Optionally, the historical task associated with the task request can be a historical task with the same task content as the task request. Alternatively, the historical task associated with the task request can be a historical task with the same task type as the task request.
[0024] Optionally, the task type may include imaging observation tasks, data transmission tasks, and on-orbit processing tasks, etc.
[0025] Optionally, the execution information of historical tasks may include task execution time, resource consumption, task completion status, etc.
[0026] In one implementation, the priority of the task request to be executed is a parameter used to measure the importance of different task requests during execution.
[0027] Optionally, each task request can be set with a preset priority during generation. In this embodiment, this priority can be updated to obtain an updated priority.
[0028] Optionally, the priority can be a numerical value, such as 1, 2, 3, 4, etc. 1 has the highest priority, with the priorities decreasing from 2 to 4. Optionally, the initial priority setting can be a positive integer.
[0029] In one implementation, the computer device can be configured with corresponding calculation formulas to calculate adjustment parameters based on currently available resources and historical task execution information. Then, the priority of task requests can be adjusted based on these adjustment parameters.
[0030] In another implementation, the computer device can predict a priority adjustment value based on parameters extracted from currently available resources and historical task execution information using a pre-defined network model. Then, based on this priority adjustment value, the priority of task requests can be adjusted.
[0031] S102. After adjusting the priority of the pending task requests in the remote sensing satellite, allocate the currently available resources of the remote sensing satellite to the task requests and then execute the task requests.
[0032] For example, after adjusting the priorities of pending task requests on the remote sensing satellite, the computer device allocates the satellite's currently available resources to each task request according to the adjusted priority order. The computer device then executes these task requests sequentially according to the allocation results.
[0033] In one implementation, the adjusted priority of the task request to be executed is the priority of each task request obtained after processing in step S101.
[0034] In one implementation, resource allocation refers to allocating satellite resources such as energy, storage space, and orbital position to various mission requests according to certain rules in order to meet the needs of mission execution.
[0035] In one implementation, executing a task request refers to the remote sensing satellite performing data acquisition, processing, and transmission operations according to the specific requirements of the task based on the allocated resources.
[0036] In one implementation, for task requests with different priorities, the computer device can allocate resources to the task requests with higher priorities first. For task requests with the same priority, the computer device can allocate resources sequentially according to the order in which the task requests were created.
[0037] In one implementation, when allocating resources, the computer device can allocate resources sequentially from the currently available resources based on the type and quantity of resources required by the task request.
[0038] In another implementation, when allocating resources, the computer device can reserve a certain proportion of resources for high-priority task requests based on the importance of different priority task requests. When a high-priority task request arrives, it is allocated directly from the reserved resources; for low-priority task requests, the remaining available resources are used for allocation.
[0039] In another implementation, the computer device can monitor the task's progress and resource usage in real time during task execution, and dynamically adjust resource allocation based on the actual situation. For example, if a task is progressing quickly and using resources efficiently, its resource allocation can be increased appropriately. Conversely, if a task encounters difficulties or suffers significant resource waste, its resource allocation can be reduced, and resources can be reallocated to other more needed task requests.
[0040] In this embodiment, by dynamically adjusting the priority of pending task requests based on the currently available resources of the remote sensing satellite and the historical task execution information corresponding to the task requests, and allocating resources to the task requests according to the adjusted priority, the execution of remote sensing satellite task requests is made more rational and efficient, thereby improving resource utilization and task execution efficiency. Furthermore, this design can also enhance the capabilities of the remote sensing satellite, thereby improving its utilization efficiency.
[0041] In one example, in step S101 above, based on the currently available resources of the remote sensing satellite and the execution information of historical tasks corresponding to the task requests stored in the remote sensing satellite, the priority of the task requests to be executed in the remote sensing satellite is adjusted, including: S1011. Based on the currently available resources of the remote sensing satellite and the resource requirements of the task requests to be executed in the remote sensing satellite, determine the priority adjustment value of the task requests.
[0042] For example, the computer device first focuses on the current available resources of the remote sensing satellite, and at the same time considers the specific resource requirements of the pending task requests on the remote sensing satellite. By calculating whether various resources are sufficient, the priority adjustment value of each task request is determined, thereby ensuring that subsequent task requests with sufficient resources are executed first, and improving the rationality and pertinence of resource allocation and task execution.
[0043] In one implementation, the currently available resources of the remote sensing satellite include its energy, storage space, orbital position, etc.
[0044] In one implementation, the resource requirements of the task to be executed refer to the specific requirements of each task for energy, storage space, and orbital position during execution.
[0045] In one implementation, the priority adjustment value is a numerical value that reflects the extent to which the task priority should be adjusted based on the current resource and task resource requirements.
[0046] In one implementation, the computer device first calculates the total amount of various types of available resources and the demand of each task request for each type of resource, calculates the supply-demand ratio of each task request for each type of resource, and then obtains the priority adjustment value based on these ratios through weighted summation and other methods.
[0047] In another implementation, the computer device can adjust the priority value based on the proportion of a task request's demand for a resource in the current availability of that resource, and when the proportion exceeds a certain threshold.
[0048] S1012. Based on the execution information of historical tasks corresponding to task requests stored in remote sensing satellites, determine the priority weight of task requests.
[0049] For example, the computer device performs in-depth analysis of the execution information of historical tasks corresponding to the current pending task request stored in remote sensing satellites, and predicts the possible execution scenarios of the current task request based on this. Furthermore, based on the predicted execution scenarios, the computer device can determine the priority weight of the task request, so as to give higher priority to task requests with better expected execution scenarios.
[0050] In one implementation, the execution information of historical tasks corresponding to the task requests stored in the remote sensing satellite includes data on resource consumption, task completion time, task completion quality, and whether any failures occurred when similar tasks were performed in the past.
[0051] In one implementation, the priority weight is a numerical value. A higher priority weight indicates better execution of the task request.
[0052] Optionally, "good performance" can be specifically defined as high execution efficiency, low resource consumption, and high completion quality.
[0053] Optionally, the computer device can calculate a value based on the execution information of the historical task to predict the execution status of the current task request. The higher the execution status value, the higher the efficiency of the current task request, the less resource consumption, and the higher the completion quality.
[0054] In one implementation, the computer device can use a deep learning model to process and obtain a value that indicates the execution status of the current task request based on the execution information of multiple historical tasks.
[0055] In another implementation, the computer device can use a preset calculation formula to calculate quantitative values of resource consumption, task completion time, task completion quality, and whether a fault occurred in the execution information of multiple historical tasks, and obtain a value to indicate the execution status of the current task request.
[0056] In one implementation, the computer device can process and obtain the priority weight based on the numerical value of the current task request's execution status.
[0057] Alternatively, this processing method can be standardization, normalization, etc.
[0058] S1013. Adjust the priority of pending task requests in remote sensing satellites according to the priority adjustment value and priority weight.
[0059] For example, after obtaining the priority adjustment value and priority weight of each task request, the computer device uses a preset calculation formula to perform a comprehensive calculation with the priority of the task request to obtain the adjusted priority of each task request.
[0060] In one implementation, the adjusted priority is the final priority order value of task execution determined after comprehensively considering resource requirements and historical execution information.
[0061] In one implementation, the computer device multiplies the priority adjustment value of a task request by its corresponding priority weight, and then adds the product to the initial preset priority of the task request to obtain the adjusted priority.
[0062] In another implementation, the computer device can first add the priority adjustment value to the initial preset priority of the task request, and then multiply it by its corresponding priority weight to obtain the adjusted priority.
[0063] In another implementation, the computer device can first calculate the product of the initial preset priority of the task request and the priority weight, and then add the priority adjustment value to the product to obtain the adjusted priority.
[0064] In this example, the priority of remote sensing satellite mission requests is adjusted by combining the current available resources of the remote sensing satellite with the resource requirements of the mission to be executed, determining the priority adjustment value based on historical mission execution information, and comprehensively adjusting the mission priority. This allows mission requests with sufficient resources and good execution results to be executed first, thereby improving the execution efficiency of mission requests.
[0065] In one example, in step S1011 above, based on the currently available resources of the remote sensing satellite and the resource requirements of the task request to be executed on the remote sensing satellite, the priority adjustment value of the task request is determined, including: S10111. Based on the cumulative value of the resource requirements requested by each task and the currently available resources, calculate the resource conflict severity index.
[0066] For example, the computer device first performs a comprehensive statistical analysis of the resource requirements for all pending tasks on the remote sensing satellite, summing up the quantities of different types of resources required for all task requests to obtain a total cumulative demand value for each type of resource. Then, the computer device compares the total cumulative demand value for each type of resource with the currently available resources for each type of resource on the remote sensing satellite to derive a resource conflict severity index that reflects the resource conflict status.
[0067] In one implementation, the resource requirements of each task request refer to the specific quantities of various resources such as energy, storage space, and orbital position required by each task to be executed during the execution process.
[0068] In one implementation, the cumulative value of resource requirements is the sum of the requirements of all tasks to be executed for a certain type of resource.
[0069] In one implementation, the currently available resources refer to the quantity of various resources that the remote sensing satellite actually possesses at the current moment and can be used to perform its mission.
[0070] In one implementation, the source conflict severity index is a quantitative value used to measure the degree of contradiction between the resource requirements of the task to be executed and the satellite's currently available resources. The larger the value, the more severe the resource conflict.
[0071] In one implementation, the computer device can first calculate the difference between the accumulated value and the currently available resources. Then, the computer device can calculate the ratio of this difference to the currently available resources to obtain the final source conflict severity index.
[0072] S10112. Determine the priority adjustment value of the task request based on the resource conflict severity index.
[0073] For example, after obtaining a resource conflict severity index, the computer device determines the priority adjustment value for each task request based on the resource conflict status reflected by the index and using pre-defined rules. The purpose of this priority adjustment value is to alleviate resource conflicts by adjusting task priorities, reducing the priority of resource-scarce task requests, and increasing the priority of resource-sufficient task requests.
[0074] In one implementation, the priority adjustment value for the task request is a numerical value used to adjust the initial priority of the task request. Optionally, the computer device can adjust the priority based on the priority adjustment value by adding the priority adjustment value to the initial priority of the task request.
[0075] In one implementation, the computer device can first determine the corresponding first adjustment value based on the resource conflict severity index of each resource. Then, the computer device can calculate the priority adjustment value of each task request based on the resources required and the quantity of resources, combined with the first adjustment value corresponding to each resource.
[0076] Optionally, the computer device can compare the severity index of resource conflicts with preset index thresholds.
[0077] For example, if the resource conflict severity index is less than the index threshold, it indicates a resource shortage. The computer device can then determine that the first adjustment value is used to lower the priority. The computer device can calculate the difference between the resource conflict severity index and the index threshold. The computer device can then calculate the product of this difference and the lowering baseline value to obtain the first adjustment value.
[0078] For example, if the resource conflict severity index is greater than or equal to the index threshold, and the resource conflict severity index is greater than or equal to 0, then the computer device can determine that the first adjustment value is 0.
[0079] For example, if the resource conflict severity index is greater than 0, it indicates that resources are abundant, and the computer equipment can determine that the first adjustment value should be used to increase the priority. The computer equipment can calculate the product of the resource conflict severity index and the adjustment baseline value to obtain the first adjustment value.
[0080] Optionally, for each task request, the computer device can calculate the product of the resource requirement for that task request and a first adjustment value corresponding to that resource. The computer device can then sum the products of the resources required in the task request to obtain the final priority adjustment value.
[0081] In this example, a resource conflict severity index is calculated based on the cumulative value of resource requirements requested by each task and the current available resources. Based on this index, the task request priority adjustment value is determined, thereby achieving the effect of reasonably quantifying resource conflicts and accurately adjusting task priorities.
[0082] In one example, in step S1012 above, the priority weight of the task request is determined based on the execution information of historical tasks corresponding to the task request stored in the remote sensing satellite, including: S10121. Obtain the first historical task with the same task content as the task request and / or the second historical task with the same task type as the task request.
[0083] For example, when processing a remote sensing satellite mission request, the computer device searches a historical mission database of remote sensing satellites. The computer device looks for a first historical mission that is completely identical in mission content to the current mission request. The computer device also looks for a second historical mission that belongs to the same mission type as the current mission request.
[0084] In one implementation, the computer device can match the first historical task based on keywords in the task content of the task request. Alternatively, the computer device can select the first historical task by calculating the relevance index of two task contents.
[0085] In one implementation, the computer device may, after selecting the second historical task from the historical tasks based on the task type, delete the historical task in the second historical task that matches the first historical task.
[0086] In one implementation, the computer device may only retrieve the first historical task. Alternatively, the computer device may only retrieve the second historical task.
[0087] In another implementation, the computer device can locate the first historical task and the second historical task.
[0088] S10122. Based on the execution information of the first historical task and / or the second historical task, estimate the execution success rate, resource utilization efficiency, and execution urgency of the task request.
[0089] For example, after acquiring the first historical task and / or the second historical task, the computer device further acquires the execution information of these historical tasks. Based on this execution information, the computer device can use a preset algorithm to calculate the execution success rate, resource utilization efficiency, and execution urgency of the task request.
[0090] In one implementation, the computer device can use statistical methods to collect the execution information of historical tasks corresponding to a task request, and obtain information such as the execution success rate, resource utilization efficiency, and execution urgency of the task request.
[0091] In one implementation, when the computer device acquires a first historical task and a second historical task, the computer device can assign different weights to the data of the first historical task and the second historical task respectively. The computer device can then perform statistical analysis on the weighted data to obtain the execution success rate, resource utilization efficiency, and execution urgency of the task request.
[0092] For example, a computer device can obtain the execution success rate by the percentage of historical tasks that were successfully executed out of all historical tasks.
[0093] For example, a computer device can separately count the number of successfully executed tasks in the first historical task and the number of successfully executed tasks in the second historical task. The computer device can then perform a weighted sum of these two counts and calculate the ratio of this weighted sum to all historical tasks to obtain the execution success rate.
[0094] For example, a computer device can calculate the resource utilization rate of each historical task by comparing the actual resource usage with the expected resource demand. Furthermore, the computer device can calculate the average resource utilization rate of all historical tasks to obtain the resource utilization efficiency.
[0095] It should be noted that the "all historical tasks" in the above example refers to all historical tasks selected for a single task request.
[0096] In one implementation, the execution success rate is used to indicate the percentage of historical tasks that were successfully executed in all historical tasks corresponding to the task request.
[0097] In one implementation, resource utilization efficiency is used to indicate the ratio of resources actually used to expected resource requirements across all historical tasks corresponding to the task request.
[0098] In one implementation, the execution urgency level is used to indicate the average final priority of all historical tasks corresponding to the task request.
[0099] S10123. Based on the first preset weight, the execution success rate, resource utilization efficiency and execution urgency are weighted and summed to obtain the priority weight of the task request.
[0100] For example, after obtaining the three indicators of the task request's execution success rate, resource utilization efficiency, and execution urgency, the computer device performs a weighted summation operation on these three indicators according to a pre-set first preset weight to obtain a comprehensive value, namely the priority weight of the task request. This weight will be used to adjust the priority of the task request in the future.
[0101] In one implementation, the first preset weight is a pre-set value used to measure the relative importance of the three indicators—execution success rate, resource utilization efficiency, and execution urgency—in determining the priority weight of task requests. Different weight allocations will reflect the degree of importance attached to different indicators.
[0102] In one implementation, the priority weight of a task request is a comprehensive numerical value used to represent the relative importance of the task request in resource allocation and execution order; the larger the value, the higher the priority.
[0103] In this example, by obtaining historical tasks related to the task request and estimating key indicators based on their execution information, and then determining the priority weight through a weighted summation with preset weights, the goal is to achieve the effect of accurately quantifying the priority of task requests by comprehensively considering multiple factors.
[0104] In one example, in step S1013 above, the priority of the task requests to be executed in the remote sensing satellite is adjusted according to the priority adjustment value and priority weight, including: S10131. Calculate the sum of the priority of the task request and the priority adjustment value to obtain the intermediate priority.
[0105] For example, after obtaining the initial priority of the task request and the priority adjustment value determined based on resource conflict and historical task information, the computer device will perform an addition operation, adding the priority of the task request to the priority adjustment value to obtain an intermediate result, which is recorded as the intermediate priority.
[0106] In one implementation, the intermediate priority is a temporary value obtained by adding the priority of the task request to the priority adjustment value.
[0107] S10132. Calculate the product of the intermediate priority and the priority weight of the task request to obtain the adjusted priority.
[0108] For example, after obtaining the intermediate priority, the computer device will multiply the intermediate priority with the priority weight of the task request to obtain a fully adjusted priority value, which will be used as the final priority of the task request.
[0109] In one implementation, the priority weight reflects the degree of influence of factors such as the success rate of task request execution, resource utilization efficiency, and execution urgency on the priority.
[0110] In one implementation, the adjusted priority is the final value obtained by multiplying the intermediate priority by the priority weight. It takes into account factors such as the initial priority, resource conflict, and historical task execution, and more accurately reflects the relative importance of the task request in the current environment.
[0111] In this example, the intermediate priority is obtained by first summing the task request priority with the adjustment value, and then multiplying it with the priority weight. This achieves the effect of accurately adjusting the task request priority by taking into account multiple factors.
[0112] In one example, in step S102 above, after allocating the currently available resources of the remote sensing satellite to the task requests according to the adjusted priorities of the task requests to be executed in the remote sensing satellite, the task requests are executed, including: S1021. Pre-allocate the currently available resources to each task request according to the priority order of the task requests.
[0113] For example, when processing multiple task requests, a computer device performs resource pre-allocation based on the previously calculated priority order of the task requests. Starting with the highest priority task request, the computer device progressively allocates currently available resources to each task request, ensuring that resource allocation matches the importance of the tasks.
[0114] In one implementation, the currently available resources refer to the total amount of various resources that the remote sensing satellite system can provide for the mission request at a certain moment, including but not limited to energy, storage space, orbital position and other information.
[0115] In one implementation, pre-allocation is the process of allocating resources to each task request in advance according to certain rules and plans before the actual execution of the task.
[0116] In one implementation, the computer device allocates resources to each task request sequentially, from highest to lowest priority. First, all resources are allocated to the highest-priority task request. If resources remain, resources are then allocated to the next highest-priority task request, and so on, until all available resources are allocated or all task requests have been allocated resources.
[0117] S1022. If there are task requests with 0 pre-allocated resources, then after adjusting the time window and / or resource requirements of the task requests, the currently available resources are re-allocated to each task request.
[0118] For example, after completing the initial pre-allocation of resources, the computer device checks the pre-allocated resource status of each task request. If it finds that a task request has a pre-allocated resource quantity of 0, it means that during pre-allocation, due to the window time and resource requirements of that task request, it may not be able to provide sufficient resources for that task request. Therefore, the computer device will adjust the time window or resource requirements of these task requests with pre-allocated resources of 0. After completing the adjustment, the computer device can return to step S1021 to redo the resource pre-allocation process.
[0119] In one implementation, a pre-allocated resource of 0 indicates that during the initial resource allocation process, a task request was not allocated any currently available resources.
[0120] In one implementation, adjusting the time window of a task request refers to changing the time range within which the task request can be executed. For example, the start time of the task request can be brought forward or postponed, and the end time can be adjusted accordingly to avoid peak resource usage periods or time conflicts with other tasks.
[0121] In one implementation, adjusting the resource requirements of a task request means reducing the amount of resources required by the task request, such as reducing the requirements for computing resources, storage space, etc., so that the task request can be executed under the current available resource conditions.
[0122] S1023. If there are no task requests with pre-allocated resources of 0, then execute each task request according to the resources pre-allocated for each task request.
[0123] For example, after pre-allocating resources, the computer device performs a comprehensive check on the pre-allocated resources for all task requests. If it is confirmed that there are no task requests with pre-allocated resources of 0, this indicates that the currently available resources can meet the basic requirements of all task requests, and each task request has received sufficient resources to execute. At this point, the computer device will initiate and execute these task requests according to the resources pre-allocated to each task request, ensuring that the remote sensing satellite can complete its tasks as planned.
[0124] In one implementation, the absence of task requests with zero pre-allocated resources means that all task requests have obtained a certain amount of available resources in the initial resource allocation, thus possessing the basic conditions for execution.
[0125] In one implementation, executing each task request according to the pre-allocated resources means that the computer device allocates corresponding resources to each task request according to the pre-allocation results and starts the task execution process, including task initialization, data processing, result transmission and other stages.
[0126] In one implementation, the computer device allocates pre-allocated resources to each task request sequentially according to their priority order, and then initiates task execution. Optionally, the computer device can begin executing a task request based on the start time indicated by the time window of each task request.
[0127] In this example, by pre-allocating resources according to priority, adjusting and reallocating task requests with zero pre-allocated resources, and executing tasks according to the pre-allocation results, the effect of rationally and efficiently utilizing resources and ensuring the orderly execution of tasks is achieved.
[0128] In one example, step S1021 above involves pre-allocating currently available resources to each task request according to the priority order of the task requests, including: S10211. Obtain the currently processed task requests according to their priority order.
[0129] For example, a computer device can select the task to be processed sequentially from a large number of pending task requests according to their priority. In this way, it can be ensured that high-priority task requests are allocated resources first, thereby ensuring that important tasks have sufficient resources to execute.
[0130] In one implementation, the priority order is calculated based on a combination of factors related to task requests, such as urgency, importance, and impact on the system, and is used to determine the order in which task requests are processed and resources are allocated.
[0131] In one implementation, the currently processed task request is the task request that has been selected in order of priority at the current moment and is ready for resource pre-allocation.
[0132] In one implementation, the computer device can write task requests into a task queue based on priority.
[0133] S10212. If the currently available resources are greater than or equal to the resource requirements of the currently processed task request, then pre-allocate resources from the currently available resources for the currently processed task request according to the resource requirements of the task request.
[0134] For example, after selecting a task request to be processed, the computer device compares the currently available resources with the resource requirements of the task request. If the currently available resources can meet the resource requirements of the task request, the computer device will allocate the corresponding resources from the currently available resources to the task request according to the resource requirements declared in the task request, thus completing the pre-allocation of resources.
[0135] In one implementation, currently available resources refer to the total amount of various resources that a computer device possesses at a given moment that can be allocated to task requests.
[0136] In one implementation, pre-allocation is the process of allocating resources to task requests in advance before the actual execution of the task. The purpose of pre-allocation is to rehearse the allocation of task resources and avoid conflicts.
[0137] In one implementation, the computer device rigorously checks whether the quantity of each type of resource among the currently available resources is greater than or equal to the quantity of each type of resource required by the currently processed task request. Only when all resource types meet the conditions is precise allocation performed according to the resource requirements of the task request.
[0138] For example, if a task request requires 2 units of computing resources and 1 unit of storage resources, and there are currently 3 units of computing resources and 2 units of storage resources available, then 2 units of computing resources and 1 unit of storage resources will be allocated to the task request.
[0139] S10213. If the available resources are less than the resource requirements of the currently processed task request, then skip the currently processed task request.
[0140] For example, when a computer device compares the currently available resources with the resource requirements of a currently processed task request, if it finds that the currently available resources cannot meet the resource requirements of the currently processed task request, this means that even if all currently available resources are allocated to the task request, it cannot be executed normally. To avoid ineffective allocation and waste of resources, the computer device will skip the currently processed task request, temporarily refrain from allocating resources to it, and instead process the next priority task request.
[0141] In one implementation, skipping the currently processed task request means that during the resource allocation process, no resource allocation operation is performed on the task request, but it is kept in the list of pending task requests. The allocation is performed again when the time window and resource requirements of the task request are adjusted.
[0142] S10214. Update currently available resources.
[0143] For example, after a computer device completes the resource pre-allocation for a currently processed task request, it needs to update the currently available resources within that time window according to the time window of the task request.
[0144] Because task requests consume resources during execution, these resources are released and become available again after the task is completed. By updating the currently available resources based on the task request's time window, computer devices can accurately determine the amount of resources available for subsequent allocation, providing a precise basis for resource allocation for subsequent task requests.
[0145] This example demonstrates how to efficiently allocate resources and ensure the orderly execution of tasks by selecting task requests in priority order, pre-allocating or skipping task requests based on resource availability, and updating available resources according to their completion time. Furthermore, iterative pre-allocation avoids task request conflicts and improves the effectiveness of task execution.
[0146] Figure 2 A flowchart of a remote sensing satellite mission control method provided in this application embodiment is shown. Figure 1 Based on the illustrated embodiments, as Figure 2 As shown, with a computer device as the execution subject, the process includes the following steps: S201. Obtain the queue of tasks to be executed on the remote sensing satellite and the satellite's currently available resources. The task queue contains multiple task requests to be executed. The task information for each task request includes at least the task type and priority. The currently available resources include at least the satellite's power level, storage capacity, and orbital position.
[0147] For example, the computer device can acquire a task queue consisting of task requests to be executed on a remote sensing satellite. Simultaneously, the computer device can also utilize the onboard status monitoring unit to collect raw status datasets, and after fusing and error correction processing the raw status datasets, obtain the currently available resources.
[0148] In one implementation, after acquiring the task requests to be executed from the remote sensing satellite, the computer device can standardize the format of each task request. Subsequently, the computer device can sort the task requests and form them into a task queue.
[0149] Optionally, the task information for each task request may include a preset priority for that task request. The computer device can sort the task requests based on this priority to obtain a task queue.
[0150] In one implementation, the computer device can encapsulate the task queue and currently available resources according to the on-board standard data format to ensure data integrity and compatibility. The encapsulated data packet contains all task requests in the task queue, as well as task information for each request. Simultaneously, the encapsulated data also contains all items related to currently available resources, including energy levels, storage capacity, and orbital position.
[0151] In one implementation, the encapsulated data is directly used as input data for step S202 for subsequent task conflict identification and dynamic priority evaluation, ensuring that subsequent task scheduling can make optimal decisions based on accurate and reliable data.
[0152] S202. Based on the task queue and currently available resources, perform task conflict identification and dynamic priority evaluation to generate an optimized task queue. Task conflict identification is used to determine the resource competition relationship between tasks, and dynamic priority evaluation is used to adjust the execution order of tasks according to status parameters.
[0153] For example, the computer device can acquire the resource requirements of each task request in the task queue. Then, based on these resource requirements and the currently available resources of the remote sensing satellites, the computer device can identify task conflicts and determine whether there are resource conflicts at the scheduling level. If so, the computer device can dynamically prioritize each task request in the task queue, thereby adjusting the priorities and execution order to obtain an optimized task queue.
[0154] The optimization process of this priority is the process by which computer equipment optimizes the execution order and priority relationship of tasks based on the preset priority of the task request, the urgency of the task, and the overall resource constraints of the remote sensing satellite, so that high-priority tasks are given priority in the overall scheduling.
[0155] It is important to note that the optimization performed in this step is a macro-level scheduling optimization, which aims to reduce the likelihood of conflicts through pre-adjustment, rather than to make final constraint verifications on the specific resource allocation status.
[0156] S203. Based on the optimized task queue, perform on-board resource matching and allocation, and generate an autonomous control strategy. Execute the autonomous control strategy.
[0157] For example, after optimizing the task queue, the computer equipment first generates a precise resource allocation plan based on the optimized task queue and closely considers the current available resources of the satellite, providing preliminary planning for subsequent resource allocation. Next, the computer equipment conducts detailed resource conflict detection on this allocation plan, dynamically adjusting for detected conflicts to ultimately form a scientifically sound resource allocation scheme, ensuring that all tasks can be effectively executed under limited resource conditions. Subsequently, based on the resource allocation scheme and the optimized task queue, the computer equipment formulates an autonomous control strategy covering task execution timing and resource allocation details, clarifying the task execution process and resource usage specifications. Finally, the computer equipment conducts comprehensive feasibility verification and in-depth optimization of the autonomous control strategy, ensuring its efficient and stable operation in practical applications through various methods such as simulating real-world scenarios, thereby improving the overall efficiency of satellite mission execution.
[0158] In this embodiment, by means of task conflict identification and dynamic priority evaluation to optimize the task queue, resource conflict detection and dynamic adjustment to generate feasible resource allocation schemes, execution of autonomous control strategies and real-time monitoring of dynamic reallocation, the effects of efficient satellite mission execution, maximized resource utilization and improved mission completion rate are achieved.
[0159] In one example, the specific process of the computer device obtaining the task queue in step S201 above may include: S2011. Obtain the original task set through the onboard mission management unit.
[0160] For example, the initial task set may contain multiple pending task requests. Each task request includes task information, which may include the task type and a preset priority. The task requests in the initial task set may originate from either uploads from ground stations or autonomous generation by the satellite.
[0161] In one implementation, the task request uploaded by the ground station can be transmitted to the satellite via a space-to-ground communication link. The task request uploaded by the ground station may include the ground station's task allocation and priority for the satellite.
[0162] In one implementation, the mission request autonomously generated by the satellite is automatically generated by onboard sensors or onboard intelligent decision-making modules based on the satellite's current operating status or other triggering conditions.
[0163] In one implementation, the task type of the task request can include three types: imaging observation task, data transmission task, and on-orbit processing task.
[0164] Imaging observation missions require satellite sensors to acquire image data. Data transmission missions require transmitting the satellite-acquired data back to ground stations. On-orbit processing missions require the satellite to process the acquired data in real time.
[0165] In one implementation, the preset priority of each task request can be identified by a number. This priority level indicates the urgency of the task. For example, 1 represents the highest priority. The larger the number, the lower the priority.
[0166] S2012, Perform syntax parsing on each task request in the original task set.
[0167] For example, the syntax parsing process includes two steps: extracting the task type and the preset priority. This syntax parsing is performed to ensure that target information is obtained from the task request, and then the target information is integrated into task data that conforms to a specified format.
[0168] For example, based on grammatical parsing, the specific execution content in a task request can be identified through keyword extraction, natural language processing, and large language model processing, thereby determining the type of the task request. This type can be one of the preset categories such as imaging observation, data transmission, and on-orbit processing.
[0169] For example, based on grammar parsing, priority in task requests can be extracted through keyword extraction, natural language processing, and large language model processing to obtain numerical level identifiers.
[0170] In one implementation, the computer device can also organize the task requests after receiving them to obtain a task request list.
[0171] In one implementation, the computer device can standardize the format of each extracted task request based on the preset rules in the on-board mission execution specification, obtaining a list of task requests that conforms to the required format. In this implementation, the format standardization process ensures that the task request can be correctly parsed and executed by the on-board system.
[0172] In one implementation, the computer device can sort task requests according to priority.
[0173] In one implementation, the computer device can sort these task requests according to task type and priority, and write them into a task queue.
[0174] In one implementation, the computer device can perform time window conflict detection on the task requests in the task queue after completing the writing of the task queue.
[0175] Optionally, the task information in the task request may also include the time window of the task request. The computer device may also adjust conflicting task requests based on the time windows of each task request through conflict detection, and generate a task queue that conforms to the on-board execution specifications and has no time conflicts.
[0176] Optionally, the conflicting task requests can be adjusted, specifically by adjusting the time window for the conflicting task requests.
[0177] Optionally, the computer device can determine whether there is a time window conflict by comparing the execution time intervals of each task request to see if there is a time overlap.
[0178] For example, when the execution time intervals of multiple tasks overlap, computer devices can identify time conflicts and handle them.
[0179] Optionally, the computer device can generate a task queue that conforms to the on-board execution specifications after the time window for task execution is readjusted, for subsequent processing.
[0180] In this example, by obtaining the original task set, extracting task types and priorities through syntax parsing, format standardization, sorting, and time window conflict detection and adjustment, the effect of generating a task queue that conforms to the on-board execution specifications and has no time conflicts is achieved.
[0181] In one example, the specific process by which the computer device obtains the currently available resources of the satellite in step S201 above may include: S2013. Collect raw state datasets through the onboard state monitoring unit.
[0182] For example, the onboard status monitoring unit may include a battery management unit, a storage controller, an onboard GNSS receiver, etc. The raw status data may include energy level data, storage capacity data, orbital position data, etc.
[0183] In one implementation, the computer device can collect energy level data through a battery management unit. This battery management unit can monitor the satellite's battery voltage, remaining charge, and charge / discharge status in real time. The energy level data collected by the battery management unit may include battery voltage (V), remaining charge (Wh), and charge / discharge status (%).
[0184] In one implementation, the computer device can collect storage capacity data through a storage controller. This storage controller is used to monitor the usage of on-board storage media in real time to obtain storage capacity data. This storage capacity data includes total storage space (GB), used storage space (GB), and available storage space (GB).
[0185] In one implementation, a computer device can acquire orbital position data via an onboard GNSS receiver. This onboard GNSS receiver is capable of accurately calculating the satellite's latitude and longitude coordinates, orbital altitude, and orbital speed. The orbital position data acquired by the onboard GNSS receiver includes the satellite's latitude and longitude coordinates (°), orbital altitude (km), and orbital speed (m / s).
[0186] In one implementation, the data in the aforementioned original state dataset will serve as the basis for subsequent task execution, ensuring that task scheduling can be optimized based on the actual operating status of the satellite.
[0187] S2014. Perform data fusion and error correction on the collected raw state dataset to obtain the currently available resources.
[0188] In one implementation, for energy level data, the computer equipment first performs charge / discharge compensation correction. The computer equipment can correct errors caused by battery temperature changes and voltage fluctuations based on a battery characteristic model.
[0189] For example, computer equipment can correct for battery voltage fluctuations based on battery temperature and usage history, resulting in more accurate energy level data.
[0190] In one implementation, the computer device can perform bad block mapping correction for storage capacity data. That is, the computer device can identify faulty blocks in the storage medium and eliminate their impact on storage space, thereby ensuring the accuracy of the available storage capacity.
[0191] In one implementation, the computer equipment can perform orbital perturbation compensation on the orbital position data. Orbital perturbation compensation uses an orbital dynamics model to correct for the effects of external factors such as gravitational perturbations and atmospheric drag on the orbital position, ensuring the accuracy of the orbital position data.
[0192] In one implementation, after data fusion and error correction, the computer device will generate accurate status parameters, including corrected energy levels, storage capacity, and orbital position, providing precise data support for subsequent task scheduling.
[0193] In this example, the raw state dataset is collected by the onboard state monitoring unit, and the data is fused and error corrected to provide accurate satellite state parameters for subsequent mission scheduling.
[0194] In one implementation, the task queue optimization process in step S202 above may include the following steps: S2021. Based on the task queue and the resource requirements indicated in the task information of each task request in the task queue, establish a task resource requirement mapping table.
[0195] For example, a computer device can sequentially retrieve task requests from a task queue. The computer device can extract the resource requirements of each task request from its task information. Based on these resource requirements, the computer device can establish a task resource requirement mapping table.
[0196] S2022. Based on the task resource requirement mapping table and the currently available resources, perform task conflict identification to obtain the task conflict identification result.
[0197] For example, a computer device can compare the resource requirements of each task request indicated in the task resource requirement mapping table with currently available resources to determine whether resources are sufficient. Based on the determination of resource sufficiency, the computer device can generate a task conflict identification result.
[0198] S2023. Based on the task queue, current available resources, and task conflict identification results, perform dynamic priority evaluation to obtain dynamic priority evaluation results.
[0199] For example, a computer device can combine task queues and currently available resources, and based on the task conflict identification results, perform dynamic priority evaluation on tasks with resource conflicts to obtain dynamic priority evaluation results. Based on these dynamic priority evaluation results, the priority of tasks with insufficient resources can be adjusted downwards, while the priority of tasks with sufficient resources can be adjusted upwards.
[0200] S2024. Based on the dynamic priority evaluation results, generate an optimized task queue using a conflict resolution algorithm.
[0201] For example, after obtaining the dynamic priority evaluation result, the computer device can also reorder the task requests in the task queue based on the dynamic priority evaluation result to obtain an optimized task queue. Based on the optimized task queue, the computer device can generate an optimized task queue using a conflict resolution algorithm.
[0202] In this example, by establishing a task resource requirement mapping table, identifying task conflicts, performing dynamic priority evaluation, and combining it with a conflict resolution algorithm to reorder the task queue, the effects of optimizing resource allocation, reducing task conflicts, and improving task execution efficiency are achieved.
[0203] In one example, the process of establishing the task resource requirement mapping table in step S2021 above is as follows: Step 211: Classify the tasks requested by each task in the task queue according to their task type.
[0204] For example, the task type may include imaging observation tasks, data return tasks, and on-orbit processing tasks. The computer device can determine the task type corresponding to each task request in the task queue based on the task type written in the task request.
[0205] In one implementation, the imaging observation mission requires the satellite to complete image acquisition at a specific observation point or on a specific observation trajectory. Therefore, it not only consumes high levels of energy and large storage capacity, but also needs to meet strict requirements for the orbital position resources corresponding to the observation window and the orbital recursion position resources.
[0206] Alternatively, imaging observation missions may require high energy consumption, large storage capacity, specific orbital position matching requirements, and specific orbital recursion position requirements.
[0207] Optionally, the specified orbital position matching requirements are used to ensure that the sensor's field of view covers the target area.
[0208] Optionally, the specified orbit recursion position requirement is used to ensure that the next observation position can be accurately reached after the orbit recursion.
[0209] In one implementation, the data return mission can only be triggered when the satellite passes over a specific ground station, thus imposing strict window requirements on orbital position resources and orbital recursion positions. The communication window for this type of mission is planned and fixed by the ground, resulting in strong orbital constraints.
[0210] Optionally, the specific requirements for the data backhaul task include: moderate energy consumption, moderate storage capacity, fixed orbital position window, and fixed orbital recursion position.
[0211] Optionally, a fixed orbital position window requirement is used to ensure that the satellite enters the ground return window.
[0212] Optionally, fixed track recursion position requirements are used to ensure the accessibility of the next return window.
[0213] Optionally, orbital recursion information can be used as an additional weighting factor in dynamic priority evaluation to ensure that priority is given to execution when orbital conditions are met.
[0214] In one implementation, the on-orbit processing task is mainly carried out inside the satellite for data calculation and processing, which consumes a lot of energy and computing resources, but is less dependent on the orbital position.
[0215] Optionally, the specific requirements for on-orbit processing tasks include: high computational resource consumption, medium storage capacity requirements, and no mandatory window requirements for orbital position and orbital recursive position, only the basic attitude stability requirements need to be met.
[0216] Step 212: For each task type, determine the specific requirements of each task request for energy level, storage capacity and orbital location resources according to the preset resource requirement correspondence.
[0217] For example, imaging observation missions may require a large amount of energy and storage space. On the other hand, on-orbit processing missions require high computing power and moderate storage capacity.
[0218] Step 213: Record the resource requirements of each task request in a structured manner according to three dimensions: energy level, storage capacity, and orbital location, to obtain a task resource requirement mapping table.
[0219] For example, the task resource requirement mapping table is a structured data table that records the resource requirements of each task and ensures that subsequent processing can access this resource requirement data in a standardized format.
[0220] In one implementation, each row in the task resource requirement mapping table can correspond to a task request.
[0221] In this example, by classifying tasks by type, determining specific resource requirements based on preset correspondences, and recording them in a structured task resource requirement mapping table, the resource requirements of each task are clearly presented in a standardized format for subsequent processing.
[0222] In one example, the specific process of task conflict identification in step S2022 above is as follows: Step 221: Traverse the task resource requirement mapping table.
[0223] For example, a computer device can sequentially traverse a task resource requirement mapping table. During the traversal, the computer device can obtain the resource requirements for each task request. These resource requirements may include requirements for three categories of resources: energy level, storage capacity, and orbital location.
[0224] Step 222: Calculate the cumulative resource demand.
[0225] For example, a computer device can calculate the total resource requirements for all task requests for three categories of resources: energy level, storage capacity, and orbital position.
[0226] For example, regarding energy levels, computer equipment can sum up the energy requirements of all task requests to obtain the cumulative demand for that type of resource.
[0227] Step 223: Compare the resource demand with the currently available resources.
[0228] For example, a computer device can compare the cumulative demand for each type of resource with the corresponding amount of currently available resources. If the cumulative demand for resources exceeds the amount of currently available resources, a resource conflict is determined to exist between the related task requests.
[0229] In one implementation, the amount of currently available resources is calculated based on the actual resource status of the satellite, such as its power consumption, remaining storage space, and orbital position.
[0230] In one implementation, the system identifies an energy conflict when the cumulative demand for energy exceeds the currently available energy level. Similarly, the system identifies a storage conflict when the cumulative demand for storage capacity exceeds the currently available storage capacity. Finally, the system identifies a track resource conflict when the cumulative demand for track positions exceeds the currently available track position resources.
[0231] In one implementation, the computer device can record all identified resource conflicts.
[0232] Optionally, the computer device can record information such as the identifier of the conflicting task, the resource type, and the severity of the conflict when a resource conflict occurs.
[0233] In this example, by traversing the task resource requirement mapping table, calculating the cumulative resource requirement and comparing it with the available quantity, the resource conflict between task requests can be accurately identified.
[0234] In one example, the execution process of dynamic priority evaluation in step S2023 above is as follows: Step 231: Obtain the preset priority.
[0235] For example, the computer device first obtains the priority value of the preset priority of each task request in the task queue.
[0236] In one implementation, the preset priority is usually provided by the ground station or the onboard intelligent decision-making module to identify the urgency or importance of the mission.
[0237] In one implementation, the priority value may be a fixed integer representing the task's priority level. For example, the priority could be 1, 2, 3, etc., where 1 represents the highest priority. The larger the number, the lower the priority.
[0238] Step 232: Based on the severity of the conflict in the task conflict identification results, further adjust the task priority. For example, a computer device can calculate the resource gap ratio to determine the severity of a conflict in the task conflict identification results. The computer device can then dynamically adjust task priorities based on this conflict severity. When a task has a high resource gap ratio, it indicates a greater risk of resource conflict when executing the task with currently available resources. The computer device can accordingly reduce the priority weight of this task during the dynamic priority evaluation process. When a task has a low resource gap ratio or no resource gap, the computer device can maintain or improve the task's ranking position in the optimized task queue.
[0239] In this example, the conflict severity represents the gap between the resource requirements of a task request and the currently available resources. A higher resource gap ratio indicates a higher dependence of the task request on resources, which may affect task execution. Therefore, tasks with higher conflict severity will be assigned lower priority weights.
[0240] In one implementation, step 232 involves further adjusting the task priority based on the severity of the conflict identified in the task conflict identification results, including: Step 2321: Based on the task conflict identification results, calculate the resource gap ratio to obtain the conflict severity in the task conflict identification results.
[0241] In one implementation, the formula for calculating the severity of the conflict is: Resource gap ratio = (Resource superposition demand - Current available resources) / Current available resources; In one implementation, the severity of the conflict is quantified by the resource gap ratio, which characterizes the difference between the resource demand of the task request and the current available resources.
[0242] In one implementation, the computer device calculates the severity of the conflict in the task conflict identification results and dynamically adjusts the task priority based on the severity of the task conflict. This allows the optimized task queue to reasonably avoid high-conflict tasks under resource-constrained conditions, ensuring the executability of the overall task scheduling.
[0243] Step 2322: Calculate the priority adjustment value based on the resource gap ratio.
[0244] In one implementation, when the resource shortage ratio of a task is high, the computer device can reduce the priority of the task request that requires the resource based on a preset reduction ratio or reduction step size.
[0245] Optionally, the reduction ratio or the reduction step size can be determined based on the resource deficit ratio. The higher the resource deficit ratio, the larger the reduction ratio or the reduction step size.
[0246] Optionally, the computer device may determine that the resource gap ratio is high when the resource gap ratio is greater than the ratio threshold corresponding to that resource.
[0247] In one implementation, when the resource deficit ratio of a task is low, the computer device can maintain the priority of the task request corresponding to that resource.
[0248] Optionally, the computer device may determine that the resource gap ratio is high when the resource gap ratio is greater than 0 and less than the ratio threshold corresponding to the resource.
[0249] In one implementation, when the resource gap ratio of a task is less than or equal to 0, it can be determined that there is no resource gap. Then, the computer device can increase the priority of the task request corresponding to that resource based on a preset increase ratio or increase step size.
[0250] Optionally, the adjustment ratio or the adjustment step size can be determined based on the resource gap ratio. The smaller the resource gap ratio, the larger the adjustment ratio or the adjustment step size.
[0251] Step 2323: Adjust the priority based on the priority adjustment value.
[0252] For example, a computer device can adjust the priority by directly adding the priority adjustment value to a preset priority.
[0253] In this example, the severity of the conflict is quantified by calculating the resource gap ratio based on the task conflict identification results, and the priority adjustment value is calculated accordingly to dynamically correct the task priority. This achieves the effect of reasonably avoiding high-conflict tasks and ensuring the overall task scheduling executability under resource-constrained conditions.
[0254] In one example, in step S2023 above, the computer device can also dynamically adjust the priority through the following steps, which include: Step 233: Introduce currently available resources as constraints and adjust the priority of some task requests.
[0255] For example, the computer device may also incorporate energy levels and storage capacity from currently available resources as constraints. The priority of resource-intensive task requests will be adjusted.
[0256] In one implementation, when the current energy level is below a preset threshold, the computer device will reduce the priority of high-energy-consuming task requests.
[0257] Optionally, a high-energy-consuming task request is a task request whose energy demand is greater than or equal to a preset energy threshold.
[0258] Optionally, the priority of high-energy-consuming task requests can be reduced by lowering the priority of the task request based on a preset reduction ratio or reduction step size.
[0259] Optionally, the reduction ratio or reduction step size can be determined based on the ratio of the current energy level to the energy level required by the task request. The smaller the ratio, the greater the impact of energy shortage, and the larger the reduction ratio or reduction step size can be set for the computer equipment.
[0260] In one implementation, when the storage capacity is below a preset threshold, the computer device will reduce the priority of large data task requests.
[0261] Optionally, a large data volume task request is a task request whose storage capacity requirement is greater than or equal to a preset storage threshold.
[0262] Optionally, the reduction ratio or reduction step size can be determined based on the ratio of the current storage capacity to the storage capacity required by the task request. The smaller the ratio, the greater the impact of insufficient storage space, and the larger the reduction ratio or reduction step size can be set for the computer device.
[0263] In this example, by using the energy level and storage capacity of the currently available resources as constraints, the priority of high-energy-consuming and large-data-volume task requests is dynamically adjusted according to the resource status, thereby achieving the effect of rationally allocating resources and ensuring the stable operation of the system.
[0264] In one example, in step S2023 above, the computer device can also dynamically adjust the priority through the following steps, which include: Step 234: Determine the priority weight of each task request based on three parameters: the success rate of task request execution, resource utilization efficiency, and task urgency.
[0265] For example, a computer device can calculate the task execution success rate, resource utilization efficiency, and task urgency based on historical task data and currently available resources. The computer device can construct a multi-objective comprehensive evaluation function using a weighted summation method, integrating the three objectives according to preset weight coefficients to calculate the multi-objective comprehensive first priority weight for each task request.
[0266] In one implementation, the task execution success rate is used to measure the likelihood of a task being successfully executed.
[0267] In one implementation, resource utilization efficiency is used to measure the degree of effective use of resources. Efficient resource allocation can increase the probability of task success.
[0268] In one implementation, task urgency is used to reflect the urgency of the task and is usually closely related to the preset priority and the task's resource requirements.
[0269] In one implementation, the calculation of the first priority weight of multiple objectives helps to ensure that important and urgent tasks can be executed first under limited resources, while improving the overall success rate of task execution.
[0270] In one implementation, the formula for calculating the first priority weight of multi-objective integration is: in, Indicates the first The dynamic first priority weight of each task request. This represents the normalized task execution success rate metric. This represents the normalized resource utilization efficiency index. This represents the normalized task urgency index. , , These are preset weighting coefficients used to adjust the influence of each optimization objective in the dynamic priority evaluation, and satisfy the following conditions: .
[0271] In one implementation, the computer device can optimize the preset priority by calculating the product of the preset priority and the priority weight.
[0272] In this example, a multi-objective comprehensive first priority weight is used to characterize the overall execution priority of tasks under current resource constraints and state parameters, serving as the basis for generating the task queue after subsequent conflict resolution and optimization. Furthermore, task execution success rate, resource utilization efficiency, and task urgency are optimization objectives in the multi-objective optimization phase, used to describe the performance directions the system aims to simultaneously consider in task scheduling and resource allocation.
[0273] In one example, in step S2023 above, the computer device can also dynamically adjust the priority through the following steps, which include: Step 235: Calculate the priority coefficient based on the preset priority, the predicted success rate of task execution, the severity of resource conflicts, and energy sensitivity.
[0274] For example, the formula for calculating the priority coefficient may include: .in, , , , These are preset weighting coefficients used to adjust the importance of each objective in the final priority weight calculation. The predicted task execution success rate, the severity of resource conflicts, energy sensitivity, and preset priority are calculable and quantifiable expressions of the above optimization objectives.
[0275] In one implementation, the task execution success rate optimization objective is specifically reflected in the formula as a predicted task execution success rate. This predicted value is calculated from historical task data and currently available resources, and is used to quantify the "probability of successful task execution".
[0276] In one implementation, the resource utilization efficiency optimization objective is reflected in the formula through a reverse constraint of the severity of resource conflict. The higher the severity of resource conflict, the more concentrated the resource utilization and the lower the efficiency. It participates in the calculation in the form of a subtraction term in the formula, thereby suppressing the priority of inefficient resource occupation tasks.
[0277] In one implementation, the task urgency optimization objective is reflected in the formula through a combination of preset priority and energy sensitivity. The preset priority reflects the basic urgency of the task, while the energy sensitivity reflects the task's sensitivity to the timing of execution under the current resource conditions. Together, they regulate the priority of urgent tasks.
[0278] In one implementation, the computer device can adopt a strategy of "first proposing optimization goals → then using specific indicators to calculate goal constraints in formulas". Based on three goals – task execution success rate optimization goal, resource utilization efficiency optimization goal, and task urgency optimization goal – priority coefficients are calculated.
[0279] In one implementation, the predicted task execution success rate is calculated based on historical task data and currently available resources, representing the probability that the task will be successfully executed in a predetermined manner.
[0280] In one implementation, the severity of resource conflict is derived from the task conflict identification result, representing the intensity of the resource conflict. When the severity of resource conflict is high, the priority weight of the task is low.
[0281] In one implementation, energy sensitivity is used to represent the degree to which a task request depends on energy levels. For tasks that are sensitive to energy consumption, the energy sensitivity is higher, and the computer device will adjust its priority based on the current energy situation.
[0282] Optionally, energy sensitivity is used to represent the degree to which a task request depends on changes in energy levels, and is pre-defined based on the task type and its resource requirements.
[0283] Optionally, when establishing the task resource requirement mapping table, the computer equipment configures corresponding energy sensitivity parameters for each type of task based on the differences in energy consumption characteristics of different task types.
[0284] For example, a higher energy sensitivity can be set for imaging observation tasks with high energy consumption, while a lower energy sensitivity can be set for on-orbit processing tasks with relatively low energy consumption.
[0285] In one implementation, during the dynamic priority evaluation process, the computer equipment can also adjust the priority of tasks with high energy sensitivity according to the current energy level parameters, so as to avoid executing high-energy-consuming tasks under energy shortage conditions, thereby improving the overall scheduling security and stability.
[0286] In one implementation, the computer device can optimize the preset priority by calculating the product of a preset priority coefficient and the priority weight.
[0287] In this example, by combining preset priorities, task conflict severity, state parameter constraints, and multi-objective comprehensive weights, we can achieve accurate dynamic evaluation and optimized scheduling of task priorities under resource-constrained conditions, thereby improving task execution success rate and overall system resource utilization efficiency.
[0288] It should be noted that step S2023 above may include four examples. Specifically, these are: the example shown in steps 231 and 232, the example shown in step 233, the example shown in step 234, and the example shown in step 235. These four examples can be executed individually or together. When multiple examples are executed together, there is no specific requirement for their execution order.
[0289] In one example, the process of generating the optimized task queue in step S2024 above is as follows: Step 241: Based on the optimized priority from the dynamic priority evaluation results, reorder the task requests.
[0290] For example, a computer device can rearrange all task requests in a task queue based on a priority optimized by a dynamic priority evaluation.
[0291] Optionally, the priority of the task request can be the dynamically adjusted priority in step S2023 above.
[0292] In one implementation, the computer device can rearrange all task requests in the task queue based on optimized priorities.
[0293] Step 242: Based on the preset conflict resolution strategy, optimize the execution order of task requests in the task queue.
[0294] In one implementation, the conflict resolution strategy may include a resource reservation strategy and a task rescheduling strategy.
[0295] In one implementation, a resource reservation strategy is used to reserve the resource quota required for the execution of high-priority tasks for task requests that have resource conflicts as identified in the conflict identification results.
[0296] Optionally, the resource quota includes energy level quota, storage capacity quota, and execution time window.
[0297] Optionally, by reserving resources, high-priority tasks can be ensured to receive sufficient resources first.
[0298] In one implementation, when the system determines that conflicting tasks cannot be resolved through resource reservation, it enters the task rescheduling phase. At this time, two adjustment methods can be adopted: one is to adjust the execution time window of the task (i.e., change the execution time order of the task), and the other is to adjust the resource allocation of the task.
[0299] In one implementation, the task rescheduling strategy is used to adjust the execution time window or resource allocation for conflicting tasks that cannot be resolved through resource reservation.
[0300] Optionally, task rescheduling policies allow computer devices to adjust the timing of task execution based on the availability of current resources, ensuring that conflicting tasks are handled appropriately.
[0301] Optionally, resource allocation adjustments can be made by reallocating specific resource indicators such as energy level quotas and storage capacity quotas, with the aim of making the task feasible under current resource constraints.
[0302] Optionally, the adjustment of resource allocation is not described separately from the time sequence adjustment, but exists as a parallel optional control means in the task rescheduling strategy.
[0303] Optionally, this adjustment is typically made for situations where resource consumption is abnormal or resource demand exceeds the available resource limit.
[0304] In one implementation, the computer device can determine whether to adopt a strategy of adjusting the execution time window or a strategy of adjusting the resource allocation based on the results of task conflict identification and execution deviation assessment.
[0305] In one implementation, when the conflict is mainly manifested as multiple tasks occupying resources in the same time period, the computer equipment can prioritize adjusting the execution time window to eliminate time overlap.
[0306] In one implementation, when the conflict is mainly manifested as the resource demand of a single or partial task exceeding the currently available resources, the computer device can reduce the intensity of resource occupancy by adjusting the resource allocation.
[0307] In one implementation, when a single adjustment method still cannot eliminate the conflict, the computer device allows for simultaneous joint adjustment of the execution time window and resource allocation.
[0308] Step 243: Through iterative optimization, continuously adjust the execution order of tasks, eliminate resource conflicts, and finally generate an optimized task queue.
[0309] In one implementation, the computer device can iteratively optimize and continuously adjust the execution order of tasks, ensuring that high-priority tasks are executed first, while eliminating resource competition and maximizing the utilization efficiency of satellite resources and the success rate of task execution.
[0310] In this example, by prioritizing tasks based on their weights and combining iterative optimization techniques such as resource reservation and task rescheduling in the conflict resolution strategy, an optimized task queue is generated that eliminates resource conflicts and prioritizes the execution of high-priority tasks, thereby maximizing satellite resource utilization and task execution success rate.
[0311] In one example, in step S203 above, on-board resources are matched and allocated according to the optimized task queue to generate an autonomous control strategy. This resource matching and allocation can be used to allocate the satellite's energy, storage, and computing resources in real time according to the optimized task queue. This process may include the following steps: S2031. Based on the optimized task queue, a resource allocation plan is generated in combination with the satellite's currently available resources.
[0312] For example, a computer device can allocate currently available resources to task requests based on the order of task requests in a task queue, and form a resource allocation plan.
[0313] In one implementation, the computer device can optimize conflicting tasks based on the resource allocation plan. Furthermore, the computer device can generate a new resource allocation plan after optimizing the conflicts. The computer device can optimize the task queue through this iterative process.
[0314] S2032. Conduct resource conflict detection and dynamic adjustment of the resource allocation plan to form a resource allocation scheme and ensure that all tasks can be effectively executed under limited resources.
[0315] For example, the resource conflict detection performed in this step targets conflicts at the resource allocation level. That is, when mapping the optimized task queue to a specific resource allocation scheme, it is necessary to check for issues such as overlapping time windows, excessive energy or storage capacity, by considering the actual execution time window of the task, resource occupancy intensity, and resource availability. This stage is a micro-level resource verification and correction process, used to identify conflicts that may still exist at the specific resource allocation implementation level. Therefore, the execution of this step differs from the technical effect produced by step S202 above. While step S202 focuses on potential resource conflicts at the task and sequence levels, reducing conflict risks by optimizing task sorting and priority, this step focuses on actual resource conflicts at the execution and resource allocation levels. By detecting and dynamically adjusting the execution time window and resource occupancy, it ensures the feasibility of the resource allocation scheme under limited resource conditions. Because task sequence optimization is not equivalent to resource allocation executability verification, resource conflict detection is still required when allocating resources based on the optimized task queue to ensure that the final resource allocation scheme can be stably executed under actual resource constraints.
[0316] S2033. Based on the resource allocation scheme and the optimized task queue, formulate an autonomous control strategy that includes task execution timing and resource allocation details.
[0317] For example, the computer device can first determine the task execution sequence. Then, the computer device can generate resource allocation rules. Finally, the computer device can integrate autonomous control strategies.
[0318] In one implementation, the computer device can first determine the execution order of tasks based on the time windows of each task request in the optimized task queue, and specify the start and end times of each task.
[0319] In one implementation, the execution sequence of tasks reflects the order in which tasks are executed according to their priority, ensuring that high-priority tasks can be executed as early as possible when resources become available.
[0320] In one implementation, the computer device can combine the generated resource allocation scheme to generate detailed resource allocation rules for each task.
[0321] In one implementation, these details include specific energy level quotas, storage capacity quotas, and execution time windows allocated to each task.
[0322] In one implementation, these details allow the computer device to clearly define the amount of resources that a task can use during execution and the time period during which it can use them.
[0323] In one implementation, the computer device can integrate task execution timing and resource allocation details into a complete autonomous control strategy.
[0324] In one implementation, the strategy ensures that the resource requirements of each mission are precisely matched with the actual available resources of the satellite, guaranteeing that missions are executed on time and according to resource requirements, while improving the success rate of mission execution and resource utilization efficiency.
[0325] S2034. Conduct feasibility verification and optimization of the autonomous control strategy to ensure that the strategy can operate efficiently in practical applications.
[0326] For example, the computer device can first perform feasibility verification. Then, it can check the rationality of resource usage. Finally, if resource usage is unreasonable, the computer device can optimize and adjust based on the simulation results. The computer device can then generate a final optimization strategy.
[0327] In one implementation, computer equipment can simulate the execution of autonomous control strategies through an on-board simulation environment to verify feasibility.
[0328] In one implementation, the simulation environment can simulate the task execution process, ensuring that the task is carried out according to the predetermined timing and resource allocation.
[0329] In one implementation, the goal of simulation verification is to check the integrity of the strategy and ensure that each task can be executed within the allocated resource quota.
[0330] In one implementation, the computer equipment can monitor resource usage in real time during simulation execution. For example, the computer equipment can check whether energy consumption is balanced, whether storage capacity usage exceeds limits, and whether there are conflicts in orbital position resources. Through these checks, the rational allocation of resources during task execution is ensured, avoiding resource waste.
[0331] In one implementation, the computer device can optimize and adjust the time window and resource quota in the resource allocation scheme based on the results of the simulation.
[0332] In one implementation, the computer device can adjust the time window. For example, for tasks with resource conflicts or low execution efficiency, the computer device can adjust its execution time window to avoid time overlap.
[0333] In another implementation, computer devices can reallocate resource quotas. For example, for tasks that consume too much energy or have uneven storage usage, the system can reallocate resource quotas to improve resource utilization efficiency.
[0334] In one implementation, the optimized autonomous control strategy can ensure that tasks are executed in an optimized order while maximizing resource utilization and improving overall task execution efficiency.
[0335] In this example, by generating resource allocation plans based on optimized task queues, performing resource conflict detection and dynamic adjustment to form resource allocation schemes, and formulating autonomous control strategies that include execution timing and resource allocation details, and verifying and optimizing their feasibility, the goal is to achieve precise matching of satellite resources with task requirements, ensure timely and resource-compliant task execution, and improve task success rate and resource utilization efficiency.
[0336] In one example, the specific process of generating the resource allocation plan in step S2031 above includes: Step 311: Analyze the execution order of task requests in the optimized task queue.
[0337] For example, the computer device can first traverse the optimized task queue.
[0338] In one implementation, the task queue is optimized according to the priority of task requests, resource requirements, and resource contention, ensuring that high-priority tasks can be executed first.
[0339] Optionally, the task execution order is crucial in the resource allocation plan, as it affects the resource allocation for each task and the execution time of the task.
[0340] Step 312: Determine the specific requirements of the task for energy levels, storage capacity, and orbital location resources based on the task type.
[0341] For example, for each task request in the optimized task queue, the computer device can determine the specific requirements of the task for energy levels, storage capacity, and orbital location resources based on the task type.
[0342] In one implementation, the task type can be an imaging observation task, a data transmission task, an on-orbit processing task, etc.
[0343] For example, imaging observation missions require high energy and storage capacity, while on-orbit processing missions require high computing power and less storage space.
[0344] Step 313: Obtain the currently available resource information of the satellite from the status parameters.
[0345] For example, the currently available resources that a computer device can access include the currently available energy level, the currently available storage capacity, and the currently available orbital location resources.
[0346] In one implementation, the current available energy level includes the battery power available on the satellite.
[0347] In one implementation, the currently available storage capacity includes the remaining storage space on the satellite.
[0348] In one implementation, the currently available orbital position resources include the satellite's current orbital position resources. For example, whether the orbital position is shared with other missions.
[0349] Step 314: Use the resource reservation algorithm to allocate resources.
[0350] For example, the computer device can process each task request sequentially according to the optimized task queue. For the currently processed task request, the computer device checks whether the resource requirement of the task request is less than or equal to the currently available resources.
[0351] If the resource demand is less than or equal to the currently available resources, the computer will allocate the corresponding resources for the task request and update the current available resources. Otherwise, if the resource demand is greater than the currently available resources, the computer will mark the task request as pending adjustment and move on to the next task request to continue allocating resources for other tasks.
[0352] In one implementation, the currently available resources include energy, storage, and orbital location.
[0353] In one implementation, system resource updates refer to subtracting the amount of resources already allocated to the task request.
[0354] In one implementation, the task to be adjusted will undergo further adjustment and processing in subsequent steps. Optionally, these subsequent steps may be resource conflict detection and dynamic adjustment steps.
[0355] Step 315: After completing the resource allocation for all task requests, generate a resource allocation plan containing resource allocation information for all task requests.
[0356] For example, the plan details the energy level quota, storage capacity quota, and execution time window for each task. This resource allocation plan will provide data support for subsequent steps, ensuring the rational allocation of resources and the efficient execution of tasks.
[0357] In one implementation, the subsequent step can be a resource conflict detection and dynamic adjustment step.
[0358] In this example, by analyzing and optimizing the task queue order, determining task resource requirements, obtaining available satellite resources, and using a resource reservation algorithm to allocate resources, we can achieve the effect of rationally planning satellite resource allocation and generating a resource allocation plan to ensure efficient task execution.
[0359] In one example, step S2032 above involves resource conflict detection and dynamic adjustment of the resource allocation plan. This process may include: Step 321: Time window overlap detection.
[0360] For example, the computer device first detects the execution time windows of all task requests in the resource allocation plan.
[0361] In one implementation, time window overlap detection is used to identify whether there is an overlap in execution time between tasks.
[0362] In one implementation, the task execution time window is determined by the task's start and end times, and the system will check these time periods.
[0363] Step 322: When overlapping task execution times are detected, perform an overlay analysis of resource usage.
[0364] For example, when overlapping task execution times are detected, the computer device calculates the total resource requirements of all tasks within the overlapping time period to obtain the superimposed requirement.
[0365] In one implementation, the computer device performs an overlay analysis of the resource requirements for each task, particularly the requirements for energy levels, storage capacity, and orbital location resources.
[0366] Step 323: Resource conflict judgment.
[0367] For example, a computer device can compare the cumulative resource demands of different tasks with the currently available resources. When the cumulative demand exceeds the currently available resources, the computer device determines that a resource conflict exists. That is, if multiple tasks simultaneously request more energy, storage, or orbital location resources, the computer device will identify a conflict between these tasks.
[0368] Step 324: When resource conflicts occur, implement a dynamic adjustment strategy.
[0369] For example, a computer device can dynamically adjust for identified resource conflicts.
[0370] In one implementation, the computer device can adjust the execution time window. That is, the computer device can adjust the execution times of overlapping task requests, rescheduling their execution to ensure that the execution of these tasks does not conflict.
[0371] In one implementation, the computer device can reallocate resource quotas. That is, the computer device can reallocate energy level quotas and storage capacity quotas based on task priority and resource requirements. For high-priority tasks, the system will allocate sufficient resources, while for low-priority tasks, the system will reduce their resource allocation.
[0372] Step 324: The final resource allocation plan is generated. For example, after conflict detection and dynamic adjustment, the computer equipment will generate a final resource allocation plan. This plan ensures that the resource requirements of all tasks are met within the actual resource constraints of the satellite, and that resource conflicts are effectively eliminated.
[0373] In this example, by using time window overlap detection, resource overlay analysis, conflict judgment, and dynamic adjustment of execution time windows and resource quotas, the goal is to eliminate resource conflicts and generate a final resource allocation scheme that meets the actual resource constraints of the satellite.
[0374] In one example, during the execution of an autonomous control strategy, the computer device can also dynamically reallocate resources by monitoring the execution results of the autonomous control strategy, thereby improving resource allocation efficiency and task execution effectiveness. Specifically: S204. During the execution of the autonomous control strategy, monitor the task execution status and resource consumption, and dynamically reallocate the optimized task queue based on the monitoring results.
[0375] For example, after obtaining an optimized autonomous control strategy, the computer device can execute the optimized autonomous control strategy. During execution, the computer device can monitor the task execution status and resource consumption. The computer device can compare the monitoring results with the preset task execution status and resource consumption in the autonomous control strategy, and dynamically reallocate the optimized task queue when it detects that the autonomous control strategy is inaccurate.
[0376] In one example, step S204 above involves implementing an autonomous control strategy, monitoring task execution status and resource consumption, and dynamically reallocating the optimized task queue based on the monitoring results. This includes the following steps: S2041. Implement autonomous control strategies.
[0377] For example, a computer device can initiate the task execution process through the on-board task execution unit in accordance with the task execution sequence and resource allocation details specified in the autonomous control strategy.
[0378] In one implementation, the autonomous control strategy is a comprehensive strategy formulated by the computer equipment based on the optimized task queue and the current available satellite resources. This strategy includes task execution timing and resource allocation details. The autonomous control strategy specifies the start and end times of each task, as well as resource information such as energy level quotas and storage capacity quotas that can be used during execution. The autonomous control strategy clearly defines the task execution timing and the corresponding resource allocation details for each task.
[0379] In one implementation, the computer equipment precisely controls the initiation, operation, and termination of tasks according to this plan, ensuring that all tasks can be carried out smoothly in a predetermined order and according to resource requirements.
[0380] S2042. Monitor task execution status and resource consumption in real time to ensure normal task execution and promptly identify potential problems.
[0381] For example, during task execution, computer equipment continuously collects relevant information about task execution and resource usage. By collecting and analyzing this data in real time, it can promptly determine whether the task is proceeding according to the predetermined plan and whether resources are being consumed within a reasonable range, thereby ensuring the normal execution of the task and quickly identifying potential problems.
[0382] In one implementation, the task execution status refers to the stage, progress, and whether any abnormalities occur during the execution of the task.
[0383] In one implementation, resource consumption refers to the amount of energy, storage, and other resources used by the satellite during the execution of the mission.
[0384] In one implementation, the computer equipment acquires key data in real time during the mission execution process by installing various sensors on the satellite, such as the current and voltage of energy consumption and the remaining space of storage capacity, and transmits this data back to the computer equipment for analysis.
[0385] S2043. Based on the monitored task execution status and resource consumption, conduct an execution deviation assessment.
[0386] For example, the computer device compares and analyzes the real-time monitored task execution status and resource consumption data with pre-set standard values in the autonomous control strategy. By calculating the difference between the actual value and the standard value, it assesses whether there are deviations during task execution and the degree of deviation, thereby determining whether the task is executed smoothly as expected and whether resources are used rationally.
[0387] In one implementation, performance deviation assessment is a quantitative analysis process of the difference between the actual execution of a task and the predetermined plan. The assessment can determine whether the task deviates from expectations in terms of execution progress, resource utilization, etc.
[0388] In one implementation, the computer device sets a series of deviation thresholds. When the difference between the actual monitored task execution status or resource consumption data and the standard value exceeds the corresponding threshold, it is determined that there is an execution deviation.
[0389] For example, if the task execution time exceeds 10 percent of the scheduled time, it is considered that there is a deviation in the execution progress.
[0390] In another implementation, the computer equipment uses statistical methods to perform statistical analysis on the monitoring data over a period of time, calculate indicators such as the mean and variance of the data, and assess the degree of execution deviation based on the changes in these indicators.
[0391] S2044. Based on the execution deviation assessment results, trigger the dynamic reallocation of the optimized task queue.
[0392] For example, after completing the execution deviation assessment, the computer device determines whether the optimized task queue needs adjustment based on the assessment results. If the assessment results show that there is a significant deviation in task execution, which may affect the overall task progress or resource utilization efficiency, the computer device will automatically trigger a dynamic reallocation mechanism for the task queue. By readjusting the order, priority, and resource allocation of tasks in the task queue, the execution deviation is corrected to ensure that tasks can continue to execute smoothly.
[0393] In one implementation, dynamic reallocation refers to the process of adjusting the task arrangement and resource allocation in the task queue in real time according to changes in the actual situation. It aims to enable task execution to better adapt to constantly changing conditions, improving the flexibility and efficiency of task execution.
[0394] In this example, by implementing autonomous control strategies, monitoring task execution status and resource consumption in real time, conducting execution deviation assessments, and triggering dynamic reallocation of task queues, the system achieves the effects of ensuring tasks are executed smoothly as planned, promptly identifying and resolving potential problems, optimizing resource utilization, and improving overall task execution efficiency and stability.
[0395] In one example, the specific process of implementing the autonomous control strategy in step S2041 above is as follows: Step 411: Start the task execution process.
[0396] For example, the computer device can initiate the execution of each task sequentially according to the task execution sequence specified in the autonomous control strategy through the on-board task execution unit. The task execution sequence is generated in step S203 based on the optimized task queue and resource allocation scheme, ensuring that tasks are executed sequentially according to priority and resource availability.
[0397] Step 412: Application of resource allocation details.
[0398] For example, a computer device can allocate appropriate resources to each task request according to the resource allocation rules in the autonomous control strategy.
[0399] In one implementation, the resource allocation details for each task include energy level quotas, storage capacity quotas, and execution time windows.
[0400] Optionally, the energy level quota specifies a power consumption limit for each task, ensuring that the task does not exceed the predetermined battery capacity during execution.
[0401] Optionally, the storage capacity quota is a storage resource quota specified for each task to ensure that the storage space used by the task during execution does not exceed the available capacity.
[0402] Optionally, the execution time window is the execution time interval allocated to each task, ensuring that the task is completed within the specified time range.
[0403] Step 413: Constrain resource usage. For example, during task execution, computer devices can monitor the execution process to ensure that each task request is executed strictly in accordance with the allocated resource usage constraints.
[0404] In one implementation, the computer device can monitor energy usage.
[0405] Optionally, during task execution, the computer equipment can monitor the task's energy consumption in real time through the battery management unit to ensure that the power consumed by the task does not exceed the allocated energy quota.
[0406] In one implementation, the computer device can monitor storage capacity usage.
[0407] Optionally, the computer device can monitor the storage space used by the task in real time through the storage controller to ensure that the storage requirements of the task are within the allocated storage capacity.
[0408] In one implementation, the computer device can monitor the execution time window.
[0409] Optionally, the computer device can monitor the execution progress of tasks according to the allocated time window to ensure that each task is completed within the allocated time range.
[0410] In this example, by starting tasks according to their execution sequence, applying resource allocation rules, and strictly monitoring the use of energy, storage, and time window resources, the goal is to achieve the effect of tasks being executed in an orderly manner according to priority and resource constraints without exceeding limits.
[0411] In one example, step 2042 above, which involves real-time monitoring of task execution status and resource consumption, may include the following steps: Step 421: Monitor the task execution status.
[0412] For example, computer equipment can monitor the execution status of each task in real time through an on-board status monitoring unit.
[0413] Optionally, the task execution status includes: task completion progress and execution exception information.
[0414] Optionally, the task completion progress is used to monitor the actual completion status of each task and record it as a percentage. For example, if a task is 70% complete, the system will update the task progress in real time.
[0415] Optionally, exception information is used to capture and record abnormal situations during task execution, such as execution timeouts, insufficient resources, and sensor malfunctions. Exception information is recorded in code form for subsequent processing and analysis.
[0416] Step 422: Monitor resource consumption.
[0417] For example, computer devices can track the resource consumption of a task in real time through various sensors and monitoring units.
[0418] Optionally, the computer device can collect the power consumed during task execution in real time through the battery management unit to ensure that the task is not interrupted due to insufficient power.
[0419] Optionally, the computer device can monitor the storage resource usage of a task in real time through the storage controller to ensure that the task execution does not exceed the available storage space.
[0420] Optionally, the computer equipment can monitor potential orbital position changes during mission execution via an onboard GNSS receiver. Especially for missions requiring orbital adjustments, the computer equipment can record and monitor orbital deviations in real time.
[0421] Step 423: Integrate the dataset.
[0422] For example, a computer device can integrate task execution status and resource consumption data into a complete monitoring dataset. This dataset is used for subsequent execution deviation assessment, helping the computer device understand the status and resource consumption during task execution.
[0423] In this example, by monitoring the task execution status and resource consumption in real time and integrating them into a monitoring dataset, we can achieve a comprehensive understanding of the task execution progress, abnormal situations, and dynamic resource usage.
[0424] In one example, step S2043 above, performing the execution deviation assessment includes the following steps: Step 431, Task progress deviation analysis.
[0425] For example, the computer device can compare the actual monitored task completion progress with the expected task completion progress in the autonomous control strategy, and calculate the task progress deviation rate.
[0426] In one implementation, the formula for calculating the task progress deviation rate is: Task progress deviation rate = (Actual task completion progress - Expected task completion progress) / Expected task completion progress.
[0427] In one implementation, if the task progress deviation rate exceeds a preset progress deviation threshold, the computer device can mark the task request as a progress deviation and generate an execution deviation evaluation result.
[0428] Step 432: Resource consumption deviation analysis. For example, the computer device can compare the actual monitored resource consumption with the expected resource consumption in the autonomous control strategy to calculate the resource consumption deviation.
[0429] In one implementation, the formula for calculating the resource consumption deviation is: Resource consumption deviation = (Actual resource consumption - Expected resource consumption) / Expected resource consumption.
[0430] In one implementation, if the resource consumption deviation exceeds a preset consumption deviation threshold, the system will mark it as an abnormal resource consumption and generate an execution deviation assessment result.
[0431] Step 433: Generate deviation assessment results. For example, when the task progress deviation rate or resource consumption deviation exceeds a preset threshold, the computer device can generate an execution deviation assessment result that includes the deviation type and degree. These results help the system identify and handle problems in execution, ensuring that the task can be completed as expected.
[0432] In this example, by comparing the actual and expected task progress and resource consumption and calculating the deviation rate, the type and degree of task execution deviation can be accurately identified to ensure that the task is completed as expected.
[0433] In one example, step S2044 above, the dynamic reallocation of the optimized task queue includes the following steps: Step 441: Analysis of Deviation Type and Degree.
[0434] For example, the computer device first analyzes the type (schedule deviation or resource consumption deviation) and degree of deviation in the performance deviation assessment results. The type of deviation helps determine whether the problem is caused by a delay in task schedule or excessive resource consumption, while the degree of deviation reflects the severity of the problem.
[0435] Step 442: Adjust the task order.
[0436] For example, for tasks with significant schedule deviations, the computer device adjusts the execution order of the tasks in the optimized task queue based on the degree of deviation. The computer device can prioritize high-priority tasks with significant schedule deviations to ensure that they can be completed on time.
[0437] Step 443: Resource reallocation.
[0438] For example, for tasks with significant resource consumption deviations, computer equipment may reallocate its energy level quotas and storage capacity quotas. This can be achieved by increasing energy and storage quotas or by adjusting the resource usage patterns of the task execution.
[0439] Step 444: Task rescheduling.
[0440] For example, for tasks that consume too many resources or have serious schedule deviations, computer devices can reschedule their execution time windows and optimize resource allocation through task rescheduling.
[0441] Step 445: Generate the updated and optimized task queue. For example, through task rescheduling and resource reallocation, the computer device can generate an updated and optimized task queue and feed it back in real time to the resource matching and allocation process in step S203. This updated and optimized task queue will serve as part of a new autonomous control strategy, helping the system to utilize resources more efficiently in subsequent tasks and ensuring that tasks are completed on time.
[0442] In this example, by analyzing the type and degree of deviation and taking measures such as adjusting the task order, reallocating resources, and rescheduling tasks, the task queue is dynamically optimized to ensure efficient resource utilization and timely task completion.
[0443] Figure 3 A structural diagram of a remote sensing satellite mission control device provided in this application embodiment is shown below. Figure 3 As shown, the remote sensing satellite mission control device 300 includes: The adjustment module 301 is used to adjust the priority of the task request to be executed in the remote sensing satellite based on the current available resources of the remote sensing satellite and the execution information of the historical tasks corresponding to the task request stored in the remote sensing satellite. The execution module 302 is used to allocate the currently available resources of the remote sensing satellite to the task request according to the adjusted priority of the task request to be executed in the remote sensing satellite, and then execute the task request.
[0444] In one example, adjustment module 301 is used for: Based on the currently available resources of the remote sensing satellite and the resource requirements of the task requests to be executed in the remote sensing satellite, the priority adjustment value of the task requests is determined. Based on the execution information of the historical tasks corresponding to the task request stored in the remote sensing satellite, the priority weight of the task request is determined. The priority of the task requests to be executed in the remote sensing satellite is adjusted according to the priority adjustment value and the priority weight.
[0445] In one example, adjustment module 301 is used for: Based on the cumulative value of the resource requirements of each task request and the currently available resources, a resource conflict severity index is calculated. Based on the resource conflict severity index, determine the priority adjustment value for the task request.
[0446] In one example, adjustment module 301 is used for: Obtain a first historical task with the same task content as the task request and / or a second historical task with the same task type as the task request; Based on the execution information of the first historical task and / or the second historical task, the execution success rate, resource utilization efficiency, and execution urgency of the task request are estimated. Based on the first preset weight, the execution success rate, the resource utilization efficiency, and the execution urgency are weighted and summed to obtain the priority weight of the task request.
[0447] In one example, adjustment module 301 is used for: The intermediate priority is obtained by summing the priority of the task request with the priority adjustment value. The adjusted priority is obtained by multiplying the intermediate priority by the priority weight of the task request.
[0448] In one example, execution module 302 is used for: The currently available resources are pre-allocated to each of the task requests according to their priority order. If the pre-allocated resources for any of the task requests are 0, then after adjusting the time window and / or resource requirements of the task requests, the currently available resources are re-allocated to each of the task requests. If there is no task request with a pre-allocated resource of 0, then each task request is executed according to the resources pre-allocated for each task request.
[0449] In one example, execution module 302 is used for: The task requests are retrieved according to their priority order. If the currently available resources are greater than or equal to the resource requirements of the currently processed task request, then resources are pre-allocated from the currently available resources for the currently processed task request according to the resource requirements of the task request; If the currently available resources are less than the resource requirements of the currently processed task request, then skip the currently processed task request; Update the currently available resources.
[0450] Further functional descriptions of the above modules and units are the same as those in the corresponding embodiments described above, and will not be repeated here.
[0451] In this embodiment, the remote sensing satellite mission control device is presented in the form of a functional unit. Here, a unit refers to an application-specific integrated circuit (ASIC), a processor and memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.
[0452] Figure 4 A structural diagram of a computer device provided in an embodiment of this application, such as... Figure 4As shown, the computer device 400 includes one or more processors 401, memory 402, and interfaces for connecting the components, including high-speed interfaces and low-speed interfaces. The components communicate with each other via different buses and can be mounted on a common motherboard or otherwise installed as needed. The processors can process instructions executed within the computer device, including instructions stored in or on memory to display graphical information of a GUI on external input / output devices (such as display devices coupled to the interface). In some alternative implementations, multiple processors and / or multiple buses can be used with multiple memories and multiple memory modules, if desired. Similarly, multiple computer devices can be connected, each providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multiprocessor system). Figure 4 Take a processor 401 as an example.
[0453] Processor 401 may be a central processing unit, a network processor, or a combination thereof. Processor 401 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The programmable logic device may be a complex programmable logic device (CAMP), a field-programmable gate array (FPGA), a general-purpose array logic (GDA), or any combination thereof.
[0454] The memory 402 stores instructions executable by at least one processor 401 to cause the at least one processor 401 to perform the method shown in the above embodiments.
[0455] Memory 402 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created based on the use of the computer device. Furthermore, memory 402 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some alternative embodiments, memory 402 may optionally include memory remotely located relative to processor 401, and this remote memory may be connected to the computer device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0456] Memory 402 may include volatile memory, such as random access memory; memory may also include non-volatile memory, such as flash memory, hard disk or solid-state drive; memory 402 may also include combinations of the above types of memory.
[0457] The computer device also includes a communication interface 403 for communicating with other devices or communication networks.
[0458] This application also provides a computer-readable storage medium. The methods described in this application can be implemented in hardware or firmware, or implemented as recordable on a storage medium, or implemented as computer code downloaded over a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and subsequently stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the methods shown in the above embodiments are implemented.
[0459] This application provides a computer program product including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the method of any embodiment of this application.
[0460] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and all such modifications and variations fall within the scope defined by the appended claims.
[0461] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and such modifications and variations all fall within the scope defined by the appended claims.
Claims
1. A method for controlling remote sensing satellite missions, characterized in that, The method includes: Based on the currently available resources of the remote sensing satellite and the execution information of historical tasks stored in the remote sensing satellite, the priority of the task requests to be executed in the remote sensing satellite is adjusted. After adjusting the priority of the task request to be executed in the remote sensing satellite according to the task request, the currently available resources of the remote sensing satellite are allocated to the task request, and then the task request is executed.
2. The method according to claim 1, characterized in that, Based on the currently available resources of the remote sensing satellite and the execution information of historical tasks corresponding to the task requests stored in the remote sensing satellite, the priority of the task requests to be executed in the remote sensing satellite is adjusted, including: Based on the currently available resources of the remote sensing satellite and the resource requirements of the task requests to be executed in the remote sensing satellite, the priority adjustment value of the task requests is determined. Based on the execution information of the historical tasks corresponding to the task request stored in the remote sensing satellite, the priority weight of the task request is determined. The priority of the task requests to be executed in the remote sensing satellite is adjusted according to the priority adjustment value and the priority weight.
3. The method according to claim 2, characterized in that, Based on the currently available resources of the remote sensing satellite and the resource requirements of the task requests to be executed on the remote sensing satellite, the priority adjustment value of the task requests is determined, including: Based on the cumulative value of the resource requirements of each task request and the currently available resources, a resource conflict severity index is calculated. Based on the resource conflict severity index, determine the priority adjustment value for the task request.
4. The method according to claim 2, characterized in that, Based on the execution information of historical tasks corresponding to the task request stored in the remote sensing satellite, the priority weight of the task request is determined, including: Obtain a first historical task with the same task content as the task request and / or a second historical task with the same task type as the task request; Based on the execution information of the first historical task and / or the second historical task, the execution success rate, resource utilization efficiency, and execution urgency of the task request are estimated. Based on the first preset weight, the execution success rate, the resource utilization efficiency, and the execution urgency are weighted and summed to obtain the priority weight of the task request.
5. The method according to claim 2, characterized in that, The priority of the task requests to be executed in the remote sensing satellite is adjusted according to the priority adjustment value and the priority weight, including: The intermediate priority is obtained by summing the priority of the task request with the priority adjustment value. The adjusted priority is obtained by multiplying the intermediate priority by the priority weight of the task request.
6. The method according to any one of claims 1-5, characterized in that, After allocating the currently available resources of the remote sensing satellite to the task requests according to the adjusted priorities of the task requests to be executed in the remote sensing satellite, the task requests are executed, including: The currently available resources are pre-allocated to each of the task requests according to their priority order. If the pre-allocated resources for any of the task requests are 0, then after adjusting the time window and / or resource requirements of the task requests, the currently available resources are re-allocated to each of the task requests. If there is no task request with a pre-allocated resource of 0, then each task request is executed according to the resources pre-allocated for each task request.
7. The method according to claim 6, characterized in that, The currently available resources are pre-allocated to each of the task requests according to their priority order, including: The task requests are retrieved according to their priority order. If the currently available resources are greater than or equal to the resource requirements of the currently processed task request, then resources are pre-allocated from the currently available resources for the currently processed task request according to the resource requirements of the task request; If the currently available resources are less than the resource requirements of the currently processed task request, then skip the currently processed task request; Update the currently available resources.
8. A remote sensing satellite mission control device, characterized in that, The device includes: The adjustment module is used to adjust the priority of the task requests to be executed in the remote sensing satellite based on the current available resources of the remote sensing satellite and the execution information of the historical tasks corresponding to the task requests stored in the remote sensing satellite. The execution module is used to allocate the currently available resources of the remote sensing satellite to the task request according to the adjusted priority of the task request to be executed in the remote sensing satellite, and then execute the task request.
9. A computer device, characterized in that, include: A memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, the processor executing the computer instructions to perform the method of any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing a computer to perform the method of any one of claims 1 to 8.
11. A computer program product, characterized in that, Includes computer instructions for causing a computer to perform the method of any one of claims 1 to 8.