Skip to main content

Python tool to read, write, and visualize CommonRoad scenarios and solutions for automated vehicles.

Project description

CommonRoad

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.

CommonRoad_io 2020.2 is compatible with CommonRoad scenario in version 2020a and supports reading 2018b scenarios.

The software is written in Python 3.6 and tested on MacOs and Linux. The usage of the Anaconda Python distribution is strongly recommended.

Documentation

The full documentation of the API and introducing examples can be found under commonroad.in.tum.de.

For getting started, we recommend our tutorials.

Additional Tools

Based on CommonRoad_io, we have developed a list of tools for implementing motion-planning algorithms:

Requirements

The required dependencies for running CommonRoad_io are:

  • numpy>=1.13

  • shapely>=1.6.4

  • matplotlib>=2.2.2

  • lxml>=4.2.2

  • networkx>=2.2

  • Pillow>=7.0.0

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

Compared to version 2020.1, the following features were added:

  • new tags for compatibility with 2018b XML format

  • new lanelet types: unknown and interstate

  • traffic signs are not visualized by default

  • various small bug fixes

Compared to version 2019.2, the following features were added:

  • support of 2020a Scenarios with TrafficLights, TrafficSigns, and Intersection objects

  • SignalStates store information on turn lights, horn, hazard lights, and blue lights of DynamicObstacles

  • a SolutionReader can now read solution files generated by the CommonRoadSolutionReader

  • a new Solution object simplifies creating solution xml files and automatically checks the validity of benchmark IDs

  • the old commonroad.common.solution_writer.CommonRoadSolutionWriter is deprecated and replaced by commonroad.common.solution.CommonRoadSolutionWriter

  • the CommonRoadSolutionWriter can directly write computation times and the CPU model into the solution file

  • the GeoTransformation object stores location and transformation information for lanelet networks extracted from the real world

  • the visualization is improved and now supports legends

  • various small bug fixes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

commonroad-io-2020.2.tar.gz (568.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

commonroad_io-2020.2-py3-none-any.whl (650.9 kB view details)

Uploaded Python 3

File details

Details for the file commonroad-io-2020.2.tar.gz.

File metadata

  • Download URL: commonroad-io-2020.2.tar.gz
  • Upload date:
  • Size: 568.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7

File hashes

Hashes for commonroad-io-2020.2.tar.gz
Algorithm Hash digest
SHA256 5fa1111311b36aa9e67222f8e21d025d4db56ccbd1b7ac55b85a3cb77a868aad
MD5 c403e5fbf39cde137fe1c912a41c8e4d
BLAKE2b-256 04cfcbb17c8576c744e015816d4784f44f46d9e407efc1ddee1c41fce8c0488a

See more details on using hashes here.

File details

Details for the file commonroad_io-2020.2-py3-none-any.whl.

File metadata

  • Download URL: commonroad_io-2020.2-py3-none-any.whl
  • Upload date:
  • Size: 650.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7

File hashes

Hashes for commonroad_io-2020.2-py3-none-any.whl
Algorithm Hash digest
SHA256 91cbfbf2a83efe982f5c897e786039f922f2e1f67c49112192a65b6fef8becab
MD5 1e155945e0160328e32a36fab10c249c
BLAKE2b-256 f9777253131eeb570fa88915edf901835943fbab43f5e88490acf98666cf08d5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page