Skip to main content

CommonRoad

PyPI pyversions Linux Windows macOS PyPI version fury.io PyPI download month PyPI download week PyPI license

Numerical experiments for motion planning of road vehicles require numerous ingredients: vehicle dynamics, a road network, static obstacles, dynamic obstacles and their movement over time, goal regions, a cost function, etc. Providing a description of the numerical experiment precise enough to reproduce it might require several pages of information. Thus, only key aspects are typically described in scientific publications, making it impossible to reproduce results - yet, reproducibility is an important asset of good science.

Composable benchmarks for motion planning on roads (CommonRoad) are proposed so that numerical experiments are fully defined by a unique ID; all required information to reconstruct the experiment can be found on commonroad.in.tum.de. Each benchmark is composed of a vehicle model, a cost function, and a scenario (including goals and constraints). The scenarios are partly recorded from real traffic and partly hand-crafted to create dangerous situations. Solutions to the benchmarks can be uploaded and ranked on the CommonRoad Website. Learn more about the scenario specification here.

commonroad-io

The commonroad-io package provides methods to read, write, and visualize CommonRoad scenarios and planning problems. Furthermore, it can be used as a framework for implementing motion planning algorithms to solve CommonRoad Benchmarks and is the basis for other tools of the CommonRoad Framework. With commonroad-io, those solutions can be written to xml-files for uploading them on commonroad.in.tum.de.

This commonroad-io version is compatible with CommonRoad scenarios in version 2020a and supports reading 2018b scenarios.

The software is written in Python and tested on Linux for the Python 3.9, 3.10, 3.11, 3.12, and 3.13.

Documentation

The full documentation of the API and introducing examples can be found under https://cps.pages.gitlab.lrz.de/commonroad/commonroad-io/.

For getting started, we recommend our tutorials.

Additional Tools

Based on commonroad-io, we have developed a list of tools supporting the development of motion-planning algorithms:

Requirements

The required dependencies for running commonroad-io are:

  • numpy>=1.13
  • scipy>=1.5.2
  • shapely>=2.0.1
  • matplotlib>=2.2.2
  • lxml>=4.2.2
  • networkx>=2.2
  • Pillow>=7.0.0
  • commonroad-vehicle-models>=2.0.0
  • rtree>=0.8.3
  • protobuf==3.20.1

Installation

commonroad-io can be installed with::

pip install commonroad-io

Alternatively, clone from our gitlab repository::

git clone https://gitlab.lrz.de/tum-cps/commonroad_io.git

and add the folder commonroad-io to your Python environment.

Changelog

A detailed overview about the changes in each version is provided in the Changelog.

Authors

Contribution (in alphabetic order by last name): Yannick Ballnath, Behtarin Ferdousi, Luis Gressenbuch, Moritz Klischat, Markus Koschi, Sebastian Maierhofer, Stefanie Manzinger, Christina Miller, Christian Pek, Anna-Katharina Rettinger, Simon Sagmeister, Moritz Untersperger, Murat Üste, Xiao Wang

Credits

We gratefully acknowledge partial financial support by

  • DFG (German Research Foundation) Priority Program SPP 1835 Cooperative Interacting Automobiles
  • BMW Group within the Car@TUM project
  • German Federal Ministry of Economics and Technology through the research initiative Ko-HAF

Citation

If you use our code for research, please consider to cite our paper:

@inproceedings{Althoff2017a,
	author = {Althoff, Matthias and Koschi, Markus and Manzinger, Stefanie},
	title = {CommonRoad: Composable benchmarks for motion planning on roads},
	booktitle = {Proc. of the IEEE Intelligent Vehicles Symposium},
	year = {2017},
	pages={719-726},
	abstract = {Numerical experiments for motion planning of road vehicles require numerous components: vehicle
	            dynamics, a road network, static obstacles, dynamic obstacles and their movement over time, goal
	            regions, a cost function, etc. Providing a description of the numerical experiment precise enough to
	            reproduce it might require several pages of information. Thus, only key aspects are typically described
	            in scientific publications, making it impossible to reproduce results—yet, re- producibility is an
	            important asset of good science. Composable benchmarks for motion planning on roads (CommonRoad) are
	            proposed so that numerical experiments are fully defined by a unique ID; all information required to
	            reconstruct the experiment can be found on the CommonRoad website. Each benchmark is composed by a
	            vehicle model, a cost function, and a scenario (including goals and constraints). The scenarios are
	            partly recorded from real traffic and partly hand-crafted to create dangerous situations. We hope that
	            CommonRoad saves researchers time since one does not have to search for realistic parameters of vehicle
	            dynamics or realistic traffic situations, yet provides the freedom to compose a benchmark that fits
	            one’s needs.},
}

Release files for commonroad-io 2026.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for commonroad-io 2026.1
File Size Uploaded
commonroad_io-2026.1.tar.gz 2.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for commonroad-io 2026.1
File Interpreter ABI Platform
commonroad_io-2026.1-py3-none-any.whl Python 3 none any Details

Total release size: 4.6 MB

Release files / commonroad_io-2026.1.tar.gz

Download URL commonroad_io-2026.1.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
fe0297cb5eea04c003fc44ea5acebfe00cae7e7f3913b4939f185303d324e651
BLAKE2b-256 checksum
How to use checksums
3489baf49b0acbfae2225840995af0588cec266d670f6a2268c405ac7e6fa921
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.13.13 Linux/5.15.0-87-generic

Release files / commonroad_io-2026.1-py3-none-any.whl

Download URL commonroad_io-2026.1-py3-none-any.whl
Size 2.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6f138197081c83884dcca4a0627444552e4e0be66ee9158a88cf69f1bcbe40f5
BLAKE2b-256 checksum
How to use checksums
0d23b6158c0aff647f12b938a5afb2a11a93c7c0ae06d5883249c6e4ee378e7b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.13.13 Linux/5.15.0-87-generic

Release history Release notifications | RSS feed

This release

2026.1 This release

2 release files

2024.3

2 release files

2024.2

2 release files

2024.1

2 release files

2023.4

2 release files

2023.3

2 release files

2023.2

2 release files

2022.3

2 release files

2021.4

2 release files

2021.3

2 release files

2021.1

2 release files

2020.3

2 release files

2020.2

2 release files

2019.2

2 release files

2019.1

2 release files

2018.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page