a new primal-dual framework for european day-ahead ...€¦ · network representation (flow-based,...

35
A new primal-dual framework for European day-ahead electricity auctions Mehdi Madani*, Mathieu Van Vyve** *Louvain School of management, ** CORE Catholic University of Louvain Mathematical Models and Methods for Energy Optimization Workshop, Budapest University of Technology and Economics, September 2014

Upload: others

Post on 01-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

A new primal-dual framework for European day-aheadelectricity auctions

Mehdi Madani*, Mathieu Van Vyve**

*Louvain School of management, ** CORECatholic University of Louvain

Mathematical Models and Methods for Energy Optimization Workshop,Budapest University of Technology and Economics, September 2014

Page 2: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

http://www.epexspot.com/en/market-coupling/pcr

Page 3: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

1 Background informationDay-ahead Electricity MarketsEquilibrium with block orders ? : ExamplesPrimal Program (welfare maximizing dispatch)Duality and Linear Equilibrium Prices

2 Get rid of the subset of compl. constr. ? Three waysLinearise each of them...Equality of objective functions + linearisation of quadratic termsNew primal-dual framework ...

3 Algorithmic application - Strengthened (locally valid) Benders cuts

4 Minimizing opportunity costs, Maximizing the traded volume, etc

5 Numerical resultsMaximizing welfare, new approachOpportunity costs vs Welfare

6 Conclusions and Extensions

Page 4: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Introduction

Day-ahead Markets:

24 periods (23 or 25 once a year)

several areas/locations for bids + network constraints

Both demand and offer bids (elastic demand)

We are interested in uniform/linear prices.Here: only one location but everything holds for any linear transmissionnetwork representation (Flow-based, ATC, etc)

Page 5: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Main kinds of bids - CWE region (EPEX, APX), Nordpool - :

Hourly bids - (Monotonic) DEMAND / SUPPLY bid curves

Block bids, i.e. ’binary bids’

Span multiple periods and ”fill-or-kill condition”: bid must be entirelyaccepted or rejected.

Page 6: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Well-behaved, continuous setting:

Page 7: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Well-behaved convex context (convexity of feas. set & welfare function):Market equilibrium ↔ Welfare maximization(True more generally when considering spatially separated markets, andremarkable according to Paul Samuelson in [a])

Page 8: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Equilibrium with block orders ?...

Welfare maximizing solution 6= Traded volume maximizing solutionWelfare maximizing solution 6= Opportunity costs minimizing solution

Page 9: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Matching in the convex case as a simple LP:

maxxi≥0

(100× 15)x1 + (50× 10)x2 − (120× 5)x3 − (30× 12)x4

s.t. xi ≤ 1 ∀i ∈ {1, 2, 3, 4} [si ] (1)

100x1 + 50x2 = 120x3 + 30x4 [pm] (2)

welfare optimal solution = 1100 with x1 = 1, x2 =2

5, x3 = 1, x4 = 0

pm gives the equilibrium market clearing price

Page 10: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Primal (welfare maximizing) program:

maxxi ,yj

∑i

Q iP ixi +∑j

Q jP jyj

subject to:

xi ≤ 1 ∀i ∈ I ”[si ]” (3)

yj ≤ 1 ∀j ∈ J ”[sj ]” (4)∑i

Q ixi +∑j

Q jyj = 0 ”[pm]” (5)

xi , yj ≥ 0, yj ∈ Z. (6)

Q < 0 for sell orders and Q > 0 for buy orders !

Page 11: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Primal constraints (feasible dispatch)

Dual program (prices)

Related compl. constraints

Walrasian equilibrium

Paradoxically rejected block orders allowed

Classical MPCC formulation Of European market rules

Page 12: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids
Page 13: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Primal (welfare maximizing)program with blocks fixed:

maxxi ,yj

∑i

Q iP ixi +

����

��∑j

Q jP jyj

subject to:

xi ≤ 1 ∀i ∈ I [si ]∑i

Q ixi = −∑j

Q jyj [pm]

xi ≥ 0,

Dual with these blocks fixed:

minsi ,pm

∑i

si − pm(∑j

Q jyj)

subject to:

si + Q ipm ≥ Q iP i ∀i ∈ I [xi ]

si ≥ 0

Complementarity Constraints:

si (1− xi ) = 0 ∀i ∈ I

xi (si + Q ipm − Q iP i ) = 0 ∀i ∈ I

Page 14: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids
Page 15: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

1 Background informationDay-ahead Electricity MarketsEquilibrium with block orders ? : ExamplesPrimal Program (welfare maximizing dispatch)Duality and Linear Equilibrium Prices

2 Get rid of the subset of compl. constr. ? Three waysLinearise each of them...Equality of objective functions + linearisation of quadratic termsNew primal-dual framework ...

3 Algorithmic application - Strengthened (locally valid) Benders cuts

4 Minimizing opportunity costs, Maximizing the traded volume, etc

5 Numerical resultsMaximizing welfare, new approachOpportunity costs vs Welfare

6 Conclusions and Extensions

Page 16: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

First way: linearise all three kinds of compl. constraints

real instances: more than 50 000 hourly bids → 100 000 aux. bin. vars. !!Not tractable for real large-scale instances !

si (1− xi ) = 0

xi (si + Q ipm − Q iP i ) = 0

yj(sj + Q jpm − Q jP j) = 0

With big-M’s and zi , vi ∈ {0, 1}, i.e. 2|Hourly bids| auxiliary bin. vars.:

0 ≤ (1− xi ) ≤ Mzi

0 ≤ si ≤ M(1− zi )

0 ≤ xi ≤ Mvi

0 ≤ (si + Q ipm − Q iP i ) ≤ M(1− vi )

0 ≤ sj + Q jpm − Q jP j ≤ M(1− yj) (since yj ∈ {0, 1})

Page 17: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Second way: linearise quad. terms in equality of objectivesProposition of Zak. et al. [c]

Page 18: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Second way: linearise quad. terms in equality of objectives

Proposition of Zak. et al. [c]

Again, not tractable for real large-scale instances (cf. paper)

Well-known trick:To linearise pmyj , replace it by zj , adding constraints with big-Ms:

zj ≤ Myj

zj ≤ pm

zj ≥ pm −M(1− yj)

If n coupled markets, n prices, and n × |block orders| aux. vars.e.g in the CWE region: 24 periods, 4 counties → 96 submarketsand about 700 block orders → 67200 auxiliary vars.

Page 19: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Third way: yields a useful primal-dual framework

Strong duality <-> ‘relaxed complementarity constraints’

*upper bound* on the actual loss of executed order j

Page 20: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Core European market model, new formulation:No auxiliary variables at all & tractable for large-scale instances

maxxi ,yj ,pm,si ,sj

∑i

Q iP ixi +∑j

Q jP jyj

subject to:

xi ≤ 1 ∀i ∈ I [si ] (7)

yj ≤ 1 ∀j ∈ J ”[sj ]” (8)∑i

Q ixi +∑j

Q jyj = 0 [pm] (9)

xi , yj ≥ 0, yj ∈ Z (10)

si + Q ipm ≥ Q iP i ∀i ∈ I [xi ] (11)

sj + Q jpm ≥ Q jP j − Mj(1− yj) ∀j ∈ J ”[yj ]” (12)∑i

Q iP ixi +∑j

Q jP jyj ≥∑i

si +∑j

sj (13)

si , sj ≥ 0, param. Mj >> 0 (14)

Page 21: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Third way: yields a useful primal-dual frameworkConsider a block order selection J = J0 ∪ J1Primal:

maxxi ,yj

∑i

Q iP ixi +∑j

Q jP jyj

subject to:

xi ≤ 1 ∀i ∈ I [si ] (15)

yj ≤ 1 ∀j ∈ J [sj ] (16)

yj0 ≤ 0 ∀j0 ∈ J0 ⊆ J [d0j0 ] (17)

−yj1 ≤ −1 ∀j1 ∈ J1 ⊆ J [d1j1 ] (18)∑i

Q ixi +∑j

Q jyj = 0, [pm] (19)

xi , yj ≥ 0 (20)

Page 22: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Dual: min∑i

si +∑j

sj −∑j1∈J1

d1j1

subject to:

si + Q ipm ≥ Q iP i ∀i ∈ I [xi ] (21)

sj0 +d0j0 + Q j0pm ≥ Q j0P j0 ∀j0 ∈ J0 [yj0 ] (22)

sj1 −d1j1 + Q j1pm ≥ Q j1P j1 ∀j1 ∈ J1 [yj1 ] (23)

si , sj , dj0 , dj1 , um ≥ 0 (24)

Complementarity constraints

si (1− xi ) = 0 ∀i ∈ I (25)

sj0(1− yj0) = 0 ∀j ∈ J (26)

sj1(1− yj1) = 0 ∀j ∈ J (27)

xi (si + Q ipm − Q iP i ) = 0 ∀i ∈ I (28)

yj0(sj0 +d0j0 + Q j0pm − Q j0P j0) = 0 ∀j ∈ J0 (29)

yj1(sj1 −d1j1 + Q j1pm − Q j1P j1) = 0 ∀j ∈ J1 (30)

yj0d0j0 = 0, (1− xj1)d1j1 = 0 ∀j0 ∈ J0,∀j1 ∈ J1 (31)

Page 23: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

With primal, dual and complementarity constraints:

d0j is an *upper bound* on the opportunity cost of order j

d1j is an *upper bound* on the actual loss of (executed) order j

Block order selection J = J0 ∪ J1 not known ’ex ante’.

Decide a selection J = J0 ∪ J1 according to some objective:

Using equality of objective functions to enforce complementarityconditions

.... and using a ’dispatcher’

Page 24: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Strong duality <-> ‘relaxed complementarity constraints’

*upper bound* on the actual loss of executed order j

Page 25: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Core European market model, new formulation:No auxiliary variables at all & tractable for large-scale instances

maxxi ,yj ,pm,si ,sj

∑i

Q iP ixi +∑j

Q jP jyj

subject to:

xi ≤ 1 ∀i ∈ I [si ] (32)

yj ≤ 1 ∀j ∈ J ”[sj ]” (33)∑i

Q ixi +∑j

Q jyj = 0 [pm] (34)

xi , yj ≥ 0, yj ∈ Z (35)

si + Q ipm ≥ Q iP i ∀i ∈ I [xi ] (36)

sj + Q jpm ≥ Q jP j − Mj(1− yj) ∀j ∈ J ”[yj ]” (37)∑i

Q iP ixi +∑j

Q jP jyj ≥∑i

si +∑j

sj (38)

si , sj ≥ 0, param. Mj >> 0 (39)

Page 26: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

1 Background informationDay-ahead Electricity MarketsEquilibrium with block orders ? : ExamplesPrimal Program (welfare maximizing dispatch)Duality and Linear Equilibrium Prices

2 Get rid of the subset of compl. constr. ? Three waysLinearise each of them...Equality of objective functions + linearisation of quadratic termsNew primal-dual framework ...

3 Algorithmic application - Strengthened (locally valid) Benders cuts

4 Minimizing opportunity costs, Maximizing the traded volume, etc

5 Numerical resultsMaximizing welfare, new approachOpportunity costs vs Welfare

6 Conclusions and Extensions

Page 27: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

New primal-dual formulation - [b] - M. Van Vyve & M.

No auxiliary variables at all !

Could then derive a powerful Benders decomposition withstrengthened Benders cuts improving on Martin-Muller-Pokutta [d](both propositions: projection on the space of primal variables)

Martin-Muller-Pokutta: Branch-and-Cut with exact (globally valid)no-good cuts: ∑

j |y∗j =1

(1− yj) +∑

j |y∗j =0

yj ≥ 0

with the new stuff: recovering these globally valid cuts + strongerlocally valid cuts: ∑

j |y∗j =1

(1− yj) ≥ 0

needed with piecewise linear bid curves(→ quad. prog. setting, using convex quad. prog. duality)

’State-of-the-art’

Page 28: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

1 Background informationDay-ahead Electricity MarketsEquilibrium with block orders ? : ExamplesPrimal Program (welfare maximizing dispatch)Duality and Linear Equilibrium Prices

2 Get rid of the subset of compl. constr. ? Three waysLinearise each of them...Equality of objective functions + linearisation of quadratic termsNew primal-dual framework ...

3 Algorithmic application - Strengthened (locally valid) Benders cuts

4 Minimizing opportunity costs, Maximizing the traded volume, etc

5 Numerical resultsMaximizing welfare, new approachOpportunity costs vs Welfare

6 Conclusions and Extensions

Page 29: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Strong duality <-> ‘relaxed complementarity constraints’

*upper bound* on the actual loss of executed order j

Page 30: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Other optimization problems under European rules

d0j ≥ 0 *upper bound* on the opportunity cost of block order j ...

Minimizing opportunity costs ?

min∑

d0j

Minimizing # PRBs ?

min∑

z0j s.t. Mz0j ≥ d0j & z0j ∈ {0, 1}, ∀j ∈ J

Maximizing the traded volume ?

max∑

i |Q i>0

Q ixi +∑

j |Q j>0

Q jyj

Page 31: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

1 Background informationDay-ahead Electricity MarketsEquilibrium with block orders ? : ExamplesPrimal Program (welfare maximizing dispatch)Duality and Linear Equilibrium Prices

2 Get rid of the subset of compl. constr. ? Three waysLinearise each of them...Equality of objective functions + linearisation of quadratic termsNew primal-dual framework ...

3 Algorithmic application - Strengthened (locally valid) Benders cuts

4 Minimizing opportunity costs, Maximizing the traded volume, etc

5 Numerical resultsMaximizing welfare, new approachOpportunity costs vs Welfare

6 Conclusions and Extensions

Page 32: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Numerical results: welfare optimization

Real data of 2011, thanks to Apx-Endex and Epex Spot

Belgium, France, Germany and the Nederlands, 24 time slots

time limit: 10 min., about 60 000 cont. vars, 600/700 bin. vars

Branch-and-cut in AIMMS, usingCplex 12.5 with locally valid lazy constraints callbacks (not in Gurobi)platform: windows 7 64, i5 with 4 cores @ 3.10 GHz, 4 GB RAM

Stepwise preference curves (linearisation):Solved instances Running time Final abs. gap Nodes Cuts

(solved instances, sec) (unsolved instances) (solved - unsolved) instances (solved - unsolved) instances

New MILP formulation 84% 104.42 418.16 43 - 33584 /Decomposition Procedure 72.78% 6.47 402.05 16 - 1430 8 - 3492

Quadratic setting:Solved instances Running time Final abs. gap Nodes Cuts

(solved instances, sec) (unsolved instances) (solved - unsolved) instances (solved - unsolved) instances

Decomposition Procedure 70.41% 16.70 370.91 11 - 619 7 - 1382

Many blocks (almost binary orders only):Solved instances Running time Final abs. gap Nodes Cuts

(solved instances, sec) (unsolved instances) (solved - unsolved) instances (solved - unsolved) instances

New MILP formulation 100% 4.17 / 40797 - / -Decomposition Procedure 78% 13.82 9303.16 64564 / 937172 1662 / 82497

Page 33: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Opportunity costs vs Welfare MaximizationCWE Region, some instances from 2011 (see [e] for more details)

Page 34: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

Short conclusion and Extensions

Conclusions / Extensions

Well-known nowadays: MIP formulation issues really matter ...

framework useful both for economic modelling (min. opportunitycosts, max traded volume, etc) and algorithmically (feeding Cplex ore.g. Benders decomposition to derive new cuts)

The same approach (whole MIP) extends to complex bids with aMinimum income condition ! (WP available within a couple of days)

Many other things to say e.g. about network/spatial equilibrium, etc

Page 35: A new primal-dual framework for European day-ahead ...€¦ · network representation (Flow-based, ATC, etc) Main kinds of bids - CWE region (EPEX, APX), Nordpool - : Hourly bids

bibliography

[a] Paul A. Samuelson. Spatial price equilibrium and linear programming.The American Economic Review, 42(3), 1952

[b] M. & Van Vyve, CORE Discussion Paper 2013/74 (online) + revisedversion available on request (published soon)

[c] E.J. Zak, S. Ammari, and K.W. Cheung. Modeling price-baseddecisions in advanced electricity markets. In European Energy Market(EEM), 2012 9th International Conference on the, May 2012

[d] Alexander Martin, Johannes C. Muller, and Sebastian Pokutta. Strictlinear prices in nonconvex european day-ahead electricity markets.Optimization Methods and Software, 2014

[e] M. & Mathieu Van Vyve, Minimizing opportunity costs ofparadoxically rejected block orders in European day-ahead electricitymarkets, European Energy Market (EEM), 2014 (see IEEE Xplore)

contact: [email protected]