Table of Contents:
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 open source release of AMES is intended to encourage the cumulative development of this test bed by others (as well as ourselves) in directions appropriate for their specific needs. It 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 V2.06 has been constructed (in Java) to have an extensible modular architecture and an easily-navigated graphical user interface (GUI). Also, AMES V4.0 (Java/Python) has been released at its own AMES V4.0 Homepage. As detailed at this homepage, AMES V4.0 modifies and extends AMES V2.06 by the inclusion of additional solvers permitting the implementation of general SCUC/SCED optimization formulations.
Important Note 1: Explanations of the modifications incorporated into successive AMES versions released to date can be obtained at the Version Release History Site.
Important Note 2: International users should be aware that AMES uses U.S. formatting (points) for decimal separators, not commas; e.g., 30000.00 rather than 30000,00. Use of commas instead of points for decimals will result in incorrect outcomes and possibly also in error messages indicating "out of bound" numbers. As noted in Step 14 in the Basic AMES Instructions Manual (pdf,632KB), to avoid this problem some international users have reported they found it necessary to include one of the following instructions in the "VMOptions" tab: “-Duser.language=en –Duser.region=US” (Win OS); or “-Duser.language=en” (Mac OS).
IMPORTANT NOTE: JAR (Java archive) files for the following support software for AMES (V2.06) are included in the library directory as part of the AMES download and do not need to be separately downloaded in order to compile and run AMES (V2.06).
IMPORTANT NOTE: Similar set-up instructions apply for other Java IDEs such as Eclipse.
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 AMES (V2.06) 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 (V2.06) 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 (V2.06) 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 (V2.06) 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: