Cyber-physical systems: when the continuous meets the discrete
Cyber-physical systems are systems that include both physical and computerized components, with strong interactions between the two types of components. Examples of cyber-physical systems include: self-driving cars, Wireless Control Networks (where the controlling devices communicate through error-prone, physically constrained wireless channels), autonomous robots, smart medical devices, and many others.
A crucial aspect of cyber-physical systems is their hybrid behavior, resulting from the interaction of continuous dynamics (arising from physical processes) with discrete dynamics (arising from computerized processes). Classical control techniques generally focus on the study of systems with continuous variables, while other branches of mathematics and computer sciences (like graph theory or logic) focus on the study of systems with discrete variables. Unfortunately, these techniques are generally not usable for the study of systems with interdependent continuous and discrete variables. The study of cyber-physical systems thereby entails the development of new control and analysis techniques, combining tools from different branches of mathematics and computer sciences to deal with their hybrid behavior.
Formal verification: toward automatic, reliable analysis of systems
Cyber-physical systems are often involved in safety-critical applications (like self-driving cars, medical devices, Unmanned Aerial Vehicles, etc.). Therefore, it is important to provide formal guarantees that these system will work as intended. The goal of formal verification is to automatize the analysis of these systems in order to provide certificate that they are safe and/or optimal.
Formal verification techniques require a representation of the system that is amenable for computer processing. This generally involves a step of abstraction where the system is represented as a collection of smaller subsystems with simpler dynamics (like an automaton or a switched linear system). The drawback is that, to be accurate, the size of the abstraction generally grows very rapidly, especially with respect to the dimension of the system (this is the curse of dimensionality), so that these techniques are generally applicable only for systems of small dimension (typically smaller than ten).
Data-driven analysis: learning cyber-physical system solutions from data
The principle of data-driven analysis and control is to study the properties and provide solutions for the control of cyber-physical systems by relying on data harvested from the observation of the trajectories of the system. There are several motivations for doing this:
The model of the system is not accessible (as for proprietary systems), or is too complex to be modeled, or is best described with data harvested from observations than with a rigid, closed-form model (as for systems interacting with humans);
Hybrid system analysis and control is in general very hard, so that having a model of the system does not always help to provide efficient solutions for the study of these systems;
Data sometimes come in huge quantities: e.g., harvested from observations, training or simulations.
Data-driven study of cyber-physical systems includes, but is not restricted to, hybrid system identification, data-driven stability analysis, data-driven controller design and data-driven abstraction of cyber-physical systems. All the related control problems are known to be very hard in general, so that the solutions are often partial and rely on heuristics. Moreover, the learned solution depends on the collected data, so that in general only probabilistic guarantees on the effectiveness of the solution can be provided.
Mathematical and algorithmic tools
Convex and conic optimizationSee cheatsheet here.
Polynomial optimizationSee cheatsheet here.
Lyapunov analysisSee cheatsheet here.
[To be continued]