PowerModels.jl is a Julia/JuMP package for Steady-State Power Network Optimization. It is designed to enable computational evaluation of emerging power network formulations and algorithms in a common platform. The code is engineered to decouple problem specifications (e.g. Power Flow, Optimal Power Flow, ...) from the power network formulations (e.g. AC, DC-approximation, SOC-relaxation, ...). This enables the definition of a wide variety of power network formulations and their comparison on common problem specifications.
Core Problem Specifications
- Power Flow (pf)
- Optimal Power Flow (opf)
- Optimal Transmission Switching (ots)
- Transmission Network Expansion Planning (tnep)
Core Network Formulations
- AC (polar and rectangular coordinates)
- DC Approximation (polar coordinates)
- SOC Relaxation (W-space)
- QC Relaxation (W+L-space)
Network Data Formats
- Matpower ".m" files
- PTI ".raw" files (PSS(R)E v33 specfication)
The package documentation includes a variety of useful information including a quick-start guide, network model specification, and baseline results.
Additionally, these presentations provide a brief introduction to various aspects of PowerModels,
Community-driven development and enhancement of PowerModels are welcome and encouraged. Please fork this repository and share your contributions to the master with pull requests. See CONTRIBUTING.md for code contribution guidelines.
This code has been developed as part of the Advanced Network Science Initiative at Los Alamos National Laboratory. The primary developer is Carleton Coffrin(@ccoffrin) with support from the following contributors,
- Russell Bent (@rb004f) LANL, Matpower export, TNEP problem specification
- Hakan Ergun (@hakanergun) KU Leuven, HVDC lines
- David Fobes (@pseudocubic) LANL, PSS(R)E v33 data support
- Rory Finnegan (@rofinn) Invenia, Memento Logging
- Frederik Geth (@frederikgeth) CSIRO, Branch Flow formulation
- Miles Lubin (@mlubin) MIT, Julia/JuMP advise
- Yeesian Ng (@yeesian) MIT, Documenter.jl setup
- Kaarthik Sundar (@kaarthiksundar) LANL, OBBT utility
If you find PowerModels useful in your work, we kindly request that you cite the following technical report:
@misc{1711.01728,
author = {Carleton Coffrin and Russell Bent and Kaarthik Sundar and Yeesian Ng and Miles Lubin},
title = {PowerModels.jl: An Open-Source Framework for Exploring Power Flow Formulations},
year = {2017},
eprint = {arXiv:1711.01728},
url = {http://arxiv.org/abs/1711.01728}
}
Citation of the orginal works for problem denifitions (e.g. OPF) and power flow formulations (e.g. SOC) is also encuraged when publishing works that use PowerModels.
This code is provided under a BSD license as part of the Multi-Infrastructure Control and Optimization Toolkit (MICOT) project, LA-CC-13-108.