Koala

Koala - Configurations d’environnements fog large-échelle
Coordinateur : Monsieur Clément Quinton, Maître de conférences, Université de Lille CRIStAL

Équipe : Spirals du Groupe Thématique : GL.

Partenaire : CRIStAL.

JCJC - Jeunes chercheuses et jeunes chercheurs

Dates : 03/20 - 08/23

Résumé :

Récemment, le fog computing est devenu une tendance majeure dans le domaine des systèmes distribués large-échelle. Ce paradigme permet de faire cohabiter des services de cloud computing avec des équipements IoT, donnant ainsi lieu à un environnement hautement configurable où services et équipements interagissent et évoluent continuellement. Les bénéfices sont évidents : en capitalisant sur les avantages des deux domaines, un environnement fog peut fournir d’énormes capacités de calcul tirées du cloud et les coupler à la sensibilité au contexte des équipements IoT. Mais de tels systèmes couvrent généralement différents domaines d’application et sont physiquement distribués dans l’espace, créant ainsi des dépendances entre les domaines, les plateformes et les services, les rendant difficiles à configurer et à faire évoluer. Raisonner sur les configurations d’un environnement si variable, distribué et hétérogène de manière systématique et automatisée est une tâche complexe et exigeante. De plus, les configurations d’un fog ne sont pas immuables puisque sa structure évolue au cours du temps, des nœuds pouvant être ajoutés, supprimés ou mis à jour régulièrement. Le système doit donc continuellement s’adapter à des conditions d’exécution imprévisibles et en constante évolution.

Ce projet a donc pour objectif de fournir un ensemble d’outils, de méthodes et de logiciels innovants pour gérer la complexité inhérente aux configurations et adaptations des environnements de fog computing. Il vise notamment à proposer des solutions aux limites des approches actuelles (e.g., manque d’expressivité et de passage à l’échelle) en plaçant la connaissance comme élément central du projet. Nous prévoyons ainsi de nous attaquer aux problèmes de configuration en utilisant de récentes avancées dans le domaine de la compilation de connaissance. Nous étudierons notamment quelle est la meilleure représentation d-DNNF en fonction du raisonnement à effectuer et nous envisageons de fournir de nouveaux mécanismes de modélisation de la variabilité (e.g., dimensions, priorités et cadre) nécessaires dans le contexte d’un fog. Concernant les adaptations, nous voulons tirer profit des techniques d’apprentissage pour améliorer la gestion et l’évolution de l’adaptation en cas d’incertitude, en s’appuyant sur une base de connaissance réutilisable et continuellement enrichie.
Nous développerons notamment une approche qui suggèrera des scenarios d’évolution de manière prédictive, en analysant une base de connaissance évolutive enrichie à l’exécution grâce à l’apprentissage.

Bien que Koala sera étudié et validé sur des environnements de fog computing, les résultats obtenus auront un impact plus large puisqu’ils pourront être appliqués à n’importe quel contexte sociétal dans lequel des systèmes logiciels distribués hétérogènes doivent s’adapter au cours de leur exécution. Un large panel de domaines peut donc bénéficier des approches développées dans Koala, tels les transports (voitures autonomes), la santé (bâtiments et maisons intelligents qui peuvent adapter la configuration de leurs équipements, e.g., en présence de personnes handicapées) l’environnement (adapter le système logiciel de manière à toujours exécuter la configuration la moins énergivore), etc. L’utilisation de telles approches peut aussi avoir un impact économique, puisque adapter le système afin d’éviter des pannes logicielles permet également d’éviter des pannes matérielles, et donc de réduire les dépenses.

Abstract

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.