A cloud simulation task resource scheduling method, system, device and medium
Patent Information
- Application Number
- CN202611079498.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-21
- Publication Date
- 2026-10-23
AI Technical Summary
[0005]为了解决上述技术问题,本发明提供一种云仿真任务资源调度方法、系统、设备及介质,以解决现有技术中因无法感知仿真任务计算特征的动态变化而导致算力资源配置与任务实际需求失配的问题
[0048]通过实时监控仿真任务的Jacobian矩阵条件数变化趋势,实现了对DAE方程刚性程度及其算力需求变化的精准实时感知,使资源调度系统具备了从“被动响应”到“主动感知”的能力跃升,从根本上克服了传统静态调度方式因无法感知任务计算特征动态变化而导致的资源错配问题;
Smart Images

Figure CN122963779A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of cloud computing and industrial simulation, specifically a cloud simulation task resource scheduling method, system, device and medium. Background Technology
[0002] Industrial simulation cloud platforms, by deploying computationally intensive simulation tasks to cloud computing clusters, can significantly reduce the cost of local computing resources for enterprises, and have become the mainstream technology for large-scale simulation verification in fields such as automotive, aerospace, and energy. Taking the simulation of thermal runaway of power batteries as an example, enterprises often need to submit tens of thousands of batch simulation tasks with different parameter configurations simultaneously. Each task involves solving complex multi-physics domain DAE (differential-algebraic equation) systems. In each integration step, the simulation solver needs to calculate the Jacobian matrix of the current iteration point and evaluate its condition number. This condition number reflects the numerical rigidity of the equation system—the larger the condition number, the stronger the rigidity of the equation system, and the more the computational load required by the solver for each integration step increases, resulting in a significant decrease in convergence speed.
[0003] In the engineering practice of cloud simulation platforms, traditional resource scheduling methods mainly employ serial scheduling based on task queues or static CPU / GPU computing power allocation based on a fixed ratio. The scheduling system allocates a fixed share of computing resources to each simulation task upon startup, and this resource quota remains constant throughout the task's execution cycle. However, the rigid extrema and convergence speed of the DAE equations for different simulation tasks exhibit dynamic and unpredictable characteristics during the solution process—the condition number of the Jacobian matrix for the same set of simulation parameters may undergo orders-of-magnitude abrupt changes at different stages of the solution process, causing the demand for computing resources to jump instantly from a low-load state to an extremely high-load state. Because the resource quota remains fixed, computing nodes experiencing rigid abrupt changes suffer from insufficient computing power, leading to a sharp increase in computation time and becoming the "weakest link" in the entire batch simulation task, while computing resources originally allocated to other computing nodes may remain idle. This computing power mismatch problem, caused by the resource scheduling system's inability to perceive and adapt to the real-time changes in the computational characteristics of simulation tasks, results in a serious waste of high computing power costs in the cloud.
[0004] It is evident that existing cloud simulation resource scheduling technologies suffer from a deficiency: the inability to perceive dynamic changes in the computational characteristics of simulation tasks leads to a mismatch between the allocation of computing resources and the actual needs of the tasks. Summary of the Invention
[0005] To address the aforementioned technical problems, this invention provides a cloud simulation task resource scheduling method, system, device, and medium to solve the problem in the prior art where the allocation of computing resources is mismatched with the actual needs of the task due to the inability to perceive the dynamic changes in the computational characteristics of the simulation task.
[0006] This invention provides a cloud simulation task resource scheduling method, comprising:
[0007] Obtain multiple concurrently executed simulation tasks from a cloud-based simulation platform, each simulation task having a Jacobian matrix condition number;
[0008] For each simulation task, the changing trend of the Jacobian matrix condition number is monitored in real time.
[0009] Based on the changing trends of each simulation task, each simulation task is constructed as an independent computing power demand agent.
[0010] In the master control node of the cloud simulation platform, a multi-agent reinforcement learning algorithm is used to make collaborative decisions on multiple computing power demand agents to generate a dynamic allocation strategy for computing power slices.
[0011] According to the dynamic allocation strategy for computing power slices, dynamic adjustments to computing power slices are performed among each computing node;
[0012] The computing power slice is a computing resource unit with a preset minimum granularity in a computing node, and the computing resource unit can be dynamically migrated and redistributed between different computing nodes.
[0013] Preferably, the real-time monitoring of the changing trend of the Jacobian matrix condition number specifically includes:
[0014] The current value of the Jacobian matrix condition number for each simulation task is collected at preset time intervals;
[0015] Record the sequence of changes in the condition number of the Jacobian matrix over multiple consecutive time intervals;
[0016] The trend of change in the rigidity of the simulation task is determined based on the change sequence.
[0017] Preferably, constructing each simulation task as an independent computing power demand agent specifically includes:
[0018] The current Jacobian matrix condition value and its changing trend of the simulation task are used as the state vector of the agent;
[0019] The size of the computing power slice currently allocated to the simulation task is used as the action space of the agent, and the action space is a discrete or continuous range of values.
[0020] The ratio of the convergence speed of the simulation task to the computing power consumption is used as the reward function for the agent.
[0021] The state vector is input into the decision network of the agent, and the decision network outputs an action value in the action space. The action value represents the number of computing power slices required for the simulation task, thereby obtaining the computing power requirement agent corresponding to each simulation task.
[0022] Preferably, the step of using a multi-agent reinforcement learning algorithm to collaboratively decide among multiple agents with computing power requirements and generate a dynamic allocation strategy for computing power slices specifically includes:
[0023] A reinforcement learning framework with centralized training and distributed execution is deployed in the master control node. During the centralized training phase, the decision network is trained using the global state information and joint action information of each computing power demand agent. During the distributed execution phase, each computing power demand agent independently outputs computing power demand decisions based on its own local observation information.
[0024] The computing power demand decisions output by multiple computing power demand agents are solved by incomplete information dynamic game equilibrium to obtain a computing power slice allocation scheme that satisfies the Nash equilibrium condition.
[0025] Preferably, the step of solving the computational demand decisions output by the multiple computational demand agents using incomplete information dynamic game equilibrium specifically includes:
[0026] Each of the aforementioned computing power demanding intelligent agents is considered a game participant, and the total computing power resources of the cloud simulation platform are considered the total game resources.
[0027] Each of the aforementioned computing power demand agents submits its own computing power demand declaration under the condition of incomplete information, wherein the incomplete information condition is that each agent does not know the actual computing power demand of other agents.
[0028] The master control node, based on the computing power demand reported by each agent, uses an iterative algorithm to solve for an approximate Nash equilibrium under the constraint of the total game resources. The computing power allocation scheme corresponding to the obtained Nash equilibrium point is used as the dynamic allocation strategy for the computing power slice.
[0029] Preferably, the step of dynamically adjusting the computing power slices among the computing nodes according to the dynamic allocation strategy of computing power slices specifically includes:
[0030] Identify inefficient computing power slices in each current computing node whose actual utilization rate is lower than a preset utilization rate threshold;
[0031] Identify high-demand computing power slices in each computing node where the Jacobian matrix condition number for the corresponding simulation task exceeds a preset condition number threshold.
[0032] The computing resources of the inefficient computing power slice are dynamically transferred to the computing node where the high-demand computing power slice is located;
[0033] Update the computing power slice allocation records for each computing node.
[0034] Preferably, before performing dynamic adjustment of computing power slicing, the following steps are also included:
[0035] Perform constraint verification on the proposed computing power slicing adjustment plan;
[0036] The constraint verification includes: verifying whether the adjustment amount of the computing power slice of each computing node is within the preset upper limit of the adjustment range of a single node; verifying whether the total computing power load of each computing node after the computing power slice adjustment does not exceed the physical computing power upper limit of the computing node; and verifying whether the computing resources of each simulation task after the computing power slice adjustment meet its minimum operating requirements.
[0037] If the computing power slicing adjustment scheme passes all the constraint checks, then the adjustment scheme is executed;
[0038] If any of the constraints fails the verification, the adjustment scheme is shrunk and corrected so that the corrected adjustment scheme falls within each constraint boundary before execution.
[0039] The present invention also provides a cloud simulation task resource scheduling system, comprising:
[0040] The computational feature monitoring module is used to acquire multiple concurrently executed simulation tasks in the cloud simulation platform and monitor the changing trend of the Jacobian matrix condition number of each simulation task in real time.
[0041] The agent construction module is used to construct each simulation task as an independent computing power demand agent according to the changing trend of the Jacobian matrix condition number of each simulation task.
[0042] The collaborative decision-making module is used to make collaborative decisions on multiple computing power demand agents through a multi-agent reinforcement learning algorithm, and generate a dynamic allocation strategy for computing power slices.
[0043] The computing power scheduling and execution module is used to dynamically adjust the computing power slices among the computing nodes according to the computing power slice dynamic allocation strategy.
[0044] The computing power slice is a computing resource unit with a preset minimum granularity in a computing node, and the computing resource unit can be dynamically migrated and redistributed between different computing nodes.
[0045] The present invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method described above.
[0046] The present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described above.
[0047] Compared with the prior art, the present invention has the following beneficial effects:
[0048] By monitoring the change trend of the Jacobian matrix condition number of the simulation task in real time, the system can accurately perceive the rigidity of the DAE equation and the changes in its computing power requirements. This enables the resource scheduling system to leap from "passive response" to "active perception", fundamentally overcoming the resource mismatch problem caused by the inability to perceive the dynamic changes in the task's computing characteristics in the traditional static scheduling method.
[0049] By constructing each simulation task as an independent computing power demand agent and using multi-agent reinforcement learning for collaborative decision-making, the autonomous computing power demand declaration and negotiation of each simulation task with the goal of maximizing its own benefits under incomplete information conditions are realized. In this way, the optimal resource allocation in the sense of Nash equilibrium is approached under the constraint of total computing power resources. This allows cloud computing power resources to flow dynamically from computing bottleneck nodes caused by rigid mutations to computing power surplus nodes. This effectively overcomes the problem of suboptimal scheduling strategy caused by incomplete information of a single decision-making subject in traditional centralized scheduling when facing large-scale concurrent scenarios, and greatly improves the utilization efficiency of total computing power resources.
[0050] By introducing a triple constraint verification mechanism covering the upper limit of single-node adjustment range, the upper limit of physical computing power, and the minimum running requirements of tasks before the computing power slice adjustment is executed, it is ensured that each computing power slice adjustment plan can be executed under the premise of meeting all hardware physical constraints and task survival constraints, thus guaranteeing the full engineering feasibility and system operation stability of the multi-node computing power linkage adjustment process.
[0051] By adopting a progressive computing power slicing adjustment strategy based on migration priority, a smooth flow of computing power resources from inefficient nodes to high-demand nodes is achieved, avoiding system jitter caused by large-scale resource migration at the same time.
[0052] This invention constructs a complete adaptive scheduling closed loop, from real-time perception of computational features to autonomous collaborative decision-making by multiple agents, and then to smooth execution under constraints. This enables the cloud simulation platform to maintain a dynamic balance between computing power demand and supply during long-term operation, significantly improving the computational efficiency and resource utilization of the industrial simulation cloud platform in dealing with large-scale concurrent rigid change tasks. Attached Figure Description
[0053] Figure 1 This is a schematic diagram of the cloud simulation task resource scheduling method in Embodiment 1 of the present invention;
[0054] Figure 2 This is a diagram of the cloud simulation task resource scheduling system in Embodiment 3 of the present invention. Detailed Implementation
[0055] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0056] Example 1: This example provides a cloud simulation task resource scheduling method. The method is applied to an industrial simulation cloud platform, which is deployed with multiple computing nodes. These computing nodes are interconnected through a high-speed network to form a computing power resource pool. Each computing node is configured with computing resources such as CPU and GPU. These computing resources are uniformly managed and dynamically allocated in the form of computing power slices. A computing power slice is a computing resource unit with a preset minimum granularity in a computing node, which can be dynamically migrated and redistributed between different computing nodes.
[0057] like Figure 1 As shown, the method includes the following steps.
[0058] Step S101: Obtain multiple simulation tasks that are executed concurrently in the cloud simulation platform.
[0059] The cloud-based simulation platform receives concurrent simulation task requests from multiple users or multiple simulation projects. Each simulation task has a Jacobian matrix condition number for DAE equations. Taking the batch simulation of thermal runaway of power batteries as an example, the cloud platform simultaneously receives tens of thousands of battery thermal runaway simulation tasks. Each task corresponds to a specific set of battery parameters and operating conditions. The tasks are executed independently and concurrently. The simulation tasks are executed by the Cautosim simulation solver, which constructs multi-physics domain DAE / ODE equation sets based on the Modelica language.
[0060] Step S102: For each simulation task, monitor the changing trend of its Jacobian matrix condition number in real time.
[0061] The Jacobian condition number is an important indicator for measuring the numerical stability of DAE equations, reflecting the sensitivity of the equations to input disturbances. The larger the condition number, the stronger the rigidity of the equations, and the more difficult it is for the solver to converge. When the condition number exceeds a certain threshold, it indicates that the simulation task is in a rigid abrupt change phase, and the demand for computing resources increases sharply.
[0062] Specifically, the current value of the Jacobian matrix condition number for each simulation task is collected at preset time intervals (e.g., every 1 second or every 5 seconds); the Cautosim solver calculates the Jacobian matrix during each numerical integration step, and the condition number estimate can be obtained by calling the solver's internal interface; the change sequence of this condition number over multiple consecutive time intervals is recorded. ,in This represents the current condition value; based on this change sequence, the trend of the stiffness of the simulation task is determined: if... Comparison A continued rise indicates that rigidity is intensifying; if A trend toward stability or a decrease indicates that the computational state is approaching a plateau.
[0063] Step S103: Based on the changing trend of the Jacobian matrix condition number of each simulation task, each simulation task is constructed as an independent computing power demand agent.
[0064] Each computing power demand agent is a decision-making unit based on deep reinforcement learning, capable of independently deciding the number of computing power slices required at runtime based on the computing feature state it observes.
[0065] The process of constructing an intelligent agent is as follows:
[0066] (1) State vector: based on the current Jacobian matrix condition values of the simulation task. and its changing trends The state vector of the agent This state vector comprehensively reflects the current rigidity and direction of change, providing sufficient basis for the agent's decision-making.
[0067] (2) Action space: The number of computing power slices currently allocated to the simulation task is used as the action space of the agent; the action space is a discrete range of values. ,in The maximum number of computing power slices that can be allocated to the computing node where the simulation task is located; the agent outputs an action value. This indicates the number of computing power slices required for the simulation task in the next time step; in another embodiment, the action space can also be a continuous interval. The output layer of the decision network uses the Sigmoid activation function to map the output to this interval.
[0068] (3) Reward function: The ratio of the convergence speed of the simulation task to the computing power consumption is used as the reward function for the agent.
[0069]
[0070] in, The convergence speed of the simulation task at the current moment is measured by the number of integration steps completed per unit time. This represents the number of computing power slices consumed by the task at the current moment. This reward function guides the agent to pursue rapid convergence while also conserving computing power resources, achieving the optimization goal of "obtaining the maximum convergence speed with the minimum computing power consumption".
[0071] The above state vector The input is fed into the agent's decision network, which is a multi-layer fully connected neural network containing an input layer, two hidden layers (each with 128 neurons and ReLU activation function), and an output layer (output dimension is...). (The activation function is Softmax); the decision network outputs the probability distribution of each action in the action space, and the agent samples an action value based on this probability distribution. The action value represents the number of computing power slices required for the simulation task, thereby obtaining the computing power demand agent corresponding to each simulation task.
[0072] Step S104: In the master control node of the cloud simulation platform, a multi-agent reinforcement learning algorithm is used to make collaborative decisions for multiple computing power demand agents to generate a dynamic allocation strategy for computing power slices.
[0073] In large-scale concurrent simulation scenarios, the decisions of each computing power demand agent affect each other—if one agent occupies more computing power slices, it means that the computing power slices available to other agents are reduced; therefore, agents need to make collaborative decisions rather than independent decisions.
[0074] This step first deploys a reinforcement learning framework, Centralized Training with Decentralized Execution (CTDE), on the master node. The core idea of the CTDE framework is: in the centralized training phase, the decision network is trained using the global state information and joint action information of each agent, enabling each agent to learn the optimal cooperative strategy under various simulation task combinations; in the distributed execution phase, each agent independently outputs computing power demand decisions based on its own local observation information, without relying on the real-time information of other agents, thereby reducing online decision latency.
[0075] Specifically, the CTDE framework is implemented using the Multi-Agent Proximal Policy Optimization (MAPPO) algorithm. During the training phase, the MAPPO algorithm evaluates the global state-action value through a centralized Critic network to guide the updating of each Actor network. During the execution phase, each Actor network runs independently without the participation of the Critic network. During the training phase, offline training is performed on historical simulation task data on a cloud platform to obtain the converged decision network parameters.
[0076] During the distributed execution phase, each computing power-demanding agent will assign its current state vector. Each actor network is input, and each outputs a computing power requirement decision independently. ,in, Indicates the first An intelligent agent.
[0077] Subsequently, a dynamic game equilibrium solution with incomplete information is performed on the computing power demand decisions output by multiple intelligent agents; each intelligent agent with computing power demand is treated as a game participant, and the total computing power resources of the cloud simulation platform are used as the game participants. As the total amount of resources for the game; each intelligent agent submits its own computing power demand declaration under conditions of incomplete information. The incomplete information condition refers to the fact that each agent is unaware of the true computing power requirements of other agents; the master node determines the amount of computing power required by each agent based on their reported computing power requirements, within the constraints of the total game resources. The approximate Nash equilibrium is solved using the optimal response dynamic iterative algorithm. The iterative process is as follows: In each iteration, an agent is selected sequentially, and its optimal response policy is calculated and updated while keeping the policies of other agents fixed. This process is repeated until the policy changes of all agents are less than a preset threshold. The computing power allocation scheme corresponding to the Nash equilibrium point obtained by solving is used as the dynamic allocation strategy for the computing power slice.
[0078] Step S105: Perform constraint verification on the current proposed computing power slice adjustment scheme.
[0079] Before officially implementing the dynamic adjustment of computing power slices, the proposed adjustment plan is first constrained and verified to ensure its engineering feasibility.
[0080] The constraint verification includes the following three items:
[0081] (1) Verification of the upper limit of single node adjustment range: Verify whether the adjustment amount of the computing power slice of each computing node is within the preset upper limit of single node adjustment range; the upper limit of single node adjustment range is used to prevent the system from oscillating due to excessive adjustment range in a single instance; for example, set the single adjustment range of a single node to not exceed 20% of the total computing power slice of that node.
[0082] (2) Physical computing power limit verification: Verify whether the total computing power load of each computing node after the computing power slice adjustment does not exceed the physical computing power limit of the computing node; the physical computing power limit is determined by the hardware configuration of the computing node, for example, a single node can be allocated a maximum of 100 computing power slices.
[0083] (3) Minimum operating requirements verification: Verify whether the computing resources of each simulation task meet its minimum operating requirements after the computing power slice adjustment; the minimum operating requirements refer to the minimum number of computing power slices required for the simulation task to run normally. For example, each simulation task needs at least 1 computing power slice to maintain basic operation.
[0084] If the computing power slicing adjustment scheme passes all the constraint checks, the adjustment scheme is executed; if it fails any of the constraint checks, the adjustment scheme is shrunk and corrected; for example, the adjustment amount that exceeds the constraint boundary is proportionally reduced to within the constraint boundary—the corrected adjustment scheme is executed after falling within each constraint boundary.
[0085] Step S106: According to the dynamic allocation strategy of computing power slices, perform dynamic adjustment of computing power slices among each computing node.
[0086] A computing power slice is a computing resource unit with a preset minimum granularity within a computing node, capable of dynamic migration and reallocation between different computing nodes. In containerized cloud platforms, computing power slices can be implemented through Kubernetes' DevicePlugin mechanism and dynamic resource slicing technology. Specifically, GPU virtualization technology divides the computing power of a single GPU into multiple virtual computing power units, with each unit serving as a computing power slice, which is then allocated to a simulation task container.
[0087] This step first identifies inefficient computing power slices in each current computing node whose actual utilization rate is lower than a preset utilization rate threshold (e.g., 30%), and Jacobian matrix condition numbers for the corresponding simulation tasks in each current computing node that exceed a preset condition number threshold (e.g., ...). The process involves: 1) creating high-demand computing power slices; 2) dynamically transferring the computing resources of inefficient computing power slices to the computing nodes where the high-demand computing power slices reside using container migration technology—specifically, creating new computing power slice instances on the computing nodes where the high-demand computing power slices reside, migrating or reducing the simulation task containers corresponding to the inefficient computing power slices, and releasing computing power resources; and finally, updating the computing power slice allocation records of each computing node to ensure that subsequent scheduling decisions are based on the latest resource status.
[0088] Example 2: Based on Example 1 above, this example further provides specific implementation details for dynamic adjustment of computing power slices.
[0089] In step S106, the dynamic adjustment of computing power slices adopts a priority-based, gradual adjustment strategy, rather than a one-time large-scale adjustment. Specifically:
[0090] First, the master node generates an adjustment instruction list for each computing node based on the computing power slice allocation scheme obtained from the game equilibrium solution. Each instruction in the adjustment instruction list includes the source computing node identifier, the target computing node identifier, the number of computing power slices, and the migration priority. The migration priority is determined based on the condition number of the Jacobian matrix of the target simulation task—tasks with higher condition numbers have higher computing power slice migration priority.
[0091] Then, the computing power slice migration is performed sequentially according to the migration priority from high to low. The migration process of each computing power slice includes: reserving computing power resources on the target computing node, serializing and transmitting the computing state (including memory data, solver intermediate variables, etc.) of the corresponding simulation task on the source computing node to the target computing node, restoring the computing state on the target computing node and continuing to execute the simulation.
[0092] During the migration process, the simulation tasks on the source computing node are paused and resumed on the target computing node after the migration is complete. The computational interruption time caused by the migration is controlled at the millisecond level, and its impact on the overall completion time of the simulation tasks is negligible.
[0093] After each computing power slice migration is completed, the master node re-evaluates the current system resource allocation status. If the target allocation scheme obtained by solving the game equilibrium in step S104 has been achieved, the subsequent migration is terminated; otherwise, the migration instruction of the next priority is executed. Through gradual adjustment, system jitter caused by large-scale resource migration at the same time is avoided.
[0094] Example 3: This example provides a cloud simulation task resource scheduling system, which is used to execute the cloud simulation task resource scheduling method described in the above method examples.
[0095] like Figure 2 As shown, the system includes the following modules:
[0096] The computational feature monitoring module is used to acquire multiple concurrently executed simulation tasks in the cloud simulation platform and monitor the changing trend of the Jacobian matrix condition number for each simulation task in real time. This module interfaces with the internal interface of the Cautosim simulation solver, collects the Jacobian matrix condition number of each simulation task at each time step, records the change sequence, and judges the changing trend of stiffness.
[0097] The agent construction module is used to construct each simulation task as an independent computing power demand agent according to the changing trend of the Jacobian matrix condition number of each simulation task. This module instantiates an agent object for each simulation task, configures the state vector, action space and reward function, and loads the pre-trained decision network parameters.
[0098] The collaborative decision-making module is used to make collaborative decisions for multiple agents with computing power demand through a multi-agent reinforcement learning algorithm, generating a dynamic allocation strategy for computing power slices. This module further includes a reinforcement learning unit and a game equilibrium unit. The reinforcement learning unit deploys the CTDE framework and uses the MAPPO algorithm to achieve centralized training and distributed execution. The game equilibrium unit performs incomplete information dynamic game equilibrium solution on the computing power demand decisions output by each agent, and uses the optimal response dynamic iterative algorithm to obtain the computing power allocation scheme corresponding to the approximate Nash equilibrium.
[0099] The computing power scheduling and execution module is used to dynamically adjust the computing power slices among the computing nodes according to the dynamic allocation strategy of the computing power slices. This module interfaces with a container orchestration platform (such as Kubernetes) and creates, migrates or destroys computing power slice instances by calling the API interface of the container orchestration platform. A computing power slice is a computing resource unit with a preset minimum granularity in a computing node, which can be dynamically migrated and redistributed among different computing nodes.
[0100] The constraint verification module is used to perform constraint verification on the proposed computing power slice adjustment scheme before executing the dynamic adjustment of computing power slices. The constraint verification includes verification of the upper limit of adjustment range of a single node, verification of the upper limit of physical computing power, and verification of minimum operating requirements. If the computing power slice adjustment scheme passes all the constraint verifications, it is allowed to be executed. If it fails any of the constraint verifications, the adjustment scheme is shrunk and corrected before execution.
[0101] The specific workflow of each module is described in the method steps of Embodiment 1 and Embodiment 2, and will not be repeated here.
[0102] Example 4: This example provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the method described in any of the above method embodiments.
[0103] Example 5: This example provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any of the above method embodiments.
[0104] The computer-readable storage medium can be any tangible medium capable of storing program code, including but not limited to: USB flash drive, portable hard drive, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, etc.
[0105] The embodiments of the present invention are given for the purposes of illustration and description. Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Any changes, modifications, substitutions and variations made by those skilled in the art to the above embodiments within the scope of the present invention should be included within the protection scope of the present invention.
Claims
1. A cloud simulation task resource scheduling method, characterized in that, include: Obtain multiple concurrently executed simulation tasks from a cloud-based simulation platform, each simulation task having a Jacobian matrix condition number; For each simulation task, the changing trend of the Jacobian matrix condition number is monitored in real time. Based on the changing trends of each simulation task, each simulation task is constructed as an independent computing power demand agent. In the master control node of the cloud simulation platform, a multi-agent reinforcement learning algorithm is used to make collaborative decisions on multiple computing power demand agents to generate a dynamic allocation strategy for computing power slices. According to the dynamic allocation strategy for computing power slices, dynamic adjustments to computing power slices are performed among each computing node; The computing power slice is a computing resource unit with a preset minimum granularity in a computing node, and the computing resource unit can be dynamically migrated and redistributed between different computing nodes.
2. The method according to claim 1, characterized in that, The real-time monitoring of the changing trend of the Jacobian matrix condition number specifically includes: The current value of the Jacobian matrix condition number for each simulation task is collected at preset time intervals; Record the sequence of changes in the condition number of the Jacobian matrix over multiple consecutive time intervals; The trend of change in the rigidity of the simulation task is determined based on the change sequence.
3. The method according to claim 1, characterized in that, The step of constructing each simulation task as an independent intelligent agent with computing power requirements specifically includes: The current Jacobian matrix condition value and its changing trend of the simulation task are used as the state vector of the agent; The size of the computing power slice currently allocated to the simulation task is used as the action space of the agent, and the action space is a discrete or continuous range of values. The ratio of the convergence speed of the simulation task to the computing power consumption is used as the reward function for the agent. The state vector is input into the decision network of the agent, and the decision network outputs an action value in the action space. The action value represents the number of computing power slices required for the simulation task, thereby obtaining the computing power requirement agent corresponding to each simulation task.
4. The method according to claim 1, characterized in that, The step of generating a dynamic allocation strategy for computing power slices by collaboratively making decisions among multiple computing power demand agents through a multi-agent reinforcement learning algorithm specifically includes: A reinforcement learning framework with centralized training and distributed execution is deployed in the master control node. During the centralized training phase, the decision network is trained using the global state information and joint action information of each computing power demand agent. During the distributed execution phase, each computing power demand agent independently outputs computing power demand decisions based on its own local observation information. The computing power demand decisions output by multiple computing power demand agents are solved by incomplete information dynamic game equilibrium to obtain a computing power slice allocation scheme that satisfies the Nash equilibrium condition.
5. The method according to claim 4, characterized in that, The process of solving the incomplete information dynamic game equilibrium problem for the computing power demand decisions output by multiple computing power demand agents specifically includes: Each of the aforementioned computing power demanding intelligent agents is considered a game participant, and the total computing power resources of the cloud simulation platform are considered the total game resources. Each of the aforementioned computing power demand agents submits its own computing power demand declaration under the condition of incomplete information, wherein the incomplete information condition is that each agent does not know the actual computing power demand of other agents. The master control node, based on the computing power demand reported by each agent, uses an iterative algorithm to solve for an approximate Nash equilibrium under the constraint of the total game resources. The computing power allocation scheme corresponding to the obtained Nash equilibrium point is used as the dynamic allocation strategy for the computing power slice.
6. The method according to claim 1, characterized in that, The step of dynamically adjusting the computing power slices among the computing nodes according to the dynamic allocation strategy of the computing power slices specifically includes: Identify inefficient computing power slices in each current computing node whose actual utilization rate is lower than a preset utilization rate threshold; Identify high-demand computing power slices in each computing node where the Jacobian matrix condition number for the corresponding simulation task exceeds a preset condition number threshold. The computing resources of the inefficient computing power slice are dynamically transferred to the computing node where the high-demand computing power slice is located; Update the computing power slice allocation records for each computing node.
7. The method according to claim 1, characterized in that, Before performing dynamic adjustments to the computing power slice, the following is also included: Perform constraint verification on the proposed computing power slicing adjustment plan; The constraint verification includes: verifying whether the adjustment amount of the computing power slice of each computing node is within the preset upper limit of the adjustment range of a single node; verifying whether the total computing power load of each computing node after the computing power slice adjustment does not exceed the physical computing power upper limit of the computing node; and verifying whether the computing resources of each simulation task after the computing power slice adjustment meet its minimum operating requirements. If the computing power slicing adjustment scheme passes all the constraint checks, then the adjustment scheme is executed; If any of the constraints fails the verification, the adjustment scheme is shrunk and corrected so that the corrected adjustment scheme falls within each constraint boundary before execution.
8. A cloud simulation task resource scheduling system, characterized in that, include: The computational feature monitoring module is used to acquire multiple concurrently executed simulation tasks in the cloud simulation platform and monitor the changing trend of the Jacobian matrix condition number of each simulation task in real time. The agent construction module is used to construct each simulation task as an independent computing power demand agent according to the changing trend of the Jacobian matrix condition number of each simulation task. The collaborative decision-making module is used to make collaborative decisions on multiple computing power demand agents through a multi-agent reinforcement learning algorithm, and generate a dynamic allocation strategy for computing power slices. The computing power scheduling and execution module is used to dynamically adjust the computing power slices among the computing nodes according to the computing power slice dynamic allocation strategy. The computing power slice is a computing resource unit with a preset minimum granularity in a computing node, and the computing resource unit can be dynamically migrated and redistributed between different computing nodes.
9. A computer 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 computer program, it implements the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 7.