Skip to content
/ OPOMO Public

Fast and reliable solver for the Optimal Power Flow Problem

License

Notifications You must be signed in to change notification settings

hhijazi/OPOMO

Repository files navigation

License

ACOPF

About

OPOMO is a C++ tool for solving the Optimal Power Flow problem (AC/DC). It is built on top of the modeling language Gravity, and uses the nonlinear solver Ipopt.

Citing

Bibtex ref: @article{OPOMO, title={Benchmarking Large-Scale ACOPF Solutions and Optimality Bounds}, author={Smitha Gopinath and Hassan L. Hijazi}, journal={Proceedings of the 2022 IEEE Power Engineering Society (PES) General Meeting (GM)}, year={2022} }


Numerical Results

OPOMO is benchmarked against Matpower, PowerModels and GridOpt on PGLiB v21.07. Benchmarking Performance Profile on ACOPF


Getting Started

OPOMO has been only tested on Linux and Mac, Windows support is upcoming.

Dependencies

Install Cmake version 3.16 or later.

OPOMO will pull Gravity, Ipopt, and cpp_option_parser automatically, you just need to enter the following:

mkdir build && cd build && cmake .. && make

The executable will appear under OPOMO/bin/Release

Run using: OPOMO/bin/Release/acopf -f path_to_m_file

Command Line Options

Short_name Long_name Description Default_value
-h --help shows option help -
-f --file Input file name ../data_sets/Power/nesta_case5_pjm.m
-l --log Log level 0
-s --scale Scale objective function and thermal limit constraints 1e-3
-t --tol solver tolerance 1e-6
-m --model power flow model: ACPOL/ACRECT ACPOL

Notes

Logo constructed using svg3d, thanks to Philip Rideout.

About

Fast and reliable solver for the Optimal Power Flow Problem

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published