In the previous lecture we learned how to discover Lyapunov functions from data. In this lecture we take this further by employing control Lyapunov function methods to discover optimal controllers directly from data. The method relies on sum-of-squares programming and extended dynamic mode decomposition again with the aim of learning state-dependent closed-loop controllers to stabilize equilibria of control-affine systems. We demonstrate the method on the inverted pendulum on a cart using MATLAB.
Coding demonstration in MATLAB comes from pend_control.m here: https://github.com/jbramburger/DataDrivenDynSyst/tree/main/Data-Driven%20Polynomial%20Optimization
Download YALMIP here: https://yalmip.github.io/download/
Download MOSEK here: https://www.mosek.com/downloads/
Get the full details on the method and implementation here: https://arxiv.org/abs/2307.01089
Get the book here: https://epubs.siam.org/doi/10.1137/1.9781611978162
Scripts and notebooks to reproduce all examples: https://github.com/jbramburger/DataDrivenDynSyst
This book provides readers with:
- methods not found in other texts as well as novel ones developed just for this book;
- an example-driven presentation that provides background material and descriptions of methods without getting bogged down in technicalities;
- examples that demonstrate the applicability of a method and introduce the features and drawbacks of their application; and
- a code repository in the online supplementary material that can be used to reproduce every example and that can be repurposed to fit a variety of applications not found in the book.
More information on the instructor: https://hybrid.concordia.ca/jbrambur/
Follow @jbramburger7 on Twitter for updates.