Bandits contextuels et combinatoires pour l’élasticité à froid des applications Web dans le Cloud
Auteur / Autrice : | David Delande |
Direction : | Patricia Stolf, Jean-Marc Pierson, Raphaël Féraud |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique et télécommunications |
Date : | Soutenance le 25/09/2024 |
Etablissement(s) : | Université de Toulouse (2023-....) |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, informatique et télécommunications (Toulouse) |
Partenaire(s) de recherche : | Laboratoire : Institut de Recherche en Informatique de Toulouse (1995-....) |
Etablissement de délivrance connjointe : Université Toulouse 3 Paul Sabatier (1969-2024) | |
Jury : | Président / Présidente : Romain Rouvoy |
Rapporteur / Rapporteuse : Liva Ralaivola, Romaric Gaudel |
Mots clés
Résumé
Depuis l'avènement des microservices, les applications Web ont subi un découpage en composants de plus en plus avancé, composants qui peuvent maintenant être mis à jour de manière hebdomadaire voire quotidienne. Les techniques d'élasticité basées sur des modèles précalculés ou celles proposées par les fournisseurs de Cloud nécessitent dès lors des réajustements de plus en plus fréquents. Les agents d'apprentissage par renforcement ont démontré dans la littérature leur capacité à piloter l'élasticité du Cloud en capturant le modèle du comportement d'une application Web. Cependant, leur apprentissage passe systématiquement par des séquences chronophages d'interactions entre l'agent et l'environnement. Afin de répondre à cette contrainte de temps d'apprentissage, cette thèse se concentre principalement sur l'élasticité basée sur l'apprentissage par renforcement, d'une application Web à un ou plusieurs composants avec une recherche de capacité d'apprentissage à froid dans laquelle l'agent démarre sans aucune connaissance de l'environnement. Pour une application mono-composant, la première contribution est HSLinUCB, un algorithme réactif basé sur un bandit linéaire. Nous comparons cet algorithme face à l'état de l'art : Q-Learning, Deep Q-Learning et l'algorithme à base de seuil et démontrons, qu'en démarrage à froid sur un environnement réel, il réalise jusqu'à 7 fois moins d'erreurs que l'algorithme à base de seuil tout en allouant moins de ressources. Afin d'accélérer les évaluations algorithmiques, la seconde contribution est DBSAS, un simulateur basé sur un modèle génératif de Deep Learning construit uniquement à partir de l'observation des logs d'un environnement réel. Nous comparons DBSAS avec l'état de l'art des modèles génératifs de données tabulaires : les réseaux auto-encodeurs VAE, antagonistes GAN ou à base de diffusion. Nous démontrons que les modèles à base de VAE et de GAN ne réussissent pas à reproduire la dynamique de l'environnement et que les solutions à base de diffusion présentent des artefacts en phase de généralisation. DBSAS permet de produire de nouvelles données proches de la distribution des données de l'environnement réel et présente d'excellentes capacités de généralisation. L'aptitude à tromper des algorithmes de classification est également évaluée. Pour un environnement à un seul composant DBSAS est, selon le classifieur, soit supérieure aux VAE soit supérieure aux GAN. Pour un environnement microservices, DBSAS obtient des résultats équivalents aux modèles à base de diffusion. Pour chaque modèle génératif, nous évaluons la capacité d'un agent entraîné à froid sur le simulateur et déployé à chaud sur l'environnement réel. Les résultats des agents entraînés sur DBSAS dépassent ceux obtenus sur VAE et obtiennent les mêmes ou surpassent ceux sur les modèles à base de diffusion. La dernière contribution MS-HSLinUCB, est un ensemble d'algorithmes d'apprentissage par renforcement permettant de gérer l'élasticité des microservices de manière totalement centralisée jusqu'à une décentralisation complète. Pour les approches centralisées, ces algorithmes utilisent des bandits combinatoires et contextuels et, pour les approches décentralisées, des bandits contextuels égoïstes. Afin d'accélérer les phases exploratoires, une réduction de l'espace d'actions combinatoires est implémentée via l'observation du composant critique dans le chemin de communication. Pour les architectures comportant beaucoup de composants, ces algorithmes utilisent Neural-LinUCB Hybride ; une adaptation de l'algorithme NeuralLinUCB, pour les bandits structurés, et notamment pour les espaces d'actions combinatoires, avec ou sans un contexte observé. Nous comparons MS-HSLinUCB à l'état de l'art : Deep Q-Learning, Proximal Policy Optimisation PPO en démarrage à froid et l'algorithme à base de seuil. MS-HSLinUCB surpasse les résultats obtenus par PPO en réalisant 11 fois moins d'erreurs tout en allouant 1.5 fois moins de conteneurs.