Research topic
Markets as routers
Cost-function and wagering markets as online learners that route among modular, continually learning experts.
13 projects, each with its own page, code and tests. See them on the full research index.
research/market-routing · 11 tests
Cost-function markets as expert routers: LMSR = Hedge, quadratic potential = sparsemax; regret/loss bounds verified, continual-learning simulation.
Abstract
Cost-function markets as online learners for modular, continual-learning expert routing: verified equivalence and loss/regret bounds, and a switching-environment simulation where the quadratic market stays sparse and low-regret at liquidity levels where LMSR degrades. Small-scale; limitations stated.
research/wagering-modular-experts · 13 tests
Self-financed wagering mechanisms as verifiable routers for modular, continually learning experts; shows plain WSWM locks in under recurring regimes and a fixed-share tax fixes it at the cost of subsidising free-riders.
Abstract
Weighted-score wagering (Lambert et al.) as a budget-balanced, replayable mixture-of-experts gate under recurring regime drift: plain wagering locks in, fixed-share wealth tax repairs it but subsidises free-riders.
research/expert-pooling · 6 tests
Pooling calibrated experts with shared training data: Bayes-optimal extremization a* = n/(1+(n−1)ρ) verified numerically, saturation at n_eff → 1/ρ, asymmetric robustness, and online learning of the exponent.
Abstract
Pooling calibrated experts with shared training data: the Bayes-optimal logit exponent a* = n/(1+(n−1)ρ) (matched to a numerical argmin), extra experts saturating at 1/ρ effective experts, naive independence pooling doing worse than chance at ρ=0.9, and an online learner that finds a*. Stylised.
research/delayed-routing · 11 tests
Hedge/LMSR routing with delayed feedback: regret ≤ ln N/η + ηT/8 + ηD/2 (mean delay inflates horizon by 1+4d̄), 12× regret from ignoring delay against a reactive adversary, delay-tuned rate too cautious on oblivious data, LMSR subsidy ~20× at mean delay 5.
Abstract
Hedge/LMSR routing of modular experts when losses arrive after device-dependent delays: regret ≤ ln N/η + ηT/8 + ηD/2 with D the total outstanding rounds, so mean delay d̄ inflates the horizon by 1+4d̄; ignoring delay costs 12× regret against a reactive adversary at delay 100, the worst-case tuned rate is too cautious on oblivious data, an observable-count adaptive rate recovers most of it, and LMSR subsidy grows about 20× at mean delay 5. Stylised.
research/balanced-routing · 10 tests
Capacity-constrained expert routing as a congestion-priced market: softmax with dual prices, verifier-computable duality-gap certificate from prices alone, sign-update balancing has a ≈2.5/√B sampling floor plus a step-size limit cycle, closed-form two-expert price of balance, Hoeffding load audit.
Abstract
Capacity-constrained expert routing is a softmax with a per-expert price, the Lagrange multiplier of its capacity, and the dual is smooth and concave. Any price vector gives a computable upper bound and, after repair toward the uniform assignment, a feasible lower bound, so a verifier certifies near-optimality from prices alone (gap below 10−4 at the optimum, always above the true suboptimality). Sign-update balancing has a sampling floor of about 2.5/√B in max relative overload that no step size removes, plus a step-proportional limit cycle on a fixed batch (22.6% at γ=0.2, 1.2% at 0.01). Two-expert Gaussian price of balance is closed form with price shift equal to the median gap; a Hoeffding audit of ln(2N/δ)/(2ε2) tokens covered 400 of 400 trials. Synthetic scores only. Stylised.
research/kelly-markets · 11 tests
Fractional-Kelly wealth markets as expert routers: risk-tolerance-weighted price, ln(1/s)/λ regret bound, growth-optimal λ*=(π−p)/(q−p), manipulation cost V·χ² vs LMSR b·KL (7.5× stiffer at p=0.99), and a switching-truth trade-off where λ≈0.1–0.2 beats full Kelly 3–7×.
Abstract
When agents bet a fraction λ of wealth Kelly-style, the clearing price is the λ·wealth-weighted mean belief, total wealth is conserved, and λ=1 is exactly the Bayes mixture. Market log-loss exceeds expert i’s by at most ln(1/si)/λi on any sequence (loose on i.i.d. data), the growth-optimal fraction is (π−p)/(q−p), and moving the price against calibrated others costs Vχ²(p0‖p): equal to LMSR b·KL at b=2V for small shifts but 7.5× stiffer at p=0.99. On a truth that switches regimes, full Kelly is wrong about half of every segment (regret about 1630 at T=4000) while λ of 0.1–0.2 cuts it 3–7×. Binary events, static experts. Stylised.
research/topk-routing · 6 tests
Top-k MoE routing as a capped Hedge market: price min(1, λ w_i) with exact KL projection, regret vs the best fixed k-set held under k ln(N/k)/η+ηTk/2 in every run (41–58% of it), plain normalisation prices experts above 1 (282/300 rounds, loss understated 3.2×), and systematic sampling gives exactly k distinct experts with 8–14× lower variance.
Abstract
Sparse mixture-of-experts routing as a capped Hedge market: expert prices are min(1, λ wi) with a single shadow price λ and an exact KL projection. Regret against the best fixed k-set stayed within k ln(N/k)/η + ηTk/2 in every run (41–58% of it, not proved here); plain normalisation prices an expert above 1 in 282 of 300 rounds and understates loss 3.2×; systematic sampling realises exactly k distinct experts with 8–14× lower loss variance. Oblivious losses only.
research/sleeping-ledger · 8 tests
A self-financed wealth ledger for specialist modules that sleep: total wealth conserved exactly, sleeping wealth frozen (one private ledger per regime), regret ≤ ln(1/π_i)/η + η·n_i in the module's *own* awake time, entry of a module with wealth ε costs incumbents ln(1/(1−ε))/η; matches the regime oracle (0.1004 vs 0.1000) where forced-to-report Hedge sits at 0.30 and fixed share is worse.
Abstract
If only awake modules report and each awake module’s wealth is multiplied by 1+η(ℓ̂−ℓi), the ledger is exactly budget balanced, sleeping wealth never moves (each regime keeps a private ledger), and a module’s regret against the market on its awake rounds is at most ln(1/πi)/η + ηni in its own awake time (the exponential variant pays ηT/8 and is not budget balanced). Admitting a module with wealth ε costs each incumbent ln(1/(1−ε))/η in its bound. With recurring regimes the ledger matches the per-round oracle (0.1004 vs 0.1000, regret about 2.7 whatever the number of specialists) while a forced-to-report Hedge sits at the generalist (0.30) and fixed share is worse (0.34–0.36). The bound is loose (measured regret 2.7 against a bound near 103); losses bounded, wake sets exogenous.
research/sleeping-incentives · 9 tests
When may a module choose to sleep? The ledger pays exactly leave-one-out savings ηW_A(1−p_i)S_i; sleeping *after* seeing losses gains wealth ηp_Bθ(1−θ)/2 (best 1/8) and takes the market in ~130 rounds with the router's loss unchanged; committed *before* serving it is a real saving; the deterring tax ηp_B/2 is a fixed share that halves honest specialists in 6 rounds.
Abstract
Yes, if it declares after seeing its loss. The wealth ledger pays each awake module exactly its leave-one-out saving, ηWA(1−pi)Si, but a module that sleeps whenever its own loss exceeds θ earns ηpBθ(1−θ)/2 per unit wealth against an equal-skill honest rival (best 1/8 at θ=1/2) and takes the market from a 0.1 share in about 130 rounds, while the router’s realised loss stays at 0.5. Declared before the router serves, the same wealth is a real saving that falls from 0.125 to 0.011 as the module’s signal about its own loss gets noisier. A sleeping tax that stops the exploit must be at least ηpB/2, a fixed-share rate that halves an honest specialist asleep 90% of the time in 6 rounds, so commitment, not taxation, is the fix. Two modules, uniform losses, threshold strategies; mean-field predictions 3–8% slow.
research/decision-markets · 16 tests
Conditional markets that route between models: inverse-propensity Brier is proper even when the router reads the report, exploration costs exactly 1+(K−1)e^{ω²/2τ²} in payment variance (probit: infinite for τ ≤ ω), and a stake gap distorts the reported gap by a closed-form fixed point with second-order harm.
Abstract
Markets that forecast each model’s loss if chosen only ever see the chosen arm. An inverse-propensity Brier payment is exactly proper even when the router reads the report (without the weight a trader shades its forecast, or hides), and its price is exact: E[1/π] = 1+(K−1)eω2/2τ2, so payment variance blows up as the router cools (a probit router has infinite variance for τ ≤ ω; Monte Carlo at τ=0.3 sees 29 against the exact 195). Exploration regret is at most 0.2785τ. Equal owner stakes cancel in the decision, a stake gap shifts the reported gap by a closed-form fixed point, and the loss it causes is second order, ∝(ΔB/k)2. Gaussian, one-shot, stylised.
research/module-entry · 6 tests
Admitting new modules to a Hedge/LMSR router: regret certificates obey a Kraft identity Σ e^{−c_i}=1, so uniform entry 1/(n+1) is the unique minimax rule; prior-optimal shares P_j/S_j cost H(P); the price of entry is exactly ln(1/π)/η independent of the quality gap.
Abstract
When a modular system adds an expert to a Hedge/LMSR router, the regret certificate to every expert is ci/η + ηT/8 with ci = ln(1/πi) + Σj>i ln(1/(1−πj)), and for any share sequence Σi e−ci = 1 (a Kraft identity). So uniform entry π = 1/(n+1) is the unique minimax rule (every ci = ln N, against 4.1–9.7 for constant shares at 4+12 modules), and against a prior on which module will be best the optimal shares are Pj/Sj with expected coefficient equal to the entropy of the prior. The price of entry is exactly ln(1/π)/η for a better arrival and ln(1/(1−π))/η for a worse one, independent of the quality gap; a recency prior cuts simulated regret from 3.11 to 2.70 nats. Known arrival rounds, fixed η. Pure-Python, 6 tests.
research/infra-netting · 7 tests
Does bilateral or multilateral netting, or gridlock resolution, save a payment system liquidity? A simulator fitted to Bech and Soramäki's Danish and Finnish bounds (34.7% and 10.1% of gross value against the published 37.2% and 10.7% for DK) shows reciprocal flows are what make netting work, and resolution cuts delay by 24–46% in the Danish-shaped system but 34–62% in the Finnish-shaped one, where the paper found about 10%.
Abstract
A simulated RTGS day (Zipf-concentrated banks, lognormal payment values, a share of payments followed by a return payment) with the paper's upper bound, lower bound and bilateral netting, a FIFO queue, and the Bech–Soramäki (2001) gridlock resolution algorithm, checked by brute force to return the largest feasible set of queue prefixes. Inputs from the paper: participants and payments per day (DK 146 and 925, FI 13 and 1,428), top-bank concentration and the Table 1 bounds. Independent payments need four times the published lower bound; with reciprocity fitted (ρ = 0.8 DK, 0.9 FI) the Danish-shaped system needs 34.7 % of gross value to settle on arrival and 10.1 % by close (published 37.2 and 10.7), the Finnish-shaped one 23.3 and 4.2 (27.4 and 4.3). Bilateral netting leaves 15.6 % (DK) and 7.2 % (FI) to fund. Gridlock resolution cuts mean settlement delay by 24–46 % in the Danish-shaped system (paper: up to 50 %) and 34–62 % in the Finnish-shaped one, where the paper found about 10 %: reported as an unexplained discrepancy. Assumed or fitted, not sourced: payment-value spread (swept), reciprocity (fitted to the lower bound, so the bound match is calibration), uniform timing, and my reading of the concentration shares. Simulated payments only; not financial advice.
research/infra-routing · 8 tests
Solomon RC208 (100 customers) with a battery: keeping the battery-blind routes and adding charging stops costs 28% more distance at 150 range units, a charge-aware search brings that to 5%; the battery is harmless above 200 units.
Abstract
The real Solomon RC208 VRPTW instance is solved battery-blind with PyVRP (4 routes, 778.93, equal to the published best-known distance as I recall it) and then given an electric fleet: range Q, full recharge at time g per unit, charging at the depot or at 2, 5 or 10 stations placed by k-means of the customers. Route-first, charge-second (the exact cheapest charging plan per route by a label-setting search, cutting routes that have none) costs 0 % extra distance at Q = 300, 0.4 % at 200, 28 % at 150, 36 % at 100 and 46 % at 75. An iterated local search whose moves are scored by the exact charging plan, 60 s from that start, cuts these to 4.9, 10.2 and 18.4 % (three seeds, best shown). Slower charging (g = 1) and fewer stations (2) leave 11 % and 12 % even after search; ten stations give 3.4 %. Not from a source: the battery range and recharge rate (swept, loosely anchored on one e-van’s range from memory), the station sites, full-charge-only recharging. The Schneider EVRPTW instances were unreachable, so this is RC208 with my own EV additions, one instance only; the search is short and seeds differ by up to 3 %. No tariff, so no time-of-use cost.
Other research topics
Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1
Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.