Lecture 5
Lecture 5
Vassilis Kekatos
Lecture 5 V. Kekatos 1
Problem statement
Pimin ≤ Pi ≤ Pimax , i = 1, . . . , N
Lecture 5 V. Kekatos 3
Dispatch with linear costs
N
X
min ai Pi
{Pi }N
i=1 i=1
N
X
s.to Pi = D
i=1
Pimin ≤ Pi ≤ Pimax , i = 1, . . . , N
Lecture 5 V. Kekatos 4
Dispatch with convex piecewise-linear costs
• Any power in [pi,1 , pi,2 ] has incremental cost ai,2 $/MW ...
Ci (PGi )
slope = ai,1
pi,3 = PGmax
i
pi,1 pi,2 P Gi
Cost Ci (Pi ) is convex if prices are increasing (a1 < . . . < ai,Ki )
Lecture 5 V. Kekatos 5
Rewriting convex piecewise linear costs
Ci (PGi )
slope = ai,1
pi,3 = PGmax
i
pi,1 pi,2 P Gi
Lecture 5 V. Kekatos 6
Using the epigraph form
0 ≤ Pi ≤ Pimax , ∀ i
Lecture 5 V. Kekatos 7
An alternative formulation
Ci (PGi )
• Introduce one variable per block
Ki
X
Pi = Pi,k slope = ai,1
k=1
Ki
N X
X
min ai,k Pi,k
{Pi,k }
i=1 k=1
Ki
N X
X
s.to Pi,k = D
i=1 k=1
∗ ∗
• At the optimum: Pi,k = pi,k − pi,k−1 if Pi,k+1 >0
Lecture 5 V. Kekatos 8
Comparing the two formulations
0 ≤ Pi ≤ Pi ∀ i
N
P
variables: 2N variables: Ki
i=1
equality constraints: 1 equality constraints: 1
N N
P
inequality constraints:
P
Ki + 2N inequality constraints: 2 Ki
i=1 i=1
solved by simply sorting prices
Lecture 5 V. Kekatos 9
Dispatch with convex quadratic costs
N
X
min (ai Pi + ci Pi2 )
{Pi }N
i=1 i=1
N
X
s.to Pi = D
i=1
Pimin ≤ Pi ≤ Pimax , i = 1, . . . , N
• no uniqueness issues
Lecture 5 V. Kekatos 10
Lagrangian function
Lagrangian function
N N
!
X X
L= Ci (Pi ) − λ Pi − D
i=1 i=1
N
X N
X
+ µi (Pimin − Pi ) + µi (Pi − Pimax )
i=1 i=1
Lecture 5 V. Kekatos 11
Optimality conditions
For i = 1, . . . , N,
PN
1. i=1 Pi∗ = D; Pimin ≤ Pi∗ ≤ Pimax
2. µ∗i ≥ 0; µ∗i ≥ 0
Lecture 5 V. Kekatos 12
Optimality conditions simplified
N
X
1. Pi∗ = D
i=1
0 ∗ ∗
Ci (Pi ) = λ , if Pimin < Pi∗ < Pimax
2.0 Ci0 (Pi∗ ) ≥ λ∗ , if Pi∗ = Pimin
0 ∗
Ci (Pi ) ≤ λ∗ , if Pi∗ = Pimax
∗
• Any PG 1
, . . . , PG∗ N , λ∗ satisfying the above conditions will be optimal
• Optimal dispatch when all units not operating at their limits have the
Lecture 5 V. Kekatos 13
Solving economic dispatch
• Bisection on λ until | N
P
i=1 Pi (λ) − D| ≤ (tolerance)
Lecture 5 V. Kekatos 14
λ-iteration or bisection method
1. Set λ = (λ + λ̄)/2
2. Find Pi (λ) for all i as follows
2.1 If Ci0 (Pimin ) ≥ λ, set Pi (λ) = Pimin
2.2 If Ci0 (Pimax ) ≤ λ, set Pi (λ) = Pimax
2.3 Otherwise, set Pi (λ) as the solution to Ci0 (Pi ) = λ
PN
3. If i=1 Pi (λ) − D > , set λ̄ := λ and go to Step 1
PN
4. If i=1 Pi (λ) − D < −, set λ := λ and go to Step 1
Lecture 5 V. Kekatos 15
Graphical illustration
Lecture 5 V. Kekatos 16
λ-iteration with convex piecewise linear costs
Optimality conditions:
N
X
1. Pi∗ = D
i=1
Lecture 5 V. Kekatos 17
Economic interpretation
Lecture 5 V. Kekatos 18
Sensitivity interpretation
N
X
C(D) := min Ci (Pi )
{Pimin ≤Pi ≤Pimax }N
i=1 i=1
N
X
s.to Pi = D ←− λ
i=1
Marginal price λ∗ : extra price one would pay for slight increase in demand
Lecture 5 V. Kekatos 19
Participation factors
current ED perturbed ED
X X
Pi = D ∆Pi = ∆D
i i
Participation factors: How much each unit contributes to serve the new load?
∆Pi
Used for fast generation in response to load variation Pinew = Pi + ∆D
∆D
Lecture 5 V. Kekatos 20
Elastic demand
N
X M
X
min Ci (Pi ) − Uj (Dj )
{Pi }N M
i=1 ,{Dj }j=1 i=1 j=1
N
X M
X
s.to Pi = Dj
i=1 j=1
Pimin ≤ Pi ≤ Pimax , i = 1, . . . , N
Djmin ≤ Dj ≤ Djmax , j = 1, . . . , M
• convex problem for concave Uj (Dj )’s (diminishing returns or buy in bulk)
Lecture 5 V. Kekatos 21
Transmission losses
Pimin ≤ Pi ≤ Pimax , i = 1, . . . , N
−1
∂Ploss (p)
Marginal costs: fi Ci0 (Pi∗ ) for penalty factors fi = 1− ∂Pi
p=p∗
Lecture 5 V. Kekatos 23
Solving economic dispatch with losses
PN
2. Find pt+1 via λ-iteration with costs {fit Ci }i and i=1 Pi = Ploss (pt )
Lecture 5 V. Kekatos 24
Computing penalty factors
Active power injections are not independent (swing bus 1 makes up for losses)
p1 (p̃)
p= ∈ RN
p̃
∂Ploss (p)
Interest in finding ∇p Ploss (p) (assume ∂p1
= 0)
Lecture 5 V. Kekatos 25
Finding ∇p̃ p1 (p̃) from power flow equations
p1 = f1 (θ)
p̃ = f2 (θ)
Gradient vector:
>
∂θ(p̃)
∇p̃ Ploss (p̃) = 1 + ∂ p̃
∇θ f1 (θ) = 1 + [J(p̃)]−> ∇θ f1 (θ)
Lecture 5 V. Kekatos 26