Models / PyPSA-USA MISO

Production-cost back-cast of the Midcontinent ISO market: full-year 2025 3-hourly economic dispatch of the real fixed fleet (named EIA-860 units at their true sites), MOSEK-solved, validated per fuel against EIA-930 actuals.

License: MIT
Repository
licenseMITproblemLP

Overview

A production-cost (historical back-cast) model of the Midcontinent ISO market for the full year 2025 at 3-hourly resolution. The fleet is fixed to the historical mix of real, named generating units, and the model dispatches them economically to meet observed demand — answering "given the plants that actually existed, how would the system have been operated, and at what locational prices?"

Carved from the Eastern Interconnection by ReEDS balancing-authority zone, spanning the central US from the Upper Midwest to the Gulf.

Spatial resolution: 32 ReEDS zones. Built on the open-source PyPSA-USA toolchain.

How it's built

  • Fleet — every operable generating unit from the latest EIA record (EIA-860 2024 final plus EIA-860M 2025 monthlies, so 2025 build-out is included), placed at its true coordinates with named identity, scoped to this market's balancing authority.
  • Renewables — wind and solar capacity factors from ERA5 reanalysis (2025 weather), mapped to each bus.
  • Demand — hourly EIA-930 / GridEmissions actuals for the market's balancing authority.
  • Dispatch — an economic-dispatch LP (coal on a must-run floor; no unit commitment yet) over the full year, fixed transmission, load-shedding priced at value-of-lost-load, solved with MOSEK.

Validation

This page checks the model's output against independent observations — see the tables and charts above:

  • Generation by technology — modelled vs EIA-930 / GridEmissions actuals, per fuel, with daily correlation.
  • Generation mix — each technology's share of total generation, model vs observed. This is footprint-invariant, so it stays fair even where the model's carve boundary differs from the EIA-930 balancing-authority footprint.
  • CO₂ emissions — annual generation CO₂ vs an EIA-930-derived estimate; a single headline trust number.

Renewable generation tracks the observed daily shape well (high day-to-day correlation for wind and solar). Wholesale-price validation against ISO day-ahead LMP is deferred to a future calibrated version — the energy-only economic dispatch clears at marginal fuel cost and structurally underprices vs day-ahead LMP (the price metrics are computed and retained in the backend). See Known limitations and the project's validation audit for the full cross-market detail.

Known limitations

This is a research-grade back-cast; treat it as indicative, not a settlement-grade reproduction.

  • Fuel-cost vintage, not fleet. The generator fleet is latest-operable and already includes 2025 build-out (via EIA-860M); what is held at 2024 is unit fuel costs and heat rates (PUDL has no 2025 EIA-923 yet). Any capacity commissioned after the EIA data cutoff is not captured, so the newest late-2025 renewables can read slightly low. Refreshes when EIA-860/923 2025 final lands (~Oct 2026).
  • Coal runs on a must-run floor — each coal unit carries a minimum-load constraint reflecting real baseload operation, so coal now tracks EIA-930 (interim; linearised unit commitment planned).
  • Wholesale prices are not yet validated on the page. The energy-only merit-order LP clears at marginal generation cost (≈ gas cost) and omits scarcity/reserve pricing, time-varying fuel, and fine-grained congestion, so modelled prices sit well below ISO day-ahead LMP. Price validation is deferred to a future calibrated version; the metrics are computed and retained in the backend.

Data & attribution

EIA-860 / EIA-923 / EIA-930 (US Energy Information Administration, public domain), ERA5 reanalysis (Copernicus / ECMWF), renewable profiles via NREL GODEEEP, network and methodology from PyPSA-USA (MIT), solved with MOSEK.

Downloads

  • Solved network (.nc) — the full PyPSA network with dispatch and prices (free, sign-in).
  • Convexity database (.db) — re-solvable model with named units pinned at their sites (licence-gated).