If you want to allow load shedding in order to make your over-constrained 
problem feasible, simply turn your load into a dispatchable load with a very 
high value, so that curtailing it will be used only as a last resort.

-- 
Ray Zimmerman
Senior Research Associate
B30 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Apr 17, 2014, at 6:35 PM, Christian Stiller 
<[email protected]> wrote:

> Dear Dr Zimmerman and to whomever is reading this,
> 
> due to sending it first to the wrong address, i already got an answer from 
> DR. Zimmermann, but i have additional questions(so you might want to start at 
> the first mail a little bit down here)
> 
> My additional Questions:
> 
> 1: The thing is, that these tight limit will occur in my Project sometimes 
> and in the post process some matlab code will decide whether to build 
> new/enlarge existing Branches or keep them the way they are. (And after that 
> starting at the beginning with small changes in power production and demand. 
> And this for about 20 times. And all this together about different strategies 
> and a lot of different scenarios)
> And for this i need to ensure that even in tight cases i can get feasible 
> result. Supply shortage is a possible result for me.
> I want to calculates how much maximal unmet demand i have and which strategy 
> give me the least unmet demand over the most scenarios
> 
> and In my opinion one possible result of my given case could be
> 
> :
> 
> Generation(Bus 1: 300MW, Bus4: 100MW)
> 
> Branch Date
> 
> From 1 to 2: 100MW
> From 1 to 3: 150MW
> From 2 to 4: -100MW
> From 3 to 4: 50MW
> 
> 
> 
> So does anybody see a potential solution to this problem with Matpower
> 
> Thank you all for your time
> 
> regards,
> christian Stiller
> 
> 
> 
> 
> 
> 
> Am 17.04.2014 15:15, schrieb Ray Zimmerman:
>> (Btw, this kind of question should be addressed to [email protected], 
>> not [email protected]).
>> 
>> Two things …
>> 
>> 1. It appears that your problem is infeasible. Try increasing the limit on 
>> the first branch to 150 or above and it should solve just fine. You may want 
>> to recheck the simple, clean solution you got on paper.
>> 2. When the OPF is unsuccessful, the numerical values of any of the results 
>> are typically meaningless.
>> 
>> -- 
>> Ray Zimmerman
>> Senior Research Associate
>> B30 Warren Hall, Cornell University, Ithaca, NY 14853
>> phone: (607) 255-9645
>> 
>> 
>> 
>> On Apr 17, 2014, at 8:51 AM, Christian Stiller 
>> <[email protected]> wrote:
>> 
>>> Dear Dr Zimmerman and to whomever is reading this,
>>> 
>>> 
>>> The Short Version of my Problem:
>>> 
>>> I have a simple, reduced to the minimum, 4 bus  dc opf case where i want to 
>>> get the maximum possible power flow while the given limits are never 
>>> violated. The model of the grid is a very very very reduced one. Only the 
>>> transmission capacity is given for the edges and on the nodes the real 
>>> power demand and the maximum real power output. Not More!
>>> 
>>> My Problem is , that if the production capacity or the transmission line 
>>> capacity comes to the limit, matpower gives me very strange results (and 
>>> especially these "thight" cases are the interessting ones for my project 
>>> and will occure sometimes). It says that it did NOT converge and "exiting, 
>>> one ore more variables have grown more than 100000times" . So for example 
>>> in the Results i can find exploding cost or nearly no generation but 
>>> extreme transmission. the results make no sense at all, on paper the 
>>> problem has a very simple and clean solution.
>>> so if you could help me, maybe somebody knows an answer (not possible would 
>>> be an answer too)
>>> 
>>> I tried using mosek to solve that case but it gave me onyly zero's as result
>>> 
>>> Matlab 2012b and the newest matpower (4.1)
>>> 
>>> regards and thank you for your Time,
>>> 
>>> Christian Stiller
>>> 
>>> 
>>> A more detailed Version of my Case an Problem with the m file attached
>>> 
>>> 
>>> My Case
>>> 
>>> In my Beachlor Thesis I want to demonstrate the method of Robust Decision 
>>> Making at the example of the planning of the powergrid. (like: where should 
>>> we build new lines in an existing grind so that the system is robust in 
>>> future uncertain scenarios).
>>> 
>>>  
>>>  The model of the grid is a very very very reduced one. Only the 
>>> transmission capacity is given for the edges and on the nodes the real 
>>> power demand and the maximum real power output.
>>> 
>>> For that Methode  I need to test a set of different strategies on a large 
>>> set of possible uncertain scenarios(power generation and consumption are 
>>> uncertain in and given range), to find that strategie which gives a good 
>>> performance(cost or max unmet power) over the most scenarios. And in each 
>>> scenario I have to calculate for each strategie for each year(till2030) if 
>>> there is a need to build new transmission lines. (There are also Reserve 
>>> Power and dispatchable loads with specific costs given, but first I wanted 
>>> to get the simple Version working  and calculate the reserve and disp. 
>>> Loads after the transmission) )
>>> 
>>>  
>>> So I need to calculate the maximum possible Flow given a certain Network in 
>>> which no limits (edge capacity and generator output) are violated! For that 
>>> (because of the limits)only OptimalpowerFlow works in Matpower, so I have 
>>> to set the generation cost to something. So I use “rundcopf(‘  ’)”. The 
>>> generation cost is set to the same value on all generators and all edges 
>>> have the same resistance.
>>> 
>>> The goal is to find the edges which are at limit to know where to invest in 
>>> new lines.
>>> 
>>> My Problem is now, that if the production capacity or the transmission 
>>> capacity comes to the limit, matpower gives me very strange results (and 
>>> that case will happen sometimes). From exploding cost,to nearly no 
>>> generation but extreme transmission, the results make no sense at all, on 
>>> paper the problem has a very simple and clean solution.
>>> 
>>> (I also tried working with dispatchable loads, but even when no 
>>> dispatchable loads where theoretically needed, matpower dispatched some 
>>> part of the loads. Which I think has to to with the costs given for 
>>> production and dispatching
>>> 
>>> My opinion is, that Matpower has problems finding a solution because of 
>>> this very simple case and the given very strict limits. (Even setting 
>>> different resistances (x) in the branch date or/and setting different 
>>> generation costs doesn’t change the strange results.)
>>> 
>>>  
>>> 
>>> 
>>> 
>>> 
>>> RDM.m
>>> 
>>> function mpc = case4gs
>>> %CASE4GS  Power flow data for 4 bus, 2 gen case from Grainger & Stevenson.
>>> %   Please see CASEFORMAT for details on the case file format.
>>> %
>>> %   This is the 4 bus example from pp. 337-338 of "Power System Analysis",
>>> %   by John Grainger, Jr., William Stevenson, McGraw-Hill, 1994.
>>> 
>>> %   MATPOWER
>>> %   $Id: case4gs.m,v 1.4 2010/03/10 18:08:14 ray Exp $
>>> 
>>> %% MATPOWER Case Format : Version 2
>>> mpc.version = '2';
>>> 
>>> %%-----  Power Flow Data  -----%%
>>> %% system MVA base
>>> mpc.baseMVA = 100;
>>> 
>>> %% bus data
>>> %   bus_i   type    Pd      Qd      Gs      Bs      area    Vm      Va      
>>> baseKV  zone    Vmax    Vmin
>>> mpc.bus = [
>>>     1       3       50      0       0       0       1       1       0       
>>> 230     1       1.1     0.9;
>>>     2       1       200     0       0       0       1       1       0       
>>> 230     1       1.1     0.9;
>>>     3       1       100     0       0       0       1       1       0       
>>> 230     1       1.1     0.9;
>>>     4       2       50      0       0       0       1       1       0       
>>> 230     1       1.1     0.9;
>>> 
>>> ];
>>> 
>>> %% generator data
>>> %   bus     Pg      Qg      Qmax    Qmin    Vg      mBase   status  Pmax    
>>> Pmin    Pc1     Pc2     Qc1min  Qc1max  Qc2min  Qc2max  ramp_agc        
>>> ramp_10 ramp_30 ramp_q  apf
>>> mpc.gen = [
>>>     1       0       0       100     -100    1       100     1       400 0   
>>> 0       0       0       0       0       0       0       0       0       0   
>>>     0;
>>>     4       0       0       100     -100    1       100     1       100     
>>> 0       0       0       0       0       0       0       0       0       0   
>>>     0       0;
>>> ];
>>> 
>>> %% branch data
>>> %   fbus    tbus    r       x       b       rateA   rateB   rateC   ratio   
>>> angle   status  angmin  angmax
>>> mpc.branch = [
>>>     1       2       0       0.05    0       100     100     100     0       
>>> 0       1       -360    360;
>>>     1       3       0       0.05    0       200     200     200     0       
>>> 0       1       -360    360;
>>>     2       4       0       0.05    0       200     200     200     0       
>>> 0       1       -360    360;
>>>     3       4       0       0.05    0       200     200     200     0       
>>> 0       1       -360    360;
>>>    
>>> ];
>>> %% generator cost data
>>> %   1       startup shutdown        n       x1      y1      ...     xn      
>>> yn
>>> %   2       startup shutdown        n       c(n-1)  ...     c0
>>> mpc.gencost = [
>>>     1       0       0       2       0       1   400    400;
>>>     1       0       0       2       0       1   100    100;
>>>     
>>> ];
>>> 
>>> 
>>> 
>> 
> 

Reply via email to