MATPOWER does not include any code to decompose the prices into loss and congestion components. I know that it is done, but I'm not sure there a single "correct" way to do it. Here's a reference to a paper a read a few years ago that explores the subject a bit ...
Luonan Chen; Suzuki, H.; Wachi, T.; Shimura, Y.; , "Components of nodal prices for electric power systems," Power Systems, IEEE Transactions on , vol.17, no.1, pp.41-49, Feb 2002 doi: 10.1109/59.982191 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=982191&isnumber=21157 -- Ray Zimmerman Senior Research Associate 211 Warren Hall, Cornell University, Ithaca, NY 14853 phone: (607) 255-9645 On Mar 22, 2011, at 11:03 AM, Santiago Chamba wrote: > Thank you very much Professor Zimmerman. I have understood very well the > problem, when there are generators that offers reserves in the same zones > (overlapping). I also think that is impossible define a single zonal price > that reflects the effects of multiple constrains when overlapping generators > in the same zone. > > Yours proposal is based in the sensitivity of the total system cost to > changes in the zone reserve requirement. I think that the price zone must > reflected this change because a variation in generation (Pgi) or reserves > (Ri) will be dependent on the availability of generation and reserves, for > this reason an increase in power generation (ΔPgi) or reserves (ΔRi) equals > to a decrease in the power generation and reserves. Hence the sensitivity > ΔRi/ΔPgi = -1 and this observation could conclude that the requirements > reserves affects the power energy dispatch and therefore to the system cost. > > On the other hand, I have other question about the losses. I need to > decompose the marginal price in its components. I have found the shadow > prices and Kuhn-Tucker multiplier but I have not still found in the Matpower > program the losses penalty factor. Please, could you help me ? > > Best Regards > > Santiago Chamba > > > De: [email protected] > [mailto:[email protected]] En nombre de Ray Zimmerman > Enviado el: lunes, 21 de marzo de 2011 12:46 > Para: MATPOWER discussion forum > Asunto: Re: Question > > First, no, I don't think there is any existing code to do exactly what you > are suggesting, but it is trivial to write a short program that varies loads > and generation in a loop, calling the OPF each time. > > Second, I purposely did not change these zonal reserve prices in the output. > What this is displaying is the shadow price on each reserve constraint. In > the general case, I don't think there is a single zonal price that reflects > the effects of multiple constraints. > > The subtilty here comes from the fact that the zone definitions can be (and > in this case are) overlapping. So the price of $5.50 actually comes by > adding the shadow prices on both of the zonal constraints. In this example, > since every node in zone 2 is also in zone 1, you might expect the zone 2 > price to be the sum of the two multipliers. However, this does not work in > the general case. Suppose you had 3 zones, defined as follows ... > > Zone 1: gens 1, 2, 3 > Zone 2: gens 3, 4 > Zone 3: gens 4, 5, 6 > > And suppose all of the reserve constraints were binding. What is the "zone 2 > price"? By definition it is the sensitivity of the total system cost to > changes in the zone 2 reserve requirement. > > Attached is an example (overlapping_reserves_eg.m) that demonstrates such a > case and verifies the prices by perturbing each constraint. You can see how > the dispatches change (and consequently how the system cost is affected) as > the constraints are perturbed. > > So my thought is that the zonal reserve price should be defined as the > multiplier on the corresponding reserve constraint, but each generator > should be paid a price equal to the zonal price for all zones in which it is > included. > > Comments? > > -- > Ray Zimmerman > Senior Research Associate > 211 Warren Hall, Cornell University, Ithaca, NY 14853 > phone: (607) 255-9645 > > > > >
