This repository contains the implementations for the paper "Stabilization of Nonlinear Systems through Control Barrier Functions", accepted to IEEE CDC 2024.
The main idea is to leverage control barrier functions (CBFs) and a weaker notion of control Lyapunov functions (CLFs) to stabilize general nonlinear systems, even when a valid CLF is difficult to find or does not exist.
To run the code, you will need to install the following packages:
- Python 3.9: Official Python Website
- NumPy 1.26.0: NumPy Documentation
- CVXPY 1.4.1: CVXPY Documentation
- Matplotlib 3.5.3: Matplotlib Documentation
You can install the required packages using the following command:
pip install python==3.9 numpy==1.26.0 cvxpy==1.4.1 matplotlib==3.5.3
To reproduce the provided examples, follow these steps:
-
Clone the repository:
git clone https://github.com/KehanLong/CBF_Stabilization.git -
Navigate to the cloned repo:
cd CBF_Stabilization -
Run the provided examples:
python warm_up_CLF.py;python unicycle_CLF.py;python polynomial_systems_CLF.py;python inverted_pendulum_CLF.py.