The traditional approach for the control of dynamical systems relies on the availability of a model describing the system to be controlled. Typically, a model is derived from first principles; however the feasibility of this strategy is threatened as the scope of controller design is expanding to increasingly complex domains. Alternatively, data can be used to identify a system's model when this is unavailable and challenging to derive from first principles. A pipeline for control design then becomes a two-step process: (i) use data to identify a model of the system, (ii) synthesize a controller for the identified model.
Recently, there has been a growing interest in exploring control strategies for unmodelled systems that directly leverage data in one-step approach, with the expectation that this will improve the efficiency and performance of the overall process. The interest for this direct approach to data-driven control was a consequence of the streak of successes of machine learning for tasks such as classification, image generation and token prediction. Such a remarkable progress by the machine learning community came at the price of formality: in fact, a true understanding of the drawbacks and limitations of this modeling approach is missing. While failures might pose a minor risk in some consumer applications, these become unacceptable and potentially life-threatening in control applications. The challenge for modern data-driven control is therefore to capitalize on these advancements while grounding any result in a formal framework, where performance metrics, robustness concerns and system-theoretic properties are all first-class citizens.
This thesis introduces a comprehensive approach for designing controllers from data. Specifically, it formalizes a methodology that yields closed-form and robust solutions for a variety of control problems. Traditional control problems are re-examined through a data-driven lens, from establishing a system's observability, to designing optimal controllers for network systems. In practical terms, given a desired control objective and (possibly) noisy data from the system, the desired control action can be determined by feeding the data directly into the proposed expression, bypassing system identification. The result of this approach is a straightforward controller design technique with formally characterizable robustness bounds.