WSC` 00 Template
Transcription
WSC` 00 Template
4e Conférence Francophone de MOdélisation et SIMulation “Organisation et Conduite d’Activités dans l’Industrie et les Services” MOSIM’03 – du 23 au 25 avril 2003 - Toulouse (France) RECHERCHE DE SOLUTIONS DE COMPROMIS EN ORDONNANCEMENT A L’AIDE DE METAHEURISTIQUES Caroline GAGNÉ, Marc GRAVEL Wilson L. PRICE Département d’Informatique et de mathématique Université du Québec à Chicoutimi 555, Boul. de l’Université Chicoutimi, Québec, Canada G7H 2B1 Mél : [email protected], [email protected] Faculté des Sciences de l’Administration Université Laval Ste-Foy, Québec, Canada G1K 7P4 Mél : [email protected] RESUME : Cet article vise à proposer et à démontrer l’efficacité d’une approche générique de recherche de solutions de compromis à l’aide de métaheuristiques. Un exemple d’application à l’aide d’un algorithme de recherche avec tabous pour la résolution d’un problème d’ordonnancement bi-objectifs est présentée. L’approche proposée s’intègre facilement, par sa simplicité et sa rapidité, dans un système interactif d’aide à la décision. MOTS-CLES : objectifs multiples, solutions de compromis, optimisation combinatoire, métaheuristique, ordonnancement. 1. INTRODUCTION Les situations pratiques en ordonnancement correspondent rarement à l’optimisation d’un seul objectif à la fois. Ces contextes présentent généralement une nature multi-objectifs inhérente aux différentes mesures de performances internes de l’organisation ainsi qu’aux attentes des clients à satisfaire. Le marché concurrentiel rend complexe la tâche de trouver le juste compromis entre ces différentes dimensions. L’optimisation de plusieurs objectifs simultanément ajoute ainsi une difficulté importante pour solutionner les problèmes d’ordonnancement et peu d’approches de résolution ont été adaptées jusqu’à maintenant pour traiter ces problèmes (Nagar et al., 1995). L’optimisation combinatoire avec objectifs multiples présente un défi de taille pour les chercheurs afin de définir des heuristiques flexibles et efficaces. Certains problèmes avec objectifs multiples, comme par exemple la sélection d’un site pour la construction d’une usine, consistent à poser un choix stratégique parmi un faible ensemble de possibilités définies a priori. Les problèmes d’ordonnancement présentent la particularité de posséder un ensemble de solutions réalisables souvent très vaste et se traduisent par des décisions opérationnelles à caractère répétitif. Ces problèmes exigent donc que les approches de résolution présentent certaines caractéristiques en termes de simplicité, de flexibilité, de performance et d’interaction avec le décideur pour assister ce dernier dans la sélection d’une solution de compromis. Un outil d’aide à la décision approprié devrait présenter une certaine simplicité et une convivialité en plus d’exiger un temps de calcul raisonnable. De plus, il devrait également être en mesure de prendre en considération les préférences du décideur et proposer un nombre restreint de solutions de compromis de qualité. Par la suite, le décideur pourrait faire son choix final en considérant d’autres éléments, même subjectifs, qui n’ont pu être exprimés. Depuis quelques années, les métaheuristiques ont démontré qu’elles possédaient plusieurs des caractéristiques énoncées au paragraphe précédent. Dans cette classe de méthodes, nous retrouvons, entre autres, le recuit simulé, la recherche avec tabous, les algorithmes génétiques et l’optimisation par colonie de fourmis. Les métaheuristiques ont été utilisées jusqu’à maintenant pour résoudre une large gamme de problèmes combinatoires, incluant les problèmes d’ordonnancement avec l’optimisation d’un objectif unique. Plusieurs auteurs, comme par exemple Widmer (2001), ont fait état de leur efficacité à résoudre ces différents problèmes. Les métaheuristiques offrent un excellent compromis entre l’effort de calcul et la qualité des solutions en plus d’une flexibilité pour traiter des problèmes complexes. Pour ces raisons, l’adaptation des métaheuristiques pour la résolution de problèmes avec objectifs multiples représente une des directions de recherche les plus prometteuses (Ulungu et Teghem, 1994). Quelques travaux dans la littérature proposent l’utilisation de métaheuristiques pour résoudre des problèmes avec objectifs multiples (Talbi, 1999). Parmi ceux-ci, nous retrouvons les algorithmes PSA (Czyzac et Jaszkiewicz, 1998) et MOSA (Ulungu et al., 1995) qui utilisent la méthode du recuit simulé, l’algorithme MOTS (Hansen, 1997) qui emploie la recherche avec tabous, les algorithmes MOGA (Fonseca et Fleming, 1995) et "niched pareto genetic algorithms" (Horn et Nafpliotis, 1993) qui constituent des approches basées sur les algorithmes génétiques. Les algorithmes évolutifs (Zitzler et Thiele, 1999; Zitzler et al., 2000), les MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) réseaux de neurones artificiels (Malakooti et Zhou, 1994; Sun et al., 1996) et l’optimisation par colonie de fourmis (Mariano et Morales, 1999; Gagné et al., 2002; Gravel et al., 2002) ont également été utilisés à cette fin. L’objectif principal de cet article est de proposer une approche pour formaliser la recherche de solutions de compromis à l’aide des métaheuristiques par un mécanisme exigeant peu de modifications pour s’adapter à chacune d’entre elles. Un exemple d’application à un algorithme de recherche avec tabous pour la résolution d’un problème d’ordonnancement avec objectifs multiples montrera l’efficacité de l’approche proposée. La méthode de résolution devient alors un outil d’aide à la décision présentant les caractéristiques énoncées précédemment. 2. ÉLÉMENTS RÉSOLUTION DE L’APPROCHE DE Le développement d’une approche de résolution pour aborder une situation décisionnelle où le nombre de solutions est très grand en présence d’objectifs conflictuels multiples fait appel à deux domaines (Purao et al., 1999): l’optimisation combinatoire et l’aide multicritère à la décision (MCDM). Le premier domaine met l’emphase sur les méthodes de recherche afin d’approcher le plus possible la solution optimale à un problème. De son côté, la recherche en analyse multicritère dirige ses efforts à définir des approches permettant de trouver des compromis entre les différents objectifs pour assister le décideur dans l’identification des solutions Pareto-optimales. Or, le traitement de divers problèmes pratiques nécessite la combinaison de ces deux domaines pour donner place à l’optimisation combinatoire avec objectifs multiples (MOCO) (Ulungu et Teghem, 1994). Les sous-sections ci-dessous énoncent les principaux éléments permettant de définir par la suite l’approche de recherche de solutions de compromis proposée. 2.1. L’ensemble Pareto-optimal La forme générale d’un problème d’optimisation avec objectifs multiples peut être représentée par le programme suivant : "minimiser" f(x) = {f1(x), f2(x), …, fz(x)} sujet à x∈ S où x = {x1, x2, …, xn} représente un vecteur de variables de décision de n dimensions et S est l’ensemble de solutions réalisables. La fonction f transpose S dans ℜ |z|, où |z| ≥ 2 représente le nombre d’objectifs à optimiser et est appelée fonction objectif ou fonction critère. La valeur de la fonction objectif pour une solution x est notée f(x). Il est également à remarquer que le terme "minimiser" est inscrit entre guillemets car il n’existe généralement pas une solution unique qui procure simultanément la solution optimale pour l’ensemble des objectifs. Voilà pourquoi le concept de solution "optimale" devient moins pertinent en optimisation avec objectifs multiples. Par conséquent, la résolution du programme précédent consiste à rechercher un ensemble de solutions S* ⊆ S appelé ensemble Pareto-optimal ou ensemble efficace. Purao et al. (1999) définissent qu’une solution réalisable x ∈ S domine une solution réalisable y ∈ S ssi ∃ i ∈ z | fi(x) < fi(y), et que ∀j ∈ z, j ≠ i fj(x) ≤ fj(y). Alors, une solution réalisable x est efficace ou non-dominée (Pareto-optimale) ssi il n’y a aucune autre solution réalisable qui la domine. 2.2. La méthode du "compromise programming" La recherche en analyse multicritère a donné lieu à une variété d’approches pour déterminer l’ensemble des solutions Pareto-optimales (Steuer, 1986; White, 1990; Steuer et al., 1996). Parmi celles-ci se retrouve une classe de méthodes qui procèdent à la transformation des différents objectifs à l’aide d’une fonction de valeurs permettant d’agréger les différents objectifs en un seul. Cependant, la multitude des objectifs, généralement de nature conflictuelle, donne lieu à un problème difficile consistant à traduire convenablement les préférences du décideur en une seule fonction objectif. Ces approches sont qualifiées de méthodes du critère unique de synthèse et la plus connue est l’approche simpliste de la somme pondérée. Les solutions produites à l’aide de méthodes du critère unique de synthèse doivent ainsi satisfaire au moins les deux conditions suivantes : elles ne doivent pas être dominées par aucune autre solution et elles doivent réconcilier les différents objectifs en conflit de manière à traduire les préférences du décideur. Ces solutions peuvent alors être qualifiées de solutions de compromis. La méthode du Compromise Programming (CP) proposée par Zeleny (1982) appartient à cette classe de méthodes. Son but est de minimiser la distance entre un point idéal F* = {F1*, F2*, …, Fz*} où Fi* = minx∈S fi(x), qui n’est généralement pas réalisable, et les valeurs d’une solution courante k sur les différents objectifs Fk = {F1k, F2k, …, Fzk}. Cette distance agrège l’information de façon à refléter la performance de la solution courante pour l’ensemble des objectifs. La recherche de compromis est donc un effort pour atteindre la solution idéale et la qualité de ce compromis est alors mesurée par sa distance à la solution idéale. L’importance relative accordée à chacun des objectifs par le décideur peut également être exprimée par un ensemble de poids pi ≥ 0, i ∈ z | ∑pi = 1. Une normalisation est souvent rendue nécessaire pour réduire les effets indésirables provenant du choix des unités de mesure ainsi que de l’étendue du domaine de façon à ne pas biaiser la distance calculée. La normalisation des mesures permet alors de présenter des déviations relatives entre 0 et 1. Dans le cas d’un problème de maximisation, cette normalisation peut être effectuée à l’aide du point idéal. Cependant, dans le cas d’un problème de minimisation, il est préférable d’effectuer cette normalisation à l’aide de l’étendue des MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) domaines. À cet effet, le point nadir représente les valeurs maximales pour chacun des objectifs dans l’ensemble des solutions Pareto-optimales. Il se définit de la manière suivante : Fnad = {F1nad, F2nad, …, Fznad} où Finad = maxx∈S* fi(x). L’Équation 1 présente l’expression générale pour le calcul d’une distance euclidienne pondérée et normalisée, dist, entre les valeurs des fonctions de deux solutions, Fk et F*. z dist = ∑ i =1 Fi k − Fi* p nad Fi − Fi* 2 1 2 (1) i À l’aide de l’équation précédente, la méthode du CP permet ainsi la recherche de solutions s’approchant du point idéal qui n’est généralement pas réalisable. Les différents objectifs à atteindre sont ainsi représentés au sein d’une fonction unique qui est celle de la distance pondérée et normalisée au point idéal. 2.3. Métaheuristique générique pour la recherche de compromis Nous avons formalisé la méthode du CP en intégrant les éléments décrits précédemment dans une procédure générale utilisant les métaheuristiques pour l’optimisation combinatoire avec objectifs multiples. Cette procédure se déroule en trois phases comme le présente la Figure 1. La première phase est réalisée à l’aide d’une version uni-objectif de la métaheuristique sélectionnée pour rechercher le point idéal (F*) et le point nadir (Fnad) d’un problème particulier en optimisant séparément les objectifs. Il est à noter qu’avec l’utilisation d’une métaheuristique pour déterminer les points idéal et nadir, il s’agit davantage de points pseudo-idéal et pseudo-nadir puisque l’on ne peut garantir l’optimalité. Dans la suite du texte, les termes idéal et nadir feront toujours référence à pseudo-idéal et pseudo-nadir. L’optimisation uni-objectif permet, d’une part, d’ajuster les paramètres spécifiques à une métaheuristique (étape a) et d’autre part, de déterminer la "valeur minimale" d’un objectif (étape b). L’optimisation d’un objectif unique représente une direction extrême de recherche de solutions car elle met l’emphase sur une seule dimension du problème à la fois. La deuxième phase procède à la recherche de solutions de compromis reflétant les préférences du décideur pour les différents objectifs. Il s’agit alors d’une recherche de solutions dans une direction intermédiaire. À cette fin, le décideur doit exprimer à l’étape (a) l’importance relative qu’il accorde à chacun des objectifs. Le processus itératif (étape b) propre à la métaheuristique peut alors débuter. À l’intérieur de celui-ci, les solutions sont générées, soit par construction ou par l’exploration d’un voisinage, pour être ensuite évaluées sur l’ensemble des objectifs. Pour chacune des solutions générées, les relations de dominance sont alors vérifiées pour ne conserver que les solutions non-dominées. Pour ce faire, une structure de quad tree (Sun et Steuer, 1996) est utilisée pour limiter les comparaisons à effectuer. La valeur des fonctions objectif et les préférences du décideur, exprimées sous forme de pondérations, permettent ensuite de calculer la distance d’une solution courante à la solution idéale. C’est sur la base de cette fonction agrégée que les itérations de la métaheuristique se réalisent jusqu'à ce que les conditions d’arrêt soient respectées. L’étape (c) de cette deuxième phase consiste à effectuer une perturbation sur les pondérations des objectifs et à relancer le processus itératif. Cette perturbation est appliquée pour élargir légèrement l’espace de recherche et ainsi être en mesure d’atteindre des compromis intéressants se trouvant à proximité. La troisième phase procède à la présentation des résultats au décideur. Nous suggérons à l’étape (a) d’établir une règle pour restreindre le nombre de solutions présentées au décideur. À titre d’exemple, cette règle pourrait adopter le principe de retirer les solutions présentant une distance au point idéal supérieure à un certain pourcentage de la meilleure solution obtenue. De cette façon, un nombre restreint de solutions efficaces peut être proposé. Une présentation visuelle peut également faciliter ce choix (étape b). Phase 1: RECHERCHE DU POINT IDEAL a) Calibrage des paramètres de la métaheuristique b) Optimisation des objectifs séparément Phase 2 : RECHERCHE DE SOLUTIONS DE COMPROMIS a) Énoncé des préférences du décideur (pondérations des objectifs) b) Processus itératif : (jusqu’à ce que les conditions d’arrêt soient respectées) i. Construction ou génération de solutions par une métaheuristique ii. Évaluation des solutions ainsi générées sur les différents objectifs iii. Vérification des relations de dominance et enregistrement des solutions iv. Calcul de la distance pondérée et normalisée par rapport au point idéal c) Application de perturbations sur la pondération des objectifs et retour à l’étape (b) de la phase 2 Phase 3 : PRESENTATION DES SOLUTIONS EFFICACES AU DECIDEUR a) Réduction du nombre de solutions à présenter au décideur b) Affichage des solutions efficaces Figure 1. Étapes d’une métaheuristique générique pour la recherche de solutions de compromis MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) L’approche proposée est suffisamment générale pour convenir à l’utilisation de diverses métaheuristiques. Il est également à noter que la procédure présentée peut traiter un nombre quelconque d’objectifs. La prochaine section présente un exemple d’application de cette approche à l’aide de la recherche avec tabous pour la résolution d’un problème d’ordonnancement bi-objectifs. 3. RECHERCHE AVEC TABOUS POUR L’OBTENTION DE SOLUTIONS DE COMPROMIS EN ORDONNANCEMENT BIOBJECTIFS 3.1. Définition du problème Le problème d’application utilisé pour illustrer l’efficacité de l’approche générique proposée est celui de l’ordonnancement de plusieurs commandes sur une machine unique avec réglages dépendant de la séquence. La minimisation du retard total et la minimisation du temps total de réglages représentent les deux objectifs à optimiser. Ce problème se définit de la manière suivante: supposons n commandes à produire, toutes disponibles au temps zéro, qui doivent se réaliser en entier sur une machine. Chaque commande j est définie en fonction de son temps de fabrication (pj), de sa date d’échéance (dj) et du temps de réglage (sij) encouru lorsque la commande j est effectuée à la suite de la commande i dans la séquence de réalisation Q. On définit Q = {Q(0), Q(1), …, Q(n)} comme étant la séquence de réalisation où Q(j) est l’indice de la jième commande dans la séquence et où Q(0) = 0. La machine est continuellement disponible pour l’horizon de planification et elle peut procéder à la réalisation d’une seule commande à la fois. Lorsqu’une commande est débutée sur la machine, elle doit être terminée avant le commencement d’une autre. Le temps de terminaison d’une commande j est calculé cQ(j) =∑k =1[sQ(k −1)Q(k) + pQ(k) ] j par l’équation alors que le retard de cette même commande j est calculé par l’équation tQ(j) = max { 0, cQ(j) − dQ(j)} . L’objectif de retard total pour l’ensemble des n commandes est défini F1 =∑ j =1tQ(j) n alors que l’objectif du par l’équation temps total de réglages pour l’ensemble des n commandes a été ajouté à la formulation initiale proposée par Rubin et Ragatz (1995) et est calculé par F2 =∑ j =1sQ(j −1)Q(j) n l’équation . Un ensemble de 32 problèmes test de taille 15, 25, 35 et 45 commandes sont disponibles sur Internet (http://mgt.bus.msu.edu/datafiles.htm). Quelques auteurs tel Ragatz (1993), Rubin et Ragatz (1995), Tan et Narasimhan (1997) et Gagné et al. (2002) ont déjà proposé, dans le cas de l’optimisation du retard total comme unique objectif, une méthode d’évaluation et de séparation, un algorithme génétique, une méthode d’amélioration, un recuit simulé et une optimisation par colonie de fourmis pour résoudre ces problèmes. Les problèmes déjà solutionnés sur l’objectif du retard total par les auteurs cités précédemment seront utilisés pour illustrer l’approche multi-objectif proposée à l’aide de la recherche avec tabous et les résultats de ceux-ci serviront de base de comparaison de performance. 3.2. La recherche avec tabous pour la recherche de compromis La forme moderne de la Recherche avec Tabous (RT) a été développée par (Glover, 1989; Glover, 1990) et le lecteur est invité à consulter ces références pour une description complète. Cette heuristique cherche à simuler une forme de mémoire. Pour ce faire, les dernières solutions explorées, ou plus précisément les dernières transformations effectuées pour obtenir ces solutions, sont conservées dans une liste de tabous afin de ne pas reprendre, avant un certain temps, une direction de recherche déjà empruntée. Ceci permet d’éviter un cyclage et de diriger le processus de recherche vers d’autres régions de l’ensemble des solutions. Comme le présente la Figure 2, l’algorithme de la RT proposé dans cet article débute par la création d’une solution initiale. Pour ce faire, deux heuristiques de construction sont utilisées selon l’importance accordée à chacun des deux objectifs. Dans le cas où l’objectif de retard est priorisé, la solution initiale est construite selon la règle de priorité de la plus petite marge (min slack) d’une commande avant que celle-ci ne soit en retard. Dans l’autre cas, la solution initiale est construite à l’aide de la règle de priorité de la commande présentant le plus petit temps de réglage. Une solution courante k, notée Qk = {Qk(0), Qk(1), …, Qk(n)}, est évaluée selon les deux objectifs et le résultat de l’évaluation est donné par Fk = {F1k, F2k} où Fik = fi(Qk) pour i =1, 2. Le résultat de l’évaluation sur les deux objectifs permet ensuite de calculer la distance pondérée et normalisée (dist) de la solution Qk par rapport au point idéal selon l’Équation 1. À l’aide de transformations locales sur la solution Qk, on obtient un ensemble de solutions constituant le voisinage de celle-ci noté N(Qk). La solution du voisinage présentant la distance minimale au point idéal, sans faire référence à celle de Qk, est sélectionnée pour être la nouvelle solution courante Qk+1. De cette façon, il est possible que Qk+1 présente une distance supérieure à celle de Qk et que la qualité de la solution courante soit dégradée pendant un certain temps de façon à permettre de sortir d’un optimum local. Il est à noter que la nouvelle solution courante ne doit pas avoir été obtenue à l’aide d’une transformation locale faisant l’objet d’un tabou. MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) Deux types de transformation sont utilisés dans l’approche proposée pour obtenir le voisinage d’une solution courante : les méthodes d’améliorations locales Or-Opt (Or, 1976) et 3-Opt restreint (Kanellakis et Papadimitriou, 1980). Il est à noter que le choix de ces deux structures de voisinage a été effectué suite à des expérimentations incluant d’autres structures de voisinage comme le 2-Opt, le Hyper-Opt, le RSPI, une version orientée du Or-Opt pour le retard et une version orientée du 3-Opt restreint pour le temps de réglage. Le Tableau 1 présente les résultats moyens de 10 résolutions obtenus à l’aide des différentes structures de voisinage pour les problèmes de plus grande taille (35 et 45 commandes). Une résolution consiste à appliquer un algorithme de descente à l’aide de l’un ou de l’autre des voisinages à partir d’une solution initiale aléatoire et à évaluer un total de 50 000 solutions au maximum. Les solutions initiales sont identiques pour chaque structure de voisinage. Aucune de ces structures de voisinage ne s’est avérée supérieure aux autres pour tous les problèmes et pour les deux objectifs à la fois. Toutefois, la partie supérieure du Tableau 1 montre clairement que le Or-Opt présente un avantage marqué pour minimiser le retard total (F1) et la partie inférieure montre, à son tour, que le voisinage 3-Opt restreint présente une performance supérieure aux autres pour minimiser le temps total de réglage (F2). Construction d’une solution de départ Q0 Initialisation à vide de la liste de tabous x=1 /* compteur d’itération */ v=1 /* numéro du voisinage */ Qx = Q* = Q0 /* Q* = meilleure solution de l’exécution */ TANT QUE x<Max_Itération ET v≤ 6 /* Qmin = meilleure solution Qk = Qmin = Qx pendant la longueur du voisinage*/ POUR k = 1 à LongueurVoisinage Qk+1 = Meilleure solution admissible dans Nv(Qk) /* Sol. admissible = sol. sans statut tabou ou dont le tabou est révoqué car celle-ci est meilleure que Q* */ Mise à jour de la liste circulaire de tabous Mise à jour de Q*et de Qmin FIN POUR /*Mise à jour du voisinage et de la solution courante*/ SI Qmin est meilleure que Qx ALORS /* le premier voisinage est repris*/ v=1 Qx+1 = Qmin /* sol. courante devient la meilleure sol. pendant la longueur du voisinage */ SINON v=v+1 Qx+1 = Qk /* changement de voisinage */ /* sol. courante devient la dernière sol. obtenue dans la longueur du voisinage */ FIN SI x=x+1 FIN TANT QUE Figure 2. Étapes de la RT-VNS Problème Prob601 Prob602 Prob603 Prob604 Prob605 Prob606 Prob607 Prob608 Prob701 Prob702 Prob703 Prob704 Prob705 Prob706 Prob707 Prob708 Problème 3-Opt Res 421 743 18406 20443 756 517 14512 6784 600 722 27887 17905 687 608 26359 26171 3-Opt Res Objectif : F1 Or2-Opt Hyper Opt -Opt 42 800 744 0 793 817 18072 21108 20598 19507 23063 23262 335 1396 1304 0 600 577 13416 17974 16398 5047 10215 9551 145 1569 981 0 802 778 27377 33362 31281 15833 23444 22942 287 1429 1077 0 651 653 24467 32453 29640 23700 33126 30027 Objectif : F2 Or-Opt 2-Opt Hyper -Opt 37.3 153.3 137.3 33.3 156.6 121.2 37.6 160.4 138.1 28.9 159.9 116.0 40.7 149.3 124.0 32.9 171.6 134.0 33.4 164.2 131.2 41.4 168.1 127.5 27.9 194.2 145.5 39.5 214.2 162.1 35.5 198.5 148.9 33.7 197.6 139.3 32.3 220.5 164.9 44.0 214.2 162.8 37.4 208.7 161.7 37.8 186.4 149.8 RSPI 1646 4316 23607 33058 2653 3689 22308 22214 3877 6478 36796 47608 3877 9348 38005 52075 RSPI Or-Opt F1 557 11 18990 19902 1059 9 14920 5988 866 1 28720 17600 1182 24 26750 25379 3-Opt Res F2 30.6 205.00 349.9 28.9 208.50 340.7 35.9 237.40 353.7 24.5 225.80 339.1 37.3 228.90 352.4 28.8 225.30 364.5 26.7 228.30 341.6 34.1 219.00 348.9 21.8 263.00 408.2 32.3 280.70 448.9 25.1 289.80 440.2 23.2 266.20 426.9 25.1 284.90 436.3 37.3 294.40 479.0 26.9 277.70 453.7 25.7 278.60 452.2 Tableau 1. Résultats moyens de 10 résolutions obtenus par différents algorithmes de descente (50 000 évaluations) Prob601 Prob602 Prob603 Prob604 Prob605 Prob606 Prob607 Prob608 Prob701 Prob702 Prob703 Prob704 Prob705 Prob706 Prob707 Prob708 Une hybridation entre la RT et le Variable Neighborhood Search (VNS) (Mladenovic et Hansen, 1997) est également proposée dans l’application des structures de voisinage. Les méthodes Or-Opt et 3-Opt restreint sont appliquées à tour de rôle de façon à générer un nombre de solutions voisines de plus en plus petit. Les tailles de voisinage utilisées sont respectivement de 60*n, 40*n et 20*n où n représente la taille du problème. Les six voisinages ainsi obtenus sont présentés au Tableau 2. L’application de voisinages de taille de plus en plus réduite s’est avérée plus performante dans notre cas contrairement aux indications données par les auteurs de la méthodes qui suggèrent l’inverse. v Voisinage Taille 1 Or-Opt 60*n 2 3-Opt restreint 60*n 3 Or-Opt 40*n 4 3-Opt restreint 40*n 5 Or-Opt 20*n 6 3-Opt restreint 20*n Tableau 2. Structure et taille des voisinages utilisés MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) Le principe utilisé dans la méthode VNS pour passer d’un voisinage à l’autre a été adapté pour être appliqué avec la RT. Comme indiqué à la Figure 2, un voisinage numéro v est utilisé pendant un certain temps (LongueurVoisinage) et si une amélioration est observée au cours de ces itérations, v est réinitialisé à 1. Sinon, le voisinage suivant v+1 est utilisé et la méthode prend fin lorsque tous les voisinages ont été appliqués ou lorsqu’un nombre maximum d’itérations a été réalisé. Il est également à noter que le changement dynamique entre les structures de voisinage n’oblige pas automatiquement à réinitialiser la liste circulaire de tabous. L’information contenue dans la liste de tabous concerne les dernières transformations effectuées et ces dernières ont été enregistrées sous forme d’arcs (paires de commandes) venant d’être brisés et ne devant pas être reformés avant un certain temps. Cette forme de tabous est donc applicable avec les deux structures de voisinage utilisées. 4. EXPERIMENTATION ET RESULTATS Des essais numériques ont été réalisés afin d’évaluer la performance de l’approche de résolution proposée dans cet article. Dans un premier temps, la performance de la métaheuristique utilisée, c’est-à-dire la RT, a été vérifiée à l’aide des 32 problèmes de taille 15 à 45 commandes pour lesquels des solutions étaient déjà connues dans la littérature sur l’objectif de minimisation du retard total. Le lecteur peut trouver des informations additionnelles dans (Tan et al., 2000) et (Gagné et al., 2002). Le Tableau 3 présente, pour l’objectif de retard total (F1), la solution obtenue par une procédure de séparation et d’évaluation progressive (B&B) limitée à l’exploration de cinq millions de nœuds ainsi que la meilleure solution obtenue sur dix essais par quatre heuristiques. Deux heuristiques se distinguent particulièrement soit l’optimisation par colonies de fourmis (Gagné et al., 2002) qui a fourni neuf des meilleurs résultats (indiqué par +) et le RSPI (Rubin et Ragatz, 1995) qui en a fourni cinq (indiqué par ++). Pour les dix-huit autres problèmes, ces deux heuristiques sont équivalentes. Quant à l’algorithme génétique (Rubin et Ragatz, 1995) et le recuit simulé (Tan et Narasimhan, 1997), ils obtiennent quelque fois une performance de même niveau mais n’ont permis d’obtenir le meilleur résultat pour aucun problème. En ce qui concerne la métaheuristique de RT décrite dans cet article, elle a, dans sa version uni-objectif et sur dix essais, réussi à abaisser le meilleur résultat connu pour 11 des 32 problèmes (caractères gras) tout en obtenant un résultat identique au meilleur résultat connu pour les autres problèmes. En ce qui a trait à l’objectif du temps total de réglages (F2), une procédure de séparation et d’évaluation progressive (B&B) a permis de trouver les solutions optimales en associant le problème à un problème de voyageur de commerce (VC). Les résultats sont présentés au Tableau 3 dans la colonne B&B. La colonne suivante du Tableau 3 présente le meilleur résultat sur 10 essais de la RT et montre que la métaheuristique obtient de très bons résultats par rapport à la solution optimale. La calibration de la métaheuristique pour chacun des deux objectifs séparément a permis de réaliser la phase 1 de l’approche générique de la Figure 1 et ainsi trouver les points idéaux. Retard (F1) Réglages (F2) % du % du B&B B&B Best RT B&B RT Problème # Jobs B&B Prob401 15 90* 0.0 0.0 24* 0.0 Prob402 15 0* 0.0 0.0 15* 0.0 Prob403 15 3418* 0.0 0.0 23* 0.0 Prob404 15 1067* 0.0 0.0 30* 0.0 Prob405 15 0* 0.0 0.0 21* 0.0 Prob406 15 0* 0.0 0.0 26* 0.0 Prob407 15 1861* 0.0 0.0 27* 0.0 Prob408 15 5660* 0.0 0.0 25* 0.0 Prob501 25 264 -1.1+ -1.1 168* 0.0 Prob502 25 0* 0.0 0.0 171* 0.0 Prob503 25 3511 -0.4 -0.4 172* 0.0 Prob504 25 0* 0.0 0.0 172* 0.0 Prob505 25 0* 0.0 0.0 20* 0.0 Prob506 25 0* 0.0 0.0 14* 0.0 Prob507 25 7225* 0.0++ 0.0 18* 0.0 Prob508 25 1915* 0.0++ 0.0 26* 0.0 Prob601 35 30 -46.7+ -60.0 19* 0.0 Prob602 35 0* 0.0 0.0 18* 0.0 Prob603 35 17774 -0.5+ -1.0 24* 0.0 Prob604 35 19277 -0.8+ -0.9 12* 0.0 Prob605 35 291 -15.1+ -21.7 20* 0.0 Prob606 35 0* 0.0 0.0 16* 0.0 Prob607 35 13274 -1.7++ -2.3 16* +6.3 Prob608 35 6704 -29.4 -29.4 24* 0.0 Prob701 45 116 -11.2+ -14.7 7* +14.3 Prob702 45 0* 0.0 0.0 15* +6.7 Prob703 45 27097 -1.6+ -2.2 9* +11.1 Prob704 45 15941 -3.3++ -4.2 8* +12.5 Prob705 45 234 -5.1+ -12.8 9* +22.2 Prob706 45 0* 0.0 0.0 20* +5.0 Prob707 45 25070 -4.2+ -5.1 10* +10.0 Prob708 45 24123 -4.0++ -5.4 11* +9.1 * + ++ Indique une solution optimale OCF RSPI Tableau 3. Performance la RT dans un contexte uniobjectif À la phase 2 de l’approche proposée, le décideur doit exprimer ses préférences pour chacun des objectifs. Avant d’illustrer cette phase par des résultats, un ensemble de référence a été généré en exécutant la métaheuristique successivement avec plusieurs ensembles de pondérations différentes entre 0 et 1 pour chaque objectif par incrément de 0.01. La Figure 3 présente l’ensemble pseudo-Pareto-optimal obtenu pour deux problèmes de taille respective de 25 et 45 commandes. Dans le premier cas, il a été possible d’énumérer entièrement le problème de façon à confirmer que l’ensemble de référence est réellement l’ensemble Pareto-optimal. Pour le problème de 25 commandes (PROB508), le point idéal est {F1*, F2*}= {1915, 26} tandis que le point nadir pour ce même MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) problème est de {F1nad, F2nad}= {6163, 98}. Pour le problème de 45 commandes (PROB708), le point pseudo-idéal est {F1*, F2*}= {22807, 11} tandis que le point pseudo-nadir est de {F1nad, F2nad}= {45377,132}. Les Tableaux 4 et 5 présentent, dans la première partie, les solutions qui devraient être suggérées au décideur sur la base de l’approche de compromis pour différentes pondérations accordées à chacun des objectifs. Les distances normalisées et pondérées ont été calculées pour chacun des points de l’ensemble Pareto-optimal et la plus petite distance correspond alors à la meilleure solution pour un ensemble donné de pondérations. Dans la seconde partie de ces tableaux, la meilleure décision issue de la phase 2 de l’approche proposée est présentée ainsi que le nombre solutions de compromis obtenu pour les pondérations indiquées. Ces résultats illustrent bien l’efficacité de l’approche proposée. Il est à noter que selon la phase 3, une procédure pourrait être établie afin de restreindre le nombre des solutions à présenter au décideur. PROB708 50000 7000 6000 5000 4000 3000 2000 1000 0 40000 Retard Retard PROB508 30000 20000 10000 0 10 30 50 70 90 10 110 30 50 70 90 110 130 Réglages Réglages Figure 3. Ensemble Pareto-optimal pour les problèmes PROB508 et PROB708 Pondération Retard 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Réglages 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Ensemble Pareto Meilleure solution dist Retard Réglages 1915 98 0.000 2447 47 0.150 2447 47 0.172 2447 47 0.191 2690 42 0.199 2690 42 0.203 2912 39 0.204 2912 39 0.198 3050 38 0.191 3789 34 0.175 6163 26 0.000 # solutions 18 19 17 17 16 16 20 20 15 18 12 Approche par compromis Meilleure solution Retard Réglages 1915 98 2447 47 2447 47 2447 47 2690 42 2690 42 2912 39 2912 39 3050 38 3789 34 6163 26 dist 0.000 0.150 0.172 0.191 0.199 0.203 0.204 0.198 0.191 0.175 0.000 Tableau 4. Comparaison de la performance entre l’approche de résolution proposée et l’ensemble Pareto-optimal pour différentes préférences du décideur pour le problème de 25 commandes (PROB508) Pondération Retard 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Réglages 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Ensemble Pseudo-Pareto Meilleure solution dist Retard Réglages 22807 132 0.000 24400 45 0.111 24993 40 0.138 25707 33 0.147 25707 33 0.152 25707 33 0.157 26470 29 0.154 26470 29 0.153 27922 25 0.145 29652 21 0.124 45377 11 0.000 # solutions 33 29 26 22 21 21 13 21 17 19 18 Approche par compromis Meilleure solution Retard Réglages 22882 135 24400 45 24732 42 25707 33 26262 32 26511 31 26470 29 27865 26 28009 25 30139 20 42731 15 dist 0.003 0.111 0.138 0.147 0.162 0.165 0.154 0.161 0.146 0.125 0.033 Tableau 5. Comparaison de la performance entre l’approche de résolution proposée et l’ensemble pseudo-Paretooptimal pour différentes préférences du décideur pour le problème de 45 commandes (PROB708) 5. CONCLUSIONS Dans cet article, nous avons présenté une approche générique permettant de formaliser la recherche de solutions de compromis à l’aide de métaheuristiques. Un exemple d’application de cette approche à un algorithme de RT pour la résolution d’un problème d’ordonnancement bi-objectifs a permis de démontrer MOSIM’03 – du 23 au 25 avril 20013 - Toulouse (France) l’efficacité de l’approche proposée. Celle-ci s’avère suffisamment générale pour convenir à l’utilisation de diverses métaheuristiques et pour traiter un nombre quelconque d’objectifs. De plus, l’approche proposée s’intègre facilement, par sa simplicité, dans un système interactif d’aide à la décision. REMERCIEMENTS Les auteurs tiennent à remercier Mlle Sara Morin, étudiante au baccalauréat en informatique de gestion, pour son travail au niveau de la programmation. REFERENCES Czyzac, P. and A. Jaszkiewicz (1998). "Pareto simulated annealing - a metaheuristic technique for multiple objective combinatorial optimization." Journal of Multicriteria Decision Analysis 7: 34-47. Fonseca, C. M. and P. J. Fleming (1995). Genetic algorithms for multiobjective optimization: Formulation, discussion and generalization. Procedings of the of the Fifth International Conference on Genetic Algorithms, San Mateo, CA., Morgan Kaufmann. Gagné, C., W. L. Price, et al. (2002). "Comparing an ACO algorithm with other heuristics for the single machine scheduling problem with sequence-dependent setup times." Journal of the Operational Research Society 53(8): 895906. Glover, F. (1989). "Tabu search – Part I." ORSA Jounal on Computing 1: 190-206. Glover, F. (1990). "Tabu search – Part II." ORSA Jounal on Computing 2: 4-32. Gravel, M., W. L. Price, et al. (2002). "Scheduling continuous casting of aluminum using a multiple-objective ant colony optimization metaheuristic." European Journal of Operational Research 143(1): 218-229. Hansen, M. P. (1997). Tabu search for multiple objective combinatorial optimization: MOTS. The 13th International Conference on Multiple Criteria Decision Making (MCDM), University of Cap Town. Horn, J. and N. Nafpliotis (1993). Multiobjective optimization using the niched Pareto genetic algorithms, IlliGAL Report No. 93005. Kanellakis, P.-C. and C. H. Papadimitriou (1980). "Local search for the asymmetric traveling salesman problem." Operations Research 28(5): 1087-1099. Malakooti, B. and Y. Q. Zhou (1994). "Feedforward artificial neural networks for solving discrete multiple criteria decision making problem." Management Science 40(11): 15421561. Mariano, C. E. and E. M. Morales (1999). MOAQ an Ant-Q Algorithm for Multiple Objective Optimization Problems. Genetic and Evolutionary Computing Conference (GECCO 99), San Francisco, California, July 1999, Morgan Kaufmann. Mladenovic, N. and P. Hansen (1997). "Variable neighborhood search." Computers & Operations Research 24(11): 10971100. Nagar, A., J. Haddock, et al. (1995). "Multiple and bicriteria scheduling: A literature survey." European Journal of Operational Research 81: 88-104. Or, I. (1976). Traveling salesman - type combinatorial problems and their relation to the logistics of regional blood banking, Ph.D. Thesis, Northwestern University. Purao, S., H. K. Jain, et al. (1999). "Supporting decision making in combinatorially explosive multicriteria situations." Decision Support Systems 26: 225-247. Ragatz, G. L. (1993). A branch-and-bound method for minimum tardiness sequencing on a single processor with sequence dependent setup times. Proceedings of the Twentyfourth Annual Meeting of the Decision Sciences Institute. Rubin, P. A. and G. L. Ragatz (1995). "Scheduling in a sequence dependent setup environment with genetic search." Computers and Operations Research 22(2): 85-99. Steuer, R. E. (1986). Multiple criteria optimization: Theory, computation and application, John Wiley & Sons. Steuer, R. E., L. R. Gardiner, et al. (1996). "A bibliographic survey of the activities and international nature of multiple criteria decision making." Journal of Multi-Criteria Decision Making 5: 195-217. Sun, M., A. Stam, et al. (1996). "Solving multiple objective programming problems using feed-forward artificial neural networks: the interactive FFANN procedure." Management Science 42(6): 835-849. Sun, M. and R. E. Steuer (1996). "Quad-Trees and Linear Lists for Identifying Nondominated Criterion Vectors." Journal on Computing 8(4): 367-375. Talbi, E.-G. (1999). Métaheuristiques pour l'optimisation combinatoire multi-objectif: état de l'art, Rapport CNET (France Telecom). Tan, K. C. and R. Narasimhan (1997). "Minimizing tardiness on a single processor with sequence-dependent setup times: a simulated annealing approach." Omega 25(6): 619-634. Tan, K. C., R. Narasimhan, et al. (2000). "A comparison of four methods for minimizing total tardiness on a single processor with sequence dependent setup times." Omega 28: 313-326. Ulungu, E. L. and J. Teghem (1994). "Multiobjective combinatorial optimization problems: A survey." Journal of Multicriteria Decision Analysis 3: 83-104. Ulungu, E. L., J. Teghem, et al. (1995). Heuristics for multiobjective combinatorial optimisation by simulated annealing. Multiple Criteria Decision Making: Theory and applications, Proceedings of the Sixth International Conference on MCDM, Beijing, China. White, D. J. (1990). "A bibliography on the application of mathematical programming multiple-objective methods." Journal of the Operational Research Society 41(8): 669691. Widmer, M. (2001). Les métaheuristiques: des outils performants pour les problèmes industriels. Proceedings de la 3ieme Conférence Francophone de MOdélisation et SIMulation. Conception, Analyse et Gestion des systèmes industriels (MOSIM'01), Troyes. France. Zeleny, M. (1982). Multiple criteria decision making. NewYork, McGrawHill. Zitzler, E., K. Deb, et al. (2000). "Comparison of Multiobjective Evolutionary Algorithms: Empirical Results." Evolutionary Computation 8(2): 173-195. Zitzler, E. and L. Thiele (1999). "Multiobjective Evolutionary Algorithms: A Comparative Case Study and the Strength Pareto Approach." IEEE Transactions on Evolutionary Computation 3(4): 257-271.