Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 Determination of Market Clearing Price in Pool Markets with Elastic Demand Bijuna Kunju K∗ and P S Nagendra Rao Department of Electrical Engineering Indian Institute of Science, Bangalore 560012 kbijuna@gmail.com, nagendra@ee.iisc.ernet.in ∗ Department of Electrical and Electronics Engg T.K.M.College of Engineering, Kollam 691005 Abstract— Determination of Market Clearing Price is one of the prime functions of a pool operator. In many of the existing markets, market clearing is based on stepped bids received from generators and consumers. However, quadratic bid functions have more information and are more realistic. A simple closed form solution scheme to compute the clearing price from such supply and offer bids submitted to the operator is proposed in this paper. I. I NTRODUCTION The most popular form of electricity market so far has been the centralized auction, which has often mimicked the procedures used for central dispatch in the past, reflecting concerns over system security [1], [2], [3]. After the auction, some pool-based electricity markets operate under a systemwide market price [3] while others have elected the approach of nodal (or locational) marginal prices [4]. The bids supplied by the generators/generating companies indicate the quantity of power they are ready to supply at a certain price in terms of a price function [1], [2]. In many pool markets, the consumers also submit offers in terms of quantity of power required and a price function (at which they are prepared to purchase) [5]. In the single-price auction, the market-clearing price is determined by a merit order algorithm [6]: a wellestablished technique where all participating generators bids are ordered according to increasing levels while participating consumers bids are ranked according to decreasing levels. The market clearing price is then defined by the intersection of the aggregate demand and supply curves. This method has the advantage that it is very simple to implement. With this process the total demand that can be met and the individual generations accepted/ loads supplied can be decided fairly easily. The stepped bids in use are approximations of the true cost function of the generating units. A basic requirement for the success of market dictated utility operation is that the bids must reflect the true costs of operation. Hence, it is easy to see that use of quadratic functions to represent the cost of generation would provide a better representation of the true cost of generation. It may also be noted that the use of quadratic functions to represent the cost of generation has been in use in power systems for a long time now. Hence, continuing to use this form of cost functions (bid functions) should be more acceptable to the industry rather than adopting the step form of cost functions. A similar argument holds good for the bids of loads also. It must be pointed out that there has been a considerable body of research which attempts to forecast the MCP [7], [8], [9], [10]. Such forecasts are meant to be used by the bidders in order to tune their bids to maximize their individual profits. Techniques based on artificial intelligence and probability theory have been proposed for this purpose. It is easy to see that such techniques are obviously not intended to maximize the societal benefit and hence, cannot be expected to achieve the desired goals of restructured markets. The aim of this paper is to develop a method for determining the market clearing price in the case of pool markets under the assumption of no congestion. In this development, it is considered that generator bid functions and the load valuation functions are quadratic functions of real power. The maximum and minimum limits on both individual generations and loads are also accounted in this process. The proposed method has been developed by extending an earlier method [11], meant for determining the generation schedules in vertically integrated power systems. However the method in [11] does not consider the bids of consumers and it also requires the total demand to be specified. In this approach, a formula is developed in Section II to find the clearing price where the generator and load bids are quadratic functions of real power. It is then shown how this formula can be used in a systematic way to handle the limits on loads and generators and arrive at the final schedule. A detailed illustration of the algorithm is given in Section III and the paper is concluded in the next Section. In Section III, methods of handling generators bids and consumers offerswith and without limits, fixed demands (block bids) and their combinations are illustrated. II. A F ORMULA FOR M ARKET C LEARING P RICE Consider a system with N generators and M consumers. Let the generator bid function for the ith generator be Ci (P gi ) = ai P gi2 + bi P gi + ci and the consumer benefit function for the j th load be 214 Bfj (P dj ) = αj P d2j + βj P dj + γj Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 The objective of the pool market operator is to maximise the social welfare function M Bfj (P dj ) − j=1 N Ci (P gi ) where (2ak P gk + bk ) = λ Hence the value of λ is obtained as i=1 λ= subject to the power balance constraint, N (P gi ) = i=1 M (P dj ) (1) L= N Ci (P gi ) − i=1 M N M Bfj (P dj ) − λ( (P gi ) − (P dj )) j=1 i=1 λ= and dL dBfj =0 = dλ dP dj (14) M βi Bd = ( ) α i i=1 (2) (15) Solving (12) and (13), we have ∀ j (3) PR Equations (2)and (3) imply that for optimality, the incremental cost functions of all the generation as well as the incremental utility function of all loads must be equal to λ. The incremental cost for generators can also be written as dCi = λ = 2ai P gi + bi , dP gi i∈N (4) At the optimum, the incremental costs of all generators are same and we have, = λ = ABd − Ad B 2(Ad − A) (16) (B − Bd ) (A − Ad ) (17) The schedules for each of the generators and the demand of each consumer that can be met is obtained as, P gi = λ − bi 2ai 2ai P gi +bi = 2ak P gk +bk = λ ∀ i ∈ N, for a particular k ∈ N (5) 2ak P gk + bk − bi λ − βi , ∀i∈N (6) P gi = P di = 2ai 2αi Let the total demand (total generation) given by (1) be equal A. Incorporating the Limits to PR . Therefore, N (P gi ) = i=1 2ak P gk N 2ak P gk + bk − bi 2ai i=1 = PR N N N 1 1 bi ( ) + bk ( )− ( ) = 2PR . a a a i i i i=1 i=1 i=1 (7) (8) Define two parameters A and B, A= N 1 ( ) ai i=1 (9) B= N bi ( ). ai i=1 (10) and (13) M 1 ( ) αi i=1 Ad = j=1 ∀ i 2PR + Bd Ad where, where λ is the Lagrangian multiplier. The conditions for optimality of L are given by dCi dL =0 = dλ dP gi (12) Similarly, with the demand offers, it can be shown that j=1 Hence, the augmented objective function for unconstrained optimisation is 2PR + B A and (8) can be written as (2ak P gk + bk )A = 2PR + B (11) ∀ i (18) ∀ i (19) The formula in (17) for the market clearing price is valid only if the corresponding generators and loads given by (18) and (19) are within their limits. However, this may not always happen. If at any stage of calculation of the system λ using (17), the corresponding schedule results in limit violations, then the violating loads / generations must be constrained at the limits that they are violating and the net difference between such allocated loads and generations has to be first optimally allocated among the non violating generators / loads. For this step also, the formula derived above is made use of. After this step, the cost functions of the non violating generators / loads are modified to reflect the partial allocation of load / generation that has been done to the particular entity. The process of finding the system market clearing price is continued considering only the non violating generators / loads and the modified incremental cost functions of these generators and loads. 215 Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 B. Case 2: Maximum Limit on Generator Output III. I LLUSTRATION OF THE METHOD Consider a system consisting of three generators and two consumers with variable demands. The generator cost functions of the three units as given in [11] are, C1 = 0.003P g12 + 2P g1 + 80 Rs/h, C2 = 0.015P g22 + 1.45P g2 + 100 Rs/h, C3 = 0.01P g32 + 0.95P g3 + 120 Rs/h. Bf1 = −0.002P d21 + 5P d1 + 150 Rs/h, Bf2 = −0.001P d22 + 6P d2 + 200 Rs/h. A. Case 1: No Limit Constraints For this system the values of A, B, Ad and Bd are calculated using (9), (10), (14) and (15)as B= 1 1 1 + + = 500 0.003 0.015 0.01 2 1.45 0.95 + + = 858.33 0.003 0.015 0.01 Ad = 1 1 + = −1500 −0.002 −0.001 β2 = 2 × −0.001 × 400 + 6 = 5.2 5 6 Bd = + = −8500 −0.002 −0.001 Now, the total demand that can be supplied is obtained using (16) as PR = (500 × −8500) − (−1500 × 858.33) = 740.63M W. 2(−1500 − 500) The Market Clearing Price is obtained using (12) or (13) as λ= Or λ= 2 × 740.63 + 858.33 = 4.6792 Rs/M W 500 2 × 740.63 − 8500 = 4.6792 Rs/M W −1500 The schedules are then found using (18) and (19)as P g1 = 4.679 − 2 = 446.5M W 2 × 0.003 P g2 = 4.679 − 1.45 = 107.64M W 2 × 0.015 P g3 = 4.679 − 0.95 = 186.46M W 2 × 0.01 P d1 = 4.679 − 5 = 80.2M W 2 × −0.002 P d2 = 4.679 − 6 = 660.4M W 2 × −0.001 2 × 400 − 8500 = 5.1333 Rs/M W −1500 The allocation of 400 MW among the loads would be corresponding to this λint of 5.1333. This value turn out to be 5.133 − 5 P d1 = = −33.3 M W 2 × −0.002 5.133 − 6 = 433.3 M W P d2 = 2 × −0.001 The negative value implies the violation of minimum limit for P d1 . So, the full 400 MW is allocated to P d2 . Now, the remaining generators (No. 2 and No. 3) and demand bids are to be used in the next stage. However, the incremental cost function of P d2 is to be changed to 2α2 P d2 + β2 to account for the allocation of 400 MW and the modified value of β is obtained as β2 = 2 × α2 × P d2 + β2 λint = The offer functions of the two consumers are, A= In addition to the conditions in case 1, suppose that generator 1 has a maximum limit of 400 MW. Hence, the generation of this unit must be constrained to 400 MW, instead of 446.5 MW calculated above. In addition, this generation has to be allocated optimally among the customers. P gx1 = 400M W . The corresponding λint is computed (13) using the values of Ad and Bd obtained earlier With this procedure for accounting of the allocated component of this demand, the slope of the incremental cost function of P d2 does not change, only the constant value changes. So, for further scheduling, only the value of Bd will change to Bd (Ad will remain the same). 5 5.2 + = −7700 −0.002 −0.001 Since, the set of available generators has changed, the values of A and B (9,10) are to be recalculated and the new values are 1 1 + = 166.67 A = 0.015 0.01 1.45 0.95 + = 191.67 B = 0.015 0.01 From the new set, the demand that can be supplied is found out as (166.67 × −7700) − (−1500 × 191.67) = 298.7501M W PRn = 2(−1500 − 166.67) Bd = The new system λ being 2 × 298.7501 + 191.67 = 4.7350 Rs/M W 166.67 The individual shares of the loads and generations are calculated using (18,19) and the schedules are λ= P g2 = 216 4.7350 − 1.45 = 109.5 M W 2 × 0.015 Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 P g3 = 4.7350 − 0.95 = 189.25 M W 2 × 0.01 The additional demand that can be met is PR = 4.7350 − 5 = 66.25 M W P d1 = 2 × −0.002 4.7350 − 5.2 = 232.5 M W P d2 = 2 × −0.001 The final schedules for the three generators are 400.0, 109.5 and 189.25 MW respectively. The values for the two final demands are 66.25 and 632.5 MW (i.e.400M W +232.5M W ) respectively. The Market Clearing Price is 4.735 Rs/MW. Since the generator with a lower cost has been constrained at its maximum limit, the total demand supplied reduces from a possible 740.63 MW level to 698.75 MW while the clearing price shows a rise from 4.6792 to 4.735 Rs/MW. It is not difficult to see that the solution obtained by this method satisfies the Kuhn Tucker conditions also. The optimal incremental cost for the total system is 4.735 Rs/MW where as the incremental cost of the generator constrained at its maximum limit is λ1 = 2 × 0.003 × 400 + 2 = 4.4 Rs/M W C. Case 3: Maximum Limit on Load Consider that the schedule is as in case 1, and suppose that, in addition, there is a maximum limit on the load at node 2 (specified) of 600MW. This implies a constraint violation. Hence, first this load (600MW) is to be optimally allocated between generators. An intermediate value of λ for allocating this 600MW among the generators is found using (12) as λint = 2 × 600 + 858.3333 2 × P rn + A = = 4.1167 Rs/M W B 500 and the corresponding allocation are P g1 = 4.1167 − 2 = 352.76M W 2 × 0.003 P g2 = 4.1167 − 1.45 = 88.6667M W 2 × 0.015 P g3 = 4.1167 − 0.95 = 158.3333M W 2 × 0.01 Now, the incremental cost functions of the generators have to be modified to reflect this allocation. The slope ai of all the generators remain unchanged, and it is easy to see that bi of all the generators must be now taken as 4.1167. Now for the next stage of optimisation, the value of B need to be calculated again and is denoted as B . 4.1167 4.1167 4.1167 + + = 2058.35 0.003 0.015 0.01 Now, the demand has to be met is of consumer 1. The new values of Ad and Bd corresponding to this situation are This turns out to be the demand of consumer 1 P d1 = 110.4125 MW. The new clearing price is obtained using (16) as 2 × 110.4125 + 2058.35 λ= = 4.5584 Rs/M W 500 Or 2 × 110.4125 − 2500 λ= = 4.5584 Rs/M W −500 The contribution of the three generators towards this additional load are P g1 = 73.61M W P g2 = 14.72M W P g3 = 22.08M W Hence, the final schedules for the three generators are 426.377 (352.76 + 73.61), 103.3867 (88.6667+14.72) and 180.4133 (158.333 + 22.08) MW respectively. The two demands are 110.4125 and 600.0 MW. The Market Clearing Price is 4.5584 Rs/MW. Here since the demand with a higher valuation is constrained at the maximum limit, the total demand met gets reduced from 740.63 MW to 710.4125 MW while the clearing price decreases from 4.735 to 4.5584 Rs/MW. D. Case 4: Maximum Limits on Both Generators and Consumer Loads Here, we consider both the constraints to be operative simultaneously. The generation 1 has a maximum limit of 400 MW and the maximum demand of consumer 2 is 600 MW. From the optimal schedule of case 1 it is seen that both limits are violated. So P g1 is fixed at 400 MW and P d2 is fixed at 600 MW. The difference of these two values is 200 MW of demand. This demand is optimally distributed among the two generators not set at their limits as follows. The intermediate value of λ is obtained using values of A and B already calculated in (Case 2) as 166.67 and 191.67 respectively. 2 × P r + B 2 × 200 + 191.67 = = 3.55Rs/M W A 166.67 and the corresponding allocation to the two generators are λint = B = Ad = 1 = −500 −0.002 Bd = 5 = −2500 −0.002 (500 × −2500) − (−500 × 2058.35) = 110.4125 M W 2(−500 − 500) P g2 = 3.55 − 1.45 = 70M W 2 × 0.015 P g3 = 3.55 − 0.95 = 130M W 2 × 0.01 The incremental cost function of the two generators now have to be modified such that they have the same value of bi equal to 3.55 with their ai values remaining unchanged. So, the value of B is calculated again as B = 217 3.55 3.55 + = 591.67 0.015 0.01 Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 Now, the demand that is to be met is only that of consumer 1. Hence, the new value of Ad and Bd are Ad = −500 The values of A and B are then recalculated with three generators only. The new values are A = 123.1429 and B = 216. λint = Bd = −2500 2 × P r + A 2 × 75.4 + 216 = = 2.9787Rs/M W B 123.1429 Hence, the additional load that can be met is This value of λint is still lesser than the bi of the generators at 13, 23 and 27 and their output has been correctly allocated (166.67 × −2500) − (−500 × 591.67) PR = = 90.625 M W to be zero. Using this λint we get, 2(−500 − 166.67) P g1 = 24.4675M W Therefore, the demand of consumer 1 is also 90.625 MW. P d1 = 90.625 MW. The new clearing price is 2 × 90.625 + 591.67 λ= = 4.6375 166.67 P g2 = 35.1057M W Rs/M W P g22 = 15.8296M W Or The incremental cost function of these three generators now have to be modified such that they have the same value of bi as 2.9787 with their ai values remaining unchanged. So, the value of B is calculated again as 2 × 90.625 − 2500 λ= = 4.6375 Rs/M W −500 The contribution of the two generators towards this load is 4.6375 − 3.55 = 36.25 M W 2 × 0.015 4.6375 − 3.55 P g3 = = 54.375 M W 2 × 0.01 The final schedules are generations 400.0, 106.25 and 184.375 MW respectively. The final demands are 90.625 and 600.0 MW. The Market Clearing Price is 4.6375 Rs/MW. P g2 = B = 3.25 3 3 2.9787 2.9787 2.9787 + + + + + = 998.3719 0.02 0.0175 0.0625 0.0083 0.025 0.025 The total demand of the nodes with price dependent loads is then determined by (16) PR = (323.624 × −1410) − (−300 × 998.3719) = 125.72M W. 2(−300 − 323.624) The new clearing price is found by (17) λ = 3.862Rs/M W E. Case 5: Mixed Load - (No Limit violation) This example is provided to illustrate the method when the system has both fixed loads and price sensitive loads. The 30 bus system is used for this illustration. The bids and offers details of the 30 bus system used here is given Tab. I. There are loads which do not submit offer function implying that they are ready to accept power at any cost. In this system the total fixed demand by those consumers is 75.4 MW. The individual share of generations and loads are then found from the clearing price by substituting in (18,19) TABLE II T HE SCHEDULES OBTAINED FOR 30 BUS SYSTEM Gen No. 1 2 22 27 23 13 Gen. TABLE I T HE BIDS OF 30 BUS SYSTEM Gen No. 1 2 22 27 23 13 ai 0.02 0.0175 0.0625 0.0083 0.025 0.025 bi 2.00 1.75 1.00 3.25 3.00 3.00 Dem No. 2 7 8 12 21 30 αi -0.02 -0.02 -0.02 -0.02 -0.02 -0.02 βi 6.0 4.4 4.8 4.2 4.8 4.0 P gi 24.47 35.10 15.83 0.0000 0.0000 0.0000 75.4 P gi 22.11 25.27 7.10 36.74 17.25 17.25 125.72 P gif inal 46.58 60.37 22.93 36.74 17.25 17.25 201.12 Dem No. 2 7 8 12 21 30 V ar.Dem. P di 53.45 13.45 23.45 8.45 23.46 3.46 125.72 F. Case 6: Mixed Load with Limit Violation Consider the system as in case 5, and suppose that in addition there is a maximum limit of 50 MW on the demand = 50M W . The steps of Case 5 are of consumer 2, P dmax 2 repeated until its last stage, where it is seen that the load assigned to consumer 2 is greater than its maximum value. Hence the demand of consumer 1 is fixed to 50 MW, P d2 = 50M W . After the fixed demand allocation, this demand is 2 × P r + A 2 × 75.4 + 323.6248 λint = = = 2.928Rs/M W allocated. So the values of A and B are taken considering B 847.5663 all six generators (323.6248 and 998.3719 respectively). Now, It is clear that for three generators, 13, 23 and 27 their bi value this demand is distributed optimally among the generators as is greater than this λint and hence their output is set to zero. demonstrated earlier. The intermediate λ considering all six The value of A for the set of supply bids is 323.6248 and B is 847.5662. The corresponding values for demand bids are Ad is −300 and Bd is −1410. In the first step, the fixed demand is allocated to the generators. Considering all the six available generators share the demand, the value of λint is first calculated 218 Fifteenth National Power Systems Conference (NPSC), IIT Bombay, December 2008 generators, for this load of 50 MW turned out to be 3.3940 Rs/MW. 2 × P r + A 2 × 50 + 323.6248 λint = = = 3.394Rs/M W B 998.3718 The schedules of generators are P g1 = 10.3825M W, P g2 = 11.8657M W P g22 = 3.3224M W, P g27 = 8.6403M W P g23 = 7.88M W, P g13 = 7.88M W The next step of scheduling requires the modified cost function for all the generators. The value of bi of all generators is now 3.394. The values of A, B, Ad and Bd for the new set of available demands and generators and with the modified cost functions are 323.6248, 1098.4, -250 and -1110. The value of λ obtained is 3.8499 Rs/MW and the additional demand is 73.762 MW. There is no additional constraint violation and so the schedule is final. The generations and demands met are λ = 3.8499Rs/M W, P g1 = 46.288M W, PR = 199.1M W P g2 = 59.9985M W P g22 = 22.7996M W, P g27 = 36.0082M W P g23 = 17.000M W, P g13 = 17.000M W P d2 = 50.00M W, P d7 = 13.725M W P d8 = 23.7525M W, P d12 = 8.7525M W P d21 = 23.7525M W, P d30 = 3.7525M W. R EFERENCES [1] S. Stoft, Power System Economics: Designing Markets For Electricity. IEEE Press:John Wiley and Sons, 2002. [2] M. Ilic, F. Galiana, and L. Fink, Power System Restructuring: Engineering and Economics. Dordrecht: Kluwer, 1998. [3] F. A. Wolak and R. H. Patrick, “The impact of market rules and market structure on the price determination process in the england & wales electricity market,” University California Energy Institute,Berkeley,POWER Reports, Tech. Rep. PWP-047, April 1997. [4] PJM, PJM Interconnection, PJM Manual 11 : Scheduling Operations, Revision 21. http://www.pjm.com/contributions/pjmmanuals/pdf/m11v21.pdf, January 31, 2004. [5] R. D. Christie, B. F. Woolenberg, and I. Wangensteen, “Transmission management in the deregulated environment,” Proceedings of the IEEE, vol. 88, no. 2, pp. 170–195, February 2000. [6] N. Fabra, N. H. von der Fehr, and D. Harbord, “Modelling electricity auctions,” The Electricity Journal, Elsevier Science Inc., pp. 72–81, August/September 2002. [7] Y. S. C. Yuen, “Experience in day-ahead market price forecasting,” in 6th lnternarional Conference on Adrances in Power System Control, Operation and Management, APSCOM 2003, Hong Kong, November 2003, pp. 123–128. [8] E. Ni and P. B. Luh, “Experience in day-ahead market price forecasting,” in IEEE Power Engineering Society Winter Meeting, vol. 3, January/February 2001, pp. 1518–1523. [9] F. J. Nogales, J. Contreras, A. J. Conejo, and R. Espinola, “Forecasting next-day electricity prices by time series models,” IEEE Transactions on Power Systems, vol. 17, no. 2, pp. 342–348, May 2002. [10] C.-Y. Hsiao and Y.-Y. Hong, “Locational marginal price forecasting in deregulated electricity markets using artificial intelligence,” IEE Proceedings- Generation,Transmission & Distribution, vol. 149, no. 5, pp. 621–626, September 2002. [11] P. S. N. Rao, “Direct method of determining optimum generation schedules,” Institution of Engineers (India) Journal- Electrical, vol. 67, pp. 251–253, June 1987. The demand with high valuation is limited in quantity and hence the system incremental price reduces as compared with the previous case. In this case, the fixed demand can be considered as a block bid with infinite offer. The offer can have a format of specified quantity of power at a specified price also. However, in such a case, the fixed demand will be supplied only when the system incremental cost is same as the offer price of the demand (not the first demand to be supplied as done in this case). IV. C ONCLUDING R EMARKS A method of determining the Market Clearing Price and the schedules based on the bids submitted by the consumers and generators has been proposed in this paper. The bids are assumed to be quadratic functions of real power instead of the stepped bids currently in use. A close form solution (formula) for determining the system λ based on bids has been developed. It is shown that this formula can be used in a systematic way when limits on the generation/loads have to be accounted. The algorithm is simple and give the global optimal solution for this problem. The method can be used to find the market schedules when network constraints need not be considered; such results are also useful in assessing the impact of network constraints on the market schedules and prices. 219