Skip to content

Python Code for the Lecture Decision-Making and Motion Planning for Automated Driving at KIT

uv Ruff GitHub CI License

This repository contains the python code for the lecture Decision-Making and Motion Planning for Automated Driving at KIT. It is targeted towards both, exemplifying the content of the lecture, and giving a brief introduction to software development. (Please bare with us, the code is largely ported from matlab.)

An API documentation for new parts of the code and exemplary jupyter notebooks can be found in the documentation.

Preparing the environment

We use uv as package and project manager. Having uv installed, run

# clone this repo
git clone https://github.com/KIT-MRT/behavior_generation_lecture_python.git

# change into the repo folder
cd behavior_generation_lecture_python

# set up a virtual env and install the requirements
uv sync
Making uv kernels available to jupyter?
  • create a kernel uv run ipython kernel install --user --name=behavior_generation_lecture
  • run jupyter uv run --with jupyter jupyter lab and chose kernel behavior_generation_lecture in the browser

Structure

The structure of this repo is inspired by the PyPA sample project.

  • src contains the modules, which is the core implementation, at best browsed in your favorite IDE
  • tests contains unittests, at best browsed in your favorite IDE
  • scripts contains scripts that depict exemplary usage of the implemented modules, they can be run from the command line
  • notebooks contains jupyter notebooks, that can be browsed online, and interactively be run using jupyter

Contribution

Feel free to open an issue if you found a bug or have a request. You can also contribute to the lecture code yourself: Just fork this repository and open a pull request.

License

Unless otherwise stated, this repo is distributed under the 3-Clause BSD License, see LICENSE.