P. Zhao, A. Lakshmanan, K. Ackerman, A. Gahlawat, M. Pavone, and N. Hovakimyan, “Tube-certified trajectory tracking for nonlinear systems with robust control contraction metrics,” IEEE Robotics and Automation Letter, 2022. arXiv:2109.04453.
- YALMIP + Mosek solver for search of CCM or robust CCM (RCCM) using sum of squares (SOS) relaxation.
- SPOTLESS also needed for CCM/RCCM synthesis for the 3D quadrotor example
- OptimTraj for planning trajectories.
- OPTI + Matlab
fmincon
slover for solving the nonlinear programming (NLP) problem associated with geodesic computation. - MPT3 for quadrotor simulation and visualization.
For each example,
- Run
main.m
under themetric
folder to design the CCM/RCCM controller. - Run
main.m
under thesim
folder to simulate the behavior of the system under a CCM/RCCM controller. - Accelerate the geodesic and control law computation by generating C codes with
generate_code_for_geodesic_cal.m
.
SOS programming seems not reliable for CCM/RCCM synthesis for high dimensional systems (e.g., a 3D quadrotor). If you struggle in getting a CCM/RCCM for your system using SOS programming, you can try gridding the state space and solving an LMI problem instead, as I did for the quadrotor example.
If you use the codes in your paper, please cite the following paper
@article{zhao2022tube,
title={Tube-certified trajectory tracking for nonlinear systems with robust control contraction metrics},
author={Zhao, Pan and Lakshmanan, Arun and Ackerman, Kasey and Gahlawat, Aditya and Pavone, Marco and Hovakimyan, Naira},
journal={IEEE Robotics and Automation Letters},
volume={7},
number={2},
pages={5528--5535},
year={2022},
publisher={IEEE}
}