This repository builds upon the Frenet trajectory planning algorithm provided by Frenetix and extends it with pedestrian-aware motion planning capabilities. It introduces enhancements to integrate pedestrian interactions directly into the planning process, aiming to improve trajectory safety and efficiency in scenarios with vulnerable road users.
Click to expand
The Frenetix - Occlusion Aware Motion Planner is a modular framework that combines the Frenetix trajectory planning algorithm with occlusion-aware motion planning. The framework is designed to provide a comprehensive solution for motion planning in complex, occluded urban environments. It integrates the following key components:

Click to expand
The software is developed and tested on recent versions of Linux. We strongly recommend using Ubuntu 22.04 or higher. For the Python installation, we suggest the usage of Virtual Environment with Python 3.12, Python 3.11, or Python 3.10. For the development IDE, we suggest PyCharm.
Make sure that the following dependencies are installed on your system for the C++ implementation:
- Eigen3:
sudo apt-get install libeigen3-dev
- Boost:
sudo apt-get install libboost-all-dev
- OpenMP:
sudo apt-get install libomp-dev
- Python Development Tools:
sudo apt-get install python3.11-full python3.11-dev
git clone <repository-url>
cd <repository-folder>
python3.11 -m venv venv
source venv/bin/activate
Alternatively, you can install the project's requirements using pip:
pip install .
Frenetix should be installed automatically. If not, please contact Korbinian Moller.
4. Optional: Download additional scenarios here.
Click to expand
-
Do the Requirements & Pre-installation Steps.
-
Change Settings in
main.py
if needed. Note that not all configuration combinations may work. -
Adapt configurations if needed: You can find them in
configurations/frenetix_motion_planner
andconfigurations/simulation
. -
Run Frenetix - Occlusion Aware Motion Planner:
python3 main.py
-
Change occlusion aware motion planning settings in
configurations/simulation/occlusion
if needed
Click to expand
Additional scenarios can be found here.
Click to expand
Detailed documentation of the functionality behind the single modules can be found below:
Click to expand
Korbinian Moller, Professorship Autonomous Vehicle Systems, School of Engineering and Design, Technical University of Munich, 85748 Garching, Germany
Johannes Betz, Professorship Autonomous Vehicle Systems, School of Engineering and Design, Technical University of Munich, 85748 Garching, Germany
Click to expand
If you use this repository in your research, please cite our related papers:
t.b.d
@ARTICLE{Frenetix2024,
author={Trauth, Rainer and Moller, Korbinian and Würsching, Gerald and Betz, Johannes},
journal={IEEE Access},
title={FRENETIX: A High-Performance and Modular Motion Planning Framework for Autonomous Driving},
year={2024},
volume={12},
number={},
pages={127426-127439},
keywords={Trajectory;Planning;Trajectory planning;Heuristic algorithms;Vehicle dynamics;Autonomous vehicles;Machine learning algorithms;Collision avoidance;Autonomous vehicles;collision avoidance;trajectory planning},
doi={10.1109/ACCESS.2024.3436835}}