Embedded control software plays a significant role in many life-critical applications, e.g. flight control system. These software controllers have the responsibility of controlling physical quantities (e.g. altitude), via feedback loops using which physical and computational components interact with each other. However, there is a large semantic gap between control algorithms – making idealistic assumptions on the implementation platform (e.g. zero communication delay) – and their actual implementation on concrete platforms. This coupled with the heterogeneous nature of the interaction between the physical world (continuous) and the computational platform (discrete), results in ad-hoc and error-prone solutions. Despite a number of developments in the area of hybrid systems, a large portion of design costs today is still consumed with validation efforts.
This project proposes a new paradigm in which the controller code is automatically synthesized from high-level correctness requirements while taking into account the features of the computational platforms. Requirements for modern applications go beyond conventional ones in control theory (e.g. stability) and beyond conventional protocol design in computer science. To address this, we bring together an interdisciplinary team of a control theorist, a computer scientist, and a real-time embedded systems designer, and use a unified methodology for automatic, platform-aware, controller synthesis. This project unifies techniques from computer science, control theory, and the domain of real-time embedded systems to synthesize control software in a reliable and yet cost-effective way.