/ › expansion › 05-simulator-agi-horizon

Stream 05 — Simulator + AGI Horizon

Make every quantitative claim in the blueprint a distribution with provenance, and every AGI-horizon claim a triangulated synthesis with falsifiable triggers. v0 ships a working Monte Carlo on the Paraguay-Itaipú Anchor 0 Fase 1 financial structure plus a 13-source posterior over G/M/B scenario probabilities.

Why this is load-bearing

Decisions taken

#DecisionRationale (short)
D1Engine in Python (NumPy + SciPy)Codebase is Python; vectorization meets perf targets; portable to Pyodide
D2Storage = parquet + SQLiteParquet for run detail; SQLite for queryable metadata, no infra
D3Run hash = SHA256(manifest ‖ commit ‖ engine_semver)Audit-grade reproducibility
D4Default outputs are P10/P50/P90 + bandsNo point-estimate publication without uncertainty
D5LLM narratives always downstream of a numerical runHallucination containment via tool-use scaffold + numeric audit
D6AGI G/M/B = posterior over 13 priorsReplaces single-anchor [ASSUMPTION] with documented Bayesian aggregation
D7Validator + red-team gate before audience releaseExisting project guardrail; binding
D8Depth-first on Anchor 0 Fase 1 firstMirrors blueprint's depth-first strategic posture
D9No paid data sources for v0Truth-infra: every cell auditable from open sources
D10Engine semver + changelogReproducibility across blueprint revisions

Performance — Anchor 0 prototype, observed

WorkloadTargetObserved
1K Monte Carlo, single core< 2 s0.08 s
10K Monte Carlo + PRCC tornado on 3 KPIs< 60 s0.46 s
Reproducibility (same manifest → same run hash)byte-identicalverified, two consecutive runs

Anchor 0 Fase 1 — observed distributions (10K runs, manifest v0)

KPIP10P50P90Mean
capex_total (USD M)2,1612,7273,5532,805
capital_committed (USD M)1,7702,2362,9312,305
K.financing_gap (USD M)363484657500
K.dscr.anchor0 (year-5)2.064.267.254.51
K.npv.anchor0 (USD M @ 8% real)−1,857−835+56−874
energy_cost (USD/MWh)36.040.846.341.0
p_anexoC_by_cod0.370.410.450.41
K.kpi_attainment_2032 (P meet)2.5%

Sensitivity — top 5 drivers per KPI (PRCC, 10K runs)

KPITop driver#2#3#4#5
K.financing_gap REG.friction_multiplier (+0.93) FM.private_match.realization (−0.90) CX.HPC.greenfield (+0.79) CX.cable.landing (+0.29) FM.multilateral.share (−0.24)
K.dscr.anchor0 HS.offtake.tariff (+0.95) REG.friction_multiplier (−0.90) CX.HPC.greenfield (−0.72) FM.private_match.realization (−0.33) FM.bono_sur.share (−0.31)
K.npv.anchor0 HS.offtake.tariff (+0.93) REG.friction_multiplier (−0.92) CX.HPC.greenfield (−0.75) CX.cable.landing (−0.26) CX.energy.subestation (−0.15)

AGI horizon — 13-source weighted posterior

Each source provides a probability distribution over AGI year. Mapped to G (post-2032), M (2029–2032), B (pre-2029) buckets and aggregated with weights normalized over credibility × recency × empirical anchor.

SourceP(G)P(M)P(B)Weight
Aschenbrenner SA + LP0.100.400.500.13
Davidson / Shulman (Forethought)0.300.450.250.16
Cotra (bio-anchors)0.550.300.150.11
Metaculus (median nov 2033)0.400.450.150.15
Manifold0.350.450.200.11
AI Impacts (researcher panel)0.650.250.100.14
Epoch AI capability0.300.500.200.17
Anthropic RSP v2.00.250.500.250.14
OpenAI PF0.200.500.300.10
GDM FSF0.300.500.200.11
METR Time Horizon 1.10.250.500.250.20
Apollo Research evals0.200.550.250.13
MIRI shutdown posture0.150.400.450.06
Posterior (normalized)0.310.450.24

Comparison to chapter 11 default [ASSUMPTION]: G shifts 35 → 31%, B shifts 20 → 24%, M unchanged. Proposed blueprint update in proposed-blueprint-update.md.

Empirical re-scenarization triggers (replace [ASSUMPTION] in chapter 11)

TriggerSourceThreshold
METR Time Horizon @50%METR monthly≥48 h amber, ≥168 h red — recalibrate
Epoch SWE-Bench-VerifiedEpoch quarterly≥85% amber, ≥95% red — recalibrate
Hyperscaler annual capexSEC 10-Q aggregation> USD 1 trn — recalibrate
Cluster individual sizeHyperscaler announcements> 50 GW — recalibrate
USG / EU export weightsFederal register / OJEUany restriction by jurisdiction — recalibrate
Frontier-lab nationalizationNews + filingsany — recalibrate
Open weights = SOTA gapBenchmarks< 6 months — recalibrate
New Aschenbrenner / Shulman public updatesituational-awareness.ai / podcastsany — recalibrate

Sector cusp-curve — where each sector sits on the AGI cusp

SectorPre-cusp throughCrossing inPost-cusp fromLATAM leverage
Energy (renewable + grid)20262026–20302030+High — pillar 12 substrate
Governance (admin AI)20272028–20322032+High — SAT, justicia, identidad
Agriculture (precision + biotech)20282029–20322032+High — Cerrado, Pampas, Andean
EV20272027–20302030+High — litio + assembly
Biotech (drug discovery)20272027–20312031+Moderate — clinical-trial corridor
Healthcare delivery20282029–20332033+Moderate — telesalud + bilingual
Robotics (humanoid)20282029–20322032+Moderate-low — minerals + Mexico assembly
Education20282029–20332033+Low — mostly globally fungible
Defense20262026–20292029+Low — non-alignment IS leverage
Finance (lending / payments)20262026–20292029+Moderate — pyme corridor

Handoff — what consumer streams get

StreamReads fromBrowser-runnable?
Stream 3 — Atlas {run_hash}.parquet (GW × scenario × year), .sankey.json (V8), .country.json (V9) pre-rendered
Stream 4 — Pulse {run_hash}.json summary + 6 trigger-threshold YAML rules pre-rendered indicators; client-side interactivity for single-run
Stream 6 — Onboarding LLM-as-simulator narratives (validator + red-team-gated) + per-persona V1/V3/V4/V9 charts welcome narrative pre-rendered; "what-if" client-side via Pyodide (5–8 knobs)
Stream 1 / 9 — Audience surfaces Tier-by-view matrix (citizen / minister / capital allocator / multilateral / researcher / NGO) matrix in 99-handoff.md §4

Documents

Reproduce locally

cd state/expansion/05-simulator-agi-horizon/05-runtime-prototype
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
python simulator.py validate --manifest manifest_anchor0_v0.json
python simulator.py run --manifest manifest_anchor0_v0.json --n-runs 10000 --out outputs/

# Output JSON lands at outputs/db114bb3…json with the
# distributions in the table above. Re-running yields the
# same run_hash (timestamps excluded).