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.