Scenario reduction and scenario tree construction for power management problems

Similar documents
Approximations of Stochastic Programs. Scenario Tree Reduction and Construction

Scenario tree generation for stochastic programming models using GAMS/SCENRED

Energy Systems under Uncertainty: Modeling and Computations

Dynamic Risk Management in Electricity Portfolio Optimization via Polyhedral Risk Functionals

Scenario Reduction and Scenario Tree Construction for Power Management Problems

Scenario Reduction and Scenario Tree Construction for Power Management Problems

Approximation of Continuous-State Scenario Processes in Multi-Stage Stochastic Optimization and its Applications

A Multi-Stage Stochastic Programming Model for Managing Risk-Optimal Electricity Portfolios. Stochastic Programming and Electricity Risk Management

Worst-case-expectation approach to optimization under uncertainty

Multistage Stochastic Mixed-Integer Programs for Optimizing Gas Contract and Scheduling Maintenance

Robust Dual Dynamic Programming

Scenario Construction and Reduction Applied to Stochastic Power Generation Expansion Planning

Financial Optimization ISE 347/447. Lecture 15. Dr. Ted Ralphs

Investigation of the and minimum storage energy target levels approach. Final Report

Report for technical cooperation between Georgia Institute of Technology and ONS - Operador Nacional do Sistema Elétrico Risk Averse Approach

Equity correlations implied by index options: estimation and model uncertainty analysis

Multistage Stochastic Demand-side Management for Price-Making Major Consumers of Electricity in a Co-optimized Energy and Reserve Market

Handout 4: Deterministic Systems and the Shortest Path Problem

Optimal construction of a fund of funds

Integer Programming Models

Scenario Generation for Stochastic Programming Introduction and selected methods

Utility Indifference Pricing and Dynamic Programming Algorithm

Problem Set 3. Thomas Philippon. April 19, Human Wealth, Financial Wealth and Consumption

Dynamic Replication of Non-Maturing Assets and Liabilities

Optimization Models in Financial Mathematics

Risk aversion in multi-stage stochastic programming: a modeling and algorithmic perspective

Problem set Fall 2012.

Universitat Politècnica de Catalunya (UPC) - BarcelonaTech

The Irrevocable Multi-Armed Bandit Problem

Course notes for EE394V Restructured Electricity Markets: Locational Marginal Pricing

Multistage risk-averse asset allocation with transaction costs

hydro thermal portfolio management

Arbitrage Conditions for Electricity Markets with Production and Storage

Optimal Pricing in Markets with Non-Convex Costs

Optimally Thresholded Realized Power Variations for Lévy Jump Diffusion Models

DASC: A DECOMPOSITION ALGORITHM FOR MULTISTAGE STOCHASTIC PROGRAMS WITH STRONGLY CONVEX COST FUNCTIONS

VOLATILITY EFFECTS AND VIRTUAL ASSETS: HOW TO PRICE AND HEDGE AN ENERGY PORTFOLIO

DM559/DM545 Linear and integer programming

Financial Giffen Goods: Examples and Counterexamples

Financial Transmission Rights Markets: An Overview

Mortgage Loan Portfolio Optimization Using Multi-Stage Stochastic Programming

Multistage Stochastic Programs

Assessing Policy Quality in Multi-stage Stochastic Programming

Assortment Planning under the Multinomial Logit Model with Totally Unimodular Constraint Structures

ADVANCED MACROECONOMIC TECHNIQUES NOTE 7b

Revenue Management Under the Markov Chain Choice Model

Dynamic Programming: An overview. 1 Preliminaries: The basic principle underlying dynamic programming

Dynamic Portfolio Choice II

Two-stage Robust Optimization for Power Grid with Uncertain Demand Response

Appendix to: Long-Run Asset Pricing Implications of Housing Collateral Constraints

Dynamic Asset and Liability Management Models for Pension Systems

Lecture 5: Iterative Combinatorial Auctions

Essays on Some Combinatorial Optimization Problems with Interval Data

Trinomial Tree. Set up a trinomial approximation to the geometric Brownian motion ds/s = r dt + σ dw. a

The value of multi-stage stochastic programming in capacity planning under uncertainty

IMPA Commodities Course : Forward Price Models

Optimal Dividend Policy of A Large Insurance Company with Solvency Constraints. Zongxia Liang

Lecture 10: The knapsack problem

Approximate Dynamic Programming for a Spare Parts Problem: The Challenge of Rare Events

Stochastic Dual Dynamic integer Programming

Optimal liquidation with market parameter shift: a forward approach

Stochastic Programming in Gas Storage and Gas Portfolio Management. ÖGOR-Workshop, September 23rd, 2010 Dr. Georg Ostermaier

Portfolio Management and Optimal Execution via Convex Optimization

Policy iterated lower bounds and linear MC upper bounds for Bermudan style derivatives

Equilibrium, uncertainty and risk in hydro-thermal electricity systems

MULTI-STAGE STOCHASTIC ELECTRICITY PORTFOLIO OPTIMIZATION IN LIBERALIZED ENERGY MARKETS

Q1. [?? pts] Search Traces

Online Appendix: Extensions

Electricity Market Optimization - F.-Javier Heredia et al. - NUMOPEN CRM Barcelona October 14, /58. gnom.upc.edu

Vladimir Spokoiny (joint with J.Polzehl) Varying coefficient GARCH versus local constant volatility modeling.

Technical Report Doc ID: TR April-2009 (Last revised: 02-June-2009)

Optimal Security Liquidation Algorithms

Optimum Thresholding for Semimartingales with Lévy Jumps under the mean-square error

Optimal construction of a fund of funds

Payment mechanisms and risk-aversion in electricity markets with uncertain supply

Shape-Preserving Dynamic Programming

Part 3: Trust-region methods for unconstrained optimization. Nick Gould (RAL)

Electricity Swing Options: Behavioral Models and Pricing

Optimal Switching Games in Emissions Trading

INTERTEMPORAL ASSET ALLOCATION: THEORY

On modelling of electricity spot price

Stochastic Optimization Methods in Scheduling. Rolf H. Möhring Technische Universität Berlin Combinatorial Optimization and Graph Algorithms

Optimal energy management and stochastic decomposition

Stochastic Proximal Algorithms with Applications to Online Image Recovery

Dynamic Appointment Scheduling in Healthcare

Valuing American Options by Simulation

Martingale Pricing Theory in Discrete-Time and Discrete-Space Models

Handout 8: Introduction to Stochastic Dynamic Programming. 2 Examples of Stochastic Dynamic Programming Problems

6.231 DYNAMIC PROGRAMMING LECTURE 3 LECTURE OUTLINE

STATE UNIVERSITY OF NEW YORK AT ALBANY Department of Economics. Ph. D. Comprehensive Examination: Macroeconomics Spring, 2009

Individual Asset Liability Management: Dynamic Stochastic Programming Solution

Markov Decision Processes II

The Uncertain Volatility Model

Stochastic Dual Dynamic Programming

Options Pricing Using Combinatoric Methods Postnikov Final Paper

Valuing volatility and variance swaps for a non-gaussian Ornstein-Uhlenbeck stochastic volatility model

Is intertemporal choice theory testable?

Investigations on Factors Influencing the Operational Benefit of Stochastic Optimization in Generation and Trading Planning

Trinomial Tree. Set up a trinomial approximation to the geometric Brownian motion ds/s = r dt + σ dw. a

IMPLEMENTING THE SPECTRAL CALIBRATION OF EXPONENTIAL LÉVY MODELS

Transcription:

Scenario reduction and scenario tree construction for power management problems N. Gröwe-Kuska, H. Heitsch and W. Römisch Humboldt-University Berlin Institute of Mathematics Page 1 of 20 IEEE Bologna POWER TECH 2003 Bologna, June 23-26, 2003

1. Electricity portfolio management We consider a power utility owning a hydro-thermal generation system and producing and trading electric power during some time horizon [1, T ] (e.g., weekly, monthly, yearly). Objective: Maximization of (expected) revenue Decisions: Mixed-integer (large scale) System and trading constraints: Capacity, reservoir, operational, load, reserve constraints Stochastic data processes: Electrical load, fuel and electricity prices, inflows Page 2 of 20

1.1. Data process approximation by scenario trees The data process ξ = {ξ t } T t=1 is approximated by a process forming a scenario tree which is based on a finite set N of nodes. n = 1 n n N T N + (n) t = 1 t 1 t(n) T Scenario tree with t 1 = 2, T = 5, N = 23 and 11 leaves The root node n = 1 stands for period t = 1. Every other node n has a unique predecessor n and a set N + (n) of successors. Let path(n) be the set {1,..., n, n} of nodes from the root to node n, t(n) := path(n) and N T := {n N : N + (n) = } the set of leaves. A scenario corresponds to path(n) for some n N T. With the given scenario probabilities {π n } n NT, we define recursively node probabilities π n := n + N + (n) π n +, n N. Page 3 of 20

1.2. Stochastic power management model Stochastic process: {ξ t = (d t, r t, γ t, α t, β t, ζ t )} T t=1 (electrical load, spinning reserve, inflows, (fuel or electricity) prices) given as a (multivariate) scenario tree Mixed-integer programming problem: min n N π n i=1 I [Ci n (p n i, u n i ) + Si n (u i )] s.t. p min it(n) un i p n i p max it(n) un i, u n i {0, 1}, n N, i = 1: I, u n τ i u n (τ+1) i u n (τ+1) i u n i, τ = 1: τ i 1, n N, i = 1: I, u n τ i 1 u n i, τ = 1: τ i 1, n N, i = 1: I, 0 vj n vjt(n) max, 0 wn j wjt(n) max, 0 ln j ljt(n) max, n N, j = 1: J, l n j = l n j v n j + η j w n j + γ n j, n N, j = 1: J, l 0 j = l in j, I p n i + i=1 I i=1 lj n = lj end, n N T, j = 1: J, J (vj n wj n ) d n, n N, j=1 (u n i p max it(n) pn i ) r n, n N. C n i are fuel or trading costs and S n i start-up costs of unit i at node n N : Ci n (p n i, u n i ) := max { αil n pn i + βil n un i } l=1,..., l τ S n i (u i ) := max τ=0,...,τ c i ζ n iτ (u n i κ=1 u n κ i ) Page 4 of 20

1.3. Solving the stochastic power management model N T N variables constraints nonzeros binary continuous 1 168 4200 6652 13441 19657 20 1176 29400 45864 94100 137612 50 2478 61950 96642 198290 289976 100 4200 105000 163800 336100 491500 Dimension of the model for T = 168, I = 25 and J = 7 Primal approaches seem to be hopeless in general! Lagrangian relaxation of coupling constraints Solution of the dual problem (proximal bundle method) Lagrange heuristics Solution of subproblems (stochastic dynamic programming) (descent algorithm) Page 5 of 20 (stochastic) economic dispatch

2. Generation of scenario trees (i) Development of a stochastic model for the data process ξ (parametric [e.g. time series model], nonparametric [e.g. resampling]) and generation of simulation scenarios; (ii) Construction of a scenario tree out of the stochastic model or of the simulation scenarios; (iii) optional scenario tree reduction. Approaches for (ii): (1) Barycentric scenario trees (conditional expectations w.r.t. a decomposition of the support into simplices); (2) Fitting of trees with prescribed structure to given moments; (3) Conditional sampling by integration quadratures; (4) Clustering methods for bundling scenarios; (5) Scenario tree construction based on optimal approximations w.r.t. certain probability metrics. Page 6 of 20

3. Distances of probability distributions Let P denote the probability distribution of the stochastic data process {ξ t } T t=1, where ξ t has dimension r, i.e., P has support Ξ IR rt = IR s. The Kantorovich functional or transportation metric takes the form µ c (P, Q) := inf{ c(ξ, ξ)η(dξ, d ξ) : π 1 η = P, π 2 η = Q}, Ξ Ξ where c : Ξ Ξ IR is a certain cost function. Example: c(ξ, ξ) := max{1, ξ p 1, ξ p 1 } ξ ξ (p 1) Page 7 of 20 Approach: Select a probability metric a function c : Ξ Ξ IR such that the underlying stochastic optimization model is stable w.r.t. µ c. Given P and a tolerance ε > 0, determine a scenario tree such that its probability distribution P tr has the property µ c (P, P tr ) ε.

Distances of discrete distributions P : scenarios ξ i with probabilities p i, i = 1,..., N, Q: scenarios ξ j with probabilities q j, j = 1,..., M. Then N µ c (P, Q) = sup{ p i u i + i=1 M q j v j : u i + v j c(ξ i, ξ j ) i, j} j=1 = inf{ i,j η ij c(ξ i, ξ j ) : η ij 0, j η ij = p i, i η ij = q j } (optimal value of linear transportation problems) (a) Distances of distributions can be computed by solving specific linear programs. (b) The principle of optimal scenario generation can be formulated as a best approximation problem with respect to µ c. However, it is nonconvex and difficult to solve. (c) The best approximation problem simplifies considerably if the scenarios are taken from a specified finite set. Page 8 of 20

4. Scenario Reduction We consider discrete distributions P with scenarios ξ i and probabilities p i, i = 1,..., N, and Q having a subset of scenarios ξ j, j J {1,..., N}, of P, but different probabilities q j, j J. Optimal reduction of a given scenario set J: The best approximation of P with respect to µ c by such a distribution Q exists and is denoted by Q. It has the distance D J = µ c (P, Q) = p i min c(ξ i, ξ j ) j J i J and the probabilities q j = p j + p i, j J, where J j := {i i J j J : j = j(i)} and j(i) arg min c(ξ i, ξ j ), i J, i.e., the optimal j J redistribution consists in adding the deleted scenario weight to that of some of the closest scenarios. Page 9 of 20 However, finding the optimal scenario set with a fixed number n of scenarios is a combinatorial optimization problem.

5. Fast reduction heuristics Algorithm 1: (Simultaneous backward reduction) Step [0]: Step [i]: Step [N-n+1]: Sorting of {c(ξ j, ξ k ) : j}, k, J [0] :=. l i arg min l J [i 1] k J [i 1] {l} J [i] := J [i 1] {l i }. Optimal redistribution. p k min c(ξ k, ξ j ). j J [i 1] {l} Page 10 of 20

Algorithm 2: (Fast forward selection) Step [0]: Compute c(ξ k, ξ u ), k, u = 1,..., N, Step [i]: Step [n+1]: J [0] := {1,..., N}. u i arg min u J [i 1] J [i] := J [i 1] \ {u i }. k J [i 1] \{u} Optimal redistribution. p k min c(ξ k, ξ j ), j J [i 1] \{u} Page 11 of 20

1000 Original load scenario tree 500 0-500 -1000 0 25 50 75 100 125 150 1000 1000 500 Reduced load scenario tree / backward 500 0 Page 12 of 20 0-500 -500-1000 -1000 1000 500 24 48 72 96 120 144 168 Reduced load scenario tree / forward 24 48 72 96 120 144 168 500 0 0-500 -500-1000 24 48 72 96 120 144 168-1000 24 48 72 96 120 144 168

6. Constructing scenario trees from data scenarios Let a fan of data scenarios ξ i = (ξ1, i..., ξt i ) with probabilities πi, i = 1,..., N, be given, i.e., all scenarios coincide at the starting point t = 1, i.e., ξ1 1 =... = ξ1 N =: ξ1. Hence, it has the form t = 1 may be regarded as the root node of the scenario tree consisting of N scenarios (leaves). Now, P is the (discrete) probability distribution of ξ. Let c be adapted to the underlying stochastic program containing P. We describe an algorithm that produces, for each ε > 0, a scenario tree with distribution P ε, root node ξ1, less nodes than P and µ c (P, P ε ) < ε. Page 13 of 20

Recursive reduction algorithm: Let ε t > 0, t = 1,..., T, be given such that T t=1 ε t ε, set t := T, I T +1 := {1,..., N}, πt i +1 := πi and P T +1 := P. For t = T,..., 2: Step t: Determine an index set I t I t+1 such that µ ct (P t, P t+1 ) < ε t, where {ξ i } i It is the support of P t and c t is defined by c t (ξ, ξ) := c((ξ 1,..., ξ t, 0,..., 0), ( ξ 1,..., ξ t, 0,..., 0)); (scenario reduction w.r.t. the time horizon [1, t]) Step 1: Determine a probability measure P ε such that its marginal distributions P ε Π 1 t are δ ξ 1 for t = 1 and P ε Π 1 t = πtδ i ξ i and π t t i := πt+1 i + π j t+1, i I t j J t,i where J t,i := {j I t+1 \ I t : i t (j) = i}, i t (j) arg min i I t c t (ξ j, ξ i )} are the index sets according to the redistribution rule. Page 14 of 20

Page 15 of 20 Blue: compute c-distances of scenarios; delete the green scenario & add its weight to the red one

Application: ξ is the bivariate weekly data process having the components a) electrical load, b) hourly electricity spot prices (at EEX). Data scenarios are obtained from a stochastic model calibrated to the historical load data of a (small) German power utility and historical price data of the European Energy Exchange (EEX) at Leipzig. We choose N = 50, T = 7, ε = 0.05, ε t = ε T, and arrive at a tree with 4608 nodes (instead of 8400 nodes of the original fan). t hours I t 1 1 24 1 2 25 48 12 3 49 72 23 4 73 96 31 5 97 120 37 6 121 144 42 7 145 168 46 Page 16 of 20

400 Scenario tree for the electrical load 350 300 Load 250 200 150 0 25 50 75 100 125 150 Hours 100 Scenario tree for hourly spot prices Page 17 of 20 80 Spot price 60 40 20 0 25 50 75 100 125 150 Hours

7. GAMS/SCENRED GAMS/SCENRED introduced to GAMS Distribution 20.6 (May 2002) SCENRED is a collection of C++ routines for the optimal reduction of scenarios or scenario trees GAMS/SCENRED provides the link from GAMS programs to the scenario reduction algorithms. The reduced problems can then be solved by a deterministic optimization algorithm provided by GAMS. SCENRED contains three reduction algorithms: - FAST BACKWARD method - Mix of FAST BACKWARD/FORWARD methods - Mix of FAST BACKWARD/BACKWARD methods Automatic selection (best expected performance w.r.t. running time) Details: www.scenred.de, www.scenred.com Page 18 of 20

8. Numerical tests We tested the link between the Lagrangian relaxation and the scenario tree construction algorithms. Portfolio management problem for 25 thermal generation units and 7 pumped-storage hydro units Time horizon: 1 week; Discretization: 1 hour Initial fan of 100 load scenarios simulated from a statistical model for the load process (combines a time series model for the daily mean load with regression models for the intra-day behaviour) Page 19 of 20

Dimension and solution time for the dual ε rel N T N Variables Nonzeros time[s] binary continuous 0.6 1 168 4200 7728 44695 7.83 0.1 67 515 12875 23690 137459 17.09 0.05 81 901 22525 41446 240233 37.82 0.01 94 2660 66500 122360 708218 150.14 0.005 96 3811 95275 175306 1014398 291.65 0.001 100 9247 231175 425362 2460402 1176.38 100 Dual optimum 3.410 7 3.3510 7 3.310 7 3.2510 7 3.210 7 3.1510 7 80 60 40 20 Page 20 of 20 0 0.2 0.4 0.6 0.8 1 relative tolerance for the scenario tree 0 25 50 75 100 125 150 Hours Dual optimum and number of scenario bundles I t (t = 1,..., T ) for scenario trees with relative tolerance ε rel = 0.001 ( ), 0.005 ( ), 0.01 ( )