An 80-channel programmable timing controller control system and its control method
By utilizing the dynamic game module, global optimization control module, and resource scheduling module of the 80-channel programmable timing controller, the shortcomings of timing control in complex dynamic task scenarios in existing technologies are solved, achieving high efficiency, stability, and global optimization for multi-channel tasks.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-27
- Publication Date
- 2026-04-03
AI Technical Summary
Existing timing control technologies are ill-suited to the frequently changing dynamic requirements in complex and dynamic task scenarios, resulting in uneven resource allocation, impacting the completion efficiency of high-priority tasks, lacking real-time optimization capabilities, and failing to establish a collaborative mechanism between modules, which makes global optimization and scheduling difficult.
An 80-channel programmable timing controller is used, which includes a dynamic game module, a global optimization control module, a task-dependent topology module, and a resource scheduling module. Through payoff functions, global stability functions, and topology graph construction, the channel priority and resource allocation are dynamically adjusted to achieve timing optimization and resource coordination for multi-channel tasks.
It ensures the integrity of task logic and the accuracy of timing dependencies, improves system stability and resource utilization efficiency, solves the problems of logical disorder and uneven resource allocation in complex multi-task scenarios, and improves the accuracy and efficiency of timing control.
Smart Images

Figure CN120085601B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of timing control technology, specifically to an 80-channel programmable timing controller control system and its control method. Background Technology
[0002] With the rapid development of industrial automation, communication systems, and data center technologies, the concurrent execution of multi-channel tasks has become an indispensable requirement in many fields. For example, in audio and video processing systems, tasks on different channels need to be executed according to a strict timing sequence to ensure synchronization between video and audio; in industrial automation control, task scheduling between multiple devices needs to be completed within a specified time window to ensure the efficient operation of the production line. In these scenarios, the timing controller, as a crucial core device, is used to coordinate the execution order of multi-channel tasks, allocate resources, resolve task conflicts, and ensure the stable operation of the system.
[0003] Existing timing control technologies have achieved certain results in task scheduling and resource allocation. Most timing controllers use fixed priority rules or static scheduling algorithms to manage the timing of multi-channel tasks. This approach is simple to implement and performs well in scenarios with stable resource requirements and well-defined task logic. Furthermore, to resolve timing conflicts between some tasks, existing technologies typically design conflict detection rules based on task presets and combine them with certain manual adjustment mechanisms for optimization, which can meet the system's operational requirements in some low-dynamic task scenarios. Meanwhile, some high-performance timing controllers achieve parallel task execution by evenly distributing resources across channels, exhibiting good system stability in scenarios with moderate task intensity. The application of these technologies has improved the execution efficiency of multi-channel tasks and the reliability of timing management to a certain extent.
[0004] However, existing technologies still have many shortcomings when dealing with complex and dynamic task scenarios. First, existing fixed-priority scheduling methods are difficult to adapt to the frequently changing dynamic needs in multi-task scenarios, and task logic is often prone to confusion, failing to effectively guarantee task dependencies. Second, while the uniformity of resource allocation is simple and easy to implement, it lacks sufficient resource guarantee capabilities for high-priority tasks, especially when resources are limited, the completion efficiency of high-priority tasks will be significantly affected. In addition, existing technologies rely too much on preset rules or manual intervention to handle task conflicts, lacking real-time optimization capabilities, which can easily lead to decreased task execution efficiency or even system instability. Finally, traditional timing controllers focus more on the optimization of a single channel, ignoring the overall global coordination needs of the system. The lack of collaboration mechanisms between modules leads to isolated operation of modules in complex scenarios, making it difficult to achieve global optimization scheduling. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this invention provides an 80-channel programmable timing controller control system and its control method, which solves the problems of insufficient flexibility in multi-channel task timing scheduling, uneven resource allocation, and lack of global optimization capabilities in existing technologies.
[0006] To achieve the above objectives, the present invention provides the following technical solution: an 80-channel programmable timing controller control system, comprising:
[0007] The dynamic game module is used to calculate the timing optimization strategy for each of the 80 channels, and selects the timing delay, signal frequency and signal duration for each channel by optimizing the payoff function;
[0008] The global optimization control module is used to dynamically adjust the priority factor and resource allocation weight of each channel based on the global stability function to ensure system stability.
[0009] The task dependency topology module is used to construct a directed weighted topology graph and dynamically adjust channel priorities based on the dependencies between channel tasks.
[0010] The resource scheduling module is used to allocate resources to each channel in real time according to priority weights.
[0011] Preferably, the dynamic game-playing module includes:
[0012] The payment function calculation unit is used to calculate the payment function based on the priority factor, timing deviation, and timing conflict penalty value of each channel.
[0013] The strategy optimization unit is used to iteratively calculate the optimal time-series strategy of the channel based on the payoff function using a gradient optimization method;
[0014] The timing conflict detection unit is used to monitor timing conflicts between channels in real time and adjust the strategy calculation parameters during the strategy optimization process.
[0015] Preferably, the global optimization control module includes:
[0016] The stability function calculation unit is used to calculate the global stability function of the system, including channel timing deviation and inter-channel conflict intensity;
[0017] The priority adjustment unit is used to dynamically adjust the priority factor of each channel based on the result of the global stability function.
[0018] The resource allocation weight adjustment unit is used to allocate resource weights for each channel based on priority factors and total resource limits.
[0019] Preferably, the task-dependent topology module includes:
[0020] Topology building unit, used to construct a channel-dependent directed weighted topology graph based on user-input task parameters;
[0021] Topology sorting unit, used to sort the topology graph and calculate the priority sequence of channels;
[0022] The priority update unit is used to dynamically update the channel priority based on the topology sorting results.
[0023] Preferably, the resource scheduling module includes:
[0024] The resource calculation unit is used to calculate the resource allocation weight based on the priority factor of each channel.
[0025] The resource allocation unit is used to allocate system resources to each channel based on calculated resource weights.
[0026] The resource dynamic adjustment unit is used to adjust resource allocation when the channel status changes or a fault is detected.
[0027] This invention also provides a control method for an 80-channel programmable timing controller, comprising the following steps:
[0028] The dynamic game modeling steps involve calculating the optimal time-series strategy for 80 channels using a payoff function.
[0029] The global optimization control steps dynamically adjust the channel priority factor and resource allocation weight through a global stability function.
[0030] The topology dependency analysis step involves constructing a topology graph based on the channel task dependencies and adjusting channel priorities.
[0031] The dynamic resource allocation process allocates resources dynamically based on priority weights.
[0032] Preferably, the dynamic game modeling steps include:
[0033] Construct a payment function that calculates the task completion effect of each channel based on priority factors, timing deviations, and timing conflicts.
[0034] The optimization strategy calculation involves iteratively calculating the maximum value of the payoff function using a gradient optimization method to obtain the optimal timing strategy for the channel. Conflict detection and adjustment involve detecting timing conflicts between channels during the optimization process and adjusting optimization parameters to reduce conflicts.
[0035] Preferably, the global optimization control step includes:
[0036] Calculate the global stability function, which includes the timing deviation of the channels and the intensity of the conflict between channels;
[0037] Priority factor adjustment: The priority factor of each channel is dynamically adjusted based on the result of the global stability function.
[0038] Resource allocation weights are adjusted by updating the resource allocation weights for each channel in real time using priority factors.
[0039] Preferably, the topology dependency analysis step includes:
[0040] Build a task dependency topology graph for the channel based on the task parameters input by the user;
[0041] Priority sequences of channels are calculated based on topological sorting;
[0042] The channel priority is dynamically updated, and the priority factor is adjusted in real time based on the topology sorting results.
[0043] Preferably, the dynamic resource allocation step includes:
[0044] Calculate the resource allocation weight based on the priority factor of each channel;
[0045] Allocate resources by distributing the calculated resource allocation weights to each channel;
[0046] Resources are dynamically adjusted, and resource allocation weights are recalculated and allocation results are updated when the channel status changes.
[0047] This invention provides an 80-channel programmable timing controller control system and its control method. It has the following beneficial effects:
[0048] 1. This invention constructs a directed weighted topology graph of task dependencies through a task-dependent topology module and dynamically calculates priorities by combining topology sorting, thus ensuring the integrity of task logic and the accuracy of temporal dependencies. Compared with the fixed priority or static logic processing methods used in existing technologies, this invention solves the problems of logical disorder and difficulty in dynamically adjusting task order in complex multi-task scenarios.
[0049] 2. This invention employs a global optimization control module, quantifying the system state through a global stability function and dynamically adjusting channel priority factors and resource allocation weights using Lyapunov stability theory. This design ensures the stable operation of the entire system. Compared to traditional optimization methods targeting single channels, it overcomes the technical shortcomings of poor global coordination and insufficient response to dynamic task environments in multi-channel systems.
[0050] 3. The resource scheduling module of this invention, by calculating resource allocation weights in real time and dynamically adjusting the allocation scheme, can efficiently meet the resource needs of high-priority tasks while avoiding the problem of low-priority tasks excessively consuming resources. Compared with existing static resource allocation schemes, it effectively solves the limitations of uneven resource allocation and insufficient resources for high-priority tasks.
[0051] 4. This invention constructs a payoff function through a dynamic game theory module, and combines a conflict detection mechanism and a gradient optimization algorithm to achieve balanced allocation of strategies among channels and minimize conflicts. Compared with traditional fixed-strategy scheduling, it solves the problem of ineffective avoidance of timing conflicts in multi-task concurrent scenarios, significantly improving the accuracy and efficiency of timing control. Attached Figure Description
[0052] Figure 1 This is a system structure diagram of the present invention;
[0053] Figure 2 This is a module architecture diagram of the dynamic game-playing module of the present invention;
[0054] Figure 3 This is a module architecture diagram of the global optimization control module of the present invention;
[0055] Figure 4 This is a module architecture diagram of the task-dependent topology module of this invention;
[0056] Figure 5 This is a module architecture diagram of the resource scheduling module of the present invention;
[0057] Figure 6 This is a flowchart of the method of the present invention. Detailed Implementation
[0058] The technical solutions in 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.
[0059] Please see the appendix Figure 1 -Appendix Figure 5 This invention provides an 80-channel programmable timing controller control system, comprising:
[0060] The dynamic game module is used to calculate the timing optimization strategy for each of the 80 channels, and selects the timing delay, signal frequency and signal duration for each channel by optimizing the payoff function;
[0061] This module primarily addresses timing conflicts, uneven resource allocation, and dynamic priority adjustments among multiple channels. Through optimized modeling of the payoff function, it achieves dynamic optimization of timing strategies for each channel. In collaboration with the global optimization control module and the task-dependent topology module, the dynamic game theory module provides fundamental support for complex timing control across 80 channels.
[0062] Generally, implementing a dynamic game theory module requires strategy optimization by considering the task requirements, priority factors, conflict situations, and resource allocation weights for each channel. Alternatively, this module employs dynamic game theory to model the temporal parameters of each channel and achieves balanced allocation of channel strategies by maximizing the payoff function.
[0063] Specifically, the implementation of this module includes the construction of payment functions, the application of strategy optimization methods, and the dynamic handling of conflict detection and adjustment. In some complex scenarios, this module can dynamically adapt to the sudden task demands of the channel and, in conjunction with other modules, achieve a globally stable optimization goal.
[0064] In this embodiment, the core of the dynamic game module lies in the construction and optimization of the payoff function.
[0065] First, each channel is considered an independent "player" in a dynamic game, and its strategy set includes three basic parameters: timing delay, signal frequency, and signal duration.
[0066] Specifically, the policy set for channel i can be represented as:
[0067] S i ={Δt i ,f i ,d i}
[0068] Where: Δt i The timing delay of channel i, in seconds (s), represents the time interval from signal triggering to output; f i : The signal output frequency of channel i, measured in Hertz (Hz), represents the periodicity of the signal; d i The duration of the signal in channel i, expressed in seconds (s), represents the duration of the signal's action.
[0069] In one possible implementation, to optimize the strategy, the dynamic game module defines a payoff function to evaluate the merits of each channel strategy. The goal of the payoff function is to achieve the optimal strategy selection by balancing priority satisfaction, timing conflicts, and resource allocation.
[0070] The payment function can be expressed as:
[0071]
[0072] Among them: Payoff i λ: The payout value for channel i, used to represent the quality of the channel strategy; i λ: Priority factor for channel i; a larger value indicates a higher importance of the task in that channel. i >5; U i Priority satisfaction indicates the execution effect of the channel timing, ranging from [0,1]. The specific calculation is as follows:
[0073]
[0074] Wherein: T i : The desired timing target for channel i, in seconds (s), preset by the user; |Δt i -T i |: Deviation between channel timing delay and target timing; β·C i : Timing conflict penalty term, representing the degree of timing conflict between channel i and other channels, where:
[0075]
[0076] Where: C i : Conflict intensity; a larger value indicates a more severe timing conflict; Δt j The timing delay of channel j, and the timing delay Δt of channel i. i Compare; denominator |Δt i -Δt j | 2 : Represents the squared distance between the timing delays of channels i and j, used to amplify the impact of collision distance; Resource allocation penalty is used to limit the amount of channel resources used, where R i The resource weights allocated to channel i are typically represented in the form of time slices, computing resources, etc.; R max Total amount of system resources.
[0077] As an alternative, the payoff function strives to maximize priority satisfaction without increasing timing conflicts through optimization strategies.
[0078] Generally, strategy optimization employs an iterative approach, based on the payoff function and the strategy set S for the channel. i Dynamic adjustments are made. In one specific implementation, gradient descent is used to optimize the payoff function.
[0079] The optimized formula is as follows:
[0080]
[0081] in: The strategy value of channel i in the k-th iteration; η: step size factor, used to control the adjustment range of each optimization, η > 0; The gradient of the payoff function with respect to the set of policies;
[0082] In some embodiments, policy optimization also incorporates dynamic adjustments based on real-time feedback from collision detection. When severe timing conflicts are detected in certain channels, the priority factor λ of those channels can be temporarily increased. i , and re-optimize the strategy.
[0083] In this embodiment, the final step of the dynamic game module is conflict detection and adjustment.
[0084] In its implementation, the dynamic game module evaluates the strategy optimization results for all channels through a temporal conflict detection unit. The core of conflict detection lies in calculating the conflict intensity C for each channel. i Generally, when the conflict intensity C i When the threshold is exceeded, the module will trigger a conflict adjustment mechanism.
[0085] As an alternative, conflict adjustment mechanisms can reduce the timing delay of conflicting channels by lowering the priority factor of non-critical channels or by reallocating resources. The specific adjustment strategy depends on the current system state and priority distribution.
[0086] This module provides precise policy inputs for the global optimization control module and resource scheduling module, ensuring efficient and stable timing control of the 80 channels.
[0087] The global optimization control module is used to dynamically adjust the priority factor and resource allocation weight of each channel based on the global stability function to ensure system stability.
[0088] This module is primarily responsible for coordinating the system's global stability by dynamically adjusting the priority factors and resource allocation weights of each channel to ensure optimal overall task timing. Building upon the optimization strategies provided by the dynamic game theory module, the global optimization control module further evaluates the system's global operational status. Alternatively, this module can perform real-time optimization of issues such as conflicts and delays by calculating a global stability function and combining it with a dynamic adjustment mechanism.
[0089] Generally, the global optimization control module needs to work in conjunction with the dynamic game theory module and the task-dependent topology module. In some complex task scenarios, this module can also readjust the resource weights or priority factors of each channel based on real-time calculation results to adapt to sudden task demands.
[0090] Specifically, the global optimization control module includes functional units such as stability function calculation, priority factor adjustment, and resource allocation weight update. In one possible implementation, a global stability function is introduced to evaluate the system, and Lyapunov stability theory is used to ensure system stability.
[0091] In this embodiment, the global optimization control module first performs a quantitative evaluation of the system state using a global stability function.
[0092] The core of the global stability function lies in simultaneously considering the timing deviation and timing conflict intensity of each channel to comprehensively reflect the overall stability of the system. The definition of the global stability function is as follows:
[0093]
[0094] Where: V(t): the global stability function value of the system at time t, used to measure the overall stability state of the system; (Δt) i -T i ) 2 The squared timing skew term for channel i represents the actual timing delay Δt of the channel. i With the target time series T i The degree of deviation, where Δt i : Actual timing delay of channel i, in seconds (s); T i : The target timing for channel i is set by the user or the host system, in seconds (s); C i The temporal conflict intensity of channel i is used to quantify the conflict between channels. In one possible implementation, to achieve global stability of the system, the derivative of the global stability function V(t) must satisfy the following condition:
[0095]
[0096] If the system does not meet the above conditions during operation, it indicates that there is a conflict or uneven resource allocation. In this case, the global optimization control module will trigger a priority factor adjustment or resource allocation weight update mechanism to dynamically optimize the system state.
[0097] Specifically, when the system detects a timing deviation or conflict intensity exceeding a threshold, adjustments can be made in the following two ways:
[0098] Adjust priority factor: Increase the priority factor λ of the conflicting channel. i Reduce the priority factor of non-critical task channels; adjust resource allocation weights: increase the resource weight R of conflicting channels. i Reduce resource allocation for non-critical task channels.
[0099] In this embodiment, the global optimization control module also includes a dynamic update function for resource allocation weights.
[0100] As an alternative, the update of resource allocation weights and the priority factor λ i Closely related. Generally, the resource allocation weight R... i The calculation formula is as follows:
[0101]
[0102] Where: R i : Resource weights assigned to channel i, in units of time slices or computational resources; R max : Total system resources; λ i Priority factor of channel i; The sum of priority factors for all channels.
[0103] In some embodiments, the system dynamically adjusts λ based on the calculation result of the global stability function. i This indirectly changes R i The resource allocation results are as follows. The above resource allocation formula ensures that high-priority channels receive more resources, while low-priority channels receive relatively fewer resources.
[0104] In this embodiment, the global optimization control module implements dynamic priority management through a priority adjustment unit.
[0105] Priority factor adjustments are primarily based on the calculation results of the global stability function. When the timing deviation or conflict intensity of certain channels exceeds a set threshold, the deviation or conflict can be reduced by temporarily increasing the priority factor of these channels. Adjustment methods include:
[0106] Increase the priority factor λ of the conflict channel. i This increases its weight in resource allocation;
[0107] Lower the priority factor of non-conflicting channels to free up resources for critical channels.
[0108] As an alternative, priority factor adjustment can be further optimized by combining the priority ranking results of task-dependent topology modules. For example, in some channels with strong dependencies, the priority factor of higher-level channels can be increased first, thereby reducing the latency of subsequent tasks.
[0109] The global optimization control module achieves global optimization of the 80-channel timing control system through the coordinated work of functional units such as global stability function evaluation, Lyapunov stability analysis, dynamic updating of resource allocation weights, and priority adjustment.
[0110] The task dependency topology module is used to construct a directed weighted topology graph and dynamically adjust channel priorities based on the dependencies between channel tasks.
[0111] By constructing a task-dependent topology graph, this module can accurately describe the temporal dependencies between channel tasks and calculate the priority of each channel through topological sorting. The output of the task-dependent topology module directly affects the strategy optimization of the dynamic game module and the priority adjustment of the global optimization control module, and is an important foundation for ensuring the correctness of the execution logic of multi-channel tasks.
[0112] Typically, the task-dependent topology module needs to generate a directed weighted topology graph containing task dependencies based on user-input task requirements or channel logic constraints. Alternatively, this module can dynamically update the topology graph to adapt to real-time changes in task dependencies, thereby enabling dynamic adjustment of channel priorities.
[0113] Specifically, the implementation of this module includes constructing the topology graph, calculating the topology sort, and updating the priority factor. In one possible implementation, this module can combine the results of conflict detection to prioritize high-conflict tasks, thereby improving the timing coordination capability of the entire system.
[0114] In this embodiment, the task dependency topology module first models the dependencies between tasks by constructing a topology graph.
[0115] In certain task scenarios, there may be strict timing constraints between channel tasks; for example, a task in channel i must be executed before one in channel j. To describe this task dependency relationship, the task dependency topology module models the tasks using a directed weighted graph G(V,E).
[0116] In general, a directed weighted graph G(V,E) is defined as follows:
[0117] Node set V = {v1, v2, ..., v 80} represents all channel tasks, with each node corresponding to one channel task.
[0118] Edge set E = {e ij} represents the dependency relationship between channel tasks, where edge e ij This indicates that the task of channel i depends on the completion of the task of channel j.
[0119] edge weight w ij This indicates the dependency strength between channel task i and task j; a larger weight value indicates a stronger dependency.
[0120] Specifically, edge weight w ij The value can be calculated using the following formula:
[0121]
[0122] Where: w ij α: Task-dependent weights for channels i and j, dimensionless; ij Dependency factor: Represents the importance of dependencies between tasks, with a value range of [0,1], and is either user-inputted or preset; T ij : The expected time required for channel j to complete the task, in seconds (s), used to reflect the time interval of dependent tasks.
[0123] In one possible implementation, the task-dependent topology module can generate the aforementioned topology graph based on user-provided task priority constraints or by automatically analyzing task execution logic. For example, when tasks in certain channels have a clear sequential relationship (e.g., channel i must wait for channel j to complete before it can start), the module will add an edge e for it. ij And assign the corresponding weight w ij .
[0124] In this embodiment, the task-dependent topology module calculates the priority sequence of channel tasks through topology sorting.
[0125] After constructing the topology graph G(V,E), the module analyzes the task dependencies and uses a topological sorting algorithm to calculate the priority sequence of each channel. Topological sorting is a sorting method based on directed acyclic graphs (DAGs) used to determine the execution order of tasks.
[0126] In general, the priority sequence P = {P1, P2, ..., P} 80 The calculation process for} is as follows:
[0127] Select a node v with an in-degree of zero from the topology graph. i ; will node v i Add to priority sequence P and remove its outgoing edge e. ij Repeat the above steps until all nodes have been added to P.
[0128] As an alternative, the module can also incorporate edge weights w. ij Calculate the priority value P of the task. i The specific formula is as follows:
[0129]
[0130] Where: P i : The priority value of channel i, used to measure the importance of the task in that channel; Pred(i): The set of all predecessor nodes of channel i, i.e., the set of channels that depend on channel i; w ji : Task dependency weights for channel j and channel i.
[0131] Using the topological sorting algorithm described above, the module can output a global channel task priority sequence P. In some complex task scenarios, the result of the priority sequence P can be used as input to the dynamic game module to guide the optimized calculation of the payoff function.
[0132] In this embodiment, the task-dependent topology module further combines priority adjustment to achieve dynamic optimization of task logic.
[0133] In one possible implementation, the task dependency topology module can dynamically update the existing topology graph when task dependencies change or conflicts occur between channels. For example, when the dependency constraints of some tasks are removed or modified, the module will recalculate the edge set E and the weight set w. ji And generate a new topology graph.
[0134] Specifically, the priority adjustment method includes the following steps:
[0135] Detect conflicts or changes in dependencies between channel tasks;
[0136] Regenerate the topology graph based on the new task constraints;
[0137] Recalculate the priority sequence P and priority value P i .
[0138] Alternatively, the module can force a boost in the priority value of certain channels based on the collision detection results. For example, for channels experiencing severe collisions, the module can increase the dependency weight w of their predecessor nodes. ji To increase its priority value P i .
[0139] The task dependency topology module provides the system with a clear understanding of task logic relationships by constructing and analyzing task dependency topology graphs.
[0140] The resource scheduling module is used to allocate resources to each channel in real time according to priority weights;
[0141] The resource scheduling module is used to dynamically allocate resources under limited system resources to meet the timing and priority requirements of each channel. Working in conjunction with the dynamic game theory module, global optimization control module, and task-dependent topology module, this module achieves efficient resource utilization through real-time adjustments based on priority factors and resource allocation weights. The resource scheduling module is designed to ensure that high-priority tasks receive sufficient resources while avoiding resource waste and conflicts.
[0142] Generally, the implementation of the resource scheduling module relies on the dynamic adjustment of priority factors and the real-time calculation of resource allocation weights. Alternatively, this module employs a priority weight allocation model, dynamically allocating system resources based on the priority adjustment results provided by the global optimization control module. Specifically, the resource scheduling module comprises three functional units: resource calculation, resource allocation, and dynamic resource adjustment.
[0143] In one possible implementation, the resource scheduling module accurately allocates resources using an allocation formula, and then reallocates resources based on conflict detection results, thereby further optimizing resource utilization efficiency.
[0144] In this embodiment, the resource scheduling module first quantifies the resource demand of each channel by calculating the resource allocation weight.
[0145] Resource allocation weights are used to measure the relative priority of resource demand for each channel.
[0146] Generally, when the priority factors of certain channels are large, these channels will receive more resource allocation weight. For example, when the priority factor λ of channel i is large... i When the channel accounts for 20% of the total priority factors, it will be allocated to R. max 20% of the resources.
[0147] Alternatively, the resource scheduling module can also adjust the allocation weights based on the priority ranking results provided by the task dependency topology module. For example, for channels with higher task dependencies, their allocation weights can be temporarily increased.
[0148] To ensure the integrity of the task sequence;
[0149] During the resource allocation process, the resource scheduling module assigns an allocation weight R to each channel. i This translates into specific resource allocation quantities, such as time slices or computing resources. Generally, the module divides system resources into multiple fixed units (such as time slice units or computing units), and then allocates these units to each channel according to allocation weights.
[0150] Specifically, when system resources are divided into N slots When there are 1 time slice unit, the number of time slice units allocated to channel i is:
[0151]
[0152] Wherein: S i : The number of time slice units allocated to channel i; N slots : Total number of time slice units in the system; R i : Resource weight of channel i; R maxTotal system resources.
[0153] As one possible implementation, when channels with strong task dependencies have higher priority, they may be allocated more time slices. For example, when N slots =100, the assigned weight of a certain channel is R i =20, while the total system resources R max When the value is 100, the channel will be allocated 20 time slice units.
[0154] In this embodiment, the resource scheduling module also includes a resource dynamic adjustment unit to cope with real-time changes in task requirements.
[0155] Generally, resource allocation remains stable after initial calculation. However, in some dynamic task scenarios, the system may need to adjust the resource allocation results in real time. For example, when timing conflicts are severe on some channels, the resource scheduling module can reallocate resources through a dynamic adjustment mechanism to alleviate the conflicts.
[0156] Priority factor adjustment method: By increasing the priority factor λ of high-conflict channels. i This indirectly increases the resource allocation weight of the channel. For example, when a channel experiences a severe timing conflict, its priority factor can be increased by 10%, thereby increasing its resource allocation weight by approximately 10%.
[0157] Resource reallocation method: Directly reduce the resource allocation weight of low-priority channels and reallocate the freed-up resources to high-priority channels. For example, when the resource utilization efficiency of a certain channel is low, its resource allocation weight can be reduced by 20%, and those resources can be allocated to other channels.
[0158] Alternatively, the resource dynamic adjustment unit can also be adjusted in conjunction with the conflict detection results of the dynamic game module. For example, when a conflict intensity C is detected in certain channels... i When the preset threshold is exceeded, a dynamic adjustment mechanism can be triggered immediately to reallocate the resource allocation results of these channels.
[0159] The resource scheduling module achieves efficient utilization of system resources by calculating resource allocation weights, actually allocating resources, and dynamically adjusting resources.
[0160] The 80-channel programmable timing controller control method described below can be referred to in correspondence with the 80-channel programmable timing controller control system described above.
[0161] Please see the appendix Figure 6 The present invention also provides a control method for an 80-channel programmable timing controller, comprising the following steps:
[0162] S1. Dynamic game modeling steps: Calculate the optimal time-series strategy for 80 channels using the payoff function.
[0163] S2, Global Optimization Control Steps: Dynamically adjust channel priority factors and resource allocation weights through a global stability function.
[0164] S3. Topology dependency analysis step: Construct a topology graph based on channel task dependencies and adjust channel priorities.
[0165] S4. Dynamic resource allocation step: dynamically allocate resources according to priority weights.
[0166] The method in this embodiment can be used to execute the above system embodiment, and its principle and technical effect are similar, so it will not be described again here.
[0167] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. An 80-channel programmable timing controller control system, characterized in that, include: The dynamic game module is used to calculate the timing optimization strategy for each of the 80 channels, and selects the timing delay, signal frequency and signal duration for each channel by optimizing the payoff function; The global optimization control module is used to dynamically adjust the priority factor and resource allocation weight of each channel based on the global stability function to ensure system stability. The task dependency topology module is used to construct a directed weighted topology graph and dynamically adjust channel priorities based on the dependencies between channel tasks. The resource scheduling module is used to allocate resources to each channel in real time according to priority weights; The dynamic game-playing module includes: The payment function calculation unit is used to calculate the payment function based on the priority factor, timing deviation, and timing conflict penalty value of each channel. The payment function can be expressed as: ; in: :aisle The payment value is used to indicate the quality of the channel strategy; :aisle The priority factor is such that a larger value indicates a higher importance for the channel task. >5; Priority satisfaction indicates the execution effect of the channel timing, ranging from [0,1]. The specific calculation is as follows: ; in: :aisle The expected timing target, in seconds (s), is preset by the user; The deviation between channel timing delay and target timing; : Timing conflict penalty term, representing the channel The degree of timing conflict with other channels, where: ; in: : Conflict intensity; the higher the value, the more severe the timing conflict. :aisle Timing delay, and channel Timing delay Comparison; denominator : Indicates a channel and The squared distance of the timing delay is used to amplify the impact of the collision distance. Resource allocation penalty items are used to limit the amount of channel resources used. : Assigned to channel The resource weights are usually expressed in the form of time slices, computing resources, etc. The total amount of system resources; The strategy optimization unit is used to iteratively calculate the optimal time-series strategy of the channel based on the payoff function using a gradient optimization method; The optimized formula is as follows: ; in: :aisle In the The strategy value at the next iteration; Step size factor, used to control the adjustment range of each optimization. >0; The gradient of the payoff function with respect to the set of policies; The temporal conflict detection unit is used to monitor temporal conflicts between channels in real time and adjust the policy calculation parameters during the policy optimization process. The dynamic game module evaluates the policy optimization results of all channels through the temporal conflict detection unit. The core of conflict detection lies in calculating the conflict intensity of each channel. ; The global optimization control module includes: The stability function calculation unit is used to calculate the global stability function of the system, including channel timing deviation and inter-channel conflict intensity; The global stability function is defined as follows: ; in: The system at any time The global stability function value is used to measure the overall stability state of the system; :aisle The squared timing deviation term represents the actual timing delay of the channel. With target timing The degree of deviation, among which, :aisle The actual timing delay, in seconds (s); :aisle The target timing sequence is set by the user or the host system, and the unit is seconds (s). :aisle The timing conflict intensity is used to quantify the conflict between channels; The priority adjustment unit is used to dynamically adjust the priority factor of each channel based on the global stability function result; the adjustment method includes: increasing the priority factor of conflicting channels. Increase its resource allocation weight; reduce the priority factor of non-conflicting channels to free up resources for critical channels; The resource allocation weight adjustment unit is used to allocate the resource weight of each channel according to the priority factor and the total resource limit; Resource allocation weight updates and priority factors Closely related, resource allocation weight The calculation formula is as follows: ; in: : Assigned to channel The resource weights are expressed in time slices or computational resource quantities. Total system resources; :aisle Priority factor; : The sum of priority factors for all channels.
2. The 80-channel programmable timing controller control system according to claim 1, characterized in that, The task-dependent topology module includes: Topology building unit, used to construct a channel-dependent directed weighted topology graph based on user-input task parameters; Topology sorting unit, used to sort the topology graph and calculate the priority sequence of channels; The priority update unit is used to dynamically update the channel priority based on the topology sorting results.
3. The 80-channel programmable timing controller control system according to claim 1, characterized in that, The resource scheduling module includes: The resource calculation unit is used to calculate the resource allocation weight based on the priority factor of each channel. The resource allocation unit is used to allocate system resources to each channel based on calculated resource weights. The resource dynamic adjustment unit is used to adjust resource allocation when the channel status changes or a fault is detected.
4. A control method for an 80-channel programmable timing controller, characterized in that, The control system using an 80-channel programmable timing controller as described in any one of claims 1-3 includes the following steps: The dynamic game modeling steps involve calculating the optimal time-series strategy for 80 channels using a payoff function. The global optimization control steps dynamically adjust the channel priority factor and resource allocation weight through a global stability function. The topology dependency analysis step involves constructing a topology graph based on the channel task dependencies and adjusting channel priorities. The dynamic resource allocation process allocates resources dynamically based on priority weights.
5. The control method for an 80-channel programmable timing controller according to claim 4, characterized in that, The dynamic game modeling steps include: Construct a payment function that calculates the task completion effect of each channel based on priority factors, timing deviations, and timing conflicts. The optimization strategy calculation involves iteratively calculating the maximum value of the payment function using a gradient optimization method to obtain the optimal time-series strategy for the channel. Conflict detection and adjustment: During the optimization process, timing conflicts between channels are detected, and optimization parameters are adjusted to reduce conflicts.
6. The control method for an 80-channel programmable timing controller according to claim 4, characterized in that, The global optimization control steps include: Calculate the global stability function, which includes the timing deviation of the channels and the intensity of the conflict between channels; Priority factor adjustment: The priority factor of each channel is dynamically adjusted based on the result of the global stability function. Resource allocation weights are adjusted by updating the resource allocation weights for each channel in real time using priority factors.
7. The control method for an 80-channel programmable timing controller according to claim 4, characterized in that, The topology dependency analysis steps include: Build a task dependency topology graph for the channel based on the task parameters input by the user; Priority sequences of channels are calculated based on topological sorting; The channel priority is dynamically updated, and the priority factor is adjusted in real time based on the topology sorting results.
8. The control method for an 80-channel programmable timing controller according to claim 4, characterized in that, The dynamic resource allocation steps include: Calculate the resource allocation weight based on the priority factor of each channel; Allocate resources by distributing the calculated resource allocation weights to each channel; Resources are dynamically adjusted, and resource allocation weights are recalculated and allocation results are updated when the channel status changes.
Citation Information
Patent Citations
Method and device for establishing frequency slot channel
CN103533463A
Cooperative control method of industrial production robot
CN119335972A