Hello, I hope you are all well. I am trying to implement a transmission switching DCOPF model to MATPOWER for use in a research project according to the formulation provided in E. B. Fisher, R. P. O’Neill, and M. C. Ferris, “Optimal transmission switching,” IEEE Trans. Power Syst. vol 23, no. 3, August 2008. To be concise, the main difference from the standard DCOPF and the model implementing transmission switching is the flow constraints on the lines given by
B_k(\theta_n - \theta_m) - P_{nk} = 0 is split into two separate inequality constraints B_k(\theta_n - \theta_m) - P_{nk} + (1 - z_k)M >= 0 B_k(\theta_n - \theta_m) - P_{nk} - (1 - z_k)M <= 0 with an additional constraint on the integer variable z_k to limit the number of open lines in the network, namely \sum_k (1 - z_k) <= j In this formulation, z_k is an integer value that takes on either 1 or 0 for a closed or open line, M is a large number greater than or equal to B_k(\theta_n - \theta_m), and j is the total number of lines that can be opened. My problem is that I do not know what to do in order to add these new constraints or modify the usual constraints. I understand there is a section in the user manual on how to add constraints, but it is my understanding from reading through past threads that it is not possible to simply add integer constraints in this manner. I believe I would need to change the solver to 'MIPS' or 'IPOPT', but I am still unsure how to incorporate the new constraints. Any help would be greatly appreciated, and sorry I do not have much to go on right now. Thank you. Best, Matt