Time sequence decomposition relaxation cutting method for security constraint unit commitment problem

By employing a temporal decomposition relaxation cutting method, dynamic sliding time window, and local optimization, the computational complexity and excessively long solution time of the SCUC problem are addressed, thereby improving the solution efficiency of the safety-constrained unit combination problem.

CN121303528APending Publication Date: 2026-01-09SHENZHEN RES INST OF BIG DATA
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202511318369.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-16
Publication Date
2026-01-09

AI Technical Summary

Technical Problem

Existing technologies suffer from high computational complexity, excessively long solution time, and excessive memory consumption when solving safety-constrained unit combination problems. In particular, the model size is huge in the N-1 scenario, making it difficult to solve SCUC problems efficiently.

Method used

A temporal decomposition relaxation cutting method is adopted. By obtaining a dynamic sliding time window consisting of a fixed window, an integer window, a relaxed window, and an ignored window, no N-1 safety constraints are initially introduced. Safety is only checked during the branch pruning process. Cut planes are dynamically added, and local optimization is performed using the globally safe and feasible solution as the anchor point to gradually improve scheduling cost and safety margin.

Benefits of technology

It significantly reduces the number of variables and constraints in each round of solution, improves the timeliness of solving SCUC problems, ensures safety and feasibility, and is suitable for the periodic operation of scheduling centers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121303528A_ABST
    Figure CN121303528A_ABST
Patent Text Reader

Abstract

The invention provides a time sequence decomposition relaxation cutting method for a security constraint unit commitment problem, and relates to the field of data processing. In the method, a full-scheduling time domain is divided into a fixed window, an integer window, a relaxation window and a neglect window through a dynamic sliding time window, and a unit commitment problem is solved in stages. Firstly, sub-problems are established in an integer and a relaxation window, results are gradually solidified, a global safety feasible solution is obtained in combination with full-scene safety detection and a cut plane dynamic adding mechanism, then decision variables are released in an optimization window with the solution as an anchor point for local optimization, rolling optimization is carried out along a time axis to continuously reduce scheduling cost and improve safety margin, and finally, scheduling is completed. And finally, outputting an optimized full-time-domain scheduling scheme. By implementing the technical scheme provided by the invention, the timeliness of solving the SCUC problem by the server is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of data processing, specifically to a time-series decomposition relaxation cutting method for safety-constrained unit combination problems. Background Technology

[0002] Safety-Constrained Unit Combination (SCUC) is a core optimization problem in power system operation and dispatch. Its objective is to rationally determine the start-up and shutdown status and active power output level of each generating unit within a given dispatch time domain, meeting system load demand and reserve requirements with the lowest overall operating cost, while simultaneously ensuring the safety and reliability of power supply under various operating conditions. This problem not only needs to satisfy conventional physical constraints, such as upper and lower limits of unit output, minimum start-up and shutdown times, ramp-up capacity limits, system power balance and flow constraints, but also needs to incorporate safety constraints under large-scale emergency scenarios, especially the N-1 safety constraint to address single equipment failures. This ensures the feasibility and robustness of the dispatch scheme under coupled conditions of multiple scenarios, multiple time periods, and multiple generating units.

[0003] From a mathematical modeling perspective, SCUC is formalized as a large-scale mixed-integer linear programming (MILP) model, where the start-up and shutdown states of the units are characterized by binary integer variables, active power output and other continuous states are characterized by real number variables, and physical and safety constraints are expressed through a large number of linear inequalities. However, the computational complexity of this model is extremely high. On the one hand, it stems from the high-dimensional decision space composed of multiple units, multiple time periods, and multiple scenarios, leading to an exponential growth of the integer search space. On the other hand, a large number of dense safety constraints significantly increase the density and scale of the model, especially in the N-1 scenario, where each potential failure situation introduces an additional set of power flow constraints, making the size of the relaxed version of the initial linear programming model extremely large, resulting in excessively long solution time and high memory consumption.

[0004] Therefore, there is an urgent need for a time-series decomposition relaxation cutting method for the safety-constrained unit combination problem to improve the timeliness of server-side solutions to the SCUC problem. Summary of the Invention

[0005] This application provides a time-series decomposition relaxation cutting method for the Safety Constraint Unit Combination Problem, which facilitates improving the timeliness of server-side solutions to the SCUC problem.

[0006] The first aspect of this application provides a temporal decomposition relaxation cutting method for a safety-constrained unit combination problem. The method includes: obtaining a dynamic sliding time window comprising a fixed window, an integer window, a relaxation window, and an ignored window, wherein the unit start-up and shutdown states remain unchanged within the fixed window, the integer window retains the binary integer property, the relaxation window cancels the binary integer property while maintaining continuous values ​​and retaining the same constraints, and the ignored window does not participate in the solution; establishing a sub-problem model based on the integer window and the relaxation window, and after solving the model, fixing the step-size corresponding results within the integer window to the fixed window, and using the dynamic sliding time window until the entire scheduling time domain is covered; in each round of sub-problem solving, N-1 safety constraints are not initially introduced, and when an integer feasible solution for the unit start-up and shutdown states and active power output is obtained during the branch pruning process, a full-scenario safety detection is performed and a detection result is generated. If the detection result indicates a violation of safety constraints, the severely violated safety constraints are dynamically added to the current node's active constraint set in the form of a cutting plane, and the solution continues. If the detection result indicates no violation of safety constraints is detected, the integer feasible solution is used as the safe feasible solution. The safe feasible solution is used to update the current optimal solution and serves as the fixed window input for the next round of rolling solution. After covering the entire scheduling time domain and obtaining the global safe feasible solution, the global safe feasible solution is used as the anchor point. An optimization window is selected in the entire scheduling time domain. The unit start-up and shutdown status and active power output outside the optimization window are fixed as the anchor point solution values, and all decision variables within the optimization window are released. The exact solver with a dynamic cutting plane separation mechanism is called for local optimization. The optimization window is slid along the time axis and executed repeatedly to improve the scheduling cost and safety margin of the current solution. The optimized unit combination scheduling scheme in the entire scheduling time domain is output.

[0007] Optionally, obtaining the dynamic sliding time window, which includes a fixed window, an integer window, a relaxed window, and an ignored window, specifically includes: establishing a prediction time domain based on historical load data, predicted load data, predicted renewable energy output data, unit start-up and shutdown plans, and maintenance plans within the scheduling time domain, and setting initial values ​​for time granularity, rolling step size, fixed window length, integer window length, relaxed window length, and ignored window length; in the prediction time domain, fusing historical feasible solutions with current start-up and shutdown plans and day-ahead optimization results to generate a benchmark solution, determining the fixed window boundary based on the stability and safety margin of the benchmark solution at the current moment, and fixing the corresponding unit start-up and shutdown status and active power output to the fixed window; for future periods after the fixed window, classifying them using a window classifier based on load fluctuation intensity index, renewable energy fluctuation intensity index, reserve gap index, safety margin index, and computational resource occupancy index, dividing the periods that satisfy the binary integer characteristics and bear feasibility guarantees into the integer window; dividing the periods where start-up and shutdown status allows continuous values ​​into the relaxed window; and dividing the periods outside the current solution domain into the ignored window.

[0008] Optionally, the step of establishing a sub-problem model based on the integer window and the relaxation window, solving it, and then fixing the result corresponding to the step size in the integer window to a fixed window, and using the dynamic sliding time window to cover the entire scheduling time domain, specifically includes: after the time axis and granularity configuration are completed and the dynamic sliding time window is generated, generating a fixed window lock set based on the unit start-up and shutdown status and active power output of the fixed window, and inputting the fixed window lock set as boundary conditions into the sub-problem model; concatenating the integer window and the relaxation window into the current solution domain, and inheriting the start-up and shutdown trajectory and active power output of the previous solution or benchmark solution for each unit in the current solution domain as initial values ​​to form solver hot start information.

[0009] Optionally, in each round of sub-problem solving, no N-1 safety constraints are initially introduced. During the branch-pruning process, when an integer feasible solution containing the unit start-up / shutdown state and active power output is obtained, a full-scenario safety check is performed and a check result is generated. Specifically, this includes: in each round of sub-problem solving, no N-1 safety constraints are initially introduced. During the branch-pruning process, when an integer feasible solution containing an integer window binary structure is obtained, the unit start-up / shutdown state and active power output of the integer feasible solution are extracted to generate an integer feasible solution snapshot; the integer feasible solution snapshot is input into the scenario manager to generate a full-scenario safety check queue, and a rapid feasibility screening and fine-grained verification are sequentially performed through a parallel detection scheduler to obtain the check result.

[0010] Optionally, if the detection result indicates a violation of safety constraints, the severely violated safety constraints are dynamically added to the current node's active constraint set in the form of a cutting plane, and the solution continues. If the detection result indicates no violation of safety constraints, the integer feasible solution is used as a safe feasible solution. The safe feasible solution is used to update the current optimal solution and as the fixed window input for the next round of rolling solution. Specifically, in each round of solving the subproblem, if the detection result indicates a violation of safety constraints, the cutting plane constructor generates a cutting plane description based on the list of severely violated constraints, and the cutting plane is used as the input for the next round of rolling solution. The surface description is dynamically added to the active constraint set of the current node of the branch pruning to maintain the continuity of the search context and continue solving. If the detection result indicates that no violation of safety constraints is detected, the feasible solution manager marks the integer feasible solution as a safe feasible solution and updates the current optimal solution record. At the same time, the unit start-up and shutdown status and active power output of the safe feasible solution from the start of the integer window to the end of the rolling step are fixed to a fixed window as the fixed window input for the next round of dynamic sliding time window. The end state of the safe feasible solution at the junction of the integer window and the relaxation window is recorded as the hot start boundary for the next round of solving.

[0011] Optionally, after covering the entire scheduling time domain and obtaining a globally safe and feasible solution, using the globally safe and feasible solution as an anchor point, an optimization window is selected in the entire scheduling time domain. The unit start-up and shutdown states and active power output outside the optimization window are fixed as anchor point solution values, and all decision variables within the optimization window are released. A precise solver with a dynamic cutting plane separation mechanism is then called for local optimization. Specifically, this includes: after covering the entire scheduling time domain and obtaining a globally safe and feasible solution, storing the globally safe and feasible solution as an anchor point solution and generating a solution containing unit start-up and shutdown state trajectories and active power output... Solver hot-start information including force trajectory, activity constraint set snapshot, cutting plane history index, and safety margin index; optimization window selection based on load fluctuation intensity index, new energy fluctuation intensity index, reserve gap index, power flow urgency index, and front wheel cutting plane trigger frequency, fixing the unit start-up and shutdown status and active power output outside the optimization window as anchor point solution values, releasing all decision variables within the optimization window and loading the solver hot-start information for the corresponding time period, and calling an accurate solver with a dynamic cutting plane separation mechanism to perform local optimization within the optimization window.

[0012] Optionally, the step of repeatedly sliding the optimization window along the time axis to improve the scheduling cost and safety margin of the current solution and outputting the optimized full-time-domain unit combination scheduling scheme specifically includes: when the local optimization solution is better than the anchor solution value in terms of objective function value and safety margin index, the unit start-up and shutdown status and active power output in the optimization window are written back to the anchor solution and the cutting plane historical index and active constraint set snapshot are updated until all candidate optimization windows are optimized or the time budget is reached, and the updated anchor solution is output as the optimized full-time-domain unit combination scheduling scheme.

[0013] A second aspect of this application provides a temporal decomposition relaxation cutting device for a safety-constrained unit combination problem. The device includes an acquisition module and a processing module. The acquisition module acquires a dynamic sliding time window comprising a fixed window, an integer window, a relaxation window, and an ignore window. Within the fixed window, the unit start-up / shutdown state remains unchanged; the integer window retains binary integer properties; the relaxation window cancels the binary integer properties while maintaining continuous values ​​and retaining the same constraints; and the ignore window does not participate in the solution. The processing module establishes a sub-problem model based on the integer window and the relaxation window. After solving the model, it solidifies the step-size corresponding results within the integer window to the fixed window and uses the dynamic sliding time window to cover the entire scheduling time domain. The processing module further performs a full-scenario safety check and generates a branch-pruning function when an integer feasible solution for the unit start-up / shutdown state and active power output is obtained during each round of sub-problem solving, without initially introducing N-1 safety constraints. The processing module is further configured to: if the detection result indicates a violation of safety constraints, dynamically add the seriously violated safety constraints to the current node's active constraint set in the form of a cutting plane and continue solving; if the detection result indicates no violation of safety constraints, use the integer feasible solution as a safe feasible solution, which is used to update the current optimal solution and serve as the fixed window input for the next round of rolling solution; after covering the entire scheduling time domain and obtaining a global safe feasible solution, select an optimization window in the entire scheduling time domain using the global safe feasible solution as an anchor point, fix the unit start-up and shutdown status and active power output outside the optimization window as the anchor point solution value, release all decision variables within the optimization window, and call an exact solver with a dynamic cutting plane separation mechanism for local optimization; the processing module is further configured to slide the optimization window along the time axis and repeat the process to improve the scheduling cost and safety margin of the current solution, and output the optimized full scheduling time domain unit combination scheduling scheme.

[0014] A third aspect of this application provides an electronic device including a processor, a memory, a user interface, and a network interface. The memory is used to store instructions, and both the user interface and the network interface are used to communicate with other devices. The processor is used to execute the instructions stored in the memory to cause the electronic device to perform the method described above.

[0015] A fourth aspect of this application provides a computer-readable storage medium storing instructions that, when executed, perform the method described above.

[0016] In summary, one or more technical solutions provided in this application have at least the following technical effects or advantages:

[0017] By employing a dynamic sliding time window system using fixed windows, integer windows, relaxed windows, and ignored windows, the number of variables and constraints in each round of solution is significantly reduced, fundamentally alleviating the computational burden of global MILP solution. During the solution process, not all N-1 safety constraints are initially loaded; instead, checks are triggered and dynamically injected as needed, avoiding performance drag caused by redundant safety constraints while ensuring safety feasibility. An optimization window local reinforcement step is introduced, anchored to a globally safe and feasible solution, gradually improving scheduling costs and safety margins when time permits. From global solution to local reinforcement and then to the next cycle of rolling, a stable input-output connection is formed, suitable for periodic operation by the scheduling center. Therefore, it facilitates improving the timeliness of the server in solving SCUC problems. Attached Figure Description

[0018] Figure 1 A flowchart illustrating a time-series decomposition relaxation cutting method for a safety-constrained unit combination problem provided in an embodiment of this application;

[0019] Figure 2 A schematic diagram of a timing decomposition relaxation cutting device for a safety-constrained unit combination problem is provided in an embodiment of this application.

[0020] Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.

[0021] Explanation of reference numerals in the attached figures: 21. Acquisition module; 22. Processing module; 31. Processor; 32. Communication bus; 33. User interface; 34. Network interface; 35. Memory. Detailed Implementation

[0022] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0023] In the description of the embodiments of this application, the words "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design that is described as "for example" or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design options. Rather, the use of the words "for example" or "for instance" is intended to present the relevant concepts in a specific manner.

[0024] In the description of the embodiments of this application, the term "multiple" means two or more. For example, multiple systems means two or more systems, and multiple screen terminals means two or more screen terminals. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.

[0025] To address the aforementioned technical problems, this application provides a time-series decomposition relaxation cutting method for safety-constrained unit combination problems, referring to... Figure 1 , Figure 1 This is a flowchart illustrating a time-series decomposition relaxation slicing method for a security-constrained unit combination problem, provided in an embodiment of this application. The method is applied to a server and includes steps S110 to S160, as follows:

[0026] S110. Obtain a dynamic sliding time window that includes a fixed window, an integer window, a relaxed window, and an ignored window. In the fixed window, the start-up and shutdown status of the unit remains unchanged. The integer window retains the binary integer property. The relaxed window cancels the binary integer property and maintains continuous values ​​while retaining the same constraints. The ignored window does not participate in the solution.

[0027] Specifically, the server refers to the computing node responsible for optimization calculations and data orchestration. This is a high-performance computing server or cloud computing node within the scheduling center, responsible for reading predicted load data, predicted renewable energy output data, unit start-up and shutdown plans, and maintenance plans, and calling the optimization solver to complete model building and result output. Acquisition refers to the process within a single optimization cycle where the server indexes the scheduling time domain according to time granularity and rolling step size, reads the aforementioned operational data, and generates a dynamic sliding time window according to preset partitioning rules. The dynamic sliding time window refers to a set of sub-intervals arranged sequentially in time that cover the current optimization cycle. It includes four types of sub-intervals: fixed window, integer window, relaxed window, and ignored window. After each rolling, the entire window moves forward along the time axis by the rolling step size to form the next round of optimization. Solution domain; Fixed window refers to the sub-interval in the dynamic sliding time window used to receive historically determined decisions. Within the fixed window, the unit start-up and shutdown status is fixed by the previous round of rolling or baseline solution. When modeling, the server directly writes the unit start-up and shutdown status and active power output within the fixed window as locking conditions into the model, and does not allow changes in the current round of optimization; Integer window refers to the sub-interval in the dynamic sliding time window that handles recent executable decisions. Within the integer window, the unit start-up and shutdown status has binary integer characteristics, allowing only values ​​of 0 or 1 to represent shutdown and start-up, respectively; Relaxed window refers to the sub-interval in the dynamic sliding time window used for look-ahead coupling. Within the relaxed window, the unit start-up and shutdown status cancels the binary integer characteristics, allowing continuous values ​​between 0 and 1 to approximate the undetermined start-up and shutdown trend, thereby maintaining cross-time coupling and feasible domain shape.

[0028] The "ignore window" refers to the sub-interval at the end of a dynamic sliding time window that is temporarily excluded from the current modeling. The server does not establish variables and constraints for the ignore window in this round of optimization to control the model size. The "unit start-up / shutdown state" refers to a binary characterization of the grid-connected operation state of each unit in each time period, where a value of 1 indicates the unit is running and a value of 0 indicates it is shut down. Within the relaxation window, this decision value is allowed to take continuous values ​​between 0 and 1 to express forward trends. "Remain unchanged" means that within a fixed window, the unit start-up / shutdown state and active power output do not change with the current solution update and are directly used as boundary conditions input to the model. The "binary integer property" refers to the requirement that the unit start-up / shutdown state must be a discrete value of 0 or 1 to ensure executability. "Physical constraints" refers to the necessary restrictions on unit operation and system safety, including output constraints. The upper and lower bounds, minimum start-up and shutdown duration, ramping upper and lower limits, system power balance and grid power flow safety margin and reserve satisfaction, integer windows and relaxation windows follow the same physical constraints except for the unit start-up and shutdown state value types; continuous values ​​mean that the unit start-up and shutdown states can be arbitrarily selected in the continuous interval from 0 to 1 within the relaxation window, so as to express the start-up and shutdown decisions that have not yet been finalized and to provide forward-looking information for cross-time ramping, reserve coupling and power flow sensitivity; the same constraints mean that the relaxation window uses the same physical constraints as the integer window, so as to ensure that the feasible region will not change abruptly when the relaxation window is converted into an integer window in the subsequent rolling; not participating in the solution means that the window is ignored and neither variables nor constraints are established in the current optimization cycle. When it enters the next round of rolling, it will be classified and modeled according to the rules, so as to avoid unnecessary scale expansion and shorten the solution time.

[0029] For example, suppose the scheduling time domain is 24 hours, the time granularity is 1 hour, and the rolling step size is 1 hour. At the initial moment, the server generates a dynamic sliding time window. The fixed window is from hour 0 to hour 1, the integer window is from hour 1 to hour 4, the relaxed window is from hour 4 to hour 8, and the ignored window is from hour 8 to hour 24. Within the fixed window, the start / stop status of a certain unit is locked at 1, indicating that it is continuously running and its active power output is not changed by the current solution. Within the integer window, the start / stop status of all units must be 0 or 1, and simultaneously satisfy the upper and lower bounds of output, the minimum start / stop time, and the creepage... Constraints such as slope upper and lower limits, system power balance, power flow safety, reserve requirements, and cost function are considered. Within the relaxation window, the start-up and shutdown status of all units are allowed to take continuous values ​​such as 0.3 or 0.7 to express possible start-up and shutdown trends, but they still need to meet the same constraints on output, balance, power flow, reserve, and cost. Within the neglect window, no variables or constraints are established in this round. After the solution is completed, the server solidifies the start-up and shutdown status and active power output of the units in the first hour of the integer window into the fixed window. Then, the dynamic sliding time window is moved forward by 1 hour and enters the next round of solution. This cycle continues until the 24-hour scheduling time domain is covered.

[0030] In one possible implementation, a dynamic sliding time window comprising a fixed window, an integer window, a relaxed window, and an ignored window is obtained. Specifically, this includes: establishing a prediction time domain within the scheduling time domain based on historical load data, predicted load data, predicted renewable energy output data, unit start-up and shutdown plans, and maintenance plans, and setting initial values ​​for time granularity, rolling step size, fixed window length, integer window length, relaxed window length, and ignored window length; within the prediction time domain, fusing historical feasible solutions with current start-up and shutdown plans and day-ahead optimization results to generate a baseline solution, determining the fixed window boundary based on the stability and safety margin of the baseline solution at the current moment, and fixing the corresponding unit start-up and shutdown status and active power output to the fixed window; for future periods after the fixed window, classifying them using a window classifier based on load fluctuation intensity indicators, renewable energy fluctuation intensity indicators, reserve gap indicators, safety margin indicators, and computational resource occupancy indicators, dividing periods that satisfy the binary integer characteristics and bear feasibility guarantees into integer windows; dividing periods where start-up and shutdown status allows continuous values ​​into relaxed windows; and dividing periods outside the current solution domain into ignored windows.

[0031] Specifically, a baseline solution is generated by fusing historical feasible solutions, current unit start-up and shutdown plans, and day-ahead optimization results in the prediction time domain, and a fixed window boundary is determined based on this. Specifically, the unit start-up and shutdown status x of the baseline solution is used as the boundary. gt With merit and effort p gt To calculate the safety margin index, the largest continuous time period closest to the current moment with a safety margin not lower than the threshold is selected as a fixed window. The unit start-up / shutdown status and active power output within this segment are then fixed as lockout conditions and written into the model. The safety margin index is defined as follows:

[0032]

[0033] The calculated value of the power flow is:

[0034]

[0035] in, The safety margin index at time t; Let be the power flow value of line l at time t under accident c; The thermal limit of line l under accident c; p is the power transfer distribution factor from bus b to line l under accident c. gt The active power output of unit g at time t; The parameterized value of the demand for bus b at time t; Let be the load violation of bus b at time t.

[0036] For the future period following a fixed window, the window classifier first calculates the load fluctuation intensity index:

[0037]

[0038] The mean is:

[0039]

[0040] Total demand is:

[0041]

[0042] in, h is the load fluctuation intensity index at time t; L To calculate the window length; ε is a very small positive number to avoid zero denominators; D bt Let be the load on bus b at time t.

[0043] The new energy volatility intensity index is defined as follows:

[0044]

[0045] The mean is:

[0046]

[0047] in, h is the intensity index of new energy fluctuations at time t; R R represents the length of the new energy calculation window. t To predict the output of new energy sources for the system.

[0048] The reserve gap indicator is defined as:

[0049]

[0050] Available reserve quantity is:

[0051]

[0052] in, The reserve gap indicator at time t; The required reserve amount at time t; The available reserve amount at time t; x is the maximum output of unit g; gt Let g be the start / stop state of unit g at time t.

[0053] The computational resource consumption index is:

[0054]

[0055] in, Let be the computational resource usage index at time t; |G|, |B|, |L|, and |C∪{0}| represent the number of generator units, buses, lines, and scenarios, respectively; s I s R N represents the integer window and relaxation window lengths; cap To solve for the resource capacity baseline constant.

[0056] The comprehensive scoring function is used for window division:

[0057]

[0058] Among them, S t Let be the comprehensive score at time t; α, β, γ, η, and κ are weighting coefficients, and satisfy α+β+γ+η+κ=1; This is a safety margin indicator. According to S... t Sort, select s I Use consecutive time periods as an integer window, then select s R One consecutive time period is used as the relaxation window, and the remaining time periods are used as the ignore window.

[0059] In summary, the server constructs a prediction time domain within the scheduling time domain, and takes historical load data, predicted load data, predicted renewable energy output data, unit start-up and shutdown plans, and maintenance plans as inputs. Combining the settings of time granularity and rolling step size, it initializes the length parameters of fixed windows, integer windows, relaxed windows, and ignored windows, generating time indices and solution boundary conditions for subsequent partitioning. Subsequently, the server integrates historical feasible solutions, current unit start-up and shutdown plans, and day-ahead optimization results to form a baseline solution. Using the baseline solution, it calculates the safety margin index for each time period and selects the largest continuous time period closest to the current moment with a safety margin not lower than a preset threshold as the fixed window. The unit start-up and shutdown status and active power output within this window are directly fixed, ensuring they cannot be changed in the current solution.

[0060] Next, for future time periods after the fixed window, the server calls the window classifier to calculate the load fluctuation intensity index, renewable energy fluctuation intensity index, reserve gap index, safety margin index, and computing resource utilization index for each time period. Each index is calculated from scheduling data and the baseline solution state, and a comprehensive score value for each time period is obtained through a weighted comprehensive scoring function. The window classifier marks future time periods sequentially from high to low based on the comprehensive score value. The consecutive time periods with the highest scores are allocated as integer windows, where the unit start-up and shutdown states must satisfy the binary integer property. A certain length of time period is then allocated as a relaxation window, where the unit start-up and shutdown states are allowed to continuously take values ​​between zero and one, used to carry forward-looking information. Time periods exceeding the relaxation window range are allocated as ignore windows, and no corresponding variables or constraints are established in this round of solution.

[0061] Through the above processing logic, the dynamic sliding time window combines near-term integer decision-making with long-term look-ahead relaxation, which not only ensures the accuracy of executability but also reduces the size of a single model and provides structured input for the next step of sub-problem construction, dynamic cutting plane separation, and rolling solution.

[0062] S120. Establish a sub-problem model based on integer window and relaxed window. After solving, solidify the result corresponding to the step size in the integer window to a fixed window, and then use a dynamic sliding time window to cover the entire scheduling time domain.

[0063] Specifically, the subproblem model refers to the optimization model established by the server within a single rolling iteration for the current solution domain, which is composed of an integer window and a relaxation window. The subproblem model uses the unit start-up / shutdown status and active power output within the fixed window as boundary conditions, locking them as constants to control the scale by ignoring window-generated variables and constraints. Within the integer window, the unit start-up / shutdown status uses binary integer variables, while within the relaxation window, it uses continuous variables from zero to one. Constraints such as upper and lower bounds on output, minimum start-up / shutdown duration, ramp-up limits, system power balance, power flow safety, reserve sufficiency, and cost function consistency are simultaneously applied to both windows. This allows the same model to simultaneously characterize near-term executable integer decisions and continuous approximations of long-term transitive constraints. Solving involves the server calling a mixed-integer linear programming solver to execute algorithms such as branch-and-pinch and plane-cutting on the subproblem model until the optimality criterion is met or the termination condition is reached. The solution then outputs the unit start-up / shutdown status, active power output, and other derived variables within the current solution domain.

[0064] The step size refers to the number of discrete time units that the dynamic sliding time window moves forward along the time axis each time. It is used to control the rolling rhythm and the granularity of result solidification. For example, if the step size is one hour, the window will move forward by one hour each time it rolls, and only the integer window solution of one hour will be solidified. Solidification means that after the subproblem model is solved, the unit start-up and shutdown status and active power output of the corresponding time period from the start of the integer window to the end of the step size are written into the fixed window lock set, and this lock set is kept unchanged as a boundary condition in the next round of modeling.

[0065] For example, if the scheduling time domain is 24 hours and the time granularity is a one-hour time window, it is initially divided into a fixed window of 0 to 1 hour, an integer window of 1 to 4 hours, a relaxed window of 4 to 8 hours, and an ignored window of 8 to 24 hours. The server first builds sub-problem models on the integer window and the relaxed window and completes the solution. Then, the results of the one-hour integer window are fixed to the fixed window. The time window is then shifted forward by one hour to obtain a new fixed window of 0 to 2 hours, a new integer window of 2 to 5 hours, a new relaxed window of 5 to 9 hours, and a new ignored window of 9 to 24 hours. This process is repeated until all 24 hours are fixed. In this way, the entire scheduling time domain is covered and optimized with a relatively small model size and stable boundary conditions.

[0066] In one possible implementation, a sub-problem model is established based on an integer window and a relaxation window. After solving the problem, the results corresponding to the step size within the integer window are fixed to a fixed window. The model is then dynamically slidable through a time window until the entire scheduling time domain is covered. Specifically, this includes: after the time axis and granularity configuration are completed and the dynamic sliding time window is generated, a fixed window lock set is generated based on the unit start-up and shutdown status and active power output of the fixed window. The fixed window lock set is then used as the boundary condition input to the sub-problem model. The integer window and the relaxation window are concatenated to form the current solution domain. In the current solution domain, the start-up and shutdown trajectory and active power output of the previous solution or the benchmark solution are inherited as initial values ​​for each unit, forming the solver hot start information.

[0067] Specifically, after the time axis and granularity are configured and the dynamic sliding time window is generated, the server first calculates the three intervals based on the window length and establishes an index for subsequent assembly and solving.

[0068] w F =[1,s F ],w I =[s F +1,s F +s I ],w R =[s F +s I +1,s F +s I +s R ]

[0069] Where w F A fixed window range parameter is used to receive inputs of predetermined unit start-up / shutdown states and active power output constraints; w I This is an integer window range parameter used to carry out precise unit start-up and shutdown status decisions that must be executed in the near future; w R The relaxed window interval parameter is used to carry forward information and maintain cross-time coupling; s F For a fixed window length parameter, s I The integer window length parameter, s R This is the relaxation window length parameter. The above interval construction and index update correspond to the window scrolling steps.

[0070] The server generates a fixed window lock set based on the existing unit start / stop status and active power output within the fixed window, and directly writes it into the sub-problem model as a boundary condition to ensure consistency and executability across rounds.

[0071]

[0072] Where x gt Let p be the unit start-up / shutdown state decision quantity for unit g at time t.gt Let g be the active power output decision quantity of unit g at time t. and These represent the start / stop status of the generating units and the active power output constant inputs within the fixed window lock set, respectively, where G is the set of generating unit parameters. The fixed window only stores the already determined decisions and cannot be changed during the current scroll.

[0073] The server concatenates the integer window and the relaxation window to form the current solution domain, while distinguishing the value domain of the unit's start-up and shutdown states to achieve partial relaxation time series decomposition.

[0074]

[0075] Wherein, parameter z gt with w gt To distinguish between the binary values ​​of the integer window and the continuous values ​​of the relaxation window for the startup and shutdown variables of unit g at time t, the solution scale of a single round is reduced and the look-ahead coupling structure is preserved without changing the constraint family.

[0076] To improve solution efficiency and stability, the server inherits the start-stop trajectory and active power output of the previous solution or benchmark solution for each unit in the current solution domain. This serves as the solver's hot start information and is aligned with the window boundary state to initialize the branch-prune search order and variable priority.

[0077]

[0078] in and To solve the unit start-up and shutdown status and initial active power output parameters in the hot start information of the solver. and The corresponding component parameters in the subproblem solution or benchmark solution returned by the algorithm in the previous round are provided by the optimal known solution and the fixed window accumulation to shorten the convergence time and stabilize cross-window coupling.

[0079] After the subproblem model is solved, the server extracts the first segment decision of the integer window according to the rolling step size, and fixes it to a fixed window while advancing the dynamic sliding time window to enter the next round until the entire scheduling time domain is covered.

[0080] ξ F ←Append(ξ F ,ξ[1:Δt])

[0081] s F ←s F +Δt

[0082] Where ξ is the solution vector parameter of the current subproblem model, ξ FHere, Δt represents the accumulated solution fragment parameters of the fixed-window locking set, Δt is the rolling step size parameter assignment operation, and Append indicates that the first Δt time steps of the solution vector are appended to the fixed-window locking set to maintain historical consistency. Subsequently, the fixed window length is updated to s. F +Δt, and reconstruct a new w based on this. F with w I with w R Until the entire time domain is covered.

[0083] The above can be understood as follows: after initializing the time axis and time granularity, the server divides the current time domain into three intervals—fixed window, integer window, and relaxed window—based on the structure of the dynamic sliding time window, and records their index ranges on the time axis. The fixed window inherits the historically determined unit start-up and shutdown states and active power output. These values ​​directly generate the fixed window lock set and serve as unchangeable boundary condition inputs during subproblem modeling to ensure consistency of decisions across rolling timeframes. The integer window and relaxed window are concatenated into the current solution domain during modeling, and both types of windows are equipped with the same physical constraints, including upper and lower bounds of unit output, minimum start-up and shutdown durations, ramp constraints, power balance constraints, and power flow safety constraints. The difference lies in that the unit start-up and shutdown states in the integer window must be binary integer variables, while the unit start-up and shutdown states in the relaxed window are allowed to take values ​​in a continuous range from zero to one, in order to reduce scale while maintaining coupling across time periods.

[0084] When constructing the current solution domain, the server loads the start-up and shutdown trajectories and active power output obtained from the previous round of rolling solution, or the corresponding values ​​from the benchmark solution, for each unit as the solver's hot-start information. This reduces the search depth of branch pruning and improves convergence speed during the solution phase. After modeling is completed, the server calls the mixed-integer linear programming solver to optimize the current solution domain. After the solution converges or reaches the termination condition, the server extracts the time period results corresponding to the rolling step from the integer window, appends them to the fixed window lock set, and updates the time range of the fixed window. Finally, the server moves the entire dynamic sliding time window forward by one rolling step along the time axis, regenerates a new integer window and relaxation window, and repeats the above modeling, solving, fixing, and sliding process until the fixed window covers the entire scheduling time domain, thereby completing the optimization of the unit start-up and shutdown status and active power output across the entire time domain.

[0085] S130. In each round of problem solving, N-1 safety constraints are not introduced initially. During the branch pruning process, when the unit start-up and shutdown states and active power output integer feasible solutions are obtained, full-scenario safety checks are performed and check results are generated.

[0086] Specifically, each round of subproblem solving refers to the process of using the boundary conditions provided by the fixed window as input within one scroll of the dynamic sliding time window, concatenating the integer window and the relaxation window to form the current solution domain, establishing the subproblem model, and executing a complete modeling, solving, and result solidification process. The initial absence of N-1 safety constraints means that constraints for all single-component failure scenarios are not added to the model when establishing the subproblem model, to avoid expanding the model size at the beginning of the solution phase. Full-scenario safety checks are performed only when an integer feasible solution is found. N-1 safety constraints refer to the set of constraints set to ensure that the system still satisfies power flow safety, reserve requirements, and power balance under any single-component failure scenario. Typical components include transmission lines, transformers, generator sets, and tie lines. The constraint objective is to limit the power flow during an accident to the thermal limit and maintain system power balance. The branch-and-prune process refers to the tree search mechanism used by the mixed-integer linear programming solver. By splitting binary variables such as unit start-up and shutdown states to generate child nodes, inferior nodes are pruned in advance using lower and upper bound comparisons, cutting planes, and feasibility checks, thereby reducing the search size while ensuring global optimality.

[0087] The unit start-up / shutdown state refers to the binary decision quantity representing whether the unit is on or off within a discrete time period. Within an integer window, it must take the value one or zero; within a relaxed window, it is allowed to take continuous values ​​between zero and one to carry forward-looking information. Active power output refers to the continuous decision quantity of the unit's active power output in each time period, subject to physical constraints such as output upper and lower bounds, ramp-up capability, reserve requirements, power balance, and power flow security. An integer feasible solution refers to a solution that simultaneously satisfies all installed physical constraints and satisfies the binary integer values ​​for the unit start-up / shutdown state during the branch-prune process at the current node. Note that this solution has not yet undergone full-scenario safety testing and is therefore only feasible for the ground state or currently injected constraints. Full-scenario safety... The detection process takes the unit start-up and shutdown status and active power output of the integer feasible solution as input, and performs power flow, reserve, and power balance checks one by one for the base state scenario and all single component failure scenarios. It identifies whether there are over-limit lines, reserve gaps, and power imbalances, and gives the location, magnitude, and time period of the most serious violation. The detection result refers to the structured output of the full-scenario safety detection, which includes the conclusion of whether there is a violation of safety constraints. If there is, it gives a list of serious violations, component identification, time period location, violation magnitude, and urgency ranking. If there is no violation, it gives a confirmation record of safe passage and key safety margin indicators. The detection result is used to drive subsequent cutting plane injection or result solidification and window scrolling.

[0088] In one possible implementation, during each round of problem solving, no N-1 safety constraints are initially introduced. During the branch-pruning process, when an integer feasible solution containing the unit start-up / shutdown state and active power output is obtained, a full-scenario safety check is performed and a check result is generated. Specifically, this includes: during each round of problem solving, no N-1 safety constraints are initially introduced. During the branch-pruning process, when an integer feasible solution containing an integer window binary structure is obtained, the unit start-up / shutdown state and active power output of the integer feasible solution are extracted to generate an integer feasible solution snapshot. The integer feasible solution snapshot is input into the scenario manager to generate a full-scenario safety check queue, and a rapid feasibility screening and fine-grained verification are sequentially performed through a parallel check scheduler to obtain the check result.

[0089] Specifically, at the beginning of each round of subproblem solving, the server assembles a subproblem without N-1 safety constraints. The branch-cut callback is bound to the subproblem, so that the safety check process can be triggered when the branch-cut finds an integer feasible solution at any node. This approach corresponds to the dynamic implementation mechanism of "not pre-setting any N-1 safety constraints, checking in real time with callbacks inside the branch-cut and adding them as needed", thereby avoiding the scale expansion and inefficiency of repeatedly rebuilding the model caused by loading a large number of safety constraints in the initial model stage.

[0090] When the branch-cut method yields an integer feasible solution with an integer window binary structure at a certain node, the server immediately generates an integer feasible solution snapshot. The unit start-up / shutdown status and active power output from that moment to the end of the window are extracted from the solver state and frozen as the sole input benchmark for subsequent full-scenario verification, ensuring consistency between the verification and the solution constructed during the cutting plane process. For ease of description, the snapshot at time t can be represented as:

[0091] Ξt={x gt ,p gt} g∈G

[0092] Among them, Ξ t Let x be the set of integer feasible solution snapshots at time t. gt For unit g at time t, the start-up / shutdown state of unit g (a binary variable or a historical value that is a continuous variable in a relaxation window), p gt Let G be the active power output of unit g at time t (a continuous variable), and G be the set of units.

[0093] The server inputs snapshots of feasible integer solutions into the scenario manager, which then generates a full-scenario safety detection queue. This queue covers the ground-state scenario and all single-component failure scenarios, i.e., the scenario set {0}∪C. For the power flow and power balance verification required for detection, a linear power flow expression based on the power transfer distribution factor and thermal limit constraints are adopted, as follows:

[0094]

[0095] Where B is the busbar set, L is the transmission line set, and C is the fault set. Let be the power transfer distribution factor from bus b to line l under accident c. For the thermal limit of line l under accident c, G b For the set of units connected to bus b, For parameterized load, This represents the load violation amount. The above relationship forms the basis for the judgment criteria of the full-scenario verification.

[0096] The parallel detection scheduler performs power flow and power balance checks in parallel for each scenario based on a full-scenario safety detection queue, and generates scenario-by-scenario structured results using line overruns, power imbalances, and reserve gaps as trigger conditions. To quantitatively measure the degree of violation, the violation magnitude can be defined for any line l, incident c, and time t.

[0097]

[0098] in, For the extent of violation; For the power flow of line l at time t under accident c; The thermal limit of line l under accident c; G is the power transfer distribution factor; b For the set of units connected to bus b; p gt To contribute one's efforts; For parameterized load; For load violation amount; This indicates that the thermal limit has been exceeded. This parallel verification is consistent with the approach of checking when an integer solution is found at the B&B node, which can screen potential violation scenarios with high throughput without interrupting the tree search.

[0099] After each parallel thread completes its operation, the server aggregates the results from each scenario into a single detection result output: if all scenarios satisfy the constraints, a "safe pass" conclusion is reached; if violations exist, a violation set Γ is formed. vio It provides the corresponding line identifier, accident identifier, time period, location, and violation severity; subsequently, the algorithm uses a callback at the current node of the branch pruning step to set Γ. vio The active constraint set Γ is dynamically injected into the cutting plane and the search continues; if no violation is found, the integer feasible solution is marked as a safe feasible solution and the optimal known solution is updated, providing input for subsequent result solidification and time window rolling. This chain of "discovering integer solutions → parallel checking → adding violations to the cutting plane, updating the optimal solution if no violation is found" is the backbone of the dynamic cutting plane separation algorithm.

[0100] For example, suppose the current integer window covers hours 1 to 4, and the relaxation window covers hours 4 to 8. Branch pruning at a certain node yields an integer feasible solution containing the unit start-up / shutdown status and active power output for hours 1 to 4. The server generates a snapshot of the integer feasible solutions for hours 1 to 4 and calculates the power flow values ​​of each line at each time point for each scenario of the set {0}∪C in parallel, comparing them with the corresponding thermal limits. If, in the accident scenario of "Line A out of service," an adjacent "Line B" is detected in hour 3... If the limit is exceeded, then it will be incorporated into Γ. vio Then, the corresponding linear safety constraints are added to the active constraint set of the current node in the form of a cutting plane through a callback, and the tree search continues. If all scenarios satisfy the constraints, the solution is marked as a safe and feasible solution. In the next step, the time period result corresponding to the rolling step size is fixed to a fixed window and the dynamic sliding time window is pushed forward. This process is repeated until the entire scheduling time domain is covered.

[0101] S140. If the detection result indicates that a violation of safety constraints has been detected, the seriously violated safety constraints will be dynamically added to the current node's active constraint set in the form of a cutting plane and the solution will continue. If the detection result indicates that no violation of safety constraints has been detected, the integer feasible solution will be used as the safe feasible solution. The safe feasible solution will be used to update the current optimal solution and will be used as the fixed window input for the next round of rolling solution.

[0102] Specifically, a violation of a safety constraint refers to a power flow exceeding limits, a reserve gap, or a power imbalance induced by the integer feasible solution in both the ground state scenario and any single component failure scenario. A severely violated safety constraint refers to the subset of constraints that ranks highest among all violations based on the minimum violation magnitude or safety margin and has the greatest impact on system safety. The cutting plane form refers to rewriting the aforementioned severely violated safety constraints as linear inequalities into cutting inequalities that the solver can directly accept to cut off the current integer feasible solution and its adjacent infeasible regions. Dynamic addition refers to injecting the cutting plane in real time through solver callbacks without rebuilding the model or resetting the search tree. The current node refers to the node in the branch-prune search tree that generates the integer feasible solution. The active constraint set refers to the set of constraints actually executed by the solver at the current node, including basic physical constraints and previously injected cutting planes. Continuing to solve refers to retaining the current search context after the cutting plane injection and continuing branch-prune exploration to find new integer candidate solutions.

[0103] A safe and feasible solution refers to a solution that has passed the safety test across all scenarios based on integer feasibility. Updating the current optimal solution means comparing the safe and feasible solution with the existing optimal known solution in terms of objective function and safety margin, and replacing the optimal known solution and its metadata when it is better. The next round of rolling solution means that after completing the solution and solidification of the current round of subproblems, the dynamic sliding time window is moved forward by one rolling step along the time axis and a new solution domain is reconstructed to continue the solution. Fixed window input means that the unit start-up and shutdown status and active power output of the safe and feasible solution from the start point of the integer window to the end point of the rolling step are written into the fixed window locking set as the boundary conditions for modeling the next round of subproblems.

[0104] In one possible implementation, if the detection result indicates a violation of safety constraints, the severely violated safety constraints are dynamically added to the current node's active constraint set in the form of a cutting plane, and the solution continues. If the detection result indicates no violation of safety constraints, the integer feasible solution is used as the safe feasible solution. The safe feasible solution is used to update the current optimal solution and serve as the fixed window input for the next round of rolling solution. Specifically, during each round of subproblem solving, if the detection result indicates a violation of safety constraints, the cutting plane constructor generates a cutting plane description based on the list of severe violations and dynamically adds the cutting plane description to the active constraint set of the current node of the branch pruning to maintain the continuity of the search context and continue solving. If the detection result indicates no violation of safety constraints, the feasible solution manager marks the integer feasible solution as a safe feasible solution and updates the current optimal solution record. At the same time, the unit start-stop state and active power output of the safe feasible solution from the start of the integer window to the end of the rolling step are fixed to the fixed window as the fixed window input for the next round of dynamic sliding time window. The end state of the safe feasible solution at the junction of the integer window and the relaxation window is recorded as the hot start boundary for the next round of solution.

[0105] Specifically, in each round of problem solving, the server first receives the detection results returned by the full-scene safety detection and performs branching execution accordingly: if the detection results contain records that violate safety constraints, the process of constructing and injecting the cut plane is entered; otherwise, the process of solidifying and rolling the safe and feasible solution is entered. This closed loop of "finding an integer solution at the branch pruning node → parallel checking → injecting the cut plane if there is a violation, updating the optimal solution and rolling if there is no violation" is triggered and executed in place by the solver callback within the branch pruning node, without restarting the search tree. This avoids repeatedly rebuilding the model and retains the branch history and existing cut plane information, thereby improving overall efficiency.

[0106] When the detection result indicates that a violation of the security constraint is detected, the cut-plane constructor generates cut-plane description items based on the severe violation list, and dynamically adds the cut-plane to the active constraint set of the current node through a callback, while keeping the search context unchanged to continue branch and bound; this step uses the power transfer distribution factor and the line thermal limit as criteria to linearize the over-limit information into a linear inequality that can directly eliminate the current infeasible integer solution. Among them, for the item that measures the violation amplitude of any accident scenario and the line at a given moment generate a cut-plane and incorporate it into the active constraint set:

[0107]

[0108] The in-situ injection process and criteria of "checking when an integer solution is found, adding it to the active constraint set in the form of a cut-plane if there is a violation, and continuing to solve" correspond to the dynamic cut-plane separation and PTDF linear power flow modeling of this application.

[0109] When the detection result indicates that no violation of the security constraint is detected, the server marks the integer feasible solution as a safe and feasible solution, and compares its objective value with the current optimal known solution. If it is better, the current optimal known solution is updated; the objective function uses a unified cost model:

[0110]

[0111] Among them, J(ξ) is the total cost of the solution ξ; C P (·) is the production cost function; is the start-up cost coefficient; is the no-load cost coefficient; C curtail is the penalty coefficient for violating the load; x gt is the unit start-stop status; z gt is the start-up variable; p gt is the active power output; is the load violation amount. The update rule is:

[0112] If J(ξ) < J(BKS) or then BKS←ξ

[0113] The above objective model and the processing and variable definitions of "using the safe and feasible solution to update the optimal known solution" are consistent.

[0114] To drive the next roll, the server solidifies the unit start-stop status and active power output corresponding to the safe and feasible solution from the start point of the integer window to the end point of the roll step into a fixed window locked set, and advances the time window; the operations of solidification and advancement can be formalized as:

[0115] ξ F ←Append(ξ F ,ξ[1:Δt]),s F←s F +Δt

[0116] Where, ξ F ξ[1:Δt] represents the cumulative segment of the fixed window locking set; ξ[1:Δt] represents the decision slice of the safe and feasible solution in the previous Δt steps; Δt is the rolling step size; s F Set the window length to fixed. Then press the updated s. F Reset w F ,w I ,w R Then proceed to the next round of sub-problem solving until the entire scheduling time domain is covered.

[0117] To maintain consistency across rounds and accelerate convergence, the server simultaneously records the terminal state of the safe and feasible solution at the boundary between the integer window and the relaxation window as the solver's hot-start information boundary for the next round of solving. Typically, this boundary time t... b transfer:

[0118]

[0119] in, and This provides information for the solver's hot start in the next round. and This provides the unit start-up / shutdown status and active power output at the boundary moment for the safe and feasible solution in this round. This approach is consistent with the implementation of "using known solution fragments as fixed and warm starts, and then rolling the window to continue solving" in the algorithm flow, ensuring the continuity of temporal coupling between the integer window and the relaxation window.

[0120] Through the two complementary pathways mentioned above, on the one hand, when a violation of safety constraints is detected, the active constraint set is dynamically updated in the form of a cutting plane and the branch-prune search continues. On the other hand, when no violation of safety constraints is detected, the safe and feasible solution is used to update the current best known solution and solidify it into a fixed window. At the same time, solver hot start information is generated and the dynamic sliding time window is advanced. This process is repeated until the fixed window covers the entire scheduling time domain. Finally, a high-quality safe and feasible solution in the entire scheduling time domain is output, and a stable anchor point is provided for the optional relaxation-induced neighborhood search.

[0121] S150. After covering the entire scheduling time domain and obtaining a globally safe and feasible solution, take the globally safe and feasible solution as the anchor point, select an optimization window in the entire scheduling time domain, fix the unit start-up and shutdown status and active power output outside the optimization window as the anchor point solution value, release all decision variables within the optimization window, and call the accurate solver with dynamic cutting plane separation mechanism for local optimization.

[0122] Specifically, the globally safe and feasible solution refers to the set of grouped values ​​of unit start-up and shutdown states and active power output that simultaneously satisfy physical constraints and N-1 safety constraints throughout the entire scheduling time domain. This set does not generate power flow overruns, reserve gaps, or power imbalances under any single component failure scenario, and therefore can serve as a reliable baseline for subsequent optimization. The anchor solution refers to the selected benchmark solution used for comparison and fixation in subsequent optimization. Here, the anchor solution is the globally safe and feasible solution. Its role is to provide immutable anchor solution values ​​for unit start-up and shutdown states and active power output outside the optimization window, while providing the solver with hot start information, snapshots of active constraint sets, and historical indexes of cutting planes, thereby ensuring that local optimization maintains the continuity of temporal coupling while inheriting the global structure. The optimization window refers to a continuous period of time selected within the entire scheduling time domain. It is used to further optimize only all decision variables within the optimization window, while keeping the start-up and shutdown status of units outside the optimization window and the active power output strictly equal to the anchor point solution value. The selection of the optimization window is based on the scoring results of load fluctuation intensity index, new energy fluctuation intensity index, reserve gap index, power flow urgency index, and historical cutting plane trigger frequency, etc., to prioritize the coverage of the section with the greatest potential for improvement.

[0123] The process of fixing the start-up and shutdown status and active power output of units outside the optimization window as anchor solution values ​​means setting the start-up and shutdown status and active power output of each unit outside the optimization window at each time period as the corresponding values ​​in the anchor solution and injecting them into the model as constants, thereby strictly limiting the optimization freedom to within the optimization window. Releasing all decision variables within the optimization window means treating all decision variables within the optimization window, such as unit start-up and shutdown status, active power output, start-up variables, shutdown variables, and reserve allocation, as optimizable variables, while continuing to apply physical constraints and N-1 safety constraints in a dynamic management process, allowing the model sufficient room for improvement within this local interval. The dynamic cutting plane separation mechanism refers to not preloading all N-1 safety constraints during the accurate solution process, but instead triggering a full-scenario safety check immediately when integer candidate solutions are generated by branch pruning. For detected serious violations, a linear cutting plane is generated and dynamically added to the active constraint set of the current node without rebuilding the model or resetting the search tree, thereby cutting off the currently infeasible region and maintaining the continuity of the search context.

[0124] An exact solver refers to a hybrid integer linear programming solver that supports branch pruning, cut planes, and callback interfaces. It can perform rigorous integer optimization and output improved solutions that satisfy safety constraints while releasing variables locally, combined with a dynamic cut plane separation mechanism. Local optimization refers to a re-optimization process with the anchor solution as the boundary and the optimization window as the solution domain. Its goal is to improve the objective function and increase the safety margin while keeping the unit start-up / shutdown status and active power output outside the optimization window unchanged. If improvement is achieved, the results within the optimization window are written back to the anchor solution to form a new globally safe and feasible solution.

[0125] In one possible implementation, after covering the entire scheduling time domain and obtaining a globally secure and feasible solution, an optimization window is selected within the entire scheduling time domain, using the globally secure and feasible solution as the anchor point. The unit start-up and shutdown status and active power output outside the optimization window are fixed as anchor point solution values, and all decision variables within the optimization window are released. A precise solver with a dynamic cutting plane separation mechanism is then invoked for local optimization. Specifically, this includes: after covering the entire scheduling time domain and obtaining a globally secure and feasible solution, storing the globally secure and feasible solution as the anchor point solution and generating solver hot-start information containing unit start-up and shutdown status trajectories, active power output trajectories, snapshots of active constraint sets, historical indexes of cutting planes, and indexes of safety margin indicators; selecting an optimization window based on load fluctuation intensity indicators, renewable energy fluctuation intensity indicators, reserve gap indicators, power flow urgency indicators, and the trigger frequency of the previous cutting plane, fixing the unit start-up and shutdown status and active power output outside the optimization window as anchor point solution values, releasing all decision variables within the optimization window and loading the solver hot-start information for the corresponding time period, and invoking a precise solver with a dynamic cutting plane separation mechanism to perform local optimization within the optimization window.

[0126] Specifically, after covering the entire scheduling time domain and obtaining a globally safe and feasible solution, the server first persists this globally safe and feasible solution as an anchor solution and simultaneously generates solver hot start information. This hot start information includes the unit start-up and shutdown status trajectory, active power output trajectory, snapshot of the active constraint set, historical index of the cutting plane, and index of the safety margin index. This ensures that the existing search context and safety boundaries are maintained during subsequent local optimizations, reducing re-convergence time and ensuring stable initial values ​​and reusable constraint structures when starting within any subsequent optimization window. In the entire scheduling time domain, the server scores and sorts each time period based on load fluctuation intensity, renewable energy fluctuation intensity, reserve gap, power flow urgency, and the previous cutting plane trigger frequency. It then selects the continuous interval with the largest potential improvement space as the optimization window from high to low, and records the boundary states at the start and end times of the optimization window to ensure continuous coupling with the anchor solution at the time interface. This selection logic is consistent with the time window concept of "partially relaxed temporal decomposition," emphasizing the concentrated improvement of target values ​​and safety margins through local solutions within continuous intervals without disrupting the overall structure.

[0127] The server fixes the unit start-up / shutdown status and active power output outside the optimization window hourly as anchor point solutions and writes them as constant boundary conditions in the sub-problem model, thus completely restricting the optimization degrees of freedom within the optimization window. Simultaneously, it maintains a consistent description of global physical constraints and N-1 safety constraints, only disabling the corresponding decision variables outside the optimization window instead of deleting the constraint structure, thereby ensuring structural consistency and cross-window physical interpretability. Within the optimization window, the server releases all decision variables, including unit start-up / shutdown status, active power output, and their coupled start-up and shutdown variables, and uses a unified constraint family to assemble the sub-problem model. This sub-problem maintains the same semantics as the previously used partially relaxed sub-model for rolling solutions, except that all variables within the window are open, while all variables outside the window are fixed, thus achieving "local re-optimization with anchor point solutions as boundaries" within the same SCUC modeling framework.

[0128] S160. The optimization window is repeatedly executed along the time axis to improve the scheduling cost and safety margin of the current solution, and the optimized full-time-domain unit combination scheduling scheme is output.

[0129] Specifically, sliding along the time axis refers to synchronously moving the start and end times of the optimization window forward with a preset rolling step size on the discrete time axis of the entire scheduling time domain, thereby covering different continuous time periods segment by segment without changing the anchor solution value outside the optimization window. Repeated execution refers to performing multiple rounds of the process of "selecting an optimization window—fixing the area outside the optimization window—releasing the area inside the optimization window—calling an accurate solver with a dynamic cutting plane separation mechanism—writing back the anchor solution if improvement is achieved," until the candidate window set is traversed or the time budget is reached; improving the current solution means achieving a lower cost in the objective function or a greater safety margin in the safety index for the current anchor solution without compromising global feasibility; scheduling cost refers to the comprehensive operating cost composed of production cost, start-up cost, no-load cost, and load violation penalty, used to measure the economics of unit combination schemes; safety margin is... This refers to the remaining margin for power flow exceeding limits, reserve gaps, and power imbalances under both the base state scenario and the single component failure scenario, used to measure the safety of the unit combination scheme; the output refers to the stable result set formed by the latest unit start-up and shutdown status, active power output, and related metadata after completing all planned optimization window sliding and iteration, and publishing it externally; the optimized full-dispatch time-domain unit combination scheduling scheme refers to the set of grouped decisions on unit start-up and shutdown status and active power output that, after multi-window iterative improvement within the full-dispatch time domain, simultaneously satisfies physical constraints and N-1 safety constraints, and is superior to the initial anchor solution in terms of scheduling cost and safety margin.

[0130] In one possible implementation, the optimization window is repeatedly executed along the time axis to improve the scheduling cost and safety margin of the current solution, and the optimized full-time-domain unit combination scheduling scheme is output. Specifically, when the local optimization solution is better than the anchor solution in terms of objective function value and safety margin index, the start-up and shutdown status and active power output of the units in the optimization window are written back to the anchor solution and the historical index of the cutting plane and the snapshot of the active constraint set are updated until all candidate optimization windows are optimized or the time budget is reached, and the updated anchor solution is output as the optimized full-time-domain unit combination scheduling scheme.

[0131] Specifically, during the local optimization phase in the full scheduling time domain, when the local optimization solution outperforms the anchor solution in terms of objective function value and safety margin, the solution update management module first synchronously writes back the unit start-up / shutdown status and active power output within the optimization window to the anchor solution, maintaining time consistency with other unoptimized parts in the full scheduling time domain. During the write-back process, the cutting plane history index is simultaneously updated to record newly triggered cutting plane constraints and their applicable ranges in this round of optimization, and the active constraint set snapshot is updated to retain the constraint boundary state of the current feasible domain, thereby ensuring that the current solution context can be inherited in subsequent optimization iterations. If certain constraints are activated or deactivated in this round of optimization, their changed states must also be written to the active constraint set snapshot so that the corresponding constraints can be quickly restored or removed in the next round of optimization. After completing the above updates, the next candidate optimization window is entered through a time axis sliding mechanism, and the accurate solver with a dynamic cutting plane separation mechanism is called to repeatedly execute local optimization until all candidate optimization windows have been solved or the time budget limit has been reached. Finally, the scheduling scheme output module extracts the latest anchor point into an optimized unit combination scheduling scheme covering the entire scheduling time domain. The scheme includes the unit start-up and shutdown status, active power output, safety margin index and cutting plane historical index for each time period, so as to provide a complete optimization result data chain for subsequent scheduling execution and analysis.

[0132] In one possible implementation, the constraint formulas mentioned above are explained in detail below: Power flow constraint formulas:

[0133]

[0134] Among them, P g (t) represents the active power output of generator unit g at time t, P d (t) represents the active power demand of load node d at time t, B l θ represents the nodal admittance of line l. l (t) represents the phase angle difference of line l at time t. This formula is used to ensure power flow balance in the power grid and is suitable for the constraint expression of DC power flow models.

[0135] Rotational spare constraint formula:

[0136]

[0137] Among them, R g (t) represents the spinning reserve capacity provided by unit g at time t, R req (t) represents the total spinning reserve capacity required at time t. This formula guarantees that the scheduling solution meets the system reserve capacity requirements and can cope with load fluctuations or fault disturbances.

[0138] Unit ramp-up constraint formula:

[0139] P g (t)-P g (t-1)≤RU g

[0140] P g (t-1)-P g (t)≤RD g

[0141] Among them, RU g RD represents the maximum rate of ascent of unit g. g P represents the maximum rate of ascent and descent of unit g. g (t) and P g (t-1) represent the active power output of the unit at two adjacent time points. This formula is used to limit the rate of change of the unit's output and avoid operational shocks.

[0142] Minimum start-up and minimum downtime constraints formulas:

[0143]

[0144] in, TU represents the continuous operating time of unit g since startup. g This represents the minimum start-up time for unit g. TD represents the continuous downtime of unit g since it was shut down. g U represents the minimum downtime of unit g. g (t) represents the unit's state variable (1 indicates startup, 0 indicates shutdown). This formula ensures that the unit's startup and shutdown operations comply with physical constraints.

[0145] This application also provides a time-series decomposition relaxation cutting device for safety-constrained unit combination problems, referring to... Figure 2 , Figure 2This is a schematic diagram of a time-series decomposition relaxation cutting device for a safety-constrained unit combination problem provided in an embodiment of this application. The device is a server, including an acquisition module 21 and a processing module 22. The acquisition module 21 acquires a dynamic sliding time window containing a fixed window, an integer window, a relaxation window, and an ignore window. Within the fixed window, the unit start-up / shutdown state remains unchanged; the integer window retains the binary integer property; the relaxation window cancels the binary integer property while maintaining continuous values ​​and the same constraints; the ignore window does not participate in the solution. The processing module 22 establishes a sub-problem model based on the integer window and the relaxation window. After solving the model, it solidifies the step-size corresponding results within the integer window to the fixed window and uses a dynamic sliding time window to cover the entire scheduling time domain. In each round of sub-problem solving, the processing module 22 initially does not introduce N-1 safety constraints. During the branch-cutting process, when an integer feasible solution for the unit start-up / shutdown state and active power output is obtained, it performs a full-scenario safety detection and generates a detection result. If the processing module 22 detects… If the test results indicate that a violation of safety constraints has been detected, the seriously violated safety constraints will be dynamically added to the current node's active constraint set in the form of a cutting plane and the solution will continue. If the test results indicate that no violation of safety constraints has been detected, the integer feasible solution will be used as the safe feasible solution. The safe feasible solution will be used to update the current optimal solution and will be used as the fixed window input for the next round of rolling solution. After covering the entire scheduling time domain and obtaining the global safe feasible solution, the processing module 22 will use the global safe feasible solution as the anchor point, select an optimization window in the entire scheduling time domain, fix the unit start-up and shutdown status and active power output outside the optimization window as the anchor point solution value, release all decision variables in the optimization window, and call the exact solver with a dynamic cutting plane separation mechanism for local optimization. The processing module 22 will slide the optimization window along the time axis and repeat the process to improve the scheduling cost and safety margin of the current solution, and output the optimized unit combination scheduling scheme in the entire scheduling time domain.

[0146] It should be noted that the above embodiments of the apparatus are only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0147] This application also provides an electronic device, with reference to... Figure 3 , Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include: at least one processor 31, at least one network interface 34, a user interface 33, a memory 35, and at least one communication bus 32.

[0148] The communication bus 32 is used to enable communication between these components.

[0149] The user interface 33 may include a display screen and a camera. Optionally, the user interface 33 may also include a standard wired interface and a wireless interface.

[0150] The network interface 34 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface).

[0151] The processor 31 may include one or more processing cores. The processor 31 connects to various parts of the server using various interfaces and lines, and performs various server functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in the memory 35, and by calling data stored in the memory 35. Optionally, the processor 31 may be implemented using at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). The processor 31 may integrate one or a combination of several of the following: Central Processing Unit (CPU), Graphics Processing Unit (GPU), and modem. The CPU primarily handles the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the content required for display; and the modem handles wireless communication. It is understood that the modem may also be implemented as a separate chip without being integrated into the processor 31.

[0152] The memory 35 may include random access memory (RAM) or read-only memory. Optionally, the memory 35 may include a non-transitory computer-readable storage medium. The memory 35 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 35 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the above-described method embodiments, etc.; the data storage area may store data involved in the above-described method embodiments, etc. Optionally, the memory 35 may also be at least one storage device located remotely from the aforementioned processor 31. Figure 3 As shown, the memory 35, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and an application program for a time-series decomposition relaxation cutting method for the safety-constrained unit combination problem.

[0153] exist Figure 3 In the electronic device shown, the user interface 33 is mainly used to provide an input interface for the user and to obtain the user input data; while the processor 31 can be used to call an application program stored in the memory 35 for a time-series decomposition relaxation cutting method for the safety constraint unit combination problem. When executed by one or more processors, the electronic device executes one or more methods as described in the above embodiments.

[0154] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0155] This application also provides a computer-readable storage medium storing instructions. When executed by one or more processors, these instructions cause an electronic device to perform one or more of the methods described in the above embodiments.

[0156] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0157] In the several embodiments provided in this application, it should be understood that the disclosed apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the shown or discussed mutual couplings or direct couplings or communication connections may be through some service interfaces; indirect couplings or communication connections between apparatuses or units may be electrical or other forms.

[0158] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0159] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0160] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as USB flash drives, portable hard drives, magnetic disks, or optical disks.

[0161] The foregoing description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Those skilled in the art will readily conceive of other embodiments of this disclosure upon considering the specification and the disclosure of practical truth. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure. The specification and embodiments are considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

Claims

1. A time-series decomposition relaxation and cutting method for safety-constrained unit combination problems, characterized in that, The method includes: Obtain a dynamic sliding time window that includes a fixed window, an integer window, a relaxed window, and an ignored window. The unit start-up and shutdown status remains unchanged within the fixed window. The integer window retains the binary integer property. The relaxed window cancels the binary integer property, maintains continuous values, and retains the same constraints. The ignored window does not participate in the solution. A sub-problem model is established based on the integer window and the relaxation window. After solving the model, the result corresponding to the step size in the integer window is fixed to a fixed window, and the dynamic sliding time window is used to cover the entire scheduling time domain. In each round of problem solving, N-1 safety constraints are not introduced initially. During the branch pruning process, when the unit start-up and shutdown states and active power output integer feasible solutions are obtained, a full-scenario safety check is performed and the check results are generated. If the detection result indicates that a violation of safety constraints has been detected, the seriously violated safety constraints will be dynamically added to the current node's active constraint set in the form of a cutting plane and the solution will continue. If the detection result indicates that no violation of safety constraints has been detected, the integer feasible solution will be used as the safe feasible solution. The safe feasible solution will be used to update the current optimal solution and will be used as the fixed window input for the next round of rolling solution. After covering the entire scheduling time domain and obtaining a globally safe and feasible solution, an optimization window is selected in the entire scheduling time domain using the globally safe and feasible solution as the anchor point. The start-up and shutdown status of the units outside the optimization window and the active power output are fixed as the anchor point solution values. All decision variables within the optimization window are released, and an accurate solver with a dynamic cutting plane separation mechanism is called for local optimization. The optimization window is slid along the time axis and executed repeatedly to improve the scheduling cost and safety margin of the current solution, and the optimized full-time-domain unit combination scheduling scheme is output.

2. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 1, characterized in that, The acquisition of the dynamic sliding time window, which includes a fixed window, an integer window, a relaxed window, and an ignored window, specifically includes: Within the scheduling time domain, a forecast time domain is established based on historical load data, forecast load data, forecast renewable energy output data, unit start-up and shutdown plans, and maintenance plans. Initial values ​​for time granularity, rolling step size, fixed window length, integer window length, relaxed window length, and ignored window length are set. In the prediction time domain, the historical feasible solution is fused with the current start-up and shutdown plan and the day-ahead optimization results to generate a benchmark solution. The fixed window boundary is determined based on the stability and safety margin of the benchmark solution at the current moment, and the corresponding unit start-up and shutdown status and active power output are fixed to the fixed window. For future periods after the fixed window, a window classifier is used to classify them based on load fluctuation intensity index, new energy fluctuation intensity index, reserve gap index, safety margin index and computing resource usage index. The periods that meet the characteristics of binary integers and bear the feasibility guarantee are divided into the integer windows. The time period during which the start / stop state allows continuous values ​​is divided into the relaxation window; The time period excluding the current solution domain is divided into the ignore window.

3. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 1, characterized in that, The process of establishing a sub-problem model based on the integer window and the relaxation window, solving it, and then fixing the result corresponding to the step size within the integer window to a fixed window, and using the dynamic sliding time window until the entire scheduling time domain is covered, specifically includes: After the time axis and granularity configuration are completed and the dynamic sliding time window is generated, a fixed window locking set is generated based on the unit start-up and shutdown status and active power output of the fixed window, and the fixed window locking set is used as a boundary condition input into the sub-problem model. The integer window and the relaxation window are concatenated to form the current solution domain. In the current solution domain, the start-up and shutdown trajectory and active power output of the previous solution or benchmark solution are inherited as initial values ​​for each unit to form the solver hot start information.

4. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 1, characterized in that, In each round of problem-solving, no N-1 safety constraints are initially introduced. During the branch-pruning process, when an integer feasible solution for the unit start-up / shutdown state and active power output is obtained, a full-scenario safety check is performed and the check results are generated. Specifically, this includes: In each round of solving the subproblem, no N-1 safety constraints are initially introduced. During the branch-cutting process, when an integer feasible solution containing an integer window binary structure is obtained, the unit start-up and shutdown status and active power output of the integer feasible solution are extracted to generate an integer feasible solution snapshot. The integer feasible solution snapshot is input into the scene manager to generate a full-scene security detection queue, and the rapid feasibility screening and fine verification are executed sequentially by the parallel detection scheduler to obtain the detection results.

5. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 1, characterized in that, If the detection result indicates a violation of safety constraints, the severely violated safety constraints are dynamically added to the current node's active constraint set in the form of a cutting plane, and the solution continues. If the detection result indicates no violation of safety constraints is detected, the integer feasible solution is used as the safe feasible solution. The safe feasible solution is used to update the current optimal solution and as the fixed window input for the next round of rolling solution, specifically including: In each round of solving the subproblem, if the detection result indicates that a violation of safety constraints has been detected, the cut plane constructor generates a cut plane description based on the list of serious violations, and dynamically adds the cut plane description to the active constraint set of the current node of the branch pruning, so as to maintain the continuity of the search context and continue the solution. If the detection result indicates that no violation of safety constraints was detected, the feasible solution manager marks the integer feasible solution as a safe feasible solution and updates the current optimal solution record. At the same time, the unit start-up and shutdown status and active power output of the safe feasible solution from the start of the integer window to the end of the rolling step are fixed to a fixed window as the fixed window input for the next round of dynamic sliding time window. The end state of the safe feasible solution at the junction of the integer window and the relaxation window is recorded as the hot start boundary for the next round of solution.

6. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 1, characterized in that, After covering the entire scheduling time domain and obtaining a globally safe and feasible solution, the process involves using the globally safe and feasible solution as an anchor point, selecting an optimization window within the entire scheduling time domain, fixing the unit start-up and shutdown states and active power output outside the optimization window as anchor point solution values, releasing all decision variables within the optimization window, and calling an accurate solver with a dynamic cutting plane separation mechanism for local optimization. Specifically, this includes: After covering the entire scheduling time domain and obtaining the global safe and feasible solution, the global safe and feasible solution is stored as an anchor solution and solver hot start information is generated, which includes unit start-up and shutdown state trajectory, active power output trajectory, snapshot of active constraint set, historical index of cutting plane and index of safety margin index. Based on load fluctuation intensity index, new energy fluctuation intensity index, reserve gap index, power flow urgency index, and front wheel cutting plane trigger frequency, an optimization window is selected. The unit start-up and shutdown status and active power output outside the optimization window are fixed as anchor point solution values. All decision variables within the optimization window are released and the solver hot start information for the corresponding time period is loaded. The accurate solver with dynamic cutting plane separation mechanism is called to perform local optimization within the optimization window.

7. The time-series decomposition relaxation cutting method for safety-constrained unit combination problems according to claim 6, characterized in that, The optimization window is repeatedly executed along the time axis to improve the scheduling cost and safety margin of the current solution, and the optimized full-time-domain unit combination scheduling scheme is output, specifically including: When the local optimization solution is better than the anchor solution in terms of objective function value and safety margin index, the start-up and shutdown status and active power output of the units in the optimization window are written back to the anchor solution and the historical index of the cutting plane and the snapshot of the active constraint set are updated until all candidate optimization windows are optimized or the time budget is reached. The updated anchor solution is then output as the optimized full-schedule time-domain unit combination scheduling scheme.

8. A time-series decomposition relaxation cutting device for a safety-constrained unit combination problem, characterized in that, The device includes an acquisition module (21) and a processing module (22), wherein, The acquisition module (21) is used to acquire a dynamic sliding time window including a fixed window, an integer window, a relaxed window and an ignored window. In the fixed window, the start-up and shutdown status of the unit remains unchanged. The integer window retains the binary integer property. The relaxed window cancels the binary integer property and maintains continuous value and retains the same constraints. The ignored window does not participate in the solution. The processing module (22) is used to establish a sub-problem model based on the integer window and the relaxation window, solve it, solidify the result corresponding to the step size in the integer window to a fixed window, and use the dynamic sliding time window to cover the entire scheduling time domain. The processing module (22) is also used to perform full-scenario safety detection and generate detection results when the unit start-up and shutdown status and active power output are obtained during the branch pruning process, without initially introducing N-1 safety constraints in each round of sub-problem solving process; The processing module (22) is further configured to, if the detection result indicates that a violation of safety constraints has been detected, dynamically add the seriously violated safety constraints to the current node's active constraint set in the form of a cutting plane and continue to solve the problem; if the detection result indicates that no violation of safety constraints has been detected, use the integer feasible solution as a safe feasible solution, and use the safe feasible solution to update the current optimal solution and as the fixed window input for the next round of rolling solution. The processing module (22) is also used to select an optimization window in the full scheduling time domain after covering the full scheduling time domain and obtaining a global safe and feasible solution, using the global safe and feasible solution as the anchor point, fix the unit start-up and shutdown status and active power output outside the optimization window as the anchor point solution value, release all decision variables in the optimization window, and call an accurate solver with a dynamic cutting plane separation mechanism for local optimization. The processing module (22) is also used to slide the optimization window along the time axis and repeat the process to improve the scheduling cost and safety margin of the current solution, and output the optimized full-time-domain unit combination scheduling scheme.

9. An electronic device, characterized in that, The electronic device includes a processor (31), a memory (35), a user interface (33), and a network interface (34). The memory (35) is used to store instructions. The user interface (33) and the network interface (34) are both used to communicate with other devices. The processor (31) is used to execute the instructions stored in the memory (35) to cause the electronic device to perform the method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed, perform the method as described in any one of claims 1 to 7.

Citation Information

Cited By

  • Precision belt pulley mold life cycle management method and system

    CN121660604A