Barrier-Certified Neural Policy Training
Implementation & benchmark of arXiv:2608.10332 — Topological Feasibility Guarantees for Differentiable Predictive Control
Source paper: Topological Feasibility Guarantees for Differentiable Predictive Control arXiv:2608.10332 ⓘ · analyzed Sep 1, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Train a neural policy through a differentiable dynamics model while enforcing a Control Barrier Function condition at every rollout state, rather than applying a penalty only to observed constraint violations. The barrier residual becomes a local certificate that the learned policy points inward at the boundary of the safe set, allowing safety to be checked on unseen states when combined with a margin and Lipschitz bound.
Formulas
Mathematical statement
Let the plant be dx/dt = f(x, pi_theta(x)), where x is the state, u = pi_theta(x) is a neural policy, and f is a known or differentiable learned dynamics model. Let the safe set be C = {x : h(x) >= 0}, with differentiable barrier function h. A zeroing-CBF condition is dh/dt + alpha h >= 0, where dh/dt = grad h(x) transpose f(x, pi_theta(x)) and alpha > 0. Define the residual r_theta(x) = dh/dt + alpha h(x). Train with the hinge loss [epsilon - r_theta(x)]_+ squared, where epsilon > 0 is a strict margin. If r_theta is at least epsilon on a delta-net of the reachable set and r_theta is L_r-Lipschitz there, then r_theta(x) is at least epsilon - L_r delta everywhere. Therefore the CBF condition is certified whenever delta < epsilon / L_r.
Implementation notes
1. Integration point: place a neural policy u = pi_theta(x) inside a differentiable one-step or multi-step simulator. For an MLP, RNN, or transformer policy, evaluate the policy at each predicted state and compute f(x,u) using automatic differentiation or a learned differentiable world model. Define one or more barrier functions h_j(x) for state constraints and optional input barriers for actuator limits. 2. Pseudocode: sample initial states; roll out x_next = x + dt times f(x, pi_theta(x)); compute r_j = grad_h_j(x) transpose f(x, pi_theta(x)) + alpha_j h_j(x); minimize task loss plus lambda times the sum of [epsilon_j - r_j]_+ squared; repeat. 3. Compute h, its gradient, f, and residuals exactly from the differentiable model. Estimate L_r using spectral-norm bounds on policy and dynamics Jacobians, or conservatively using finite differences over sampled states. Estimate delta with a k-center or farthest-point approximation. 4. First cheap experiment: train a two-layer MLP controller on a pendulum or Dubins-car system, comparing ordinary task-loss training with the CBF loss. Sweep epsilon and sample count N. The predicted signature is a certification boundary near delta = epsilon / L_r: below this threshold, dense-grid violations should be zero or negligible; above it, isolated violations should appear. Increasing N should reduce the maximum violation monotonically.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Not reproduced ✗
Stage 2 · Practical benchmark result: Inconclusive
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 9/10
Built a differentiable 1D neural-policy CBF trainer and dense certificate-verification sweep. The Lipschitz lower bound held for every net; the residual gap had observed log-log slope 1.0000001 versus predicted 1, with coefficient error below 1.7e-7; and the predicted positive-certificate threshold delta<epsilon/L=0.08 was conservative relative to the observed safe boundary at delta=0.125. Task-only training reached terminal x=-0.448 with minimum residual -0.605, while barrier training reached x=0.097 with minimum residual 0.0807 and dense unseen-state minimum 0.0788, at substantially worse task error.
- Agent confidence
- 9/10
- Baseline
- terminal x=-0.4481; task error=0.00186; min rollout residual=-0.6049; dense unseen minimum residual=-0.4450; 100% of residual samples below epsilon
- Certificate
- L=1, epsilon=0.08, predicted delta threshold=0.08, observed safe boundary=0.125, residual-gap/delta approximately 0.6366197, observed log-log slope=1.0000001
- Idea
- terminal x=0.0972; task error=0.5472; min rollout residual=0.08068; dense unseen minimum residual=0.07881; 0% of residual samples below epsilon
Limitations: This is a tiny 1D integrator toy with h(x)=x and analytically simple dynamics, not a pendulum, Dubins car, learned world model, multidimensional reachable-set certificate, or formal neural-policy Lipschitz bound. The dense unseen-state check covers x in [0,1] only, and training uses one fixed seed and one barrier weight rather than a statistical hyperparameter sweep.
How to run: python3 barrier_experiment.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2608.10332)
No significant difference vs. the tuned baseline (+18.9%, p=0.1407, wins 1 / 8 paired seeds).
- Benchmark
- Robust_cbf_pendulum_policy
- Model
- shared_mlp_32
- Paired seeds
- 8
- Baseline mean
- 0.002
- Idea mean
- 0.0024
- Effect (Δ)
- 0.0004 (+18.9%; negative = idea better)
- Wins
- 1 / 8 paired seeds
- p-value
- 0.1407 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±26.7%
- Mechanism
- Not confirmed ✗
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 3 configs
This used the registered pendulum policy track and 15 training epochs, with one smooth ellipsoidal barrier and three learning-rate/weight settings. It did not test longer training, multiple barrier geometries, formal global Lipschitz certification, larger policies, or real hardware deployment.
How to run: python3 barrier_bench.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Failed ✗
Agent confidence: 9/10
Barrier-certified neural policy training was evaluated on the registered robust_cbf_pendulum_policy dynamics track with the same shared MLP architecture and an 8-seed paired protocol. The idea was not better: its test MSE was higher than the tuned baseline, the paired permutation p-value was 0.1407, and the mechanism signature was not quantitatively confirmed.
- Baseline
- Best lr=0.006; full 8-seed mean MSE 0.0019978795608039945, std 0.0005495084055684182.
- Delta mean
- 0.00037733095814473927
- Idea
- Selected lr=0.003, barrier weight=2.0; full 8-seed mean MSE 0.002375210518948734, std 0.0007107137551610928.
- Idea wins
- 1
- N pairs
- 8
- P value
- 0.1407
Benchmark result
No significant difference vs. the tuned baseline (+18.9%, p=0.1407, wins 1 / 8 paired seeds).
- Benchmark
- Robust_cbf_pendulum_policy
- Model
- shared_mlp_32
- Paired seeds
- 8
- Baseline mean
- 0.002
- Idea mean
- 0.0024
- Effect (Δ)
- 0.0004 (+18.9%; negative = idea better)
- Wins
- 1 / 8 paired seeds
- p-value
- 0.1407 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±26.7%
- Mechanism
- Not confirmed ✗
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 3 configs
This used the registered pendulum policy track and 15 training epochs, with one smooth ellipsoidal barrier and three learning-rate/weight settings. It did not test longer training, multiple barrier geometries, formal global Lipschitz certification, larger policies, or real hardware deployment.
How to run: python3 barrier_bench.py
Artifacts
- barrier_bench.py 4.9 KB View Raw
- barrier_experiment.py 5.0 KB View Raw
- bench_report.json 3.0 KB View Raw
- report.md 1.8 KB View
- report_bench_2026-09-01T102242.md 4.6 KB View
- results.json 3.2 KB View Raw