{
 "artifacts": [
  {
   "name": "bench_report.json",
   "url": "https://synthcore.org/code/1095/bench_report.json"
  },
  {
   "name": "report.md",
   "url": "https://synthcore.org/code/1095/report.md"
  },
  {
   "name": "report_bench_2026-09-02T005743.md",
   "url": "https://synthcore.org/code/1095/report_bench_2026-09-02T005743.md"
  },
  {
   "name": "results.json",
   "url": "https://synthcore.org/code/1095/results.json"
  },
  {
   "name": "stage2_bench.py",
   "url": "https://synthcore.org/code/1095/stage2_bench.py"
  },
  {
   "name": "wasserstein_controller.py",
   "url": "https://synthcore.org/code/1095/wasserstein_controller.py"
  }
 ],
 "category": "dynamics",
 "description": "Wrap stochastic optimization or iterative neural inference in a controller that measures how far the state distribution moves during each interval and compares this motion with the available noise-dependent entropy-production budget. The controller increases the learning rate or reduces inference steps only while the trajectory remains inside the predicted speed-limit region, preventing fast jumps that cause accuracy collapse.",
 "download_zip": "https://synthcore.org/download/1095",
 "formulas_latex": [
  "$$\\dot{x}=\\mu f_\\theta(x,t)+\\sqrt{2\\mu k_{\\rm B}T_t}\\,\\xi(t),\\qquad D_t=\\mu k_{\\rm B}T_t$$",
  "$$W_2^2(p_0,p_\\tau)\\leq D\\,\\tau\\,\\Sigma,\\qquad \\Sigma=\\int_0^\\tau\\sigma_t\\,dt$$",
  "$$\\sigma_t=\\frac{1}{D}\\int p_t(x)\\left\\|\\frac{J_t(x)}{p_t(x)}\\right\\|^2dx,\\qquad \\tau_{\\min}=\\frac{W_2^2(p_0,p_\\tau)}{D\\Sigma}$$",
  "$$\\eta_{t+1}=\\eta_t\\,\\operatorname{clip}\\left[\\left(\\frac{\\widehat W_{2,t}^2}{D_t\\Delta t\\,\\widehat\\Sigma_t}\\right)^\\alpha,\\frac{\\eta_{\\min}}{\\eta_t},\\frac{\\eta_{\\max}}{\\eta_t}\\right]$$"
 ],
 "id": 2780,
 "implementation": "Integrate the controller into stochastic gradient descent, SGLD, or a diffusion sampler. For an optimizer experiment, maintain K parameter replicas and update each replica with θ_{t+1}^{(k)}=θ_t^{(k)}−η_t g_t^{(k)}+sqrt(2η_t T_t) z_t^{(k)}, where g_t^{(k)} is the minibatch gradient, T_t is an injected temperature, and z_t^{(k)} is standard Gaussian noise. Every m updates, collect replica states before and after the interval. Estimate W_2 with sliced Wasserstein distance using 32 random projections, and estimate the current velocity using v_k=(x_{t+1}^{(k)}−x_t^{(k)})/Δt. Estimate σ_t by the average squared velocity divided by D_t=μ k_B T_t, using an exponential moving average to reduce noise. Compute r=Ŵ_2^2/(D_t Δt Σ̂_t). If r approaches or exceeds one, reduce η or increase the allowed number of steps; if r is well below one and validation accuracy is stable, cautiously increase η. Known quantities are the injected noise and D_t; Wasserstein displacement, velocity, and entropy production are empirical estimates. The first cheap experiment should use a two-layer MLP on MNIST or Fashion-MNIST with 32 replicas, comparing Adam, fixed-step SGLD, and the controller at matched final accuracy. Plot r, loss, accuracy, and replica displacement. The falsifiable prediction is that stable high-accuracy intervals satisfy r≤1 up to estimation error, while deliberately increasing η creates persistent r\u003e1 before divergence or accuracy collapse. The measured critical learning rate should predict the collapse boundary within 20%.",
 "math_summary": "Let p_t(x) be the distribution of network states x, J_t(x) the probability current, v_t(x)=J_t(x)/p_t(x) the probability-flow velocity, D=μ k_B T the diffusion coefficient, and σ_t the entropy-production rate divided by k_B. The continuity equation is ∂_t p_t+∇·(p_t v_t)=0. The Wasserstein action bound implies W_2(p_0,p_τ)^2≤D τ Σ, where Σ=∫_0^τ σ_t dt. Therefore any protocol transporting the distribution over Wasserstein distance W_2 in time τ must satisfy τ≥W_2^2/(DΣ). In a neural implementation, p_t is the empirical distribution of parameter replicas, hidden states, or stochastic predictions; W_2 and Σ are estimated from minibatch samples and consecutive updates.",
 "math_tags": [
  "stochastic-processes",
  "optimal-transport",
  "dynamical-systems",
  "control-theory"
 ],
 "ml_areas": [
  "optimizer",
  "training-dynamics",
  "scheduler"
 ],
 "paper": {
  "arxiv_id": "2608.27938",
  "arxiv_url": "https://arxiv.org/abs/2608.27938",
  "summary_what_math_gives_to_ml": "The paper provides a transferable Wasserstein speed limit for stochastic computation: a probability distribution cannot travel a specified distance in finite time without sufficient integrated probability-current activity, equivalent to entropy production or dissipated heat. Its important engineering consequence is protocol freedom: the same task accuracy can be achieved with different combinations of runtime, noise, mobility, and dissipation. A neural-network implementation can monitor distributional motion during stochastic optimization or inference and adapt the step size, noise level, or number of iterations when the measured trajectory approaches the speed-limit boundary.",
  "title": "The thermodynamic freedom of a thermodynamic computer",
  "year": "2026"
 },
 "ratings": {
  "difficulty": 5,
  "novelty": 7,
  "usefulness": 7
 },
 "solves": [
  "stability",
  "speedup",
  "sample-efficiency"
 ],
 "title": "Wasserstein Speed-Limit Controller",
 "url": "https://synthcore.org/idea/2780/wasserstein-speed-limit-controller",
 "verification": {
  "benchmark": {
   "track": "dynamics",
   "model": "rnn_small",
   "n_seeds": 8,
   "metric_direction": "lower is better",
   "comparison": {
    "baseline_mean": 0.0013736290202359669,
    "idea_mean": 0.4975068047642708,
    "delta_mean": 0.4961331757440348,
    "per_seed_diffs": [
     0.39443998970091343,
     0.5495343519141898,
     0.4954051044769585,
     0.5860751821892336,
     0.4415613175369799,
     0.4848321976023726,
     0.4554831519490108,
     0.5617341105826199
    ],
    "idea_wins": 0,
    "n_pairs": 8,
    "p_value": 0.0081,
    "mde": 0.055052955593549176,
    "mde_rel_pct": 4007.847445163323,
    "verdict": "idea worse (significant)",
    "system_worked": false
   },
   "baseline": {
    "best_cfg": {
     "lr": 0.01,
     "weight_decay": 0.0001
    },
    "sweep": [
     {
      "cfg": {
       "lr": 0.001,
       "weight_decay": 0
      },
      "mean": 0.0035823711077682674
     },
     {
      "cfg": {
       "lr": 0.001,
       "weight_decay": 0.0001
      },
      "mean": 0.0035786936641670763
     },
     {
      "cfg": {
       "lr": 0.003,
       "weight_decay": 0
      },
      "mean": 0.0033184013445861638
     },
     {
      "cfg": {
       "lr": 0.003,
       "weight_decay": 0.0001
      },
      "mean": 0.0032864113454706967
     },
     {
      "cfg": {
       "lr": 0.01,
       "weight_decay": 0
      },
      "mean": 0.0015948790241964161
     },
     {
      "cfg": {
       "lr": 0.01,
       "weight_decay": 0.0001
      },
      "mean": 0.0015534490812569857
     }
    ],
    "full": {
     "mean": 0.0013736290202359669,
     "std": 0.0004336284119124816,
     "per_seed": [
      0.0022530313581228256,
      0.0016054200241342187,
      0.0008981260471045971,
      0.0014572188956663013,
      0.0016656755469739437,
      0.0009697971981950104,
      0.000995026552118361,
      0.0011447365395724773
     ],
     "n": 8
    }
   },
   "idea": {
    "mean": 0.4975068047642708,
    "std": 0.06142691120766916,
    "per_seed": [
     0.39669302105903625,
     0.551139771938324,
     0.4963032305240631,
     0.5875324010848999,
     0.44322699308395386,
     0.4858019948005676,
     0.45647817850112915,
     0.5628788471221924
    ],
    "n": 8
   },
   "mechanism_signature": {
    "baseline_grid": [
     {
      "lr": 0.001,
      "weight_decay": 0
     },
     {
      "lr": 0.001,
      "weight_decay": 0.0001
     },
     {
      "lr": 0.003,
      "weight_decay": 0
     },
     {
      "lr": 0.003,
      "weight_decay": 0.0001
     },
     {
      "lr": 0.01,
      "weight_decay": 0
     },
     {
      "lr": 0.01,
      "weight_decay": 0.0001
     }
    ],
    "idea_grid": [
     0.001,
     0.003,
     0.01
    ],
    "protocol": "8 paired seeds; 4-seed baseline/idea selection",
    "signature": {
     "confirmed": false,
     "observed_final_eta_mean": 0.0025,
     "observed_max_ratio_mean": 18444.135724120242,
     "observed_mean_ratio": 12911.468078824939,
     "predicted": "\u003c= 1 in stable intervals",
     "quantity": "W2^2/(D*dt*Sigma)"
    }
   },
   "custom_track": null
  },
  "mechanism_confirmed": false,
  "peer_reviewed": false,
  "practical_verdict": "harms",
  "stage1_mechanism_check": {
   "worked": true,
   "confidence": 7,
   "verdict": "Built a replica-based SGLD Wasserstein controller and a toy translating-distribution verification. The bound prediction was confirmed: the dimension-corrected sliced-Wasserstein/action ratio had median 1.00, with worst relative error 28.2%; displacement scaling versus speed²·time² ranged from 0.72 to 1.25. In the quadratic stability sweep, the predicted fixed-step boundary eta=0.5 was observed: baseline diverged at eta=0.55 and 0.70, while the controller reduced eta and remained finite, although it sometimes hurt already-stable low-eta runs.",
   "metrics": {
    "baseline": "Quadratic SGLD final loss: 1.02e39 at eta=0.55 and 3.42e123 at eta=0.70; stable final losses 0.00480, 0.00605, and 0.01204 at eta=0.10, 0.30, and 0.45.",
    "idea": "Controller final loss: 0.00701 at eta=0.55 and 0.00573 at eta=0.70, with final eta 0.453 and 0.306 respectively; toy bound ratio median 1.000 and speed/time scaling range 0.718–1.249."
   },
   "how_to_run": "python3 wasserstein_controller.py",
   "files": [
    "wasserstein_controller.py",
    "results.json"
   ],
   "limitations": "No MNIST/MLP experiment, wall-clock speed, or matched-FLOP study was performed. The dimension-corrected sliced-Wasserstein quantity is an estimator/proxy rather than an exact full W2 distance, and the optimizer test used a quadratic objective with injected noise rather than a realistic neural-network training workload."
  },
  "status": "failed_benchmark",
  "status_label": "Failed on benchmark",
  "updated_at": "2026-09-02T00:57:43",
  "verdict_source": "deterministic test code (paired-seed permutation statistics)"
 }
}
