Spectral-Ordering Block Optimizer
Implementation & benchmark of arXiv:2608.17940 — Policy Iteration for Linear-Quadratic Stochastic Differential Games with State- and Control-Dependent Noise
Source paper: Policy Iteration for Linear-Quadratic Stochastic Differential Games with State- and Control-Dependent Noise arXiv:2608.17940 ⓘ · analyzed Sep 1, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Replace simultaneous parameter updates with sequential block updates whose order is selected using estimated cross-block sensitivity. The paper shows that sequential policy updates can have a substantially smaller local contraction factor than decoupled or differently ordered updates; the neural analogue is to order attention, normalization, backbone, and head blocks according to the spectral radius of their composed update map.
Formulas
Mathematical statement
The paper differentiates policy-evaluation and stationarity maps and composes their block updates sequentially. Let e = (e_1,...,e_B) denote errors in B neural parameter blocks, and let J_ab be the derivative of the updated error in block a with respect to the old error in block b. A candidate block order pi gives a local error operator J_pi = J_{pi(B)} ... J_{pi(1)}, whereas simultaneous updating gives a different operator J_sim. Local linear convergence is predicted when rho(J_pi) is less than one, with asymptotic error ratio approximately rho(J_pi). Cross-block sensitivity captures interference between parameter groups. The practical ordering rule chooses the permutation with the smallest estimated spectral radius, while updating only when the improvement is larger than a hysteresis threshold.
Implementation notes
Integration point: partition a network into a small number of parameter blocks, such as embeddings, attention projections, feed-forward projections, normalization parameters, and the output head. Replace one simultaneous optimizer step with a Gauss-Seidel-like sweep: update block pi(1), refresh gradients, update block pi(2), and continue through the order. Every H steps, estimate cross-block sensitivities. For each block b, perturb it by a normalized random vector v and measure the change in the next update of block a; this gives a finite-difference estimate of J_ab. Use two or four perturbations per block, or Hessian-vector products when available. Assemble low-rank block operators and evaluate each candidate permutation with 5 to 10 power iterations to estimate its spectral radius. Choose the lowest-radius order, but change orders only if the estimated improvement exceeds 5 percent. The paper provides the sequential-composition and local spectral-radius mechanism; the neural block Jacobians are empirical estimates. First cheap experiment: train a small two-layer transformer on CIFAR-10 or a tiny language-model corpus, comparing simultaneous AdamW, a fixed block order, and adaptive spectral ordering. Record perturbation growth and validation-loss ratios over local windows. The prediction is that the selected order has lower estimated rho than random ordering and that the observed error ratio approaches the predicted rho within approximately 20 percent. Windows with rho greater than one should exhibit growing perturbations or oscillatory loss.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Confirmed ✓
Stage 2 · Practical benchmark result: Significantly worse ✗
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 8/10
Built and numerically verified a spectral-ordering block optimizer MVP using exact sequential block Jacobian compositions. The toy sweeps confirmed the predicted mechanism: ordering effects vanish at zero coupling, increase with directed cross-block coupling, and the observed stability boundary closely matches rho(J)=1; asymptotic ratios matched within 0.53%. A tiny neural regression also showed a modest final-MSE improvement for adaptive sequential updates, but this is not yet evidence of a robust practical speedup.
- Agent confidence
- 8/10
- Baseline
- Simultaneous update: final MSE 0.383931; MSE at step 30 0.456103.
- Idea
- Adaptive sequential update: final MSE 0.382999; MSE at step 30 0.456006. Toy rho=1 predicted/observed boundaries: 1.410/1.45, 1.089/1.10, 0.887/0.90, and 0.748/0.75 for coupling lambda 0.2, 0.4, 0.6, and 0.8. At lambda=0.5, predicted asymptotic ratio 0.58098 versus observed 0.57788.
Limitations: The neural test is a tiny full-batch two-layer regression, not a transformer, CIFAR-10, or language-model benchmark. Its adaptive selector uses a one-step candidate-loss proxy rather than finite-difference block Jacobian estimation, power iterations, hysteresis, FLOP-normalized timing, or multiple random seeds.
How to run: python3 spectral_ordering_experiment.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2608.17940)
Significantly WORSE than the tuned baseline (+447.3%, p=0.0081, wins 0 / 8 paired seeds).
- Benchmark
- Sequence modeling
- Model
- transformer_tiny
- Paired seeds
- 8
- Baseline mean
- 0.325
- Idea mean
- 1.7785
- Effect (Δ)
- 1.4535 (+447.3%; negative = idea better)
- Wins
- 0 / 8 paired seeds
- p-value
- 0.0081 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±121.5%
- Mechanism
- Confirmed ✓
- Practical effect
- Hurts
- Baseline tuning
- swept over 4 configs
Only the registered sequence track was tested; tabular, vision, and dynamics were not tested. No wall-clock or FLOP-normalized speedup was established. The implementation uses three parameter blocks and full-batch sequential updates; the adaptive sensitivity approximation is therefore smaller and less general than the proposed production-scale estimator.
How to run: python3 stage2_bench.py && /home/maxwelhelp/main/bin/python3 signature.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Failed ✗
Agent confidence: 10/10
The spectral-ordering optimizer was implemented and evaluated on the structurally matched registered sequence track with transformer_tiny, using 8 paired seeds and a tuned AdamW baseline. The mechanism signature was quantitatively confirmed, with predicted rho 0.998500 versus observed perturbation ratio 1.000022, but the idea significantly worsened test MSE: 1.778476 versus 0.324958, delta_mean +1.453517, p=0.0081. Therefore the benchmark verdict is idea worse (significant), and worked=false.
- Baseline
- Registered track sequence / transformer_tiny; tuned AdamW baseline mean test MSE 0.3249584026634693, std 0.05372834754753049, best_cfg {lr: 0.0015, weight_decay: 0.0}.
- Idea
- Adaptive sequential spectral-ordering Adam mean test MSE 1.7784757614135742, std 0.4284677525253833, best_cfg {lr: 0.0015, weight_decay: 0.0}; delta_mean +1.453517358750105, 0/8 paired wins, permutation p=0.0081.
Benchmark result
Significantly WORSE than the tuned baseline (+447.3%, p=0.0081, wins 0 / 8 paired seeds).
- Benchmark
- Sequence modeling
- Model
- transformer_tiny
- Paired seeds
- 8
- Baseline mean
- 0.325
- Idea mean
- 1.7785
- Effect (Δ)
- 1.4535 (+447.3%; negative = idea better)
- Wins
- 0 / 8 paired seeds
- p-value
- 0.0081 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±121.5%
- Mechanism
- Confirmed ✓
- Practical effect
- Hurts
- Baseline tuning
- swept over 4 configs
Only the registered sequence track was tested; tabular, vision, and dynamics were not tested. No wall-clock or FLOP-normalized speedup was established. The implementation uses three parameter blocks and full-batch sequential updates; the adaptive sensitivity approximation is therefore smaller and less general than the proposed production-scale estimator.
How to run: python3 stage2_bench.py && /home/maxwelhelp/main/bin/python3 signature.py
Artifacts
- REPORT.md 2.5 KB View
- bench_report.json 2.7 KB View Raw
- report.md 1.5 KB View
- report_bench_2026-09-01T164728.md 4.7 KB View
- results.json 3.7 KB View Raw
- signature.py 2.2 KB View Raw
- spectral_ordering_experiment.py 6.2 KB View Raw
- stage2_bench.py 6.9 KB View Raw