EE/Econ 458 Introduction to Linear Programming

Slides:



Advertisements
Similar presentations
Geometry and Theory of LP Standard (Inequality) Primal Problem: Dual Problem:
Advertisements

Lesson 08 Linear Programming
Lecture #3; Based on slides by Yinyu Ye
Introduction to Algorithms
Chapter 2: Modeling with Linear Programming & sensitivity analysis
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Feb 18, 2013.
EE 553 Integer Programming
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Separating Hyperplanes
Chapter 10: Iterative Improvement
1 Lecture 11 Resource Allocation Part1 (involving Continuous Variables- Linear Programming) 1.040/1.401/ESD.018 Project Management Samuel Labi and Fred.
Optimization Linear Programming and Simplex Method
Linear Programming Digital Lesson. Copyright © by Houghton Mifflin Company, Inc. All rights reserved. 2 Linear programming is a strategy for finding the.
Chapter 3 An Introduction to Linear Programming
Introduction to Optimization (Part 1)
Stevenson and Ozgur First Edition Introduction to Management Science with Spreadsheets McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
Linear programming Lecture (4) and lecture (5). Recall An optimization problem is a decision problem in which we are choosing among several decisions.
Linear Programming David Kauchak cs161 Summer 2009.
Algebra 2 Chapter 3 Notes Systems of Linear Equalities and Inequalities Algebra 2 Chapter 3 Notes Systems of Linear Equalities and Inequalities.
Algebra 2 Chapter 3 Notes Systems of Linear Equalities and Inequalities Algebra 2 Chapter 3 Notes Systems of Linear Equalities and Inequalities.
1. The Simplex Method.
Optimization for Operation of Power Systems with Performance Guarantee
EE/Econ 458 Introduction to Linear Programming J. McCalley 1.
ENCI 303 Lecture PS-19 Optimization 2
1 Chapter 7 Linear Programming. 2 Linear Programming (LP) Problems Both objective function and constraints are linear. Solutions are highly structured.
Graphing Linear Inequalities in Two Variables Chapter 4 – Section 1.
Systems of Inequalities in Two Variables Sec. 7.5a.
QMB 4701 MANAGERIAL OPERATIONS ANALYSIS
Linear Programming Problem. Definition A linear programming problem is the problem of optimizing (maximizing or minimizing) a linear function (a function.
Systems Analysis Methods
WOOD 492 MODELLING FOR DECISION SUPPORT Lecture 3 Basics of the Simplex Algorithm.
Chapter 2 Introduction to Linear Programming n Linear Programming Problem n Problem Formulation n A Maximization Problem n Graphical Solution Procedure.
Warm-Up 3.4 1) Solve the system. 2) Graph the solution.
3 Components for a Spreadsheet Optimization Problem  There is one cell which can be identified as the Target or Set Cell, the single objective of the.
1 Optimization Techniques Constrained Optimization by Linear Programming updated NTU SY-521-N SMU EMIS 5300/7300 Systems Analysis Methods Dr.
© 2009 Prentice-Hall, Inc. 7 – 1 Decision Science Chapter 3 Linear Programming: Maximization and Minimization.
1 Simplex algorithm. 2 The Aim of Linear Programming A Linear Programming model seeks to maximize or minimize a linear function, subject to a set of linear.
Linear programming Lecture (4) and lecture (5). Recall An optimization problem is a decision problem in which we are choosing among several decisions.
MIT and James Orlin © The Geometry of Linear Programs –the geometry of LPs illustrated on GTC.
1 1 Slide Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an.
1 2 Linear Programming Chapter 3 3 Chapter Objectives –Requirements for a linear programming model. –Graphical representation of linear models. –Linear.
1 Chapter 4 Geometry of Linear Programming  There are strong relationships between the geometrical and algebraic features of LP problems  Convenient.
An Introduction to Linear Programming
Linear Programming for Solving the DSS Problems
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
An Introduction to Linear Programming Pertemuan 4
Chapter 2 An Introduction to Linear Programming
Digital Lesson Linear Programming.
Linear Programming – Introduction
Signal processing and Networking for Big Data Applications: Lecture 9 Mix Integer Programming: Benders decomposition And Branch & Bound NOTE: To change.
EE/Econ 458 Integer Programming
Digital Lesson Linear Programming.
Linear Programming Dr. T. T. Kachwala.
Copyright © Cengage Learning. All rights reserved.
prepared by Imran Ismail
Graphical Analysis – the Feasible Region
ENGM 631 Optimization Ch. 4: Solving Linear Programs: The Simplex Method.
Linear Programming CISC4080, Computer Algorithms CIS, Fordham Univ.
CISC5835, Algorithms for Big Data
Linear Programming.
Linear Programming I: Simplex method
Systems Analysis Methods
EE 458 Introduction to Optimization
Back to Cone Motivation: From the proof of Affine Minkowski, we can see that if we know generators of a polyhedral cone, they can be used to describe.
Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an equation.
Chapter 10: Iterative Improvement
Chapter 2. Simplex method
EE/Econ 458 Introduction to Economics: Producer’s Surplus
Presentation transcript:

EE/Econ 458 Introduction to Linear Programming J. McCalley

Security Constrained Economic Dispatch* SUBJECT TO constraints on Gen resource & demand response resource Demand response resource External asynchronous constraints Stored energy reserve constraints Energy transaction constraints OPF constraints Reliability constraints - System reserves - transmission - watchlist transmission flowgates - contingencies *From Chapter 6 of the MISO Energy & Operating Reserve Markets, Business Practices Manual, BPM-002-r10, JUN-29-2011.

Security Constrained Economic Dispatch* SUBJECT TO constraints on … *From Appendix D of the MISO Energy & Operating Reserve Markets, Business Practices Manual, BPM-002-r13, FEB 4,-2014.

Security Constrained Economic Dispatch* SUBJECT TO constraints on … *From Attachment D of the MISO Energy & Operating Reserve Markets, Business Practices Manual, BPM-002-r18, Sept 23,-2017. See https://www.misoenergy.org/legal/business-practice-manuals/8

Security Constrained Economic Dispatch SCED may be simplified to the following GIVEN: A number of gens make price-quantity offers to sell A number of LSEs make price-quantity bids to buy MAXIMIZE social surplus U(P)-C(P), where U(P) is the composite utility (value) function for consumers, C(P) is the composite cost function for suppliers, and P is real power injection vector of network nodes (+ for gen, - for load). SUBJECT TO constraints: Pmin<P<Pmax Sum of injections at each node=0 (implies gen sum=dem sum) Flows on each circuit <= maximum flow for circuit The SCED algorithm uses a Linear Programming (LP) solver, and so we will study LP to understand this optimization method.

Some preliminaries 1. Maximization of a function is equivalent to minimization of the negated function,  maximize f(x) is the same as minimize (-f(x)) 2. An inequality constraint may be equivalently written as g(x)>b or -g(x)<-b And so any of the following problems are equivalent:

Linear Program – Standard Form Problem P: Requirements: f(x) is a linear function in x, i.e., a1x1+a2x2+…+anx3 All equalities hj(x)=cj are linear functions in x. All inequalities gk(x)≤bk are linear functions in x.  Then Problem P is a linear program.

Linear Program – A Convex Program Problem P: Feasible set Recall: If f(x) is a convex function, and if S is a convex set, then the above problem is a convex programming problem. f(x) is linear, therefore a convex function. If S is formed by inequalities, it is polyhedral (many flat faces), therefore convex. One linear equality reduces feasible set S to the line. More than one reduces feasible set S to their intersections. S is convex in both cases.  A linear program is a convex programming problem. If we find a locally optimal solution, it will be globally optimal.

Example 1 Ignore inequality. Form Lagrangian: Apply first-order conditions: What happened?

Example 1 We can push f(x) as far positive as we like and there will always be an intersection point with the equality constraint. This problem is unbounded. This can happen with linear programs. But what about the inequality constraint?

Example 1 Form Lagrangian: KKT Conditions

Example 1 The feasible region associated with the inequality constraint is on/below the dotted line The feasible region for the problem is on/below the dotted line and on the thick red one (the equality constraint). The feasible region for the problem includes everything on thick line to the right of/including intersection point (red dot).

Example 1 Maximize the objective: Choose solution that has largest value of f(x) but is in feasible region.  Choose highest contour touching feasible (red) line. This is shown by the dashed line at the end of its animation. Graphical analysis reveals the solution is: x1=6, x2=10 (red dot)

Example 1 Definition: Any constraint bounding the feasible region boundary is an active constraint. Observation: The solution occurred at a point where two active constraints intersect.

Example 2 Resource allocation: Optimize an objective through allocating resources to activities subject to constraints on resources. Three people work 8 hours/day (480 min) making materials X and Y. Their company makes $5 profit per unit X, $8 profit per unit Y. The times required for each person’s contribution towards making a unit are below. Note: A unit of material requires contributions from all three people, i.e., no individual may make either material on their own.   Material Person 1 2 3 X 40 min 24 min 20 min Y 30 min 32 min Objective: Maximize profits Resource: Time of each person Activities: Producing materials X and Y.

Example 2 Three people work 8 hours/day (480 min) making materials X and Y. Their company makes $5 profit per unit X, $8 profit per unit Y. The times required for each person’s contribution towards making a unit are below.   Material Person 1 2 3 X 40 min 24 min 20 min Y 30 min 32 min Produce only X Subject to (person 1) (person 2) Produce only Y (person 3)

Example 2 Conclusion: Producing only Y is better than producing only X, and if we have only these two options, we will produce only Y. Subject to (person 1) (person 2) (person 3) Where on the plot are the solutions we just found? Can we increase profits beyond $120 by producing some of each?

Example 2 Plot the contours of increasing objective function. The contour f=60 passes through the point (12,0). The contour f=120 passes through the point (0,15). Is it possible for any point to be better than the red one? No. All other points on the f=120 contour occur above the feasible region; all other contours touching the feasible region are below 120. Optimal solution is again at a point where 2 active constraints intersect.

Example 3 Same constraints but slightly different objective. Subject to (person 1) (person 2) (person 3) Which of the points is optimal? The blue one is optimal since there must be a contour between f=120 and f=130 that just touches it, and any contour with higher f will not touch the feasible region. Optimal solution is again at a point where 2 active constraints intersect.

Example 4 Same constraints but slightly different objective. Subject to (person 1) (person 2) (person 3) Which of the points is optimal? The yellow one is optimal since the contour f=180 just touches it, and any contour with higher f will not touch the feasible region. Optimal solution is again at a point where 2 active constraints intersect.

Conclusion The optimal solution was always at a point where two active constraints intersect (corner points). This always happens in an LP. The solution to an LP, if one exists, is always at a corner point. Solution strategy: Search the corner points!

A consideration (0,0), (12,0), (1.7143, 13.7143), (0,15) How many corner points does our problem have? (0,0), (12,0), (1.7143, 13.7143), (0,15) But what about (0,16), (0,20), (20,0), and (24,0) and the two more outside the plot? The first set are feasible corner points. Revised solution strategy: Search the feasible corner points! The second set are infeasible corner points.

Why is our revision important? Without our revision, since each pair of m constraints contributes 1 intersection (assuming no parallel constraints and all constraints intersect at a unique point), the number of corner points is obtained as a combination of m distinct things taken 2 at a time. In our case, m =5, so Some problems have millions of constraints! The number of feasible corner points is significantly lower than the number of corner points. With 40 constraints, there would be 780 corner points to check.

An approach Revised solution strategy: Search the feasible corner points!

An approach Pick a feasible corner point at random. Move to an adjacent feasible corner point that is better. If there are two that are better, move to the one that is best. If there are no better adjacent feasible corner points, the current feasible corner point is the solution to the problem. Optimality (stopping) condition: If a feasible corner point is equal to or better than all its adjacent feasible corner points, then it is equal to or better than all other feasible corner points, i.e., it is optimal. Main ideas of proof: If objective function monotonically increases (decreases) in some direction within the decision-vector space, then each adjacent corner point will become progressively better in the direction of objective function increase (decrease) such that the last corner point must have two adjacent corner points that are worse. The monotonicity of objective function increase (decrease) is guaranteed by its linearity.

High-Level Version of Simplex Method Initialization: Start at a corner point solution. Iterative step: Move to a better adjacent feasible corner point. Optimality test: Determine if the current feasible corner point is optimal using our optimality test (if none of its adjacent feasible corner points are better, then the current feasible corner point is optimal). If the current feasible corner point is optimal, the solution has been found, and the method terminates. If the current feasible corner point is not optimal, then go to 2.