Power Grid Resource Allocation
By generating upper and lower bound differences for multiple convergent paths, using parallel asynchronous cooperative primal dual solvers and Lagrange relaxation techniques, the problem of low computational efficiency in large-scale security-constrained unit combination problems is solved, enabling faster grid resource allocation and scheduling.
Patent Information
- Application Number
- CN202180031323.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-04-27
- Filing Date
- 2021-04-27
- Publication Date
- 2025-12-02
- Estimated Expiration
- 2041-04-27
AI Technical Summary
Solving the unit combination problem with large-scale safety constraints requires a lot of time and computing resources, and existing technologies are difficult to solve efficiently.
The upper and lower bound differences of multiple convergence paths are generated by using a power grid resource management system. Resource allocation and scheduling are generated through a parallel asynchronous cooperative primal dual solver and Lagrange relaxation technique, which reduces computation time and improves efficiency.
It significantly reduces the computation time for solving the unit combination of security constraints, and improves the efficiency and accuracy of power grid resource allocation.
Smart Images

Figure CN115461953B_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to power grids and their operation, and in certain embodiments, to the allocation of power grid resources. Background Technology
[0002] Independent System Operators (ISOs) use unit combination (UC) to determine the combination and dispatch of generation resources and demand (which may be price-sensitive) within the grid. Unit combination determines the combination state and generation level of all generators within the dispatch scope to minimize the total generation cost while satisfying all system-wide constraints, such as system load balancing and spinning reserve requirements, as well as individual unit operating constraints. Unit combination is often represented as a mixed-integer linear programming (MILP) problem.
[0003] As typical power grids operate closer to their safety margins, safety-related transmission constraints are incorporated to constrain generator configuration. Therefore, typical power system resource dispatch involves safety-constrained generator configuration (SCUC), where safety constraints can be, for example, transmission line thermal capacity constraints for both basic and contingent operating conditions. SCUC is used for day-ahead, intraday, and real-time grid dispatch. Solving for safety-constrained generator configuration involves determining the minimum-cost operational dispatch of generators (also known as power plants) within the dispatch scope. This includes, for example, establishing minimum-cost operational dispatch that satisfies the operational constraints of each generator unit, grid constraints in the basic-case network topology, and various operator-specified emergency scenarios. Summary of the Invention
[0004] In some embodiments, a method of operating a power grid includes: generating a power grid resource allocation profile by a power management system of the power grid, indicating operation of the power grid constrained by operation information of the power grid; generating a difference between upper limits of a plurality of obtained convergence paths and lower limits of obtained convergence paths, the obtained convergence paths being based on a plurality of different initial conditions of the generated power grid resource allocation profile, and / or a plurality of different solvers, and / or a plurality of solvers with different solver configurations; and generating a resource allocation schedule for operating power grid resources within the power grid if the generated difference is less than a predetermined threshold, the resource allocation schedule corresponding to the convergence path associated with the upper limit value, the resource allocation schedule being configured to be received at the power grid resources.
[0005] In some embodiments, a system is configured to: generate a grid resource allocation profile indicating grid operation constrained by grid operation information by a processor of a power management system of a grid; generate a difference between upper limits of a plurality of obtained convergence paths and lower limits of obtained convergence paths based on a plurality of different initial conditions of the generated grid resource allocation profile, and / or a plurality of different solvers, and / or a plurality of solvers with different solver configurations; and if the generated difference is less than a predetermined threshold, generate a resource allocation schedule for grid resources to operate within the grid, the resource allocation schedule corresponding to the convergence path associated with the upper limit value, the resource allocation schedule being configured to be received at the grid resources. Attached Figure Description
[0006] Details of one or more embodiments of this disclosure are set forth in the accompanying drawings and the following description. Other features, objects, and advantages of this disclosure will become apparent from the specification, the drawings, and the claims. In the drawings, the same reference numerals generally denote the same components in the various views, and for the sake of brevity, they are generally not described again. For a more complete understanding of this disclosure, reference is now made to the following description in conjunction with the accompanying drawings, in which:
[0007] Figure 1 Block diagrams of power grids with power management systems (PMS) in the control loop of the power grid are shown in some embodiments;
[0008] Figure 2 Flowcharts of methods for operating a power grid are shown in some embodiments;
[0009] Figure 3 These are functional block diagrams of the power management system (PMS) in some embodiments;
[0010] Figure 4 The upper and lower bounds of the safety constraint unit combination (SCUC) system in the embodiment are shown to convergence along the convergence path of the solution to the SCUC problem.
[0011] Figure 5 The embodiments illustrate multiple upper and lower bounds of the unit combination system with safety constraints obtained using multiple primal solvers and multiple dual solvers along multiple convergence paths.
[0012] Figure 6 A flowchart of a method for solving a unit combination system with safety constraints is shown in the embodiment.
[0013] Figure 7 A block diagram of a parallel asynchronous cooperative primal dual solver for solving security constraints in a unit combination system, as shown in the embodiment, is illustrated.
[0014] Figure 8 Some embodiments are shown. Figure 7 Interaction of parallel independent processes in a parallel asynchronous cooperative primal dual solver;
[0015] Figure 9A and Figure 9B Some embodiments are shown. Figure 7 The performance of the parallel asynchronous cooperative primal dual solver; and
[0016] Figure 10 These are examples of implementations for execution. Figure 7 A block diagram of the processing system for the parallel asynchronous cooperative primitive dual solver. Detailed Implementation
[0017] The following discusses in detail the manufacture and use of the present preferred embodiments. However, it should be understood that this disclosure provides many applicable inventive concepts that can be implemented in various specific scenarios. The specific embodiments discussed are merely illustrative of specific ways of manufacturing and using this disclosure and are not intended to limit the scope of this disclosure.
[0018] Solving large-scale security constraints for unit combinations can be time-consuming and computationally resource-intensive due to their large dimensionality and complexity. Embodiments of this disclosure describe a power management system capable of solving security constraints for unit combinations with improved efficiency and reduced computation time.
[0019] Figure 1 Block diagrams of a power grid 100 in some embodiments are shown. The power grid 100 (which may also be referred to as a power system) includes multiple power resources 101 (e.g., generators or energy storage systems). Power resources 101 can be of different types, such as thermal power plants (e.g., coal, natural gas, nuclear power plants), hydroelectric power plants, renewable resource power plants (e.g., wind farms, solar power plants), energy storage systems, and demand response procedures. Depending on the type of power plant, each of the power resources 101 may be subject to complex technical and commercial constraints, such as minimum rise / fall times, ramp-up / fall rates, modulation / stability (e.g., the unit may not change its production level too many times), and start / stop ramp rates (e.g., when starting / stopping, the unit follows a specific power curve that may depend on how long the power plant is offline / online).
[0020] The power grid 100 also includes a transmission network 103, which is a power grid that delivers electricity generated by power resources 101 (e.g., power plants) to users. The transmission network 103 is an interconnected network that can span a wide geographical area (e.g., a country). When solving for a unit combination system with security constraints, it may be necessary to consider the complex characteristics of the transmission network 103, such as network topology, equipment parameters, line flow limits, and resource response rates.
[0021] like Figure 1 As shown, the power grid 100 also includes a power management system (PMS) 105, which can be a market management system (MMS) or an emergency management system (EMS). The PMS 105 may include components for implementing various functions (such as...). Figure 2 The processing blocks (10 to 30) of the method described herein are various functional blocks. For example, PMS 105 may include a clearing engine that runs a market scheduling application to clear the market, determine market clearing prices for energy and ancillary services (such as various reserves and responses), and schedule combinations and assignments to achieve reliability.
[0022] In some embodiments, the clearing engine solves for a unit combination system with security constraints to provide resource allocation scheduling for grid 100. Resource allocation scheduling may include combinational decisions (e.g., whether a power plant is online and capable of generating energy at any given time), production (also known as dispatch) decisions (e.g., how much energy a power plant generates at any given time), and decisions regarding controllable network elements (e.g., power flows on AC transmission lines and HVDC transmission lines with phase angle regulators). Resource allocation scheduling may also be referred to as operational scheduling of grid 100.
[0023] In some embodiments, resource allocation scheduling is generated by solving a unit-combination system with safety constraints while considering operational information of the power grid 100 (e.g., various constraints), such as constraints on power resources 101 (e.g., generation capacity and operational margins including safe operating ranges), constraints on the transmission network 103, and market information (e.g., bidding information, cost information, predicted demand information, regulatory requirements such as emission targets). The objective of resource allocation scheduling is to clear market bids and offers while maximizing total welfare or minimizing total cost. In one example embodiment, the objective could be to meet energy demand that minimizes energy production costs while being constrained by reliability and emissions. In another example embodiment, the objective could be to maximize energy production profits, such as the difference between revenue (from the sale of electricity) and costs (from the production of electricity).
[0024] Figure 2 Flowcharts of methods for operating a power grid according to some embodiments are shown. It should be understood that... Figure 2The embodiments shown are merely examples of many possible embodiments. Those skilled in the art will recognize many variations, substitutions, and modifications. For example, additions, removals, substitutions, rearrangements, and repetitions may be made. Figure 2 The various processing boxes shown in the figure.
[0025] refer to Figure 2 At box 10, a power grid resource allocation profile is generated by the power grid's power management system (PMS) to indicate the operation of the power grid constrained by the power grid's operational information. The power management system may be, for example, a power grid market management system (MMS) or an emergency management system (EMS). In some embodiments, the operational information includes information constraining the operation of the power grid, and includes security-related transmission constraint information and cost information. In some embodiments, generating the power grid resource allocation profile includes expressing the power grid resource allocation profile as a security-constrained unit combination (SCUC) system (or problem) based on mixed integer programming (MIP). In the discussion herein, the term mixed integer programming (MIP) may be used interchangeably with mixed integer linear programming (MILP).
[0026] Still referencing Figure 2 At box 20, the difference between the upper bound values from multiple obtained convergence paths and the lower bound values from multiple obtained convergence paths is generated, wherein the obtained convergence paths are configured based on multiple different initial conditions of the generated power grid resource allocation profile. As discussed below, Figure 5 The upper and lower bounds of different convergence paths for multiple solutions to a unit combination system with safety constraints are shown.
[0027] In some embodiments, the multiple obtained convergence paths include a first convergence path obtained by solving the power grid resource allocation profile using multiple primal problem solver instances (also referred to as primal solver instances), wherein each of the multiple primal solver instances is an instance of a MIP solver that solves the SCUC MIP problem using, for example, a branch and bound (B&B) algorithm or a branch and cut (B&C) algorithm. In some embodiments, each of the primal solver instances generates upper and lower bound values for each (trial) solution along its convergence path. In some embodiments, each of the multiple primal problem solver instances is initialized with different solver configurations (e.g., solver parameters, strategies, and MIP initial solution pools) such that each of the multiple MIP solver instances converges along a different convergence path. For ease of discussion, solver instances (e.g., primal solver instances or dual solver instances) may be used interchangeably with solvers (e.g., primal solvers or dual solvers) herein.
[0028] In some embodiments, at a first time, each of the plurality of obtained convergence paths includes an upper bound; at a second time, each of the plurality of obtained convergence paths includes a lower bound; and at a third time, each of the plurality of obtained convergence paths includes an intermediate resource allocation schedule, wherein generating the resource allocation schedule includes selecting the intermediate resource allocation schedule of the convergence path associated with the value of the upper bound as the resource allocation schedule feasible for all constraints in the SCUC MIP problem. In some embodiments, generating the difference includes generating the difference between the minimum value of the upper bound and the maximum value of the lower bound.
[0029] In some embodiments, each of the plurality of original solvers (e.g., MIP solvers) is configured to generate a mixed integer solution to the power grid resource allocation profile at a first time step, wherein the mixed integer solution has a corresponding upper bound of the power grid resource allocation profile. In some embodiments, each of the plurality of original solvers is further configured to generate an integer relaxation solution to the power grid resource allocation profile at a second time step, wherein the integer relaxation solution has a corresponding lower bound of the power grid resource allocation profile.
[0030] In some embodiments, the plurality of obtained convergence paths includes a second convergence path obtained by solving a second grid resource allocation profile different from the original plurality of solvers (e.g., MIP solvers), wherein each of the second plurality of solvers is configured to generate a solution of the second grid resource allocation profile at a second time step, the solution having a corresponding lower bound of the grid resource allocation profile. In some embodiments, the second grid resource allocation profile is a Lagrange relaxation (LR) function of the grid resource allocation profile. For example, the LR function of the grid resource allocation profile may be a dual optimization problem (e.g., a relaxed SCUCMIP problem) using relaxation techniques such as Lagrange relaxation. The second plurality of solvers may therefore be referred to as dual problem solvers or dual solvers. In some embodiments, each of the dual problem solvers is configured to generate a solution of the second grid resource allocation profile (e.g., the LR function) at a second time step, the solution having a corresponding lower bound and a corresponding upper bound of the grid resource allocation profile. In some embodiments, the dual optimization problem comprises a set of smaller MIP problems arising from the relaxation of the SCUC problem, which can be solved in parallel to reduce computation time. Figure 6 A flowchart of a method for solving a unit combination system with safety constraints is shown in the embodiment. Figure 7 A block diagram of a parallel asynchronous cooperative primal dual solver 600 for solving a unit combination system for security constraints is shown in the embodiment.
[0031] In some embodiments, the first time point, the second time point, and the third time point are the same time point. In some embodiments, the first time point is different from the second time point, wherein if the first time point is after the second time point, then the third time point is the first time point, wherein if the first time point is before the second time point, then the third time point is between the first time point and the second time point, is the same as the first time point, or is the same as the second time point.
[0032] Still referencing Figure 2 At box 30, if the generated difference is less than a predetermined threshold, a resource allocation schedule for grid resources operating within the grid is generated. This resource allocation schedule corresponds to a convergence path associated with the upper limit value and is configured to be received at the grid resources. Grid resources may include power plants in the grid and may also include various controllable and uncontrollable loads within the grid, such as rechargeable energy storage systems and devices.
[0033] In some embodiments, generating a resource allocation schedule further includes: in response to determining that the generated difference is greater than a predetermined threshold, generating a second difference between a value of a second upper limit from a plurality of obtained convergence paths and a value of a second lower limit from a plurality of obtained convergence paths, wherein at a fourth time, each of the plurality of convergence paths includes a second upper limit, wherein at a fifth time, each of the plurality of convergence paths includes a second lower limit, and wherein at a sixth time, each of the plurality of convergence paths includes a second intermediate resource allocation schedule, wherein the fourth, fifth, and sixth times are after the latest of the first, second, and third times; and if the second difference is less than the predetermined threshold, generating a resource allocation schedule corresponding to a second intermediate response allocation schedule of the convergence path associated with the value of the second upper limit. In some embodiments, the method further includes transmitting the resource allocation schedule to grid resources by a power management system.
[0034] Figure 3 This is a functional block diagram of the power management system (PMS) 105 in the embodiment. As an example, Figure 3 The PMS 105 in the middle can be used for Figure 1 In the power management system 105. For simplicity, Figure 3 Not all function blocks of PMS 105 are shown in the diagram.
[0035] According to some embodiments, Figure 2 Processing boxes 10 to 30 are implemented by PMS 105. For example... Figure 3As shown, PMS 105 expresses the SCUC problem as a MIP representation 133 by using the SCUC model 131 and applying market and grid data 132 to the SCUC model 131. Therefore, in some embodiments, the MIP representation 133 is a constrained mathematical model (e.g., 131). In some embodiments, the process of generating the MIP representation 133 corresponds to... Figure 2 The processing in box 10. Details of the SCUC model and the MIP representation 133 are described below.
[0036] PMS 105 also includes an SCUC solver 134 configured to generate an SCUC solution 135 (e.g., resource allocation scheduling). In some embodiments, the SCUC solver 134 is configured to implement... Figure 2 Boxes 20 and 30 are described in further detail below.
[0037] In the embodiment, the SCUC model 131 of the safety-constrained unit combination system is expressed as the following optimization problem:
[0038]
[0039] It is subject to the following restrictions: A i,i x i ≥b i ,i=1,2,...,N, and Where N is the quantity of grid resources (e.g., the number of power plants and loads in the grid), i is the resource index, and x i c is the decision vector for resource i. i A is the cost coefficient vector of resource i. i,i A is the constraint matrix for resource i. C,i This is the coupling constraint matrix of resource i. Therefore, in the illustrated embodiment, solving the safety constraints of the unit combination system is equivalent to finding the decision vector x that minimizes the loss function (or cost function) shown in equation (1) while satisfying various constraints. i Let i = 1, 2, ..., N, where the decision vector x is... i For example, the resource allocation and scheduling (or including its information) of the i-th power grid resource. It should be noted that in equation (1), the vector x is used to represent all decision vectors x. i ,i=1,2,...,N.
[0040] In some embodiments, the various constraints of the power grid 100 discussed above (e.g., market and grid data 132) may be included in constraint matrix A. i,i and / or coupling constraint matrix A C,i In the middle. Cost coefficient vector c iInformation may include, for example, cost information about energy production. In various embodiments, the security-constrained unit combination system is a large-scale, mixed-integer, linear, non-convex optimization problem. The security-constrained unit combination system is NP-hard (nondeterministic polynomial-time hard) and is difficult to scale using parallel MIP solvers employing conventional methods. In the discussion herein, the security-constrained unit combination system (or problem) may also be referred to as a grid resource allocation function or a grid resource allocation profile.
[0041] refer to Figure 3 A safety-constrained unit combination (SCUC) system with system constraints, as expressed by equation (1), can be represented as a mixed-integer programming (MIP) representation 133. An SCUC solver 134 can be used to solve safety-constrained unit combination systems (e.g., to find their solutions). In an example embodiment, the SCUC solver 134 is... Figure 7 The Parallel Asynchronous Cooperative Primitive Dual Solver (PACPDS) 600 is shown in the figure. After solving the SCUC system, the SCUC solver 134 provides SCUC solutions 135, such as resource allocation and scheduling of a power grid.
[0042] refer to Figure 7 PACPDS 600 includes multiple primitive solver instances 609 (which may also be referred to as primitive solvers) and multiple dual solver instances 607 (which may also be referred to as dual solvers). Each of the primitive solvers 609 is a MIP solver (e.g., a commercially available MIP solver) for solving a SCUC system with system constraints according to equation (1), and each of the dual solvers 607 is a solver for solving a dual optimization problem (e.g., a relaxed SCUC MIP problem) using relaxation techniques such as Lagrange relaxation. In some embodiments, PACPDS 600 obtains an upper bound from the multiple primitive solver instances 609 using different initial condition configurations (e.g., MIP solver parameter settings, MIP starting point, etc.). In some embodiments, PACPDS 600 obtains a lower bound from the dual solver instances 607. Furthermore, PACPDS 600 can obtain a lower bound from the primal solver instance 609, for example, by solving the SCUC system using integer relaxation of the SCUC system, which is performed within the MIP solver. Additionally, PACPDS 600 can obtain an upper bound from the dual solver instance 607. In some embodiments, PACPDS 600 uses optimal upper and lower bounds from multiple asynchronous runs to determine whether the primal feasible solution (which can be generated by either the primal solver instance 609 or the Lagrange dual solver instance 607 corresponding to the optimal upper bound) satisfies the solution gap objective. Details of PACPDS 600 will be referenced below. Figures 5 to 8 discuss.
[0043] Before discussing the more complex PACPDS 600, a discussion of the MIP solver and its convergence behavior is provided below. In some embodiments, Figure 7 Each of the original solvers 609 in PACPDS 600 is the MIP solver discussed in this paper.
[0044] A MIP solver can be a software package running on a computer for solving MIP problems (e.g., safety-constrained unit portfolio systems). Commercially available general-purpose MIP solvers (such as CPLEX or Gurobi) can be used to solve safety-constrained unit portfolio systems. Open-source MIP solvers (such as CBC) can also be used as MIP solvers.
[0045] Typically, MIP solvers search the vector space of decision vectors through a series of branch and bound (B&B) operations and / or a series of branch and cut (B&C) operations to find integer feasible solutions with upper and lower bounds, thereby gradually approaching the optimal solution (e.g., a set of decision vectors x corresponding to the minimum loss function of a unit combination system with safety constraints). i The initial conditions can also be referred to as the initial condition configuration. The MIP solver computes and updates the values of the decision vectors over multiple iterations / steps, causing the loss function to decrease over time until the MIP solver reaches the final solution, which is the optimal solution or sufficiently close to the optimal solution for the safety-constrained unit combination system. For example, the MIP solver can find a feasible solution corresponding to the upper bound (UB) of the SCUC problem and a solution to the integer relaxation SCUC problem corresponding to the lower bound (LB). The SCUC problem is considered solved when the difference between UB and LB is within a predetermined gap objective (e.g., the MIP solver is considered to have converged to the optimal solution). The path from the initial conditions to the final solution (e.g., the vector space traversed by the MIP solver) is called the convergence path of the MIP solver (or SCUC system), and the MIP solver is said to have converged to the final solution along this convergence path. It should be noted that different initial conditions (which may include any solver parameters, and / or multiple initial guesses of the SCUC solution (also known as the MIP starting point) that affect the convergence behavior of the MIP solver) often lead to different convergence paths for the MIP solver. The convergence path provided by the MIP solver at a specific time (e.g., at time T after a specific iteration) along the convergence path will result in different convergence paths. o The decision vector x) i It is considered to be at a specific moment (e.g., at time T). o (Temporary or tentative) solution.
[0046] Figure 4 The upper and lower bound trajectories of the convergence path of the MIP solver for a unit combination system with safety constraints in the embodiment are shown. Figure 4In the diagram, the x-axis represents time (e.g., computation time), and the y-axis represents the value of the loss function of the unit combination system under safety constraints (e.g., see equation (1)), where the value of the loss function can be obtained by applying the current decision vector x... i Substitute the loss function into equation (1) to calculate. Figure 4 In the example, two curves (e.g., 301, 311) from a single convergence path are shown as an illustration.
[0047] refer to Figure 4 Upper bound curve 301 shows the upper bound of the convergence path, and lower bound curve 311 shows the lower bound of the convergence path. The upper bound at a specific time indicates the value of the loss function for the current solution (e.g., the decision vector x). i The current value of the solution (e.g., the decision vector x) or the latest solution of the SCUC system provided by the MIP solver. It should be noted that the solution of the SCUC system provided by the MIP solver (e.g., the decision vector x) is the current value of the solution (e.g., the decision vector x). i ) is a mixed integer solution, which includes integers (e.g., logic values 0 or 1 indicating whether a power plant is on or off). Conversely, Figure 4 The lower bound curve 311 in the figure corresponds to the value of the loss function for the integer relaxed solution of the unit combination system with safety constraints. In the integer relaxed solution, compared to the decision vector x i The variables in the solution (at least some of them) are restricted to integers, and the decision vector x of the integer relaxation solution is... i The variables in the expression are allowed to be real numbers (e.g., continuous values). Integer relaxation solutions can also be referred to as solutions to unit combination systems with integer relaxation safety constraints.
[0048] In some embodiments, in addition to providing solutions to the safety-constrained unit combination system, the MIP solver also provides integer relaxation solutions to the safety-constrained unit combination system in parallel. Due to the increased vector space for searching integer relaxation solutions, the loss function associated with the integer relaxation solutions (which correspond to the lower bound) is lower than or equal to the corresponding loss function associated with the solution to the original safety-constrained unit combination system (which is the upper bound). Therefore, as Figure 4 As shown, the lower bound curve 311 is below the upper bound curve 301. Furthermore, as the MIP solver converges toward the final solution (e.g., the optimal solution), the upper bound curve 301 decreases, the lower bound curve 311 increases, and the difference between the upper bound curve 301 and the lower bound curve 311 decreases.
[0049] In some embodiments, at a certain moment (e.g., time T) oThe MIP solver calculates the difference between the upper and lower limits (also called the gap) and compares it to a predetermined threshold (e.g., a gap target or target gap value). If the calculated difference is less than the predetermined threshold, the MIP solver is considered to have converged to the final solution (e.g., the optimal solution), and the MIP solver stops. In some embodiments, the solution of the (stopped) MIP solver provides a solution for the safety-constrained unit combination system. The decision vector x of the final solution i This includes information about the operation and scheduling of grid resources (e.g., power plants), which can be derived from the decision vector x. i Resource allocation and scheduling to form the power grid are extracted. Before detecting or declaring MIP solver convergence, the (temporary) decision vector x is used. i The operation scheduling formed by the information can be called temporary or intermediate resource allocation scheduling.
[0050] The examples described above for detecting convergence and for stopping the MIP solver occur at the same time (e.g., time T). o The difference between the upper and lower limits is checked. This is only a non-limiting example. In other embodiments, the values of the upper and lower limits at two different but close moments (e.g., within seconds or minutes) can be used to determine whether the MIP solver has converged. For example, the difference between the upper limit at time T1 and the lower limit at time T2 can be compared with a predetermined threshold, and if the difference is less than the predetermined threshold, the solution of the safety-constrained crew combination system provided by the MIP solver at time T between time T1 and T2 (e.g., T1 ≤ T ≤ T2) can be used as the final solution for providing resource allocation scheduling. As another example, the difference between the upper limit at time T2 and the lower limit at time T1 can be compared with a predetermined threshold, and if the difference is less than the predetermined threshold, the solution of the safety-constrained crew combination system provided by the MIP solver at time T2 can be used as the final solution for providing resource allocation scheduling.
[0051] Due to factors such as decision vector x iDue to factors such as the large dimensionality of each component, the large number of decision vectors, and the non-convexity of the safety-constrained unit combination system, solving the safety-constrained unit combination system using a single MIP solver can take a very long time to achieve / detect convergence. For example, in some cases, the upper bound curve 301 may already be close enough to the optimal solution (relative to the gap tolerance) (e.g., the upper bound curve 301 is now decreasing very slowly or remaining constant), but the lower bound curve 311 has not yet converged and is still increasing. It may take a long time for the lower bound curve 311 to rise enough to be close enough to the upper bound curve 301 (e.g., closer to the predetermined target gap). Therefore, although the MIP solver may have found an acceptable solution, the detection of convergence may take longer because the MIP solver does not know that the solution is acceptable. As another example, the convergence path of the MIP solver can be short or long depending on the initial conditions used to start the MIP solver. Some initial conditions may cause the MIP solver to take a long time to converge to the final solution.
[0052] To reduce convergence time, this disclosure uses multiple MIP solvers to solve the safety constraints of the unit combination system in parallel. Each of the multiple MIP solvers (e.g., see...) Figure 7 The original solver 609 in the MIP (Multi-Installation Programming) is executed using different solver configurations, such that each MIP solver reaches the final solution (e.g., the optimal solution) along a different convergence path. In other words, each of the MIP solvers addresses the same security constraints of the unit combination system, but follows a different convergence path, for example, due to different solver configurations and MIP starting points. Here, the initial conditions include any suitable parameter settings (time allocation, solution strategy, MIP starting point, etc.) that interfere with the solver's solution behavior, such that a different convergence path is obtained for each initial condition. For example, besides the decision vector x... i Besides setting different initial values, other ways to set different initial conditions may include setting different emphasis strategies for the MIP solver 134, setting different time allocations for the MIP solver 134 (e.g., the maximum allowed computation time), and / or setting different gap targets.
[0053] Figure 5 Showing more details Figure 2 The processing in boxes 20 and 30. For example, Figure 5 It shows Figure 2 The convergence path obtained is described in boxes 20 and 30. Refer to the following text for further details. Figure 5 In more detail, the minimum upper bound of multiple MIP solvers and the maximum lower bound of multiple MIP solvers are determined. The difference between the minimum upper bound and the maximum lower bound is calculated and compared with a predetermined threshold to detect the convergence of the solution for the unit combination system under safety constraints.
[0054] Now for reference Figure 5 It illustrates multiple upper and lower bound curves along multiple convergence paths for the unit combination system with safety constraints in the embodiment. For simplicity, Figure 5 Two upper bound curves, 401 and 403, and two lower bound curves, 411 and 413, are shown among the other curves. Each of the upper bound curves 401 / 403 is solved by a MIP solver (e.g., Figure 7 The original solver 609 in the MIP solver is generated along its convergence path, and the MIP solver can also generate corresponding lower bound curves (e.g., 411 or 413). Therefore, Figure 5 The lower bound curves 411 / 413 and upper bound curves 401 / 403 can be generated by two MIP solvers initialized with different initial conditions (thus following two different convergence paths). Although Figure 5 Two sets of lower bound curves and upper bound curves are shown, but as will be readily understood by those skilled in the art, other numbers of lower bound curves / upper bound curves and other numbers of MIP solvers can be used.
[0055] In some embodiments, in order to detect the convergence of the solution of the safety-constrained unit combination system and at a certain time (e.g., T), o The MIP solver stops at this time (e.g., T) from the upper limit curve (e.g., 401, 403). o The minimum value of the upper limit of UB is given by UB = min(UB1, UB2, ..., UB). N ) is generated, and comes from the lower limit curve (e.g., 411, 413) at that time (e.g., T). o The maximum value of the lower bound of ) is determined by LB = max(LB1, LB2, ..., LB). M ) generated, where UB i (i = 1, 2, ..., N) represents the i-th upper bound, N is the number of upper bound curves, and LB k (k = 1, 2, ..., M) is the k-th lower bound, and M is the number of lower bound curves, where M can be equal to or not equal to N depending on, for example, how the lower bound curves are generated. The difference between the minimum value of the upper bound UB (or the lowest value of the upper bound) and the maximum value of the lower bound LB (or the highest value of the lower bound) is compared with a predetermined threshold (e.g., a target gap value between the upper and lower bounds). If the difference is less than the predetermined threshold, convergence of the solution to the safety-constrained unit combination system is detected, and the MIP solver can be stopped. Then, the solution of the convergent path with the lowest upper bound value (e.g., the decision vector x) is... iThe result is used as the final solution, and the resource allocation and scheduling of the power grid are obtained (e.g., extracted) from the final solution. On the other hand, if the difference between the minimum value of the upper bound UB and the maximum value of the lower bound LB is greater than a predetermined threshold, the MIP solver continues to search for a better solution until convergence is detected (or until the allowed computation time expires).
[0056] The above discussion on convergence detection uses upper and lower bounds at the same time point, which are merely non-restrictive examples. Similar to the reference above... Figure 4 The discussion suggests that convergence can be detected using the minimum value of the upper bound (UB) and the maximum value of the lower bound (LB) generated at two different time points (e.g., T1 and T2), where the upper and lower bound values at the corresponding time points are used to take the min() and max() functions. A person of ordinary skill who has read the above reference... Figure 4 After the discussion, it will be easy to refer to the above. Figure 4 The principles discussed are applied here for reference. Figure 5 The discussion will not be repeated here for the sake of simplicity.
[0057] exist Figure 5 In this approach, the use of multiple MIP solvers to solve a unit combination system with security constraints (where each MIP solver generates one of the upper bound curves, such as 401 or 403) significantly increases the likelihood that at least one of the MIP solvers follows a faster convergence path (e.g., fast convergence). Therefore, the probability that at least one solution (provided by a MIP solver with a faster convergence path) quickly converges to the optimal solution is also significantly increased. In other words, the time required to reach the final solution (e.g., the optimal solution) is significantly reduced by parallelizing the solution (e.g., using multiple MIP solvers to solve a unit combination system with the same security constraints using different initial conditions). Furthermore, the time required to detect convergence of the solution is also reduced by using the minimum of the upper bound (UB) and the maximum of the lower bound (LB) to detect convergence.
[0058] Figure 5 Lower bound curve 415 is also shown, which illustrates another lower bound of the loss function for a safety-constrained unit combination system. Lower bound curve 415 is generated by solving the dual optimization problem of the safety-constrained unit combination system, where the dual optimization problem (also known as the dual problem) is a relaxed SCUC problem using relaxation techniques such as Lagrange relaxation (LR). For example, the dual problem of the safety-constrained unit combination system (e.g., LR) of equation (1) can be expressed as:
[0059]
[0060]
[0061] It is subject to the following restrictions: Ai,i x i ≥b i ,i=1,2,...,N. It should be noted that by rewriting the dual problem in (2.1) as (2.2), the dual problem of equation (2.1) is decomposed into multiple dual subproblems:
[0062]
[0063] It is subject to the following restrictions: A i,i x i ≥b i The following will be a reference. Figure 6 As discussed, the LR dual optimizer (also known as the LR dual solver or dual solver) can use an iterative algorithm to solve the dual problem in equation (2.2), and the multiple dual subproblems in equation (3) can be solved in parallel by multiple LR subproblem optimizers (also known as LR subproblem solvers) to reduce the computation time required to approach the final solution (e.g., the optimal solution) of the dual problem. In other words, each of the LR subproblem optimizers (the MIP solver in the example embodiment) solves one or more (different) LR subproblems.
[0064] exist Figure 5 In the illustrated embodiment, the LR dual solver typically finds a tighter lower bound faster than the MIP solver. Therefore, during the convergence of the solution to the unit combination system with security constraints, the lower bound value indicated by lower bound curve 415 can be appended to or replace the lower bound indicated by lower bound curves 411 / 413 to determine the maximum value LB of the lower bound. In other words, the lower bound provided by the LR dual solver significantly reduces the time required for the convergence of the solution to the unit combination system with security constraints.
[0065] Figure 5 The upper limit curve 405 generated by the LR dual solver is also shown. Figure 5 In the example shown, the upper bound curve 405 is not a tight upper bound at the beginning, but provides a tighter upper bound as the LR dual solver converges (e.g., after some iterations). Therefore, the upper bound provided by the LR dual solver can also be used (e.g., in addition to the upper bound provided by the MIP solver) to determine the minimum value UB of the upper bound.
[0066] It should be noted that, as a non-restrictive example, Figure 5Only one lower bound curve 415 and one upper bound curve 405 derived from the LR dual solver are shown. In some embodiments, multiple LR dual solvers (each initialized with different initialization conditions and an algorithm variant for determining the updated LR multipliers) are used to solve the dual problem along different convergence paths, thus providing multiple lower bound curves similar to lower bound curve 415, and the maximum value LB of the lower bound for convergence of the unit combination solution for detecting safety constraints is found using the lower bounds indicated by these lower bound curves. Similarly, the upper bound curves (similar to upper bound curve 405) provided by multiple LR dual solvers can also be used to find the minimum value UB of the upper bound for convergence of the unit combination solution for detecting safety constraints.
[0067] Figure 6 A flowchart of a method 500 for solving the dual problem in equation (2.2), which is a Lagrange relaxation (LR) of a unit combination system with security constraints of equation (1), is shown in the embodiment.
[0068] refer to Figure 6 In box 501, the Lagrange multiplier vector λ is initialized. In box 503, the objective coefficients of the multiple dual subproblems are updated according to equation (3), and the LR dual subproblems are solved. The corresponding lower bound of the SCUC system is calculated. It should be noted that multiple LR subproblem solvers can be used to solve multiple dual subproblems in parallel. In box 505, the subgradient is calculated using the current solution. In box 507, the correction value of the Lagrange multiplier vector λ is calculated using the calculated subgradient. In box 509, the algorithm checks whether the current solution satisfies the coupling constraints and calculates the corresponding upper bound of the SCUC system using the current solution. It should be noted that if the current solution does not satisfy all coupling constraints, the calculated upper bound can be a loose upper bound (depending on the size of the slack variables required to make the infeasible coupling constraints feasible and the penalty cost for the slack variables, either positive infinity UB or finite UB). In box 511, the LR optimizer checks whether convergence has been achieved for the dual problem. If not, in box 515, the Lagrange multiplier vector λ is updated with the calculated correction value, and the process returns to box 503 for another iteration. If convergence of the dual problem is achieved, the process proceeds to box 513, where the algorithm checks whether the current solution to the dual problem is a feasible solution to the SCUC problem (e.g., satisfying coupling constraints). If the current solution is infeasible, an infeasibility correction step is performed to modify the current solution so that the modified solution satisfies the coupling constraints. The modified solution is used to compute the upper bound (e.g., a tight upper bound). It should be noted that the final solution provided by the LR dual solver (e.g., after the infeasibility correction step or after being confirmed as a feasible solution) is also a valid solution to the SCUC system and can be referred to as the original feasible solution.
[0069] Figure 7A block diagram of a Parallel Asynchronous Cooperative Primitive Dual Solver (PACPDS) 600 for solving safety constraints in a unit combination system, as shown in the embodiment, is illustrated. PACPDS 600 can be used as, for example... Figure 3 The SCUC solver 134 is used for implementation Figure 2 The processing box 20 and (at least partially) processing box 30 in the middle.
[0070] refer to Figure 7 PACPDS 600 includes multiple primitive solver instances 609 (e.g., MIP solvers, such as commercially available MIP solvers) for solving unit combination systems with safety constraints (e.g., see Equation (1)). The multiple primitive solvers 609 execute with different solver parameter configurations and optionally different MIP starting points, such that each of the primitive solvers 609 follows a different convergence path and provides different upper bound curves (e.g., see Equation (1)). Figure 5 The upper bound curves 401 / 403 are shown in the figure. PACPDS 600 also includes multiple dual solver instances 607 (e.g., LR dual solvers) for solving the dual problem of a unit combination system with safety constraints (e.g., see Equation (2.2)). Each of the dual solvers 607 may include multiple LR subproblem optimizers to solve multiple LR subproblems in parallel (e.g., see Equation (3)). Each of the dual solvers 607 provides a different lower bound curve (e.g., see Equation (2.2)). Figure 5 (The lower bound curve 415 in the diagram). In other words, each of the dual solvers 607 finds the final solution along a different convergence path.
[0071] In some embodiments, the solution found by the dual solver 607 provides an approximately feasible solution for the original solver 609 and can be used to warm-start new instances of the original solver 609 (see [link]). Figure 7 (See the label "MIP start" in the text). For example, the solution found by the dual solver 607 can be used as an initial guess for the solution to the SCUC problem to start a new instance of the original solver 609, which can achieve faster convergence.
[0072] Still referencing Figure 7 PACPDS 600 includes an upper bound (UB) server 605 and a lower bound (LB) server 603. UB server 605 and LB server 603 manage the publishing and subscribing of LB and UB. For example, UB server 605 collects upper bounds from multiple primary solvers, finds the minimum upper bound UB, and publishes the minimum upper bound UB as "Best Upper Bound (BUB)". Similarly, LB server 603 collects lower bounds from, for example, multiple dual solvers 607, finds the maximum lower bound LB, and publishes the maximum lower bound LB as "Best Lower Bound (BLB)".
[0073] BLB and BUB are sent to the solution regulator 601 of PACPDS 600. The solution regulator 601 monitors BLB and BUB and determines whether convergence of the SCUC solution has been achieved. For example, if the difference between BUB and BLB is less than a predetermined threshold (e.g., a gap target), the solution regulator 601 declares convergence has been achieved and stops the original solver 609 and the dual solver 607. The resource allocation schedule of the power grid 100 is then obtained from the solution of the unit combination system with the minimum upper limit security constraint (e.g., provided by the original solver 609). In addition to determining the termination (e.g., stopping) of the original solver 609 and the dual solver 607, the solution regulator 601 also has other functions such as instantiating instances of the original solver 609 and the dual solver 607, setting initial conditions, and starting the original solver 609 and the dual solver 607.
[0074] Figure 7 The data path between LB server 603 and primary solver 609 is also illustrated. In some embodiments, the BLB provided by LB server 603 is sent to primary solver 609 and compared with an upper bound provided by primary solver 609 to detect convergence of the solution for the safety-constrained unit combination system. In other words, convergence can be detected directly without involving solution regulator 601. Similarly, the BUB provided by UB server 605 can be sent to dual solver 607 to directly detect convergence without involving solution regulator 601.
[0075] Figure 8 Some embodiments are shown. Figure 7 The interaction of parallel independent processes in the parallel asynchronous cooperative primal dual solver 600. For example, Figure 8 It shows in Figure 2 The obtained convergence path and the generated difference are described in boxes 20 and 30.
[0076] exist Figure 8 In the example, three primitive solvers 701 / 703 / 705 (e.g., MIP solvers) are instantiated to solve the safety constraints of the unit combination system in parallel along different convergence paths. The horizontal lines corresponding to each instance of the primitive solvers 701 / 703 / 705 represent computation time. If left unchecked, each of the primitive solvers 701 / 703 / 705 will run its own process until a solution is found at time T. P1 T P2 and T P3 The convergence to the optimal solution is shown by the point marked "reaching the gap target" at the end of each line.
[0077] Figure 8The process of two instantiated dual solvers 711 / 713 solving the dual problem of a safety-constrained unit combination system along different convergence paths is also illustrated. The processing of each dual solver includes finding a solution to the dual problem (e.g., see...). Figure 6 The processing box between boxes 501 and 511 in the diagram), and if the found solution does not satisfy the constraints of the dual problem, then an additional step of infeasibility repair is performed (e.g., see [reference]). Figure 6 (Box 513 in the middle). Figure 8 In the example, the dual solver 711 performs three iterations to achieve the desired result in time T. D1 A solution is found where each iteration is represented as a ladder shape with two vertical lines and multiple rungs (e.g., arrows) between them. The rungs (or arrows) of the ladder shape indicate the number of instantiated parallel LR subproblem solvers. Therefore, in Figure 8 In the example, the dual solver 711 has five LR subproblem optimizers and runs three iterations to achieve the desired result at time T. D1 The solution converges to a solution, and the dual solver 713 has five LR subproblem optimizers and runs five iterations to reach a solution at time T. D2 The solution converges. Note that at time T... D1 and T D2 The solution at this point may not be feasible (e.g., it does not satisfy all constraints of the LR dual problem), but it corresponds to a very tight lower bound for the SCUC system. After infeasibility fixes (see...), Figure 6 Box 513 in the middle, each of the dual solvers 711 / 713, respectively at time T F1 and T F2 The original feasible solution (e.g., the solution to the SCUC system) is obtained.
[0078] like Figure 8 As shown, the dual solver 711 provides the lower bound of the SCUC system to the UB server 605 after each iteration (see the arrow marked "New LB" after each iteration) and before infeasibility fixes (see...). Figure 7 This lower bound is used by UB server 605 to find the "best lower bound" (BLB) (the maximum of all currently reported lower bounds). Similarly, dual solver 713 also provides a lower bound to UB server 605 after each iteration. To avoid confusion, Figure 8 Only the time T of the dual solver 713 is shown. D2A lower bound value is provided to the UB server, where it should be understood that the lower bound value of the dual solver 713 after each iteration can be sent to the UB server 605 to find the BLB. The “best lower bound” BLB is then compared with the upper bounds of all the original solvers (e.g., 701, 703, and 705) to detect convergence. It should be noted that comparing the BLB with the upper bounds of all solvers to detect convergence is equivalent to comparing the BLB with the “best upper bound” (BUB) to detect convergence, where the BUB is the minimum of all currently reported upper bounds. If the difference between the BLB and the BUB (or the difference between the BLB and any of the upper bounds) is less than a predetermined threshold (e.g., a gap objective), it is determined that the solution of the original solver with the lowest upper bound value has converged to the final solution (e.g., the optimal solution) of the safety-constrained unit combination system, and the original solver and the LR dual optimizer are stopped.
[0079] Figure 8 The MIP startup of the original solver 707 is also shown. For example, at time T D1 The dual solver 711 reaches an approximately feasible solution, which is used to set the initial conditions for a new instance of the original solver 707. Figure 8 In the example, a new instance of the original solver 707 occurs at time T. P4 Convergence to the optimal solution of the SCUC system may and usually occurs earlier than the convergence time T of other primitive solvers. P1 T P2 T P3 .
[0080] As discussed above, convergence of the solution to the unit combination system with safety constraints can be detected or declared at different processing stages of the primal solver and / or dual solver. For example, after the primal solver 609 reaches the gap objective (e.g., at time T). P1 T P2 T P3 or T P4 Convergence can be declared. As another example, after the dual solver 607 finds a feasible solution (e.g., at time T), convergence can be declared. F1 or T F2 The feasible solution found by the dual optimizer can be used as the solution for the SCUC system. As another example, after each iteration but before infeasibility fixes, after each dual solver 607 finds a (temporary) solution, the lower bound provided by the dual solver 607 at this stage can be used to find the BLB, and the BLB is compared with the BUB to detect convergence. At the earliest possible time, for example, when any of the above stages are reached, convergence of the solution for the unit combination system with safety constraints is detected / declared.
[0081] like Figure 8As shown, multi-stage parallel processing is used to reduce convergence time. For example, multiple primal solvers 609 are used to solve the safety-constrained unit combination system in parallel, and multiple dual solvers 607 are used to solve the LR dual problem in parallel. Furthermore, for each of the dual solvers 607, multiple LR subproblem optimizers are used to solve multiple LR subproblems in parallel.
[0082] Figure 9A and Figure 9B Some embodiments are shown. Figure 7 The performance of the parallel asynchronous cooperative primitive dual solver 600. For example... Figure 9A As shown, the computation time (runtime) of solving a safety-constrained unit portfolio system using conventional methods (e.g., solving the safety-constrained unit portfolio system by running a single MIP solver until the gap objective is reached) increases exponentially with the size of the safety-constrained unit portfolio system (e.g., the number of variables in the decision vector). In contrast, the computation time of the disclosed embodiments increases at a much slower rate with the size of the safety-constrained unit portfolio system. Furthermore, as... Figure 9B As shown, for conventional methods, the gap between the upper and lower bounds (e.g., the difference) (which is used to detect convergence) decreases slowly over time. In contrast, using the disclosed parallel asynchronous cooperative primal dual solver 600, the gap between the upper and lower bounds decreases at a much faster rate, resulting in faster convergence.
[0083] Figure 10 This is a block diagram of a processing system for performing the processes according to the various embodiments described above. For example, Figure 10 Can be implemented for execution Figure 2 The processing of PMS 105.
[0084] like Figure 10 As shown, the processing system 900 includes a processor 902, a memory 904, and interfaces 906 to 910, which can be configured according to... Figure 10 The arrangement shown may or may not be in accordance with the instructions. Figure 10The processor 902 can be any component or collection of components adapted to perform computational and / or other processing-related tasks, and the memory 904 can be any component or collection of components adapted to store programs and / or instructions for execution by the processor 902. In embodiments, the memory 904 includes a non-transitory computer-readable medium. Interfaces 906, 908, and 910 can be any component or collection of components that allow the processing system 900 to communicate with other devices / components. For example, one or more of interfaces 906, 908, and 910 can be adapted to communicate data, control, or management messages from the processor 902 to applications mounted on host devices and / or remote devices. As another example, one or more of interfaces 906, 908, and 910 can be adapted to allow devices (e.g., personal computers (PCs)) to interact / communicate with the processing system 900. The processing system 900 may include Figure 10 Additional components not described herein, such as long-term storage devices (e.g., non-volatile memory, etc.).
[0085] The embodiments can achieve advantages. For example, by using multi-stage parallelism (e.g., multiple primal solvers and multiple dual solvers, with each of the dual solvers having multiple LR subproblem optimizers) and by initializing the primal and dual solvers with different initial conditions, the Parallel Asynchronous Cooperative Primitive-Dual Solver (PACPDS) 600 achieves convergence much faster than conventional methods. The computation time of the disclosed PACPDS 600 increases at a much slower rate with the size of the safety-constrained unit combination system. The asynchronous cooperation between the primal solver 609 and the dual solver 607 allows for checking the convergence of the solution at multiple processing stages of the primal and dual solvers. Furthermore, since the minimum of the upper bound and the maximum of the lower bound are used to detect convergence, the disclosed embodiments provide failure tolerance for specific solution paths (e.g., convergence paths of specific solvers). For example, a failed solution path may have a much higher upper bound than other normally functioning solution paths, and therefore, the min() function used to find the minimum of the upper bound will be "ignored". In addition, the approximate feasible solution of the dual problem found by the dual solver 607 can be used to warm-start (e.g., MIP start) the original solver 609 to reduce the convergence time.
[0086] Changes and modifications to the disclosed embodiments are possible and are fully intended to be included within the scope of this disclosure. For example, in the discussion above, the optimal upper bound (BUB) is determined by taking the minimum of a plurality of upper bounds. In alternative embodiments, the BUB is determined, for example, by taking a second minimum or a third minimum of a plurality of upper bounds. In fact, the BUB can be determined by taking any upper bound value from a plurality of upper bounds. Similarly, in the discussion above, the optimal lower bound (BLB) is determined by taking the maximum of a plurality of lower bounds. In alternative embodiments, the BLB is determined, for example, by taking a second maximum or a third maximum of a plurality of lower bounds. In fact, the BLB can be determined by taking any lower bound value from a plurality of lower bounds. However, these modifications may not have all the advantages of the embodiments discussed above. For example, the convergence time may not be fast enough, or the tolerance for failed solution paths may not be strong enough.
[0087] This disclosure has been described in a specific context, namely, a power management system for a power grid that uses parallel asynchronous cooperative primal dual solutions to solve the security-constrained unit combination (SCUC) problem of a power grid.
[0088] Exemplary embodiments of this disclosure are summarized herein. Other embodiments may also be understood from the overall description and claims submitted herein.
[0089] Example 1. In an embodiment, a method of operating a power grid includes: generating a power grid resource allocation profile by a power management system of the power grid, indicating operation of the power grid constrained by operation information of the power grid; generating a difference between upper limits of a plurality of obtained convergence paths and lower limits of obtained convergence paths, the obtained convergence paths being based on a plurality of different initial conditions of the generated power grid resource allocation profile; and generating a resource allocation schedule for operation of power grid resources within the power grid if the generated difference is less than a predetermined threshold, the resource allocation schedule corresponding to the convergence path associated with the upper limit value, the resource allocation schedule being configured to be received at the power grid resources.
[0090] Example 2. The method described in Example 1 also includes transmitting resource allocation and scheduling from the power management system to the grid resources.
[0091] Example 3. According to the method of Example 1, the operational information includes information for constraining the operation of the power grid, and includes safety-related transmission constraint information and cost information.
[0092] Example 4. According to the method of Example 1, generating the grid resource allocation profile includes expressing the grid resource allocation profile as a unit combination system with security constraints based on mixed integer programming.
[0093] Example 5. According to the method of Example 1, wherein at a first time, each of the plurality of obtained convergence paths includes an upper limit, wherein at a second time, each of the plurality of obtained convergence paths includes a lower limit, and wherein at a third time, each of the plurality of obtained convergence paths includes an intermediate resource allocation schedule, wherein generating the resource allocation schedule includes selecting the intermediate resource allocation schedule of the convergence path associated with the value of the upper limit as the resource allocation schedule.
[0094] Example 6. Following the method of Example 5, the generation of the difference includes the difference between the minimum value of the upper limit and the maximum value of the lower limit.
[0095] Example 7. According to the method of Example 5, wherein the multiple obtained convergence paths include a first convergence path obtained by solving the power grid resource allocation profile using multiple mixed integer programming (MIP) solvers, wherein each of the multiple MIP solvers is initialized with different initial conditions, such that each of the multiple MIP solvers converges along a different convergence path.
[0096] Example 8. According to the method of Example 7, each of the plurality of MIP solvers is configured to generate a mixed integer solution of the power grid resource allocation profile at a first time step, wherein the mixed integer solution has a corresponding upper bound of the power grid resource allocation profile.
[0097] Example 9. According to the method of Example 8, each of the plurality of MIP solvers is further configured to generate an integer relaxation solution of the power grid resource allocation profile at a second time step, wherein the integer relaxation solution has a corresponding lower bound of the power grid resource allocation profile.
[0098] Example 10. According to the method of Example 9, wherein the plurality of obtained convergence paths include a second convergence path obtained by solving a second power grid resource allocation profile different from the plurality of MIP solvers using a second plurality of solvers, wherein each of the second plurality of solvers is configured to generate a solution of the second power grid resource allocation profile at a second time point, the solution having a corresponding lower bound of the power grid resource allocation profile.
[0099] Example 11. According to the method of Example 10, the second grid resource allocation profile is a Lagrange relaxation (LR) function of the grid resource allocation profile.
[0100] Example 12. Following the method in Example 5, where the first time point, the second time point, and the third time point are the same time point.
[0101] Example 13. According to the method of Example 5, wherein the first moment is different from the second moment, wherein if the first moment is after the second moment, then the third moment is the first moment, wherein if the first moment is before the second moment, then the third moment is between the first and second moments, the same as the first moment, or the same as the second moment.
[0102] Example 14. According to the method of Example 5, wherein generating a resource allocation schedule further includes: in response to determining that the generated difference is greater than a predetermined threshold, generating a second difference between a value of a second upper limit from a plurality of obtained convergence paths and a value of a second lower limit from a plurality of obtained convergence paths, wherein at a fourth time, each of the plurality of convergence paths includes a second upper limit, wherein at a fifth time, each of the plurality of convergence paths includes a second lower limit, and wherein at a sixth time, each of the plurality of convergence paths includes a second intermediate resource allocation schedule, wherein the fourth, fifth, and sixth times are after the latest of the first, second, and third times; and if the second difference is less than the predetermined threshold, generating a resource allocation schedule corresponding to a second intermediate response allocation schedule of the convergence path associated with the value of the second upper limit.
[0103] Example 15. In an embodiment, a system is configured to: generate a power grid resource allocation profile by a processor of a power grid management system, indicating the operation of the power grid constrained by the operation information of the power grid; generate a difference between upper limits of a plurality of obtained convergence paths and lower limits of obtained convergence paths based on a plurality of different initial conditions of the generated power grid resource allocation profile; and if the generated difference is less than a predetermined threshold, generate a resource allocation schedule for the operation of the power grid resources within the power grid, the resource allocation schedule corresponding to the convergence path associated with the upper limit value, the resource allocation schedule being configured to be received at the power grid resources.
[0104] Example 16. The system according to Example 15 further includes: a transmitter configured to transmit resource allocation schedules to the grid resource; and the grid resource, wherein the grid resource is configured to be controlled according to the resource allocation schedule.
[0105] Example 17. According to the system of Example 15, wherein the system is further configured such that: the processor uses multiple solvers to find a solution to the power grid resource allocation profile, wherein each of the multiple solvers is initialized with different initial conditions to obtain different convergence paths for each of the multiple solvers, wherein each of the multiple solvers converges toward a solution to the power grid resource allocation profile along a different convergence path.
[0106] Example 18. The system according to Example 17, wherein at a first time, each of the plurality of obtained convergence paths includes an upper limit, wherein at a second time, each of the plurality of obtained convergence paths includes a lower limit, and wherein at a third time, each of the plurality of obtained convergence paths includes an intermediate resource allocation schedule.
[0107] Example 19. Based on the system of Example 18, wherein the system is further configured to generate the difference by calculating the difference between the minimum value of the upper limit and the maximum value of the lower limit.
[0108] Example 20. Based on the system of Example 18, wherein the system is further configured to generate a resource allocation schedule by selecting an intermediate resource allocation schedule of a convergence path associated with the value of the upper limit as the resource allocation schedule.
[0109] Although this disclosure has been described with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of this disclosure, will be apparent to those skilled in the art upon reference to the specification. Therefore, the appended claims are intended to cover any such modifications or embodiments.
Claims
1. A method for operating a power grid, comprising: The power management system of the power grid generates a power grid resource allocation profile, which indicates the operation of the power grid constrained by the operation information of the power grid; The power grid resource allocation profile is solved using a first plurality of mixed integer programming (MIP) solvers, wherein each of the first plurality of mixed integer programming (MIP) solvers is configured and initialized with different initial conditions, such that each of the first plurality of mixed integer programming (MIP) solvers converges along different convergence paths to obtain the first plurality of convergence paths. Generate the difference between the minimum of the upper bounds of a plurality of obtained convergence paths and the maximum of the lower bounds of the plurality of obtained convergence paths, wherein the plurality of obtained convergence paths includes the first plurality of convergence paths; and If the generated difference is less than a predetermined threshold, a resource allocation schedule for operation within the power grid is generated, the resource allocation schedule corresponding to a convergence path associated with the minimum of the upper limit, the resource allocation schedule being configured to be received at the power grid resource.
2. The method according to claim 1 further includes transmitting the resource allocation and scheduling from the power management system to the power grid resources.
3. The method according to claim 1, wherein, The operational information includes information for constraining the operation of the power grid, and includes security-related transmission constraint information and cost information.
4. The method according to claim 1, wherein, Generating the power grid resource allocation profile includes expressing the power grid resource allocation profile as a unit combination system with security constraints based on mixed integer programming.
5. The method according to claim 1, wherein, At a first time, each of the plurality of obtained convergence paths includes an upper limit, wherein at a second time, each of the plurality of obtained convergence paths includes a lower limit, and wherein at a third time, each of the plurality of obtained convergence paths includes an intermediate resource allocation schedule, wherein generating the resource allocation schedule includes selecting the intermediate resource allocation schedule of the convergence path associated with the minimum of the upper limit as the resource allocation schedule.
6. The method according to claim 5, wherein, Each of the first plurality of mixed-integer programming (MIP) solvers is configured to generate a mixed-integer solution of the power grid resource allocation profile at the first time step, wherein the mixed-integer solution has a corresponding upper limit of the power grid resource allocation profile.
7. The method according to claim 6, wherein, Each of the first plurality of mixed integer programming (MIP) solvers is further configured to generate an integer relaxation solution of the power grid resource allocation profile at the second time step, wherein the integer relaxation solution has a corresponding lower bound of the power grid resource allocation profile.
8. The method according to claim 7, wherein, The plurality of obtained convergence paths include a second plurality of convergence paths obtained by solving a second power grid resource allocation profile different from the first plurality of mixed integer programming (MIP) solvers, wherein each of the second plurality of solvers is initialized with different initial conditions, such that each of the second plurality of solvers converges along a different convergence path, wherein each of the second plurality of solvers is configured to generate a solution of the second power grid resource allocation profile at the second time step, the solution of the second power grid resource allocation profile at the second time step having a corresponding lower bound of the power grid resource allocation profile.
9. The method according to claim 8, wherein, The second power grid resource allocation profile is the Lagrange relaxation (LR) function of the power grid resource allocation profile.
10. The method according to claim 5, wherein, The first time point, the second time point, and the third time point are the same time point.
11. The method according to claim 5, wherein, The first time point is different from the second time point, wherein if the first time point is after the second time point, then the third time point is the first time point, wherein if the first time point is before the second time point, then the third time point is between the first time point and the second time point, is the same as the first time point, or is the same as the second time point.
12. The method according to claim 5, wherein, Generating the resource allocation schedule also includes: In response to determining that the generated difference is greater than the predetermined threshold, a second difference is generated between the minimum of the second upper bound of the plurality of obtained convergence paths and the maximum of the second lower bound of the plurality of obtained convergence paths, wherein, at a fourth time, each of the plurality of obtained convergence paths includes a second upper bound, wherein, at a fifth time, each of the plurality of obtained convergence paths includes a second lower bound, and wherein, at a sixth time, each of the plurality of obtained convergence paths includes a second intermediate resource allocation schedule, wherein the fourth time, the fifth time, and the sixth time are after the latest of the first time, the second time, and the third time; and If the second difference is less than the predetermined threshold, the resource allocation schedule is generated, which corresponds to the second intermediate response allocation schedule of the convergence path associated with the value of the second upper limit.
13. A system for operating a power grid, the system being configured to: A power grid resource allocation profile is generated by the processor of the power grid's power management system. The power grid resource allocation profile indicates the operation of the power grid constrained by the power grid's operation information. The power grid resource allocation profile is solved using multiple mixed integer programming (MIP) solvers, each of which is initialized with different initial conditions, such that each of the multiple MIP solvers converges along different convergence paths to obtain multiple convergence paths. The processor generates the difference between the minimum value of the upper bounds of the plurality of obtained convergence paths and the maximum value of the lower bounds of the obtained convergence paths; and If the generated difference is less than a predetermined threshold, the processor generates a resource allocation schedule for operation within the power grid, the resource allocation schedule corresponding to a convergence path associated with the minimum of the upper limit, the resource allocation schedule being configured to be received at the power grid resource.
14. The system of claim 13, further comprising: Transmitter, the transmitter being configured to transmit the resource allocation schedule to the power grid resources; as well as The power grid resources are configured to be controlled according to the resource allocation and scheduling.
15. The system according to claim 13, wherein, At a first time, each of the plurality of obtained convergence paths includes an upper limit, wherein at a second time, each of the plurality of obtained convergence paths includes a lower limit, and wherein at a third time, each of the plurality of obtained convergence paths includes intermediate resource allocation scheduling.
16. The system according to claim 15, wherein, The system is also configured to generate the resource allocation schedule by selecting the intermediate resource allocation schedule of the convergence path associated with the minimum value of the upper limit as the resource allocation schedule.
Citation Information
Patent Citations
Integrated solution techniques for security constrained unit commitment problem
US20190286993A1