Hi Bijay,

I still think you are describing a particular version of an optimal power flow 
problem. If I understand you correctly, you have an initial power flow solution 
which violates some branch flow limits. Now you want to curtail some loads 
optimally to relieve the overloads on the lines. Curtailing loads also means 
curtailing generation in order to maintain generation/load balance. What you 
haven’t specified is what kinds of load curtailment patterns and generator 
redispatch options are permissible and how will you rank them.

The most straightforward way I know to specify these things is in the form of 
an objective function and constraints for an OPF. For example, let’s say you 
want to minimize the total load curtailment (in MW) then also minimize the 
total deviation (in MW) from the initial generator dispatch schedule. You can 
accomplish this by assigning a very high value to the dispatchable loads (as 
load2disp 
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/load2disp.html> 
does by default), then assign a piecewise linear cost to each generator with a 
negative slope when dispatched below the nominal (original) dispatch value and 
a positive slope above the nominal value (where these slopes are significantly 
smaller than the value of the loads). The OPF already contains the branch flow 
constraints, so all you need to do is run an OPF with these costs and the 
solution will be a DC power flow solution that satisfies the criteria you 
specified. If desired, you could also reduce PMAX for each of the generators to 
the nominal dispatch to enforce only downward redispatches, for example.

In any case, it seems you want to re-dispatch a DC power flow according to some 
criteria in order to satisfy flow (and possibly other) constraints. This is 
precisely what an OPF is.

Best,

   Ray



> On Jan 12, 2016, at 12:44 PM, Bijay Hughes <[email protected]> wrote:
> 
> Hi Ray,
> 
> Thank you for your kind response. I really admire you helping all us with our 
> problems. 
> 
> Actually no, I don't want to run OPF. I just want to run normal power flow 
> rundcpf. I am aware of load2disp function. But I want to create my own 
> load-shedding protocol. 
> 
> I want to curtail load in such a way that the power flowing through branches 
> doesn't exceed its capacity, while at the same time curtail not too much such 
> that the buses can partially fulfill their demand. Like I said, it is an 
> optimization problem. 
> 
> I have the branch capacities for each of the branches. The power flowing 
> through these branches must be less than these capacities - this is the 
> constraint. So for a given branch capacity, I need to solve for the voltage 
> angles, while at the same time maximize the objective function, which is the 
> sum of loads. This will give me how much load was required to curtail to 
> limit the power flow in the branches. My question is, how to solve for these 
> voltage angles for a given power flowing in it? Is there a way to do it in 
> the MATPOWER code? 
> 
> Best and thanking you,
> 
> Bijay
> 
> On Tue, Jan 12, 2016 at 7:03 PM, Ray Zimmerman <[email protected] 
> <mailto:[email protected]>> wrote:
> It seems to me that you simply want to run an OPF (seems like you are using a 
> DC power flow model, so that would be rundcopf 
> <http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/rundcopf.html>)  
> with your loads defined as dispatchable (curtailable) loads. See section 
> 6.4.2 in the MATPOWER User’s Manual 
> <http://www.pserc.cornell.edu/matpower/docs/MATPOWER-manual-5.1.pdf>. You can 
> use the load2disp 
> <http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/load2disp.html> 
> function to convert the loads. If the value of the loads is higher than the 
> cost of generation, then all load will be served unless load-shedding is 
> required to maintain feasibility. The OPF automatically enforces the line 
> flow limits.
> 
>     Ray
> 
> 
>> On Jan 11, 2016, at 5:56 PM, Bijay Hughes <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Hi Ray,
>> 
>> I have a scenario where a line fails, and this initially failed line 
>> triggers more failures. This continues until the system experiences a 
>> blackout. My plan is to prevent blackout by performing a load-shedding. I 
>> have load-shedding protocol as an optimization problem.  
>> 
>> Objective Function:
>> 
>> Maximize loads in the bus
>> 
>> Constraint:
>> 
>> Power flowing in the branches should be always less than the capacity of 
>> lines. 
>> 
>> My question is how to control the power flow in the lines. I have the 
>> capacity of lines. I guess I need to modify the powerflow code runpf.m or 
>> makeBdc.m? But the question is which part? Given the capacity of lines, I 
>> have to solve for the optimum voltage angles such that the load at the buses 
>> is maximized. This will tell me how much load was needed to curtail to 
>> minimize the cascading failure. The relation for voltage angles and power 
>> flow is given by: Pf = BF * Va + PFINJ in makeBdc.m file. 
>> 
>>  Any help would be greatly appreciated, Ray. I look forward to your replies. 
>> 
>> Best,
>> 
>> Bijay
> 
> 

Reply via email to