An-improved-algorithm-for-single-unit-commitment-_2021_Electric-Power-System
An-improved-algorithm-for-single-unit-commitment-_2021_Electric-Power-System
Keywords: The single-unit commitment problem (1UC) is the problem of finding a cost optimal schedule for a single
Dynamic programming generator given a time series of electricity prices subject to generation limits, minimum up- and downtime and
Single-unit commitment problem ramping limits. In this paper we present two efficient dynamic programming algorithms. For each time step we
Polynomial-time algorithm, keep track of a set of functions that represent the cost of optimal schedules until that time step. We show that we
can combine a subset of these functions by only considering their minimum. We can construct this minimum
either implicitly or explicitly. Experiments show both methods scale linear in the amount of time steps and result
in a significant speedup compared to the state-of-the-art for piece-wise linear as well as quadratic generation
cost. Therefore using these methods could lead to significant improvements for solving large scale unit com
mitment problems with Lagrangian relaxation or related methods that use 1UC as subproblem.
⁎
Corresponding author at: Department of Information and Computing Sciences Utrecht University, the Netherlands.
E-mail addresses: [email protected] (R.H. Wuijts), [email protected] (M. van den Akker), [email protected] (M. van den Broek).
https://doi.org/10.1016/j.epsr.2020.106720
Received 4 October 2019; Received in revised form 18 April 2020; Accepted 2 August 2020
Available online 12 September 2020
0378-7796/ © 2020 The Author(s). Published by Elsevier B.V. This is an open access article under the CC BY license
(http://creativecommons.org/licenses/by/4.0/).
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
track of a finite number of points where the power production could be 3. Problem definition
optimal.
A solution is represented as two vectors x ∈ {0, 1}n and p n.
2
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
c (_) = otherwise (8) chapter we will present a method to construct Ft equivalent to Fran
gioni and Gentile [2] but in a declarative way which is in our opinion
ft (pt ) t = 1, P pt P more intuitive.
ft (pt ) + c (off tM1down ) + cstart t > 1, = 1, P pt SU Constructing the first Ft1 is easy since ft is given as input and
c (off tM1down ) is just a single value. The hard part of constructing Ft is
Ft (pt ) = ft (pt ) + min+ Ft 11 t > 1, > 1, P pt P
pt 1 [pt , pt + ] taking the sliding window minimum of Ft 11. Suppose pt* 1 is a point in
(pt 1 ) [ P , P ] for which Ft 11 is minimal:
otherwise 1
pt* 1 = argmin pt F
1 [ P, P ] t 1
(pt 1 )
(9)
In this section we define the state space and the corresponding recur To find the value of min pt 1 [pt +, pt + ] Ft 11 (pt 1 ) for a given pt three
rence relation that solves it. cases can be identified equivalent to those of Frangioni and Gentile [2]:
The state space represents the possible states of the generator for
1
each time step. Every state at time t has a set of feasible transitions to Ft 1 (pt + ) pt < pt* 1
states at time t + 1 which depends on ramping limits and minimum up min+ Ft 11 (pt 1 ) = Ft 11 (pt* 1 ) pt* 1 pt pt* 1 + +
and down time. It is therefore necessary to keep track of how long a pt 1 [pt , pt + ]
Ft 11 (pt +) pt > pt* 1 + +
generator has been on or off, until the minimum up- or downtime is
reached, and to keep track of the power output pt [ P , P ] when a (16)
generator is on. The set of states that a generator can be in at time t is
In other words, if pt can be reached from pt* 1 within the ramping
defined as:
limits, i.e. with a subtraction smaller than or an addition smaller
{off t {1 Mdown}} than + then min pt 1 [pt +, pt + ] Ft 11 (pt 1 ) = Ft 11 (pt* 1 ) . Otherwise pt is
St = either smaller than pt* 1 or larger than pt* 1 + +. In the first case,
{(ont , pt ) {1 max(t , Mup )}, pt [ P , P ]} (15)
since this function is convex, the largest feasible pt 1 is optimal. Which
See Fig. 1 for the binary commitment variables statespace and is given by pt 1 = pt + . Similar for the second case the smallest
transitions. The state off t represents the state at time t where the gen feasible pt 1 is optimal. Which is given by pt 1 = pt +. The idea is
erator is off for τ time steps, but when = Mdown it represents that the illustrated in Fig. 2.
generator is off for at least Mdown time steps. The state (ont , pt ) re Suppose the function Ft 11 consists of m piece-wise functions
presents that at time t a generator is on for τ time steps and produces pt gt 1 gtm 1 over m intervals:
1
at time t.
[ P , pt1 1 ], [pt1 1 , pt2 1 ], , [ptm 1 1 , P ] (17)
We will now define the recurrence relation c(st) that for each state st
returns the cost of the optimal 1UC schedule at time t that ends in st
(1)–(8). For each state st this is defined as the cost of that state, the gti 1 (pt 1 ) = Ft 1
1 (pt 1 ) pt 1 [pti 1
pti 1 ] (18)
1,
minimum of c (st 1) over states st 1 that can transition towards st and the
transitions costs. Suppose pt* 1 falls in interval k, pt* 1 [ptk 11 , ptk 1 ]. We now observe that
At t = 1 the generator can be in any state with only the cost of being pt min pt 1 [pt +, pt + ] Ft 1 1 (pt 1 ) consists of m + 2 piece-wise
in that state and no transition cost, (1) and (5). functions gt1 gtm + 2 which we can explicitly construct from the previous
For t > 1 we can formulate every possible state transition that re intervals. These intervals are given by:
spects ramping limits and minimum up- and downtime and define the
recurrent part of the recurrence relation by (2)–(4) and (6)–(7). [ P , pt1 ], , [ptk , ptk + 1 ], , [ptm + 1 , P ] (19)
There are three types of transitions to a state where the generator is
off. First, we can get to the first off-state offt1 from an on-state (ont 1, pt )
where the generator is on for at least Mup time steps and produces less max( P , pti 1 ) i<k
than the shutdown limit SD (2). Secondly we can get to the off-state off t max( P , pt* 1 ) i=k
pti =
that is off for τ > 1 time steps from an off-state that is off for 1 time min(P , pt* 1 + +) i=k+1
steps (3). Thirdly, If = Mdown we can also get to the last off-state
min(P , pti 12 + +) i k+2 (20)
off tMdown from off tM1down (4).
For the on-states it is almost similar. We can only get to the on-state
(ont1, pt ), where pt is less than the startup limit SU, from an off-state
off tM1down where the generator is off for at least Mdown time steps (6). We
can get to on-state (ont , pt ) that is on for τ > 1 time steps from an on-
state (ont 11, pt 1 ) if the difference between pt and pt 1 respects the
ramp-up + and ramp-down limit (7).
5. Constructing Ft
3
Proof is omitted for brevity but convexity is easy to see if you look at the Fig. 1. The commitment statespace and transitions of 7 time steps. The off-
epigraph of the new function created in (16). states are represented as white nodes and the on-states as black nodes.
3
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
Table 1
Overview 1UC algorithms .
ft is convex
3
Frangioni et al. [2] O(n )
Frangioni et al. [12] O(n3) O(n2m) m= max intervals
RRF (this work) O(n3) O(n2m)
RRF+ (this work) O(n4) O(nmk2) k= max relevant functions
Proposition 6.1. If a function Ft has the property p [P, P ] > 1 = Mup P pt P (25)
Ft (p) > min [Mup, t ] Ft (p) then a schedule in which the generator at time
t is on for τ time steps cannot be optimal. ft (pt ) t = 1, P pt P
Proof is omitted for brevity. The idea is that for any t and pt [ P , P ] ft (pt ) + c (offtMdown
1 ) + cstart t > 1, = 1, P pt
all states (ont , pt ) where τ ∈ {Mup, t} have equivalent state transitions. SU
Therefore the antecedent implies there exists a better schedule for every 1
ft (pt ) + min+ Ht t > 1, 1 < < Mup, P
pt [ P , P ]. Therefore Ft (p) can be forgotten and consequently all
1
pt 1 [pt , pt + ]
Ht (pt ) = pt P
following Ft ++i i , 1 ≤ i < n. (pt 1 )
Irrelevant functions can be identified in multiple ways. One way is
ft (pt ) + min+ min t > 1, = Mup, P pt
to trace the minimum of all Ft functions and mark those that are part of pt 1 [pt , pt + ]
the minimum. After that we can remove those functions Ft that are not 1 P
{Ht 1 (pt 1 ), Ht 1 (pt 1 )}
marked. The minimum can be traced by finding the function Ft that has
the minimal value at P. This function is part of the minimum and if it
otherwise (26)
intersects with another function at any point in [ P , P ] then that function In this section we present a different but equivalent recurrence re
is also part of the minimum. We can find every function by iteratively lation that is based on the fact that it is only necessary to keep track of
finding intersections. how long a generator has been on up until the minimum uptime is
We call the algorithm that solves the recurrent relation (1)–(8) by reached. Therefore we could reduce the state space by reformulating
constructing the Ft functions without removing irrelevant ones: RRF the states St (15) to St :
and the algorithm that removes the irrelevant functions RRF+. The
whole procedure of RRF and RRF+ is outlined in Algorithm 1. {offt {1 Mdown}}
St =
{(ont , pt ) {1 Mup}, pt [ P , P ]} (27)
6.1. Time complexity See Fig. 3 for the binary commitment variables statespace and transi
tions. Now the state (ont , p) represents the state at time t where the
Let m be the maximum number of intervals of all Ft functions at any generator is on for τ time steps and produces pt at time t but when
time and let k be the maximum number of relevant functions at any = Mup it represents that the generator is on for at least Mup time steps.
time: Besides reducing the state space this also introduces an additional
4
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
Let the set Q be defined as: All algorithms where written in C# and run on an i7-8700K
3.70 GHz processor running on Windows 10.
1. B ∪ {SD}⊆Q
2. if p ∈ Q and p + > P then p + Q 9.1. Results
5
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
Table 2 1UC problems and k was at most 5 and m at most 10 (Table 4). These
Overview 1UC algorithms. values where the same across all time horizons and did not increase
ft is convex piece-wise linear when we increased n. We can also see the direct result of the linear vs
quadratic growth in Fig. 4.
Author/ Name Time Time Detailed Restrictions The algorithm RRH is a direct improvement to Guan*. For some
Fan et al. [4] O(n3) + = , SU = SD instances where the set of optimal points Q is small (Table 4) there is
Guan et al. [3] O(n) O(n · |Q|2) + = , SU = SD
little to no difference (A110,GA10) but for other instances where Q is
RRH (this work) O(n) O(n · |Q|)
much larger this difference becomes significant (see TAI38 and
Table 3
Average computation time to solve 1UC of 10 time series of electricity prices for all generators in 5 instances for 3 horizons (100, 500, and 1000 time steps), both for
the piece-wise linear and quadratic cost function (in milliseconds).
ft is linear ft is quadratic
GA10 100 0.2 0.3 0.8 2.2 17.1 0.6 2.5 22.6
TAI38 1 37.2 0.4 1.7 16.1 0.4 2.1 100
A110 0.1 0.2 0.4 1.6 13.1 0.3 2.1 17.4
KOR140 0.2 0.8 0.4 1.5 12.4 0.3 2 141.4
RCUC200 2.3 101.5 0.5 1.9 20.9 0.4 2.3 105.4
GA10 500 0.7 1.6 3.5 55.1 162.9 2.7 60.3 453.4
TAI38 4.3 191.9 2.4 44.1 44.8 1.7 52.6 853.2
A110 0.5 0.7 1.5 38.8 56.8 1.2 51.2 317.4
KOR140 1.1 3.8 2.4 38.4 55.2 1.7 49.7 2436.5
RCUC200 11 497.4 2.5 49.5 141.2 1.9 57.3 3410.9
GA10 1000 1.4 3.5 6.7 213.4 395.5 5.3 237.7 1355.8
TAI38 8.7 380.7 4.7 167.9 112.8 3.4 208.4 3838.3
A110 0.8 1.3 2.9 148.5 128.2 2.4 198.3 977.2
KOR140 2.2 7.8 4.8 152 122.2 3.4 198.9 3398.6
RCUC200 21.8 991.1 4.9 192 391.2 3.8 225.7 4980
Table 4
Per instance, maximum values of m, k and |Q| all generators in all time steps of
10 horizons with 10 time series of electricity prices.
ft is linear ft is quadratic
6
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
7
R.H. Wuijts, et al. Electric Power Systems Research 190 (2021) 106720
needed to compute the minimal points. for unit commitment problems, IISE Trans. 50 (8) (2018) 735–751.
The recursive rules of Q come from the following observation: [4] W. Fan, X. Guan, Q. Zhai, A new method for unit commitment with ramping con
straints, Electr. Power Syst. Res. 62 (3) (2002) 215–224.
suppose we want to know the value of Ft (pt ) for some point [5] Q. Zhai, X. Guan, F. Gao, Optimization based production planning with hybrid
pt ∈ {B ∪ SD}. The value of this point is constructed from the minimum dynamics and constraints, IEEE Trans. Autom. Control 55 (12) (2010) 2778–2792.
in [pt +, p + ]. From Proposition Appendix A.2 we know this [6] S.O. Orero, M.R. Irving, Large scale unit commitment using a hybrid genetic al
t
gorithm, Int. J. Electr. Power Energy Syst. 19 (1) (1997) 45–55.
minimum is in Q {pt +, p + } . The set Q therefore needs to
t [7] K.-Y. Huang, H.-T. Yang, C.-L. Huang, A new thermal unit commitment approach
contain all the points that are on the path found by backtracking from using constraint logic programming, IEEE Proceedings of the 20th International
optimal points. Conference on Power Industry Computer Applications, (1997), pp. 176–185.
[8] S.A. Kazarlis, A.G. Bakirtzis, V. Petridis, A genetic algorithm solution to the unit
From (28) its easy to see the three propositions also hold for Ht .
commitment problem, IEEE Trans. Power Syst. 11 (1) (1996) 83–92.
Moreover Q are the only points we need to store to represent Ht . [9] J.-B. Park, et al., An improved particle swarm optimization for nonconvex economic
dispatch problems, IEEE Trans. Power Syst. 25 (1) (2010) 156–166.
References [10] A. Frangioni, C. Gentile, F. Lacalandra, Tighter ap proximated MILP formulations
for unit commitment problems, IEEE Trans. Power Syst. 24 (1) (2009) 105–113.
[11] J. Ostrowski, M.F. Anjos, A. Vannelli, Tight mixed integer linear programming
[1] I.D.L. Wim van Ackooij, A. Frangioni, Fabrizio lacalandra and milad tahanan, large- formulations for the unit commitment problem, IEEE Trans. Power Syst. 27 (1)
scale unit commitment under uncertainty: an updated literature survey, Ann. Oper. (2009) 39–46.
Res. 271 (1) (2018) 11–85. [12] A. Frangioni, C. Gentile, New MIP formulations for the singleunit commitment
[2] A. Frangioni, C. Gentile, Solving nonlinear single-unit commitment problems with problems with ramping constraints, IASI Research Report (2015).
ramping constraints, Oper. Res. 54 (4) (2006) 767–775.
[3] Y. Guan, K. Pan, K. Zhou, Polynomial time algorithms and extended formulations