The AMES Wholesale Power Market Test Bed

A Free Open-Source Computational Laboratory
for the Agent-Based Modeling of Electricity Systems

Last Updated: 4 February 2017

Site maintained by:
Leigh Tesfatsion
Professor of Econ,
Math, and ECpE
Iowa State University
Ames, Iowa 50011
tesfatsi AT

Integrated T&D System Project
Electricity Market Open-Source Software
IEEE Task Force on Open-Source Software
Agent-Based Electricity Research
Agent-Based Computational Economics (ACE)
AMES Test Bed Schematic

Software Release Disclaimer:
The AMES Market Package is our software implementation, in Java, of the AMES Wholesale Power Market Test Bed. This software, provided below, is unsupported and provided as-is, without warranty of any kind.

Table of Contents:

Software Overview

The wholesale power market design proposed by the U.S. Federal Energy Regulatory Commission (FERC) in an April 2003 white paper [FERC 2003] encompasses the following core features:

Versions of FERC's wholesale power market design have been implemented (or scheduled for implementation) in U.S. energy regions in the Midwest (MISO), New England (ISO-NE), New York (NYISO), the mid-Atlantic states (PJMB), California (CAISO), the southwest (SPP), and Texas (ERCOT). Nevertheless, strong criticism of the design persists. Part of this criticism stems from the concerns of non-adopters about the suitability of the design for their regions due to distinct local conditions (e.g., hydroelectric power in the northwest). Even in regions adopting the design, however, criticisms continue to be raised about market performance.

One key problem for participants in wholesale power markets restructured in accordance with FERC's design is a lack of full transparency regarding market operations. Due in great part to the complexity of the market design in its various actual implementations, the business practices manuals and other public documents released by market operators are daunting to read and difficult to comprehend. Moreover, in many energy regions (e.g., MISO), data is only posted in partial and masked form with a significant time delay. The result is that many participants are wary regarding the efficiency, reliability, and fairness of market protocols (e.g., settlement practices and market power mitigation rules). Moreover, outsiders (e.g., university researchers) are hindered from subjecting the design to systematic testing in an open and impartial manner.

As elaborated in Sun and Tesfatsion (2007a), Sun and Tesfatsion (2007b), and Li, Sun, and Tesfatsion (2009), the AMES Wholesale Power Market Test Bed is being developed as a "simple but not too simple" computational laboratory for the systematic experimental study of wholesale power markets restructured in accordance with FERC's market design. AMES is an acronym for Agent-based Modeling of Electricity Systems.

Our objective is the facilitation of research, teaching, and training, not commercial-grade application. The release of AMES as an open-source package is intended to encourage the cumulative development of this test bed by others (as well as ourselves) in directions appropriate for their specific needs.

The release of AMES is also intended to encourage continual dialog with market stakeholders and regulators leading to successive refinements and improvements of the test bed. To further these purposes, AMES has been constructed (in Java) to have an extensible modular architecture and an easily-navigated graphical user interface (GUI).

The following section discusses the core features of AMES in greater detail.

Software Features

The latest version release AMES(V2.06) of the AMES Market Package incorporates, in simplified form, core features of FERC's proposed wholesale power market design. Below is a summary description of the logical flow of events in AMES(V2.06):

The essential idea of stochastic reinforcement learning is that the probability of choosing an action should be increased (reinforced) if the corresponding reward is relatively good and decreased if the corresponding reward is relatively poor. Each AMES GenCo determines its supply offer choices for the day-ahead market by means of VRE reinforcement learning, a variant of a stochastic reinforcement learning algorithm developed by Alvin Roth and Ido Erev on the basis of human subject experiments. The user can select either "daily profit" (revenues minus total cost) or "daily net earnings" (revenues minus avoidable cost) as the measure for each GenCo's daily "reward." The user can also tailor the settings of each GenCo's learning parameter values to its situation, in particular to its cost attributes, its operating capacity limits, and its anticipated net earnings. Each GenCo's VRE learning is implemented by means of a free open-source Java Reinforcement Learning Module (JReLMB) developed by Gieseler (2005).

At the beginning of each run with learning GenCos, a competitive equilibrium benchmark is first calculated off line in which the GenCos' true cost and capacity attributes are used to solve for LMPs and power commitments. Comparing subsequent market outcomes under learning with competitive equilibrium benchmark outcomes permits the calculation of standard market performance measures such as market efficiency and market power.

The ISO determines hourly power-supply commitments and LMPs for the day-ahead market by solving hourly bid/offer-based DC optimal power flow (DC-OPF) problems that approximate underlying AC-OPF problems. The ISO solves its DC-OPF problems by invoking an accurate and efficient DC-OPF solver, DCOPFJ, incorporated into AMES. Developed in Java by Sun and Tesfatsion (2007c), the DCOPFJ package is free open-source software that can be used either as part of a Java application or as a stand-alone DC-OPF solver. Specifically, AMES incorporates DCOPFJ(V2.0) as the ISO's solver for DC optimal power flow problems. DCOPFJ(V2.0) is a generalization of DCOPFJ(V1.0) that permits LSEs to submit price-sensitive as well as fixed demands to the ISO for the day-ahead market.

The ISO is concerned about loss of operational efficiency due to the possible exercise of "market power" by GenCos through strategic reporting of supply offers. Specifically, a GenCo has market power if the GenCo can increase its net earnings (relative to the competitive benchmarKB) either by reporting a higher-than-true marginal cost function or by reporting a less-than-true upper operating capacity limit. As one possible approach to GenCo market power mitigation, the ISO can impose a supply-offer price cap (PCap). Under such a policy, the maximum sale price reported by any GenCo cannot exceed PCap.

The user can control the length of each simulation run by choosing to set (or not) any combination of the following five stopping rules: (1) stop when a specified maximum day is reached; (2) stop when each GenCo is choosing a single supply offer with a probability that exceeds a user-specified threshold probability; (3) stop when the probability distribution used by each GenCo to select its supply offers has stabilized to within a user-specified threshold for a user-specified number of days; (4) stop when the supply offer selected by each GenCo has stabilized to within a user-specified threshold for a user-specified number of days; and/or (5) stop when the net earnings of each GenCo have stabilized to within a user-specified threshold for a user-specified number of days. When multiple stopping rules are flagged, the simulation run terminates as soon as any one of the flagged stopping rules is satisfied.

AMES has a graphical user interface (GUI) with separate screens for carrying out the following functions: (a) creation, modification, analysis and storage of case studies in either single-run and batched-run mode; (b) initialization and editing of the attributes of the transmission grid; (c) individualized initialization and editing of the attributes of Load-Serving Entities (LSEs) and GenCos; (d) individualized specification of parameter values for the learning method of each GenCo; (e) activation (or not) of a user-specified value for an ISO-imposed supply-offer price cap; (f) specification of simulation controls (e.g., stopping rules); and (f) customizable output reports in the form of both table and chart displays.

Finally, AMES includes three test cases that can be used as templates for new case studies. The first test case is a simple two-bus system. The second test case is a dynamic extension of a static 5-bus example by John Lally (2002, Section 6) now used extensively in ISO-NE/PJM training manuals. The third test case is a dynamic extension of the static IEEE 30-bus system presented in an appendix (Section D.4, pp. 477-478) of Shahidehpour et al. (2002).

It is hoped that the free open-source release of AMES will encourage the cumulative development of future versions with enhanced features critical for determining the performance of real-world restructured electricity markets. Some of these enhanced features have already been developed or are in progress for the next AMES release. Examples of such enhanced features include:

Software Downloads and Supporting Materials

Important Note: Explanations of the modifications incorporated into successive AMES versions released to date can be obtained at the Version Release History Site.

Eight-Zone ISO-NE Test System (developed using AMES Version 4.0)

AMES Market Package--Version 2.06 (Li, Sun, Tesfatsion, and Mooney)

Licensing Terms

Code and data for the Eight-Zone Test System Based on ISO-NE Data, developed using AMES(V4.0), is licensed by the copyright holders (Dheepak Krishnamurthy, Wanning Li, and Leigh Tesfatsion) as free open-source software under the terms of the Modified BSD License. A licensee of BSD-licensed software can: (i) use, copy and distribute the unmodified source or binary forms of the licensed program; and (ii) use, copy and distribute modified source or binary forms of the licensed program provided that all distributed copies are accompanied by the license and the names of the previous contributors are not used to promote any modified versions without their written consent.

AMES(V2.06) is licensed by the copyright holders (Hongyan Li, Junjie Sun, Leigh Tesfatsion, and Sean Mooney) as free open-source software under the terms of the GNU General Public License (GPL). Anyone who is interested is allowed to view, modify, and/or improve upon the code used to produce this package, but any software generated using all or part of this code must be released as free open-source software in turn. The GNU GPL can be viewed in its entirety here.

Publications and References


The work reported at this site has been supported in part by Grant NSF-0527460 awarded by the National Science Foundation, and by grants and contracts awarded by the ISU Electric Power Research Center, the Advanced Research Projects Agency-Energy (ARPA-E) of the Department of Energy, the Pacific Northwest National Laboratory, and Sandia National Laboratories.