Learner-verifier framework for synthesis of Control Barrier Functions (CBFs) for (nonlinear) control-affine systems.
We use a counterexample-guided inductive synthesis (CEGIS) approach to learn a CBF which is guaranteed to be valid.
The code is written in Python 3.10 and uses PyTorch for learning a CBF. We recommend using a virtual environment.
To install the required dependencies, run
pip install -r requirements.txt
We provide a simple example for a single-integrator system in
run_example.py
.
To run the example, run
python run_example.py
This is a research prototype, tailored for CBF and built on top of FOSSIL. Our implementation aims to refactor the original codebase and keep the minimal functionality required for CBF synthesis.
We invite to refer to the original codebase for synthesis of general Lyapunov certificates.