You are on page 1of 32

ECSE 6140 Power Generation and Control

Hydrothermal Coordination

Prof. Joe H. Chow

Rensselaer Polytechnic Institute


ECSE Department

September 22, 2021


Operation Constraints of Hydraulic Turbine-Generator
Hydraulic turbine-generators have zero fuel costs (mostly)
However, the operation of hydraulic units can have many
constraints, such as
Daily and weekly water usage: seasonal variations – springtime
snow melt; irrigation
Keeping river levels within certain limits: flood control and
navigation
Pumped hydro units: schedule for pumping and generation; total
water storage in reservoir
Short-term hydro scheduling:
One has to use a certain amount of water in a day or week, which
becomes an equality constraint
Thus the hydro-thermal scheduling problem is on how to best use
this amount (volume) of water to reduce the fuel cost of the
thermal plants to meet the loads over a period of time.

J.
c H. Chow Hydrothermo September 22, 2021 2 / 32
System Model

1 , P2 , ..., PT
Load forecast: Pload load load
Assume each period is 1 hour
Hydro plant model
r = inflow (known, based on forecast)
V = volume
q = discharge
s = spillage

J.
c H. Chow Hydrothermo September 22, 2021 3 / 32
Problem Formulation
Optimize the thermal unit fuel cost
T
X
min Ftotal = FS (PSt )
t=1

subject to generation and load balance (with losses) (T constraint


equations)

φt = Pload
t t
+ Ploss − (PSt + PHt ) = 0, for all t

where PHt is the hydro unit power output,


water usage constraint for the day (1 equation)
T
X
q t = qtot
t=1

The initial condition is V o = Vs , the starting volume.


J.
c H. Chow Hydrothermo September 22, 2021 4 / 32
Additional constraints
End point (final) volume: V T = VE
Flow limits: qmin ≤ q t ≤ qmax , T equations
which can be related to min and max gen
Fixed discharge for some hours (if necessary): q t = Qt
Reservoir volume constraints: Vmin ≤ V t ≤ Vmax
Water discharge constraints are used instead of hydro energy which is
in general a nonlinear function of PH .
Lagrangian:
T
X XT
FS (PSt ) + λt (Pload
t t
− (PSt + PHt )) + γ( q t − qtot )

L= + Ploss
t=1 t=1

which is the same situation as the take-or-pay fuel problem, except


t
now the Ploss term is included.
γ is cost of water usage.

J.
c H. Chow Hydrothermo September 22, 2021 5 / 32
Optimality Conditions
Optimality at period t, for t = 1, 2, ..., T (total of 3T equations)
 t
dFS (PSt )

∂L t ∂Ploss
= +λ −1 =0
∂PSt dPSt ∂PSt
 t
dq t

∂L t ∂Ploss
= λ − 1 + γ =0
∂PHt ∂PHt dPHt
∂L t t
= Pload + Ploss − (PSt + PHt ) = 0
∂λt
The resulting optimality equations are:
t −1
dFS (PSt )

t ∂Ploss
λ = 1−
∂PSt dPSt
t 
λt

∂Ploss
γ = 1−
∂PSt dq t /dPHt
t t
Pload + Ploss − (PSt + PHt ) = 0
J.
c H. Chow Hydrothermo September 22, 2021 6 / 32
With no losses, the optimality equations become

dFS (PSt )
λt =
dPSt

λt
γ=
dq t /dPHt
t
Pload − (PSt + PHt ) = 0
t
Ploss is normally a quadratic function of PSt and PHt .
We again consider 2 methods to solve this problem:
λ-γ iteration
Relaxation techniques with simultaneous perturbations

J.
c H. Chow Hydrothermo September 22, 2021 7 / 32
λ-γ Iteration
Modification for losses:
(a) λ iteration: for a fixed γ, find λt such that load balance with losses
is satisfied. Compute

εt = Pload
t t
+ Ploss − (PSt + PHt )

which can be greater than, equal, or less than 0.


For each λt , solve for PSt from
 t
dFS (PSt )

t ∂Ploss
+λ −1 =0
dPSt ∂PSt

Do the same for solving PHt .


If λt is too high, even though Ploss
t will be higher, εt > 0, because Ploss
t
t t t t
is a small fraction of PS and PH . Else if λ is too low, ε < 0. Update
λt accordingly.

J.
c H. Chow Hydrothermo September 22, 2021 8 / 32
(b) γ iteration: Compute
T
X
εk = q t − qtot
t=1

If εk > 0 (using too much water), increase γk .


If εk < 0 (using too little water), decrease γk .

J.
c H. Chow Hydrothermo September 22, 2021 9 / 32
Relaxation Methods using Simultaneous Perturbations

Unknown variables: all together 4T variables

∆γ t , ∆λt , ∆PSt , ∆q t

Derived variables: T variables


 t −1
dq t
 
t dq
∆PH = ∆q t or ∆q =t
∆PHt
dPHt dPHt
PT
Initialize q t such that t=1 q
t = qtot and then the other variables
accordingly

J.
c H. Chow Hydrothermo September 22, 2021 10 / 32
Solve the matrix equation to obtain increments:

A, B, C, and D are nonlinear functions of PS and PH . So the solution


will not converge in one iteration.
Increment: new q t = old q t + α∆q t ; α < 1 is the stepsize

J.
c H. Chow Hydrothermo September 22, 2021 11 / 32
Load balance equation perturbations (T equations)
t
∂Ploss t
∂Ploss
t
∆P S + ∆PHt − ∆PSt − ∆PHt = 0
∂PSt ∂PHt
that is,  t 
∂Ploss
 t 
∂Ploss
t
1− ∆PS + 1 − ∆PHt
∂PSt ∂PHt
t  t  −1
dq t
 
∂Ploss t ∂Ploss
= 1− ∆PS + 1 − ∆q t
∂PSt ∂PHt dPHt
= A∆PSt + B∆q t = 0
Incremental cost equation perturbations (T equations)
t −1
dFS (PSt )

∂Ploss
λt = 1 − t
∂PS dPSt
(" −1 # −1 )
t
dFS (PSt ) t
 
t ∂ ∂Ploss ∂Ploss 00
∆λ = 1− + 1− FS (PS ) ∆PSt
t
∂PSt ∂PSt dPSt ∂PSt
= −C∆PSt
J.
c H. Chow Hydrothermo September 22, 2021 12 / 32
Incremental γ equations: (T equations)
 t 
∂Ploss
t 1
∆γ = 1 − t ∆λt = −D∆λt
∂PS dq /dPHt
t

Forcing all γ t to be equal (T –1 equations):

γ 1 + ∆γ 1 = γ 2 + ∆γ 2 = · · · = γ T + ∆γ T (= γ)

that is,
∆γ 1 − ∆γ T = γ T − γ 1 , · · ·
Total water amount constraint: (1 equation)
T
X
∆q t = 0
t=1

Thus there are 4T equations, matching the number of unknown


variables.
J.
c H. Chow Hydrothermo September 22, 2021 13 / 32
Influence of Operation Constraints
In the first pass of the optimization, include all equality constraints.
End
PT condition V T = VE can be combined with Vo = VS into
t 1 2 T
t=1 q − qtot = 0, including also the inflows r , r , ..., r .
If for a particular t, qt = Qt which is pre-specified, then there is no
optimization for this period: q t → PHt → PSt

What happens if the optimization solution with only equality


constraints violates some inequality constraints?
Case 1: Hydro unit discharge or power output out of bounds:
q t < qmin (or PHt < PHt min )
q t > qmax (or PHt > PHt max )
Then set to appropriate min or max values in that period, like
q t = qmin or q t = qmax
As a result, the optimization of the steam unit is no longer needed
for this period. Still have to check the final solution.

J.
c H. Chow Hydrothermo September 22, 2021 14 / 32
Case 2: Steam unit power output out of bounds:
PSt < PSt min or PSt > PSt max
Then set to appropriate min or max values at that period
PSt = PS min or PSt = PS max
The optimization of the hydro unit is no longer needed for this
period. Still have to check the final solution.
Case 3: Reservior level out of bounds:
V t < Vmin or V t > Vmax

Then separate the optimization into 2 separate shorter interval


optimization problems
For time 1, 2, ..., t , set V o = VS and V t = Vmin (or Vmax )
For time t + 1, ..., T , set V t = Vmin (or Vmax ) and V T = VE
J.
c H. Chow Hydrothermo September 22, 2021 15 / 32
Hydraulic Units in Series

Hydraulic continuity equations (HCEs), for t = 1, 2, ..., T

(HCE1) V1t = V1t−1 + rt − q1t − st1

(HCE2) V2t = V2t−1 + q1t + st1 − q2t − st2


Typically, sti > 0 if Vit = Vi max ; otherwise sti = 0

J.
c H. Chow Hydrothermo September 22, 2021 16 / 32
Scheduling Problem
Suppose we have a composite steam unit, and 2 hydraulic units
constrained by the HC equations.
The optimal scheduling problem becomes
T
X
min FS (PSt )
t=1

subject to the constraints: For all t, load balance with losses included
t t
Pload + Ploss t
− PSt − PH1 t
− PH2 =0

flow constraints:
T
X T
X
q1t = q1tot , q2t = q2tot
t=1 t=1

It is not necessary that q1tot = q2tot .


J.
c H. Chow Hydrothermo September 22, 2021 17 / 32
Problem Formulation
Define Lagrangian
T
X
FS (PSt ) + λt (Pload
t t
− PSt − PH1
t t

L= + Ploss − PH2 )
t=1
XT XT
t
+γ1 ( q1 − q1tot ) + γ2 ( q2t − q2tot )
t=1 t=1

Note that it is cumbersome to include (HCE1) and (HCE2) in the


Lagrangian. With the given formulation, we can use the solutions qit
and q2t to check the HCEs, i.e., whether V1t and V2t are within max and
min limits. If a limit is exceeded, we can specify intermediate
constraints to let V1t and V2t be at max or min.
Note that γ1 and γ2 are, in general, not the same, depending on the
reservoir and generator characteristics.
Solution methods: λ–γ iteration or relaxation-perturbation
J.
c H. Chow Hydrothermo September 22, 2021 18 / 32
Pumped-Storage Hydraulic Generators
A hydraulic unit with an upper reservoir and a lower reservoir,
consisting of
1 A generator
2 A pump to pump water from the lower reservoir back up to the
upper reservoir. Some units have reversible pump turbines (single
unit).
The idea is to generate when energy prices are high (during peak
hours) and pump when energy prices are low (like midnight to 5
am)
Peak shaving - PH reduces peak load and allows more base-loading
units to stay online, without having to shut down overnight.

J.
c H. Chow Hydrothermo September 22, 2021 19 / 32
Efficiency of a PH: There are losses in both the generating and
pumping modes.
Suppose we need x cu. ft. of water in the reservoir to generate Eg
MWh of energy and Ep MWh of energy to pump x cu. ft. of water
back into the reservoir. Then the efficiency of the PH is defined as

η = Eg /Ep

which is typically 70–80%


The other way of thinking about this is that suppose a PH is rated at
300 MW. After the reservoir is filled, it can generate 300 MW for 4
hours. It takes the PH to pump at 300 MW for 5 hours to refill the
reservoir. Then the efficiency is

η = (300 × 4)/(300 × 5) = 0.8

A PH is profitable is the energy prices for generating is 1/η times


higher than the energy prices for pumping.
J.
c H. Chow Hydrothermo September 22, 2021 20 / 32
PH Scheduling
Constant head: power generation is independent of the water
volume in the reservoir.
All steam turbines combined into an equivalent steam unit
The PH is either generating, pumping or idle
Volumes at the beginning and the end of the optimization are
specified, most likely to be the same; max volume is Emax MWh
Smaller unit (less water storage) – optimized over 1 day
Larger unit – not likely to use up all storage in one day; optimized
over 1 week (168 hours)
Pumping and generating – continuous over whole range from 0 to
max with same max gen and pump values
Cycle efficiency η is constant
Inflow rt into the upper reservoir is known – here we will assume
rt = 0.
J.
c H. Chow Hydrothermo September 22, 2021 21 / 32
PH Optimization Formulation
Fuel cost for steam unit (T = 24 or 168 hours)
T
X
FT = FS (PSt )
t=1

Pumping period: tp = 1, ..., Tp


Generating period: tg = 1, ..., Tg
(1) Pumping period equations: for period tp
tp tp t t t
Pload + Ploss + Ppp − PSp = 0, 0 ≤ Ppp ≤ Pmax

(2) Generating period equations: for period tg


tg tg t t t
Pload + Ploss − Pg g − PSg = 0, 0 ≤ Pg g ≤ Pmax

J.
c H. Chow Hydrothermo September 22, 2021 22 / 32
(3) Other constraints: start volume same as end volume
Vo = V24 or V168
that is,
Tg Tp
t t
X X
Pg g =η Ppp
tg =1 tp =1

For each consecutive span of pumping


Tp
t
X
η Ppp ≤ Emax
tp =1

For each consecutive span of generation


Tg
t
X
Pg g ≤ Emax
tg =1

If more than one pumping period occurs in the optimization, need a


separate equation for each pumping period.
J.
c H. Chow Hydrothermo September 22, 2021 23 / 32
PH Lagrangian

T Tp
t t t t t
X X
L= FS (PSt ) + λpp (Pload
p p
+ Ploss + Ppp − PSp )
t=1 tp =1

Tg
t t t t t
X
+ λgg (Pload
g g
+ Ploss − Pg g − PSg )
tg =1

Tg Tp
t t t
X X X
+γ( Pg g −η Ppp ) + λt (Pload
t t
+ Ploss − PSp )
tg =1 tp =1 t

The last term is summation over the period(s) when the PH is idle.

J.
c H. Chow Hydrothermo September 22, 2021 24 / 32
Optimality Condition: Pumping Period tp
t t t
!
p
∂L ∂FSp (PSp ) t ∂Ploss
t = t + λpp t −1 =0
∂PSp ∂PSp ∂PSp
t
!
p
∂L t ∂Ploss
t = λpp t +1 − γη = 0
∂Ppp ∂Ppp
∂L p t p t t t
t = Pload + Ploss + Ppp − PSp = 0
∂λpp
that is,
t t t
!
p
∂FSp (PSp ) ∂Ploss t
t = 1− t λpp
∂PSp ∂PSp
t
!
p
1 ∂Ploss t
γ= 1+ t λpp
η ∂Ppp

J.
c H. Chow Hydrothermo September 22, 2021 25 / 32
Optimality Condition: Generating Period tg
t t t
!
g
∂L ∂FSg (PSg ) t ∂Ploss
t = t + λgg t −1 =0
∂PSg ∂PSg ∂PSg
t
!
g
∂L t ∂Ploss
t = λpg t −1 +γ =0
∂Pg g ∂Pg g
∂L g t g t t t
t = Pload + Ploss − Pg g − PSg = 0
∂λgg
that is,
t t t
!
g
∂FSg (PSg ) ∂Ploss t
t = 1− t λgg
∂PSg ∂PSg
t
!
g
∂Ploss t
γ= 1− t λgg
∂Pg g

J.
c H. Chow Hydrothermo September 22, 2021 26 / 32
Combining Pumping and Generating Periods
Equating the two γ equations from the generating and pumping periods
tp tg
! !
1 ∂Ploss tp ∂Ploss t
γ= 1+ tp λp = 1 − tg λgg
η ∂Pp ∂Pg

such that  
t
p
∂Ploss
t 1+ t
λgg 1 ∂Ppp
t =  t

λpp η g
∂Ploss
1− t
∂Pg g

If the power transmission losses are small,


t
λgg 1 t t
t = > 1, λpp = ηλgg
λpp η

J.
c H. Chow Hydrothermo September 22, 2021 27 / 32
Interpretation
PH generates if the marginal price of PS (at a higher load) is 1/η times
higher than the energy price when pumping (during light load period).
This price gap is needed because of the losses between the pumping
and generation “round trip.”
Assume losses are small, use this equation to design algorithms to solve
the PH scheduling problem.
Daily load/price curve with and without PH; also impact of reservoir
size

J.
c H. Chow Hydrothermo September 22, 2021 28 / 32
Participation Factor/Perturbation Approach
The PH scheduling problem can also be solved using the λ–γ iteration.
But we will only outline the simultaneous perturbation approach.
Step 0: solve the dispatch problem without PH participation. Specify
t t
Pg g during peak hours and Ppp during low load periods, such that the
reservoir volume is balanced:
Tg Tp
t t
X X
Pg g =η Ppp
tg =1 tp =1

PTg tg
without violating tg =1 Pg ≤ Emax .
t t
Use Pg g and Ppp to find PSt and

dFS (PSt )
λt =
dPSt

for each period, where t can be either tp or tg


J.
c H. Chow Hydrothermo September 22, 2021 29 / 32
Step 1: (a) The aim is to find a common λg in the generating periods
and a common λp in the pumping periods
Generating period perturbations for tg = 1, ..., Tg (Tg equations):

λg = λtg + ∆λtg

Participation factors:
00 t t t
∆λtg = FS g (PSg )∆PSg

Pumping period perturbations for tp = 1, ..., Tp (Tp equations):

λp = ηλg = λtp + ∆λtp

Participation factors:
00 t t t
∆λtp = FS p (PSp )∆PSp

J.
c H. Chow Hydrothermo September 22, 2021 30 / 32
Constraint: (1 equation)
Tg Tp
t t
X X
∆Pg g −η ∆Ppp = 0
tg =1 tp =1

that is,
Tg Tp
X ∆λtg X ∆λtp
00 t t
−η 00 t t
=0
tg =1 FS (PSg )
g
tp =1 FS (PSp )
p

Unknowns: λg (1 variable), ∆λtg (Tg variables), and ∆λtp (Tp


variables)
(b) Solve the matrix equation for the unknowns.

J.
c H. Chow Hydrothermo September 22, 2021 31 / 32
Step 2: Update
t
g gt t t t t
Pgnew = Pgold + α∆Pg g , p
Ppnew p
= Ppold + α∆Ppp

with stepsize α < 1 and go back to Step 1.


Step 3: Check the “validity” of the solution
Check that the periods tg and tp have been chosen properly. For
example, are there PH idle periods with prices λt > λg ? If so, need
to change the generating periods and vice versa for pumping
periods.
Size of reservoir (Emax ): for a small reservoir, the price gap
between generating and pumping will be greater than 1/η

J.
c H. Chow Hydrothermo September 22, 2021 32 / 32

You might also like