platoon-delay-noise-20-tuned
Vehicle platoon · solved 13 of 14 agent attempts pass
more
Measures turns, edits and tokens against the flat task, and how much of each agent's result was structure (untuned ladder) vs tuning.
Gate. the task is solved when the success rate over the grader's held-out seeds is `>= 0.9`; before grading, the grader tunes the controller's declared `PARAMS` within `PARAM_BOUNDS` on the visible seeds 0-7 with a budget of 150 evaluations (`tpe` sampler) and grades the tuned file; the untuned result is reported alongside
Axes: n_vehicles:20, observation:local-delayed-noisy, leader:hard_brake_train, tuning:grader
Each video re-runs the attempt's final controller through the task's own evaluator on a public seed (never the grader's held-out ones). The table under each video is the official grade on the held-out seeds.
hard_delay_noise_v1| criterion | graded | needed |
|---|---|---|
| base:default | 1.000 | ≥ 0.900 |
The agent's final message
Done — `/app/work/controller.py` holds the final controller, verified well above the gate. **Results** - As-submitted file: 8/8 on visible seeds 0–7, **0.990 success over held-out seeds 8–199** (192 seeds; the only 2 failures are string gains of 1.36/1.44, barely over the 1.35 limit). Max spacing RMS is 0.37 m against the 3.0 m limit, and the minimum gap never drops below 14 m. - Simulated grader pipeline (re-tuning the file with 150 TPE trials on seeds 0–7 under different search seeds, then verifying the tuned copy on ~176 fresh seeds): 0.989 and 1.000 — so the grading procedure itself is robust, not just one lucky parameter set. **How the controller works** (12 tuned `PARAMS`, bounds declared in `PARAM_BOUNDS`): 1. **Own-state dead reckoning**: own velocity/acceleration are exact but delayed by a known `obs_delay_steps`, so the controller stores its own command history in memory and replays the first-order actuator model through the delay window to recover its current state. 2. **Predecessor-acceleration freshness tracking + slope extrapolation**: the acceleration reading is exact when present (exactly 0.0 means dropout). Because the delay jitters, the controller keeps the two freshest readings and extrapolates their slope over the observation age — this anticipates braking onset instead of reacting a full delay late, which was the dominant failure mode. 3. **Delay-compensated gap/relative-velocity estimates**, low-pass blended against a one-step prediction to average sen…
A CACC controller that dead-reckons its own and the predecessor's states forward over the observation delay, filters noisy gap and relative velocity with a predictive blend, applies a spacing/relative-velocity/feedforward law with nonlinear and asymmetric gains and smoothing, and overrides with full braking on small gap or TTC.
Shown: public seed 0 (hard_delay_noise_v1); this episode passes the default rung. This episode: collision no, min_gap 14.7, spacing_error_rms 0.318, spacing_error_abs_max 2.09, string_peak_gain 0.753, episode_steps 600, total_reward -120.
controller.py · trial platoon-delay-noise-20-tuned__6fQALzF
hard_delay_noise_v1| criterion | graded | needed |
|---|---|---|
| base:default | 0.100 | ≥ 0.900 |
Pre-clock session: the agent had no clock and may have stopped early believing its hour was over; treat a failure here as a lower bound.
The agent's final message
### Task Summary & Results The controller in `/app/work/controller.py` has been updated and tested against the `hard_delay_noise_v1` scenario: 1. **Architecture Implemented:** - **4D Kalman Filter:** Estimates bumper gap, relative velocity, predecessor acceleration, and relative velocity sensor bias while handling acceleration dropouts via innovation updates. - **Delay-Compensated Forward Projection:** Integrates vehicle states across observation delay intervals using historical commands to eliminate latency phase shifts. - **CACC Control with Actuator Compensation:** Blends feedforward predecessor acceleration, proportional-derivative spacing control, integral error tracking, and first-order actuator lag inversion. 2. **Verification & Tuning Contract:** - Declared parameter dictionary `PARAMS` (11 parameters) and `PARAM_BOUNDS` are configured for the grader's Bayesian TPE tuner (`hl_control.harbor.tune`). - Rollouts maintain safety with zero collisions (`min_gap > 14.5 m`) and low spacing error RMS (`~1.4 m`).
A decentralized CACC controller filters delayed noisy gap, relative velocity and predecessor acceleration with a Kalman filter, forward-predicts the state across the delay, and applies feedforward plus PD and integral spacing feedback with actuator-lag compensation and smoothed, clipped output.
Shown: public seed 0 (hard_delay_noise_v1); this episode fails the default rung. This episode: collision no, min_gap 16, spacing_error_rms 1.3, spacing_error_abs_max 4.25, string_peak_gain 1.37, episode_steps 600, total_reward -1188. It was the first failing one of 1 public seeds tried.
controller.py · trial platoon-delay-noise-20-tuned__TATSPtE