HEDGeOPF.jl Documentation

Overview

HEDGeOPF.jl is a Julia package to generate datasets of AC Optimal Power Flow (AC-OPF) instances for standardized training and testing of Neural Networks (NNs) that learn to approximate this problem. It implements a methodology that delivers high-quality datasets without compromising on efficiency and scalability. Please refer to our publication for details on the methodology.

Installation

The package HEDGeOPF relies on the R package volesti for polytope sampling via RCall.jl. Therefore, these external dependencies must be installed for HEDGeOPF to fully work. Currently, this can be done manually through the following steps:

  1. Perform a system-wide installation of R from CRAN. Is is recommended to install a R ≥ 4.4 release. In particular, the latest version of volesti is build with R 4.4.3.
  2. Open an R session and run the following command to install the latest release of volesti:
install.packages("volesti", repos = "https://cloud.r-project.org")

It is now possible to install HEDGeOPF using the Julia package manager.

] add https://github.com/mttb91/HEDGeOPF.jl.git

As explained here, in order for RCall to locate the R installation, run

] build RCall

Running HEDGeOPF requires two solvers: one for Linear Programming (LP) problems and the other for nonlinear (NLP) ones. The open-source solvers HiGHS and Ipopt are recommended for the first and second problem class, respectively, and can be installed via the package manager with

] add HiGHS, Ipopt

Test that the package works by running

] test HEDGeOPF

HEDGeOPF's tests verify, among other things, if RCall connection to R is established correctly and if the R package volesti is installed and fully working.