MATPOWER and MOST do not optimize capacitor banks or taps, so I assume you have 
written your own algorithm for optimizing them. In that case, I’m afraid I 
can’t offer any insight on how to improve your approach, but I don’t think the 
SCUC in MOST will be of any help for that.

   Ray


On Apr 14, 2020, at 11:21 AM, Nguyễn Anh 
<[email protected]<mailto:[email protected]>> wrote:


Dear Sir sorry my english language is very poor I also do not understand how 
your SCUC is related to MOST. However, I am using algorithms to optimize Fuel 
cost case118 with the participation of capacitor banks and taps. I see the time 
running very slowly. For example, when I runopf ('case118'), the time is equal 
to (~ s). And when there is the participation of the capacitor and transformer 
taps, the time I use the algorithm in hours. Can you help me improve my problem 
with your SCUC
Thanks
Vabk2

Vào Th 4, 15 thg 4, 2020 vào lúc 00:17 Ray Daniel Zimmerman 
<[email protected]<mailto:[email protected]>> đã viết:
I suspect it is using a very different formulation of the problem that results 
in a much smaller problem size. MOST uses a very unique problem formulation, 
which has its advantages and disadvantages.

   Ray


On Apr 14, 2020, at 10:17 AM, Steven G 
<[email protected]<mailto:[email protected]>> wrote:

Dear Dr. Zimmerman,
Thanks for the suggestion! I wrote my own python code to construct SCUC with 
contingencies, it was a lot faster (~seconds). Also I remember I wrote my own 
Matlab code for SCUC with contingencies (using YALMIP), it took 2~3 minute to 
construct a case like 118bus. I really don't know why MOST could be so slow.

Thanks,
Steven

On Mon, Apr 6, 2020 at 11:55 AM Ray Daniel Zimmerman 
<[email protected]<mailto:[email protected]>> wrote:
I am not surprised. By including 245 contingencies, you have made the problem 
245 times larger. In general, given the problem formulation that MOST uses for 
handling contingencies, it is not practical to simply add a complete list of 
contingencies directly to the problem except for the very smallest systems. 
Effective use of MOST with contingencies requires a very careful selection of a 
limited subset of contingencies that “cover” in some sense the worst cases and 
are representative of the outages that can happen. This contingency selection 
process is itself a non-trivial problem.

I should also note that there have been improvements in the versions of 
MATPOWER and MOST available on GitHub since the release of version 7 that 
improve the performance of constructing very large cases. But that won’t change 
the fact that you constructing a very large case.

   Ray




On Apr 4, 2020, at 3:12 PM, Steven G 
<[email protected]<mailto:[email protected]>> wrote:

Dear Matpower users,
I'm solving SCUC using MOST, but it was extremely slow to formulate the problem 
with contingency scenarios.

For example, I'm running the following code (case_ACTIVSg200), it took more 
than 2 hours to formulate one instance of SCUC. Without contingencies, one SCUC 
is formulated in 3 seconds.

clear;

define_constants;
nt = 24; % 24 hours
area_ind = 2:7;
na = length(area_ind); % 6 areas

mpc = loadcase('case_ACTIVSg200');
mpc.bus(:, BUS_AREA) = mpc.bus(:, ZONE);
ng = size(mpc.gen,1);

scenarios = scenarios_ACTIVSg200; % get a change table

xgd.colnames = {'CommitKey','CommitSched','MinUp','MinDown','InitialState'};
xgd.data = [ones(ng,1), ones(ng,1), ones(ng,1),ones(ng,1), zeros(ng,1)];
xgd = loadxgendata(xgd, mpc);

indices = (1:nt*na); % indices for the load scenarios of the first day
load_data = scenarios(indices, end); % last column: loads of 6 areas
area_load1 = reshape(load_data, na, nt)'; % nt-by-na matrix
profiles = struct( ...
    'type', 'mpcData', ...
    'table', CT_TAREALOAD, ...
    'rows', area_ind, ...
    'col', CT_LOAD_ALL_P, ...
    'chgtype', CT_REP, ...
    'values', [] );
profiles.values(:, 1, :) = area_load1;

" OutmailID: 124525657, List: 'matpower-l', MemberID: 78095970 SCRIPT: "perform 
UC regardless of mdo.UC.CommitKey, consider DC line flow constraints
mpopt = mpoption('most.uc.run',1,'most.dc_model', 1, 'most.skip_prices', 1);

" TCL MERGE ERROR ( 04/06/2020 11:54:34 ): "invalid command name "perform" 
Construct MOST struct
mdi = loadmd(mpc, nt, xgd, [], [], profiles); % WITHOUT contingencies
% contab = contab_ACTIVSg200;
% mdi = loadmd(mpc, nt, xgd, [], contab, profiles); % WITH contingencies
mdo = most(mdi,mpopt);


Thanks,
Steven


<test_most.m>




--
Nguyễn Ngọc Anh
Khoa Công nghệ Điện - Đại học Công nghiệp TP. Hồ Chí Minh
Add: 12 Nguyễn Văn Bảo, P.4, Q. Gò Vấp, TP. HCM


Reply via email to