assembly-economics/models/Calibration.md
tegwick 25f91c73c7 ASSEMBLY-WP-0013-T01–T05: calibration to measured data; calibrated readings (R2 revised, R4 new); BR-006/007; gsa.py --anchor
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 14913@bnt-lap001
Assistant-Session: add7ef69-b901-4756-9a67-34cf1125d96f
2026-10-13 16:16:05 +02:00

7.1 KiB
Raw Blame History

Calibration of GADM-0.4 to measured data

Status: v0.1 (2026-10-13), ASSEMBLY-WP-0013. Calibrates starting states for US, EU, DE and AR. Argentina has no measured adoption growth, so it is calibrated only on priors. Most state targets are literature priors that the next review must verify against checkpoint data.

Reproduce:

cd simulations/gadm02
python3 -B calibrate_data.py        # results/calibration.md, results/calibrated_starts.json
python3 -B calibrated_readings.py   # results/calibrated_readings.md

1. Targets and observation operators (T01)

simulations/gadm02/calibration_targets.json holds, per jurisdiction and model quantity, a target range in normalized model units, its basis (measured at checkpoint 0, or prior from literature up to 2025) and the observation operator: how the raw indicator maps onto the model quantity.

Model quantity Operator Basis
K_Ω level firm-use share (L1, L2) × usage intensity; a few percent of work hours AI-assisted prior (level), measured (firm share)
K_Ω one-year ratio ratio of the firm-use share over the last year measured: US 1.46, EU 1.48, DE 1.31
Pd, Pi, Pmem, Plin, Pm leading search share; top-3 cloud share; OS/app-store duopoly; top-3 frontier developers; digital-sector concentration prior
B labour share plus broad transfers; trend from the F1 index prior (level), measured (US trend)
A self-directed leisure share (WP-0008 grounding) prior
E planetary-boundary position prior
Σ share more concerned than excited (Pew), Eurobarometer prior

Two operators carry most of the uncertainty. K_Ω level: firm use is not task coverage, so the level is a wide range (0.05–0.20 for the US) and the measured growth does the work. Pmem: whether OS and app-store control is the "membrane" of GADM is a modeling judgment. The range is wide (0.40–0.85).

2. Routine (T02)

calibrate_data.py, standard library only:

  1. Set stocks with targets (power channels, E, Σ) and fit the parameters that put them at rest: channel counters (gadm04.calibrate), ecological regeneration ereg (dE = 0), base labour share wL0 (B on target). The nearest archetype's levers are applied, except permissiveness.
  2. Relax wealth, cohort attention and cohort agency to equilibrium.
  3. Adoption: scale B2's adoption parameters by k. For each k, find the model time t* where K_Ω's one-year ratio equals the observed ratio. Choose k so that K_Ω(t*) is closest to the level target (log grid, k ∈ [0.25, 4]).
  4. The calibrated start is the full state at t* with the fitted parameters.

Identifiability. The channel levels, E, Σ and B are set, not tested. They fit by construction, and only their drift until t* is informative. The adoption block is the only real fit: two measured or semi-measured quantities (level, growth) against two free values (k, t*). Everything else in the model (H, X, Q, N, S, F, G) remains at uninformed defaults.

3. Results (T03)

Jurisdiction Levers k (× B2 speed) t* K_Ω(t*) wL0 out of range
US J3 1.83 1.2 y 0.120 0.530 A −1.1 (attention extraction of J3), B trend −1.4 (falls slightly faster than measured)
EU J1 1.41 0.9 y 0.093 0.637 none (A at the upper edge)
DE J1 1.30 1.5 y 0.112 0.637 none
AR J2 — — — 0.387 no adoption data

Data verdict on the band anchors. Aligned by growth alone, with no k:

  • B1 cannot produce the observed growth at all, in any of the three jurisdictions.
  • B2 lands slightly low (z −0.5 to −0.9).
  • B3 fits (z −0.1 to +1.1).
  • B4 overshoots the level (z +1.4 US, +3.1 EU, +4.2 DE).

The present is between B2 and B3. B1 is ruled out as a description of today, and B4 as a description of today's level. B4 can still describe the future if self-enhancement starts later.

4. Readings from the calibrated start (T04)

calibrated_readings.py applies each archetype's levers from the calibrated present, with the legitimacy loop off and on.

Reading (uncalibrated source) US EU AR Status
R1 rights-first levers give the best VFAC (§ 4.3 of AdoptionBand) holds holds holds survives
R2 the legitimacy loop damps adoption (§ 3.3) fails under J1 holds fails under J1 revised
R3 lagging alone costs early output (§ 4.3) −0.080 Ȳ −0.078 −0.068 survives, stronger
R4 the current regime breaks the domination floor by t 100 yes (J3) yes (J1) yes (J2) new
  1. R2 revised: the loop's sign depends on the regime. Under rights-first levers, domination falls, perceived benefit rises, and sentiment accelerates adoption (US: K_Ω peak 0.21 → 0.26). Under extractive regimes it brakes adoption as before. Damping is not a property of the loop. It is a property of the loop in a regime where adoption raises domination.
  2. R4: today's domination is close to the floor. Calibrated to observed concentration, aggregate P starts at 0.59–0.65 against a floor of 0.70. Under the current regime, continued adoption pushes it over the floor in all three jurisdictions. Uncalibrated GADM started at P = 0.37 and understated this.
  3. The EU has no lever headroom left within J1. The channel counters are calibrated so that the current regime is at rest. Lever effects are therefore relative to the current regime. The US gains by moving from J3 to J1 levers (P 0.64 → 0.54). The EU is already at J1 settings, and its P rises to 0.77. Within this closed-economy model, the EU's domination comes from levels set abroad (lineages, platforms), which its levers do not reach. This is the strongest argument yet for WP-0011.
  4. Readings that still need re-running: the GSA per anchor (WP-0009-T05) was computed around the uncalibrated anchors. The prediction ranges (P-2026-001 … 003) used growth alignment without k. They are consistent with § 3, because B2–B3 bracket the fitted speed.

5. Re-calibration at checkpoints (T05)

When a checkpoint brings new data:

  1. Replace prior targets with measured ones where an indicator now has data, and record the change (date, source) in the JSON op text.
  2. Re-run calibrate_data.py and calibrated_readings.py. Commit the results with the checkpoint.
  3. Compare k, t* and the anchor verdict with the previous calibration. A change of verdict (for example B3 → B4 fitting best) is a flip candidate for WP-0012.
  4. Predictions are not edited. New predictions from the re-calibrated start are added as new register entries.

6. Limitations

  • Most state targets are priors, not measurements. Verifying them is WP-0013-T06.
  • One adoption speed parameter (k) for four parameters (aO, ell, oseed, selfenh). k does not separate investment from learning.
  • The channel-counter calibration makes the current regime a rest point by construction. A jurisdiction that is in fact far from rest (for example concentration still rising for reasons outside the model) is misread as stable.
  • Closed economy (WP-0011).