A GRASPxELS approach for the Job Shop with generic time-lags and new statistical determination of the parameters Présenté par : Equipe de travail : Laboratoire : Maxime CHASSAING Philippe LACOMME, Nikolay TCHERNEV, Jonathan FONTANEL, Libo REN LIMOS (Laboratoire d Informatique, de Modélisation et d Optimisation des Systèmes) Contact : maxime.chassaing@isima.fr
ROADEF 213 à Troyes Plan Plan de la présentation Introduction et contexte 1. Présentation du problème Job-shop avec time-lags généraux 2. Démarche de résolution Principe et fonctionnement du GRASPxELS 3. L optimisation des paramètres Un premier échantillonnage Front de Pareto 4. Les résultats Conclusion 2
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème 1. Présentation du problème A- Job Shop 1. Ensemble de N jobs 2. Ensemble de M machines 1. Une opération Oij : un job i, une machine j, une durée dij 2. Un Job = Une suite ordonnée d opérations 3. 3 règles à respecter : 1. À chaque instant t : au plus 1 opération par job 2. À chaque instant t : au plus 1 opération par machine 3. Une opération d un job peut commencer que si toutes les opérations qui la précèdent sur ce job ont été réalisées 4. Objectif : Ordonnancer les opérations pour finir les jobs en un minimum de temps 3
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème B- Exemple de Job Shop Données du problème : 3 jobs et 3 machines Operation 1 Operation 2 Operation 3 Job 1 (m1,6) (m2,5) (m3,7) Job 2 (m3,5) (m2,7) (m1,6) Job 3 (m2,8) (m1,4) (m3,5) 4
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème C- Les Time-lags O(3,x) O(x,2) O(x,x ) Job identique O(3,y) Machine identique O(y,2) Opérations quelconques O(y,y ) Publications concernant les time lags Dans divers problèmes d'ordonnancement On-line two-machine open shop scheduling with time lags Original Research Article European Journal of Operational Research, Volume 24, Issue 1, 1 July 21, Pages 14-19 Xiandong Zhang, Steef van de Velde Hybrid flow shop scheduling with precedence constraints and time lags to minimize maximum lateness Original Research Article International Journal of Production Economics, Volume 64, Issues 1 3, 1 March 2, Pages 11-111 Valérie Botta-Genoulaz Job Shop et time-lags entre opérations successives d un même job Generalized disjunctive constraint propagation for solving the job shop problem with time lags Original Research Article Engineering Applications of Artificial Intelligence, Volume 24, Issue 2, March 211, Pages 22-231 Christian Artigues, Marie-José Huguet, Pierre Lopez A memetic algorithm for the job-shop with time-lags Original Research Article Computers & Operations Research, Volume 35, Issue 7, July 28, Pages 2331-2356 Anthony Caumond, Philippe Lacomme, Nikolay Tchernev Job Shop et time-lags géneraux On-line two-machine job shop scheduling with time lags Information Processing Letters, Volume 11, Issues 12 13, 15 June 21, Pages 51-513 Xiandong Zhang, Steef van de Velde 5
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème E- Contraintes de time-lags 1. Contraintes de time-lags entre 2 opérations O i O, j et i', j' My... Opération Oi j Durée : 6 Mx Opération Oij Durée : 5 l oi o, j, i ', j ' Remarques : L oi o, j, i ', j ' 1. Si l o i o,, j i ', j ' O i et O, j i', j' et : L oi o, j, i ', j ' Problème du job shop 7
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème F- État de l art Job Shop + times- lags généraux Job Shop + times- lags entre opérations successives Artigues et al, (211) Caumond et al, (26) Job Shop Job Shop No-Wait Gao et al, (211) Rego et al, (29) Kamul et al, (29) Huang et al, (25) Gonçalves et al, (22) Schuster and Framinan, (26) Mascis A and Pacciarelli, 22) 8
ROADEF 213 à Troyes Partie 1/4 : Présentation du problème G- Les instances du job shop avec TL 1. Basées sur deux ensembles d instances: 1. Instances de Lawrence (1984) Les plus utilisées : 1. Tailles variables : de 5x1 à 15x15 de 5 à 225 Opérations 2. 4 groupes : LA 1 > LA1 (<76 Opérations) LA 11 > LA 2 (<11 Opérations) 2. Instances de Carlier : 1. car1 -> car8 tailles environ 1 opérations LA 21 > LA 3 (<2 Opérations) LA 31 > LA 4 (>=2 Opérations) 2. Auxquelles sont ajoutées des times-lags Instances disponibles sur le site: http://www.isima.fr/~lacomme/gtl/instancesgtl.html 9
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution 2. Démarche de résolution A- Rappels sur le job shop 1-to-n mapping n-to-1 mapping 1-to-1 mapping Coding space Solution space Cheng R., Gen M. and Tsujimura Y., A tutorial survey of job-shop scheduling problems using genetic algorithms I representation, Computers and industrial engineering, 1996, 3, pp. 983-997. 1
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution B- Construction du graphe Disjonctif non Orienté Gamme du problème : Contraintes de Time-lags: 1 : (min) (max) lo 1,1 Lo, o 1,1 2,2, o 2,2 2 3 m1 m2 m3 2: (min) (max) lo Lo 2,1 2,1, o 3,1, o 3,1 5 2 (1,1) 1 (1,2) 35 (1,3) 3-4 25 15 16 (2,1) (2,2) (2,3) 12 m1 m3 m2 2-35 (3,1) 11 (3,2) 12 (3,3) 21 * 1 : Contraintes de précédence 2 : Contraintes de Time-lags 3 : Contraintes Disjonctives 11 m3 m1 m2
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution C- Démarche globale 3 difficultés 12
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution D- Construction du graphe Disjonctif Orienté (première difficulté) Cycles dus aux arcs disjonctifs Vecteur de Bierwirth (1995) Pour le Job Shop : Ordre topologique Vecteur par répétition Graphe orienté Evaluer Numéro de job acyclique algorithme «Dijkstra Like» m1 m2 m3 (1,1) 1 (1,2) 35 (1,3) 7 1 1 25 12 16 15 58 25 13 15 16 (2,1) (2,2) (2,3) 12 m1 m3 m2 15 21 11 25 37 21 * 13 (3,1) 11 12 (3,2) (3,3) m3 m1 m2
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution E- Construction du graphe Disjonctif Orienté (deuxième difficulté) Cycles dus aux arcs time-lags min m1 m2 m3 (1,1) 1 (1,2) 35 (1,3) 3-4 25 15 16 (2,1) (2,2) (2,3) 12 m1 m3 m2 * 2-35 21 Intégrer cette contrainte au VB (3,1) 11 (3,2) 12 (3,3) m3 m1 m2 Solution space n-to-1 mapping 14 m1 m2 m3 (1,1) 1 (1,2) 35 (1,3) 3-4 25 Coding space Bierwirth vector 15 16 (2,1) (2,2) (2,3) 12 m1 m3 m2 2-35 21 (3,1) 11 12 (3,2) (3,3) *
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution F- Construction du graphe Disjonctif Orienté (troisième difficulté) Cycles dus aux arcs time-lags max L oi o, j, i ', j ' m1 m2 m3 (1,1) 1 (1,2) 35 (1,3) Relaxer les contraintes de times lags max Puis les ajouter progressivement (si c est possible!!) -4 25 3 15 16 (2,1) (2,2) (2,3) 12 m1 m3 m2 2-35 (3,1) 11 12 (3,2) (3,3) 25 21 * Hiérarchiser : Cost[S]= P1*N + P2*makespan N = le nombre de contraintes toujours relaxées P1 et P2 des constantes m3 m1 m2 1 2 3+ Nombre de contraintes (time lags max) relaxées x 15
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution G- La recherche locale voisinage de Laarhoven (1985) 1. Remonte le chemin critique de la gauche vers la droite m1 m2 m3 (1,1) (2,1) (3,1) 1 (1,2) 35 15 16 (2,2) (2,3) 12 m1 m3 m2 15 1 11 7 1 25 12 16 25 37 11 12 (3,2) (1,3) (3,3) m3 m1 m2 15 58 21 25 21 13 * 2. On permute dans le Vecteur de Bierwirth les opérations successives situées sur des jobs différents 17
ROADEF 213 à Troyes Partie 2/4 : Démarche de résolution H- Le GRASP x ELS ELS : a integer Nmax : a integer nbstart : a integer MaxIterLS : a integer For m in 1 to nbstart Find a solution S S : a solution bestvb : a Bierwirth vector For i in 1 to ELS S_bestVB < - VB < - bestvb For n in 1 to Nmax np iterations Best solution G' b, b Random Heuristic ELS Get neighbors : VB VB : a Bierwirth vector Mutation on 1 EVALUATE G 1 Mutation on k EVALUATE G k Evaluate : VB S : a solution i : a integer (i ) Local search : VB, S, MaxIterLS S : a solution i : a integer (i ) Local Search G ' ' 1, 1 Set of Local Search G ', ' k k if S <S_bestVB S_bestVB < - VB < - bestvb else 18 S : a solution i : a integer
ROADEF 213 à Troyes Partie 3/4 : Optimisation des paramètres 4. Optimisation des paramètres A- Principe Les paramètres influencent le résultat 1. Pour le GRASP x ELS : 4 paramètres Paramètrage : GRASP x ELS P { Start, ELS, N, IM_RL} Résultat: R { écart, time} Instances : LA1-LA4 Et Car1->Car8 Sélectionner une sous population (Représentative) 5 instances 48 instances 2
ROADEF 213 à Troyes Partie 3/4 : Optimisation des paramètres B- Front de Pareto Entrée : Start : [min,max], pas ELS : [min,max], pas N : [min,max], pas IM_RL : [min,max], pas Une procédure : Génère tous les paramétrages possibles Tester la méthode Sortie : Associée à chaque paramétrage généré : Un couple : { écart, time} 5 Instances Front de Pareto : - > 8 paramétrages incomparables 21
ROADEF 213 à Troyes Partie 4/4 : Les Résultats 1. Les résultats A- Exécutions Un jeu de paramètres sélectionné Moyenne sur 1 exécutions Pas de comparaison possible sur les instances du Job Shop avec time-lags généraux MAIS : Méthode à large spectre Comparaisons possible avec : Job Shop Job Shop no-wait Job Shop avec time-lags sur opérations successives de même job (méthode non dédiée à ces problèmes) 23
ROADEF 213 à Troyes Partie 4/4 : Les Résultats 1. Les résultats A- Résultats : job shop Gonçalves (22) Huang (25) Kamrul (29) Rego (29) Gao(211) Our proposal Small Medium Large Nightmare <x<76 76<x<11 11<x<2 x>2 Param Active Avg. Dev...6 1.1.62 HGA Avg. Dev..27.85 2.48 1.41 Non delay Active Avg. Dev..24.25 2.72 1.41 Scale time T* 37.6 117.7 534.3 1573.2 SB Avg. Dev. 1.55 2.1 7.51 3.55 Av.T* N/A N/A N/A N/A MSB Avg. Dev..96 1.48 3.68 2.44 Scale time TT...1.3 GA Avg. Dev..62 2.9 6.28 5.72 MA (PR) Avg. Dev..62 2.5 6.2 5.54 MA (GR) Avg. Dev...31 3.4 2.27 MA (GR.RS) Avg. Dev...6 2.7 1.61 Scale time T* N/A N/A N/A N/A Scale time TT N/A N/A N/A N/A Avg. Dev...12.55.58 F&F Scale time T* N/A N/A N/A N/A Scale time TT.61.72 6.3 5.13 Avg. Dev....79.67 MA Scale time T* N/A N/A N/A N/A Scale time TT N/A N/A N/A N/A Avg. Dev..3.58 9.21 1.32 GRASPxELS Scale time T*.96 6. 2.97 3.42 Scale time TT 1.36 9.94 38.8 57.31 24
ROADEF 213 à Troyes Partie 4/4 : Les Résultats B- Résultats : Job Shop no-wait (Mascis A and Pacciarelli, 22) (Schuster and Framinan, 26) (Caumond et al, 28) Our proposal AMCC SMCP / SMBP SMSP VND GASA CLM-time CLM MA GRASP ELS Small Medium Large Nightmare <x<76 76<x<11 11<x<2 x>2 Avg. Dev. N/A N/A N/A N/A Scale time TT N/A N/A N/A N/A Avg. Dev. 57.55 44.5 43.2 N/A Scale time TT N/A N/A N/A N/A Avg. Dev. N/A N/A N/A N/A Scale time TT N/A N/A N/A N/A Avg. Dev. 14.5 15.6 15.4 13.9 Scale time T*.... Scale time TT N/A N/A N/A N/A Avg. Dev. 5.95 6.45 4 2 Scale time T*.45.95 2 5.3 Scale time TT N/A N/A N/A N/A Avg. Dev. 5.11 4.84 7.36 8.3 Scale time T*.45.95 2 5.3 Scale time TT N/A N/A N/A N/A Avg. Dev. 3.31 2.57 1.73 1.93 Scale time T* 4.4 12.7 35.9 127.8 Scale time TT N/A N/A N/A N/A Avg. Dev. 4.53 14.58 Scale time T* 1543.7 497.85 N/A Scale time TT 967 2566.9 Avg. Dev. 41 7.33 135 17.3 Scale time T* 121.3 26.85 391.5 727.5 Scale time TT 269.15 449.2 879.6 169.1 26
ROADEF 213 à Troyes Partie 4/4 : Les Résultats C- Résultats : job shop avec time-lags Our proposal GRASPxELS Small Medium Large Nightmare <x<76 76<x<11 11<x<2 x>2 Avg. Dev...15 6.96 6.18 Scale time T* 9.32 18.99 88.53 91.47 Scale time TT 44.95 76.85 168.85 179.45 GRASP x ELS Instance BKS Scale time Scale time name BFS gap (%) T* (s) TT (s) La1_GTL 666 666. 1. 1. La2_GTL 697 697. 5. 5. La3_GTL 636 636. 2. 2. La4_GTL 713 713. 7.6 7.6 La5_GTL 593 593. 4.3 4.3 La36_GTL 135 1443 1.24 74.9 137.2 La37_GTL 1566 1667 8.84 46.3 13.6 La38_GTL 1295 1429 12.13 73.2 147.4 La39_GTL 139 1477 8.82 62.7 117.9 La4_GTL 132 1485 14.51 34.3 9.1 average 3.31 52.8 117.52 28
ROADEF 213 à Troyes Conclusion Conclusions Job Shop avec time-lags Un problème d optimisation qui englobe des problèmes traités GRASPxELS Une méthode complexe adaptée à ce problème Des résultats intéressants Instances disponibles sur le site: http://www.isima.fr/~lacomme/gtl/instancesgtl.html 29