Module 3 · Section 11 of 11
Mini-Project 3: Extreme Load Analysis (Gumbel Method)
Objective: Perform an extreme-value analysis on an annual peak-demand record using the Gumbel method. Compute the 25-year, 50-year, and 100-year return-period peaks.
Brief
You've been given 40 years of annual maximum demand records for a substation (synthetic, provided below). Fit a Gumbel distribution and report the 25-, 50-, and 100-year return-period peaks - the basis for choosing transformer capacity and planning reserve margin.
Starter Code
from scipy import stats
import numpy as np
# Synthetic 40-year annual peak demand record (MW), drawn from a Gumbel distribution
np.random.seed(99)
annual_peak_40yr = np.round(
stats.gumbel_r.rvs(loc=210, scale=32, size=40, random_state=99), 1
)
print("40-year annual peak demand record (MW):")
print(annual_peak_40yr)
# --- Your analysis (starter) ---
# 1) fit the distribution to the record
loc_fit, scale_fit = stats.gumbel_r.fit(annual_peak_40yr)
print(f"\nFitted Gumbel parameters: loc={loc_fit:.2f}, scale={scale_fit:.2f}")
# 2) for each return period T, invert the fitted CDF at probability (1 - 1/T)
results = {}
for T in [25, 50, 100]:
results[T] = round(stats.gumbel_r.ppf(1 - 1 / T, loc=loc_fit, scale=scale_fit), 1)
# 3) print as a report table ({:<20} left-align, {:>20.1f} right-align 1 dp)
print("\nReturn Period Peak Demand Summary")
print(f"{'Return Period (yr)':<20}{'Peak Demand (MW)':>20}")
for T, x in results.items():
print(f"{T:<20}{x:>20.1f}")
Deliverable Checklist
- Gumbel distribution correctly fit to the 40-year record (
scipy.stats.gumbel_r.fit) - 25-, 50-, and 100-year return-period peaks computed and clearly tabulated
- A plausibility check: confirm the peaks increase monotonically with return period
- A short written note (2-3 sentences) recommending a planning basis (e.g. size firm capacity to the 50-year peak, hold the 100-year peak as a contingency check), with justification
- Bonus: compare against a Normal-distribution fit and comment on the difference
Grading Rubric
| Criterion | Points |
|---|---|
| Correct Gumbel fit | 25 |
| Correct return-period calculations (25/50/100-yr) | 40 |
| Table clearly formatted | 15 |
| Written recommendation with justification | 20 |
| Total | 100 |
# Your Mini-Project 3 submission
33 / 63 sections · Course home · Join the coaching cohort