• Aucun résultat trouvé

Dans cette section nous présentons les algorithmes génétiques les plus célèbres, identifions leurs atouts et leurs travers. Cette discussion servira de référence pour la conception d’un AG adapté au problème de l’orchestration.

5.6.1 MOGA, NPGA, NSGA

Les premiers algorithmes génétiques à exploiter directement la dominance de Pareto dans l’évaluation des individus sont l’algorithme MOGA (Mutliple Objective Genetic Algorithm) de Fonseca et Fleming [FF93], NPGA (Niched Pareto Genetic Algorithm) de Horn, Nafpliotis & Goldberg [HNG94] et NSGA (Nondominated Sorting Genetic Algorithm) de Srinivas & Deb [SD94].

Dans l’algorithme NPGA, la sélection des individus pour la reproduction consiste à tirer deux individus au hasard dans la population courante, ainsi qu’un ensemble d’individus de taille tdom qui va servir à déterminer le meilleur des deux candidats selon la relation de dominance de Pareto. Si NPGA est une méthode de référence dans l’industrie, certains auteurs [ZT98b] [SD94] font observer que le choix du paramètre tdomest aussi délicat que fondamental pour la performance de l’algorithme. L’algorithme MOGA contourne ce problème avec un calcul de fitness basé sur le nombre de points dominants (au sens de Pareto) la solution à évaluer. Quant au NSGA, les solutions sont évaluées par extractions itératives de fronts de Pareto successifs, auxquels sont attribués des rangs croissants (les meilleurs individus ont le rang le plus faible). Deb et al. [DPAM00] regrettent toutefois que cette méthode de classement des solutions (connue sous le non de non-dominated sorting) ait une complexité en temps en O(KN3), où K est le nombre de critères et N la taille de la population.

Les auteurs ont testé ces méthodes avec différents principes de sélection des individus pour la reproduction (voir section 5.5 et figure 5.6). Il semble que le tournoi binaire (binary tournament) outrepasse largement les performances des autres méthodes de sélection (roulette

5.6. ALGORITHMES DE RÉFÉRENCE 61

wheel selection, stochastic remainder ), en raison notamment de son insensibilité aux intervalles de valeurs prises par les critères. En outre, les auteurs mettent en garde contre un risque de comportement chaotique des AGs lorsque le tournoi binaire est combiné avec une méthode de partage (sharing), qui consite à pénaliser la fitness dans les zones de forte densité.

Bien que les algorithmes sus-cités aient été, ou continuent d’être, implémentés dans de nombreux systèmes d’aide à la décision, les recherches récentes en optimisation multicritère ont conduit à les critiquer sur un certain nombre de points. Deb et al. [DPAM00] identifient par exemple trois défauts majeurs de l’algorithme NSGA :

1. une complexité en temps souvent rédhibitoire pour des problèmes à grand nombre de critères ;

2. une convergence vers la frontière Pareto relativement lente, due à la disparition progres-sive de bonnes solutions au fur et à mesure des générations (absence d’élitisme) ; 3. des paramètres difficiles à calibrer et devant être adaptés à chaque nouvelle instance

d’un problème.

Jaszkiewicz [Jas01] remarque en outre que la notion de dominance assure la convergence de la population vers l’ensemble de Pareto mais pas la dispersion sur l’intégralité de la frontière (c’est effet de « spéciation », ou « dérive génétique »).

Pour remédier à ces inconvénients, certains auteurs ont proposé de renforcer l’élitisme dans les AGs en conservant une « mémoire » des solutions optimales, servant de référence pour l’évaluation des individus. Les algorithmes SPEA, PAES, et NSGA-II sont conçus selon ce principe. D’autres auteurs [Tal99] [FF95] [BAKC99] font observer qu’en général les AGs et les méthodes de recherche locale (cf. section 5.3 et figure 5.3) donnent des solutions différentes et proposent des algorithmes hybrides combinant les deux méthodes (MOGLS, M-PAES, SPEA-II).

5.6.2 SPEA (I-II), PAES, M-PAES, NSGA-II, MOGLS (I-II-III)

L’algorithme SPEA (Strength Pareto Evolutionary Algorithm) a été proposé par Zitzler & Thiele [ZT98b] [ZT98a] [ZT99]. Les auteurs suggèrent de maintenir une population externe d’élite, rassemblant les solutions non-dominées courantes. Cet ensemble d’élite intervient dans toutes les opérations génétiques et sert également de bassin de sélection pour la reproduction. Une méthode de clustering permet de limiter la taille de l’ensemble d’élite et de s’assurer que les solutions de ce dernier se répartissent de façon uniforme sur l’approximation courante du front. La complexité de SPEA est en O(KN3) pour l’implémentation suggérée dans [ZT98a], mais Deb et al. [DPAM00] ont montré qu’une structure de données adaptée permettait de réduire cette complexité àO(KN2).

Dans leur algorithme PAES (Pareto-Archived Evolution Strategy), Knowles and Corne [KC99] utilisent un AG avec parent unique et enfant unique. Seul l’un des deux est retenu pour la génération suivante après comparaison à une archive des solutions optimales générées jusqu’alors. L’évaluation est basée sur la dominance Pareto et sur une mesure de voisinage dans l’espace des paramètres, garantissant une couverture uniforme de l’ensemble de Pareto. La diversité est maintenue en divisant l’espace de recherche en dn sous-espaces dynamiquement actualisés, où d est la profondeur de la partition et n le nombre de variables de décision. La complexité de PAES est en O(aKN), où a est la taille de l’archive. Plus récemment,

62 CHAPITRE 5. OPTIMISATION COMBINATOIRE MULTICRITÈRE

les auteurs ont proposé M-PAES [KC00] (Memetic Pareto-Archived Evolution Strategy), une version hybride de l’algorithme PAES dans laquelle chaque progéniture est améliorée par une méthode de recherche locale avant le tournoi contre son géniteur. Au cours de cette phase d’optimisation, l’acceptation d’un nouveau voisinage est soumis aux mêmes règles que celle du tournoi final entre parent et enfant.

Deb et al. [DPAM00] ont proposé une amélioration de NSGA (cf. supra) corrigeant les défauts principaux de l’algorithme initial. La complexité de NSGA-II est ramenée à O(KN2) et la diversité est maintenue grâce à une fonction d’estimation de la densité d’échantillonnage du front de Pareto. Par ailleurs, NSGA-II propose une gestion très pertinente des éventuelles contraintes, en introduisant une mesure de consistance (fonction de coût) de celles-ci dans la dominance Pareto.

En 1996, Ishibuchi & Murata [IM96] ont introduit une première version de l’algorithme MOGLS (Mutli Objective Genetic Local Search). A chaque génération les nouvelles solutions sont améliorées grâce à une méthode de recherche locale, optimisant une somme pondérée des critères, dont le jeu de poids est tiré aléatoirement. Jaszkiewicz [Jas01] fait observer que l’algorithme MOGLS, bien que basé sur une agrégation linaire des critères le rapprochant des méthodes de goal programming, n’effectue pas une transformation vers l’uni-objectif pour autant, du fait de sa structure d’AG permettant une recherche simultanée de solutions mul-tiples dans des directions mulmul-tiples. MOGLS tire parti des résultats de Chen et Liu [CL94] et Steuer [Ste86], prouvant que l’intégralité de l’ensemble Pareto peut être obtenu en résolvant un problème de goal programming pour l’ensemble de jeux de poids possibles.

Une seconde version de l’algorithme MOGLS a été proposée par Jaszkiewicz [Jas01] [Jas02]. Le mécanisme de roulette wheel selection est remplacé par un tirage aléatoire parmi les meilleurs candidats, et la somme pondérée par une distance de Tchebycheff pondérée (cf. définition 8.5.1). Jaszkiewicz [Jas02] fait observer que les fonctions de Tchebycheff sont plus adaptées que les fonctions linéaires pour des problèmes où la forme du front de Pareto est com-plexe ; elles permettent notamment de trouver des solutions non-supportées (voir section 5.4). L’auteur fournit en outre une méthode efficace pour calculer le nombre de solutions initiales. Ishibushi et al. [IY02] ont suggéré une autre amélioration de l’algorithme MOGLS en ex-ploitant l’idée que la performance de l’AG peut être accrue en utilisant dans la recherche locale une direction d’optimisation adaptée à chaque solution et indépendante du jeu de poids employés dans le mécanisme de sélection des parents. La méthode permet ainsi de séparer totalement évolution génétique et exploration du voisinage des solutions, et peut donc s’adap-ter très facilement à tout type de recherche locale. L’algorithme SPEA-II [ZLT02] exploite également une hybridation de ce type.

Par ailleurs, Ishibuchi et al. [IY02] font remarquer que dans de nombreux algorithmes hybrides la majeure partie du temps de calcul est dévouée à la recherche locale, et fournissent quelques pistes pour équilibrer la balance entre les deux metaheuristiques.

5.6.3 APAES, MAREA, MEMOTS, PFGA

Ce chapitre ne saurait prétendre recenser l’ensemble des techniques d’optimisation multi-critère, tant les variantes dans les approches et cas d’application sont nombreux. Nous ren-voyons le lecteur avide de connaissances aux ouvrages de référence mentionnés en section 5.1. Toutefois, deux innovations récentes nous semblent devoir encore être mentionnées, car elles introduisent deux nouveaux paradigmes dans la recherche multicritère à l’aide de métaheuris-tiques.