1<!-- Author: Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca -->2# 🤖 When AI Agents Become Economic Agents34**UQO Working Paper No. 25** — *An Agentic General Equilibrium Theory*56[-b31b1b?logo=latex&logoColor=white)](paper/main.pdf)7[](pyproject.toml)8[](data/raw/README.md)9[](scripts/)10[](https://uqo.ca)11[](mailto:simon-pierre.boucher@uqo.ca)1213> **TL;DR** — Delegating economic decisions to agents built on shared foundation models converts idiosyncratic decision14> errors (which average out) into common ones (which do not). Three nested models: (A) a task-based growth economy with a15> compute market whose decision problem is a linear-quadratic game with dispersed information — delegation = buying a16> correlated signal; closed-form loadings of capital, wages and returns on model noise in `D` (delegation share) and17> `1/M` (independent models); **the private value of delegation equals its social value identically under constant18> returns** (model noise is real but not an inefficiency), with closed-form wedges under three frictions; (B) an Aiyagari19> economy where the rich delegate first (Gini 0.68 → 0.70 from the decision channel alone; 0.58 broad vs 0.66 concentrated20> ownership of compute); (C) an agentic market lab with balance sheets, margin, defaults, three market designs and live21> local LLM agents under hard constraints: order-flow correlation 0.11 → 0.97 → 0.43 (private / one model / eight models),22> no-trade with a shared model, collateral amplification ×2.6 of a false shared signal in a call market (halved at a 50 %23> margin, eliminated by model diversity), none in a continuous auction.2425---2627## 📌 Status2829| Item | Value |30|---|---|31| Version | 1.0 (October 2026) — built 2026-10-27 |32| SSRN | not yet submitted |33| Journal | target: JME / JEDC / Journal of Financial Economics (computational) — not submitted |34| Code & data | fully reproducible from `scripts/` (see Quick start); raw data re-downloadable (`data/raw/README.md`), not redistributed |35| LLM results | live local inference (Qwen2.5-7B, Mistral-7B-v0.3, Llama-3.2-3B, 4-bit, `mlx_lm.server`); replayable from `results/llm_cache` |3637## 🎯 What this paper does3839Four roles of AI are kept apart: production technology, information service, delegated decision-maker, and40(hypothetical) independent principal. The paper asks what changes in general equilibrium when decisions are delegated41to agents that many principals share. The mechanism: a human forecast error is idiosyncratic and washes out; a42foundation model's error is common to all its users. Aggregate action4344```45X = Abar * theta + (D a_A / M) * sum_m eta_m , Var(model noise) = D^2 a_A^2 / (M tau_A)46```4748Propositions: linear equilibrium and D²/M loading (P2); private value and adoption threshold (P1); **efficiency49benchmark — wedge ≡ 0 under CRS** (P3, derived symbolically, property-tested); wedges under non-pecuniary effects,50uninsurable wage risk and collateral (P4, P7); compute-market crowding-out (P5); ownership (P6).5152## 🏆 Headline results5354| Object | Result |55|---|---|56| Savings channel (news about TFP) | κ₀ = −0.0015: no stake — *which* decision is delegated matters |57| Portfolio channel, first / last adopter | +3.3 % / +0.4 % of consumption per year (illustrative information parameters) |58| Wage-noise s.d. at full adoption | 7.7 % (one model) · 3.2 % (eight models) |59| Private − social value wedge (CRS) | 0 (max |wedge| 1.9e-7 on the grid) |60| Pigouvian tax / fee, 50 % hand-to-mouth | 4.5× (M = 1) · 0.8× (M = 8) |61| Compute crowding-out (H6) | sign confirmed, labour share +≤0.2 pp — negative result |62| Model B Gini: no AI / delegation only / full broad / full concentrated | 0.683 / 0.701 / 0.575 / 0.661 |63| Model C order-flow corr. (Walrasian): D=0 / D=1,M=1 / D=1,M=8 | 0.11 / 0.97 / 0.43 (20 seeds, CRN) |64| Stress, call market: unlevered / levered m=0.2 / m=0.5 / M=4 | −3.7 % / −9.8 % / −5.4 % / −2.4 % |65| LLM lab | see `results/llm_lab/summary.csv` and Table "LLM laboratory" in the paper |6667## 🗂 Repository layout6869```70agentic-general-equilibrium/71├── CLAUDE.md # research programme (as supplied)72├── configs/baseline.yaml73├── data/raw/ (README + MANIFEST.json; files not committed) data/processed/calibration_targets.csv74├── docs/ literature_matrix.md · references_verification.md · model_specification.md · research_blueprint.md75│ parameter_ledger.csv · research_log.md · limitations.md · referee_report.md76├── experiments/pre_registration.md77├── src/age/78│ ├── economy/tasks.py task-based production with compute79│ ├── equilibrium/lq_game.py LQ delegation game (closed forms + Monte Carlo)80│ ├── equilibrium/lq_map.py economy → game mapping, delegation share, compute market81│ ├── equilibrium/aiyagari.py Model B (numba VFI, owner class)82│ ├── banking/ledger.py balance sheets, margin, default, bail-in (invariants asserted)83│ ├── markets/designs.py Walrasian call · CDA · bilateral bargaining84│ ├── markets/simulation.py Model C period loop, metrics, stress85│ ├── agents/policies.py Bayesian MV · rules · LLM agent · action schema · clipping86│ ├── llm/client.py OpenAI-compatible client, cache, audit log, surrogate87│ └── analysis/plotstyle.py88├── scripts/ 00_lq_derivations.py · 01_download_data.py · 02_build_calibration_targets.py · 10_model_a.py89│ 20_model_b.py · 30_model_c.py · 35_llm_lab.py · 40_figures.py · 50_tables.py · llm_serve.sh · llm_tunnel.sh90├── tests/{unit,integration,property} (30 tests: zero wedge, Euler's theorem, ledger invariants, H2/H4 controls)91├── results/{model_a,model_b,model_c,llm_lab,figures,tables,llm_cache,llm_audit}92└── paper/ main.tex · sections/ · appendices/ · tables/ · figures/ · references.bib (144 verified) · main.pdf93```9495## 🚀 Quick start9697```bash98python3 -m pip install -e . && python3 -m pip install pytest hypothesis99python3 -m pytest tests -q # ~2 min100python3 -I scripts/01_download_data.py && python3 -I scripts/02_build_calibration_targets.py101python3 scripts/10_model_a.py # < 1 min102python3 scripts/20_model_b.py # ~8 min103python3 scripts/30_model_c.py # ~5 min (20 seeds)104scripts/llm_serve.sh start && scripts/llm_tunnel.sh # optional: local models on MacLustr nodes105python3 scripts/35_llm_lab.py --quick # replays from results/llm_cache if present106python3 scripts/40_figures.py && python3 scripts/50_tables.py107cd paper && make # latexmk → main.pdf108```109110## 🗃 Data111112Public macro/financial data fetched 2026-10-27 (FRED 23 series, Fed DFA, Fernald TFP, Shiller, SEC XBRL capex, EIA,113Epoch AI, Census BTOS); provenance, sha256 and the not-obtained list in `data/raw/README.md` and `data/raw/MANIFEST.json`.114The AI-specific behavioural parameters are illustrative and marked as such in `docs/parameter_ledger.csv`.115116## 🔬 Methodology1171181. Symbolic derivation of the delegation game (`scripts/00_lq_derivations.py`, sympy) → Propositions 1–4.1192. Steady state + linearised household (sequence space) and mean-variance mapping (`lq_map.py`).1203. Model B: VFI with discrete delegation choice, Howard acceleration, non-stochastic simulation, Brent on r.1214. Model C: discrete-event simulation with common random numbers, three designs, ledger invariants, stress tests.1225. LLM lab: schema-validated JSON actions, deterministic clipping, content-addressed cache, JSONL audit.1236. Tables/figures/macros generated from results only (`50_tables.py` → `paper/tables/numbers.tex`).124125## 🖼 Figures & tables inventory126127| Figure | Content |128|---|---|129| `fig_architecture`, `fig_timing` | ownership flows; within-period timing |130| `figA_private_value_noise`, `figA_threshold`, `figA_wedge`, `figA_compute_market`, `figA_ownership`, `figA_heatmap`, `figA_savings_news` | Model A |131| `figB_lorenz_delegation`, `figB_shares_concentration`, `figB_welfare_percentile` | Model B |132| `figC_herding`, `figC_volatility_volume`, `figC_designs`, `figC_stress` | Model C |133| `figL_llm_lab`, `figL_cost_frontier` | LLM laboratory |134135Tables (`paper/tables/*.tex`): notation, novelty matrix, ledger, targets, Model A baseline, Model B scenarios and136decomposition, Model C factorial and stress, LLM lab, computational cost; `numbers.tex` holds every number quoted in the text.137138## ⚠️ Limitations139140See `docs/limitations.md` and `docs/referee_report.md`: second-order benchmark; illustrative information parameters;141reduced-form decision-quality returns in Model B; stress test requires persistent dividends, preloaded leverage and142thin depth; small LLM lab with 4-bit 7B/3B models; no external causal identification.143144## 📝 Citation145146```bibtex147@techreport{boucher2026agentic,148 author = {Boucher, Simon-Pierre},149 title = {When AI Agents Become Economic Agents: An Agentic General Equilibrium Theory},150 institution = {Universit\'e du Qu\'ebec en Outaouais, D\'epartement des sciences administratives},151 type = {Working Paper},152 number = {25},153 year = {2026},154 month = {October}155}156```157158## 👤 Author & contact159160**Simon-Pierre Boucher** — Département des sciences administratives,161Université du Québec en Outaouais (UQO), Gatineau, QC.162📧 [simon-pierre.boucher@uqo.ca](mailto:simon-pierre.boucher@uqo.ca)163164## 🗒 Notes165166- Deviations from `Recherche-UQO/HARMONISATION.md`: `paper/appendices/` (plural, as the research programme requires) instead167 of `paper/appendix/`; `pyproject.toml` instead of `requirements.txt` (plus `requirements.lock.txt`).168- Research programme supplied by the author as `CLAUDE.md` (2026-10-27); gates 1–6 and the live TODO are in `docs/research_log.md`.169