Method to accelerate the processing of multiperiod optimal power flow problems

Information

  • Patent Grant
  • 11080362
  • Patent Number
    11,080,362
  • Date Filed
    Thursday, March 30, 2017
    7 years ago
  • Date Issued
    Tuesday, August 3, 2021
    3 years ago
Abstract
A method is disclosed for optimizing the power flow in an electric power network including a plurality of buses interconnected by transmission lines, and locally connected to loads, generators, and storage devices, the method executing an interior point optimisation algorithm in a computer system to solve an optimal control problem, which is defined over a time period of interest T, and is associated with an objective function representing the total fuel consumption of the generators for the time period of interest T, wherein the objective function depends on a plurality of parameters of the network, such as bus voltages, generator, and storage device powers. the parameters of the network allowed to vary over a large number N of predefined time intervals, each of duration δt, obtained by subdivisions of the time period of interest T and is subject to network constraints. The time and memory required to achieve the solution to the optimal control problem is drastically reduced over general purpose NLP methods, due to exploitation in the calculations involved in the Schur complement algorithm of the repetition of constant in time block matrices of charging and discharging ratios of the storage devices inside off diagonal blocks in a reorder KKT system.
Description
CROSS-REFERENCE TO RELATED APPLICATION

This application is a national stage application of International Application No. PCT/EP2017/057632, filed Mar. 30, 2017, which is incorporated herein by reference in its entirety, including any figures, tables, and drawings.


FIELD OF APPLICATION

The present invention relates generally to electric power networks. More specifically, it concerns the power flow optimization of electric power networks that involve energy storage devices.


PRIOR ART

A method for optimizing electric power flows in a power network, more particularly in a power grid having alternating current (AC) circuits, is addressed to determine bus voltages and generator power levels in order to minimise power generation costs or other costs (market related) or transmission losses. The minimization of the costs is subject to power flow engineering and operational constraints that can include the AC power flow constraints, bounds on power generation, bounds on bus voltage magnitudes, bounds on thermal losses, and limits on power transfer on transmission lines. Bus voltages and generator power levels are determined as a solution of an Optimal Power Flow (OPF) problem. In this respect, several methods known to solve the OPF problem are briefly commented on below.


Conventional power flow optimization methods assume small differences between phase angles at buses, to reduce quadratic equalities and inequalities to linear equalities and inequalities. However, these methods cannot be applied to all networks and they lead to suboptimal solutions.


Other methods such as second-order cone programming (SOCP) employ convex relaxations of OPF problems. However, relaxed convex optimizations methods cannot guarantee feasible solutions.


Further known methods relax OPF problems to semidefinite programming (SDP), which requires changing resistances of lossless lines in the network, restrictions on the network topology or constraints, or require modification of the network to ensure global optimality.


These methods are affected by the following drawbacks. They do not consider that the amount of energy that is stored, charged, or discharged in batteries at any time is critically dependent on the amount that is actually charged or discharged from the batteries at that time.


They ignore time dependent changes for equipment, and use devices such as step voltage regulators, voltage transformers, or capacitor banks. These devices are typically expensive and frequent changes in their operations can lead to quick degradation of the equipment and eventually result in dramatic reduction in the life of the device.


Modern real-time operations require the AC-OPF problem to be solved weekly in 8 hours, daily in 2 hours, hourly in 15 minutes, each five minutes in 1 minute and for self-healing post-contingency in 30 seconds (Mary B Cain, Richard P O'neill, and Anya Castillo. History of optimal power flow and formulations. Federal Energy Regulatory Commission, pages 1-36, 2012). To meet these constraints, system operators have to adopt varying levels of approximations such as, simplified OPF tools based on linear programming (LP) and de-coupled (DC) system models. As a result today's approximate solution techniques may unnecessarily cost tens of billions of dollars per year, and result to environmental harm from unnecessary emissions and wasted energy.


General nonlinear programming (NLP) methods have also been employed for the solution of OPF problems. These methods are adapted to properly optimise the electric power flow taking into account all the nonlinearities, and a plurality of time periods necessitated by time-varying parameters of power network equipment. These methods do not adopt any approximations or simplifications that would result in unnecessarily higher cost of energy, wasted energy and environmental harm.


Despite their robustness however, NLP methods have not been widely adopted in real-time operations of large-scale power systems. This is due to the fact that the multiperiod optimal power flow (MPOPF) problem a system operator seeks a solution to, is time-coupled due to power network equipment such as energy storage devices, an example of which are batteries. Its complexity increases quickly with an increasing number of the time periods, over which power network equipment parameters are set to vary with time, to the point of intractability. As a result NLP methods require high computational times and large amounts of computer memory in order to solve the MPOPF problem. In other words, the NLP methods currently known are not suitable for real-time operations and cannot be adopted by the industry for controlling the power network. Historically, this is mainly due to the lack of time and memory efficient AC-OPF algorithms.


SUMMARY OF THE INVENTION

The idea at the base of the present invention is to provide a method that can take advantage of the particular structure and properties of the MPOPF problem, in order to reduce the solution time and memory consumption to the minimum even for very large values of the number of time periods of operation of the power grid.


The disclosed invention describes a system and a method for operating an electric power system that determines optimal bus voltages and phases angles as well as optimal generator active and reactive powers, such that an objective function representing the cost of power generation or other cpsts (market related), or transmission losses is either minimised or maximised. This is achieved by an interior point structure-exploiting optimization method that is tailored to deliver unprecedented performance and reduce the memory consumption to minimum.


The present invention accomplishes the foregoing objectives by providing a structure-exploiting optimization method that provides the capability of optimal power flow over multiple time periods of operation to complex power systems. A power system or network in this sense refers to an electrical power system or an electrical network that includes energy storage devices.


More specifically, power flow in an electric power network is optimised during multiple time periods of operation by solving an optimal control problem using an interior point method designed to exploit the structure and the properties of the optimal control problem for an electrical power system with energy storage devices, in order to deliver significant reduction of the computing time and the memory consumption.


More specifically, the embodiments of the invention provide a sparse structure-exploiting KKT system Schur factorization and solution method that is adapted to the modeling of the power system components.


Additionally, a structure exploiting low memory Schur complement dense LDLT solver is also provided that achieves optimal time and memory factorization and solution of the dense Schur complement system, required by the structure-exploiting sparse KKT factorization and solution methods.


To accommodate very large problems arising for a sufficiently large number of time periods of operation, the invention also provides an alternative structure-exploiting algorithm that keeps the memory requirements approximately comparable to the memory consumption if a single time period of operation is assumed. This way both objectives of computational time and memory reduction are achieved.


On the basis of the idea mentioned above, the technical problem is solved by a method for optimizing the power flow in an electric power network, the electric power network including a plurality of buses interconnected by transmission lines, and locally connected to loads, generators and storage devices;


the method executes an interior point optimization algorithm in a computer system to solve an optimal control problem defined over a time period of interest T, where an objective function associated with the optimal control problem represents a total fuel consumption of the generators for said time period of interest T,


the objective function depending on a plurality of parameters of the network, bus voltages, generator, and storage devices powers, the parameters of the network allowed to vary over a number N of predefined time intervals each of duration δt obtained by subdivisions of said time period of interest T, wherein said objective function is subject to engineering constraints imposed by the safe and robust functionality of the devices of said network, such as limits on bus voltages, limits on generator and storage devices powers, and thermal power flow limits on the transmission lines, characterized by the fact that said interior point optimization algorithm includes the steps of:


storing a KKT system associated with the optimality conditions for the Lagrangian associated with the objective function and the constraints defined for the time period T, the KKT system including a Hessian matrix H;


reordering the KKT system to obtain a reordered KKT system where the Hessian matrix H after the reordering has an arrowhead structure with diagonal blocks An, and off diagonal blocks Bn comprising several identical copies of constant in time matrix B of charging and discharging ratios of the storages devices;


executing a direct Schur complement based factorization and solution algorithm on the reordered KKT system;


returning output parameters for the network devices, namely, buses, loads, generators, and storages devices as a solution of the optimal control problem for each of the time intervals.


Advantageously, the time and memory required to achieve the solution to the optimal control problem are drastically reduced over general purpose NLP methods, due to exploitation, in the calculations involved in the Schur complement algorithm, of the repetition of constant in time block matrices B of charging and discharging ratios of the storage devices inside the off diagonal blocks Bn in the reorder KKT system.


In the following description, the expressions “time interval” and “time periods” are used as synonyms.


The dependent claims disclose further features of the method and system according to the present invention, and the effects and advantages thereof are given here below, together with a detailed explanation of how the method is embodied.





BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the invention, reference is made to the following description and accompanying drawings, in which:



FIG. 1 is a schematic of the power network of the benchmark case IEEE30 used by the embodiments of the present invention;



FIG. 2 is a schematic of the power network of the benchmark case IEEE118 used by the embodiments of the present invention;



FIG. 3 is a schematic of the power network of the benchmark case PEGASE1354 used by the embodiments of the present invention;



FIG. 4 is a schematic of the power network of the benchmark case PEGASE13659 used by the embodiments of the present invention;



FIG. 5 is a diagram representing a network demand for a 24 hour period;



FIG. 6 is two diagrams representing the number of iterations until convergence of the method of present invention (MPFOPT) together with other popular NLP based OPF methods, wherein the control parameters vary over N=2880 predefined time intervals (top) and N=1200 time intervals (bottom). In both cases after the 5th iteration, the diagrams partially overlap (and are not precisely distinguishable) due to the fact that all methods converge to the same objective;



FIG. 7 is a plot representing the sparse structure of the Hessian matrix of the KKT system for the power grid described by the case IEEE30 according to the method of the prior art, wherein the control parameters vary over N=5 predefined time intervals of the time period T of interest;



FIG. 8 is a plot representing the sparse structure of the Hessian matrix associated with the reordered KKT system derived from the KKT system of FIG. 7, according to a method step of the present invention;



FIG. 9 is a plot representing the sparse structure of the auxiliary matrix Pn for n=1, associated with the reordered KKT system of FIG. 8;



FIG. 10 is a plot representing the sparse structure of the auxiliary matrix Pn for n=1, associated with a reordered KKT system similar to that of FIG. 8, wherein the number of predefined time intervals is set to N=240;



FIG. 11 is a diagram comparing the time to find the optimal power flow of the network according to the method of the present invention (MPFOPT) to the time to find the optimal solution according to three different prior art methods (MIPS, IPOPT, KNITRO), for different values N of predefined time intervals;



FIG. 12 is a diagram comparing the average time per iteration to find the optimal solution according to two embodiments of the present invention (MPFOPT, MPFOPTmem) to the average time per iteration to find the optimal solution according to two different prior art methods (MIPS, IPOPT), for N=3600 up to N=8760 predefined time intervals;



FIG. 13 is a diagram representing the time of different steps of the method of the present invention, for different values of N; and



FIG. 14 is another diagram comparing the average time per iteration to find the optimal solution according to two embodiments of the present invention (MPFOPT, MPFOPTmem) to the average time per iteration to find the optimal solution according to three different prior art methods (MIPS, IPOPT, KNITRO), for the solution of the benchmark cases listed in Table 3.





DETAILED DESCRIPTION

The Network


Hereafter a method for optimizing the power flow in an electric power network according to the present invention is described in more detail.


The electric power network includes a plurality of buses interconnected by transmission lines, and locally connected to loads, generators, and storage devices. More particularly, the power network may consist of NB buses, locally connected to loads that consume power, and NG generators supplying active and reactive power to the network. The buses are interconnected by NL transmission lines. NS storage devices, an example of which are batteries, are also installed at a subset of the buses of the network. The network topology is represented (associated) by a directed graph custom character(custom character,custom character), where custom character stands for the nodes of the graph, representing the NB buses, whereas custom character stands for the directed edges of the grid that represent the NL transmission lines. It is evident that |custom character|=NB and custom character|=2NL. Finally let custom character denote the set of generators.


Sample electric power networks schematics used by the embodiments of the present invention are provided in FIG. 1, FIG. 2, FIG. 3, and FIG. 4, for the power grids of cases IEEE30, IEEE118, PEGASE1354, and PEGASE13659 correspondingly. The numbered circles denote the buses of the grid, and the transmission lines are represented with line segments connecting the circles representing the buses. The arrows attached on the circles directed downwards, represent loads locally connected to the buses. Smaller circles enclosing a tilde or the letter ‘c’ represent the generators connected to the buses.


Although the circle numbers, segments, arrows, tildes and other symbols in FIG. 2, FIG. 3, and FIG. 4, are not readable, and are even less comprehensible in FIG. 3, and FIG. 4, the scope of these figures is not to precisely identify buses, transmission lines, and their connections to generators or loads, but instead to give an idea on the increasingly higher complexity of the networks that can be processed by the method of the present invention.


The MPOPF Problem


In general the OPF problem optimises the operation of an electric power system, specifically, the generation and transmission of electricity, subject to the physical constraints imposed by electrical laws, network operations, and engineering limits on the decision variables. The objective is to minimise generation cost, maximise market surplus, or minimise active transmission loses.


Modern trends for large-scale integration of renewable energy sources, however, bring additional challenges to power grid operations and modeling. Distributed energy storage devices are commonly employed as an effective approach for addressing operational challenges. However, the modeling of storage devices results in intertemporal coupling of the individual OPF problems defined at each subdivision of the time period of interest. The resulting MPOPF problem becomes intractable, for prior art methods, prohibiting using these methods for forecasting and planning over long time periods or even small time periods subdivided into a large number of smaller time intervals to allow for exploitation of more precise data about the network. According to the method of the present invention, as will be apparent from the following description, such an MPOPF problem may be solved in a time effective way. The following input parameters to the MPOPF may be taken into consideration.


Input to the MPOPF Problem


Input parameters to the optimal control method MPFOPT are the following.


1. custom character(custom character,custom character), NG, NL, NS: The graph, the number of generators, the number of transmission lines, and the number of storage devices.


2. IG, IS: The locations of generators, and the locations of storage devices.


3. αl, βl, γl: The conductance and the susceptance of the line, as well as the shunt capacitance γl of the line for l∈custom character.


4. dbP, dbQ: Active and reactive power demand at bus b∈custom character.


5. flmax: Thermal flow limit for every line l∈custom character.


6. Vbmax, Vbmin: Maximum and minimum voltage level for each bus b∈custom character.


7. pgmax, pgmin: Maximum and minimum active power levels for each generator g∈custom character.


8. qgmax, qgmin: Maximum and minimum reactive power levels for each generator g∈custom character.


9. custom charactertmax, custom charactertmin: Maximum and minimum tap ratio limits for transformer t∈custom character.


10. ag, bg, cg: Constant, linear, and quadratic term of the power generation cost function for generator g∈custom character.


11. ηc,s, ηs,d: Charging and discharging ratios for each storage device s∈S.


Objectives


One of the most frequent objectives of the MPOPF problem is to minimise generation cost. Assuming g∈G and ag, bg, cg are cost related coefficients for each generation unit, the generation cost is usually approximated as a quadratic function of the associated powers of each unit:











f


(

p
n
g

)


=





n
=
1

N






g
=
1


N
G






a
g



(

p
n
g

)


2



+


b
g



p
n
g


+

c
g



,




(
1
)








although any nonlinear form could be used other than the quadratic. Other nonlinear functions are also not excluded representing either market surplus or active transmission loses.


Constraints of the MPOPF Problem


At every time period n=1, 2, . . . , N the MPOPF problem is subject to linear and nonlinear equality and inequality constraints. For clarity and simplicity, the time dependence indicated by the subscript n from every variable is introduced only later in the description, to emphasize the intertemporal time coupling introduced by the linear inequality constraints related to the energy levels of the storage devices.


Let custom characteri stand for the set of buses connected through a transmission line to the ith bus. Let l be a transmission line from bus i to bus j, l=(i,j), and θiji−θj. The MPOPF constraints are the following:


1. Reference bus b0:

θb0=0.  (2)

2. Equality constraints: Kirchhoff's current law





















g
|

I
g


=
b




p
g


-

d
b
P


=




l



i





f
l
P



,



b




,





(
3
)


















g
|

I
g


=
b




q
g


-

d
b
𝒬


=





l



i





f
l
𝒬


-


1
2



V
b
2






l



i





γ
l





,



b




,





(
4
)







f
l
P

=

{







α
l



V
i
2


-


V
i




V
j



(



α
l



cos


(

θ
ij

)



+


β
l



sin


(

θ
ij

)




)




,





l



,









α
l




V
i
2


𝒯
t
2



-




V
i



V
j



𝒯
t




(



α
t



cos


(

θ
ij

)



+


β
t



sin


(

θ
ij

)




)



,





l

𝒯

,

bus





i





tapped

,









α
l



V
i
2


-




V
i



V
j



𝒯
t




(



α
t



cos


(

θ
ij

)



+


β
t



sin


(

θ
ij

)




)



,





l

𝒯

,

bus





j





tapped

,









(
5
)







f
l
𝒬

=

{







-

β
l




V
i
2


-


V
i




V
j



(



α
l



sin


(

θ
ij

)



-


β
l



cos


(

θ
ij

)




)




,





l



,









-

β
l





V
i
2


𝒯
t
2



-




V
i



V
j



𝒯
t




(



α
t



sin


(

θ
ij

)



-


β
t



cos


(

θ
ij

)




)



,





l

𝒯

,

bus





i





tapped

,









-

β
l




V
i
2


-




V
i



V
j



𝒯
t




(



α
t



sin


(

θ
ij

)



-


β
t



cos


(

θ
ij

)




)



,





l

𝒯

,

bus





j






tapped
.











(
6
)








3. Nonlinear inequality constraints: thermal line flow

(fl,nP)2+(flQ)2≤(flmax)2 ∀l∈custom character.  (7)

4. Box constraints: active and reactive power

pgmin≤pg≤pgmax ∀g∈custom character,  (8)
qgmin≤qg≤qgmax ∀g∈custom character,  (9)

5. Box constraints: voltage levels and angles

θbmin≤θb≤θbmax ∀b∈custom character,  (10)
Vbmin≤Vb≤Vbmax ∀b∈custom character,  (11)

6. Linear inequality constraints: energy level of storages


The energy level of the storage devices ϵn at the nth time period, is computed from ϵn−1 through the formula

ϵnn−1+Bpn−1S,n=1,2, . . . ,N,  (12)

where pnS=[(pnSd)T (pnSc)T]T custom character2Ns is the vector of active storage power injection at the nth time period and the matrix B∈custom characterNS×2NS is









B
=

δ






t


[




-

η

d
,
1


-
1
















η

c
,
1


-
1























































-

η

d
,

N
s



-
1
















η

c
,

N
s



-
1





]







(
13
)








with ηd,i, and ηc,i, i=1, . . . , NS being the discharging and charging efficiencies. The vector of storage levels has to be bounded at each time period n,

ϵmin≤ϵn≤ϵmax.  (14)

Additionally, the storage level at the end of the dispatch horizon N may be required to match its initial value in order to prevent depletion of the storage:

ϵN0.  (15)

Both constraints are linear and they can be jointly written as












[




ϵ
min






ϵ
min











ϵ
min






ϵ
0




]




ϵ

S
,
min








[




ϵ
0






ϵ
0











ϵ
0






ϵ
0




]




E
0



+



[



B


0





0




B


B





0


















B


B





B




B


B





B



]




E
s






[




p
1
S






p
2
S











p
N
S




]




p
s








[




ϵ
max






ϵ
max











ϵ
max






ϵ
0




]




ϵ

S
,
max





,




(
16
)








where the equality constraint has been written as an inequality constraint with equal upper and lower bounds.


The MPOPF Problem


The resulting optimization problem is a general nonlinear optimization problem:












minimize

θ
,
v
,
p
,
q











n
=
1

N






l
=
1


N
G






a
l



(

P
n
l

)


2




+


b
l



P
n
l


+


c
l







(
MPOPF
)










subject





to






(
2
)


,

(
3
)

,

(
4
)

,

(
7
)

,

(
8
)

,

(
9
)

,

(
10
)

,



(
11
)








n


=
1

,
2
,





,

N
.






(
16
)








Each one of the control parameter vectors {θ, v, p, q} stands for the variables from the time periods n=1, . . . , N. The angles are ordered as θ=[θ1T, . . . , θNT]T. The voltages, the active, and the reactive powers are ordered similarly. The N OPF problems could be solved independently from each other if it was not for storage inequality constraints (16) that couple storage powers from all time steps. For this reason the N OPF problems have to be solved coupled with the storage inequality constraints. The resulting (MPOPF) problem can be solved using any general purpose NLP solver like IPOPT (Andreas Wächter and Lorenz T. Biegler. Line search filter methods for nonlinear programming: motivation and global convergence. SIAM J. Optim., 16(1):1-31 (electronic), 2005), (Andreas Wächter and Lorenz T. Biegler. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program., 106(1, Ser. A):25-57, 2006), MIPS (H. Wang, C. E. Murillo-Sanchez, R. D. Zimmerman, and R. J. Thomas. On computational issues of market-based optimal power flow. IEEE Transactions on Power Systems, 22(3):1185-1193, August 2007), or KNITRO (Richard H. Byrd, Jorge Nocedal, and Richard A. Waltz. Knitro: An Integrated Package for Nonlinear Optimization, pages 35-59. Springer U S, Boston, Mass., 2006. ISBN 978-0-387-30065-8). The computational complexity grows quickly for longer dispatch horizons N. However, according to the method of the present invention as specifically disclosed below, a particularly efficient solution is found due to the special structure of the time coupling storage constraints defined by ES.


Interior Point Methods


The present invention proposes an efficient IP algorithm, MPFOPT, particularly designed for MPOPF problems. The MPFOPT algorithm is demonstrated to provide several orders of magnitude faster solution times than standard optimization methods like IPOPT, MIPS, and KNITRO, using significantly fewer amounts of memory. The (MPOPF) problem can be abbreviated as a general nonlinear optimal control problem with both linear and nonlinear inequality constraints:











minimize
x







f


(
x
)











(
IP
)








subject





to







c
E



(
x
)



=
0

,




(
a
)








h
min



h


(
x
)




h
max


,




(
b
)








a
min


Ax


a
max


,




(
c
)








x
min


x


x
max


,




(
d
)








where x∈custom characterNx, cE (x) ∈custom characterNE and (IP) (c) accounts for the equality constraints (2), (3), and (4) of the (MPOPF), h(x) ∈custom characterNh and (IP) (b) represents the thermal inequality constraints (7), the matrix A∈custom characterNA×Nx introduces linear inequality constraints (IP) (c) related to the storage devices (16), and (IP) (d) represents the box constraints on active and reactive powers (8), (9), and voltages (10) and angles (11).


In the above Nx=2NB+2NG stands for the total number of control variables, NE=2NB+2NG the number of equality constraints, Nh=4Ne the number of nonlinear inequality constraints, and NA=(N+1) NS the number of linear inequality constraints.


Interior Point Solution Framework


The method of the present invention executes an interior point optimization algorithm in a computer system to solve the optimal control problem defined over a time period of interest T, where the objective function associated with the optimal control problem represents the total fuel consumption of the generators for the time period of interest T.


For clarity, we let nonlinear and linear inequality constraints be represented by the single vector cI(x). The vectors indicating the combined inequality constraints and their associated lower and upper bounds are












c
I



(
x
)


=

[




h


(
x
)






Ax




x



]


,


c
min

=

[




h
min






a
min






x
min




]


,


c
max

=


[




h
max






a
max






x
max




]

.






(
17
)








Slack variables s∈custom characterNh+NA, s>0, are introduced to convert inequality constraints to equality constraints shifting the upper and lower bounds to themselves as non negativity constraints. The non negativity constraints then are replaced by the standard log barrier function, obtaining a sequence of μ-subproblems (IP(μ)),












minimize
x







f


(
x
)



-

μ





i
=
1

N



log


(

s
i

)





,




(

IP


(
μ
)


)








subject





to







c
E



(
x
)



=
0

,




(
a
)










c
I



(
x
)


-
s

=
0

,




(
b
)






s
>
0.




(
c
)








Each subproblem (IP(μ)) is solved approximately and while μ decreases, the solution of the next barrier problem is obtained using, as a starting guess, the approximate solution of the previous one. While the barrier parameter μ>0 is driven to zero and provided that the objective function and the constraints are sufficiently smooth, the limit of the corresponding solutions of (IP(μ)) satisfies first order optimality conditions for (IP) when the constraint Jacobian has full rank (Jorge Nocedal and Stephen J. Wright. Numerical Optimization: Springer Series in Operations Research and Financial Engineering. Springer, 2006). The algorithm does not require the feasibility of the iterates with respect to the inequality constraints, but only forces the slack variables to remain positive. The solutions of (IP(μ)) are critical points of the Lagrangian function










L


(

x
,
s
,

λ
E

,

λ
I


)


=


f


(
x
)


-

μ





i
=
1

N



log


(

s
i

)




+


λ
E





c
E



(
x
)



+


λ
I




(



c
I



(
x
)


-
s

)







(
18
)








and thus satisfy the KKT conditions

xf(x)+λTExcE(x)+λITxcI(x)=0,
−μe−SλI=0,
cE(X)=0,
cI(x)−s=0,  (19)

where the last of the equations has been obtained by post multiplying with S=diag (s) and e is a vector with all its entries equal to one. For convenience, we define the Jacobian of the equality constraints JE=∇xcE(x) and the Jacobian of the inequality constraints JI=∇xcI(x).


The optimality error E0 (x, s, λE, λI) is defined as the maximum of the ∥ ∥norms of the individual parts of the KKT conditions (19), appropriately scaled to account for the case where the Lagrange multipliers λI, λE and the slack variables s can become very large (see (Andreas Wächter and Lorenz T. Biegler. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program., 106(1, Ser. A):25-57, 2006) for details). The algorithm terminates if the optimality error at an approximate solution (xkT, skT, λEkT, λIkT)T is such that E0(xk, sk, λEk, λIk)≤ϵtol, where ϵtol is the user provided error tolerance.


According to the present invention, the interior point algorithm is characterized by the fact of executing the following steps:


storing a KKT system associated with the optimality conditions for the Lagrangian associated with said objective function and said constraints defined for said time period T, the KKT system including a Hessian matrix H;


reordering the KKT system to obtain a reordered KKT system where the Hessian matrix H after the reordering has an arrowhead structure with diagonal blocks An and off diagonal blocks Bn comprising several identical copies of constant in time matrix B of charging and discharging ratios of said storages device;


executing a direct Schur complement based factorisation and solution algorithm on said reordered KKT system;


returning output parameters for said network, buses, loads, generators and storages devices as a solution of said optimal control problem for each of said time intervals.


All these steps are explained in more detail below.


Solution of the Barrier Subproblem (IP(μ))


The computation of the search direction is obtained by a damped Newton method applied on the KKT conditions (19). Let k denote the iteration counter for the problem (IP(μ)). The solution update iterate (xk+1, sk+1, λEk+1, λIk+1), is obtained from (xk, sk, λkE, λIk) and the search directions (δxk, δsk, δλEk, δλIk), which are computed from the linearisation of the KKT conditions at (xk, sk, λkE, λIk), to obtain the KKT system












[



H


0



J
E





J
I






0




-

S

-
1





Λ
I




0



-
I






J
E



0


0


0





J
I




-
I



0


0



]



[




δ






x
k







δ






s
k







δ






λ
E
k







δ






λ
I
k





]


=

-

[






(



x



f


(
x
)



)



+


J
E




λ
E


+


J
I




λ
I










-
μ







S

-
1



e

-

λ
I








c
E



(
x
)









c
I



(
x
)


-
s




]



,




(
20
)








where H=∇xxL and, similarly for S, ΛI=diag (λI). To enforce symmetry we have multiplied the second equation with S−1. In practice, however, in order to guarantee certain descent properties of the filter line-search procedure (Andreas Wächter and Lorenz T. Biegler. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program., 106 (1, Ser. A):25-57, 2006), the diagonal blocks of the KKT matrix at the left-hand side of (20) are modified by multiples of the identity matrix as described in (Andreas Wächter and Lorenz T. Biegler. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program., 106 (1, Ser. A):25-57, 2006). For large-scale optimal control problems, the computation of the search directions determines the running time of the optimal control problem. Hence, any attempt accelerating the solution of (IP) should focus on the efficient solution of the KKT linear system (20).


Solution of the KKT System


A widespread approach for solving KKT systems consists of employing black-box solution techniques of multifrontal sparse LU type (O. Schenk and K. Gärtner. On fast factorization pivoting methods for sparse symmetric indefinite systems. Elec. Trans. Numer. Anal., 23:158-179, 2006), (Timothy A. Davis and lain S. Duff. An unsymmetric-pattern multifrontal method for sparse lu factorization. SIAM Journal on Matrix Analysis and Applications, 18(1):140-158, 1997), (Hsl. a collection of fortran codes for large scale scientific computation. URL http://www.hsl.rl.ac.uk), due to their accuracy and robustness. However, such solvers are not aware of the particular structural properties of the generated KKT systems, which appropriately exploited could result in significant computational savings. According to the invention, a direct sparse technique adapted to the temporal structure of the MPOPF problem is used.


Temporal Structure Revealing Ordering


Each one of the variables of every iterate (x, s, λE, λI) represents the corresponding parameters from all time periods. More precisely,

x=[θT VT pT qT]T,θ=[θ1T θ2T . . . θNT]T,

and the rest of the variables v, p, q are ordered in a similar way. According to the invention, the following ordering has been adopted to reveal the temporal structure of the Hessian:

u=[x1TE1TI1T,s1T, . . . xNTENTINT,sNTAT]T,  (21)

where the variables xn, are ordered as

xn=[θnT VnT pnT qnT]T,  (22)

and sE custom characterNs are the slack variables for the storage equality constraints (16), introduced as an inequality constraint with identical upper and lower bounds. This constraint couples all time steps and unless it is ordered after all other variables, we cannot then obtain the reordered KKT system (24). Under the new ordering (21) the Hessian matrix obtains the arrowhead structure with the diagonal blocks An also reordered:










[




A
1



















B
1











A
2














B
2












































A
N




B
N






B
1





B
2








B
N




C



]

,






A
n

=


[




H
n




J
En





J
In




0





J
En



0


0


0





J
In



0


0



-

S
n






0


0



-

S
n





Λ
In




]

.






(
23
)








The sparse structure of the Hessian for the power network described by case IEEE30 with N=5 is depicted in FIG. 7 before the reordering and in FIG. 8 after the reordering. The reordered KKT system becomes











[




A
1



















B
1











A
2














B
2












































A
N




B
N






B
1





B
2








B
N




C



]



[




x
1






x
2











x
N






x
c




]


=

[




b
1






b
2











b
N






b
c




]





(
24
)








and it is solved with the Schur-based approach described next.


The Direct Schur-Based Approach


The arrowhead structure of the reordered KKT system (24) calls for a direct Schur-complement-based solution approach. The algorithm is well known (Cosmin G. Petra, Olaf Schenk, Miles Lubin, and Klaus Gärtner. An augmented incomplete factorization approach for computing the schur complement in stochastic optimization. SIAM Journal on Scientific Computing, 36 (2): C139-C162, 2014b), (C. G. Petra, O. Schenk, and M. Anitescu. Real-time stochastic optimization of complex energy systems on high-performance computers. Computing in Science Engineering, 16 (5):32-42, September 2014a) and it is sketched in Alg. 1 for the factorization and Alg. 2 for the associated solution. The Schur complement of each individual block at the step Alg.1.5, is computed by an incomplete augmented factorization technique that solves the sparse linear systems with multiple right-hand sides at once using an incomplete sparse factorization of an auxiliary matrix. This technique is implemented in the direct sparse solver PARDISO (O. Schenk and K. Gärtner. On fast factorization pivoting methods for sparse symmetric indefinite systems. Elec. Trans. Numer. Anal., 23:158-179, 2006); see (Cosmin G. Petra, Olaf Schenk, Miles Lubin, and Klaus Gärtner. An augmented incomplete factorization approach for computing the schur complement in stochastic optimization. SIAM Journal on Scientific Computing, 36(2):C139-C162, 2014b), (C. G. Petra, O. Schenk, and M. Anitescu. Real-time stochastic optimization of complex energy systems on high-performance computers. Computing in Science Engineering, 16(5):32-42, September 2014a) for more details. The auxiliary matrix provided to PARDISO is the augmented block matrix Pn,











P
n

=

[




A
n




B
n






B
n




0



]


,




(
25
)








the structure of which is depicted in FIG. 9 for the power network described by case IEEE30 and N=5 and in FIG. 10 for the same power network and N=240. In this mode, PARDISO factorizes only the An, block of the matrix and then computes the Schur complement Sn, which is a dense matrix if the columns of Bn, are all nonzero. The final Schur complement Sc is in general dense, or it consists of a very large dense block. The dense system at the step Alg.1.8 and Alg.2.7 can be solved with a dense LU decomposition using LAPACK (E. Anderson, Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen. LAPACK Users' Guide. Society for Industrial and Applied Mathematics, Philadelphia, Pa., third edition, 1999).


For a relatively small number of time periods N<100, Alg. 1, Alg. 2, and PARDISO applied on the prereordered KKT system (20) have similar runtime performance. However, as the number of time periods N increases, the Schur complements Sn of the augmented Pn blocks exceed by far the size of the An blocks. As a result the solution approach based on Alg. 1, Alg. 2 becomes ineffective both with respect to the computational time and with respect to memory consumption, compared with the direct sparse solver PARDISO applied on the original prereordered KKT system (20). The performance, however, can be further improved by exploiting the particular structure of the off diagonal blocks Bn described next.












Algorithm 1 Direct Schur-based factorization.















 1: function DIRECTSCHURFACTORIZATION(An, Bn, C, n = 1, ..., N)


 2:  Sc := C


 3:  for n = 1 : N do


 4:   [Ln, Un] := pardisoFactorize(An)


 5:   Sn := −BnAn−1BnT


 6:   Sc := Sc + Sn


 7:  end for


 8:  [Ls, Us] := luFactorize(Sc)


 9:  return [Ln, Un], n = 1, ..., N, [Ls, Us]


10: end function



















Algorithm 2 Direct Schur-based back substitution.















 1: function DIRECTSCHURBACKSUBSTITUTION([Ln, Un], Bn,


  n = 1, ..., N,b)


 2:  rc := bc


 3:  for n = 1 : N do


 4:   yn:= pardisoSolve(Ln, Un, bn)


 5:   rc := rc − Bnyn


 6:  end for


 7:  xc := luSolve(Ls, Us, rc)


 8:  for n = 1 : N do


 9:   rn := bn − BnTxc


10:   xn := pardisoSolve(Ln, Un, rn)


11:  end for


12:  return x


13: end function










Exploiting Constant in Time Blocks of Bn

For a general Bn the reordering of the KKT system (20) does not lead to an approach more efficient than the one implemented in general purpose direct sparse solvers (O. Schenk and K. Gärtner. On fast factorization pivoting methods for sparse symmetric indefinite systems. Elec. Trans. Numer. Anat., 23:158-179, 2006), (Hsl. a collection of fortran codes for large scale scientific computation. URL http://www.hsl.rl.ac.uk), (Timothy A. Davis and lain S. Duff. An unsymmetric-pattern multifrontal method for sparse lu factorization. SIAM Journal on Matrix Analysis and Applications, 18(1):140-158, 1997), despite the convenient arrowhead sparse structure that allows the direct Schur complement-based algorithm, Alg. 1. The equations of storage devices however, give rise to Bn with special properties that allow for a much more efficient implementation of Alg. 1.


More precisely, the matrices Bn, n=1, 2, . . . , N, obtain the form











[




B
1






B
2











B
n











B
N




]

=

[



0



B
1
1



B


B


B





B




0



B
2
1




B
2
2



B


B





B



























0



B
n
1



O



B
n
2



B





B



























0



B
N
1



0


0





0



B
N
2




]


,




(
26
)








where







O
=

0

n
-
2



,


0
m

=


[



0


0





0



]



m



,





and B∈custom characterNA×Ns. It is not hard, after some algebraic manipulations, to see that the Schur complement matrix for the nth block Sn will obtain the form










S
n

=



[



0


0


O


0


0





0




0



S
11



O



S
12




S
10







S
10





O


O


O


O


O





O




0



S
12




O



S
22




S
20







S
20





0



S
10




O



S
20





S
00







S
00




























0



S
10




O



S
20





S
00








S
00




]

n

.





(
27
)








Let Sn3 be the top 3 by 3 block matrix of Sn:










S
n
3

=


[




S
11




S
12




S
10






S
12





S
22




S
20






S
10





S
20





S
00




]

.





(
28
)








It is evident from the structure of Sn that only Sn3 needs to be computed, since the rest of the rows and columns are direct replicates of the entries of the last row and column of Sn3. Thus, the computation of Sn becomes independent of the number of time periods N and it only depends on the number of storage devices NS, since each one of the blocks of Sn has size NS×NS. The global Schur complement S, after the end of the loop at Alg.1.7 will have the form











S
c

=

[




S
11




S
12




S
13




S
14







S

1

N







S
12





S
22




S
23




S
23







S
23






S
13





S
23





S
33




S
34







S
34






S
14





S
23





S
34





S
44







S
45


























S

1

N






S
23





S
34





S
45








S
NN




]


,




(
29
)








where each block of the first block row and column have dimensions 2NS×2NS, whereas the remaining blocks of Sc have dimensions NS×NS. Storing Sc due to its special structure, requires only three block vectors: one for the first block column S1 of size 2NS(N+1)×2NS, one for the diagonal blocks Sd of size NS×NNS, and one for the off diagonal blocks So of size NS×(N−1)NS,

S1=[S12 S13 S14 . . . S1N],  (30)
Sd=[S22 S33 S44 . . . SNN],  (31)
So=[S23 S34 S45 . . . SN−1N],  (32)

significantly reducing this way the storage requirements for Sc.


The matrix Sc may be written as a 2 by 2 block matrix











S
c

=

[




S
11




S
1






S
1





S
22




]


,




(
33
)








where the matrix S22 is what remains from Sc if we remove the first block row and column. The vectors rc, xc may be partitioned as rc=[rc1 rc2]T, xc=[xc1 xc2]T, where the size of xc1 is equal to the number of rows of the S11 block. Once the Schur complement Sc has been computed, the dense linear system on line Alg.2.7 has to be solved for xc.


This is achieved by forming the Schur complement of Sc with respect to the S11 block as described in Alg. 3. The operator S22 in all three steps of Alg. 3 is inverted












Algorithm 3 Schur-based method for the Schur system.

















1: function SOLVEDENSESCHUR(S11, S1, S22, rc)



2:  S := S11 − S1S22−1S1T



3:  xc1 := S−1(rc1 − S1S22−1rc2)



4:  xc2 := S22−1(rc2 − S1Txc1)



5:  return xc



6: end function











by an LDLT factorization (Gene H. Golub and Charles Van Loan. Matrix Computations. The Johns Hopkins University Press, 3rd edition, 1996). The factorization has complexity O(n3) for general symmetric matrices of custom charactern×n and the associated back substitution has complexity O(n2). Exploiting the fact that the blocks below the main diagonal of each column of S22 are identical, we can perform the factorization in O(n2) operations. At the same time, according to the present invention, in order to save memory we can operate in block vector representations of the matrices instead of dense block matrices. The algorithms described next operate on the block vector representation Sd, So, of the matrix S22. The LDLT factorization of S22 only requires block vector representation of the factors. This process is summarized in Alg. 4. The back substitution can be performed in O(n) instead












Algorithm 4 Structure-exploiting LDLT factorization.

















 1: function BLOCKLDLTFACT(Sd, So)



 2:  L := Sd, U := So, D := So



 3:  for k = 1 : N − 1 do



 4:   Lk+1 := Lk+1/Dk



 5:   for j = k + 1 : N − 1 do



 6:    Dj := Dj − Lk+1Uk+1



 7:    Lj+1 := Lj+1 − Lk+1Uk+1



 8:    Uj+1 := Uj+1 − Lk+1Uk+1



 9:   end for



10:   DN := DN − LNUN



11:  end for



12:  return L, D, U



13: end function











of O(n2). This process is summarized in the Alg. 5. Since the matrix S22 has a block structure with N−1 blocks in custom characterNS×NS, the complexity for the factorization is O((N−1)2NS3) and for the back substitution O((N−1)NS2).












Algorithm 5 Structure-exploiting LDLT backsubstitution.
















 1: function BLOCKLDLTSOLVE(L, D, U, B)



 2:  Y := B
  custom character  Solve LY = B


 3:  Ys:= L2Y1


 4:  for k = 1 : N − 1 do


 5:   Yk := Yk − Ys


 6:   Ys := Ys + Lk+1 Yk


 7:  end for


 8:  YN := YN − Ys


 9:  XN := DN YN

custom character  Solve DUX = Y



10:  Xs := XN


11:  for k = N − 1 : 1 do


12:   Xk := Yk − Uk+1Xs


13:   Xk := Dk Xk


14:   Xs := Xs + Xk


15:  end for


16:  return X


17: end function










Memory Economical Approach


The factorization phase described in Alg. 1 stores all the sparse LU factorizations of the N matrices An in memory. However, for very detailed power grid models the associated matrices An can be very large. The same is true even for small power grid models and high values of N. In these cases the memory for storing the L, U factors may become critical and thus the approach described in Alg. 1 and Alg. 2 may not be applicable.


To remedy this problem, according to an aspect of the present invention, Alg. 6 is provided. This algorithm sacrifices performance, computing the factorisation of each diagonal block An twice. First during the computation of the global Schur complement and Schur right-hand side, at line Alg. 6.5, for computing the local contribution Sn to the global Schur-complement matrix Sc and the contribution to the Schur right-hand side rc. Then the factorisation is computed one more time at line Alg. 6.13 for computing the solution vector xn, at line Alg. 6.15. Once the factorisation serves its purpose, the algorithm releases the memory occupied by the L, U factors and proceeds to the next block An+1. In contrast to the approach described by Alg. 1, only memory for a single factorisation is needed.












Algorithm 6 Low memory Schur-based approach.

















 1: function BLOCKLDLTSOLVE(An, Bn, C, bn, n = 1, ..., N)



 2:  Sc := C



 3:  rc := bc



 4:  for n = 1 : N do



 5:   [Ln, Un] := pardisoFactorize(An)



 6:   Sn := −BnAn−1BnT



 7:   Sc := Sc + Sn



 8:   yn := pardisoSolve(Ln, Un, bn)



 9:   rc := rc − BnYn



10:  end for



11:  rc := Sc−1rc



12:  for n = 1 : N do



13:   [Ln, Un] := pardisoFactorize(An)



14:   rn := bn − BnTxc



15:   xn := pardisoSolve(Ln, Un, rn)



16:  end for



17:  return xn, n = 1,..., N



18: end function











Results


In this section, the performance of MPFOPT, according to the method of the present invention, for several benchmark cases of increasing complexity, is evaluated. Simulations are performed on the reference grids modeled by IEEE30, IEEE118, PEGASE1354, and PEGASE13659 included in the MATPOWER library. The associated graphs for these networks are depicted in FIG. 1, FIG. 2, FIG. 3, and FIG. 4. We remark that the scope of these figures is not to precisely identify buses, transmission lines, and their connections to generators or loads, but instead to give an idea on the increasingly higher complexity of the networks that can be processed by the method of the present invention.


The simulation specific parameters for the grid are summarized in Table 1. For comparison we also consider three alternative optimisation algorithms provided in the MATPOWER 6.0 library (R. D. Zimmerman, C. E. Murillo-Sanchez, and R. J. Thomas. MATPOWER: Steady-State Operations, Planning, and Analysis Tools for Power Systems Research and Education. IEEE Transactions on Power Systems, 26(1):12-19, February 2011), namely, IPOPT (Andreas Wächter and Lorenz T. Biegler. Line search filter methods for nonlinear programming: motivation and global convergence. SIAM J. Optim., 16(1):1-31 (electronic), 2005), (Andreas Wächter and Lorenz T. Biegler. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program., 106(1, Ser. A): 25-57, 2006) and MIPS (H. Wang. On the Computation and Application of Multi-period Security-constrained Optimal Power Flow for Real-time Electricity Market Operations. PhD thesis, Electrical and Computer Engineering, Cornell University, May 2007), (H. Wang, C. E. Murillo-Sanchez, R. D. Zimmerman, and R. J. Thomas. On computational issues of market-based optimal power flow. IEEE Transactions on Power Systems, 22(3):1185-1193, August 2007), that adopt an IP approach, and KNITRO (Richard H. Byrd, Jorge Nocedal, and Richard A. Waltz. Knitro: An Integrated Package for Nonlinear Optimization, pages 35-59. Springer U S, Boston, Mass., 2006. ISBN 978-0-387-30065-8), which implements a trust-region algorithm. All our benchmarks ran on a workstation equipped with an Intel(R) Xeon(R) CPU E7-4880 v2 at 2.50 GHz and 1 TB RAM.


For all simulations, the length of the time period is δt=1 hour. The 24 hour load scaling profile kD(t) depicted in FIG. 5 was used for all benchmarks as a scaling factor of the nominal load demands sD given in the MATPOWER source files to generate a time dependent load kD(t)sD. The profile shows significant fluctuations due to local PV infeed that was not modeled as dispatchable generator. To create load scalings for benchmarks with N>24, the profile was appended to itself repeatedly.


In each case file, the storages are located at the first NS buses with positive active load demand, according to the MATPOWER source file. The storage sizes ϵmax are chosen to contain up to 2 hours of the nominal active power demand of the storage buses. If storage i is located at bus k, then ϵimax=2 pnD,k and ϵmin=0. The storages are initially at a 70% charging level with ϵ0=0.7ϵmax. The storage power ratings are limited to allow a complete discharging or charging within 3 hours or 2 hours. If pin is the discharging or charging power of storage k, then pimaxkmax/3 or pimin=−ϵkmax/2. All storage discharging and charging efficiencies are chosen as ηd,i=0.97 and ηc,i=0.95.









TABLE 1







Power grid models.











Name
Buses
Branches
Generators
Storages














IEEE30
30
41
6
6


IEEE118
118
186
54
9


PEGASE1354
1354
1991
260
50


PEGASE13659
13659
20467
4092
100









The comparison of different optimisation algorithms is not fair unless all of them converge to the same optimal solution. This is demonstrated for all solvers in FIG. 6 for N=1200 and N=2880 where we see that all of them converge to the same objective value. The plots for all other cases are very similar and do not provide any further insights. The norms of the optimal solutions obtained with all solvers agree up to the optimality tolerance which was set to 10−5.


We observe that both IPOPT and MPFOPT have identical convergence histories. It worth noting that the objective, the infeasibility norm (not shown here), and the optimality norm for MPFOPT and IPOPT are indistinguishable. This is due to the fact that MPFOPT adopts a direct technique for solving the KIT system and, thus, it achieves a highly accurate solution similar to that obtained with direct sparse solvers like PARDISO.


A collective comparison of the performance of all solvers is provided in FIG. 11, where the total time is shown in log scale needed by each one of the solvers, MPFOPT, IPOPT, MIPS, and KNITRO to optimize the case study IEEE118 for several values of the number of time periods from N=240 up to N=2880. It is evident that MPFOPT has a similar performance to the other solvers for a very small number of time periods. However, as the number of time periods increases MPFOPT outperforms all other solvers providing orders of magnitude faster solution times. We observe that the performance gap between MPFOPT and all other solvers increases with increasing values of N. For N=2880 MPFOPT requires approximately 0.4% of the time needed by the best competitor, which in this case is IPOPT.


The performance the method of the present invention, MPFOPT, to optimize the









TABLE 2







Case IEEE118. Wall time (s) spent for the solution of the KKT system,


for function evaluations (objective, gradient, Jacobian, Hessian) and


for all other operations of the MPFOPT algorithm.













N
KKT rows
Iters.
KKT
Functions
MPFOPT
Average
















240
330738
24
14.3
16.4
3.2
0.4


480
661458
24
26.7
30.2
6.6
0.8


1200
1653618
23
66.3
82.7
22.7
2.2


1440
1984338
23
87.7
116.3
34.3
2.9


2400
3307218
23
159.9
205.2
74.7
5.4


2880
3968658
23
194.9
255.4
98.5
6.7


3600
4960818
23
265.9
360.5
150.9
9.3


4320
5952978
23
330.7
424.1
207.2
11.7


4800
6614418
23
395.2
501.5
260.1
13.9


5760
7937298
22
509.8
657.9
395
18.9


7200
9921618
23
738.3
1030.5
757.5
26.9


8760
12071298
23
1009.6
1515.6
1203.8
37.9










case study IEEE118 beyond the previous range of time periods N, is shown for several values of N up to N=8760 in Table 2. The average time per iteration for N=3600 up to N=8760 corresponding to one year with a time step size corresponding to one hour, is shown in FIG. 12. For this set of benchmarks, KNITRO needed more than 1 TB of memory for N=3600 and it terminated with a related error message. For N=8760, IPOPT failed due to overflow of the number of nonzero entries in the L,U factors. It is worth noting that MPFOPTmem, the memory saving approach of MPFOPT that implements Alg. 6, although it is slightly slower than the normal mode of MPFOPT (Alg. 1, Alg. 2), it is still almost four orders of magnitude faster than all other approaches and needs approximately two orders of magnitude less memory than IPOPT. No upper bound on the relative speedup of MPFOPTmem versus the other solvers exists since the gap in performance grows with increasing values of N.


We present next the performance of different components of the MPFOPT algorithm in FIG. 13. We observe that the solution of the KKT system, which consists of Alg. 1 and Alg. 2 as well as the time spent for the initialisation, shares approximately one third of the total execution time. The rest of the time is spent in function evaluations, meaning the computation of the objective, the constraints, the Hessian of the Lagrangian, the Jacobian of the constraints, and internal operations of the MPFOPT algorithm.









TABLE 3







Benchmark cases for FIG. 14. The second column shows the value


of the time period N for each case, and the third column the


associated size of the KKT matrix.











Name
N
nrows















IEEE30A
2880
956172



IEEE30B
4800
1593612



PEGASE1354A
240
3408100



PEGASE1354B
1200
17040100



PEGASE13659A
240
34869320



PEGASE13659B
720
104607560










Finally we present in FIG. 14 the average time per iteration of all algorithms for the solution of the benchmark cases listed in Table 3. We have used two different values of N for each case. For case IEEE30 we used N=2880, N=4800, for PEGASE1354 N=240, N=1200, and for PEGASE13659 N=240, N=720. The interrupted green bar corresponding to KNITRO for case IEEE30 with N=4800 and case PEGASE13659, N=720 indicated that KNITRO needed more than 1 TB of RAM. Although the MIPS algorithm shows a similar performance to IPOPT for a small network like IEEE30 even for large values of N=2880, we see that the same thing is not true for the larger networks PEGASE1354, PEGASE13659, where MIPS is about one order of magnitude faster than IPOPT. However, both MPFOPT and MPFOPTmem algorithms still exceed every other competitor by orders of magnitude.


While the preferred embodiments of the invention have been shown and described, modifications and variations may be made by those skilled in the art without departing from the spirit and scope of the present invention. It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, because certain changes may be made in carrying out the above method and in the construction(s) set forth without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense. It is also to be understood that the following claims are intended to cover all of the generic and specific features of the invention herein described and all statements of the scope of the invention which, as a matter of language, might be said to fall therein.

Claims
  • 1. A method for optimizing the power flow in an electric power network, said electric power network including a plurality of buses interconnected by transmission lines, and locally connected to loads, generators, and storage devices, the method executes an interior point optimisation algorithm in a computer system to solve an optimal control problem defined over a time period of interest T, where an objective function associated with said optimal control problem represents a total fuel consumption of the generators for said time period of interest T,said objective function depending on a plurality of parameters of said network, bus voltages, generator, and storage devices powers, said parameters of the network allowed to vary over a number N of predefined time intervals each of duration δt obtained by subdivisions of said time period of interest T, wherein said objective function is subject to constraints of said network, bus voltages, generator, and storage devices powers,characterized by the fact that said interior point algorithm includes the steps of: storing a KKT system associated with the optimality conditions for the Lagrangian associated with said objective function and said constraints defined for said time period T, the KKT system including a Hessian matrix H;reordering the KKT system to obtain a reordered KKT system where the Hessian matrix H after the reordering has an arrowhead structure with diagonal blocks An, and off diagonal blocks Bn comprising several identical copies of constant in time matrix B of charging and discharging ratios of said storages device which are:executing a direct Schur complement based factorisation and solution algorithm on said reordered KKT system;returning output parameters for said network, buses, loads, generators, and storages devices as a solution of said optimal control problem for each of said time intervals, wherein the time and memory required to achieve the solution to the optimal control problem is drastically reduced over general purpose NLP methods, due to exploitation in the calculations involved in said Schur complement algorithm of the repetition of constant in time block matrices B of charging and discharging ratios of the storage devices inside the off diagonal blocks Bn in the reorder KKT system.
  • 2. Method according to claim 1 wherein said parameters include a) (, ), NG, NL, NS: The graph, the number of generators, the number of transmission lines, and the number of storage devices.b) IG, IS: The locations of generators, and the locations of storage devices.c) αl, βl, γl: The conductance and the susceptance of the line, as well as the shunt capacitance γl of the line for l∈.d) dbP, dbQ: Active and reactive power demand at bus b∈.e) flmax: Thermal flow limit for every line l∈.f) Vbmax, Vbmin: Maximum and minimum voltage level for each bus b∈.g) pgmaxpgmin: Maximum and minimum active power levels for each generator g∈.h) qgmin, qgmin: Maximum and minimum reactive power levels for each generator g∈.i) tmax, tmin: Maximum and minimum tap ratio limits for transformer t∈.j) ag, bg, cg: Constant, linear, and quadratic term of the power generation cost function for generator g∈.k) ηc,s, ηs,d: Charging and discharging ratios for each storage device s∈S.
  • 3. Method according to claim 1, wherein said reordered KKT system is in the form
  • 4. Method according to claim 1, wherein said Hessian matrix is in the form
  • 5. Method according to claim 1, wherein said off diagonal blocks Bn, n=1, 2, . . . , N, are in the form
  • 6. Method according to claim 1, wherein the Schur complement matrix at each time interval Sn is in the form
  • 7. Method according to claim 1, wherein the charging/discharging ratios of said storage devices are constant in time, and in the sparse Schur complements computed for each time interval by the interior point algorithm, only a small subset of block entries, independent on the number of time periods N are computed and stored in the structure of the local sparse Schur complement.
  • 8. Method according to claim 1, wherein said Schur-complement-based algorithm computes and stores the global Schur complement using only 3 block vectors consisting of N dense blocks of size NS by NS, where NS is the number of storage devices.
  • 9. Method according to claim 1, wherein said Schur-complement-based algorithm uses a novel LDLT factorisation and back substitution of the dense global Schur complement using only three block vectors reducing the complexity of the standard LDLT algorithm from cubic to quadratic for the factorisation step and from quadratic to linear for the back substitution step, and the storage requirements of said computer system from O(NS2 N2) to O(NS2 N).
  • 10. Method according to claim 1, wherein the parameters for the optimizing include an admittance matrix based on a branch impedance and a bus fixed shunt admittance, and flow capacity ratings.
  • 11. Method according to claim 1, where said output parameters comprise complex valued voltages, active and reactive power levels of generators, and energy storage device rate of charge.
  • 12. Method according to claim 1, where said objective function depends on active power generation variables, reactive power generation variables, complex valued voltages.
  • 13. Method according to claim 1, wherein the objective function is quadratic.
  • 14. Method according to claim 1, where the objective function represents market surplus.
  • 15. Method according to claim 1, where the objective function represents active transmission line losses.
  • 16. Method according to claim 1, where equality constraints, inequality constraints, and bounds on decision variables are set to model limits of feasible operation of the network.
  • 17. Method according to claim 1, further comprising modeling bounds on power generation, bounds on voltage magnitude at buses, bounds on rate of charge of batteries, bounds on state-of charge of batteries, and constraints on power transferred on lines.
  • 18. Method according to claim 1, where the electric power network includes energy storage devices, and the multiple time periods are coupled to accommodate charging and discharging of the power storage devices at any particular time.
  • 19. Method according to claim 1, where the multiple time periods of operation of the electric network are due to bounds on power generation, bounds on voltage magnitude at buses, bounds on rate of charge of batteries, bounds on state-of-charge of batteries, constraints on the power transferred on the lines and thermal losses.
  • 20. Method according to claim 1, where the constraint ϵN=ϵ0, defined to prevent depletion of the storages at the end of the dispatch horizon of time period T, is defined several times within the dispatch horizon of period T at the end of M subdivisions of duration Δt, (Δt>δt) each.
PCT Information
Filing Document Filing Date Country Kind
PCT/EP2017/057632 3/30/2017 WO 00
Publishing Document Publishing Date Country Kind
WO2018/177529 10/4/2018 WO A
US Referenced Citations (8)
Number Name Date Kind
8756556 Raghunathan Jun 2014 B1
9176171 Bickel Nov 2015 B2
10296988 Mitra May 2019 B2
10390307 Mendil Aug 2019 B2
10424935 Varma Sep 2019 B2
10591945 Ditlow Mar 2020 B2
10892640 Kuroda Jan 2021 B2
20150199606 Raghunathan Jul 2015 A1
Foreign Referenced Citations (1)
Number Date Country
2773005 Sep 2014 EP
Non-Patent Literature Citations (6)
Entry
Kourounis et al., “Efficient solution of large scale multi-stage optimal power flow problems using interior point methods”, ECCOMAS Congress Jun. 2016, Greece, Abstract, https://eccomas2016.org/proceedings/pdf/8168.pdf.
ECCOMAS Congress 2016 VII European Congress on Computational Methods in Applied Sciences and Engineering, Jun. 2016, Greece, Programme, European Community on Computational Methods in Applied Sciences.
Ochoa et al., “Minimizing Energy Losses: Optimal Accommodation and Smart Operation of Renewable Distributed Generation”, IEEE Transactions on Power Systems, vol. 26, No. 1, Feb. 2011, pp. 198-205.
Gopalakrishnan et al., “Global Optimization of Multi-period Optimal Power Flow”, 2013 American Control Conference (ACC), Washington, DC, USA, Jun. 17-19, 2013, pp. 1157-1164.
Wang et al., “A Multi-Period Optimal Power Flow Model including Battery Energy Storage”, 2013 IEEE Power & Energy Society General Meeting, 2013, pp. 1-5.
International Search Report and Written Opinion, PCT International Application No. PCT/EP2017/057632, PCT/ISA/210, PCT/ISA/220, PCT/ISA/237, dated Jan. 16, 2018.
Related Publications (1)
Number Date Country
20200042569 A1 Feb 2020 US