Research

Activity reports for previous years, from 2014, when Ctrl-A was not yet a Project-Team, available here

and even before that, when we were a subgroup of Project-Team Sardes, from 2009 : there

Overall objectives

Objective: control support for autonomic computing

Ctrl-A is motivated by the observation that computing systems, large (data centers) or small (embedded), are more and more required to be adaptive to the dynamical fluctuations of their environments and workloads, evolutions of their computing infrastructures (mobile, shared, or subject to faults), or changes in application modes and functionalities. Their administration, traditionally managed by human system administrators, needs to be automated in order to be efficient, safe and responsive. Autonomic Computing 27 is the approach that emerged in the early 2000’s in distributed systems to answer that challenge, in the form of feedback loops for self-administration control. These loops address objectives like self-configuration (e.g. in service-oriented systems), self-optimization (resource consumption management e.g., energy), self-healing (fault-tolerance, resilience), self-protection (security and privacy).

Therefore, there is a pressing and increasing demand for methods and tools to design controllers for self-adaptive computing systems, that ensure quality and safety of the behavior of the controlled system. The critical importance of the quality of control on performance and safety in automated systems, in computing as elsewhere, calls for a departure from traditional approaches relying on ad hoc techniques, often empirical, unsafe and application-specific solutions.

The main objective of the Ctrl-A project-team is to develop a novel framework for model-based design of controllers in Autonomic Computing, exploiting techniques from Control Theory 26, particularly Discrete Event Systems 31, but also other forms. We want to contribute generic Software Engineering methods and tools for developers to design appropriate controllers for their particular reconfigurable architectures, software or hardware, and integrate them at middleware level. We want to improve concrete usability of techniques from Control Theory by specialists of computing systems 7, and to provide tool support for our methods in the form of specification languages and compilers, as well as software architectures.

We address policies for self-configuration, self-optimization (resource management, low power), self-healing (fault tolerance) and self-protection (security).

Last activity report : 2023