Engine scheduling method for hybrid-granularity digital models

By constructing a model interaction relationship matrix and an improved centralized scheduling strategy, combined with a multi-rate distributed simulation node synchronization mechanism, the synchronization scheduling problem of models with different granularities in large-scale system simulation was solved, realizing digital model engine scheduling under mixed granularity, and improving the functional integrity and real-time performance of the simulation system.

CN120407100BActive Publication Date: 2026-05-12CHINA ACADEMY OF SPACE TECHNOLOGY +1
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA ACADEMY OF SPACE TECHNOLOGY
Filing Date
2025-03-24
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Existing technologies struggle to effectively address the synchronization and scheduling issues of entity models from different sources, with varying granularities and scales in large-scale system simulations, particularly in simulation systems for aviation, aerospace, shipbuilding, and weaponry. This is especially true in determining the execution order between models and establishing engine scheduling mechanisms.

Method used

A digital model engine scheduling method oriented towards hybrid granularity is adopted, including model sorting, improved centralized scheduling strategy and multi-rate distributed simulation node synchronization mechanism. By constructing a model interaction relationship matrix, designing task scheduling strategy and priority-based hybrid task scheduling algorithm, digital model engine scheduling under hybrid granularity is realized.

Benefits of technology

The digital model engine scheduling under mixed granularity was realized, which ensured the functional integrity, realism and real-time performance of the simulation system, and improved resource utilization efficiency and simulation accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120407100B_ABST
    Figure CN120407100B_ABST
Patent Text Reader

Abstract

The application relates to an engine scheduling method for a mixed-granularity digital model, which comprises the following steps: step S1, model sequencing, constructing a model interaction relationship matrix DSM, grading and sequencing the simulation model, and adjusting the matrix sequence to determine the model execution priority; step S2, designing a task scheduling strategy, adopting an improved centralized scheduling strategy, globally controlling task distribution by a scheduling host, and actively reporting the load by a node and executing part of the task scheduling; and step S3, based on the frame period of system simulation and a multi-rate distributed simulation node synchronization mechanism, executing a mixed task scheduling algorithm based on the priority, and the priority sequence is as follows: periodic task > occasional task > background task. The application can realize the engine scheduling of the digital model under the mixed granularity.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of simulation and modeling technology, and specifically to an engine scheduling method for digital models with mixed granularity. Background Technology

[0002] With the ever-increasing demand for large-scale system simulation in fields such as aviation, aerospace, shipbuilding, and weaponry, the complexity and scale of digital models are rising exponentially. Simulation systems need to integrate entity models from different sources, with different granularities (such as high-precision physical models and low-precision behavioral models), and of different scales to support multidisciplinary collaborative simulation. Against this backdrop, the task scheduling mechanism of the simulation engine has become a core challenge for the efficient operation of the system.

[0003] In existing technologies, simulation modeling and scheduling engines are an important component of large-scale system simulations in fields such as aviation, aerospace, shipbuilding, and weaponry. Faced with the need for simultaneous simulation of entity models from different sources, with varying granularities and scales, determining the execution order between models, establishing an engine scheduling mechanism, and achieving simultaneous scheduling of models with different priorities and granularities are urgent problems to be solved. Summary of the Invention

[0004] In view of the above-mentioned technical problems, this invention proposes an engine scheduling method for digital models with mixed granularity, which realizes engine scheduling for digital models with mixed granularity.

[0005] The technical solution to the technical problem of this invention is: an engine scheduling method for digital models with mixed granularity, comprising the following steps:

[0006] Step S1: Model sorting. Construct the Model Interaction Relationship Matrix (DSM), sort the simulation models hierarchically, and adjust the matrix order to determine the model execution priority.

[0007] Step S2: Design a task scheduling strategy. An improved centralized scheduling strategy is adopted, in which the scheduling host globally controls task allocation, and nodes actively report load and execute partial task scheduling.

[0008] Step S3: Based on the frame period and multi-rate distributed simulation node synchronization mechanism of system simulation, execute the priority-based hybrid task scheduling algorithm, with the priority order as follows: periodic tasks > occasional tasks > background tasks.

[0009] According to a technical solution of the present invention, step S1, which involves hierarchically sorting the simulation models, specifically includes:

[0010] Step S11: Construct a model interaction relationship matrix, and derive subsequent models by taking the no-input model as the first level in a hierarchical manner.

[0011] Step S12: Adjust the matrix order and complete the model execution order planning through source point and sink point positioning and closed-loop processing.

[0012] According to one technical solution of the present invention, in step S11, the grading method is as follows:

[0013] Models without other model inputs are designated as Level 1, the data receiving models of Level 1 models are designated as Level 2 models, and so on; and models that have already been classified will not participate in subsequent classifications.

[0014] According to one technical solution of the present invention, in step S12, the closed-loop processing includes:

[0015] For models with directed loops, a fixed coupling operation is performed. The normalization operation is used to treat the coupled model as a sub-module, and the source point is selected in the sub-module for further sorting.

[0016] According to one technical solution of the present invention, in step S2, the improved centralized scheduling strategy includes:

[0017] Step S21: Nodes periodically or with threshold-triggered active reporting of load information to the scheduling host;

[0018] Step S22: The scheduling host delegates some scheduling decision-making authority to the nodes, and the nodes perform task allocation based on their local status.

[0019] According to one technical solution of the present invention, the threshold-triggered active reporting of load information includes:

[0020] When a node's load variable exceeds a preset threshold, the load change exceeds a difference threshold, or a request is received from the scheduling host, the node actively reports its load information.

[0021] According to a technical solution of the present invention, in step S3, the multi-rate distributed simulation node synchronization mechanism includes:

[0022] Step S31: Use the frame period of the system simulation as the logical time unit, and the node step size is an integer multiple of the frame period;

[0023] Step S32: The node starts or pauses the operation based on the timestamp of the received data and the logical time relationship.

[0024] According to one technical solution of the present invention, the frame period of the system simulation is the greatest common divisor of the step size of all nodes, and the scheduling host only interacts with the nodes that meet the step size requirement.

[0025] Compared with the prior art, the present invention has the following advantages:

[0026] Based on the concept of this invention, an engine scheduling method for digital models with mixed granularity is proposed. Different granularity models in the simulation space are sorted according to logical and temporal relationships and then allocated to various computing nodes. An improved centralized scheduling strategy is adopted to determine the task allocation and scheduling method during the simulation process. An appropriate simulation step size is used to determine the system simulation frame period. A multi-rate distributed simulation node synchronization mechanism is designed, and based on this, a priority-based hybrid task scheduling algorithm is executed to realize engine scheduling of digital models with mixed granularity.

[0027] This invention introduces a task scheduling strategy, which schedules the sorted models according to an improved centralized scheduling strategy. Each node actively and periodically calculates its own load and operating status and sends them to the scheduling host, assigning some scheduling tasks to the nodes for processing. This allows for a global grasp of task allocation and scheduling.

[0028] This invention designs a priority-based hybrid task scheduling algorithm to determine the system simulation frame period. To address the problem of inconsistent advancement rates among multi-granularity models, a multi-rate distributed simulation node synchronization mechanism is designed. Based on this, the priority-based hybrid task scheduling algorithm is executed to ensure the integrity, realism, and real-time performance of the entire simulation system.

[0029] This invention has promising applications in simulation engines, deduction, and control. Attached Figure Description

[0030] Figure 1 A schematic diagram illustrating the engine scheduling method for a hybrid granularity digital model according to an embodiment of the present invention.

[0031] Figure 2 A schematic diagram illustrating a model grading process according to an embodiment of the present invention;

[0032] Figure 3 This schematic representation illustrates a model DSM matrix according to one embodiment of the present invention;

[0033] Figure 4 This illustration illustrates a ring-shaped model dependency according to one embodiment of the present invention.

[0034] Figure 5 This illustration depicts a centralized scheduling model according to one embodiment of the present invention.

[0035] Figure 6 This illustration illustrates a distributed scheduling model according to one embodiment of the present invention.

[0036] Figure 7 This illustration illustrates an improved centralized scheduling strategy according to one embodiment of the present invention.

[0037] Figure 8 A schematic diagram illustrating the execution sequence of a hybrid task scheduling algorithm according to an embodiment of the present invention.

[0038] Figure 9 A flowchart illustrating a non-real-time scheduling algorithm according to an embodiment of the present invention is shown. Detailed Implementation

[0039] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the accompanying drawings used in the embodiments will be briefly described below. Obviously, the drawings described below are merely some embodiments of the present invention, and those skilled in the art can obtain other drawings based on these drawings without any creative effort.

[0040] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments. The embodiments cannot be described in detail here, but the embodiments of the present invention are not limited to the following embodiments.

[0041] like Figure 1 As shown, the present invention provides an engine scheduling method for digital models with mixed granularity, comprising the following steps:

[0042] Step S1: Model sorting

[0043] Construct a Model Interaction Matrix (DSM), classify and sort the simulation models, and adjust the matrix order to determine the model execution priority.

[0044] In distributed simulation systems, a task refers to a model component with a specific function and independent operation; it is the smallest entity to be scheduled. Simulation models involve multiple disciplines, are computationally complex, and have a huge workload, thus interdependent relationships exist between them. Given these dependencies, task decomposition must consider the input-output relationships between models, i.e., addressing the issue of task execution order. Therefore, before decomposing tasks, it is necessary to plan the solution order of the models in the simulation application.

[0045] Step S1 includes constructing the model interaction relationship matrix and adjusting the matrix order.

[0046] Step S11: Construct a model interaction relationship matrix, and derive subsequent models by taking the no-input model as the first level in a hierarchical manner.

[0047] The Design Structure Matrix (DSM) is constructed to clearly demonstrate the information flow between models, thanks to its dynamic characteristics and unique algorithms for identifying and sorting loops and bands. This ensures that the information required for each task is obtained before its execution. The DSM is an n-order matrix used to display the interaction relationships between its elements, facilitating the visualization and analysis of complex project relationships. In the matrix, "1" and "0" indicate whether a data relationship exists between models. The row marked with "1" corresponds to the output model of that column; for example, models M4 and M2 in the table receive the output data from model M1. "0" indicates that there is no data interaction between the two corresponding models. The DSM matrix contains information about the models that make up the simulation application and the methods of information exchange between them. It shows which models' output information a given model needs at the start and which models will receive the data it generates. A row in the matrix displays all the input sources for the model in that row; a column shows which models (the models corresponding to "1") receive the output information of that model. Table 1 below the diagonal represents the feedforward information, while the information above the diagonal represents the feedback information.

[0048] / Ml M2 M3 M4 Ml 0 0 1 0 M2 1 0 0 1 M3 0 1 0 0 M4 1 0 0 0

[0049] Table 1

[0050] Before building the matrix, the models in the experiment need to be initially classified to simplify subsequent matrix operations. The specific classification method is as follows: models without other model inputs are designated as Level 1, data receiving models of Level 1 models are designated as Level 2 models, and so on. Since inter-model feedback is inevitable in the experiment, it is stipulated that models that have already been classified will not participate in subsequent classifications. The process is as follows: Figure 2 As shown.

[0051] After the model classification is completed, the DSM matrix is ​​built by increasing the model level. If there are more than one model in the same level, the order of the models in that level can be arranged arbitrarily or written incrementally according to some existing attributes of the models when building the DSM. For example... Figure 3 The dependencies between the seven models shown are initially ordered as follows after hierarchical classification: A, B, C, D, E, F, G, and a design structure matrix is ​​established accordingly.

[0052] Step S12: Adjust the matrix order and complete the model execution order planning through source point and sink point positioning and closed-loop processing.

[0053] Adjust the source points in the matrix to the first row and first column of the DSM, and record the candidate source points; adjust the sink points in the matrix to the last row and last column of the DSM, and record the candidate sink points.

[0054] In step S1, the execution order of the models has been initially sorted. However, for cases with closed-loop states or multiple models at the same level, the execution order needs further adjustment. For example... Figure 4 The structure shown uses the model in the first row of the DSM matrix as the source point.

[0055] In the matrix excluding the source and sink points, the next-level source and sink points can be found using the method described above, and the priority order of model execution can be determined accordingly.

[0056] If there are n models and no directed cycles, the models will be sorted after (n+1) / 2 iterations of the above process.

[0057] If a directed cycle exists, the source point will no longer exist in the matrix after removing it. In this case, a coupling operation is performed on the matrix, and a normalization operation is used to treat the coupled model as a submodule. Within the submodule, one of the points is selected as the source point according to requirements (rules), and the aforementioned process continues.

[0058] After the above sorting process, the model in the entire simulation task can be decomposed into independent operating modules with a specific sequence, or sub-modules with coupled relationships. This facilitates subsequent task allocation.

[0059] Step S2: Design a task scheduling strategy

[0060] An improved centralized scheduling strategy is adopted, in which the scheduling host globally controls task allocation, and nodes actively report load and execute some task scheduling.

[0061] The task allocation and scheduling methods in the simulation process are determined. After the model is sorted, a model scheduling strategy is designed. Multiple simulation tasks are mapped to multiple simulation nodes according to certain rules. An improved centralized scheduling strategy is adopted to arrange the execution order of tasks to meet the time requirements of simulation tasks and achieve effective resource utilization.

[0062] Centralized and distributed scheduling strategies

[0063] Scheduling strategies are mainly classified into centralized (e.g., ...) based on their method of collecting scheduling information. Figure 5 (as shown) and distributed (such as) Figure 6(As shown). Centralized scheduling refers to a single scheduling service host responsible for unifying the scheduling model and collecting information from each node; distributed scheduling refers to each node collecting information in parallel and sending scheduling requests to other nodes based on its current state, with other nodes responding to the requests according to their own current state. Both centralized and distributed scheduling have their advantages and disadvantages. The main advantage of centralized scheduling is that the scheduling host possesses global information, and the program algorithm implementation is separated from the logic; however, the scheduling host can easily become a bottleneck for the scheduling service. The main advantage of distributed scheduling is the good scalability of the node system, but it is difficult to track the program's execution.

[0064] Improved centralized scheduling strategy

[0065] Distributed simulation systems should select appropriate scheduling strategies based on different simulation fidelity, simulation tasks, load, and iteration modes of the simulation model. If a distributed scheduling strategy is adopted, since each system's scheduling and computing nodes are self-contained, information exchange or communication between them is entirely achieved through their own iteration rates and interface communication mechanisms. This may lead to information malfunctions, increasing the system's complexity and impacting overall performance. Therefore, general distributed simulation systems employ centralized scheduling strategies, which allow for global control of task allocation and scheduling and are relatively easy to implement. This patent makes some improvements to alleviate the system bottlenecks caused by centralized strategies, such as... Figure 7 As shown, this is mainly reflected in the following two aspects:

[0066] (1) Change the system from having the scheduling host track and collect the load information of the nodes to having each node actively and periodically calculate its own load and operating status and send it to the scheduling host.

[0067] (2) Change the scheduling host to be fully responsible for scheduling tasks to delegate some scheduling tasks to the nodes. That is, after the nodes have completed their calculations, they will schedule some tasks according to the scheduling mechanism.

[0068] The proactive reporting strategy for compute nodes can combine periodic collection and state change strategies to collect load information. For example, compute nodes need to send load information when the load variable exceeds its given threshold, the load change exceeds its given difference, or the scheduling node sends a request message.

[0069] After the task allocation and scheduling methods are determined, in order to ensure the integrity, realism and real-time performance of the entire simulation system, we also need to study the task initiation method and simulation time advancement algorithm.

[0070] Step S3: Design a task scheduling algorithm

[0071] Based on the system simulation, a frame period and multi-rate distributed simulation node synchronization mechanism is used to execute a priority-based hybrid task scheduling algorithm, with the priority order being: periodic tasks > occasional tasks > background tasks.

[0072] After the task allocation and scheduling methods are determined, in order to ensure the integrity, realism and real-time performance of the entire simulation system, it is also necessary to study the task initiation method and simulation time advancement algorithm. First, the system simulation frame period is determined. In the face of the problem of inconsistent advancement rates of multi-granularity models, a multi-rate distributed simulation node synchronization mechanism is designed and adopted. On this basis, a priority-based hybrid task scheduling algorithm is executed to realize the engine scheduling of hybrid granularity digital models.

[0073] Step S3 includes defining the frame period for system simulation, a priority-based hybrid task scheduling algorithm, and a node synchronization algorithm for multi-rate distributed simulation.

[0074] Determine the frame period for system simulation

[0075] During simulation, if the system uses a small step size as the frame period for scheduling, it not only fails to significantly improve the accuracy of the simulation results but also increases system resource consumption. Conversely, using a larger simulation step size, while beneficial for advancing the simulation clock, inevitably sacrifices the accuracy of the simulation results. Therefore, when designing the scheduling module of a distributed simulation system, it is necessary to comprehensively consider both the system's simulation accuracy and its load conditions when determining the frame period.

[0076] The solution to this problem is to select an appropriate simulation step size so that at the start of a scheduling cycle, most (or even all) computing nodes can participate in the computation, while satisfying the step size requirements of each node. The management host schedules tasks based on this step size, interacting only with nodes that meet the step size requirements during each scheduling cycle, rather than with all nodes. For example, the greatest common divisor of all step sizes can be chosen as the system step size. When the task with the largest step size starts a new cycle, all simulation tasks with smaller step sizes start their new cycles simultaneously. This algorithm ensures simulation accuracy without increasing the workload of the computing nodes, only slightly increasing the workload of the scheduling host in matching step sizes.

[0077] Priority-based hybrid task scheduling algorithm

[0078] Distributed simulation systems mainly consist of periodic tasks, sporadic tasks, and background tasks. These three types of tasks exhibit both some correlation and some independence. When all three tasks occur simultaneously, reasonable scheduling of the simulation tasks is necessary. The execution sequence diagram of a mixed task is shown below. Figure 8 As shown, periodic tasks are executed first, followed by occasional tasks, and finally background tasks with higher priority are executed.

[0079] To accurately advance the sequential execution of the simulation tasks, a progress flag is introduced by the scheduling host in non-real-time simulation. The simulation progress flag is only available after all three tasks have been completed. In real-time simulation, a high-precision clock and timer are introduced. During initialization, a timer is created and its period is set. The timer is triggered in each period to execute one frame of the simulation task. The priorities of the three tasks are set: periodic tasks have the highest priority, followed by occasional tasks, and background tasks have the lowest priority. Therefore, a priority-step-driven cyclic scheduling algorithm is designed to schedule periodic tasks, occasional tasks, and background tasks in the distributed simulation system. The pseudocode of the non-real-time scheduler is as follows:

[0080] Input: The saved scheduling module L(k), where k = 0, 1, ..., F-1;

[0081] A non-periodic task queue, an occasional task waiting queue, and an accepted occasional task EDF queue;

[0082] Task initialization:

[0083] Current time t = 0;

[0084] Current frame k = 0;

[0085] Do forever

[0086] At time t f Accept host task instructions;

[0087] CurrentBlock = L(k);

[0088] t = t + 1;

[0089] k = t mod F;

[0090] If no task is released in CurrentBlock, take appropriate action;

[0091] While (the occasional task queue is not empty)

[0092] Remove the task from the head of the occasional task waiting queue;

[0093] Conduct an acceptance test on this task;

[0094] If this task is acceptable

[0095] Insert the task into the accepted occasional task queue in EDF order;

[0096] Else deletes the task and notifies the application;

[0097] Endwhile

[0098] Wake up the periodic task server to execute the slice in CurrentBlock;

[0099] Sleep until the periodic task server completes;

[0100] While (non-periodic task queue is not empty)

[0101] Wake up the task on the non-periodic task header;

[0102] Sleep until the non-periodic task is completed;

[0103] Remove this non-periodic task from the queue;

[0104] Endwhile;

[0105] Sleep until the next step;

[0106] End do

[0107] The process of the above scheduling algorithm is as follows: Figure 9 The program is first loaded and initialized. If the non-real-time simulation mode is selected, the system step size is set, and control flags are created to drive the execution of periodic tasks, occasional tasks, and background tasks.

[0108] Node synchronization algorithm in multi-rate distributed simulation

[0109] In distributed simulation systems, scheduling algorithms must be able to handle various problems caused by the spatiotemporal inconsistencies of multi-resolution models.

[0110] Node startup issue: The operation of simulation nodes is controlled by input data. That is, the simulation node starts running when it receives new interactive data, and waits for the next data update after it finishes running. The interactive data includes data from the scheduling host and data from other nodes, and the logical timing of the data is controlled by the system's global time data structure.

[0111] Initialization Issues: To minimize the startup latency of the entire simulation system, the scheduling host establishes all node interactions before initialization. During initialization, it sends initial commands, initialization data, and interaction relationships to all compute nodes. This requires all compute nodes to start running immediately upon receiving the first interaction data, with no need for data exchange between nodes. The logical clock for the first interaction data is represented by 0.

[0112] Startup Issues: As shown in Figure 7, if the simulation step size of compute node 2 is m times that of compute node 1, then compute node 2 will only begin the simulation operation at the current timestamp after receiving m consecutive data from compute node 1, while simultaneously updating its own logical time to the current system clock, and sending the result data after the operation is completed. If the simulation step size of compute node 1 is m times that of compute node 2, after receiving m scheduling commands from the scheduling host or other nodes, simulation node 2 will transmit the interactive data stream to compute node 1. Simulation node 1 will immediately start the operation and update its own logical time and calculation results upon receiving the data. In this way, within the simulation cycle of simulation node 1, simulation node 2 can complete m simulation operations.

[0113] Non-startup issue: When the logical time of a compute node is greater than the system timestamp, or when the system timestamp and the node timestamp are not in an integer ratio, the compute node will not start operation.

[0114] Taking into account various problems and scheduling strategies in multi-rate simulation systems, the basic implementation steps of the node synchronization algorithm in a distributed simulation system are as follows:

[0115] (1) All computing nodes are started and run synchronously by controlling the clock of the scheduling host.

[0116] (2) The frame period of the simulation system is used as a logical time unit.

[0117] (3) Simulation nodes are set with their own time controllers. The node simulation step size T1 is an integer multiple of the system frame period length Tm (T1 = mTm). m The logical time is initialized to 0. Node information with timestamps is periodically sent to the scheduling host using UDP. After each synchronization operation, the logical time of the compute node is incremented by m; the logical time of the scheduling host is incremented by 1 after the current clock operation is completed.

[0118] (4) After receiving the interactive data, the computing node switches between initialization, running, and pause states depending on the situation.

[0119] The above synchronization algorithm can ensure the sequential dependency between tasks, guarantee a certain degree of parallelism in the simulation system, and avoid increasing the system's resource overhead.

[0120] According to one aspect of the present invention, an electronic device is provided, comprising: one or more processors, one or more memories, and one or more computer programs; wherein the processor is connected to the memory, and the one or more computer programs are stored in the memory, and when the electronic device is running, the processor executes the one or more computer programs stored in the memory to cause the electronic device to perform the engine scheduling method for a hybrid granularity digital model as described in any of the above technical solutions.

[0121] According to one aspect of the present invention, a computer-readable storage medium is provided for storing computer instructions, which, when executed by a processor, implement an engine scheduling method for a mixed-granularity digital model as described in any of the above technical solutions.

[0122] This invention discloses a probability quantification and adjudication method for remote sensing satellite observations under the influence of multiple factors, comprising the following steps: Step S1, model sorting: constructing a model interaction matrix (DSM), hierarchically sorting simulation models, and adjusting the matrix order to determine model execution priority; Step S2, designing a task scheduling strategy: adopting an improved centralized scheduling strategy, with the scheduling host globally controlling task allocation, and nodes actively reporting load and executing partial task scheduling; Step S3, based on the frame period of system simulation and a multi-rate distributed simulation node synchronization mechanism, executing a priority-based hybrid task scheduling algorithm, with the priority order being: periodic tasks > occasional tasks > background tasks. This invention sorts models of different granularities in the simulation space according to logical and temporal relationships and allocates them to various computing nodes; adopts an improved centralized scheduling strategy to determine the task allocation and scheduling method during the simulation process; adopts an appropriate simulation step size to determine the system simulation frame period; designs a multi-rate distributed simulation node synchronization mechanism, and on this basis executes a priority-based hybrid task scheduling algorithm to achieve engine scheduling of digital models under mixed granularities.

[0123] This invention introduces a task scheduling strategy, which schedules the sorted models according to an improved centralized scheduling strategy. Each node actively and periodically calculates its own load and operating status and sends them to the scheduling host, assigning some scheduling tasks to the nodes for processing. This allows for a global grasp of task allocation and scheduling.

[0124] This invention designs a priority-based hybrid task scheduling algorithm to determine the system simulation frame period. To address the problem of inconsistent advancement rates among multi-granularity models, a multi-rate distributed simulation node synchronization mechanism is designed. Based on this, the priority-based hybrid task scheduling algorithm is executed to ensure the integrity, realism, and real-time performance of the entire simulation system.

[0125] This invention has promising applications in simulation engines, deduction, and control.

[0126] Furthermore, it should be noted that the present invention can be provided as a method, apparatus, or computer program product. Therefore, embodiments of the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Moreover, embodiments of the present invention can take the form of a computer program product implemented on one or more computer-usable storage media containing computer-usable program code.

[0127] Embodiments of the present invention are described with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0128] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The functions specified in one or more boxes. These computer program instructions may also be loaded onto a computer or other programmable data processing terminal equipment to cause a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0129] It should also be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.

[0130] Finally, it should be noted that the above description represents a preferred embodiment of the present invention. It should be pointed out that although preferred embodiments have been described, those skilled in the art, once they understand the basic inventive concept of the present invention, can make various improvements and modifications without departing from the principles described herein. These improvements and modifications should also be considered within the scope of protection of the present invention. Therefore, the appended claims are intended to be interpreted as including both the preferred embodiments and all changes and modifications falling within the scope of the embodiments of the present invention.

Claims

1. An engine scheduling method for digital models with mixed granularity, characterized in that, Includes the following steps: Step S1: Model sorting. Construct the Model Interaction Relationship Matrix (DSM), sort the simulation models hierarchically, and adjust the matrix order to determine the model execution priority. The process of hierarchically sorting the simulation models includes: Step S11: Construct a model interaction matrix. Using a hierarchical approach, the model without input is taken as the first level, and subsequent models are derived level by level. The hierarchical method is as follows: Models without other model inputs are designated as Level 1, the data receiving models of Level 1 models are designated as Level 2 models, and so on; and models that have already been classified will not participate in subsequent classifications. Step S12: Adjust the matrix order, and complete the model execution order planning through source point and sink point positioning and closed-loop processing. The closed-loop processing includes: For models with directed loops, a fixed coupling operation is performed. The normalization operation is used to treat the coupled model as a sub-module, and the source point is selected in the sub-module for further sorting. Step S2: Design a task scheduling strategy. An improved centralized scheduling strategy is adopted, in which the scheduling host globally controls task allocation, and nodes actively report load and execute partial task scheduling. In step S2, the improved centralized scheduling strategy includes: Step S21: Nodes periodically or with threshold-triggered active reporting of load information to the scheduling host; Step S22: The scheduling host delegates some scheduling decision-making authority to the nodes, and the nodes perform task allocation according to their local status; The threshold-triggered active reporting of load information includes: When a node's load variable exceeds a preset threshold, the load change exceeds a difference threshold, or a request is received from the scheduling host, the node actively reports the load information. Step S3: Based on the frame period and multi-rate distributed simulation node synchronization mechanism of system simulation, execute the priority-based hybrid task scheduling algorithm, with the priority order as follows: periodic tasks > occasional tasks > background tasks.

2. The method according to claim 1, characterized in that, In step S3, the multi-rate distributed simulation node synchronization mechanism includes: Step S31: Use the frame period of the system simulation as the logical time unit, and the node step size is an integer multiple of the frame period; Step S32: The node starts or pauses the operation based on the timestamp of the received data and the logical time relationship.

3. The method according to claim 2, characterized in that, The frame period of the system simulation is the greatest common divisor of the step size of all nodes, and the scheduling host only interacts with nodes that meet the step size requirement.