Lyapunov-Budgeted Neural MPPI / report_bench_2026-09-03T220034.md
Mechanism confirmed, baseline not beaten
Стенд-проверка (stage-2) · промт оператора:
(универсальный)
Ответ агента:
{ "worked": false, "confidence": 9, "verdict": "Implemented the Stage-2 dynamics benchmark using identical rnn_small models, paired seeds, official baseline sweeping, an idea sweep, and the official permutation test. The Lyapunov penalty reduced the observed contraction-violation rate from 0.8133 to 0.8096, but test MSE was slightly worse: 0.00039220 versus 0.00039139, with p=0.7761. The mechanism signal is promising but there was no significant task-metric win.", "metrics": { "baseline": "Best standard MSE baseline, lr=0.006: test MSE mean 0.0003913901, std 0.0001403232.", "idea": "Best Lyapunov setting, lr=0.006 and penalty=0.01: test MSE mean 0.0003922019, std 0.0001420064; paired delta +8.118e-7; p=0.7761; 4/8 paired wins.", "mechanism_signature": "Trained-model contraction-violation rate: baseline 0.8133334, idea 0.8095834; mean absolute prediction/last-angle ratio: baseline 1.12015, idea 1.10206; confirmed=true." }, "how_to_run": "/home/maxwelhelp/main/bin/python3 stage2_bench.py", "files": [ "stage2_bench.py", "stage2_run.log", "bench_report.json" ], "limitations": "The fixed dynamics benchmark tests a Lyapunov-inspired training penalty on supervised next-angle prediction, not full inference-time neural MPPI with adaptive rollout sampling. Unsafe closed-loop escape rate, adaptive sample count, temperature sweeps, and a learned world-model MPPI controller were not evaluated. The mechanism signature uses a simple rho=0.94 contraction proxy rather than a learned Lyapunov certificate.", "bench_report": { "bench_version": 1, "track": "dynamics", "model": "rnn_small", "metric_direction": "lower is better", "n_seeds": 8, "baseline": { "best_cfg": { "lr": 0.006, "penalty": 0.0 }, "full": { "mean": 0.0003913900891348021, "std": 0.00014032323399353638, "per_seed": [ 0.0004547900171019137, 0.0005691215046681464, 0.0002539993729442358, 0.0005208455841057003, 0.00024503248278051615, 0.0003696440835483372, 0.00018239273049402982, 0.0005352949374355376 ], "n": 8 }, "sweep": [ { "cfg": { "lr": 0.001, "penalty": 0.0 }, "mean": 0.0012329648743616417 }, { "cfg": { "lr": 0.003, "penalty": 0.0 }, "mean": 0.0007095315813785419 }, { "cfg": { "lr": 0.006, "penalty": 0.0 }, "mean": 0.00044968911970499903 }, { "cfg": { "lr": 0.001, "penalty": 0.01 }, "mean": 0.0012329648743616417 }, { "cfg": { "lr": 0.003, "penalty": 0.01 }, "mean": 0.0007095315813785419 }, { "cfg": { "lr": 0.006, "penalty": 0.01 }, "mean": 0.00044968911970499903 }, { "cfg": { "lr": 0.001, "penalty": 0.05 }, "mean": 0.0012329648743616417 }, { "cfg": { "lr": 0.003, "penalty": 0.05 }, "mean": 0.0007095315813785419 }, { "cfg": { "lr": 0.006, "penalty": 0.05 }, "mean": 0.00044968911970499903 } ] }, "idea": { "mean": 0.00039220192411448807, "std": 0.00014200637399208092, "per_seed": [ 0.0004564015252981335, 0.0005712365382350981, 0.0002526967437006533, 0.0005346102407202125, 0.00024299033975694329, 0.0003629707789514214, 0.00018514976545702666, 0.0005315594607964158 ], "n": 8 }, "comparison": { "delta_mean": 8.118349796859547e-07, "idea_wins": 4, "n_pairs": 8, "per_seed_diffs": [ 1.611508196219802e-06, 2.1150335669517517e-06, -1.3026292435824871e-06, 1.3764656614512205e-05, -2.042143023572862e-06, -6.673304596915841e-06, 2.7570349629968405e-06, -3.735476639121771e-06 ], "p_value": 0.7761, "verdict": "no measurable effect", "system_worked": false }, "idea_selected_cfg": { "lr": 0.006, "penalty": 0.01 }, "mechanism_signature": { "prediction": "Lyapunov penalty lowers observed contraction-violation rate", "predicted_direction": "lower", "baseline_violation_rate": 0.8133333712816239, "idea_violation_rate": 0.8095833584666252, "baseline_mean_abs_prediction_over_theta": 1.1201488196849823, "idea_mean_abs_prediction_over_theta": 1.1020578742027283, "rho": 0.94, "confirmed": true } }, "system_verdict": "partial", "practical_verdict": "no_effect", "mechanism_ok": 1, "system_judged": true }