• Aucun résultat trouvé

Heuristiques et Metaheuristiques

fin lorsqu’on priorise le rendement attendu. Cela illustre une fois encore la nature antagoniste des deux crit`eres. Cependant, ce n’est pas toujours vrai puisque la somme des dates de fin n’est pas toujours antagoniste avec le rendement attendu. Afin de minimiser la somme des dates de fin, il y a une tendance `a ordonnancer les jobs d’une famille donn´ee sur la mˆeme ”meilleure” machine afin de r´eduire les setups et donc la somme des dates de fin.

Fronti`eres de Pareto pour P T C

Le probl`eme P T C est un probl`eme `a deux objectifs (contraditoires). Pour les probl`emes `a plusieurs objectifs, on s’int´eresse souvent `a d´eterminer des solu- tions Pareto-Optimales. P T C comprend deux crit`eres : un crit`ere d’ordonnan- cement classique qui est la somme des dates des jobs et un crit`ere particulier qui est la somme des d´equalifications de la machine. Les r´esultats des tests montrent qu’il existe un fort compromis entre le maintien des qualifications des machines et l’ex´ecution d`es que possible des jobs. De plus, les r´esultats indiquent que la somme des dates de fin peut augmenter consid´erablement lorsque le nombre maximal de pertes de qualification de la machine est r´eduit et vice versa.

Analyse de sensibilit´e du seuil de temps pour P T C

L’impact des seuils de temps sur la somme des pertes de qualification des machines est ´egalement ´etudi´e. Dix types d’instances diff´erentes sont choisies et analys´ees. Le seuil de temps de la premi`ere famille varie de 1 `a l’horizon T , tandis que les seuils des autres familles sont d´efinis `a T pour mettre l’accent sur le seuil d’une famille `a la fois c’est-`a-dire, ∀f ∈ F, f 6= f1γf = T.

Les tests sont effectu´es tout en priorisant le crit`ere de qualification (α = 1 et β = |N | ∗ T ) pour ´etudier l’effet du seuil de temps sur ce crit`ere. Les r´esultats montrent que le nombre de d´equalifications des machines diminue `a mesure que le seuil de temps augmente. Les machines ont plus de temps pour traiter les jobs de la famille et passer `a d’autres familles.

0.7

Heuristiques et Metaheuristiques

Heuristiques constructives

Des heuristiques sont d´evelopp´ees pour r´esoudre P T C et P EHF : (Scheduling- Centric Heuristic SCH ) et (Qualification-Centric Heuristic QCH ). De plus, (Yield-Centric Heuristic YCH ) est ´egalement d´evelopp´e pour traiter le crit`ere

(SCH ), comme son nom l’indique, met l’accent sur l’ordonnancement, la deuxi`eme (QCH vise `a r´eduire au minimum la perte de qualifications des machines et la troisi`eme vise `a maximiser le rendement total (YCH ).

Scheduling-Centric Heuristic (SCH)

Le principal objectif de SCH consiste `a minimiser les temps de setup. Rap- pelons qu’un temps de setup est n´ecessaire lorsque deux jobs de diff´erentes familles sont ordonnanc´es cons´ecutivement sur une machine. L’heuristique ordonnance les jobs d’une mˆeme famille successivement sur une machine, jusqu’`a ce que tous les jobs de la famille soient ordonnanc´es ou qu’il ne soit plus possible d’ordonnancer les jobs de la famille sans perdre la qualification de la machine. S’il n’est plus possible d’ordonnancer les jobs d’une famille avant son seuil de temps restant, la machine est d´equalifi´ee pour la famille.

Qualification-Centric Heuristic (QCH)

L’objectif principal QCH est de minimiser le nombre de violations de la con- trainte de temps sur les machines sur lesquelles chaque famille est qualifi´ee. Pour ce faire, dans la premi`ere phase de QCH, les jobs avec le seuil de temps restant le plus petit sont ordonnanc´es sur une machine en priorisant toujours la qualification. Cependant, cela entraˆıne un grand nombre de setups. C’est pourquoi deux autres phases d’am´eliorations locales sont appliqu´ees pour r´eduire le nombre de setups. La phase 2 tente de faire avancer le dernier job de chaque machine en le combinant avec le premier job de la mˆeme famille or- donnanc´ee sur la machine, c’est-`a-dire des changements intra-machines sont ´evalu´es. La phase 3 permet des changements inter-machines.

Yield-Centric Heuristic (Y CH)

L’heuristique (Y CH) vise `a maximiser le rendement total X f ∈F X m∈M T X t=1 xmf,tvmf

Elle ordonnance d’abord les jobs sur la machine ayant un rendement maxi- mum. Ensuite, l’heuristique tente de garantir la non violation des seuils de temps.

0.7 Heuristiques et Metaheuristiques

Les heuristiques SCH et QCH

En comparant les heuristiques entre elles, on remarque que les r´esultats de SCH sont le plus souvent meilleurs que ceux de QCH en termes de somme des dates de fin (38/47 instances r´esolues). D’autre part, comme pr´evu, QCH donne les meilleurs r´esultats en termes de pertes de qualification des machines (49/49 instances r´esolues). Il est important de noter que les heuris- tiques ne peuvent pas toujours r´esoudre les instances car, selon l’heuristique, une machine peut perdre sa qualification pour une certaine famille et aucun traitement sur une autre machine n’est possible (aucune autre machine qual- ifi´ee pour cette famille de jobs). Dans ce cas, les jobs de la famille consid´er´ee ne pouvent ˆetre ordonnanc´es sur une autre machine et la solution est irreal- isable. C’est le cas avec les instances 6 pour QCH, les instances 6, 23 et 29 pour SCH.

Les heuristiques SCH, QCH et Y CH

Les simulations ont montr´e que, pour certaines instances, les solutions peu- vent ˆetre r´ealisables pour certaines heuristiques et irr´ealisables pour d’autres. Y CH a la meilleure solution pour la somme du rendement attendu dans 41/47 instances r´esolues compar´e `a SCH et QCH. QCH a les meilleures solutions concernant la somme des d´equalifications des machines pour 45 /49 instances r´esolues par rapport `a SCH et Y CH. Quant `a la somme des dates de fin, SCH a de meilleures performances pour 29/47 instances. Cependant, Y CH montre une performance diff´erente pour la somme des dates de fin (les meilleures solutions sont obtenues pour 26/49 instances). Cela s’explique par la tendance de Y CH `a ordonnancer les jobs de la mˆeme famille sur la ma- chine avec le meilleur indice de sant´e, minimisant ainsi le nombre de setups, et par cons´equent la somme des dates de fin.

Heuristique R´ecursive (RH)

L’id´ee g´en´erale de cet algorithme est d’ordonnancer des tˆaches en acceptant chaque fois une perte de qualification ou plus. Plus pr´ecis´ement, nous envis- ageons une solution obtenue par une des heuristiques introduites pr´ec´edemment, et nous r´eappliquons cette heuristique apr`es un changement du sch´ema de qualification initiale. Les perturbations dans le sch´ema de qualification sont choisies parmi l’ensemble des machines qui ont perdu leurs qualifications dans la solution obtenue par l’heuristique. En d’autres termes, avec un or- donnancement des jobs utilisant une heuristique donn´ee, nous ´etudions la solution afin de v´erifier si les machines ont encore la capacit´e de traiter les jobs, c’est-`a-dire si les seuils de temps sont respect´es ou non. Si ce n’est

seuil et nous r´eappliquons l’heuristique de mani`ere r´ecursive afin d’am´eliorer la solution (voir figure 2).

Figure 2: Algorithme r´ecursif

• Si la solution obtenue par une heuristique constructive admet une perte ou des pertes de qualifications de la machine, alors

– Tant qu’une combinaison de d´equalifications n’est pas test´ee: ∗ D´equalifier les machines avec la combinaison du sch´ema de

d´equalification courant,

∗ Appliquer une heuristique constructive avec un nouveau sch´ema de qualifications :

· Si la solution est r´ealisable, alors accepter la solution · Sinon, retourner la mˆeme solution de l’heuristique con-

structive.

• Sinon, retourner la mˆeme solution de l’heuristique constructive.

Metaheuristique : Recuit Simul´e (RS)

Le recuit simul´e est une m´etaheuristique inspir´ee d’un processus utilis´e en m´etallurgie Kirkpatrick et al. (1983). On alterne dans cette derni`ere des cycles de refroidissement lent et de r´echauffage (recuit) qui ont pour effet de minimiser l’´energie du mat´eriau.

0.7 Heuristiques et Metaheuristiques

• Pour le probl`eme ´etudi´e, les trois principaux param`etres critiques du RS sont initialis´es de la mani`ere suivante.

– To: La temp´erature initiale (ou alternativement la probabilit´e

d’accepter Po). La valeur initiale de la temp´erature est impor-

tante pour la performance du RS. Si elle est fix´ee trop haute, l’algorithme pourrait passer trop de temps sur des solutions de mauvaise qualit´e. Si elle est fix´ee trop basse, l’algorithme ne fournira pas de meilleures solutions que les heuristiques construc- tives. Nous consid´erons To = 20000.

– α < 1: Le cefficient de refroidissement. Le facteur dans notre cas est 0.95.

– t: D´ecrit la fa¸con dont la temp´erature est r´eduite tout au long de l’algorithme. Nous avons consid´er´e un refroidissement d´efini par T (t) = αT (t − 1). Il permet de r´eduire la temp´erature tr`es rapidement.

• Crit`ere d’arrˆet fixe

– Nstop: Le nombre maximal d’it´erations sans am´elioration. L’algori-

thme de RS s’arrˆete soit quand le nombre maximal d’it´erations est atteint soit quand le temps d’ex´ecution est de 600 secondes. • Un voisinage S(s). Tout d’abord, il est important de mentionner que

dans les probl`emes ´etudi´es, l’espace de solution se compose au maxi- mum de toutes les permutations des jobs, c’est-`a-dire n!. L’algorithme de RS tente de minimiser l’objectif de P T C et maximiser celui de P EHF . Les mouvements se font de permutation en permutation. Nous appelons un voisin de s, une permutation qui est accessible par un mou- vement. La fa¸con dont sont g´en´er´es les voisins a un effet sur l’efficacit´e du RS. Deux fa¸cons de faire des mouvements sont propos´ees :

– Insertion ”‘intra” signifie qu’un job sur une machine donn´ee est s´electionn´e dans la position j et ins´er´e avant un autre job `a la po- sition i sur la mˆeme machine. Chaque fois qu’une insertion ”intra” est effectu´ee, la faisabilit´e de la s´equence obtenue est test´ee. – Insertion ”inter” signifie que les jobs sont ´echang´es entre diff´erentes

machines.

Le sch´ema de RS se r´esume comme suit. • D´eterminer une solution initiale s ∈ S

o

• R´ep´eter • Counter = 0

– Repeat

– Generer une solution s′ ∈ S(s)

– Calculer δs,s′ = Cost(s′) − Cost(s) ∗ Si δs,s′ ≤ 0, alors s = s′.

∗ Sinon, s = s′ avec la probabilit´e exp(−δs,s′/T (t)) – Counter = Counter + 1

– T (t) = αT (t − 1) – Jusqu’`a Counter = Mt

• t = t + 1

• Jusqu’`a crit`ere d’arrˆet (Nstop)

R´esultats num´eriques

Dans cette section, nous pr´esentons les r´esultats num´eriques obtenus avec les heuristiques sur les instances g´en´er´ees. Les r´esultats montrent, comme pr´evu, que SCH donne g´en´eralement de meilleurs r´esultats pour la somme des dates de fin, que QCH fournit de meilleures solutions sur le nombre de pertes de qualification machine et que l’heuristique Y CH est plus perfor- mant sur la maximisation du rendement attendu. L’algorithme r´ecursif et le recuit simul´e montrent une performance remarquable dans l’am´elioration des solutions (les r´esultats d´etaill´es se trouvent dans la version compl`ete de la th`ese). Les r´esultats obtenus par les m´ethodes d´evelopp´ees sont compar´es avec les solutions exactes obtenues par le solveur standard XPRESS-MP.

Documents relatifs