Recently, fog computing has become a major trend in the area of large-scale distributed systems. This paradigm promotes the seamless integration of cloud computing services and IoT devices, resulting in a highly configurable environment where services and devices interact together and evolve over time. The benefits are obvious: by leveraging the strengths of both sides, a fog environment can provide huge computational capabilities from the cloud, combined with context-awareness of IoT devices. But such systems are likely to be distributed across different application domains and geographical locations, creating hidden dependencies across domains, platforms and services, making them difficult to configure and evolve. Capturing and reasoning on the configurations of such a variable, distributed and heterogeneous environment in a systematic and automated way is a complex, heavy and challenging task. Moreover, fog configurations are not meant to be immutable since the structure of the fog system evolves over time, with nodes being added, removed or updated on a regular basis. With the changing nature of cloud and IoT environments, the running configuration continuously has to adapt to its evolving and uncertain operating conditions.
This project thus aims to deliver a series of innovative tools, methods and software to deal with the complexity of fog computing environments configurations and adaptations. In particular, we take a step back on the current limitations of existing approaches (e.g., lack of expressiveness and scalability) and address them placing knowledge as a first-class citizen. We plan to tackle configuration issues from a novel perspective in the field of variability management, using recent techniques from the area of knowledge compilation. Specifically, we will investigate the best-suited d-DNNF representation for each reasoning operation, and we plan to provide new variability modeling mechanisms (e.g., dimensions, priorities and scopes) required in a fog context. Regarding adaptation concerns, we want to leverage machine learning techniques to improve adaptation management and evolution under uncertainty, relying on a continuously enriched and reusable knowledge base. In particular, we plan to propose an approach for suggesting evolution scenarios in a predictive manner, relying on an evolution-aware knowledge base acquired at run-time through machine learning feedback.
Although Koala will be validated on fog computing environments, its outcomes are of much wider relevance, as the techniques developed are applicable to any context in society where heterogeneous distributed software systems have to adapt continuously while running. A wide range of domains may thus benefit from the approaches provided by Koala, such as transportation (autonomous cars), health (smart building and houses that can adapt their equipment configurations, e.g., in presence of disabled persons), environment (adapting software systems to continuously run the less energy-consuming configuration), etc. It may even have a financial impact, since preventing software failures by adapting the system also means preventing hardware failures, and thus cost reduction.
Monsieur Clément QUINTON (Centre de Recherche en Informatique, Signal et Automatique de Lille)
The author of this summary is the project coordinator, who is responsible for the content of this summary. The ANR declines any responsibility as for its contents.
CRIStAL Centre de Recherche en Informatique, Signal et Automatique de Lille
Help of the ANR 183,708 euros
Beginning and duration of the scientific project: December 2019 - 42 Months