This repository contains a fast, C++ implementation of the Frenet Optimal Trajectory algorithm with a Python wrapper. It is used as one of the motion planning models in pylot, an erdos project.
Reference Papers:
- Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame
- Optimal trajectory generation for dynamic street scenarios in a Frenet Frame
Some basic profiling of the code (same trajectory as demo, 10 obstacles) indicates the following expected performance:
Average Time: ~7 ms
Max Time: ~20 ms
git clone https://github.com/fangedward/frenet-optimal-trajectory-planner.git
./build.sh
There is a Python wrapper and C++ API. The Python wrapper is located in
FrenetOptimalTrajectory/fot_wrapper.py
and the C++ API is under
src/FrenetOptimalTrajectory/fot_wrapper.cpp
.
The following command will simulate a simple scenario to run the
FrenetOptimalTrajectory planning algorithm.
python3 FrenetOptimalTrajectory/fot.py