• Aucun résultat trouvé

Il sera donc illusoire de prétendre aborder le problème de l’orchestration avec des méthodes complètes, d’autant plus que les fonctions à optimiser ne sont ni linéaires, ni additives, ni monotones (voir annexe A).

Les métaheuristiques se proposent de contourner ces limitations en se restreignant à des solutions satisfaisantes bien que très souvent non-optimales. Le terme d’« heuristique » dé-signe une méthode permettant de calculer en temps polynomial une solution réalisable d’un problème d’optimisationN P. L’efficacité d’une heuristique ne peut être démontrée, mais seule-ment vérifiée par l’expérience. En général, une heuristique s’appuie sur la structure propre du problème à résoudre et propose une méthode de recherche ad-hoc. A contrario, les « métaheu-ristiques » regroupent un ensemble de méthodes générales, d’un haut niveau d’abstraction, pouvant s’appliquer à différents problèmes.

L’abondante littérature sur les problèmes d’optimisation combinatoire multicritère a cou-tume de séparer les métaheuristiques en méthodes dites de « voisinage » et en méthodes « à population ». Les premières ont la particularité de n’utiliser, à tout moment de l’exécution, qu’une seule configuration, itérativement modifiée dans le but de converger vers le front de Pareto. Lorsque l’évolution n’est plus possible, la recherche peut éventuellement repartir d’une nouvelle configuration pour converger vers une autre zone de la frontière efficiente. Les mé-thodes de voisinage les plus utilisées aujourd’hui sont la recherche tabou, le recuit simulé et la méthode GRASP (Greedy RAndomized Search Procedure).

A l’opposé, les méthodes « à population » utilisent un ensemble de configurations dont les coordonnées dans l’espace des décisions sont mises à jour à chaque itération de l’algorithme. L’intégralité de la population converge alors vers le front de Pareto, sans qu’aucune région de la frontière ne soit, en théorie, privilégiée. Les algorithmes génétiques (AGs) constituent la classe la plus ancienne et la plus utilisée des méthodes d’optimisation à population. Ils sont à l’origine de méthodes plus récentes comme les systèmes immunitaires artificiels et les algo-rithmes à évaluation de distribution. Une autre famille de méthodes, inspirées des phénomènes d’organisation complexe chez les animaux vivant en groupe, se base sur une collaboration entre les individus qui permet à la population de « s’auto-organiser » et de « s’adapter » au pro-blème courant. Les plus célèbres sont les colonies de fourmis et l’optimisation par essaims particulaires.

Plus récémment, des auteurs ont proposé des méthodes hybrides, couplant en général un algorithme génétique à une méthode recherche locale. La figure 5.3 propose une classification des méthodes d’optimisation combinatoire multicritère. Le lecteur désirant davantage de dé-tails pourra consulter les états de l’art dressés par Ulungu & Teghem [UT94], Talbi [Tal99], ou encore Ehrgott & Gandibleux [EG00].

5.4 Convexité du front de Pareto

Etant donné un problème de minimisation multicritère :

min

k fk ,

certaines solutions efficientes peuvent être trouvées en résolvant le problème uni-critère sui-vant :

min X

k

54 CHAPITRE 5. OPTIMISA TION COMBINA TOIRE MUL TICRITÈRE Méthodes complètes Métaheuristiques Programmation dynamique Programmation linéaire en nombres entiers Méthodes arborescentes

Algorithme A* Branch & Bound

Méthode à population Méthodes hybrides Méthode de voisinage

Recherche tabou GRASP Recuit simulé Algorithmes évolutionnaires Collaboration des individus Colonies de fourmis Essaims particulaires Algorithmes génétiques Stratégies d'évolution Systèmes immunitaires artificiels Algorithmes à évolution différentielle Algorithmes à estimation de distribution Fig. 5.3 – Classification des mét ho des d’optimisation com binatoire m ulticritère

5.4. CONVEXITÉ DU FRONT DE PARETO 55 Solutions supportées Solution non-supportée Frontière de Pareto

Fig. 5.4 – Solutions supportées et non-supportées dans un problème de minimisation

pour différents jeux de poids (λ1, . . . , λk) ∈ Λ. Les configurations efficientes solutions du problème 5.5 sont dites supportées. Elles se situent dans les zones convexes du front de Pareto (voir figure 5.4). Les solutions non-supportées, dans les zones concaves du front, ne peuvent pas être découvertes par la transformation vers l’uni-critère proposée en 5.5.

La première idée qui vient à l’esprit lorsqu’on a affaire à un problème multi-critère est évidemment de se ramener un problème uni-critère, afin de bénéficier des méthodes classiques d’optimisation. L’agrégation linéaire proposée en 5.5 est l’approche la plus intuitive. Une alternative est la méthode ǫ-contrainte, qui consiste à transformer N− 1 des N objectifs en contraintes et à optimiser sur l’objectif restant. Une troisième approche, la programmation par buts (goal programming), propose de minimiser la distance à un vecteur objectif de référence selon une normeLp pondérée. Talbi [Tal99] note que seule cette dernière permet de découvrir des solutions non-supportées, à condition toutefois que le décideur soit capable de définir un but à atteindre et un ensemble de poids relatifs associés à chacun des critères. En pratique, cela nécessite une très bonne connaissance du problème et des fonctions objectifs qui le modélisent, ce qui est très rarement le cas.

Certains auteurs ont tenté d’aborder les problèmes multicritères en traitant séparément chaque objectif. La sélection des critères peut être menée de façon parallèle (algorithme de Schaffer), lexicographique (algorihme de Fourman) ou encore aléatoire (algorithme de Kur-sawe). Cependant, Talbi [Tal99] et Fonseca & Fleming [FF95] ont montré que ces algorithmes ne permettaient pas de trouver des solutions non-supportées.

Les méthodes énumérées ci-dessus sont souvent dénommées approches non-Pareto, car la dominance Pareto n’y est jamais prise en compte ni exploitée. Elles ne peuvent découvrir que des solutions supportées et sont donc inutilisables en cas de non-convexité du front de Pa-reto. A contrario, les approches Pareto, initialement introduites par Goldberg [Gol89], utilisent

56 CHAPITRE 5. OPTIMISATION COMBINATOIRE MULTICRITÈRE

directement la notion de dominance de Pareto dans l’évaluation et la mise à jour des configu-rations. Elles permettent notamment de trouver des solutions non-supportées. Les méthodes récentes d’optimisation combinatoire multicritère appartiennent toutes à cette catégorie. Les algorithmes génétiques en constituent la famille la plus répandue, nous les détaillons donc à la section suivante.