Table of Contents
Fetching ...

GPU Accelerated Security Constrained Optimal Power Flow

Anthony Degleris, Abbas El Gamal, Ram Rajagopal

Abstract

We propose a GPU accelerated proximal message passing algorithm for solving contingency-constrained DC optimal power flow problems (OPF). We consider a highly general formulation of OPF that uses a sparse device-node model and supports a broad range of devices and constraints, e.g., energy storage and ramping limits. Our algorithm is a variant of the alternating direction method multipliers (ADMM) that does not require solving any linear systems and only consists of sparse incidence matrix multiplies and vectorized scalar operations. We develop a pure PyTorch implementation of our algorithm that runs entirely on the GPU. The implementation is also end-to-end differentiable, i.e., all updates are automatic differentiation compatible. We demonstrate the performance of our method using test cases of varying network sizes and time horizons. Relative to a CPU-based commercial optimizer, our implementation achieves well over 100x speedups on large test cases, solving problems with over 500 million variables in under a minute on a single GPU.

GPU Accelerated Security Constrained Optimal Power Flow

Abstract

We propose a GPU accelerated proximal message passing algorithm for solving contingency-constrained DC optimal power flow problems (OPF). We consider a highly general formulation of OPF that uses a sparse device-node model and supports a broad range of devices and constraints, e.g., energy storage and ramping limits. Our algorithm is a variant of the alternating direction method multipliers (ADMM) that does not require solving any linear systems and only consists of sparse incidence matrix multiplies and vectorized scalar operations. We develop a pure PyTorch implementation of our algorithm that runs entirely on the GPU. The implementation is also end-to-end differentiable, i.e., all updates are automatic differentiation compatible. We demonstrate the performance of our method using test cases of varying network sizes and time horizons. Relative to a CPU-based commercial optimizer, our implementation achieves well over 100x speedups on large test cases, solving problems with over 500 million variables in under a minute on a single GPU.

Paper Structure

This paper contains 48 sections, 49 equations, 7 figures.

Figures (7)

  • Figure 1: A 3-bus system with 3 lines, 2 loads, 2 generators, and 1 battery represented in the standard device-node model. The system has $J = 11$ terminals (solid black dots), $N = 3$ nodes (dotted boxes), and $D = 8$ devices (gray squares). In this example, the devices are $\{ L_1, L_2, G_1, G_2, B_1, T_1, T_2, T_3\}$, and the nodes are $\{ n_1, n_2, n_3\}$ (we use capital letters for the devices to distinguish different types). Each device or node is a subset of the terminals, e.g., $n_1 = \{1, 2, 3, 4\}$ and $L_1 = \{ 1\}$, $G_1 = \{ 2 \}$, $T_1 = \{3, 5\}$, $T_2 = \{4, 9\}$. Based on Figure 2.1 in kraning2013dynamic.
  • Figure 2: Primal and dual residuals (left) and relative objective objective suboptimality (right) as a function of algorithm iteration. Message passing converges to an accuracy of $10^{-3}$ in 529 iterations and $10^{-4}$ in 4180 iterations.
  • Figure 3: Number of iterations to converge as a function of tolerance $\epsilon$ when initializing with all zeroes (blue) and the solution to the previous $T$ time periods (orange). Warm starting reduces the required iterations by about a half, e.g., 279 iterations versus 514 iterations for an accuracy of $10^{-3}$.
  • Figure 4: Runtimes for 1000 iterations of message passing compared with a commercial interior point method, Mosek, solved to a low accuracy of $10^{-3}$. Problem size is varied by increasing the number of nodes $N$ (left plot), the time horizon $T$ (middle plot), and the number of contingencies $K$ (right plot). In all settings, message passing is significantly faster than Mosek for sufficiently large cases, achieving over a 400$\times$ speedup in the largest of cases.
  • Figure 5: Derivatives of total cost with respect to generator capacities for 50 randomly selected generators. (Blue bars) Exact derivatives computed using Mosek and duality theory. (Orange, green, and red dots) Approximate derivatives from unrolling message passing with automatic differentiation for $10$, $100$, and $1000$ iterations. Unrolling for more iterations leads to more accurate derivatives.
  • ...and 2 more figures