It appears that the Optimization Toolbox solver (either linprog or quadprog, depending on the generator costs) was unable to solve the problem, though there is not enough information to determine the reason. I find that Gurobi and CPLEX are typically more robust than the Opt Toolbox solvers.
Unfortunately, in MATPOWER 4.1 there was also a bug in qps_ot() that caused the program to crash under certain linprog/quadprog failures, such as the one you are seeing. This has been fixed for the next release. -- Ray Zimmerman Senior Research Associate 419A Warren Hall, Cornell University, Ithaca, NY 14853 phone: (607) 255-9645 On May 2, 2013, at 10:09 AM, 胡源 <[email protected]> wrote: > Dear Professor, > I recently use matpower to calculate the amount of loadshedding under > single contingency condition on matlab platform with the gurobi > solver,opt=mpoption('OUT_ALL', 0,'OPF_ALG_DC',700), and I can get the right > results. However, when I set opt=mpoption('OUT_ALL', 0,'OPF_ALG_DC',300), > matlab will report error, detail information can be found in the appendix. > Can you explain it for me? > > > > > > > > > > 祝康乐! > 胡源 > 西安交通大学电气学院 > > Best Regards, > Hu Yuan > Dept. Electrical Engineering > Xi'an Jiaotong University > > > > > > Ray Zimmerman 写: > In the case of the DC OPF, the Kuhn-Tucker multiplier at the "from" and "to" > sides are simply distinguished by the direction of the flow. If the flow is > binding in the from->to direction, it will be the MU_SF that is non-zero. If > it binds in the to->from direction it will be MU_ST that is non-zero. Only > one should be non-zero at time for a given branch. > > So, if you don't care about direction, the multipliers for transmission > capacity constraints and power balance constraints can be found as follows: > > define_constants; > r = rundcopf('mycase'); > mu = r.branch(:, MU_SF) + r.branch(:, MU_ST); > lambda = r.bus(:, LAM_P); > > -- > Ray Zimmerman > Senior Research Associate > 419A Warren Hall, Cornell University, Ithaca, NY 14853 > phone: (607) 255-9645 > > > > > On Mar 14, 2013, at 9:53 PM, 胡源 <[email protected]> wrote: > >> Thank you for providing this platform for us to discuss our problem when >> using matpower! >> when I use the command 'rusults=rundcopf()', the value of >> rusults.branch(:,18) is not the same to the rusults.branch(:,19), because >> it is the dc power flow, I think there is no difference between the >> Kuhn-Tuchker multiplier on MVA limit at 'from' bus and 'to' bus. Can you >> explain it to me or tell me how to get the Lagrange multipliers for >> transmission line capacity constraints and equality constraints after >> rundcopf. Thank you! >> >> >> >> sincerely yours >> >> >> >> hu yuan > > <error_report.doc>
