optimal order strategies on the day ahead electricity
play

Optimal Order Strategies on the Day- Ahead Electricity Market - PowerPoint PPT Presentation

KTH ROYAL INSTITUTE OF TECHNOLOGY Optimal Order Strategies on the Day- Ahead Electricity Market Martin Biel 20/9-2017 Outline Background Problem Description Contribution Optimal Strategies Outlook on Future Work 2/39 Outline Background


  1. KTH ROYAL INSTITUTE OF TECHNOLOGY Optimal Order Strategies on the Day- Ahead Electricity Market Martin Biel 20/9-2017

  2. Outline Background Problem Description Contribution Optimal Strategies Outlook on Future Work 2/39

  3. Outline Background Problem Description Contribution Optimal Strategies Outlook on Future Work 2/39

  4. Background - Motivation ◮ Simulation of hydro power operations → Decision-support 3/39

  5. Background - Motivation ◮ Simulation of hydro power operations → Decision-support ◮ Price forecasts ◮ Irregular power production: solar and wind ◮ Nuclear power phase-out 3/39

  6. Background - Motivation ◮ Simulation of hydro power operations → Decision-support ◮ Price forecasts ◮ Irregular power production: solar and wind ◮ Nuclear power phase-out ◮ Common: Trade-off between accuracy and computation time 3/39

  7. 2017 2041 Figure: Simulations of hydro power operations

  8. Background - Aim Provide reliable decision-support in real time 5/39

  9. Background - Aim Provide reliable decision-support in real time ◮ Accurate models ◮ Fast computations 5/39

  10. Background - Aim Provide reliable decision-support in real time ◮ Accurate models ◮ Optimal model reductions ◮ Fast computations 5/39

  11. Background - Aim Provide reliable decision-support in real time ◮ Accurate models ◮ Optimal model reductions ◮ Fast computations ◮ Scalable algorithms that make efficient use of commodity hardware 5/39

  12. Backgound - Approach Stochastic programming for hydro power operations: ◮ Optimal orders on the day-ahead market ◮ Maintenance scheduling ◮ Long-term investments ◮ Wind/solar uncertainties 6/39

  13. Backgound - Approach Stochastic programming for hydro power operations: ◮ Optimal orders on the day-ahead market ◮ Maintenance scheduling ◮ Long-term investments ◮ Wind/solar uncertainties Improvements ◮ Multiple scenarios → More accurate models ◮ Parallel decomposition → Faster computations 6/39

  14. Backgound - Approach Stochastic programming for hydro power operations: ◮ Optimal orders on the day-ahead market ◮ Maintenance scheduling ◮ Long-term investments ◮ Wind/solar uncertainties Improvements ◮ Multiple scenarios → More accurate models ◮ Parallel decomposition → Faster computations 6/39

  15. Outline Background Problem Description Contribution Optimal Strategies Outlook on Future Work 6/39

  16. Problem Description - Scandinavian Electricity Market Electricity markets in Scandinavia deregulated since 90s ◮ Norway 1991 ◮ Sweden 1996 ◮ Finland 1998 ◮ Denmark 2000 7/39

  17. Problem Description - Scandinavian Electricity Market Electricity markets in Scandinavia deregulated since 90s ◮ Norway 1991 ◮ Sweden 1996 ◮ Finland 1998 ◮ Denmark 2000 Energy volumes actively traded on a competitive market: Nord Pool ◮ Day-ahead market ◮ Intraday market 7/39

  18. Problem Description - Electricity Market Actor 1 P 1 E 1 Day- Ahead P 2 E 2 Actor 2 8/39

  19. Problem Description - Electricity Market Actor 1 P 1 E 1 Day- Ahead P 2 E 2 Actor 2 Market closes 8/39

  20. Problem Description - Electricity Market Balance responsible Actor 1 Actor 1 P M , E 1 P 1 E 1 Day- Ahead P 2 E 2 P M , E 2 Actor 2 Actor 2 Balance responsible Next day Market closes 8/39

  21. Problem Description - Electricity Market Balance responsible Actor 1 Actor 1 P M , E 1 P 1 E 1 P E Day- Intraday Ahead P E P 2 E 2 P M , E 2 Actor 2 Actor 2 Balance responsible Next day Market closes 8/39

  22. Problem Description - The Day-Ahead Market Order Types ◮ Single Hourly Order ◮ Price independent ◮ Price Dependent ◮ Block Order ◮ Regular ◮ Linked ◮ Exclusive Group ◮ Flexible Order 9/39

  23. Problem Description - The Day-Ahead Market Order Types ◮ Single Hourly Order ◮ Price independent ◮ Price Dependent ◮ Block Order ◮ Regular ◮ Linked ◮ Exclusive Group ◮ Flexible Order 9/39

  24. Problem Description - Single Order Order Curve Price Independent Order Price Dependent Order 52.46 Price [EUR/MWh] 34.97 17.49 0.00 0.00 203.32 406.63 609.95 813.27 Order Volume [MWh/h] Figure: Single hourly order 10/39

  25. Problem Description - Single Order Order Curve Price Independent Order Price Dependent Order Trading Outcome 52.46 Price [EUR/MWh] 34.97 17.49 0.00 0.00 203.32 406.63 609.95 813.27 Order Volume [MWh/h] Figure: Interpolated energy volume for a given market price 10/39

  26. Block Order 36.85 [EUR/MWh] 3.37 [MWh/h] 0 15 Hour Figure: Block order between 00:00-15:00

  27. Block Order Rejected Order Market price 42.37 36.85 [EUR/MWh] 3.37 [MWh/h] 35.42 Price [EUR/MWh] 28.47 21.52 0 15 Hour Figure: Rejected after market price settlement

  28. Block Order Accepted Order 49.50 Market price 47.28 45.06 42.84 40.62 Price [EUR/MWh] 38.40 36.85 [EUR/MWh] 3.37 [MWh/h] 36.17 33.95 31.73 29.51 27.29 25.07 0 15 Hour Figure: Accepted after market price settlement

  29. Problem Description - Optimal Order Strategies ◮ Optimal orders given price forecasts ◮ Price taking hydro power producer ◮ Next day production governed by hydroelectric model 12/39

  30. Outline Background Problem Description Contribution Model Framework Stochastic Day-Ahead Model Optimization Algorithms Optimal Strategies Outlook on Future Work 12/39

  31. Outline Background Problem Description Contribution Model Framework Stochastic Day-Ahead Model Optimization Algorithms Optimal Strategies Outlook on Future Work 12/39

  32. Contribution - Model Framework Data ◮ Physical data of Swedish hydro power stations ◮ Topologies ◮ Capacitites ◮ Flow times ◮ Financial data from Nord Pool ◮ historic prices 13/39

  33. Contribution - Model Framework Data ◮ Physical data of Swedish hydro power stations ◮ Topologies ◮ Capacitites ◮ Flow times ◮ Financial data from Nord Pool ◮ historic prices Julia: JuMP + StructJuMP ◮ Domain-specific modeling language for mathematical optimization ◮ Optimization models can be processed programatically 13/39

  34. HydroModels.jl # Variables # ======================================================== @variable ( internalmodel , xt_d [ i = model . bids , t = model . hours ] >= 0) @variable ( internalmodel , yt [ t = model . hours ] >= 0) @variable ( internalmodel ,H[ t = model . hours ] >= 0) # Define objective # ======================================================== @objective ( internalmodel , Max, n e t _ p r o f i t + value_of_stored_water ) # Constraints # ======================================================== # Load balance @constraint ( internalmodel , loadbalance [ s = model . scenarios , t = model . hours ] , yt [ s , t ] + sum( yb [ s , b ] for b = f i n d (A − > in ( t ,A) , model . hours_per_block ) ) − H[ s , t ] == z_up [ s , t ] − z_do [ s , t ] )

  35. HydroModels.jl # Variables # ======================================================== @variable ( internalmodel , xt_d [ i = model . bids , t = model . hours ] >= 0) @variable ( internalmodel , yt [ t = model . hours ] >= 0) @variable ( internalmodel ,H[ t = model . hours ] >= 0) # Define objective # ======================================================== @objective ( internalmodel , Max, n e t _ p r o f i t + value_of_stored_water ) # Constraints # ======================================================== # Load balance @constraint ( internalmodel , loadbalance [ s = model . scenarios , t = model . hours ] , yt [ s , t ] + sum( yb [ s , b ] for b = f i n d (A − > in ( t ,A) , model . hours_per_block ) ) − H[ s , t ] == z_up [ s , t ] − z_do [ s , t ] ) +

  36. HydroModels.jl # Variables # ======================================================== @variable ( internalmodel , xt_d [ i = model . bids , t = model . hours ] >= 0) @variable ( internalmodel , yt [ t = model . hours ] >= 0) @variable ( internalmodel ,H[ t = model . hours ] >= 0) # Define objective # ======================================================== @objective ( internalmodel , Max, n e t _ p r o f i t + value_of_stored_water ) # Constraints # ======================================================== # Load balance @constraint ( internalmodel , loadbalance [ s = model . scenarios , t = model . hours ] , yt [ s , t ] + sum( yb [ s , b ] for b = f i n d (A − > in ( t ,A) , model . hours_per_block ) ) − H[ s , t ] == z_up [ s , t ] − z_do [ s , t ] ) + = data = HydroModelData ( " data / plantdata . csv " , " data / spotpricedata . csv " ) dayahead = DayAheadModel ( data ,5 , " Ljusnan " ) plan ! ( dayahead )

  37. Outline Background Problem Description Contribution Model Framework Stochastic Day-Ahead Model Optimization Algorithms Optimal Strategies Outlook on Future Work 14/39

  38. Contribution - Stochastic Day-Ahead Model Profit + Water Value − Balance Cost maximize subject to Day-Ahead Orders Physical Limitations Economic/Legal Limitations 15/39

  39. Contribution - Stochastic Day-Ahead Model Day-Ahead Orders - x ∈ X ◮ Indices t ∈ T := { 1 , . . . , 24 } , b ∈ B := { b = ( t a , . . . , t b ) : t i ∈ T } ◮ Price independent: x i t ≥ 0 ◮ Price dependent: 0 ≤ x d i , t ≤ x d i , t + 1 ◮ Block: x b j , b ≥ 0 16/39

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend