Yes. Thanks sir Vào 2:25 Th 4, 15 thg 4 2020 Ray Daniel Zimmerman <[email protected]> đã viết:
> 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]> 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]> đã 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]> >> 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]> >> 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]> 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 > > >
