Petri-Net Safety Shield for Neural Policies / report_bench_2026-08-31T161516.md

Mechanism confirmed, baseline not beaten

Raw ⬇ ZIP

Стенд-проверка (stage-2) · промт оператора:

(универсальный)

Ответ агента:

{ "worked": false, "confidence": 9, "verdict": "The Petri-style successor shield was evaluated on the registered dynamics/rnn_small benchmark with identical architecture, data, epochs, and learning-rate union. The closure check observed zero accepted unsafe successors, but the task metric showed no significant improvement: paired delta -5.28e-7 and permutation p=0.98515, so the idea does not count as a benchmark win.", "metrics": { "baseline": "best_cfg {lr: 0.01, epochs: 12}; full 8-seed test MSE mean 0.001394080012687482, std 0.0003941947646392458", "idea": "best_cfg {lr: 0.01, epochs: 12}; full 8-seed test MSE mean 0.0013935517708887346, std 0.0003435936282481101; paired delta -5.282417987473309e-07; p=0.98515" }, "how_to_run": "/home/maxwelhelp/main/bin/python3 petri_bench.py", "files": [ "petri_bench.py", "bench_report.json" ], "limitations": "The built-in dynamics task is supervised pendulum next-state prediction rather than interactive RL, so action safety was approximated by filtering observed control inputs. Long-horizon closed-loop safety, observation noise, online policy optimization, and larger Petri nets were not tested.", "bench_report": { "bench_version": 1, "track": "dynamics", "model": "rnn_small", "metric_direction": "lower is better", "n_seeds": 8, "baseline": { "best_cfg": { "lr": 0.01, "epochs": 12 }, "sweep": [ { "cfg": { "lr": 0.001, "epochs": 12 }, "mean": 0.004103701037820429 }, { "cfg": { "lr": 0.003, "epochs": 12 }, "mean": 0.0033861721749417484 }, { "cfg": { "lr": 0.01, "epochs": 12 }, "mean": 0.0014241317112464458 } ], "full": { "mean": 0.001394080012687482, "std": 0.0003941947646392458, "per_seed": [ 0.0008339877240359783, 0.0018332540057599545, 0.001035665743984282, 0.0019936193712055683, 0.0009847625624388456, 0.0013270708732306957, 0.0016533465823158622, 0.0014909332385286689 ], "n": 8 } }, "idea": { "mean": 0.0013935517708887346, "std": 0.0003435936282481101, "per_seed": [ 0.000962425721809268, 0.0018949415534734726, 0.0011497323866933584, 0.0018263080855831504, 0.0009521312895230949, 0.0014383804518729448, 0.0016268157633021474, 0.0012976789148524404 ], "n": 8 }, "comparison": { "delta_mean": -5.282417987473309e-07, "idea_wins": 4, "n_pairs": 8, "per_seed_diffs": [ 0.00012843799777328968, 6.168754771351814e-05, 0.0001140666427090764, -0.00016731128562241793, -3.263127291575074e-05, 0.00011130957864224911, -2.653081901371479e-05, -0.00019325432367622852 ], "p_value": 0.98515, "mde": 0.0001061475231632145, "mde_rel_pct": 7.614162902930173, "verdict": "no measurable effect", "system_worked": false }, "mechanism_signature": { "prediction": "accepted Petri successors remain admissible", "closure_violations": 0, "predicted_unsafe_accepted_rate": 0.0, "observed_unsafe_prediction_rate_trained_idea": 0.07, "observed_rejection_rate_trained_task_inputs": 0.05347656179219484, "confirmed": true }, "idea_sweep": [ { "cfg": { "lr": 0.001, "epochs": 12 }, "mean": 0.004844218114158139, "std": 0.0021060335026899866 }, { "cfg": { "lr": 0.003, "epochs": 12 }, "mean": 0.002841877590981312, "std": 0.0016170159627390552 }, { "cfg": { "lr": 0.01, "epochs": 12 }, "mean": 0.0013935517708887346, "std": 0.0003435936282481101 } ] }, "system_verdict": "partial", "practical_verdict": "no_effect", "mechanism_ok": 1, "system_judged": true }