{ "cells": [ { "cell_type": "markdown", "id": "ad65fb0c", "metadata": {}, "source": [ "# `sue-probit-msa` — Probit SUE by MSA, certified by pinned Monte Carlo\n", "\n", "**What.** Probit SUE draws perceived route costs from correlated normals instead of\n", "the logit's independent Gumbels, so — unlike logit — it has **no closed-form\n", "loading**. `sue-probit-msa` reaches the probit fixed point by MSA over a Monte-Carlo\n", "STOCH loading, and the harness certifies it with a *pinned* Monte-Carlo residual\n", "(fixed sample count `r_cert`), reported with a standard error and a noise floor\n", "(`[daganzo1977stochastic]`, ADR-003, [docs/REFERENCES.md](../../docs/REFERENCES.md)).\n", "\n", "**Why it is in the benchmark.** It is the benchmark's stochastic-certificate case:\n", "the scored number is itself an estimate, so it carries uncertainty. See the\n", "[model compendium](../../docs/MODELS.md) and\n", "[docs/ARCHITECTURE.md](../../docs/ARCHITECTURE.md) (P1).\n", "\n", "**Scope.** Runs on the built-in two-route **probit** anchor (β = 0.1). The budget is\n", "capped at 50 iterations for tutorial runtime — so the run is deliberately short of\n", "the fixed point, and the certificate says so honestly (residual above the MC floor)." ] }, { "cell_type": "markdown", "id": "3915c2ab", "metadata": {}, "source": [ "## How this notebook is graded\n", "\n", "**A notebook never claims a number it does not compute in that cell.** Every scored\n", "quantity below is recomputed live by the P1 `Evaluator` from the flows the model\n", "emitted, in the cell where it is claimed. Model self-reports are shown only as\n", "provenance and diffed against the certificate as an honesty check, exactly as the\n", "harness treats them ([README](../../README.md), *Certified, not self-reported*)." ] }, { "cell_type": "code", "execution_count": 1, "id": "7e738ba4", "metadata": { "execution": { "iopub.execute_input": "2026-07-21T13:45:27.800090Z", "iopub.status.busy": "2026-07-21T13:45:27.799912Z", "iopub.status.idle": "2026-07-21T13:45:29.803047Z", "shell.execute_reply": "2026-07-21T13:45:29.801944Z" } }, "outputs": [], "source": [ "# Setup. `sue-probit-msa` is a core model: a plain `pip install -e .` suffices — no\n", "# optional extra, so no guard cell. The inline backend is Agg-based (headless CI\n", "# renders into the notebook); NEVER matplotlib.use(\"Agg\") in-kernel — it silently\n", "# suppresses inline figure capture.\n", "%matplotlib inline\n", "import numpy as np\n", "\n", "from tabench import (\n", " Budget,\n", " Evaluator,\n", " RngBundle,\n", " SueProbitMsaModel,\n", " Trace,\n", " two_route_scenario,\n", " viz,\n", ")" ] }, { "cell_type": "markdown", "id": "6af91974", "metadata": {}, "source": [ "## The scenario\n", "\n", "The same two disjoint routes as the logit anchor, but the **probit** task: perceived\n", "route costs are correlated normals with perception variance β = 0.1 per unit\n", "free-flow time. A different equilibrium definition → a different content hash (P2)." ] }, { "cell_type": "code", "execution_count": 2, "id": "92db529e", "metadata": { "execution": { "iopub.execute_input": "2026-07-21T13:45:29.807842Z", "iopub.status.busy": "2026-07-21T13:45:29.807318Z", "iopub.status.idle": "2026-07-21T13:45:29.812722Z", "shell.execute_reply": "2026-07-21T13:45:29.812032Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "scenario : tworoute\n", "content hash : ab27373c328c9ecc…\n", "SUE family : probit (beta = 0.1)\n", "total demand : 4.0\n" ] } ], "source": [ "scenario = two_route_scenario(sue_theta=0.1, sue_family=\"probit\")\n", "net = scenario.network\n", "\n", "print(f\"scenario : {scenario.name}\")\n", "print(f\"content hash : {scenario.content_hash()[:16]}…\")\n", "print(f\"SUE family : {scenario.sue_family} (beta = {scenario.sue_theta})\")\n", "print(f\"total demand : {scenario.demand.total}\")" ] }, { "cell_type": "markdown", "id": "6c1c0d97", "metadata": {}, "source": [ "## Solve\n", "\n", "The model contract ([CONTRIBUTING.md](../../CONTRIBUTING.md)): a model receives\n", "`(scenario, budget, rng, trace)`, records checkpoints, and respects the budget.\n", "Budgets are hardware-free (iterations / shortest-path calls; wall-clock is recorded\n", "but never the ranking axis, P7). Whatever the model writes into `self_report` is\n", "provenance, not a score." ] }, { "cell_type": "code", "execution_count": 3, "id": "9f784dda", "metadata": { "execution": { "iopub.execute_input": "2026-07-21T13:45:29.816476Z", "iopub.status.busy": "2026-07-21T13:45:29.816291Z", "iopub.status.idle": "2026-07-21T13:45:29.840597Z", "shell.execute_reply": "2026-07-21T13:45:29.839887Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "model : sue-probit-msa\n", "budget spent : 50 iterations\n", "emitted flows : [2.6122 2.6122 1.3878 1.3878]\n", "self-reported resid: 2.6122 (provenance only)\n" ] } ], "source": [ "# Budget capped at 50 iterations: every certified checkpoint costs a full Monte-Carlo\n", "# loading, so this keeps the tutorial fast (the model is then short of the fixed point).\n", "model = SueProbitMsaModel()\n", "bundle = model.solve(scenario, Budget(iterations=50), RngBundle(0), Trace())\n", "\n", "final = bundle.final\n", "print(f\"model : {model.name}\")\n", "print(f\"budget spent : {final.coords.iterations} iterations\")\n", "print(f\"emitted flows : {np.round(final.link_flows, 4)}\")\n", "print(f\"self-reported resid: {final.self_report['sue_fixed_point_residual']:.4f} (provenance only)\")" ] }, { "cell_type": "markdown", "id": "5f9d0645", "metadata": {}, "source": [ "## Certify (P1)\n", "\n", "Probit SUE has no closed form, so the harness certifies with a **pinned Monte-Carlo**\n", "loading (`r_cert = 2000` samples): the residual is an *estimate* with a standard error\n", "`se` and a noise floor below which it is indistinguishable from zero (ADR-003). The\n", "model's own residual estimate uses different draws, so it legitimately DIFFERS from\n", "the certificate — the sharpest form of *never trust the self-report*. We recompute\n", "the analytic probit fixed point in-cell with `brentq`." ] }, { "cell_type": "code", "execution_count": 4, "id": "a580684b", "metadata": { "execution": { "iopub.execute_input": "2026-07-21T13:45:29.844571Z", "iopub.status.busy": "2026-07-21T13:45:29.844123Z", "iopub.status.idle": "2026-07-21T13:45:30.364904Z", "shell.execute_reply": "2026-07-21T13:45:30.364172Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "certified probit residual : 1.4862 ± 0.0402 (MC se)\n", "MC noise floor : 0.0321\n", "feasible : 1\n", "model self-report resid : 2.6122 (provenance only — NOT the score)\n", "probit fixed point f_A : 2.4444 (recomputed); emitted f_A: 2.6122\n" ] } ], "source": [ "from scipy.optimize import brentq\n", "from scipy.stats import norm\n", "\n", "# Pinned Monte-Carlo certificate: r_cert samples, root_seed fixes the draws (ADR-003).\n", "evaluator = Evaluator(scenario, root_seed=0, r_cert=2000)\n", "metrics = evaluator.evaluate(final.link_flows)\n", "residual = metrics[\"sue_fixed_point_residual\"]\n", "se = metrics[\"sue_residual_se\"]\n", "floor = metrics[\"sue_residual_floor\"]\n", "print(f\"certified probit residual : {residual:.4f} ± {se:.4f} (MC se)\")\n", "print(f\"MC noise floor : {floor:.4f}\")\n", "print(f\"feasible : {metrics['feasible']:.0f}\")\n", "\n", "assert metrics[\"feasible\"] == 1.0\n", "assert np.isfinite(residual) and residual >= 0.0\n", "\n", "# NEVER trust the self-report (P1): the model's own residual estimate differs from the\n", "# pinned-MC certificate — different draws, different counts. The certificate is scored.\n", "self_resid = final.self_report[\"sue_fixed_point_residual\"]\n", "print(f\"model self-report resid : {self_resid:.4f} (provenance only — NOT the score)\")\n", "\n", "# Analytic anchor RECOMPUTED: disjoint routes -> independent normal route costs ->\n", "# P(A) = Phi((c_B - c_A) / sqrt(3.5 beta)); the fixed point via brentq.\n", "demand = scenario.demand.total\n", "beta = scenario.sue_theta\n", "\n", "def _probit_residual(f_a):\n", " c_a = 2.0 + f_a\n", " c_b = 1.5 + 2.0 * (demand - f_a)\n", " return f_a - demand * norm.cdf((c_b - c_a) / np.sqrt(3.5 * beta))\n", "\n", "f_a = brentq(_probit_residual, 1e-9, demand - 1e-9)\n", "ref_flows = np.array([f_a, f_a, demand - f_a, demand - f_a])\n", "print(f\"probit fixed point f_A : {f_a:.4f} (recomputed); emitted f_A: {final.link_flows[0]:.4f}\")\n", "\n", "# At this capped budget the run is short of the fixed point: the certified residual\n", "# sits ABOVE the MC floor, and the certificate reports that honestly.\n", "assert residual > floor\n", "assert 0.0 < f_a < demand" ] }, { "cell_type": "markdown", "id": "4ea26446", "metadata": {}, "source": [ "## Visualize\n", "\n", "Both figures come from `tabench.viz`. Left/top: the emitted probit-SUE flows on the\n", "two-route network. Right/bottom: the emitted flows against the `brentq`-recomputed\n", "probit fixed point — points sit OFF the `y = x` guide because the 50-iteration budget\n", "stopped short of the fixed point, exactly what the certified residual reports." ] }, { "cell_type": "code", "execution_count": 5, "id": "f17ec413", "metadata": { "execution": { "iopub.execute_input": "2026-07-21T13:45:30.367145Z", "iopub.status.busy": "2026-07-21T13:45:30.366870Z", "iopub.status.idle": "2026-07-21T13:45:30.638122Z", "shell.execute_reply": "2026-07-21T13:45:30.637168Z" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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DfgpXSM0NAzHjh1zePvg4GCMHTsG8+fPd/g9Gzasx8SJExpS3lW9/PIrGDlyBC5cyMTkyZOb5Bjku3zzul7kV8xmM2QyWbNeku2nn37C009Px5o1q5GcnAyDwYA9e/ZApVI6va9t27biuuuuc2jbpUuX4d576w/VqzGZTG65JNnYsWORmpqK2bNnQ6PRNPvxqzt37hwmTZro1hrIe7GnSR6pc+fOeOON+UhNvQktWybgrruGI6vaza9DQ8OwZMkSJCenoEWLOJSUlODw4V8wYMBAJCYmokePnli/fn2NfZrNFkyd+ihatkxA16434Msvv7S9Vn2Irl+/WwFUXjM2Li4ea9eutavv4MFDuP7665GSkgKJRILAwEAMGDAAnTp1aormAFAZeDt27MBNN91k99qLL76EVq2S0LFjpxrDmvPmzcPdd4/Gk0/+C9dc0wovvPAChBBIT09Ht27dkZiYiMGDB+P333+3vadz5854553/4NZb0xAf3xK33347MjMrLyp+yy39AAADBgxEXFw85s9/EwCwZ88epKT0+qunfC+mTn0UU6ZMse3zmmuuQXh4BPbs2ePQzzp48GAsWrQIwOVe+0cfrUSHDh3RqlUSZs9+rt73fvDBclx33fX4448/7F5r1649zp07h/HjJyAuLh5//vmn3Tb1nUdmsxnx8S1t+92yZQtCQ8Owfft2AMBvv/2GxMRE212ByDcxNMljrVy5Eh98sAx//PE7YmKiMXHipBqvr1u3Hps2bURm5nmYTGaMGDECI0YMx+nTp/HWW2/isccex759+2zbb9++HTfeeCP+97+zmDt3DsaPn4AzZ87aHfe773YAAI4f/w0XL17A3XffbbdNz549sHfvXrzwwovYuXMn9Hq9i396e6dPn4bBYEC7du1qPH/8+AlIJBL88cfv+PDD5XjxxRdrhNP27dvRrduNOH36T8ycORPLln2Ajz/+GGvWrMaZM2cwdOhQjB49BhUVFbb3rF27Bh98sAynT/8JjSYQc+bMAQB8//13ACp7xxcvXsBTT/0bBQWFGDt2LCZOnIiMjHO499576vxD429/uxbHjv3aoJ9dry/B77+fxOHDh7B16zdYtmwZdu3aZbfd3LlzsWzZMnzzzRa0b9/e7vVTp/5AQkJLfPDBMly8eAFt27at8XphYWG955FcLkdKSgp27qw87s6dO5GUlFTjce/evX361l7E0CQPNn78eLRv3x4ajQYvvfQSdu3ahQsXLthef/zxx9CiRQuoVCps3/4ttFotHn74YSgUCvTp0wcjR47Ep59+Ztu+bdu2eOihByGXy3HbbbchNTUVGzasr+vQV9WzZ09s2LAep0+fxoMPPoSkpNa47777odPpnN7XbbfdjsTERNvXq6++Wud2hYWF0Gg0dr+UAwMD8cwzM6BUKtGjRw+MGjUKn3222vZ6hw5/xz333AO5XA6NRoNly5bh2WefRZs2bSCXyzF58mSUlZXh4MGDtveMHz8BrVq1QkBAAO6+exSOHDlab/1bt36D2NgWNdq2rt5wcHDIVeeJ6yOEwKxZsxAQEIBrr70WPXr0wJEjR2yvWyxWPPbY49i5cxe+/vprxMXFNeg427Ztu+J5lJqaagvrnTt3YsaM6TUe1/Vzk29haJLHSkhIsH0fHR0NlUpVY4i2ZcuWtu8vXLhot/CmVatWuHjxYp37q3p88WIWGqpv3774+OOVOH36T3z//Xc4e/Yspk+vHOJVKBQwmcx27zGZzJDLa84pbtnyNTIyMmxf9a3kDAsLg8FgsBv+i42NrTFPmZCQUG87AUBGRgYmTXq4RlAXFhbWaKuYmGjb9xqNBiUl9feks7Iu1dm2ten1xQgLC6t3P1cSEhJcYy40MFCDkpIS2+MLFzKxevVqTJs2DeHhDTtG5X6ufB6lpqZi9+7d0Ol00OnyMGrUKGRkZKCgoBB79vzE0PQDDE3yWOfPn7d9n5ubi/LycrSodgNsqfTy6RsfH4eMjIwa78/IyKjR46i+PwDIzMxEXFzNG2rX3q+jOnfujPvuuxfHj1feZT4hIQEGgwG5ubk1tjt79mydq2od0aZNG2g0Gpw6darG85cuXYLJZLI9zszMrLedACA+Ph4ffbSiRlBfupSFkSNHOlRH7QVXLVrE1tm2tZ08+Tuuu66zQ8dwVmJiIlat+gQTJkyoc9jWUVc7j66//jqYTBVYsmSJbSg2OTkZixcvgkKhQIcOHRr1c5DnY2iSx/rwww9x6tQpGI1GPP/88+jduxfi4+Pr3LZ//wHIzc3F0qXLYDab8dNPP2HdunUYO3aMbZs///wTK1Z8BLPZjK1bt2Lnzp0YPny43b60Wi2kUinOnv1fvbX997//xerVq23Dsf/73/+wdu069OjRA0BlMPXp0xszZ85EQUEhzGYztm3bhi1btmDkyBENag+FQoF+/frZhUJpaSlef/11VFRU4ODBg1i3bh3uvntUvfuZOHEC5syZawvf4uJifPXVVw7Py0ZHR+Ps2ctzwQMGDERWVpZd21aXkZGB/Px89OrVy9Ef12n9+/fH0qVLcf/9D+CHH35s4D6ufB7JZDL06tULixenIzU1FQDQt+9NWLw4HX369PHJm2pTTQxN8lj33nsvHnpoPNq1a4+LF7OwdOnSercNDw/Dhg3rsXbtWiQltcbjjz+Bt956EykpKbZt0tLScODAAbRqlYTp02dgyZIlaNOmjd2+1Go1ZsyYjpEjRyIxMRHr1q2r43jhWL16DXr06Im4uHgMGTIEN9zQFXPmvGLbZvny5ZBIJEhJSUHr1q0xZ85cLF/+Abp06VJjX1UrUau+qlao1mXixAlYterTGs916PB3mM0WtG9/Le6//wHMnj3risOEkyZNwrhx43DvvfehZcsE9OjRE+vWOT63O3PmTEyfPgOJidfgrbfeRkREOD79dBXS09ORmHgNVq5ciVGjaob26tWrMW7cWAQGBjp8nIZIS7sVy5cvx4MPPogdO75z+v2OnEepqakoLi62tXHfvn1rPCbfJjGbTcLdRRDV1rlzZ8ybNw9Dhgxxdyke5667huORR6agf//+7i6lXjNmzEBRUREWL14MvV6P1NSbbIu1iLwZL25A5GU2bdro7hKcEhwcjCNHfnF3GUQuweFZIiIiB3F4loiIyEHsaRIRETmIoUlEROQghiYREZGDGJpEREQOYmgSERE5iKFJRETkIIYmERGRgxiaREREDvp/4NNnksI4QT0AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "display(viz.plot_network_flows(net, final.link_flows))\n", "display(viz.plot_flow_scatter((\"probit SUE (brentq)\", ref_flows), {\"sue-probit-msa\": final.link_flows}))" ] }, { "cell_type": "markdown", "id": "d8c81d5d", "metadata": {}, "source": [ "## Takeaways & pointers\n", "\n", "- **The score is an estimate.** The probit residual is Monte-Carlo — the harness\n", " reports it with a standard error and a floor; it never claims more precision than\n", " the sampling affords (ADR-003).\n", "- **Self-report ≠ certificate.** The model's own residual differs from the pinned-MC\n", " certificate; only the certificate is scored.\n", "- **Honest about budget.** Capped at 50 iterations, the run is short of the fixed\n", " point and the residual sits above the floor — reported, not hidden.\n", "- **Where next.** The closed-form logit variant: [`sue-msa`](10-sue-msa.ipynb); ADR-003\n", " in the [model compendium](../../docs/MODELS.md)." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" }, "tabench": { "covers": [], "requires_extra": null, "track": "static", "unit": "sue-probit-msa" } }, "nbformat": 4, "nbformat_minor": 5 }