Source-linked AI summary

PowerModels.jl: An Open-Source Framework for Exploring Power Flow Formulations

Carleton Coffrin, Russell Bent, Kaarthik Sundar, Yeesian Ng, Miles Lubin

arXiv:1711.01728v3math.OCcs.CE

TL;DR

Power system optimization research has produced increasingly sophisticated formulations that are difficult to implement and compare across applications. PowerModels addresses this gap with an open-source framework for shared problem specifications and alternative formulations, and validates the approach through implementation checks and a five-formulation OPF study.

  • Problem

    Complex mathematical models and auxiliary constraints make emerging power system optimization methods difficult to implement and reproduce across applications.

  • Method

    PowerModels provides an open-source power-system optimization framework that separates shared problem specifications from alternative mathematical formulations.

  • Results

    PowerModels was validated on hundreds of AC OPF benchmarks and used in a proof-of-concept comparison of five OPF formulations.

  • Takeaways & Limitations

    A common open-source platform assists fair and rigorous comparisons of power flow formulations.

Abstract

from arXiv · show

In recent years, the power system research community has seen an explosion of novel methods for formulating and solving power network optimization problems. These emerging methods range from new power flow approximations, which go beyond the traditional DC power flow by capturing reactive power, to convex relaxations, which provide solution quality and runtime performance guarantees. Unfortunately, the sophistication of these emerging methods often presents a significant barrier to evaluating them on a wide variety of power system optimization applications. To address this issue, this work proposes PowerModels, an open-source platform for comparing power flow formulations. From its inception, PowerModels was designed to streamline the process of evaluating different power flow formulations on shared optimization problem specifications. This work provides a brief introduction to the design of PowerModels, validates its implementation, and demonstrates its effectiveness with a proof-of-concept study analyzing five different formulations of the Optimal Power Flow problem.

I. INTRODUCTION & MOTIVATION

PowerModels is introduced as a free, open-source toolkit for comparing diverse power flow formulations across power network optimization problems. It addresses implementation complexity, solver usability, and Matlab dependence while supporting reproducible comparisons.

  • Motivation: Emerging power flow approximations and convex relaxations broaden power network optimization beyond traditional DC power flow.The methods address applications including OPF, OTS, and TNEP.
  • Motivation: Complex mathematical models and auxiliary constraints make many proposed methods difficult to implement and reproduce from scratch.Precisely reproducing earlier results often requires the original authors’ implementation.
  • Motivation: Direct use of advanced optimization software is tedious, motivating modeling languages such as JuMP, AMPL, GAMS, and Pyomo.These languages provide a modeling layer for effective use of solvers including IPOPT, Mosek, and Gurobi.
  • PowerModels: PowerModels provides a free, open-source toolkit focused on comparing power flow formulations across Power Flow, OPF, OTS, and TNEP.Its first version establishes baseline implementations for these power network optimization problems.
  • PowerModels: The implementation includes polar AC, rectangular AC, DC, SOC, and QC formulations.These formulations support comparisons within a common platform.
  • Validation and impact: PowerModels was validated on hundreds of AC OPF benchmarks, and its common platform supports fairer comparisons of optimization methods.The open-source Julia ecosystem also makes reproducing results nearly effortless.

II. THE VALUE OF MATHEMATICAL PROGRAMMING

Mathematical programming separates problem specification from solution methods, allowing researchers to change solver technologies without rewriting the complete model. This abstraction motivates PowerModels’ design.

  • Abstraction: Mathematical programming languages separate the mathematical specification of an optimization problem from the algorithmic task of solving it.A rigorous specification remains valuable even when a problem is impractical to solve.
  • Abstraction: JuMP models a simple DC OPF while leaving the solution method to a selected solver such as CLP.The complete specification is independent of the solution method.
  • Abstraction: Changing the solver technology can support different optimization problem classes, such as moving from an LP solver to an SDP solver.The software change required is changing the solver technology.

III. POWER SYSTEM MATHEMATICAL PROGRAMS

PowerModels adds power-system-specific abstractions above JuMP to separate shared problem specifications from alternative mathematical formulations. Its design reflects the variety of formulations and the structure of network components.

  • Design goals: PowerModels provides a domain-specific abstraction layer above JuMP for power system mathematical programs.The layer represents complex-number equations and components such as buses, generators, and branches.
  • Model scope: The initial component scope follows MATPOWER and includes buses, generators, and π-equivalent network elements.Supported buses have one constant-power load and one fixed shunt; generators use polynomial cost functions.
  • Design goals: The framework supports multiple formulations because each optimization problem may have alternatives such as AC polar, DC, and SOC models.AC power flow equations are naturally expressed using complex numbers.

A. Abstract Power System Problems

PowerModels expresses power system optimization problems as reusable collections of functions organized around network components. The OTS example extends OPF with branch-status variables while reusing core abstractions.

  • Abstract OPF Problems: A GenericPowerModel receives network data and is passed to functions that build variables, objectives, and constraints for an OPF model.The abstract OPF specification follows the MATPOWER problem definition.
  • Abstract OPF Problems: Constraints are applied component by component, with KCL assigned to buses and Ohm’s law assigned to branches.This organization reflects the network structure of power system mathematical programs.
  • Abstract OTS Problems: OTS adds an on/off branch indicator and extends branch-flow constraints to on_off variants incorporating that indicator.The rest of the OTS model reuses functions from the OPF formulation.

B. Power System Formulations

PowerModels separates generic power-system optimization problems from mathematical formulations, allowing multiple AC, DC, and convex-relaxation implementations to be built and solved through a common JuMP-based framework.

  • PowerModels formulations specify both the physical model, such as AC or DC, and its mathematical implementation, such as polar or rectangular AC coordinates.
  • The framework includes ACPPowerModel, ACRPowerModel, ACTPowerModel, DCPPowerModel, DCPLLPowerModel, SOCWRPowerModel, and QCWRPowerModel.
  • PowerModels combines network data, an abstract problem definition, and a formulation to build a JuMP model, then solves it with a specified solver.
  • Generic problem definitions use abstract complex-voltage-product expressions that formulations replace with concrete real-number implementations.
  • ACTPowerModel adds constraints and variables, while more complex mappings such as QCWRPowerModel can introduce auxiliary variables and constraints.

C. Comparing Formulations

Separating problem specifications from formulations makes it straightforward to compare formulations on the same problem and with the same solver.

  • Keeping the problem and formulation separate changes only the formulation across run_opf calls, supporting fair comparisons and reducing implementation mistakes.
  • The shared structure also helps check mathematical properties, including that SOC and QC relaxations should have lower objective values than the nonconvex formulations.

D. Proving Infeasibility

PowerModels uses convex relaxations to distinguish genuinely infeasible network data from failures of local nonlinear optimization methods.

  • Convex relaxations can prove that both the relaxation and the original nonconvex problem are infeasible when the relaxation remains infeasible.
  • A nonconvex solver reaching an infeasible stationary point cannot establish whether the data are infeasible or the algorithm failed to find a feasible solution.
  • This diagnostic capability supports validation and debugging of large power-network data sets.

E. User-Driven Extensions

Julia’s package-management system supports community extensions to the PowerModels modeling layer, including new problem specifications and formulations.

  • Julia’s native package management lets users develop and share PowerModels extension packages with the community.
  • PowerModelsAnnex3 demonstrates how to extend PowerModels with new problem specifications and formulations.

IV. VALIDATION AND PROOF-OF-CONCEPT STUDIES

The studies validate PowerModels against MATPOWER and demonstrate its use for comparing five power-flow formulations on the OPF problem.

  • The validation study tests PowerModels for comparability with MATPOWER, while the proof-of-concept study compares different power-flow formulations.Both studies use the OPF problem presented in Code Block 2.

A. Test Cases and Computational Setting

The computational evaluation uses 108 PGLib-OPF networks and specifies software, solver, linear algebra, and optimality-tolerance settings for reproducibility.

  • The studies evaluate 108 power networks from the IEEE PES PGLib-OPF v17.08 benchmark library.
  • PowerModels is evaluated with Julia v0.6 and JuMP v0.18, using Ipopt with HSL MA27 and an optimality tolerance of 10^-6.MATPOWER is evaluated with Matlab R2017b and its default OPF solvers.

B. Validation Study

The validation results show that PowerModels reproduces MATPOWER’s AC-P objectives and provides comparable OPF results, while the formulation study finds consistent solutions across nonconvex models and a QC–SOC strength/runtime trade-off.

  • B. Validation Study: PowerModels exactly matches MATPOWER’s AC-P objective values where MATPOWER finds a solution, indicating a correct AC power-flow implementation.
  • B. Validation Study: PowerModels’ OPF implementation is comparable to MATPOWER’s, although MATPOWER’s MIPS solver tends to be faster and less robust than Ipopt via PowerModels.
  • C. Formulation Study: The five-formulation study compares AC-P, AC-R, AC-T, QC, and SOC using AC-P as the base-case feasible solution.
  • C. Formulation Study: Despite lacking convergence guarantees, AC-P, AC-R, and AC-T converge to very similar solutions, with AC-R tending to be fastest.
  • C. Formulation Study: QC is a stronger relaxation than SOC, while SOC offers a clear runtime benefit because it is simpler.
  • C. Formulation Study: Consistency among the nonconvex models and convex relaxations suggests that PowerModels correctly implements these formulations.
Loading 1711.01728v3…