Package: commonroad-io
CommonRoadNumerical 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 oncommonroad.in.tum.de.
Each benchmark is composed of avehicle model,
acost function,
and ascenario(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 specificationhere.commonroad-ioThe 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 oncommonroad.in.tum.de.commonroad-io 2023.4 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.8, 3.9, 3.10, 3.11 and 3.12.DocumentationThe full documentation of the API and introducing examples can be found undercommonroad.in.tum.de.For getting started, we recommend ourtutorials.Additional ToolsBased on commonroad-io, we have developed a list of tools supporting the development of motion-planning algorithms:Drivability CheckerCommonRoad-SUMO InterfaceScenario DesignerVehicle ModelsDateset ConvertersInteractive ScenariosApollo InterfaceRequirementsThe required dependencies for running commonroad-io are:numpy>=1.13scipy>=1.5.2shapely>=2.0.1matplotlib>=2.2.2lxml>=4.2.2networkx>=2.2Pillow>=7.0.0commonroad-vehicle-models>=2.0.0rtree>=0.8.3protobuf==3.20.1Installationcommonroad-io can be installed with::pip install commonroad-ioAlternatively, clone from our gitlab repository::git clone https://gitlab.lrz.de/tum-cps/commonroad_io.gitand add the folder commonroad-io to your Python environment.ChangelogCompared to version 2023.3, the following features have been added or changed:AddedFunction to convert 3D scenarios to 2D scenariosSupport for Python 3.12Function to retrieve all lanelets referencing a given traffic sign/lightNew line marking typesTraffic light shapeFixedConversion to initial state in function create_dynamic_obstacle of solution objectChangedTraffic signs for Zamunda now use images of German traffic signsCode formatting (flake8, black, isort)RemovedImages for Zamunda traffic signsFunction commonorad.common.util.interpolate_angleAuthorsContribution (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 WangCreditsWe gratefully acknowledge partial financial support byDFG (German Research Foundation) Priority Program SPP 1835 Cooperative Interacting AutomobilesBMW Group within the Car@TUM projectGerman Federal Ministry of Economics and Technology through the research initiative Ko-HAFCitationIf 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.},
}