• Aucun résultat trouvé

Volet 2 : Adaptation de l’heuristique de Recherche Locale Itérée ou ILS

CHAPITRE 3 DÉMARCHES DE L’ENSEMBLE DU TRAVAIL DE RECHERCHE

3.2 Volet 2 : Adaptation de l’heuristique de Recherche Locale Itérée ou ILS

Les résultats issus du premier volet ont aussi démontré que, même dans le cas du modèle simplifié, CB_OPT, les instances pouvant être résolues de manière exacte sont de petite taille. En raison de la nature NP-complet du problème, le temps de calcul croît de manière exponentielle en fonction des entrées. L’ajout de contraintes de co-localisation n’a fait que complexifier la résolution où, en dehors du temps d’exécution élevé, il a été remarqué qu’en- viron 40% des instances n’ont pas pu être résolues de manière optimale, en raison des limites physiques de la machine utilisée. Compte tenu de la complexité du problème, trouver des so- lutions optimales pour les grands jeux de données résultera en une explosion combinatoire, où le temps d’exécution risque d’être excessivement long, et la puissance de calcul, insuffisante. Une manière efficace de contourner le problème serait d’utiliser des méthodes approchées, lesquelles permettraient d’obtenir des solutions de qualité en un temps polynomial. Tels sont les sujets de nos objectifs 4 et 5, où il est question de proposer une méthode de résolution basée sur les métaheuristiques et d’en évaluer les performances, en termes d’excellent com-

promis entre temps de calcul et pertinence des solutions, afin de résoudre les problèmes de placement de VMs, particulièrement pour les instances de grande taille. Ces deux objectifs ont été atteints dans le chapitre 5, lequel présente l’article intitulé « An Iterated Local Search Approach for Carbon Footprint Optimization in an InterCloud Environment ».

3.2.1 Approche de résolution

La méthode de résolution proposée dans cet article, ILS_CBF, est basée sur l’heuristique de Recherche Locale Itérée ou ILS, qui part d’une solution initiale et, à chaque itération, parcourt le voisinage de la configuration actuelle afin d’en dégager une meilleure solution. Suite à l’arrêt prématuré de l’exploration, des perturbations permettent de repartir d’un nou- veau point et de relancer la recherche. Dans notre adaptation du ILS, deux mécanismes de génération de la solution initiale ont été considérés : un processus d’assignation totalement aléatoire et une méthode de placement basée sur l’algorithme du FFD. Pour ce qui a trait au mécanisme de recherche locale, un processus de descente a été développé, dans lequel deux types de mouvements ont été considérés : le déplacement d’une VM d’un serveur à un autre, et l’assignation d’une nouvelle valeur de température à un data center actif. À chaque itéra- tion, l’algorithme de recherche locale accepte le meilleur mouvement qui diminue le coût de la solution actuelle. Afin d’accélérer le processus d’évaluation d’une configuration, des fonctions de gains, traduisant la différence entre le coût de la solution actuelle et celui du voisin consi- déré, ont été déterminées. Ces fonctions de gains incluent, non seulement, le gain associé au coût intrinsèque de la configuration, c’est-à-dire, le gain en termes d’empreinte carbone, mais également, les gains relatifs aux pénalités découlant de la violation des différentes contraintes associées au problème. Divers mécanismes de perturbation ont également été considérés afin d’éviter le piège des optima locaux : une méthode de placement aléatoire, un mécanisme de permutation et une approche visant, par exemple, à assigner les VMs aux serveurs inactifs. Ainsi, considérant ces différentes méthodes, trois modes de perturbation ont été développés : le premier fait intervenir une des trois méthodes de perturbation citées précédemment tout au long de l’exploration, le second mode sélectionne, de manière aléatoire, la méthode de perturbation à utiliser après chaque descente, et le dernier mode combine une méthode de perturbation avec un mécanisme de rappel.

3.2.2 Évaluation de performance

Les résultats présentés dans cet article découlent de deux types d’expérimentation : la para- métrisation et l’évaluation des performances de l’algorithme. Par souci de simplicité et sans perte de généralité, lors de l’implémentation de l’algorithme, les contraintes relatives à la

performance des applications et aux limites de fonctionnement des châssis ont été ignorées. De plus, nous avons considéré deux types de scénarios : le premier faisant abstraction des contraintes de co-localisation, et le second les intégrant. Toutefois, en raison d’un espace limité, seuls les résultats du premier scénario sont présentés dans cet article.

3.2.2.1 Paramétrisation

La première phase de simulation nous a permis de déterminer le mécanisme idéal à implé- menter à chaque étape de l’algorithme de même que la valeur optimale des paramètres clés à utiliser pour l’heuristique ILS_CBF. Plus particulièrement, les résultats ont démontré que lorsque la solution initiale est générée à l’aide de l’algorithme FFD, le mécanisme de descente donne de meilleures solutions en temps CPU et coût d’empreinte carbone. Pour ce qui est des perturbations, les expériences ont été réalisées de manière progressive. Pour une valeur constante du pourcentage de perturbation et du nombre de relances, les différents méca- nismes de perturbation (premier mode) ont été évalués. Les résultats ont démontré que la méthode de permutation permet d’obtenir le meilleur compromis entre le coût de la solution et le temps de calcul. Par la suite, considérant ce mécanisme, l’influence de l’intensité de la perturbation et du nombre de relances sur la qualité de la solution a également été évaluée. Ceci nous a permis de déterminer la valeur idéale pour chacun de ces paramètres clés. Enfin, partant de ces valeurs, les trois modes de perturbation ont été comparés entre eux : le pre- mier mode considère la permutation comme perturbation, le second mode sélectionne l’un des trois mécanismes de perturbation, et le troisième mode implémente le processus de per- mutation à laquelle est combiné un mécanisme de diversification. Les résultats ont démontré que le troisième mode, soit la permutation intégrant la diversification, permet d’obtenir les meilleures solutions.

3.2.2.2 Méthode proposée et solution optimale

La solution obtenue après l’application complète de l’heuristique ILS_CBF est souvent un optimum local qui peut, dans certains cas, s’avérer être l’optimum global. Mais, à défaut de connaître d’avance l’optimum global, il est difficile de se prononcer sur la qualité de la solution obtenue. Dans ce contexte, une fois la phase de paramétrisation complétée, nous avons comparé les performances de l’algorithme ILS_CBF à celles obtenues avec la méthode exacte définie précédemment. Plus particulièrement, les résultats issus de l’implémentation de CB_OPT avec AMPL/CPLEX (voir le premier volet) ont été considérés lors de cette comparaison. Les résultats ont démontré que ILS_CBF trouve des solutions qui sont, en moyenne, à environ 0.2% de la solution optimale, avec un écart maximal de 2.6% par rapport

à la borne inférieure. De plus, suite à 10 exécutions successives de l’algorithme sur chaque taille de problème, ILS_CBF a pu obtenir la solution optimale pour près de 90% de ces jeux de données. Il nous a également été permis de noter que, dans le cas de l’heuristique ILS_CBF, le temps de calcul augmente linéairement en fonction de la taille du problème, contrairement à la croissance exponentielle observée pour la méthode exacte. Ainsi, avec un temps d’exécution moyen inférieur à 3 secondes, une valeur maximale avoisinant les 4 secondes et un coût d’empreinte carbone sensiblement égal à la valeur optimale, il appert que l’algorithme ILS_CBF proposé permet un excellent compromis entre la qualité de la solution et le temps d’exécution.

3.2.2.3 Méthode proposée et autres algorithmes de référence

Afin d’analyser les performances générales de ILS_CBF et de mettre en évidence son effi- cacité, 10 exécutions de l’algorithme ont été réalisées sur des instances de différentes tailles, incluant celles ne pouvant être résolues optimalement avec le solveur CPLEX. Les résultats obtenus ont été comparés à ceux découlant de l’implémentation de trois méthodes approchées retrouvées dans la littérature : la première, Green_Data_Center_FirstImproved (GDCFI), qui

utilise une version modifiée du BF afin de placer les VMs d’abord dans les data centers les plus écologiques ; une version adaptée de l’algorithme FFD (FFDA), et une modification du

BFD (BFDA). Les résultats ont pu démontrer que l’heuristique proposée, ILS_CBF, donne

toujours de meilleures configurations, en termes de coût d’empreinte carbone. En effet, le caractère glouton des algorithmes de comparaison leur permet, certes, de déterminer rapide- ment un schéma de configuration, toutefois il n’existe aucune garantie quant à la qualité des solutions obtenues avec ces méthodes, notamment parce qu’aucun mécanisme d’exploration de l’espace de recherche n’est implémenté par ces approches. Ainsi, avec une économie de coût de carbone pouvant s’élever jusqu’à 34%, et un temps de convergence polynomial, les résultats ont pu mettre en évidence les bonnes performances de l’heuristique proposée, en termes de compromis entre qualité de la solution et temps d’exécution.

3.3 Volet 3 : Modèle global d’empreinte carbone et adaptation d’une méthode