Table of Contents
Fetching ...

TRUST: Stability and Safety Controller Synthesis for Unknown Dynamical Models Using a Single Trajectory

Jamie Gardner, Ben Wooding, Amy Nejati, Abolfazl Lavaei

TL;DR

TRUST addresses stability and safety for unknown dynamical systems by enabling data-driven controller synthesis from a single persistently excited trajectory, leveraging Willems' fundamental lemma to avoid explicit model identification. It formulates CLF and CBC synthesis as SOS and SDP problems across four system classes: $ct$-$NPS$, $ct$-$LS$, $dt$-$NPS$, and $dt$-$LS$, outputting the corresponding certificate and its controller. The tool is implemented as an open-source Python/Flask web app (with a Docker option) and demonstrated on physical benchmarks, showing fast solution times for linear systems and SOS-based computation for nonlinear ones. This work provides a practical, model-free pathway for ensuring stability or safety in safety-critical domains, enabling users to operate without full system models, and outlines future extensions to broader nonlinearities and stochastic dynamics.

Abstract

TRUST is an open-source software tool developed for data-driven controller synthesis of dynamical systems with unknown mathematical models, ensuring either stability or safety properties. By collecting only a single input-state trajectory from the unknown system and satisfying a rank condition that ensures the system is persistently excited according to the Willems et al.'s fundamental lemma, TRUST aims to design either control Lyapunov functions (CLF) or control barrier certificates (CBC), along with their corresponding stability or safety controllers. The tool implements sum-of-squares (SOS) optimization programs solely based on data to enforce stability or safety properties across four system classes: (i) continuous-time nonlinear polynomial systems, (ii) continuous-time linear systems, (iii) discrete-time nonlinear polynomial systems, and (iv) discrete-time linear systems. TRUST is a Python-based web application featuring an intuitive, reactive graphic user interface (GUI) built with web technologies. It can be accessed at https://trust.tgo.dev or installed locally, and supports both manual data entry and data file uploads. Leveraging the power of the Python backend and a JavaScript frontend, TRUST is designed to be highly user-friendly and accessible across desktop, laptop, tablet, and mobile devices. We apply TRUST to a set of physical benchmarks with unknown dynamics, ensuring either stability or safety properties across the four supported classes of models.

TRUST: Stability and Safety Controller Synthesis for Unknown Dynamical Models Using a Single Trajectory

TL;DR

TRUST addresses stability and safety for unknown dynamical systems by enabling data-driven controller synthesis from a single persistently excited trajectory, leveraging Willems' fundamental lemma to avoid explicit model identification. It formulates CLF and CBC synthesis as SOS and SDP problems across four system classes: -, -, -, and -, outputting the corresponding certificate and its controller. The tool is implemented as an open-source Python/Flask web app (with a Docker option) and demonstrated on physical benchmarks, showing fast solution times for linear systems and SOS-based computation for nonlinear ones. This work provides a practical, model-free pathway for ensuring stability or safety in safety-critical domains, enabling users to operate without full system models, and outlines future extensions to broader nonlinearities and stochastic dynamics.

Abstract

TRUST is an open-source software tool developed for data-driven controller synthesis of dynamical systems with unknown mathematical models, ensuring either stability or safety properties. By collecting only a single input-state trajectory from the unknown system and satisfying a rank condition that ensures the system is persistently excited according to the Willems et al.'s fundamental lemma, TRUST aims to design either control Lyapunov functions (CLF) or control barrier certificates (CBC), along with their corresponding stability or safety controllers. The tool implements sum-of-squares (SOS) optimization programs solely based on data to enforce stability or safety properties across four system classes: (i) continuous-time nonlinear polynomial systems, (ii) continuous-time linear systems, (iii) discrete-time nonlinear polynomial systems, and (iv) discrete-time linear systems. TRUST is a Python-based web application featuring an intuitive, reactive graphic user interface (GUI) built with web technologies. It can be accessed at https://trust.tgo.dev or installed locally, and supports both manual data entry and data file uploads. Leveraging the power of the Python backend and a JavaScript frontend, TRUST is designed to be highly user-friendly and accessible across desktop, laptop, tablet, and mobile devices. We apply TRUST to a set of physical benchmarks with unknown dynamics, ensuring either stability or safety properties across the four supported classes of models.

Paper Structure

This paper contains 17 sections, 12 theorems, 59 equations, 10 figures, 2 tables, 8 algorithms.

Key Result

lemma 1

Let $Q(x)$ be a $(T\times N)$ matrix polynomial such that with $\mathcal{N}_{0}^c$ as in new8 being an $(N\times T)$ full row-rank matrix. If one synthesize $u=K(x)\mathcal{M}(x) = \mathcal{U}_{0}^cQ(x)\mathcal{M}(x)$, then the closed-loop system $\dot{x}=A\mathcal{M}(x)+Bu$ has the following data-based representation:

Figures (10)

  • Figure 1: TRUST GUI with numbered annotations indicating respective sections.
  • Figure 2: Data-driven design of CLF and stability controller for ct-NPS
  • Figure 3: Data-driven design of CBC and safety controller for ct-LS
  • Figure 4: Data-driven design of CLF and stability controller for ct-LS
  • Figure 5: Data-driven design of CBC and safety controller for dt-NPS
  • ...and 5 more figures

Theorems & Definitions (16)

  • definition 1
  • lemma 1: Data-based Representation of ct-NPS guo2020learningnejati2022data
  • theorem 1: Data-Driven CBC for ct-NPS nejati2022data
  • lemma 2: Data-Driven SOS Reformulation of CBC for ct-NPS nejati2022data
  • Remark 1
  • theorem 2: Data-Driven CLF for ct-NPS guo2020learning
  • lemma 3: Data-based Representation of ct-LS de2019formulas
  • theorem 3: Data-Driven CBC for ct-LS wang2024convex
  • theorem 4: Data-Driven CLF for ct-LS de2019formulas
  • definition 2: dt-NPS
  • ...and 6 more