Skip to content

CURENT/ams

Repository files navigation

LTB AMS

Python Software for Power System Scheduling Modeling and Co-Simulation with Dynanic, serving as the market simulator for the CURENT Largescale Testbed.

License: GPL-3.0 platforms Python Versions Repo Size GitHub last commit (master) GitHub last commit (develop) libraries Structure

CURENT ERC Logo

Latest Stable
Documentation Latest Documentation Documentation Status
Badges
Downloads PyPI Version Conda Version
Try on Binder Binder
Code Quality Codacy Badge Codacy Badge
Build Status GitHub Action Status Build Status

Why AMS

With the built-in interface with ANDES, AMS enables Dynamics Incorporated Stability-Constrained Scheduling.

AMS is a Modeling Framework that provides a descriptive way to formulate scheduling problems. The optimization problems are then handled by CVXPY and solved with third-party solvers.

AMS produces credible scheduling results and competitive performance. The following results show the comparison of DCOPF between AMS and other tools.

Cost [$] AMS MATPOWER pandapower
PEGASE 1354-Bus 1,173,590.63 1,173,590.63 1,173,590.63
PEGASE 2869-Bus 2,338,915.61 2,338,915.61 2,338,915.61
GOC 4020-Bus 793,634.11 793,634.11 793,634.11
EPIGRIDS 5658-Bus 1,195,466.12 1,195,466.12 1,195,466.12
EPIGRIDS 7336-Bus 1,855,870.94 1,855,870.94 1,855,870.94

DCOPF Time

AMS is currently under active development. Use the following resources to get involved.

Installation

NOTE:

  • Version 0.9.9 has known issues and has been yanked from PyPI
  • kvxopt is recommended to install via conda as sometimes pip struggles to set the correct path for compiled libraries
  • cvxpy versions below 1.5 are incompatible with numpy versions 2.0 and above

AMS is released as ltbams on PyPI and conda-forge. Install from PyPI using pip:

pip install ltbams

Install from conda-forge using conda:

conda install conda-forge::ltbams

Install from GitHub source:

pip install git+https://github.com/CURENT/ams.git

Example Usage

Using AMS to run a Real-Time Economic Dispatch (RTED) simulation:

import ams

ss = ams.load(ams.get_case('ieee14_uced.xlsx'))
ss.RTED.run()

print(ss.RTED.pg.v)

Sponsors and Contributors

AMS is the scheduling simulation engine for the CURENT Largescale Testbed (LTB). More information about CURENT LTB can be found at the LTB Repository.

This work was supported in part by the Engineering Research Center Program of the National Science Foundation and the Department of Energy under NSF Award Number EEC-1041877 and the CURENT Industry Partnership Program.

This work was supported in part by the Advanced Grid Research and Development Program in the Office of Electricity at the U.S. Department of Energy.

See GitHub contributors for the contributor list.

License

AMS is licensed under the GPL v3 License.

Related Projects

Some commercial solvers provide academic licenses, such as COPT, GUROBI, CPLEX, and MOSEK.