• Aucun résultat trouvé

Les métaheuristiques développées précédemment permettent de résoudre des problèmes mono-objectif. C'est-à-dire que la fonction objectif est dénie pour maximiser ou minimiser un unique critère. On peut par exemple minimiser le coût d'un produit dans le cadre d'une production industrielle, ou bien maximiser les prots faits par une entreprise. Cependant, les problèmes réels ne sont pas toujours aussi "simples". En eet, il arrive parfois que l'on ait besoin de dénir, pour un même problème, plusieurs objectifs à optimiser. Par exemple, on peut avoir besoin de minimiser le coût d'un produit tout en maximisant sa qualité. Dans ce cas, on a deux objectifs à optimiser en même temps, sachant qu'ils peuvent être contradictoires. Eectivement, dans notre exemple, le fait de minimiser le coût du produit aura un impact sur sa qualité, et inversement.

L'optimisation multiobjectif [Collette 02] fait partie des familles de méthodes d'optimisation combinatoire. Elle trouve ses origines au cours du XIXème siècle dans les travaux en économie d'Edgeworth [Edgeworth 85] et de Pareto [Pareto 96]. On peut formaliser un problème d'opti-misation multiobjectif par la minid'opti-misation (ou maxid'opti-misation) d'une solutionx= (x1,...,xn)par

m fonctions objectifs, chacune optimisant un critère du problème (cf équation (1.11.1)).

f(x) = (f1(x), f2(x), ..., fm(x)) (1.11.1) On dit alors que f(x) est le vecteur de fonctions objectifs et fi les objectifs à optimiser (ou critères de décision) avecm≥2le nombre d'objectifs. On peut d'ailleurs ajouter au problème un ensemble de contraintes à satisfaire, de la même manière que pour les problèmes d'optimisation linéaire. On doit alors distinguer la notion d'espace de recherche, représentant l'ensemble des valeurs pouvant être prises par les variables, et la notion d'espace réalisable, sous-espace des variables satisfaisant les contraintes. L'image de l'espace de recherche par la fonction objectiff

est appelée espace des objectifs (ou espace des critères). Ces notions sont représentées dans la gure 1.5.

Figure 1.5 Représentation de l'espace de recherche et de son image par la fonction multiobjectif.

On remarque assez rapidement que ce genre de problème n'a pas une seule solution optimale, mais potentiellement plusieurs, en fonction des objectifs que l'on suppose plus ou moins impor-tants. Il est alors assez dicile d'établir une dénition de ce que doit être l'optimum. On fait alors intervenir un décideur, qui va choisir, parmi les solutions possibles, celle qui lui semble

Le décideur peut intervenir dans diérentes phases de l'optimisation. Les méthodes que nous allons présenter peuvent alors être classées en trois catégories (cf gure 1.6) :

méthodes a priori : Le décideur intervient en amont de la méthode d'optimisation. Il peut par exemple pondérer les objectifs an de décrire leurs importances.

méthodes a posteriori : Le décideur intervient en aval de l'optimisation. Il dispose alors d'un ensemble de solutions et peut choisir celle qui lui semble la plus intéressante.

méthodes interactives : Tout au long de la recherche, le décideur peut intervenir pour écarter ou favoriser des solutions.

Figure 1.6 Diérents types de résolution d'un problème multiobjectif, en fonction de l'intervention du décideur.

L'optimisation de la fonction objectif f(x), regroupant tous les critères, doit se faire par des méthodes diérentes de celles que nous avons vu précédemment. Nous les détaillons dans la suite.

1.11.1 Méthodes agrégées

Ces méthodes reposent sur la connaissance du problème par le décideur. Il sait comment attri-buer diérentes importances aux critères à optimiser. On dit alors que le décideur optimise une "fonction d'utilité"f =f(f1,...,fm).

Les méthodes d'agregation les plus simples utilisent une fonction de mise à l'échelle de chaque critère, an de pouvoir les additionner (modèle additif) ou bien les multiplier (modèle mul-tiplicatif). Les critères à optimiser peuvent alors être regroupés dans une unique fonction objectif.

Une autre technique très utilisée est la moyenne pondérée. Elle consiste à additionner tous les objectifs en leurs aectant un coecient. Cette pondération représente l'importance relative que le décideur attribue à chaque objectif.

f(x) =ω1∗f1(x) +ω2∗f2(x) +...+ωm∗fm(x) = m

X

i=1

Généralités sur les méthodes d'optimisation Cette méthode a cependant plusieurs inconvénients. Tout d'abord, les poids doivent être attri-bués par le décideur avant la phase d'optimisation. Il ne sait donc pas à l'avance le type de résultat qu'il peut obtenir, ce qui rend cette pondération dicile. De plus, dans le cas où le front de Pareto (que nous dénirons dans la section suivante) est non convexe, certaines solutions peuvent ne pas être accessibles en utilisant cette méthode.

Il existe également d'autres méthodes agrégées :

Le Goal programming [Charnes 57] ou le min-max [Coello 95] : Dans ces deux méthodes, le décideur xe un but Gi à atteindre pour chaque objectif fi. L'optimisation revient alors à minimiser la somme des erreurs entre la valeur de chaque fonction objectif et les buts à atteindre.

La méthode e-contrainte [Ritzel 94] : Cette méthode optimise un des objectifs en considérant les autres comme des contraintes.

L'avantage des méthodes agrégées est leur simplicité d'utilisation. En eet, l'optimisation mul-tiobjectif est transformée en optimisation mono-objectif, que l'on sait résoudre par des méthodes d'optimisation classiques. Leur inconvénient principal est que le décideur doit avoir des connais-sances approfondies du problème pour pouvoir paramétrer correctement la fonction objectif. De plus, il est souvent dicile, pour un décideur, de comprendre le sens de chacun de ces pa-ramètres. Ce genre de méthodes requiert donc un nombre de tests important pour déterminer l'inuence de chaque objectif.

1.11.2 Méthodes basées sur l'équilibre de Pareto

Ces méthodes sont les plus utilisées en optimisation multiobjectif. Elles reposent sur le postulat de V. Pareto [Pareto 96] : "Il existe un équilibre tel que l'on ne peut pas améliorer un critère sans détériorer au moins un des autres critères". En eet, comme nous l'avons déjà remarqué, on ne peut pas dénir "la" valeur optimale d'un problème d'optimisation multiobjectif. Il existe donc un ensemble de valeurs optimales, que l'on appelle "Pareto-optimales", selon le critère de dominance au sens de Pareto :

Denition 1.11.1. Soient {fi, i∈[1,m]} un ensemble de critères à minimiser, et x et x0 deux solutions de l'espace réalisable. On dira quexdominex0 au sens de Pareto si,∀i∈[1,m], fi(x)≤

fi(x0), avec au moins une inégalité stricte.

Ce critère de dominance est la base des méthodes dites de Pareto. Une solution dite Pareto-optimale est une solution non dominée, c'est-à-dire qu'aucune autre solution de l'espace réali-sable ne domine cette solution, selon le critère de dominance. On obtient ainsi un ensemble de solutions qui forment une frontière d'optimalité, que l'on nomme front de Pareto ou surface de compromis (cf gure 1.7).

Les solutions placées sur le front de Pareto ne peuvent pas être comparées, aucune n'étant sys-tématiquement meilleure que les autres sur tous les objectifs. C'est le décideur qui aura pour rôle de choisir la solution à retenir.

De nombreux algorithmes ont été proposés pour résoudre ce type de problème, les plus popu-laires sont issus des algorithmes évolutionnaires que nous avons vus précédemment. En eet, au début des années 90, un nombre important d'algorithmes évolutionnaires ont été suggérés pour résoudre des problèmes d'optimisation multiobjectif. On peut par exemple citer les algorithmes Multi Objective Genetic Algorithm (MOGA) [Fonseca 93], Niched Pareto Genetic Algorithm

Figure 1.7 Front de Pareto d'une fonction bi-objectifs.

Ces travaux ont notamment montré que des opérateurs supplémentaires étaient nécessaires pour convertir un algorithme évolutionnaire mono-objectif (EA) en un algorithme évolution-naire multiobjectif (MOEA). Les deux composantes principales étant :

aecter la tness aux individus de la population en fonction d'un tri des solutions non dominées ;

préserver la diversité parmi les solutions étant sur le même front.

Cependant, la convergence de ces algorithmes était souvent très lente. Pour pallier au problème, la notion d'élitisme fut introduite [Zitzler 00]. Son principe est de conserver dans la popula-tion, ou dans une mémoire adjointe, les meilleurs résultats trouvés, an de les combiner et éventuellement de les améliorer.

Actuellement, la méthode la plus populaire est sans doute la méthode NSGA-II, qui a été présentée dans [Deb 00]. NSGA-II intègre un opérateur de sélection très diérent de celui de NSGA [Srinivas 95], basé sur la distance de crowding, qui se calcule en fonction du périmètre formé par les points les plus proches d'une solution sur chaque objectif. De plus, NSGA et NSGA-II intègrent la notion d'élitisme, leur permettant une convergence rapide. Comparative-ment à NSGA, NSGA-II obtient de meilleurs résultats, sur toutes les instances présentées dans les travaux de K. Deb.

1.11.3 Méthodes non agrégées et non Pareto

D'autres méthodes n'utilisent aucun des deux principes énoncés précédemment. Elles possèdent un processus de recherche qui traite séparément les objectifs.

Par exemple, la méthode Vector Evaluated Genetic Algorithm (VEGA) [Schaer 85] utilise le principe des algorithmes génétiques vus précédemment. La seule diérence porte sur l'opérateur de sélection. La population initiale est divisée enm sous-populations (m étant le nombre d'ob-jectifs), chacune de ces sous-populations étant sélectionnée en fonction d'un des objectifs. La population est ensuite reconstruite et l'on applique les opérateurs génétiques de croisement et de mutation. Ainsi, seuls les individus répondant le mieux aux diérents objectifs sont conservés.

Généralités sur les méthodes d'optimisation

Documents relatifs