This is an implementation of resilient reconfiguration problem for distribution systems. This is not an official implementation of the original paper, so please test this yourself before using it, and please tell me if you find any errors.
% Break lines setup
break_lines = [3, 5, 7];
% Branch status setup
z = ones(size(mpc.branch, 1), 1);
z(break_lines) = 0.;
% Solve resilient reconfiguration problem
[Pf, Qf, u, Pg, Qg, Pl, Ql, c] = resilient_reconfiguration(mpc, z);
A visualization function only for IEEE 33 bus distribution system is defined in plotCase33.m
.
Branch power flow limits are set based on RATE_A
column. If your casefile do not provide RATE_A
data, please relax branch power flow limit constraints (a large enough rate).
Please refer to [1]'s appendix for overall mathematical model of this problem.
[1] R. D. Zimmerman, C. E. Murillo-Sanchez (2020). MATPOWER (Version 7.1) [Software]. Available: https://matpower.org
[2] Lofberg J. YALMIP: A toolbox for modeling and optimization in MATLAB[C]//2004 IEEE international conference on robotics and automation (IEEE Cat. No. 04CH37508). IEEE, 2004: 284-289. Available: https://yalmip.github.io/
[3] Any mixed-integer linear programming (MILP) solver.
[1] S. Sun, G. Li, C. Chen, Y. Bian, and Z. Bie, “A Novel Formulation of Radiality Constraints for Resilient Reconfiguration of Distribution Systems,” IEEE Transactions on Smart Grid, vol. 14, no. 2, pp. 1337–1340, Mar. 2023, doi: 10.1109/TSG.2022.3220054.