Honglin Li
  • Research
  • Projects
  • Publications
  • Software
  • Teaching
  • Learn
  • Notes
  • CV
  • Journeys

The Plains Grid in a hard year

A 300 MW data center asks to connect at Prairie Town: choose what connects and what to build, test a peak-demand week and a low-wind winter week, check adequacy and show who pays

Capstone C2 of Energy Systems, Step by Step: on the Grid Room’s engine, decide how a 300 MW data center connects to the fictional Plains Grid, what to build, and who pays; check adequacy and hand in a two-page note.
  1. Learn
  2. C2
  • Modeler · L3
  • Capstone
  • 180 min guided · 45 min lab
  • After SB2 and M2 and A5 and A6 and A9
  • Completed
  1. 1Brief
  2. 2Plan
  3. 3Note
  4. 4Self-check
  5. 5Sources

The brief

A 300 MW data center asks to connect at Prairie Town. Recommend how much of it connects this year and what the Plains Grid should build so it stays adequate through a hard year, and say who pays.

  1. Hand in: a plan link and a two-page study note with its sensitivity chart and a paragraph from M2's notebook (below the note).
  2. From: the Grid Room's engine on the fictional Plains Grid, with 2025's hourly shapes, a peak-demand week and a low-wind winter week.
  3. Done when: every check under the note is in place (the brief's 0.1 loss-of-load days a year, the chart and the notebook paragraph among them), and the self-check reaches Proficient on every competence.

About 180 minutes: 70 to build and test plans, 70 to write the note, 40 to check it.

Plus M2's notebook, about 45 minutes: run every cell. Its practice section is optional, about 90 minutes more.

In the real world

A late grid connection costs the developer lost margin and carrying costs; ratepayers face utility carrying and stranding costs; society bears external costs.

The study keeps these present-value accounts separate.

Staged energization can recover a large share of that cost.

Ratepayer exposure depends strongly on large-load tariff design.

Approved excerpt of: Li et al. (2026), accepted paper, 2026 North American Power Symposium (NAPS); DOI pending.

The full case: case file CF7. This capstone asks the network and adequacy side of the same question.

Build and test your plan

Control Default plan Range
Large load connected this year 300 MW 150 to 300 MW, in steps of 150 MW
Share it can curtail (bid $500/MWh) 0 % 0 to 20 %, in steps of 20 %
New peakers at Prairie Town (50 MW each) 0 units 0 to 6 units, in steps of 2 units
Battery at Prairie Town (4 hours) 0 MW 0 to 100 MW, in steps of 100 MW
Town–Metro uprate 0 MW 0 to 300 MW, in steps of 300 MW
Operating reserve required 250 MW 150 to 250 MW, in steps of 100 MW
Share of new costs the large load pays 0 % 0 to 100 %, in steps of 10 %
New peaker cost 74 $/kW-year 56 to 111 $/kW-year, in steps of 1 $/kW-year
Battery cost 178 $/kW-year 134 to 267 $/kW-year, in steps of 1 $/kW-year
Uprate cost 15 $/kW-year 5 to 40 $/kW-year, in steps of 1 $/kW-year
  • Choose: with JavaScript on, a plan on the precomputed grid; its year shows at once.
  • Run: one day live, and the adequacy check, in your browser.
  • Copy: the plan link and your note.

Without JavaScript, the capstone becomes a reading exercise: write the note on the reference plan in the results below.

Results: the default plan (all 300 MW, nothing built), then the reference plan Value
Default: the plan 300 MW connected · 0 new peakers · 0 MW uprate · 0% of new costs paid by the large load
Default: production cost, a year (2025 dollars) $448.3M
Default: other customers against today's grid, a year +$68.6M (26-day estimate) · +$89.7M (every day of 2025)
Default: the large load pays, a year $82.6M (26-day estimate) · $85.3M (every day of 2025)
Default: hard weeks, unserved · Town's highest price (conditional on the commitment) 123 MWh · $5,000/MWh
Default: loss-of-load expectation (90% interval) 7.62 days a year (7.47 to 7.76)
Reference: the plan 300 MW connected · 6 new peakers · 300 MW uprate · 50% of new costs paid by the large load
Reference: production cost, a year (2025 dollars) $447.8M
Reference: other customers against today's grid, a year +$72.3M (26-day estimate) · +$89.9M (every day of 2025)
Reference: the large load pays, a year $91.5M (26-day estimate) · $93.0M (every day of 2025)
Reference: hard weeks, unserved · Town's highest price (conditional on the commitment) 0 MWh · $45/MWh
Reference: loss-of-load expectation (90% interval) 0.08 days a year (0.05 to 0.1003)

Precomputed with this engine on 5 November 2026; today's grid: 0.08 loss-of-load days a year. Without JavaScript, write the note on the reference plan from these numbers, naming the plan in words in place of a link.

  • Illustrative: the Plains Grid, its plants, links, outage rates and the uprate's cost; the large load is a load only, flat at its connected size.
  • Based on SPP: 2025's hourly shapes for the year and the hard weeks; 2024's as well for the adequacy check (EIA-930).
  • Costs: EIA's and NREL's values as yearly payments in 2025 dollars, within ranges you set (sources below).
  • Precomputed: the year of each of the 128 plans on the grid, solved with this engine on 5 November 2026, each day's status kept. One day at a time and the adequacy check run live.
  • The grid: half or all of the load, flexible or not, 0, 2, 4 or 6 new peakers, a battery or not, an uprate or not, a 150 or 250 MW reserve.
  • Reserve: one region-wide total; the model does not check whether it can reach a zone after a disturbance. The adequacy check counts plants and links, not this reserve.
Go deeperHow close 26 days come to every day of 2025 and of 2024

The year is 12 representative days (each month's most typical day, weighted by its days) plus the two hard weeks, day by day. The test runs four plans on every day of 2025, in order, and of 2024 as well:

Plan and year Production cost Town's average price ($/MWh) Other customers vs today Uplift CO₂ Unserved Town–Metro at its limit
Connect it, build nothing: estimate (26 days) $448.3M $32 +$68.6M $11.4M 6,236 kt 123 MWh 419 h
every day of 2025 $463.0M $36 +$89.7M $6.3M 6,310 kt 270 MWh 1,656 h
every day of 2024 $463.9M $39 +$104.4M $6.8M 6,361 kt 302 MWh 1,443 h
Peakers and an uprate: estimate (26 days) $447.8M $29 +$84.2M $11.1M 6,115 kt 0 MWh 0 h
every day of 2025 $460.5M $31 +$101.8M $4.9M 6,250 kt 0 MWh 5 h
every day of 2024 $461.7M $31 +$107.9M $4.6M 6,306 kt 0 MWh 7 h
Flexible load and a battery: estimate (26 days) $447.7M $29 +$78.9M $13.3M 6,218 kt 0 MWh 455 h
every day of 2025 $461.6M $28 +$88.7M $6.9M 6,286 kt 0 MWh 2,012 h
every day of 2024 $462.6M $29 +$97.9M $7.1M 6,337 kt 0 MWh 1,825 h
Stage it: 150 MW now: estimate (26 days) $412.6M $25 +$37.4M $10.2M 5,502 kt 0 MWh 1,425 h
every day of 2025 $431.3M $23 +$38.4M $6.9M 5,734 kt 0 MWh 2,576 h
every day of 2024 $430.9M $23 +$48.9M $5.9M 5,780 kt 0 MWh 2,386 h
  • Production cost and CO₂: within 5% of every day of 2025 and of 2024; Town's average price within 18%.
  • Other customers against today: every day of 2025 gives +$0.9M to +$21.1M on the estimate, and 2024's weather +$11.5M to +$35.8M. The page carries 2025's error.
  • Uplift: the estimate is 1.5 to 2.4 times the full years': a rough figure.
  • Hours at Town–Metro's limit: the estimate finds 0% to 60% of them. Read congestion and unserved load from the hard weeks and the adequacy check.

Write your two-page study note

  1. Title and plan link: the plan's link from the bench, and the date
  2. Recommendation: Three or four sentences: how much connects, what to build, and why.
  3. The plan: each choice, with its unit
  4. Results: each result, with its unit and boundary
  5. Assumptions: one sentence each
  6. Sensitivity: how one result moves when one input changes, and whether the plan was held fixed
  7. Who pays, and is it fair?: Two or three sentences: the large load, other customers, and the rule you chose.
  8. What could still go wrong: Two or three sentences: what the model leaves out that could change your answer.
  9. Three zones against one bus (M2's notebook): One paragraph, after running M2's notebook: what three zones and two links change against its one bus (prices that part, uplift, who is short).
  10. Limits of this analysis: what the model leaves out

Part of the hand-in: M2's notebook, about 45 minutes

The notebook of M2 rebuilds unit commitment on one bus in Python with SciPy and HiGHS, fixes the switches and re-prices, settles the day and checks the browser's numbers.

  1. Download the notebook (below) and open it in Google Colab or locally with Python 3, NumPy and SciPy 1.9 or later.
  2. Run every cell, about 45 minutes. Its practice section is optional, about 90 minutes more.
  3. Write the note's paragraph "Three zones against one bus": what three zones and two links change (prices that part, uplift, who is short).

M2 notebook (.ipynb)

Check your note

Weak note · Developing

Connect the data center and build some peakers [1]. The grid will be reliable [2] and prices will stay low [3], so nobody is hurt [4].

  1. Falls short: No sizes, no place, no units: the planners cannot check it.
  2. Falls short: Reliable by what measure, against what criterion, with what uncertainty?
  3. Falls short: Which prices, where, in which hours? Prices here are conditional on the commitment.
  4. Falls short: Who pays for the new plants and the link is the brief's question: name the parties and the amounts.

Strong note · Proficient

Recommendation: connect the full 300 MW this year with 6 new 50 MW peakers at Prairie Town and 300 MW more on Town–Metro [1]. Adequacy: 0.08 loss-of-load days a year (90% interval 0.05 to 0.1003: the point estimate meets the 0.1 criterion, the interval crosses it), against 0.08 for today's grid and 7.6 if the load connects with nothing built [2]. Sensitivity (chart attached): with these builds held fixed, 0.01 days at 0 MW, 0.02 days at 100 MW, 0.04 days at 200 MW, 0.08 days at 300 MW connected [3]. Hard weeks: 0 MWh unserved in the 14 days; Town's price peaks at $45/MWh, conditional on the commitment [4]. Who pays: on the 26-day estimate, the large load $91.5M a year, half the new costs directly, and other customers $72.3M a year more than today ($68.6M to $80.6M across the cost ranges); every day of 2025 gives $93.0M and $89.9M [5]. Emissions: 6,115 kt of CO₂ a year from the fuel burned [6]. Limits: two weather years, a transport model without power-flow physics, illustrative plants and costs; one study year, so it does not test a load that arrives late or never [7].

  1. Works: Sizes with units and places: a plan the planners can check and cost.
  2. Works: The criterion's measure, its Monte Carlo interval with the warning it carries, and two baselines.
  3. Works: One input moved, the plan held fixed: where the margin runs out.
  4. Works: The extreme periods kept, and the prices labelled for what they are.
  5. Works: Both parties on one boundary, a year, 2025 dollars, with the range the costs allow and the estimate checked against a full year.
  6. Works: Operating CO₂ on its own line, not mixed into the money.
  7. Works: What the study leaves out, so the planners do not over-read it.
Competence Developing Proficient (the bar for this note) Strong
Consistent accounting
Look for: Who pays and who benefits: the large load and other customers on one boundary, a year, 2025 dollars; CO₂ on its own line.
Costs and emissions on different boundaries. Cost and emissions on one boundary; emissions question named; who pays and who benefits named. Distributional and environmental side effects estimated with stated assumptions.
Uncertainty
Look for: The sensitivity chart attached: adequacy as the connected load grows, the plan held fixed; the Monte Carlo interval and the ledger's estimate error stated.
Single numbers. Uncertainties classified; scenario or global sensitivity analysis; results as ranges. Decision-relevant uncertainty identified and its value discussed.
Realism
Look for: What the study leaves out: power-flow physics, forecast errors, one weather year in two, illustrative plants and costs; the notebook paragraph on three zones against one bus.
Assumes announced projects exist. Evidence status of key inputs; a 'what the analysis leaves out' list. Realism checked with a practitioner or primary documents.
Communication
Look for: Two pages the planners can act on: the recommendation first, then the evidence and its limits.
Results without limits. A two-page note with the plan link and the sensitivity chart: the recommendation first, then the evidence (adequacy against 0.1 days a year, the hard weeks, who pays), the sensitivity, the notebook paragraph and the limits. A briefing a decision-maker could act on without misreading.
Go deeper · ResearcherFrom this capstone to your own study

The same plan, note and self-check grow into a research project: pick a question in the question studio, state what would change your mind, and test your plan on a weather year you did not use to choose it. Here 2024 is only a second-weather-year robustness check: the adequacy check already draws on it.

Numbers, sources and what’s next

Costs you set

Build Default Range you can set Basis
New peaker $74/kW-yr $56 to $111 EIA's industrial-frame combustion turbine: $1,158/kW to build and $7.18/kW a year of upkeep, paid over 30 years at 4% real. EIA, Assumptions to the Annual Energy Outlook 2026; NLR, 2025 Electricity Annual Technology Baseline
Battery (4 hours) $178/kW-yr $134 to $267 NREL's 2024 cost, $372/kW plus $241/kWh for 4 hours (2024 dollars, ×1.0263 to 2025 by BEA's GDP deflator), 4% of it a year of upkeep, paid over 15 years at 4% real. Cole, Ramasamy and Turan; U.S. Bureau of Economic Analysis, NIPA Table 1.1.9; NLR, 2025 Electricity Annual Technology Baseline
Town–Metro uprate $15/kW-yr $5 to $40 Illustrative: added transfer limit on Town–Metro (new conductors or a second circuit), as a yearly payment per kW of added limit

Inputs the engine uses

Input Value Source
Peak load: Ridge · Town · Metro 300 · 450 · 3,250 MW Illustrative; each hour follows SPP's 2025 demand shape (EIA-930, accessed 2 Nov 2026)
Wind built: Ridge · Town · Metro 2,000 · 150 · 300 MW Illustrative
Solar built: Ridge · Town · Metro 0 · 200 · 600 MW Illustrative
Output per MW: wind · solar 33.8% · 24.0% a year SPP's 2025 shapes scaled to EIA's 2025 monthly capacity factors: EPM Table 6.07.B, issue of 23 Oct 2026
Link limits: Ridge–Town · Town–Metro 900 · 400 MW Illustrative
Fuel: gas · coal $3.85 · $2.42/MMBtu Average cost to the electric power industry, 2025: EIA, Electric Power Annual, Table 7.4 · final 2025 data; checked 5 Nov 2026. One MMBtu is a million British thermal units of fuel heat
Heat rates 6.4 to 11.2 MMBtu/MWh Illustrative, around EIA's 2025 averages (coal 10.65, gas 7.78 MMBtu/MWh): Electric Power Annual, Table 8.1 · 2025 data; checked 5 Nov 2026
CO₂: gas · subbituminous coal 52.91 · 97.13 kg/MMBtu EIA, Carbon Dioxide Emissions Coefficients · released 18 Sep 2024; checked 5 Nov 2026
Unserved load · reserve short $5,000 · $1,000/MWh Illustrative penalties in the objective, not costs anyone pays
The plantsEach unit group's data (illustrative)
Unit group Zone Units Minimum output Running cost at $3.85 gas No-load cost Start-up Minimum up · down Reserve per unit
Town combined cycle Prairie Town 1 × 200 MW 80 MW $30.72/MWh $308/h $6,000 4 · 4 h 60 MW
Town peakers Prairie Town 3 × 50 MW none $49.12/MWh none none none 50 MW
Metro coal units Metro 2 × 500 MW 200 MW $29.67/MWh $726/h $25,000 12 · 8 h 50 MW
Metro combined cycles Metro 3 × 667 MW 267 MW $27.14/MWh $1,028/h $9,000 4 · 4 h 133 MW
Metro gas steam unit Metro 1 × 300 MW 100 MW $42.50/MWh $770/h $7,000 6 · 6 h 50 MW
Metro peakers Metro 14 × 80 MW none $45.43/MWh none none none 80 MW

Running cost = heat rate × fuel price + variable upkeep; no-load cost = the heat burned each hour a unit is on × fuel price. Peakers start within minutes and have no minimum output, so the model gives them no on/off decision.

Keep going

Back to the course map

Related lab: M2's notebook: unit commitment and conditional prices in SciPy and HiGHS, about 45 minutes.

Sources and further reading

  • The Grid Room lists the engine's inputs with their sources and dates.
  • EIA. Assumptions to the Annual Energy Outlook 2026: Electricity Market Module, Table 3 (April 2026).
  • Cole, Ramasamy and Turan (2025). Cost Projections for Utility-Scale Battery Storage: 2025 Update. NREL/TP-6A40-93281 (its 2024 costs only).
  • U.S. Bureau of Economic Analysis. NIPA Table 1.1.9: Implicit Price Deflators for Gross Domestic Product, line 1, annual (2017 = 100): 2024 125.587, 2025 128.893. Last revised 29 October 2026; accessed 5 November 2026. It converts the battery's 2024 costs to 2025 dollars.
  • PJM (2026). Manual 20A: Resource Adequacy Analysis (PDF), Rev. 3, effective 24 June 2026, section 1.3: the criterion of one day in ten years, 0.1 days a year, that the brief adopts.
  • Li et al. (2026). Accepted paper on the cost of delayed grid energization for large loads, 2026 North American Power Symposium (NAPS), presented October 2026; DOI pending.
  • EIA. Hourly Electric Grid Monitor (Form EIA-930): the Southwest Power Pool's 2025 and 2024 shapes.

Spotted an error, or stuck? Write to hlli@ksu.edu. Corrections are made in place and dated here.

Text licensed CC BY 4.0, code MIT: teachers and students may reuse and adapt it, with credit to Honglin Li.

© 2026 Honglin Li · Kansas State University · hlli@ksu.edu

 

Last updated: November 2026 · Built with Quarto