SEAS Communication Engine: An Extensible, Flexible Wrapper for Co-Simulation Agents

Research output: NRELPoster

Abstract

When modeling and analyzing the power grid and other large scale systems, researchers often express scenarios as optimization problems and feed them into advanced software solvers. In order to allow multiple solvers to communicate with each other and share data from different domains, the National Renewable Energy Laboratory (NREL) and associated Department of Energy (DOE) labs have developed a software framework called the Hierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS). HELICS allows cosimulation via a collection of client libraries for different languages that can be called from the appropriate optimization software. However, these client libraries do not provide a higher level of abstraction beyond reading and writing data off of the shared HELICS bus. In this paper, we describe a new software library called the SEAS Communication Engine that exposes a higher-level API for running cosimulation problems. The SEAS Engine provides a class-based abstraction on top of the Python HELICS client, in order to allow users to implement their domain-specific cosimulations without needing to interact with core HELICS primitives. This will make adoption of HELICS and cosimulation in general easier, by exposing a simpler API. In the second part of the paper, we validate our library on a collection of different simulation examples, including the canonical IEEE 13 Bus Feeder. Lastly, we demonstrate using the SEAS Engine to directly call domain-specific code written in the Julia programming language. Our hope is that this will serve as a template for easily calling software in different programming languages via the SEAS Engine, thereby avoiding code duplication and complexity.
Original languageAmerican English
PublisherNational Renewable Energy Laboratory (NREL)
StatePublished - 2024

Publication series

NamePresented at the 2024 Conference on Innovative Smart Grid Technologies, North America (ISGT NA 2024), 19-22 February 2024, Washington, D.C.

NREL Publication Number

  • NREL/PO-2C00-88607

Keywords

  • co-simulation
  • code
  • ESI
  • HELICS
  • HPC
  • hybrid energy systems
  • Julia
  • Python
  • SEAS
  • software

Fingerprint

Dive into the research topics of 'SEAS Communication Engine: An Extensible, Flexible Wrapper for Co-Simulation Agents'. Together they form a unique fingerprint.

Cite this