I don’t see any issues with the way you are calculating the line loading 
constraint, except that any branch(:, RATE_A) entries equal to zero, indicating 
and unconstrained branch, would cause problems. Of course, there is no way for 
me to know if the updates to X produced by your algorithm make sense or lead to 
a convergent solution.

    Ray 


> On Apr 3, 2015, at 11:17 PM, Electric <[email protected]> wrote:
> 
> Dear Manish Thapa
> No. This is not about modeling a battery. I am trying to solve a multi 
> objective optimization problem which have 3 objective functions. first 
> objective function is Cost of congestion management and the other objective 
> functions are security indexes. 
> All of these 3 objective functions are functions of a design vector 
> [X1,X2,...X77]. where [X1,...,X10] is up generation shifts of unit j i.e., 
> DP{Gj,up}. [X11,..X20] is down generation shifts of unit j i.e., 
> DP{Gj,down}.[X21,..X40] represent the DP{Dk,up}. Other elements of vector X 
> are assigned to DP{Dk,down}  and load shedding analogous parameters of V 
> demand side bidding. (D represent Delta : Pold-Pnew
>  Cost1= B{Gj,up}*DP{Gj,up} * B{Gj,down}*DP{Gj,down}+B{Dk,up}*DP{Dk,up} * 
> B{Dk,down}*DP{Dk,down}+B{Dk,shed}*DP{Dk,shed}.
> B sets are the cost of each actions. for example B{Gj,up} is cost of up 
> generation shift for unit j. 
> Other objective functions (security indexes) are also functions of these sets 
> ,[X1,X2,...X80] or  [ DP{Gj,up}, DP{Gj,down}, DP{Dk,up}, 
> DP{Dk,down},DP{Dk,up}, DP{Dk,shed}. 
> So, I have a set of mathematical equations to calculate objective functions. 
> The constraints are also explicitly, functions of this design vector. But one 
> of these constraint (Lines loading) is implicit function of the design 
> vector. So I have to calculate the load flow based on the obtanied design 
> vector ( calculated by a MMP method , epsilon constraint or weighted sum, 
> with fmincon solver of matlab) to check the lines loading inequality 
> constraint. So I have to update the design vector in each iteration.
> 
> On Sat, Apr 4, 2015 at 4:04 AM, Manish Thapa <[email protected] 
> <mailto:[email protected]>> wrote:
> Are you trying to model sort of a battery with this?
> 
> On Sat, Apr 4, 2015 at 2:34 AM, Electric <[email protected] 
> <mailto:[email protected]>> wrote:
> I am running a Multi Objective Mathematical Programming (MMP) method to
> remove congestion (overloading of lines) in a power system.
> The objective function, and all constraints apart from one of them i.e,
> loading of lines, are scripted in Matlab, But I am using Matpower to
> consider loading of lines as an inequality constraint (Loading Lji<1). I am
> pretty sure that there is some problem in my code for considering the
> inequality constraint of lines loading.
> 
> I am using the script bellow to to consider the inequality constraint of
> lines loading.
> 
> function [C Ceq] = constraints(X,Dat,mpc)
> mpc = loadcase('case39_congestion');
> Ceq=[ ];
> %----- First we have some constraints that are not calculated by Matpower.
> % Then I have to consider lines loading.
> define_constants;
> mpopt = mpoption('OUT_ALL', 0);
> load_set=[1,3:4,7:9,12,15:16,18,20:21,23:29];
> mpc.gen(1:10,PG)=mpc.gen(1:10,PG)+X(1:Dat.SG)'-X(Dat.SG+1:2*Dat.SG)';
> mpc.bus(load_set,PD)=mpc.bus(load_set,PD)+...
>   X(2*Dat.SG+1: 2*Dat.SG+Dat.SD)'-X( 2*Dat.SG+Dat.SD+1 :
> 2*Dat.SG+2*Dat.SD)';
> RES=runpf(mpc,mpopt);
> flow_from = sqrt(RES.branch(:, PF).^2 + RES.branch(:, QF).^2);
> flow_to = sqrt(RES.branch(:, PT).^2 + RES.branch(:, QT).^2);
> flow = (flow_from + flow_to)/2;
> loading  = flow ./ RES.branch(:, RATE_A);
> max_loading=max(loading);
> C = max_loading-1;  % Inequality constraint
> end
> 
> Where X is deign vector of the congestion management problem. X is changes
> by fmincon solver.
> 
> max_loading after few iteration of fmincon appears to be in order of 100
> (134,150) which doesn't make sense (The loading of base case is 0.75).
> 
> I am thinking the problem is about updating generator active power and
> demands Active power.
> 
> 

Reply via email to