• Aucun résultat trouvé

4.4 Exp´erimentations num´eriques

4.4.4 R´esultats num´eriques des MIPs : Cat´egorie 2

En examinant les r´esultats trouv´es dans le tableau 4.14, nous avons constat´e que les deux mod`eles math´ematiques donnent des r´esultats identiques pour les instances de petite taille (10

job) en marquant un ´ecart nul, autrement dit la r´esolution est optimale.

D’autre part, nous remarquons que les r´esultats g´en´er´es par les 2 MIPs sont proches en ce qui concerne la 1`ere classe. Cependant, le MIP 1 surpasse le MIP 2 dans la r´esolution des instances de

20 jobs o`u n1=0.5n et n1=0.6n.

En ce qui concerne la 2`eme et la 3`eme classe, le MIP 2 surpasse le MIP 1 en r´ealisant des ´ecarts

faibles (inf´erieur `a 6%).

En outre, nous pouvons comparer aussi la performance des MIPs en examinant 2 facteurs `a savoir : la rapidit´e de r´esolution d´etermin´ee par le temps d’ex´ecution et le ´ecart trouv´e. De ce fait, le deuxi`eme MIP est consid´er´e plus performant car il a mis moins de temps que le premier MIP `a r´esoudre la plupart des instances, tout en gardant un ´ecart plus faible.

N´eanmoins, en augmentant la taille de probl`emes, nous trouvons que les 2 MIPs sont incapables de r´esoudre les grandes instances de 50 jobs et plus, ce qui est conforme avec la litt´erature.

Table 4.14 – Comparaison des r´esultats num´eriques trouv´es par MIP1 et MIP2 Class1

n1= n MER MIP1 MT MER MIP2 MT

0,5n 10 0,00 21.14 0,00 19,17 20 10,32 3611,92 12,70 3601,00 0,6n 10 0,00 55,63 0,00 34,97 20 10,04 3411,17 12,84 3326,80 0,7n 10 0,00 144,70 0,00 20,37 20 14,40 3608,80 13,26 3602,10 Classe 2

n1= n MER MIP1 MT MER MIP2 MT

0,5n 10 0,00 18,53 0,00 11,51 20 12,05 3681,23 3,18 3210,09 0,6n 10 0,00 4,87 0,00 5,33 20 5,42 3576,83 3,89 3103,81 0,7n 10 0,00 13,93 0,00 26,13 20 7,48 3693,83 5,88 3590,57 Classe 3

n1= n MER MIP1 MT MER MIP2 MT 0,5n 10 0,00 0,67 0,00 0,73 20 11,89 3605,00 4,39 3585,77 0,6n 10 0,00 1,23 0,00 1,47 20 3,84 3605,00 1,85 3276,66 0,7n 10 0,01 13,33 0,00 4,00 20 4,72 3605,00 3,23 3486,66

Le tableau 4.15 d´etermine le nombre d’instances r´esolues `a l’optimalit´e par chaque mod`ele. Nous remarquons que les deux mod`eles sont incapables de r´esoudre un grand nombre d’instances `a l’optimalit´e sauf les instances de petite taille, celles de 10 jobs. D’autre part, nous remarquons que les deux mod`eles ont r´esolu le mˆeme nombre d’instances dans la classe 1. Cependant, le mod`ele 2 surpasse le mod`ele 1 dans la classe 2 et 3 o`u nous trouvons un nombre plus grand des solutions optimales. Ceci confirme les r´esultats trouv´es dans le tableau 4.14 o`u nous avons remarqu´e que le mod`ele 1 surpasse le mod`ele 2 en g´en´erant des solutions de meilleure qualit´e pour la classe 1 (o`u n1=0.5 n et n1=0.6 n).

Table 4.15 – Nombre d’instance r´esolues `a l’optimalit´e par les deux mod`eles Nombre d’instances resolues `a l’optimalit´e

n1= n Classe 1 Classe 2 Classe 3 MIP 1 MIP 2 MIP 1 MIP 2 MIP 1 MIP 2

0,5n 10 30 30 30 30 30 30 20 0 0 0 2 0 1 0,6n 10 30 30 30 30 30 30 20 2 2 1 2 0 3 0,7n 10 30 30 30 30 30 30 20 0 0 0 1 0 1

4.5

Conclusion

Dans ce chapitre, nous avons pr´esent´e des bornes inf´erieures et 2 mod´elisations math´ematiques pour le probl`eme ´etudi´e. Nous avons ´etudi´e la performance de la borne retenue par rapport `a la borne de solveur. Par la suite, nous avons test´e les 2 mod`eles lin´eaires avec le solveur CPLEX. Les 2 MIPs ont offert des solutions r´ealisables dans une heure de calcul pour les instances de 10 et 20 jobs. En ce qui concerne les instances de 50 jobs, les 2 MIPs donnent des solutions de mauvaise qualit´e avec un ´ecart tr`es grand (par rapport `a la borne inf´erieure initiale LBbest qui d´epasse 80

%, pour cela, nous ne l’avons pas pr´esent´e dans le chapitre).

D’autre part, les 2 MIPs ´etaient incapables de trouver des solutions pour les probl`emes de 50 jobs et plus. De ce fait, nous avons pr´esent´e uniquement les r´esultats des MIPs pour les instances de 10 et 20 jobs. Ce chapitre a montr´e les limites de la premi`ere m´ethode de r´esolution et nous encourage `a entamer une deuxi`eme voie de recherche.

Chapitre 5

M´ethodes approch´ees : algorithmes

´evolutionnistes

Sommaire

5.1 Introduction . . . 62 5.2 Algorithme g´en´etique I . . . 63 5.2.1 Codage de la solution . . . 63 5.2.2 G´en´eration de la population initiale . . . 64 5.2.3 Evaluation : calcul de Fitness . . . 65´ 5.2.4 Op´erateurs g´en´etiques : s´election, croisement et mutation . . . 65 5.3 Algorithme g´en´etique II . . . 69 5.3.1 Codage de la solution . . . 72 5.3.2 G´en´eration de la population initiale . . . 72 5.3.3 Evaluation : Calcul de la Fitness . . . 72´ 5.3.4 Op´erateurs g´en´etiques . . . 73 5.4 Comparaison des AGs . . . 74 5.5 Param´etrage des algorithmes . . . 77 5.5.1 Les param`etres test´es . . . 77 5.5.2 Choix des param`etres . . . 78 5.6 Combinaison des AGs avec une recherche locale it´erative . . . 81 5.6.1 Fonctionnement de la recherche locale . . . 81 5.6.2 Fonctionnement de la recherche locale it´erative . . . 82 5.7 Algorithme m´em´etique bas´e sur la recherche locale it´erative . . . 83 5.8 Comparaison empirique des AGs . . . 84 5.8.1 Comportement des AGs suivant le crit`ere d’arrˆet : nombre d’it´erations . . 85 5.8.2 Comportement des AGs suivant le crit`ere d’arrˆet : dur´ee d’ex´ecution . . . 93 5.9 Analyse des r´esultats dans les deux cat´egories de donn´ees . . . 96 5.10 Comparaison AG+RLI avec l’algorithme m´em´etique . . . 96 5.11 Conclusion . . . 98

Apr`es avoir pr´esent´e deux mod´elisations math´ematiques qui permettent de r´esoudre, de mani`ere exacte, le probl`eme ´etudi´e, nous proposons ici une m´ethode de r´esolution approch´ee de type algo- rithme g´en´etique. Ce choix est motiv´e par la complexit´e du probl`eme ´etudi´e. En effet, les m´ethodes exactes ne permettent pas de r´esoudre des instances de taille importante dans des dur´ees raison- nables. Ce chapitre vise alors `a r´esoudre les instances de grande taille et obtenir des solutions de bonne qualit´e dans un temps de calcul acceptable.

5.1

Introduction

Dans la litt´erature, plusieurs m´eta-heuristiques ont ´et´e propos´ees dans le but de r´esoudre les probl`emes de flow shop hybride. Dans ce travail, nous avons choisi les al- gorithmes g´en´etiques (AGs) pour deux raisons principales. La premi`ere, les algorithmes g´en´etiques se sont av´er´es efficaces avec plusieurs probl`emes proches tel que pr´esent´e dans l’´etat de l’art. En effet, nous trouvons plusieurs auteurs affirmant l’efficacit´e des AGs dans la r´esolution du FH avec des diff´erentes contraintes, par exemple [Reeves, 1995], [Ruiz and Maroto, 2006], [Kahraman et al., 2008], [Jolai et al., 2009], [BESBES et al., 2010], [Sioud et al., 2012, Sioud et al., 2013], [Wang and Liu, 2013a], [Jun and Park, 2015]. Ceci nous a motiv´e `a choisir cette approche de r´esolution.

La seconde raison, les AGs comme les autres m´eta-heuristiques ne sont soumis `a aucune hypoth`ese vis-`a-vis la nature des fonctions `a optimiser et peuvent donc th´eoriquement traiter tous types de probl`emes.

Les AGs ont ´et´e introduits pour la premi`ere fois par [Holland, 1975] en 1975, puis par [Goldberg and Deb, 1991]. Ils sont inspir´es de la th´eorie de l’´evolution naturelle d´evelopp´ee par Darwin.

L’algorithme g´en´etique fait partie des algorithmes ´evolutionnaires qui se basent sur un ensemble de plusieurs solutions simultan´ement. Il fait ´evoluer une population de solutions progressivement par un processus de reproduction constitu´e des op´erateurs de s´election, de croisement et de mutation pour cr´eer de nouvelles populations avec de meilleurs individus. Ce processus est r´ep´et´e `a travers les g´en´erations jusqu’`a obtenir une population finale avec des individus d’une meilleure qualit´e et qui s’approchent au mieux de la solution optimale. La figure 5.1 pr´esente le fonctionnement g´en´eral d’un algorithme g´en´etique.

Figure 5.1 – Fonctionnement g´en´eral de l’algorithme g´en´etique

Dans ce chapitre, nous pr´esentons tout d’abord un premier algorithme g´en´etique (AG1) o`u un individu est repr´esent´e par une seule permutation qui d´efinit un ordre des jobs sur le deuxi`eme ´etage (E2). Puis un deuxi`eme algorithme g´en´etique (AG2) o`u chaque individu est repr´esent´e par une permutation qui d´efinit un ordre de jobs sur le premier ´etage (E1). Dans les deux algorithmes, nous proposons une proc´edure pour la d´etermination de la fonction objectif.

Pour chaque AG, nous d´ecrivons, tout d’abord, le codage de chaque individu, la construction de la population initiale, la fonction d’´evaluation, la s´election des individus parents pour la reproduc- tion, puis les op´erateurs de reproduction (croisement et mutation). Ensuite, nous pr´esentons une proc´edure de recherche locale afin d’explorer un espace de recherche plus large.