bench mark codes for VO, truncated VO, RVO and ORCA Side-by-side benchmark of VO / τ-VO / RVO / ORCA collision avoidance algorithms, visualised in a 2×2 animated plot.
pip install numpy scipy matplotlib pyyaml
pip install osqp # optional but recommended (faster QP solver for ORCA)
sudo apt install ffmpeg # optional, required for .mp4 exportpython3 run.py # default: circular, 4 agents
python3 run.py --scenario frp --n 6 --seed 42
python3 run.py --scenario headon
python3 run.py --save result.gif
python3 run.py --save result.mp4 # requires ffmpegSettings are loaded from config.yaml automatically. CLI args override it.
scenario: circular # circular | frp | headon
n_agents: 4
radius: 5.0 # initial circle radius [m]
v_pref: 1.0 # preferred speed [m/s]
r: 0.5 # agent collision radius [m]
tau: 5.0 # time horizon [s]
dt: 0.05 # timestep [s]
n_steps: 400
n_samples: 40 # velocity candidate grid size for VO/τ-VO/RVO
interval_ms: 60 # animation frame interval [ms]
cone_scale: 0.9 # forbidden region overlay scale
seed: 0