EE 553 LPOPF J. McCalley 1. LPOPF The linear program optimal power flow (LPOPF) is functionally equivalent to the SCED, except whereas LPOPF implements.

Slides:



Advertisements
Similar presentations
Introduction to Sensitivity Analysis Graphical Sensitivity Analysis
Advertisements

September 7, 2006EPOC Winter Workshop, 2006Slide 1 On Spring Washers, Constrained Dispatch, and Dispatch Model Sensitivity Andy Philpott Duncan Ashwell.
EE 553 Integer Programming
Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method.
Ramping and CMSC (Congestion Management Settlement Credit) payments.
Example 14.3 Football Production at the Pigskin Company
Operation Research Chapter 3 Simplex Method.
Finance 30210: Managerial Economics Optimization.
Sensitivity analysis BSAD 30 Dave Novak
Approximation Algorithms
Finance 510: Microeconomic Analysis
EE 685 presentation Optimization Flow Control, I: Basic Algorithm and Convergence By Steven Low and David Lapsley Asynchronous Distributed Algorithm Proof.
1 Linear Programming Using the software that comes with the book.
1 1 Slide LINEAR PROGRAMMING Introduction to Sensitivity Analysis Professor Ahmadi.
5.6 Maximization and Minimization with Mixed Problem Constraints
LINEAR PROGRAMMING: THE GRAPHICAL METHOD
Spreadsheet Modeling & Decision Analysis:
Announcements Be reading Chapter 7
John Loucks Modifications by A. Asef-Vaziri Slides by St. Edward’s
Effects of the Transmission Network on Electricity Markets © 2011 D. Kirschen and the University of Washington 1.
Introduction to Optimization (Part 1)
Economic Applications of Functions and Derivatives
EE 369 POWER SYSTEM ANALYSIS
EE 369 POWER SYSTEM ANALYSIS
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved Slides by JOHN LOUCKS St. Edward’s University.
Kerimcan OzcanMNGT 379 Operations Research1 LP: Sensitivity Analysis and Interpretation of Solution Chapter 3.
LINEAR PROGRAMMING SIMPLEX METHOD.
IMO Market Evolution Program Drew Phillips Market Evolution Program
Introduction to Mathematical Programming OR/MA 504 Chapter 3.
1. The Simplex Method.
Special Conditions in LP Models (sambungan BAB 1)
EE/Econ 458 Introduction to Linear Programming J. McCalley 1.
Perfect Competition *MADE BY RACHEL STAND* :). I. Perfect Competition: A Model A. Basic Definitions 1. Perfect Competition: a model of the market based.
Sensitivity Analysis What if there is uncertainly about one or more values in the LP model? 1. Raw material changes, 2. Product demand changes, 3. Stock.
Chapter 6 Linear Programming: The Simplex Method
8. Linear Programming (Simplex Method) Objectives: 1.Simplex Method- Standard Maximum problem 2. (i) Greedy Rule (ii) Ratio Test (iii) Pivot Operation.
Managerial Decision Making and Problem Solving
Barnett/Ziegler/Byleen Finite Mathematics 11e1 Learning Objectives for Section 6.4 The student will be able to set up and solve linear programming problems.
Business Mathematics MTH-367 Lecture 15. Chapter 11 The Simplex and Computer Solutions Methods continued.
1 1 Slide © 2009 South-Western, a part of Cengage Learning Slides by John Loucks St. Edward’s University.
Linear Programming: Sensitivity Analysis and Interpretation of Solution Pertemuan 5 Matakuliah: K0442-Metode Kuantitatif Tahun: 2009.
April, 2008 Maximum Shadow Price. April, 2008 Protocol Requirement: Transmission Constraint Management (2)ERCOT shall establish a maximum Shadow.
Market Evolution Program Day Ahead Market Project How the DSO Calculates Nodal Prices DAMWG October 20, 2003.
January 21, 2010 Security Constrained Economic Dispatch Resmi Surendran.
1 The Dual in Linear Programming In LP the solution for the profit- maximizing combination of outputs automatically determines the input amounts that must.
Linear Programming Revised Simplex Method, Duality of LP problems and Sensitivity analysis D Nagesh Kumar, IISc Optimization Methods: M3L5.
 Minimization Problem  First Approach  Introduce the basis variable  To solve minimization problem we simple reverse the rule that is we select the.
Chapter 6 Linear Programming: The Simplex Method Section 4 Maximization and Minimization with Problem Constraints.
EE/Econ 458 Duality J. McCalley.
EE 685 presentation Optimization Flow Control, I: Basic Algorithm and Convergence By Steven Low and David Lapsley.
Spreadsheet Modeling & Decision Analysis A Practical Introduction to Management Science 5 th edition Cliff T. Ragsdale.
Announcements Homework 8 is 11.19, 11.21, 11.26, 11.27, due now
ECE 476 Power System Analysis Lecture 18: LMP Markets, Symmetrical Faults and Components Prof. Tom Overbye Dept. of Electrical and Computer Engineering.
EE/Econ 458 SCUC J. McCalley 1. Unit Commitment (UC) 2 The problem of unit commitment (UC) is to decide which units to interconnect over the next T hours,
EE/Econ 458 Market Overview: Time-Line and SCUC, RAC, SCED J. McCalley 1.
Approximation Algorithms based on linear programming.
1 1 Slide © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole.
 This will explain how consumers allocate their income over many goods.  This looks at individual’s decision making when faced with limited income and.
EE/Econ 458 LPOPF J. McCalley.
EE/Econ 458 Integer Programming
The minimum cost flow problem
ECEN 460 Power System Operation and Control
LMP calculations Congestion evaluation
Module E3-a Economic Dispatch.
ECEN 460 Power System Operation and Control
EE/Econ 458 Introduction to Economics: Producer’s Surplus
EE/Econ 458 Introduction to Linear Programming
Presentation transcript:

EE 553 LPOPF J. McCalley 1

LPOPF The linear program optimal power flow (LPOPF) is functionally equivalent to the SCED, except whereas LPOPF implements normal line flow constraints, SCED implements security constraints as well. In addition, LPOPF uses DC power flow equations whereas SCED uses generation shift factors. The simultaneous-co-optimized SCED does one more thing, it also implements the ancillary services (reserves) market. The below papers are posted to the website and provide a full description of the SC-SCUC and the SC-SCED. 2 Ref: Xingwang Ma, Haili Song, Mingguo Hong, Jie Wan, Yonghong Chen, Eugene Zak, “The Security-constrained Commitment and Dispatch For Midwest ISO Day-ahead Co-optimized Energy and Ancillary Service Market,” Proc. of the 2009 IEEE PES General Meeting. Ref: Xingwang Ma, Yonghong Chen, Jie Wan, “Midwest ISO Co-optimization Based Real-time Dispatch and Pricing of Energy and Ancillary Services,” Proc. of the 2009 IEEE PES General Meeting.

Linearized cost rate curves In our simplest version, we assume that only generators supply offers and all load is “must serve.” We assume we have linearized cost-rate (generation offer) curves into some number of price-quantity offers. The below illustrates this linearization to either three offers or one. 3 Three offers: (s i1,P i1 ), (s i2, P i2 ), (s i3, P i3 ) One offer: (s i,P i ),)

LPOPF 4 Subject to: where: Alternatively, you can use the “reduced” DC power flow equations together with the above power balance constraint, which, for the example on the next slide, is Pg1+Pg2+Pg3= (In the “reduced” DC power flow, θ 1 =0 and so first col and first row are eliminated). We do not want to eliminate the first equation from the DC power flow equations because we want to obtain the multiplier for it. So we will not delete a column and row in DC power flow equations. If you do, you are relieving the need to satisfy power balance: P1+P2+P3+P4=0 You can see that the above is imposed by the “full” DC power flow equations by summing the rows.

Introduction to dual variables 5 This says that the λ i = ΔF * /Δb i only for incrementally small Δb i. In fact, we will see that we need to be more restrictive than that.. Consider the following optimization problem: Min F(x) Subject to g i (x)≤b i, i=1,…,m We solve it by applying KKT conditions to the Lagrangian: L(x,λ)=F(x)-Σλ i (g i (x)-b i ) The λ i, i=1,…,m, called the Lagrange multipliers, or the dual variables, are defined by:

Example 6, s 1 =13.07 $/MWhr s 2 =12.11 $/MWhr s 4 =12.54 $/MWhr s 1 =1307 $/puMWhr s 2 =1211 $/puMWhr s 4 =1254 $/puMWhr Objective function:

Example 7, DC power flow equality constraints: From last time: where But P g3, P d1, P d2, P d3, P d4 are fixed at 0,0,1, , 0, so the above become: Putting the equations into CPLEX constraint form (variables on left, constant on RHS): We need to write equations so that RHS values, if they are or were to be non-zero, are or would be positive, in order to get positive dual variables.

Example 8, Line flow equality constraints: From last time: These are not constraints on our problem. They just compute for us the line flows which we then constrain with inequalities. We could also do each of these as one equation, using a single inequality constraint. Note we need “full” node- arc incidence matrix because we have full DC power flow equations.

Example 9, minimize: …and the inequality constraints

Example 10, I will solve this example in CPLEX, but in the corresponding “Word” notes (which are posted on the website), it is solved in Matlab. You may use any solver you like to perform the homework. However, it is useful to learn how to use CPLEX because so many market vendors use it.

CPLEX Code minimize 1307 pg pg pg4 subject to theta1=0 -pb theta theta4 = 0 -pb theta theta2 = 0 -pb theta theta3 = 0 -pb theta theta4 = 0 -pb theta theta3 = 0 pg theta theta theta theta4 = 0 pg theta theta theta3 = 1 10 theta theta theta theta4 = pg theta theta theta4 = 0 -pg1 <= -0.5 pg1 <= 2 -pg2 <= pg2 <= 1.5 -pg4<= pg4 <= 1.8 -pb1 <= 500 pb1 <= 500 -pb2 <= 500 pb2 <= 500 -pb3 <= 500 pb3 <= 500 -pb4 <= 500 pb4 <= 500 -pb5 <= 500 pb5 <= 500 Bounds -500 <= pb1 <= <= pb2 <= <= pb3 <= <= pb4 <= <= pb5 <= <= theta1 <= <= theta2 <= <= theta3 <= <= theta4 <= end Objective Line flows DC power flow equations Generation offer constraints Line flow constraints CPLEX only provides dual variables for equalities and inequalities that appear in the constraint list and not the “bounds” list, i.e., it does not provide dual variables for inequalities in the “bounds” list. If the exact same constraints are imposed both places, CPLEX will not provide a dual variable. If you do not explicitly define a bound on a variable, then CPLEX applies bounds of 0 to ∞, and so if you want negativity for a variable, you must impose that here. I can arbitrarily set one angle to whatever I like (within bounds), since it is the angle differences that are important.11

Solution display solution variables – Variable Name Solution Value pg pg pg pb theta pb theta pb theta pb pb All other variables in the range 1-12 are 0. Z*=$ There are 11 variables listed as non-0. So which variable is 0? Why? 12

Solution Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P B P g P g P B P B P B P B P1P P B P2P P B P3P P B P4P ($/per unit-hr) display solution dual - Constraint Name Dual Price c c c c c c All other dual prices in the range 1-26 are 0. The dual variables tell us how much the objective changes when the right-hand-side of the corresponding constraint increases by a unit (subject to qualifications on next slide). Since we are in “per unit”, and a “per-unit” is 100 MW, dividing the dual variables by 100 gives the corresponding $/MW change in the objective function. So dual variables for c7-c10 are$12.11/MWhr  Increasing load by 1 MW at either of buses 1,2,3, or 4 increases objective by $ This is set by the bus 2 generator, as it will respond to any load change. c11 is -$0.96/MWhr  This constraint is –pg1<=-0.5. Increasing RHS from -0.5 to -0.49, equivalent to decreasing lower bound on pg1 from 50 to 49 MW, reduces objective by $0.96. c15 is -$0.43/MWhr  This constraint is –pg4 <= Increasing RHS from to -0.44, equivalent to decreasing lower bound on pg4 from 45 to 44 MW, reduces objective by $

Qualification to dual variable definition From last slide: “The dual variables tell us how much the objective changes when the right-hand-side of the corresponding constraint increases by a unit (subject to qualifications…).” This says that the λ i = ΔF * /Δb i only for incrementally small Δb i. In fact, it is more restrictive than that.  In an LP, λ i = ΔF * /Δb i holds only for Δb i such that within b i + Δb i (inclusive), no change in the active constraint set occurs. For example, if constraint i is active (inactive) at b i, and it becomes inactive (active) within b i + Δb i, then λ i = ΔF * /Δb i will not hold within b i + Δb i. if constraint k is active (inactive) at b i, and it becomes inactive (active) within b i + Δb i, then λ i = ΔF * /Δb i will not hold within b i + Δb i. Note: Be careful in HW#5, problem 7, parts 7-c (v) and 7-c (vi). 14

Case 1 minimize 1307 pg pg pg4 subject to theta1=0 -pb theta theta4 = 0 -pb theta theta2 = 0 -pb theta theta3 = 0 -pb theta theta4 = 0 -pb theta theta3 = 0 pg theta theta theta theta4 = 0 pg theta theta theta3 = theta theta theta theta4 = pg theta theta theta4 = 0 -pg1 <= -0.5 pg1 <= 2 -pg2 <= pg2 <= 1.5 -pg4<= pg4 <= 1.8 -pb1 <= 500 pb1 <= 500 -pb2 <= 500 pb2 <= 500 -pb3 <= 500 pb3 <= 500 -pb4 <= 500 pb4 <= 500 -pb5 <= 500 pb5 <= 500 Bounds -500 <= pb1 <= <= pb2 <= <= pb3 <= <= pb4 <= <= pb5 <= <= theta1 <= <= theta2 <= <= theta3 <= <= theta4 <= end Change Pd2 from 1 to 1.01 (a 1 MW increase) and resolve. Solution provides: Z*=$ Previous solution was: Z*=$

Case 2a Take a look at solution to original case: Let’s constrain Pb3 to 0.3. This means that upper and lower bounds of Pb3 should be changed from (-500,500) to (-0.3,0.3). We will, however, only do this in the “constraint” section. Having it in the “constraint” section will ensure when it binds, we will get a dual variable. But we will keep the (-500,500) in the “bounds” section in order to prevent CPLEX from imposing non-negativity. So the new CPLEX code is as follows: 16

Case 2a minimize 1307 pg pg pg4 subject to theta1=0 -pb theta theta4 = 0 -pb theta theta2 = 0 -pb theta theta3 = 0 -pb theta theta4 = 0 -pb theta theta3 = 0 pg theta theta theta theta4 = 0 pg theta theta theta3 = theta theta theta theta4 = pg theta theta theta4 = 0 -pg1 <= -0.5 pg1 <= 2 -pg2 <= pg2 <= 1.5 -pg4<= pg4 <= 1.8 -pb1 <= 500 pb1 <= 500 -pb2 <= 500 pb2 <= 500 -pb3 <= 0.3 pb3 <= 0.3 -pb4 <= 500 pb4 <= 500 -pb5 <= 500 pb5 <= 500 Bounds -500 <= pb1 <= <= pb2 <= <= pb3 <= <= pb4 <= <= pb5 <= <= theta1 <= <= theta2 <= <= theta3 <= <= theta4 <= end Solution provides: Z*=$ Previous solution was: Z*=$ Change Pb3 constraint from (-500,500) to (-0.3, 0.3) and resolve. 17

Case 2a display solution variables – Variable Name Solution Value pg pg pg pb theta pb theta pb theta pb pb All other variables in the range 1-12 are 0. Z*=$ In comparing the two solutions, we observe flow on branch 3 is constrained to 0.3 flows all over the network have changed. gen levels at buses 2 and 4 have changed. Activation of a transmission constraint has changed the dispatch. This will affect the energy prices! Old solution New solution 18

Case 2a ($/per unit-hr)display solution dual - Constraint Name Dual Price c c c c c c c All other dual prices in the range 1-26 are 0. Generation limits: We still see a non-0 dual variable (DV) on P g1 lower limit, but the DV on the P g4 lower limit has become 0, reflecting that P g4 had to increase and come off of its lower limit to compensate for the decrease in P g2 necessary to redispatch around the P B3 constraint. Branch limits: The DV on the P B3 upper bound is -86, and after dividing by 100 to change from per-unit to MW, it is $/MW-hr, reflecting the increase in objective function that can be obtained from increasing the P B3 branch limit by 1 MW (from 0.30 per-unit to 0.31 per-unit). Recall the original case had P B3 flow at If we increase the P B3 branch limit in Case 2a to , then we should see the objective increase by ( )*-86= Our Case 2a objective is $ ; objective of original problem is $ , reduced by $ Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P B P B P B P B P B P1P P B P B P2P P B P B P3P P B P B P4P θ1θ θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 19

Case 2a ($/per unit-hr)display solution dual - Constraint Name Dual Price c c c c c c c All other dual prices in the range 1-26 are 0. Nodal prices: The DVs on the equality constraints corresponding to the 4 nodes are the nodal prices. Without transmission constraints, these prices were all the same, at $/MW-hr, a price set entirely by the generator at bus 2 since it was the bus 2 generator that responded to any load change. But now they are all different, with only bus 2 price at $/MW-hr. This difference reflects that, because of the transmission constraint, a load increase at one bus will incur a different cost than a load increase at another bus. Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P B P B P B P B P B P1P P B P B P2P P B P B P3P P B P B P4P θ1θ θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 20

Case 2b Let’s increase the load at the highest price bus, bus #3, from to per unit, an increase of 1 MW. Resulting dispatch/flows are below, together with the Case 2a dispatch/flows. Case 2b flows/dispatch (P B3 constrained, P d2 =1.1887) Case 2a flows/dispatch (P B3 constrained, P d2 =1.1787) To supply an additional MW at bus 3, the generation levels of 2 different units had to be modified. Specifically, P g2 was decreased from to , a decrease of pu (0.25 MW). P g4 was increased from pu to pu, an increase of pu (1.25 MW). Thus, P g4 was increased enough to supply the increased load at bus 3 and the decreased gen at bus 2. Question: Why did we not just increase Unit 2 or increase Unit 4 by 1 MW? 21

Case 2b Case 2b flows/dispatch (P B3 constrained, P d2 =1.1887) Case 2a flows/dispatch (P B3 constrained, P d2 =1.1787) In fact, it is not possible to supply additional load at bus 3 with only a single unit increase. We will always have to compensate for the load AND redispatch to compensate for the additional flow on the branch 3. As a result, the nodal price at bus 3 is a function of the generation costs at those buses that are used in the particular redispatch that achieves the minimum cost. Answer: Because the resulting flow on branch 3 would exceed its capacity!!! 22 We can show this by writing the Lagrangian (with terms corresponding to the four equality constraints and the one inequality constraint), and applying firsts order conditions. On the injection equations, partials with respect to P gi will be 0 except for injections that require P gi to move in order to satisfy the line flow constraint (I should do this).

Demand bidding Economists will tell you that a market is efficient if traders extract the maximum total net surplus (yellow area in below curve). 23 So we want to solve this problem: where v k and C k represent the bids and offers of the load serving entities (LSEs) and generation owners, respectively. Subject to constraints….. Equivalently, we may use the following objective function in above problem:

Demand bidding Linearizing both objective functions terms results in the following problem: 24 subject to

Example with demand bidding 25, s 1 =13.07 $/MWhr s 2 =12.11 $/MWhr s 4 =12.54 $/MWhr s 1 =1307 $/puMWhr s 2 =1211 $/puMWhr s 4 =1254 $/puMWhr Objective function: 1.00<P d2 < <P d3 <3.00 s d2 =13.00 $/MWhr s d3 =12.00 $/MWhr s d2 =1300 $/puMWhr s d3 =1200 $/puMWhr

26, DC power flow equality constraints: From last time: where Here P g3, P d1, P d4 are fixed at 0,0,0, so the above become: Putting the equations into CPLEX constraint form (variables on left, constant on RHS): Example with demand bidding

27, Line flow equality constraints: From last time: This is exactly the same as in the previous examples. Note we need “full” node- arc incidence matrix because we have full DC power flow equations.

Example with demand bidding 28, minimize: …and the inequality constraints

CPLEX Code minimize 1307 pg pg pg pd pd3 subject to theta1=0 -pb theta theta4 = 0 -pb theta theta2 = 0 -pb theta theta3 = 0 -pb theta theta4 = 0 -pb theta theta3 = 0 pg theta theta theta theta4 = 0 pg2 -pd theta theta theta3 = 0 -pd theta theta theta theta4 = 0 pg theta theta theta4 = 0 -pg1 <= -0.5 pg1 <= 2 -pg2 <= pg2 <= 1.5 -pg4<= pg4 <= 1.8 -pd2 <= -1 pd2 <= 2 -pd3 <= -2 pd3 <= 3 -pb1 <= 500 pb1 <= 500 -pb2 <= 500 pb2 <= 500 -pb3 <= 500 pb3 <= 500 -pb4 <= 500 pb4 <= 500 -pb5 <= 500 pb5 <= 500 Bounds -500 <= pb1 <= <= pb2 <= <= pb3 <= <= pb4 <= <= pb5 <= <= theta1 <= <= theta2 <= <= theta3 <= <= theta4 <= end Objective Line flows DC power flow equations Generation offer constraints Line flow constraints CPLEX only provides dual variables for equalities and inequalities that appear in the constraint list and not the “bounds” list, i.e., it does not provide dual variables for inequalities in the “bounds” list. If the exact same constraints are imposed both places, CPLEX will not provide a dual variable. If you do not explicitly define a bound on a variable, then CPLEX applies bounds of 0 to ∞, and so if you want negativity for a variable, you must impose that here. I can arbitrarily set one angle to whatever I like (within bounds), since it is the angle differences that are important.29 Load bid constraints

Solution This is negative of the social surplus. So the social surplus (Total Utility of Load less Total Cost of Supply) is $ Not too much! This is because the consumers are valuing the energy at just a little above cost. If we change the utility function coefficients to 1500 and 1400, from 1300 and 1200, respectively, social surplus changes to $904/hr. If we change utility function coefficients to 1000 and 900, respectively, social surplus would be -$924/hr, indicating cost of supply is more than utility of consumption, and the only reason any power is being consumed is the lower bound constraints we have placed on generation and demand. Z*=-$

Solution display solution variables – Variable Name Solution Value pg pg pg pd pd pb theta pb theta pb theta pb pb All other variables in the range 1-14 are 0. Z*=-$

Solution ($/per unit-hr) display solution dual - Constraint Name Dual Price c c c c c c c c All other dual prices in the range 1-30 are 0. c7-c10 are$13.00/MWhr  Increasing load by 1 MW at any bus 1,2,3, or 4 increases objective by $ This is set by the bus 2 load, P d2, as it will respond to any MW change. There is only one unconstrained decision variable, P d2, and it is the variable that is setting the nodal price ($13.00/MWhr). We say that P d2 is a “regulating” or “marginal” unit. 32 Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P d P d P B P d P d P1P P B P B P2P P B P B P3P P B P B P4P P B P B P B P B θ1θ1 θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4

Solution Think of algorithm like this: 1.Initialize: Set gen and load at lower limits. At least one variable must come off its lower bound to provide power balance. Sum of load lower bounds is 3; Sum of gen lower bounds is 1.325, one or more of the gens must come off their lower bounds by pu in order to provide a feasible solution. This gen will be the one with the least offer. P g2 is least expensive and it comes off its lower bound first but can only supply up to pu additional generation. We need pu. So P g2 gets pushed to its limit. P g4 as next least-offer gen then comes off its lower limit of.45 and provides an additional amount equal to =.55, so that P g4 is now generating at =1. At this point, the total generation is =3; solution is feasible <P d2 < <P d3 <3.00 s g2 =1211 $/pu-hrs d2 =1300 $/pu-hr s g4 =1254 $/pu-hrs d3 =1200 $/pu-hr s g1 =1307 $/pu-hr P g2 P g4 P g1 So P g4 =1 and has 0.8 left at 12.54, P d2 =1, with 1.0 left at Because 13.00>12.54, there is still surplus to be obtained!

Solution 34 2.Maximally increase surplus: Then it takes 1 MW (.01 pu) of supply and 1 MW (.01 pu) of demand from the gen/load pair not at upper bounds which provides the most positive surplus per MW. This will be the gen with the least cost and the load with the greatest utility, as long as surplus is positive. Repeat this until you hit limit (then switch) or surplus goes negative (then stop). G4 goes to 1.8 and D2 goes to 1.8. Now G4 is at limit and so we switch to G1 at 13.07, while D2 is at If we take a MW from this pair, the surplus will decrease! STOP! 1.00<P d2 < <P d3 <3.00 s g2 =1211 $/pu-hr s d2 =1300 $/pu-hr s g4 =1254 $/pu-hr s d3 =1200 $/pu-hr s g1 =1307 $/pu-hr

Demand bidding with constrained transmission Previous solution, unconstrained transmission had P b3 =0.1625, so we constrain P b3 to minimize 1307 pg pg pg pd pd3 subject to theta1=0 -pb theta theta4 = 0 -pb theta theta2 = 0 -pb theta theta3 = 0 -pb theta theta4 = 0 -pb theta theta3 = 0 pg theta theta theta theta4 = 0 pg2 -pd theta theta theta3 = 0 -pd theta theta theta theta4 = 0 pg theta theta theta4 = 0 -pg1 <= -0.5 pg1 <= 2 -pg2 <= pg2 <= 1.5 -pg4<= pg4 <= 1.8 -pd2 <= -1 pd2 <= 2 -pd3 <= -2 pd3 <= 3 -pb1 <= 500 pb1 <= 500 -pb2 <= 500 pb2 <= 500 -pb3 <= 0.16 pb3 <= pb4 <= 500 pb4 <= 500 -pb5 <= 500 pb5 <= 500 Bounds -500 <= pb1 <= <= pb2 <= <= pb3 <= <= pb4 <= <= pb5 <= <= theta1 <= <= theta2 <= <= theta3 <= <= theta4 <= end

Solution display solution variables - Variable Name Solution Value pg pg pg pd pd pb theta pb theta pb theta pb pb All other variables in the range 1-14 are 0. Z*=-$

Solution ($/per unit-hr) display solution dual - Constraint Name Dual Price c c c c c c c c c c All other dual prices in the range 1-30 are Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P d P d P B P d P d P1P P B P B P2P P B P B P3P P B P B P4P P B P B P B P B θ1θ1 θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4

Demand bidding w/ constrained transmission 38 Previous solution, unconstrained transmission, so we constrain P b3 to New solution, with constrained transmission. Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P d P d P B P d P d P1P P B P B P2P P B P B P3P P B P B P4P P B P B P B P B θ1θ1 θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 Observe! There are two regulating buses this time. RULE: For n binding constraints, there are at least n+1 marginal (regulating) buses. The LMP at a marginal bus is always equal to its offer or bid. s g2 =1211 $/pu-hr s d2 =1300 $/pu-hr s g4 =1254 $/pu-hr s d3 =1200 $/pu-hr s g1 =1307 $/pu-hr

Settlement without congestion (fixed demand) 39 Original solution, ∞ transmission Objective function: Z*= $/hr. Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P B P g P g P B P B P B P B P1P P B P2P P B P3P P B P4P θ1θ1 0θ1θ θ2θ2 0θ2θ2 θ3θ3 0θ3θ3 θ4θ4 0θ4θ4 Amount paid to generators: Total payments to gens: = $/hr. Amount paid by loads: Total payments by loads: = $/hr,  Market settles with total payment to gens equaling total payment to loads. Question: Why does total payments to gens (or total payments by loads) not equal Z*=2705.8$/hr?

Settlement without congestion (fixed demand) Question: Why does total payments to gens (or total payments by loads) not equal Z*=2705.8$/hr? Answer: We optimize on the offers. We settle at LMPs. To illustrate, let’s see what happens if we settle at offers Offers: s g2 =1211 $/pu-hr s g4 =1254 $/pu-hr s g1 =1307 $/pu-hr Total payments to gens will be = $/hr, So why do we settle at the LMPs rather than the offers? According to paper referenced at the right: J. Yan, G. Stern, P. Luh, and F. Zhao, “Payment versus bid cost,” IEEE Power and Energy Magazine, March/April “The primary reason for this conclusion is that under the pay-as-bid settlement scheme, market participants would bid substantially higher than their marginal costs (since there is no incentive for participants to bid their operating cost) to try to increase their revenue and, thus, offset and very likely exceed the expected consumer payment reduction. As a result, currently all ISOs in the United States adopt the pay-at-MCP principle.” A pay-as-bid settlement scheme incentivizes participants to bid high since the bid is what they will be paid if their bid is accepted. The disincentive to bidding high is that their bid might not be accepted. A pay-at LMP settlement scheme provides no incentive to bid high. The disincentive to bid high because their bid might not be accepted remains.

Settlement with congestion (fixed demand) 41 Amount paid to generators: Total payments to gens: = $/hr. Amount paid by loads: Total payments by loads: = $/hr,  Amount paid by loads exceeds that paid to the gens by $ Why is this? Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P B P B P B P B P B P1P P B P B P2P P B P B P3P P B P B P4P θ1θ θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 Z*=$

Settlement with congestion (fixed demand) 42 Why does amount paid by loads exceed that paid to the gens by $25.77? Consider under the condition of no losses, the power balance equation: Now what if there is no congestion and prices at all buses are the same at LMP, i.e., LMP j =LMP for all buses j=1,…,n. In this case: And we have just proved that for the case without congestion, when all LMPs are the same, the amount paid by loads equals the amount paid to the generators. But when all LMPs are not the same (when we have congestion), the above proof does not hold. In this case, we can show that (see notes):  The load pays into the market an amount exceeding the amount generators are paid by the congestion charges. These charges may be computed as the sum of products of line constraint dual variables and the RHS of the constraint. Let’s check that in the example we just did.

Settlement with congestion (fixed demand) 43 Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P B P B P B P B P B P1P P B P B P2P P B P B P3P P B P B P4P θ1θ θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 Recall that the amount paid by loads exceeds that paid to the gens by $25.77.

Settlement with congestion (w/demand bidding) 44 Equality constraintsLower boundsUpper bounds EquationValueVariablevaluevariablevalue P B P g P g P B P g P g P B P g P g P B P d P d P B P d P d P1P P B P B P2P P B P B P3P P B P B P4P P B P B P B P B θ1θ1 θ1θ1 θ2θ2 θ2θ2 θ3θ3 θ3θ3 θ4θ4 θ4θ4 Amount paid to generators: Total payments to gens: = $/hr. Amount paid by loads: Total payments by loads: = $/hr,  Amount paid by loads exceeds that paid to the gens by $3.12. pg pg pg pd pd pb theta pb theta pb theta pb pb  Use dual variable from line flow constraint: *.16=2.99

Summary 45 1.Congestion causes LMPs to vary from one bus to another. 2.“Marginal” or “regulating” buses are not at either limits. 3.There will always be at least n+1 regulating buses, where n is number of congested lines. 4.We optimize on the offers and bids but we settle at the LMPs. 5.If there is no congestion, the payments by the loads will equal the payments to the generators. 6.If there is congestion, the payments by the loads will exceed the payments to the generators by the congestion charges. 7.The congestion charges equal the sum over all congested lines of the product of each line’s dual variable and its line flow limit.