# πŸ€– When AI Agents Become Economic Agents **UQO Working Paper No. 25** β€” *An Agentic General Equilibrium Theory* [![Paper](https://img.shields.io/badge/paper-PDF%20(69%20p.)-b31b1b?logo=latex&logoColor=white)](paper/main.pdf) [![Python](https://img.shields.io/badge/python-3.11%2B-3776AB?logo=python&logoColor=white)](pyproject.toml) [![Data](https://img.shields.io/badge/data-FRED%20Β·%20DFA%20Β·%20Fernald%20Β·%20Shiller%20Β·%20SEC%20Β·%20EIA-4051b5)](data/raw/README.md) [![Reproducible](https://img.shields.io/badge/reproducible-end--to--end%20pipeline-2e7d32)](scripts/) [![Institution](https://img.shields.io/badge/UQO-D%C3%A9pt.%20des%20sciences%20administratives-16365c)](https://uqo.ca) [![Author](https://img.shields.io/badge/author-Simon--Pierre%20Boucher-16365c)](mailto:simon-pierre.boucher@uqo.ca) > **TL;DR** β€” Delegating economic decisions to agents built on shared foundation models converts idiosyncratic decision > errors (which average out) into common ones (which do not). Three nested models: (A) a task-based growth economy with a > compute market whose decision problem is a linear-quadratic game with dispersed information β€” delegation = buying a > correlated signal; closed-form loadings of capital, wages and returns on model noise in `D` (delegation share) and > `1/M` (independent models); **the private value of delegation equals its social value identically under constant > returns** (model noise is real but not an inefficiency), with closed-form wedges under three frictions; (B) an Aiyagari > economy where the rich delegate first (Gini 0.68 β†’ 0.70 from the decision channel alone; 0.58 broad vs 0.66 concentrated > ownership of compute); (C) an agentic market lab with balance sheets, margin, defaults, three market designs and live > local LLM agents under hard constraints: order-flow correlation 0.11 β†’ 0.97 β†’ 0.43 (private / one model / eight models), > no-trade with a shared model, collateral amplification Γ—2.6 of a false shared signal in a call market (halved at a 50 % > margin, eliminated by model diversity), none in a continuous auction. --- ## πŸ“Œ Status | Item | Value | |---|---| | Version | 1.0 (October 2026) β€” built 2026-10-27 | | SSRN | not yet submitted | | Journal | target: JME / JEDC / Journal of Financial Economics (computational) β€” not submitted | | Code & data | fully reproducible from `scripts/` (see Quick start); raw data re-downloadable (`data/raw/README.md`), not redistributed | | 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` | ## 🎯 What this paper does Four roles of AI are kept apart: production technology, information service, delegated decision-maker, and (hypothetical) independent principal. The paper asks what changes in general equilibrium when decisions are delegated to agents that many principals share. The mechanism: a human forecast error is idiosyncratic and washes out; a foundation model's error is common to all its users. Aggregate action ``` X = Abar * theta + (D a_A / M) * sum_m eta_m , Var(model noise) = D^2 a_A^2 / (M tau_A) ``` Propositions: linear equilibrium and DΒ²/M loading (P2); private value and adoption threshold (P1); **efficiency benchmark β€” wedge ≑ 0 under CRS** (P3, derived symbolically, property-tested); wedges under non-pecuniary effects, uninsurable wage risk and collateral (P4, P7); compute-market crowding-out (P5); ownership (P6). ## πŸ† Headline results | Object | Result | |---|---| | Savings channel (news about TFP) | ΞΊβ‚€ = βˆ’0.0015: no stake β€” *which* decision is delegated matters | | Portfolio channel, first / last adopter | +3.3 % / +0.4 % of consumption per year (illustrative information parameters) | | Wage-noise s.d. at full adoption | 7.7 % (one model) Β· 3.2 % (eight models) | | Private βˆ’ social value wedge (CRS) | 0 (max |wedge| 1.9e-7 on the grid) | | Pigouvian tax / fee, 50 % hand-to-mouth | 4.5Γ— (M = 1) Β· 0.8Γ— (M = 8) | | Compute crowding-out (H6) | sign confirmed, labour share +≀0.2 pp β€” negative result | | Model B Gini: no AI / delegation only / full broad / full concentrated | 0.683 / 0.701 / 0.575 / 0.661 | | 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) | | Stress, call market: unlevered / levered m=0.2 / m=0.5 / M=4 | βˆ’3.7 % / βˆ’9.8 % / βˆ’5.4 % / βˆ’2.4 % | | LLM lab | see `results/llm_lab/summary.csv` and Table "LLM laboratory" in the paper | ## πŸ—‚ Repository layout ``` agentic-general-equilibrium/ β”œβ”€β”€ CLAUDE.md # research programme (as supplied) β”œβ”€β”€ configs/baseline.yaml β”œβ”€β”€ data/raw/ (README + MANIFEST.json; files not committed) data/processed/calibration_targets.csv β”œβ”€β”€ docs/ literature_matrix.md Β· references_verification.md Β· model_specification.md Β· research_blueprint.md β”‚ parameter_ledger.csv Β· research_log.md Β· limitations.md Β· referee_report.md β”œβ”€β”€ experiments/pre_registration.md β”œβ”€β”€ src/age/ β”‚ β”œβ”€β”€ economy/tasks.py task-based production with compute β”‚ β”œβ”€β”€ equilibrium/lq_game.py LQ delegation game (closed forms + Monte Carlo) β”‚ β”œβ”€β”€ equilibrium/lq_map.py economy β†’ game mapping, delegation share, compute market β”‚ β”œβ”€β”€ equilibrium/aiyagari.py Model B (numba VFI, owner class) β”‚ β”œβ”€β”€ banking/ledger.py balance sheets, margin, default, bail-in (invariants asserted) β”‚ β”œβ”€β”€ markets/designs.py Walrasian call Β· CDA Β· bilateral bargaining β”‚ β”œβ”€β”€ markets/simulation.py Model C period loop, metrics, stress β”‚ β”œβ”€β”€ agents/policies.py Bayesian MV Β· rules Β· LLM agent Β· action schema Β· clipping β”‚ β”œβ”€β”€ llm/client.py OpenAI-compatible client, cache, audit log, surrogate β”‚ └── analysis/plotstyle.py β”œβ”€β”€ scripts/ 00_lq_derivations.py Β· 01_download_data.py Β· 02_build_calibration_targets.py Β· 10_model_a.py β”‚ 20_model_b.py Β· 30_model_c.py Β· 35_llm_lab.py Β· 40_figures.py Β· 50_tables.py Β· llm_serve.sh Β· llm_tunnel.sh β”œβ”€β”€ tests/{unit,integration,property} (30 tests: zero wedge, Euler's theorem, ledger invariants, H2/H4 controls) β”œβ”€β”€ results/{model_a,model_b,model_c,llm_lab,figures,tables,llm_cache,llm_audit} └── paper/ main.tex Β· sections/ Β· appendices/ Β· tables/ Β· figures/ Β· references.bib (144 verified) Β· main.pdf ``` ## πŸš€ Quick start ```bash python3 -m pip install -e . && python3 -m pip install pytest hypothesis python3 -m pytest tests -q # ~2 min python3 -I scripts/01_download_data.py && python3 -I scripts/02_build_calibration_targets.py python3 scripts/10_model_a.py # < 1 min python3 scripts/20_model_b.py # ~8 min python3 scripts/30_model_c.py # ~5 min (20 seeds) scripts/llm_serve.sh start && scripts/llm_tunnel.sh # optional: local models on MacLustr nodes python3 scripts/35_llm_lab.py --quick # replays from results/llm_cache if present python3 scripts/40_figures.py && python3 scripts/50_tables.py cd paper && make # latexmk β†’ main.pdf ``` ## πŸ—ƒ Data Public macro/financial data fetched 2026-10-27 (FRED 23 series, Fed DFA, Fernald TFP, Shiller, SEC XBRL capex, EIA, Epoch AI, Census BTOS); provenance, sha256 and the not-obtained list in `data/raw/README.md` and `data/raw/MANIFEST.json`. The AI-specific behavioural parameters are illustrative and marked as such in `docs/parameter_ledger.csv`. ## πŸ”¬ Methodology 1. Symbolic derivation of the delegation game (`scripts/00_lq_derivations.py`, sympy) β†’ Propositions 1–4. 2. Steady state + linearised household (sequence space) and mean-variance mapping (`lq_map.py`). 3. Model B: VFI with discrete delegation choice, Howard acceleration, non-stochastic simulation, Brent on r. 4. Model C: discrete-event simulation with common random numbers, three designs, ledger invariants, stress tests. 5. LLM lab: schema-validated JSON actions, deterministic clipping, content-addressed cache, JSONL audit. 6. Tables/figures/macros generated from results only (`50_tables.py` β†’ `paper/tables/numbers.tex`). ## πŸ–Ό Figures & tables inventory | Figure | Content | |---|---| | `fig_architecture`, `fig_timing` | ownership flows; within-period timing | | `figA_private_value_noise`, `figA_threshold`, `figA_wedge`, `figA_compute_market`, `figA_ownership`, `figA_heatmap`, `figA_savings_news` | Model A | | `figB_lorenz_delegation`, `figB_shares_concentration`, `figB_welfare_percentile` | Model B | | `figC_herding`, `figC_volatility_volume`, `figC_designs`, `figC_stress` | Model C | | `figL_llm_lab`, `figL_cost_frontier` | LLM laboratory | Tables (`paper/tables/*.tex`): notation, novelty matrix, ledger, targets, Model A baseline, Model B scenarios and decomposition, Model C factorial and stress, LLM lab, computational cost; `numbers.tex` holds every number quoted in the text. ## ⚠️ Limitations See `docs/limitations.md` and `docs/referee_report.md`: second-order benchmark; illustrative information parameters; reduced-form decision-quality returns in Model B; stress test requires persistent dividends, preloaded leverage and thin depth; small LLM lab with 4-bit 7B/3B models; no external causal identification. ## πŸ“ Citation ```bibtex @techreport{boucher2026agentic, author = {Boucher, Simon-Pierre}, title = {When AI Agents Become Economic Agents: An Agentic General Equilibrium Theory}, institution = {Universit\'e du Qu\'ebec en Outaouais, D\'epartement des sciences administratives}, type = {Working Paper}, number = {25}, year = {2026}, month = {October} } ``` ## πŸ‘€ Author & contact **Simon-Pierre Boucher** β€” DΓ©partement des sciences administratives, UniversitΓ© du QuΓ©bec en Outaouais (UQO), Gatineau, QC. πŸ“§ [simon-pierre.boucher@uqo.ca](mailto:simon-pierre.boucher@uqo.ca) ## πŸ—’ Notes - Deviations from `Recherche-UQO/HARMONISATION.md`: `paper/appendices/` (plural, as the research programme requires) instead of `paper/appendix/`; `pyproject.toml` instead of `requirements.txt` (plus `requirements.lock.txt`). - 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`.