Dynamic modelling and network optimization

Similar documents
1. What do you get as the integer and noninteger parts if you factor this as we did with our cutting planes:

Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

Tuesday, April 10. The Network Simplex Method for Solving the Minimum Cost Flow Problem

CSE 417 Network Flows (pt 4) Min Cost Flows

Lecture 8 Network Flow Models

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

Module 10. Network Simplex Method:

Lecture 19 Shortest Path vs Spanning Tree Max-Flow Problem. October 25, 2009

NETWORK OPTIMIZATION MODELS

Lecture 3: Totally Unimodularity and Network Flows

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

Simulation. Lecture O1 Optimization: Linear Programming. Saeed Bastani April 2016

Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The max-flow problem Max-flow min-cut theorem

IV. Special Linear Programming Models

Final Exam Spring 2003

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

4. Linear Programming

Artificial Intelligence

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

Integer Programming Theory

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

ME 391Q Network Flow Programming

BCN Decision and Risk Analysis. Syed M. Ahmed, Ph.D.

OPTIMIZATION METHODS

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

Chalmers University of Technology. Network Models. April 11, Birgit Grohe

Network Models - Examples. Network Models. Definition and Terminology. The Minimum Spanning Tree (MST) Problem

Linear Programming. Course review MS-E2140. v. 1.1

Lecture 18 Solving Shortest Path Problem: Dijkstra s Algorithm. October 23, 2009

Introduction to Parallel & Distributed Computing Parallel Graph Algorithms

Optimization Methods: Linear Programming Applications Transportation Problem 1. Module 4 Lecture Notes 2. Transportation Problem

Transportation Problems

AMATH 383 Lecture Notes Linear Programming

Mathematical Tools for Engineering and Management

Generalized Network Flow Programming

Lecture 19. Broadcast routing

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Linear Programming. them such that they

Solutions for Operations Research Final Exam

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

LECTURES 3 and 4: Flows and Matchings

Application of Bounded Variable Simplex Algorithm in Solving Maximal Flow Model

A Comparative study on Algorithms for Shortest-Route Problem and Some Extensions

and 6.855J. The Successive Shortest Path Algorithm and the Capacity Scaling Algorithm for the Minimum Cost Flow Problem

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

OPERATIONS RESEARCH. Transportation and Assignment Problems

Network optimization: An overview

The Simplex Algorithm for LP, and an Open Problem

16.410/413 Principles of Autonomy and Decision Making

CMPSCI611: The Simplex Algorithm Lecture 24

Discrete Optimization. Lecture Notes 2

Ryerson Polytechnic University Department of Mathematics, Physics, and Computer Science Final Examinations, April, 2003

An example of LP problem: Political Elections

Transportation problem

Lecture notes on Transportation and Assignment Problem (BBE (H) QTM paper of Delhi University)

and 6.855J Lagrangian Relaxation I never missed the opportunity to remove obstacles in the way of unity. Mohandas Gandhi

4. Write a sum-of-products representation of the following circuit. Y = (A + B + C) (A + B + C)

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 20. Dr. Ted Ralphs

Algorithms for Integer Programming

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Lecture Notes for IEOR 266: Graph Algorithms and Network Flows

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Applications of Linear Programming

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Column Generation: Cutting Stock

Optimization of Design. Lecturer:Dung-An Wang Lecture 8

Friday 24 May 2013 Morning

Approximation Algorithms

NATCOR Convex Optimization Linear Programming 1

TRANSPORTATION AND ASSIGNMENT PROBLEMS

Overview. H. R. Alvarez A., Ph. D.

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

The Shortest Path Problem. The Shortest Path Problem. Mathematical Model. Integer Programming Formulation

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

NOTATION AND TERMINOLOGY

Integer Programming and Network Modeis

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

6. Lecture notes on matroid intersection

Advanced Algorithms Linear Programming

2. Modeling AEA 2018/2019. Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2

MATHEMATICS II: COLLECTION OF EXERCISES AND PROBLEMS

What is linear programming (LP)? NATCOR Convex Optimization Linear Programming 1. Solving LP problems: The standard simplex method

The ILP approach to the layered graph drawing. Ago Kuusik

Chapter 10: Network Flow Programming

Network Optimization Problems. Chapter 6: Hillier and Hillier

Machine Learning for Software Engineering

Shortest Paths. CSE 373 Data Structures Lecture 21

CSCI 5654 (Fall 2013): Network Simplex Algorithm for Transshipment Problems.

Example: A Four-Node Network

Fundamentals of Integer Programming

10. Network dimensioning

TA: Jade Cheng ICS 241 Recitation Lecture Note #9 October 23, 2009

Transcription:

Dynamic modelling and network optimization Risto Lahdelma Aalto University Energy Technology Otakaari 4, 25 Espoo, Finland risto.lahdelma@aalto.fi Risto Lahdelma Feb 4, 26 Outline Dynamic systems Dynamic energy models Specialized dynamic programming algorithm Network flow modelling Feb 4, 26 2

Dynamic systems A dynamic system is one which develops in time Opposite: static system Normally, a dynamic system is modelled by discretizing it into a sequence static models that are connected by dynamic constraints Dynamic energy models Examples: Yearly CHP planning model is represented by a sequence of 876 hourly models Dynamic constraints result from energy storages startup and shutdown costs and restrictions Daily hydro power scheduling is represented by a sequence of 96 5min models Dynamic constraints result from water level/amount in reservoirs and waterflows between reservoirs 2

Dynamic optimization Different ways to model and solve dynamic systems exist Multiperiod LP/MILP models General mathematical optimization models Dynamic programming algorithm Other network algorithms Dynamic programming (DP) Special optimization method for certain kind of dynamic optimization problems Network based modelling technique Cost function must be additive with respect to periods Static models at nodes need not be linear Based on Dijkstra s graph search algorithm in a graph with non-negative edge path costs the algorithm determines the shortest path from a single node to all other nodes Optimality principle: If the shortest path from node s to t goes through node b (s,,b,,t), then subpath (b,,t) is the shortest path between b and t; also(s,,b) is the shortest path between s and b. 3

Dijkstra s graph search algorithm Used for finding shortest path in a graph Shortest can mean Shortest distance, fastest travel time, cheapest way to travel, or minimization of any other measure Only required that each arc adds up to the objective Arc costs may not be negative negative costs may result in infinitely good cyclic paths Used e.g. in GPS navigators to find shortest or fastest route The algorithm has almost linear time complexity with respect to number of nodes & arcs! Dijkstra s graph search algorithm The algorithm maintains a set of nodes L such that for each node bl the shortest so far found path is (s,,b), but it is not yet known if this path is optimal. Initially L includes only node s for which a zero-length path (s) known While L is non-empty, the algorithm works iteratively: The shortest of the so far known paths (s,,b) must be the optimal, because reaching b by extending some of the other paths would yield a longer path (non-negative costs add up) Node b is removed from L Each node c adjacent to b is explored to see if path (s,,b,c) is a shorter path to c than the so far shortest found path. Nodes in set L and the paths are updated accordingly. The algorithm has almost linear time complexity with respect to number of nodes & arcs! 4

Dynamic programming (DP) for production plant startup/shutdown scheduling The state of the plant is an integer,+2,, or -,-2,, indicating for how many periods the plant has been on or off The arcs denote allowed transitions with associated costs The shortest path from the initial state to the final period is the optimal way to operate DP for production plant startup/shutdown scheduling Arcs for illegal transitions are omitted When startup/shutdown is not allowed The costs for allowed transitions include Startup/shutdown costs Operating costs within period in the given on/off state subtracted by possible revenues Operating costs can be determined by optimizing static model for the period Arbitrary optimization model can be used 5

Limitations of DP for unit commitment With one plant, the number of on/off states per period is reasonable (6 in previous example) With multiple plants, it is necessary to consider all combinations of on/off-states of all plants With two plants 36 combinations: (+,+), (+,+2), (+,+3), (+,-), (+,-2), (+,-3), (+2,+,)... Problem size and solution time grows exponentially by the number of plants Solution: Sequential DP (see article by Rong, Hakonen, Lahdelma) Network flow model A network consists of nodes and connecting arcs Some commodity (power, heat, ) can flow through the arcs Normally arches are directed allowing flow in only one direction -6 2 3 +5 4 + Attributes are associated to nodes and/or arches Supply/demand d j of commodity at each node Transfer price c ij through each arch Possibly a maximum capacity u ij for each arch Feb 4, 26 2 6

The transshipment network flow model The aim is to determine flows x ij through each arc so that All nodes in the network are balanced For this to succeed, it is necessary that total supplies/demands at nodes i d i = Overall transportation costs are minimized Transshipment = commodity can pass through other nodes before reaching its final goal 3 The transshipment network flow model LP-formulation Min i j c ij x ij s.t. // minimize total costs j x ij - j x ji = d i for each node i x ij (optionally capacity constraints x ij u ij ) Here x ij is flow from node i to j c ij is unit cost for flow from node i to j u ij is maximum flow from node i to j d i is supply at node i, negative value = demand Feb 4, 26 4 7

The transshipment network flow model Can be solved using generic Simplex algorithm for LP much more efficient network simplex algorithm Applies to a wide variety of different problems Static models Power production and transfer between market areas District heat production and transmission Dynamic models Hydro power optimization Feb 4, 26 5 Transshipment flow problem example: Power transmission problem Target: minimize power transmission costs while balancing supply and demand in market areas Decision variables x ij power transmission from area i to j (MWh) Parameters c ij power transmission cost from area i to j ( /MWh) u ij capacity limit for transmission from area i to j (MWh) Model Min i j c ij x ij s.t. j x ij - j x ji = d i for each area i x ij u ij 6 8

9 Numerical example: Power transmission problem 7 Market areas, 4 Supply/demand, transmission costs, infinite capacities Min x2 + 3*x4 + 2*x23 + x24 + x34 + x43 s.t. x2 + x4 = 5; // area x23 + x24 x2 = ; // area 2 x34 x23 x43 = 6; // area 3 x43 x4 x24 x34 = ; // area 4 x2, x4, x23, x24, x34, x43 >= ; 2 3 c u 6 5 d Numerical example: Power transmission problem 8 In matrix format (min cx s.t. Ax = b, x) we have A has + and - on each column One of the constraints is redundant Any row of A is the negated sum of all other rows A T x x x x x x 4 34 24 23 4 2 x

Solution of transshipment flow problem Assuming that none of the transmission costs is negative, the optimal solution will never contain cyclic flows A cyclic flow means that some amount of commodity completes a cycle ending at the same node where it started Assuming in addition that the network is connected, the optimal solution will form a spanning tree of the network A tree is a connected acyclic (cycle-free) graph To find optimum, it is sufficient to examine only tree-solutions These are equivalent to basic solutions of LP formulation Solution of transshipment problem is even faster than generic LP Special Network Simplex algorithm 9 Piecewise linear approximation plant with convex characteristic Assume a power (or heat) plant with convex characteristic (c,p), c = cost, p = power (or heat) Two part piecewise linear approximation of characteristic Model Min c *p + c 2 *p 2 s.t. c p + p 2 = P // fixed demand p p max p 2 p max 2 c p,p 2 p max c 2 p p 2 max 2

Encoding production model as transshipment problem Previous power or heat plant with convex characteristic approximated with 2 line segments Source node with supply P, sink node with demand P For each line segment an arc with cost and capacity Model Min c *x + c 2 *x 2 s.t. x + x 2 = P // source node (-x -x 2 = -P // sink node) x x max x 2 x 2 max x,x 2 Source +P c, p max c 2, p 2 max Sink -P 2 Combined power production and transmission problem Problem definition Minimize overall power production costs across multiple market areas (e.g. countries or cities inside one country) Each area has local power production (both CHP and condensing power) Each area has specified demand for power and heat It is possible to transmit power between areas using capacitated transmission lines (but heat cannot be transmitted across areas) The target is to determine how much power should be produced in each area and how power should be transmitted between areas For example the Nordic power market (NordPool) ideally implements such production cost minimization 22

Three condensing power plant model We have three power plants: capacities, 2 and 3 MWh production costs 25, 3, 22 /MWh Power demand is P Define an LP model for minimizing the production costs and solve the problem for power demand P = 5, 5, 25, 35 MWh using Solver Next, reformulate the problem as a network flow problem Define an LP model for minimizing the production costs. Decision variables x, x2, x3: power production at each plant (MWh) Parameters P: power demand (MWh) Model min 25*x + 3*x2 + 22*x3 s.t. x + x2 + x3 = P; x <= ; x2 <= 2; x3 <= 3; x, x2, x3 >= ; 2

Reformulate the problem as a network flow problem and draw a picture Define two nodes Source N with supply +P, sink N with demand P Define one arc for each linear segment c=25; u= Model min 25*x+3*x2+22*x3 N c=3; u=2 N s.t. +P -P c=22; u=3 -x - x2 - x3 = -P; // for node N x + x2 + x3 = P; // for node N x <= ; x2 <= 2; x3 <= 3; x, x2, x3 >= ; Note! One constraint is redundant, model equal with LP Combined power production and transmission problem Represent optimal production cost in each area as piecewise linear convex function of power production Cost functions can be computed using parametric analysis on LP model for production in area (heat demand should be known) 26 3

Transshipment model of power transmission across market areas Each market area is an node with zero demand/supply Transmission lines are represented by directed arcs Transmission capacity is represented by capacity limit u ij for arc Transmission loss is represesnted as a unit cost c ij for arc Production capacity and elastic demand in each area Production cost and demand are piecewise linear functions Represented by multiple incoming/outgoing capacited arcs from a common dummy node Dummy node production demand c,2, u,2 Market area Market area 2 c 2,, u 2, Feb 4, 26 27 Combined power production and transmission problem Encode piecewise linear production costs as arcs in network Each line segment becomes capacited arcs from dummy source node to each area 28 4

Review questions Please review lecture material at home before next lecture and be prepared to answer review questions at beginning of next lecture.. Is it necessary that the static models in dynamic programming are convex? 2. Why should there not be negative costs/distances in the shortest path network? 3. Why must the sum of all supplies/demands in a transshipment network equal zero? 4. What kind of problems can be represented as a transshipment network flow model? 5. What is the advantage of representing a problem as a transshipment network flow model? 5