Signal Temporal Logic (STL) gives spatial-temporal specifications, but enforcing them in trajectory optimization is typically non-smooth and hard to solve.
We propose exact smooth reformulations, enabling off-the-shelf derivative-based solvers (e.g. SNOPT) without sub-optimality issues.
Tested on Python 3.10 / Ubuntu 22.04. To set up the environment, run:
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txtTo run MICP baselines, install Gurobi and set up an (academic) license.
To enable pre-commit hooks for code quality checks, run:
pre-commit installTo run the experiments, check out the folder experiments.
This work builds on the stlpy.
If you find this work useful, please consider citing:
@article{han2025exact,
title={Exact Smooth Reformulations for Trajectory Optimization Under Signal Temporal Logic Specifications},
author={Han, Shaohang and Verhagen, Joris and Tumova, Jana},
journal={arXiv preprint arXiv:2511.07375},
year={2025}
}