You need to agree to share your Hugging Face information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Please read the following carefully before requesting access.

By requesting access to this model, you confirm that you have read and agree to the model license (CC BY-NC 4.0) and the additional usage terms below.

You agree to:

  • Use the model for research, development, and safety-related purposes
  • NOT use the model for military, surveillance, or related applications
  • NOT use the model in ways that could cause harm to individuals or society
  • Respect all applicable laws and regulations
  • Use the model in compliance with the CC BY-NC 4.0 license (non-commercial use only)
  • Cite CALM and CARD in any resulting work

Log in or Sign Up to review the conditions and access this model content.

CALM-PPO

When a car approaches a speed bump, how much it should slow down is a trade-off. Slowing a lot spares the passengers but costs time; not slowing at all saves time and shakes the car. CALM-PPO is a reinforcement learning policy that makes this decision. For every bump it chooses how deeply to slow down, and the car then eases off before the bump and speeds up again after it.

The policy was trained in simulation, with a half-car model of the vehicle's vertical motion. Comfort is measured with the weighted vertical acceleration of ISO 2631-1, the standard measure of how strongly vibration is felt by a person. The simulator and the other planners that CALM compares against are in the CALM repository.

Files

File Content
PPO_final.zip The published policy
vecnormalize.pkl The scaling applied to the policy's inputs
policy.safetensors The same weights in a different, non-executable format
vecnormalize.json The same scaling as plain JSON
configs/ The settings the policy was trained with
seeds/ The four other training runs, each with the same four files

Use

The policy expects the CALM environment, so it is run through the CALM repository. Place the files in a run folder and evaluate on a scenario:

git clone --recurse-submodules https://github.com/CALM-Dataset/CALM
cd CALM
mkdir -p logs/models/PPO/calm_ppo
cp PPO_final.zip vecnormalize.pkl logs/models/PPO/calm_ppo/
calm eval calm_ppo --scenario c --render

The .zip and .pkl files are in the standard Stable-Baselines3 format. policy.safetensors and vecnormalize.json hold the same weights and scaling in plain formats, for tools that do not load Python pickles. To use them, copy both into the same folder and run calm eval calm_ppo policy.safetensors --scenario c --render.

Training

Training is counted in decisions, one per bump. The policy was trained for 20 000 decisions in four environments running in parallel. Training uses generated roads that get harder in four stages, moving on after 5 000, 10 000 and 15 000 decisions, and 60 % of the training roads are real speed bump crossings from CALM-Scenarios. 14 of the 105 qualified real roads were never used for training.

Training runs

Five policies were trained with identical settings and different random seeds, to check that the result does not depend on luck. For each road, the vibration of the policy's drive is compared with a constant-speed drive of the same duration. A value of -20 % means the policy's passengers feel 20 % less vibration. All values are simulated and averaged over roads; the last column is the average time the policy needs for a road.

Seed All 105 roads 14 roads not used in training 91 roads used in training Average trip time
68 -20.0 % -23.3 % -19.5 % 12.0 s
69 -19.7 % -21.8 % -19.3 % 11.9 s
70 -19.8 % -21.9 % -19.4 % 11.9 s
71 -20.2 % -23.3 % -19.7 % 12.0 s
72 -20.3 % -23.3 % -19.8 % 12.0 s

The five runs agree within 0.6 percentage points on all roads, and the roads not used in training do at least as well as the others. The published policy is one of these five runs; the other four are in seeds/.

License

CC BY-NC 4.0. Non-commercial use only. The policy was trained on roads derived from the CARD recordings, which include the non-commercial Italian data.

Citation

Please cite CALM and the CARD recordings the training roads come from.

@misc{calm_dataset,
  title  = {CALM: Comfort-Aware Longitudinal Motion Planning},
  author = {Mohammed El Said Azab Abdelazim},
  year   = {2026},
  url    = {https://huggingface.co/CALM-Dataset}
}
@inproceedings{elazab2025card,
  title     = {CARD: A Multi-Modal Automotive Dataset for Dense 3D Reconstruction in Challenging Road Topography},
  author    = {Elazab, Gasser and Neuhaus, Frank and Ko{\ss}, Tilman and Splietker, Malte and Date, Aditya and Unterreiner, Michael and Jansen, Maximilian and Hellwich, Olaf},
  booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
  year      = {2026},
  eprint    = {2605.05014},
  archivePrefix = {arXiv}
}
Downloads last month
241
Video Preview
loading

Paper for CALM-Dataset/CALM-PPO