This is a set of AMPL codes that perform day-ahead (24 Hours) unit-commitment which determines the generator dispatch and scheduling while considering N-1 reliability through post-contingency constraints for transmission contingencies. Authors have uploaded a few variations of the codes, namely, Extensive, Typical Benders-decomposition, and Accelerated Benders-decomposition approach. Another classification is the consideration of network flexibility through network reconfiguration as a corrective action implemented in post-contingency constraints. Note: For a detailed explanation of the model, please refer to the paper cited below.
AMPL program requires a data file (.dat), model file (.mod) and a run file (.run) to execute. The following summarizes the files in this codeset.
Data file contains transmission, generator, bus information along with a sample load profile and line-outage distribution factors of the respective network.
- dataFile24BusAll.dat - Contains all basic parameters required for IEEE 24-bus system.
- dataFile73BusAll.dat - Contains all basic parameters required for IEEE 73-bus system.
- dataFilePolishAll.dat - Contains all basic parameters required for Polish system with 2383 buses.
- IEEE 24-bus system is one of the three areas of the IEEE 73-bus system. They are described in this reference: "The IEEE Reliability Test System-1996. A report prepared by the Reliability Test System Task Force of the Application of Probability Methods Subcommittee" and link is here.
- The 2383-bus Polish system was converted from matpower (https://matpower.org/). The data was provided by Roman Korab (roman.korab@polsl.pl).
- Some modifications may be made to the original data for the above systems.
Model files defines the variables, parameters and mathematical constraints.
- Scuc_OriginalFormulation.mod - Defines all constraints required for extensive model of N-1 SCUC constraints.
- Scuc_OriginalFormulationWithCNRConstraints.mod - Defines all constraints required for extensive model of N-1 SCUC with Corrective Network Reconfiguration (CNR) constraints.
- Scuc_BendersDecompositionConstraintsWithCNR.mod - Defines all constraints required for benders decomposition based N-1 SCUC model with or without CNR.
Run file is script file that sequentially runs ampl commands. The main goal of the run file is to choose the appropriate datafile, select the solver (gurobi/cplex linear solvers for MILP/LP), define the constrains required for respective MILP/LP problems and solve the models.
- ESCUC.run - Extensive formulation of N-1 SCUC model.
- TSCUC.run - Iterative Benders Decomposition based N-1 SCUC algorithm.
- ASCUC.run - Iterative Accelerated Benders Decomposition based N-1 SCUC algorithm.
- ESCUCCNR.run - Extensive formulation of N-1 SCUC considering Corrective Network Reconfiguration model.
- TSCUCCNR.run - Iterative Benders Decomposition based N-1 SCUC with Corrective Network Reconfiguration algorithm.
- ASCUCCNR.run - Iterative Accelerated Benders Decomposition based N-1 SCUC with Corrective Network Reconfiguration algorithm.
Note: The combination of data, model and run file are required to execute the above scripts. Decomposed models are iterative in nature whereas the extensive model is a single MILP problem which is co-optimized. Ensure that all files are in the same folder.
- Open AMPL IDE
- Select folder with the above files
- Open appropriate run file and un-comment the datafile (dataFile24BusAll.dat/dataFile73BusAll.dat/dataFilePolishAll.dat) required for execution.
- In AMPL execute the command: include runFileName.run (for e.g. include ESCUC.run)
Note: Extensive models require substantial computer resources to solve. Unrealistic for IEEE 73-bus system and polish network for ESCUCCNR, and polish network for ESCUC. Requires AMPL to be installed. Available Online: ampl.com
If you use these codes for your work, please cite the following paper:
Arun Venkatesh Ramesh, Xingpeng Li and Kory W. Hedman, "An Accelerated-Decomposition Approach for Security-Constrained Unit Commitment With Corrective Network Reconfiguration," IEEE Transactions on Power Systems, vol. 37, no. 2, pp. 887-900, Mar. 2022. doi: 10.1109/TPWRS.2021.3098771.
Paper website: https://rpglab.github.io/papers/ArunRamesh-AccDecompSCUC_CNR/
Built upon our existing code (https://github.com/rpglab/N-1_SCUC), Arun Venkatesh Ramesh developed this set of programs. Xingpeng Li provided the initial idea and supervised this work.
If you need any techinical support, please feel free to reach out to Arun Ramesh at aramesh4@uh.edu.
For collaboration, please contact Dr. Xingpeng Li at xli83@central.uh.edu.
Website: https://rpglab.github.io/
This work is licensed under the terms of the Creative Commons Attribution 4.0 (CC BY 4.0) license.
The authors don’t make any warranty for the accuracy, completeness, or usefulness of any information disclosed; and the author assumes no liability or responsibility for any errors or omissions for the information (data/code/results etc) disclosed.