Layered task scheduling method suitable for low earth orbit satellite and related equipment

Through the hierarchical task scheduling method and iterative computing formula, the scheduling strategy is optimized, combined with hierarchical optimization and distributed scheduling mechanism, the complexity and scalability of task scheduling in low-earth orbit satellite networks are solved, and the system's adaptability and task processing capabilities are improved.

CN119997100AActive Publication Date: 2025-05-13BEIJING UNIV OF POSTS & TELECOMM
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510070889.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-16
Publication Date
2025-05-13
Estimated Expiration
2045-01-16

AI Technical Summary

Technical Problem

After the scale of low-earth orbit satellite networks expand, centralized control task scheduling faces complexity and scalability challenges, and due to the instability and bandwidth limitations of inter-satellite communications and satellite ground station links, global optimization decisions are difficult to achieve.

Method used

A hierarchical task scheduling method is proposed, which optimizes the scheduling strategy through iterative calculation formulas, combines hierarchical optimization and distributed scheduling mechanisms, and dynamically adjusts the scheduling strategy to adapt to system load and constraints.

Benefits of technology

It improves the accuracy of scheduling strategies and system adaptability, enhances task processing capabilities, and solves the scalability and global optimization problems of centralized scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119997100A_ABST
    Figure CN119997100A_ABST
Patent Text Reader

Abstract

One or more embodiments of the invention provide a hierarchical task scheduling method suitable for a low earth orbit satellite and related equipment. The method comprises the steps of obtaining a first distribution strategy according to a current scheduling strategy and to-be-processed task information of a container, and obtaining an intermediate scheduling strategy according to the current scheduling strategy, the to-be-processed task information of the container and to-be-processed task information of a server; obtaining a second allocation strategy according to the intermediate scheduling strategy and the to-be-processed task information of the server, and updating the first operator according to the first allocation strategy, the second allocation strategy and the to-be-processed task information of the server; obtaining a third allocation strategy according to the first operator, the second operator and the to-be-processed task information of the server, and updating the second operator according to the to-be-processed task information of the server and the third allocation strategy; and obtaining an updated scheduling strategy according to the second distribution strategy, the third distribution strategy and the to-be-processed task information of the server. The performance and task processing efficiency of the satellite system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] One or more embodiments of the present application relate to the field of satellite communication technology, and in particular, to a layered task scheduling method and related equipment applicable to low earth orbit satellites. Background Art

[0002] In recent years, the rapid development of low earth orbit satellites (LEO) has enabled satellite technology to achieve remarkable achievements in the field of global Internet access services. For example, the existing Starlink network has deployed more than 4,000 low earth orbit satellites, which can provide Internet services to more than 2.3 million users in areas with poor infrastructure. The goal of these satellites is to better support the development of various Internet applications such as artificial intelligence (AI), computer vision (CV), and natural language processing (NLP), thereby driving the increasing demand for computing on low-orbit platforms.

[0003] However, as the scale of Starlink continues to expand, centralized control for task scheduling may face complexity and scalability challenges. In addition, due to the instability of inter-satellite communications and links between satellites and ground stations, as well as bandwidth limitations, frequent interactions between different satellites and between satellites and ground stations to optimize global decisions have become very difficult, which to some extent restricts the performance of fully distributed decision-making. Therefore, it is of great significance and value to study the hierarchical task scheduling strategy for low-orbit satellites. Summary of the invention

[0004] In view of this, an object of one or more embodiments of the present application is to propose a hierarchical task scheduling method and related equipment suitable for low-earth orbit satellites to solve the problems raised by the background technology.

[0005] Based on the above objectives, one or more embodiments of the present application provide a hierarchical task scheduling method applicable to low earth orbit satellites. The method comprises:

[0006] Obtaining a first allocation strategy according to a current scheduling strategy and information about pending tasks of a container, and obtaining an intermediate scheduling strategy according to the current scheduling strategy, information about pending tasks of the container and information about pending tasks of a server;

[0007] Obtaining a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and updating a first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server;

[0008] Obtaining a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and updating the second operator according to the pending task information of the server and the third allocation strategy;

[0009] An updated scheduling strategy is obtained according to the second allocation strategy, the third allocation strategy and the pending task information of the server.

[0010] Optionally, the first allocation strategy is obtained by executing the following steps:

[0011] Determine the current task allocation strategy of the container according to the current scheduling strategy;

[0012] According to the current task allocation strategy of the container and the pending task information of the container, the first allocation strategy is obtained by iteratively calculating the following formula until the result converges; the first allocation strategy indicates the optimal target unloading container for any task, and the container is deployed on the server;

[0013]

[0014] Where k represents the iteration number, γ represents the parameter used to control the step size or learning rate in the iterative calculation, which is used to adjust the update amplitude of the variable at each iteration to ensure that the iterative process can stably converge to the optimal solution or close to the optimal solution, a represents the state variable in the optimization process, and F i represents the unloading advantage factor of the i-th satellite, L o represents the workload of the container, Q o Represents the pending task queue of the container, i represents the satellite index, m represents the task index, and o represents the container index.

[0015] Optionally, the intermediate scheduling strategy is obtained by executing the following steps:

[0016] According to the current scheduling strategy, the pending task information of the container and the pending task information of the server, the intermediate scheduling strategy is obtained by iteratively calculating through the following formula until the result converges;

[0017]

[0018] Among them, η s represents the current scheduling strategy, Indicates the fixed information of the tasks to be processed by server s, represents the task information to be processed of container o under the first allocation strategy, and γ′ represents the parameter used to control the update step size and items related to the task information in the iterative calculation.

[0019] Optionally, the second allocation strategy is obtained by executing the following steps:

[0020] Determine the current task allocation strategy of the server according to the current scheduling strategy;

[0021] According to the current task allocation strategy of the server, the intermediate scheduling strategy and the pending task information of the server, the second allocation strategy is obtained by iteratively calculating the following formula until the result converges; the second allocation strategy indicates the optimal target offloading server for any task;

[0022]

[0023] Among them, η s represents the intermediate scheduling strategy, Q s represents the server's pending task queue, μ represents the first operator, and L s (Q s ) represents the load of server s.

[0024] Optionally, the first operator performs the following steps to obtain:

[0025] According to the first allocation strategy, the second allocation strategy and the pending task information of the server, iteratively calculate by the following formula until the result converges to obtain the first operator;

[0026]

[0027] in, Represents fixed information of pending tasks under the top-level strategy.

[0028] Optionally, the third allocation strategy is obtained by executing the following steps:

[0029] Determine the top-level task allocation strategy based on the current scheduling strategy;

[0030] According to the top-level task allocation strategy, the first operator, the second operator and the task information to be processed of the server, the third allocation strategy is obtained by iteratively calculating the following formula until the result converges;

[0031]

[0032] Wherein, γ″ represents a parameter used to control the update step size in iterative calculation, and λ represents the second operator.

[0033] Optionally, the second operator performs the following steps to obtain:

[0034] According to the to-be-processed task information of the server and the third allocation strategy, the second operator is obtained by iteratively calculating the following formula until the result converges;

[0035]

[0036] Wherein, p represents a constraint parameter, which is related to the load of the server cluster.

[0037] Based on the same inventive concept, one or more embodiments of the present application further provide a hierarchical task scheduling device applicable to a low earth orbit satellite, including:

[0038] The first calculation module 11 is configured to obtain a first allocation strategy according to a current scheduling strategy and information about pending tasks of a container, and to obtain an intermediate scheduling strategy according to the current scheduling strategy, information about pending tasks of the container and information about pending tasks of a server;

[0039] The second calculation module 12 is configured to obtain a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and update the first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server;

[0040] The third calculation module 13 is configured to obtain a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and update the second operator according to the pending task information of the server and the third allocation strategy;

[0041] The fourth calculation module 14 is configured to obtain an updated scheduling strategy according to the second allocation strategy, the third allocation strategy and the to-be-processed task information of the server.

[0042] Based on the same inventive concept, one or more embodiments of the present application also provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements a layered task scheduling method for low-Earth orbit satellites as described in any one of the above items.

[0043] Based on the same inventive concept, one or more embodiments of the present application also provide a non-transitory computer-readable storage medium, which stores computer instructions, and the computer instructions are used to enable the computer to execute any of the above-mentioned layered task scheduling methods applicable to low-Earth orbit satellites.

[0044] From the above, it can be seen that the hierarchical task scheduling method for low-earth orbit satellites provided by one or more embodiments of the present application obtains a first allocation strategy based on the current scheduling strategy and the pending task information of the container, and obtains an intermediate scheduling strategy based on the current scheduling strategy, the pending task information of the container and the pending task information of the server; obtains a second allocation strategy based on the intermediate scheduling strategy and the pending task information of the server, and updates the first operator based on the first allocation strategy, the second allocation strategy and the pending task information of the server; obtains a third allocation strategy based on the first operator, the second operator and the pending task information of the server, and updates the second operator based on the pending task information of the server and the third allocation strategy; obtains an updated scheduling strategy based on the second allocation strategy, the third allocation strategy and the pending task information of the server.

[0045] The technical solution of this application integrates the hierarchical optimization mechanism and the distributed scheduling mechanism, and proposes a hierarchical task scheduling method suitable for low-Earth orbit satellites. Among them, the hierarchical optimization mechanism can dynamically adjust the scheduling strategy based on the load and constraints of each layer of the system, improve the accuracy of the scheduling strategy, and further improve the system's adaptability and task processing capabilities. The distributed scheduling mechanism refers to the process of allocating and scheduling computing tasks among multiple computing nodes. This scheduling mechanism allows each node to dynamically adjust task offloading decisions based on real-time network conditions, resource availability, and task priorities and requirements.

[0046] The layered task scheduling device, electronic device and computer-readable storage medium for low-Earth orbit satellites provided in the present application are all capable of implementing the steps of the above-mentioned layered task scheduling method for low-Earth orbit satellites, and therefore also have the beneficial effects of the above-mentioned layered task scheduling method for low-Earth orbit satellites. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] In order to more clearly illustrate one or more embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only one or more embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0048] Figure 1 A flowchart of a hierarchical task scheduling method for a low earth orbit satellite applicable to one or more embodiments of the present application;

[0049] Figure 2 A schematic diagram of the structure of a hierarchical task scheduling device applicable to a low earth orbit satellite according to one or more embodiments of the present application;

[0050] Figure 3 A schematic diagram of the hardware structure of an electronic device according to one or more embodiments of the present application. DETAILED DESCRIPTION

[0051] In order to make the objectives, technical solutions and advantages of the present disclosure more clearly understood, the present disclosure is further described in detail below in combination with specific embodiments and with reference to the accompanying drawings.

[0052] It should be noted that, unless otherwise defined, the technical terms or scientific terms used in one or more embodiments of the present application should be understood by people with ordinary skills in the field to which the present disclosure belongs. The "first", "second" and similar words used in one or more embodiments of the present application do not indicate any order, quantity or importance, but are only used to distinguish different components. "Include" or "comprise" and similar words mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. "Connect" or "connected" and similar words are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.

[0053] As described in the background technology, at present, due to the continuous expansion of Starlink and the instability and limited bandwidth of inter-satellite and satellite-to-ground links, it is impossible to simply rely on centralized or fully distributed methods to schedule tasks. The former will lead to poor scalability, and the latter will lead to poor performance due to the difficulty in determining the optimal solution.

[0054] To solve the above problems, this application proposes a hierarchical optimization and distributed scheduling mechanism to achieve the unloading of computing tasks according to specific circumstances. When the hierarchical scheduling mechanism framework implements optimization between different layers, the scheduling strategy of the upper layer needs to take into account the resource status and arithmetic constraints of the lower layer, and the task allocation strategy of the lower layer needs to be fed back to the upper layer to guide future policy adjustments. Complementing the hierarchical optimization is the distributed scheduling mechanism. Distributed scheduling refers to the process of allocating and scheduling computing tasks among multiple computing nodes. This scheduling mechanism allows a single node to dynamically adjust task offloading decisions based on real-time network conditions, resource availability, and task priority and demand.

[0055] Specifically, refer to Figure 1 The hierarchical task scheduling method applicable to a low earth orbit satellite in one or more embodiments of the present application comprises the following steps:

[0056] Step S101: obtaining a first allocation strategy according to the current scheduling strategy and the pending task information of the container, and obtaining an intermediate scheduling strategy according to the current scheduling strategy, the pending task information of the container and the pending task information of the server.

[0057] Step S102: obtaining a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and updating the first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server.

[0058] Step S103: obtaining a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and updating the second operator according to the pending task information of the server and the third allocation strategy.

[0059] Step S104: obtaining an updated scheduling strategy according to the second allocation strategy, the third allocation strategy and the pending task information of the server.

[0060] The method proposed in this application is to calculate the lower-level task allocation strategy based on the existing overall scheduling strategy in combination with the lower-level resource status and arithmetic constraints, and update the overall scheduling strategy based on the lower-level task allocation strategy.

[0061] In order to perform layered optimization, this application divides the low earth orbit satellite system into three layers: satellite layer, server layer and container layer. The server layer includes multiple servers, which are used to undertake the task of satellite unloading in the satellite layer; the container can be regarded as the computing resource of the server, which is used to perform tasks on the corresponding server. The server provides the underlying hardware and operating system support for the container, and the container encapsulates the application and its operating environment together to form a modular computing unit.

[0062] The purpose of step S101 is to determine the optimal task allocation strategy at the container level according to the current scheduling strategy and information such as the load of the container.

[0063] The above current scheduling strategy represents the overall scheduling strategy for the low earth orbit satellite system including the satellite layer, the server layer and the container layer. The first allocation strategy of the container layer can be obtained by combining the above current scheduling strategy and the pending task information of the container.

[0064] Specifically, the pending task information may include the pending task queue, the execution time c(m i ), the execution time of the task on the server c(m e ), estimated transmission delay of the mission’s raw data from the satellite to the server Satellite execution accuracy a i 、Server execution accuracy as and the number of tasks currently being processed by the container, Q o .

[0065] In the embodiment of the present application, the above-mentioned first allocation strategy is obtained by iteratively calculating the following formula until a result is obtained.

[0066]

[0067] Where k represents the iteration round, γ represents the parameter used to control the step size or learning rate in the iterative calculation, which is used to adjust the update amplitude of the variable at each iteration to ensure that the iterative process can stably converge to the optimal solution or close to the optimal solution, and a represents the state variable in the optimization process, a(k) = (y(k), μ(k), γ(k), λ(k)), which includes the decision variables of the current iteration round and the Lagrange multipliers λ, γ, μ, F i represents the unloading advantage factor of the i-th satellite, L o represents the workload of the container, Q o represents the queue of pending tasks of the container, i represents the satellite index, m represents the task index, and o represents the container index. The state variables in the optimization process of this application may include the state variables of the satellite and server models. In some embodiments of this application, the state variables are represented by the inference accuracy. That is, the state variables of this application may include: a i , represents the model m i In satellite i The inference accuracy on s , which represents the inference accuracy of the server-side model.

[0068] L() is an expression related to the Lagrangian function. indicates that the mth task of the i-th satellite is offloaded to the o-th container of the s-th server, This means do not uninstall.

[0069] It is understandable that the first allocation strategy It is a model derived from the Lagrangian function and related constraints for calculating the optimal task allocation strategy at the container layer, which takes into account the offloading advantage F and the relevant information of the tasks to be processed.

[0070] After obtaining the first allocation strategy of the container layer, the scheduling strategy can be optimized based on the first allocation strategy to obtain an intermediate scheduling strategy.

[0071] In the embodiment of the present application, according to the first allocation strategy The fixed parameters or decision information of the server layer (which can be regarded as the fixed optimizer of the server layer) are iteratively calculated by the following formula until the calculation results converge to obtain the intermediate scheduling strategy;

[0072]

[0073] Among them, η s represents the current scheduling strategy, based on which the intermediate scheduling strategy can be obtained by iterative calculation. represents the fixed information of the tasks to be processed by server s, that is, the fixed parameters or decision information of the server layer mentioned above (which can be regarded as the fixed optimizer of the server layer), represents the task information to be processed of container o under the first allocation strategy, and γ′ represents the parameter used to control the update step size and items related to the task information in the iterative calculation.

[0074] is the correlation between the number of tasks to be executed on server s and the second allocation strategy. It is a quantity used to calculate the correlation between the number of tasks to be executed on container o and the first allocation strategy.

[0075] The above calculations effectively coordinate local decisions with global strategies, ensuring that the low-Earth orbit satellite system continuously optimizes the task allocation strategy, improves the system's computational efficiency, and responds to minor changes in the system.

[0076] The second allocation strategy of the server layer will be determined based on the above results. In an embodiment of the present application, the container can calculate the above first allocation strategy and the above intermediate scheduling strategy, and send the above calculation results to the target server so that the server can calculate the second allocation strategy; or any calculation module can calculate the above first allocation strategy and the above intermediate scheduling strategy, and send them to the second calculation module for subsequent calculation; or the same calculation module can perform all the above calculations.

[0077] The function of step S102 is to determine the optimal task offloading decision of the server.

[0078] The second allocation strategy in calculation step S102 needs to be determined based on the intermediate scheduling strategy in step S101, the current task allocation strategy of the server and the pending task information of the server. The pending tasks of the server are determined based on the pending tasks of the container on the server.

[0079] In the embodiment of the present application, the second allocation strategy is obtained by iteratively calculating the following formula until a result is obtained.

[0080]

[0081] Among them, η s represents the intermediate scheduling strategy, Q s represents the server's pending task queue, μ represents the first operator, and L s (Q s) represents the load of server s. The first operator can be a Lagrange multiplier, which is used to decouple the decisions of the satellite layer and the server layer. It is a parameter related to the server load balancing scheduling and is used for calculation in the optimization process. s (Q s ) and the number of tasks currently processed by server s, Q s Related.

[0082] It means that the mth task of the i-th satellite is offloaded to the s-th server. It means not to uninstall. s (Q s ): workload function of server s, and the number of tasks Q currently processed by server s s Related, used to measure the load on the server.

[0083] It can be understood that the model of the second allocation strategy is derived based on the Lagrangian function and related constraints, and is used to calculate the optimal task allocation strategy for the server layer, taking into account the overall load of the server layer and the coordination relationship with the satellite layer and container layer decisions.

[0084] The first operator is updated after each calculation. In the embodiment of the present application, the fixed information of the tasks to be processed of the server and the fixed information of the tasks to be processed under the top-level strategy can be sent to the load balancing scheduler or the preset calculation module for calculation.

[0085] The first operator is iteratively calculated using the following formula until the result converges.

[0086]

[0087] in, represents the fixed information of the tasks to be processed under the top-level strategy, g s Indicates the load of server s under the second allocation strategy. Q s represents the pending task queue of server s, g S Indicates the load of server cluster S under the second allocation strategy. Q S The queue of pending tasks of the server cluster S is shown.

[0088] Step S102 calculates the second allocation strategy of the server layer according to the first operator, and then updates the first operator according to the latest pending task information of the server layer and the satellite layer data, optimizes the task allocation strategy of the server layer, and further optimizes the task allocation strategy of the system. Step S102 effectively realizes the dynamic optimization and allocation of server layer tasks.

[0089] Step S103 is used to generate the optimal allocation strategy for each task, based on the Lagrangian function and the related constraints, to calculate the third allocation strategy for the satellite layer. Step S103 takes into account the pending tasks of the satellite itself and the coordination relationship with the satellite layer and container layer decisions to achieve the optimization goal of overall task scheduling.

[0090] The third allocation strategy is obtained according to the top-level task allocation strategy, the first operator, the second operator and the pending task information of the server. Specifically, the third allocation strategy can be obtained by iteratively calculating the following formula until the result converges.

[0091]

[0092] Wherein, γ″ represents a parameter for controlling the update step size in iterative calculation, λ represents a second operator, and λ represents a second operator, the second operator may be a Lagrange multiplier, and its value is related to the third allocation strategy of the satellite layer and the second allocation strategy of the server layer. Indicates that the mth task of the i-th satellite is offloaded to the server, This means do not uninstall.

[0093] The second operator is iteratively calculated using the following formula until the result converges.

[0094]

[0095] Wherein, p represents a constraint parameter, and the constraint parameter is related to the load of the server cluster. In the embodiment of the present application, the constraint parameter can be set to the maximum load allowed by the server cluster, etc.

[0096] The update of the second operator may be calculated by a load balancing scheduler or other preset calculation modules.

[0097] Step S104 is to update the overall scheduling strategy of the system according to the previously obtained allocation strategy. This calculation can be performed by a load balancing scheduler or other preset calculation modules.

[0098] It can be understood that the method can be executed by any device, equipment, platform, or device cluster having computing and processing capabilities.

[0099] According to the above content, the technical solution of this application integrates the hierarchical optimization mechanism and the distributed scheduling mechanism, and proposes a hierarchical task scheduling method suitable for low-Earth orbit satellites. Among them, the hierarchical optimization mechanism can dynamically adjust the scheduling strategy based on the load and constraints of each layer of the system, improve the accuracy of the scheduling strategy, and further improve the system's adaptability and task processing capabilities. The distributed scheduling mechanism refers to the process of allocating and scheduling computing tasks among multiple computing nodes. This scheduling mechanism allows each node to dynamically adjust task offloading decisions based on real-time network conditions, resource availability, and task priorities and requirements.

[0100] That is, the present application realizes dynamic task scheduling through collaboration between various levels of the system, ensuring that the system can make timely adjustments under changing task and load conditions, thereby optimizing overall performance.

[0101] It should be noted that the method of one or more embodiments of the present application can be performed by a single device, such as a computer or server. The method of this embodiment can also be applied to a distributed scenario and completed by multiple devices cooperating with each other. In the case of such a distributed scenario, one of the multiple devices can only perform one or more steps in the method of one or more embodiments of the present application, and the multiple devices will interact with each other to complete the described method.

[0102] It should be noted that the above describes specific embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0103] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present application also provides a hierarchical task scheduling device applicable to low earth orbit satellites. Figure 2 As shown, the device comprises:

[0104] The first calculation module 11 is configured to obtain a first allocation strategy according to a current scheduling strategy and information about pending tasks of a container, and to obtain an intermediate scheduling strategy according to the current scheduling strategy, information about pending tasks of the container and information about pending tasks of a server;

[0105] The second calculation module 12 is configured to obtain a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and update the first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server;

[0106] The third calculation module 13 is configured to obtain a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and update the second operator according to the pending task information of the server and the third allocation strategy;

[0107] The fourth calculation module 14 is configured to obtain an updated scheduling strategy according to the second allocation strategy, the third allocation strategy and the to-be-processed task information of the server.

[0108] For the convenience of description, the above devices are described in terms of functions divided into various modules. Of course, when implementing one or more embodiments of the present application, the functions of each module can be implemented in the same or multiple software and / or hardware.

[0109] The apparatus of the above-mentioned embodiment is used to implement the corresponding method in the above-mentioned embodiment, and has the beneficial effects of the corresponding method embodiment, which will not be described in detail here.

[0110] Figure 3 A more specific schematic diagram of the hardware structure of an electronic device provided in this embodiment is shown, and the device may include: a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. The processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040 are connected to each other through the bus 1050 in the device.

[0111] The processor 1010 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application.

[0112] The memory 1020 may be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 1020 may store an operating system and other application programs. When the technical solution provided in the embodiment of the present application is implemented by software or firmware, the relevant program code is stored in the memory 1020 and is called and executed by the processor 1010.

[0113] The input / output interface 1030 is used to connect the input / output module to realize information input and output. The input / output module can be configured in the device as a component (not shown in the figure), or it can be externally connected to the device to provide corresponding functions. The input device may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device may include a display, a speaker, a vibrator, an indicator light, etc.

[0114] The communication interface 1040 is used to connect a communication module (not shown) to realize communication interaction between the device and other devices. The communication module can realize communication through a wired mode (such as USB, network cable, etc.) or a wireless mode (such as mobile network, WIFI, Bluetooth, etc.).

[0115] The bus 1050 includes a path that transmits information between the various components of the device (eg, the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040).

[0116] It should be noted that, although the above device only shows the processor 1010, the memory 1020, the input / output interface 1030, the communication interface 1040 and the bus 1050, in the specific implementation process, the device may also include other components necessary for normal operation. In addition, it can be understood by those skilled in the art that the above device may also only include the components necessary for implementing the embodiment of the present application, and does not necessarily include all the components shown in the figure.

[0117] The electronic device of the above embodiment is used to implement the corresponding method in the above embodiment, and has the beneficial effects of the corresponding method embodiment, which will not be described in detail here.

[0118] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.

[0119] Those skilled in the art should understand that the discussion of any of the above embodiments is merely illustrative and is not intended to imply that the scope of the present disclosure (including the claims) is limited to these examples. Based on the concept of the present disclosure, the technical features in the above embodiments or different embodiments may be combined, the steps may be implemented in any order, and there are many other variations of different aspects of one or more embodiments of the present application as described above, which are not provided in detail for the sake of simplicity.

[0120] In addition, to simplify the description and discussion, and in order not to make one or more embodiments of the present application difficult to understand, the known power / ground connections to the integrated circuit (IC) chip and other components may or may not be shown in the provided drawings. In addition, the device can be shown in the form of a block diagram to avoid making one or more embodiments of the present application difficult to understand, and this also takes into account the fact that the details of the implementation of these block diagram devices are highly dependent on the platform on which one or more embodiments of the present application will be implemented (that is, these details should be fully within the scope of understanding of those skilled in the art). In the case of elaborating specific details (e.g., circuits) to describe exemplary embodiments of the present disclosure, it is obvious to those skilled in the art that one or more embodiments of the present application can be implemented without these specific details or when these specific details are changed. Therefore, these descriptions should be considered illustrative rather than restrictive.

[0121] Although the present disclosure has been described in conjunction with specific embodiments of the present disclosure, many replacements, modifications and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may use the embodiments discussed.

[0122] One or more embodiments of the present application are intended to cover all such substitutions, modifications and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of one or more embodiments of the present application should be included in the scope of protection of this disclosure.

Claims

1. A hierarchical task scheduling method applicable to low earth orbit satellites, characterized in that: include: Obtaining a first allocation strategy according to a current scheduling strategy and information about pending tasks of a container, and obtaining an intermediate scheduling strategy according to the current scheduling strategy, information about pending tasks of the container and information about pending tasks of a server; Obtaining a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and updating a first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server; Obtaining a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and updating the second operator according to the pending task information of the server and the third allocation strategy; An updated scheduling strategy is obtained according to the second allocation strategy, the third allocation strategy and the pending task information of the server.

2. The method according to claim 1, characterized in that The first allocation strategy is obtained by executing the following steps: Determine the current task allocation strategy of the container according to the current scheduling strategy; According to the current task allocation strategy of the container and the pending task information of the container, the first allocation strategy is obtained by iteratively calculating the following formula until the result converges; the first allocation strategy indicates the optimal target unloading container for any task, and the container is deployed on the server; Where k represents the iteration round, γ represents the parameter used to control the step size or learning rate in the iterative calculation, which is used to adjust the update amplitude of the variable at each iteration to ensure that the iterative process can stably converge to the optimal solution or close to the optimal solution, and a represents the state variable in the optimization process, a(k) = (y(k), μ(k), γ(k), λ(k)), which includes the decision variables of the current iteration round and the Lagrange multipliers λ, γ, μ, F i represents the unloading advantage factor of the i-th satellite, L o represents the workload of the container, Q o Represents the pending task queue of the container, i represents the satellite index, m represents the task index, and o represents the container index.

3. The method according to claim 2, characterized in that The intermediate scheduling strategy is obtained by executing the following steps: According to the current scheduling strategy, the pending task information of the container and the pending task information of the server, the intermediate scheduling strategy is obtained by iteratively calculating through the following formula until the result converges; Among them, η s represents the current scheduling strategy, Indicates the fixed information of the tasks to be processed by server s, represents the task information to be processed of container o under the first allocation strategy, and γ′ represents the parameter used to control the update step size and items related to the task information in the iterative calculation.

4. The method according to claim 3, characterized in that The second allocation strategy is obtained by executing the following steps: Determine the current task allocation strategy of the server according to the current scheduling strategy; According to the current task allocation strategy of the server, the intermediate scheduling strategy and the pending task information of the server, the second allocation strategy is obtained by iteratively calculating the following formula until the result converges; the second allocation strategy indicates the optimal target offloading server for any task; Among them, η s represents the intermediate scheduling strategy, Q s represents the server's pending task queue, μ represents the first operator, and L s (Q s ) represents the load of server s.

5. The method according to claim 4, characterized in that The first operator performs the following steps to obtain: According to the first allocation strategy, the second allocation strategy and the pending task information of the server, iteratively calculate by the following formula until the result converges to obtain the first operator; in, Represents fixed information of pending tasks under the top-level strategy.

6. The method according to claim 5, characterized in that The third allocation strategy is obtained by executing the following steps: Determine the top-level task allocation strategy based on the current scheduling strategy; According to the top-level task allocation strategy, the first operator, the second operator and the pending task information of the server, the third allocation strategy is obtained by iteratively calculating the following formula until the result converges; Wherein, γ″ represents a parameter used to control the update step size in iterative calculation, and λ represents the second operator.

7. The method according to claim 6, characterized in that The second operator performs the following steps to obtain: According to the to-be-processed task information of the server and the third allocation strategy, the second operator is obtained by iteratively calculating the following formula until the result converges; Wherein, p represents a constraint parameter, which is related to the load of the server cluster.

8. A hierarchical task scheduling device suitable for low earth orbit satellites, characterized in that: include: A first calculation module is configured to obtain a first allocation strategy according to a current scheduling strategy and information about pending tasks of a container, and to obtain an intermediate scheduling strategy according to the current scheduling strategy, information about pending tasks of the container and information about pending tasks of a server; a second computing module configured to obtain a second allocation strategy according to the intermediate scheduling strategy and the pending task information of the server, and update the first operator according to the first allocation strategy, the second allocation strategy and the pending task information of the server; a third calculation module, configured to obtain a third allocation strategy according to the first operator, the second operator and the pending task information of the server, and update the second operator according to the pending task information of the server and the third allocation strategy; The fourth calculation module is configured to obtain an updated scheduling strategy according to the second allocation strategy, the third allocation strategy and the pending task information of the server.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method according to any one of claims 1 to 7 is implemented.

10. A non-transitory computer-readable storage medium, characterized in that: The non-transitory computer-readable storage medium stores computer instructions, and the computer instructions are used to cause the computer to execute any one of claims 1 to 7.

Citation Information

Patent Citations

  • Multi-satellite task scheduling planning method based on improved teaching optimization method

    CN112668930A

  • Satellite service resource scheduling method, system, device and storage medium

    CN113312154A

  • Multi-strategy-pool satellite-ground network rapid scheduling and resource allocation method and device

    CN117580106A

  • Techniques for integrated access and backhaul (IAB) nodes

    US20210058826A1

  • Framework for interfacing blockchain-based ground system with flight software and satellite orbit analysis applications

    US20230382567A1