La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Ordonnancement des job-shops flexibles sous contraintes de disponibilité des machines LAGIS - Ecole Centrale de Lille Nozha ZRIBI.

Présentations similaires


Présentation au sujet: "Ordonnancement des job-shops flexibles sous contraintes de disponibilité des machines LAGIS - Ecole Centrale de Lille Nozha ZRIBI."— Transcription de la présentation:

1 Ordonnancement des job-shops flexibles sous contraintes de disponibilité des machines LAGIS - Ecole Centrale de Lille Nozha ZRIBI

2 27 Janvier 2006Réunion Gotha2 Deux formulations Deux formulations Cadre de létude Job-shop flexible (1) O 1,1 O 1,2 O 1,3 O 2,1 O 2,2 O 3,1 O 3,2 M1 M2 M3 M4 Job1 Job2 Job3 MPM JSP FJSP p ijk Indisponibilité durant certaines périodes connues a priori Indisponibilité durant certaines périodes connues a priori

3 27 Janvier 2006Réunion Gotha3 Plan Plan Durées indépendantes de la flexibilité Durées indépendantes de la flexibilité Approche par phases Approche par phases Approche intégrée basée sur la résolution exacte du problème à 2-jobs Approche intégrée basée sur la résolution exacte du problème à 2-jobs Périodes dindisponibilité flexibles Périodes dindisponibilité flexibles

4 27 Janvier 2006Réunion Gotha4 Approche par phases principe Approche par phases principe Problème daffectation Problème de séquencement Heuristique daffectation Borne inférieure du Critère global étudié Approche évolutionniste -Détermination de la solution initiale avec des règles de priorité - Définition dun critère intermédiaire -Amélioration de laffectation par une Recherche Tabou -Mesure de la qualité de la solution daffectation -Choix de la solution

5 27 Janvier 2006Réunion Gotha5 Problème daffectation Solution initiale Problème daffectation Solution initiale Relaxation des contraintes de précédence Relaxation des contraintes de précédence Définition dune date de début au plutôt pour chaque opération Définition dune date de début au plutôt pour chaque opération Le problème est équivalent à un problème à machines parallèles Le problème est équivalent à un problème à machines parallèles Flexibilité partielle Flexibilité partielle Dates de début au plus tôt Dates de début au plus tôt Contraintes de disponibilité Contraintes de disponibilité

6 27 Janvier 2006Réunion Gotha6 Problème daffectation Solution initiale Problème daffectation Solution initiale Schéma de lheuristique daffectation Schéma de lheuristique daffectation A chaque itération du programme A chaque itération du programme Détermination de lensemble dopérations affectables sur M k Détermination de lensemble dopérations affectables sur M k Détermination de la charge de M k Détermination de la charge de M k Pour chaque opération affectable de M k Pour chaque opération affectable de M k Tester si lopération peut être placée avant la prochaine période dindisponibilité Tester si lopération peut être placée avant la prochaine période dindisponibilité Choisir un couple (opération, machine) selon une règle de priorité Choisir un couple (opération, machine) selon une règle de priorité

7 27 Janvier 2006Réunion Gotha7 Problème daffectation Solution initiale Problème daffectation Solution initiale Règle de priorité Règle de priorité Sélectionner la machine la moins chargée M k Sélectionner la machine la moins chargée M k Trier Les opérations affectables selon leur degré de flexibilité Trier Les opérations affectables selon leur degré de flexibilité Affecter à M k la première opération pouvant être placée avant la prochaine période dindisponibilité Affecter à M k la première opération pouvant être placée avant la prochaine période dindisponibilité Tenir compte de Tenir compte de charge des machines charge des machines degré de flexibilité des opérations degré de flexibilité des opérations Occuper les intervalles daccueil avant chaque période dindisponibilité Occuper les intervalles daccueil avant chaque période dindisponibilité

8 27 Janvier 2006Réunion Gotha8 Problème daffectation Critère intermédiaire Problème daffectation Critère intermédiaire Pour une affectation S Pour une affectation S Critère intermédiaire : basé sur le calcul dune borne inférieure du makespan (Cr=BI(S)) Critère intermédiaire : basé sur le calcul dune borne inférieure du makespan (Cr=BI(S)) A chaque machine M k A chaque machine M k Problème π k à une machine Problème π k à une machine Dates de début au plus tôt Dates de début au plus tôt Durées de latence Durées de latence Périodes dindisponibilité Périodes dindisponibilité Autorisation de la préemption et utilisation de la règle de Jackson afin de calculer une borne inférieure pour chaque problème π k Valeur maximale de ces ordonnancements préemptifs Valeur maximale de ces ordonnancements préemptifs

9 27 Janvier 2006Réunion Gotha9 Problème daffectation Critère intermédiaire Problème daffectation Critère intermédiaire Introduction d une opération virtuelle à chaque période d indisponibilité Introduction d une opération virtuelle à chaque période d indisponibilité Date de début au plutôt : date de début de la période dindisponibilité Date de début au plutôt : date de début de la période dindisponibilité Durée de latence : constante G Durée de latence : constante G Utilisation de la règle de Jackson Utilisation de la règle de Jackson Autorisation de la préemption Autorisation de la préemption Ordonnancement à chaque itération dune unité de la tâche disponible de plus grande durée de latence Ordonnancement à chaque itération dune unité de la tâche disponible de plus grande durée de latence 1. Les périodes d indisponibilité sont traitées comme des opérations de production : JPS donne la solution optimale 2. Les périodes dindisponibilité débutent bien à leur date de début au plus tôt et elles ne sont jamais interrompues : elles ont la plus grande durée de latence Critère intermédiaire Valeur maximale des durées de ces ordonnancements préemptifs Valeur maximale des durées de ces ordonnancements préemptifs Objectif de RT Trouver laffectation S minimisant ce critère Trouver laffectation S minimisant ce critère

10 27 Janvier 2006Réunion Gotha10 Séquencement Approche de résolution Séquencement Approche de résolution Adaptation de lAG utilisé pour le problème classique Adaptation de lAG utilisé pour le problème classique Adaptation de lAG utilisé pour le problème classique Adaptation de lAG utilisé pour le problème classique Fonction de décodage Fonction de décodage Définition dun opérateur de mutation dirigée adapté au problème Définition dun opérateur de mutation dirigée adapté au problème Solutions initiales Solutions initiales Nécessité dun test de disponibilité avant le calcul des dates de début et de fin de chaque opération

11 27 Janvier 2006Réunion Gotha11 Problème de séquencement AG Codage CLO : Liste des Opérations Codage CLO : Liste des Opérations Désignation des opérations appartenant au même job par le même symbole (numéro du job) Désignation des opérations appartenant au même job par le même symbole (numéro du job) Interprétation des opérations selon leur occurrence dapparition Interprétation des opérations selon leur occurrence dapparitionExemple JSP formé de 3 jobs, 3 opérations par jobs, 3 machines (3 x 3 x 3) I =

12 27 Janvier 2006Réunion Gotha12 Opérateur de mutation dirigée Objectif Objectif Améliorer le makespan en réduisant le temps mort avant les périodes dindisponibilité Améliorer le makespan en réduisant le temps mort avant les périodes dindisponibilité Principe Principe Déterminer la machine critique Déterminer la machine critique Tester les permutations possibles dopérations ordonnancées avant et après les périodes dindisponibilité Tester les permutations possibles dopérations ordonnancées avant et après les périodes dindisponibilité Sélectionner la permutation minimisant le makespan Sélectionner la permutation minimisant le makespan

13 27 Janvier 2006Réunion Gotha13 Exemple illustratif Approche par phases (1) JMPM s.c disponibilité (15 x 5 x 5) JMPM s.c disponibilité (15 x 5 x 5) 2 périodes dindisponibilité par machine 2 périodes dindisponibilité par machine Étape daffectation Étape daffectation Solution initiale daffectation Solution initiale daffectation Somme des durées des opérations pouvant être ordonnancées avant les périodes dindisponibilité M1M1M1M1 M2M2M2M2 M3M3M3M3 M4M4M4M4 M5M5M5M Longueur des intervalles daccueil Longueur des intervalles daccueil

14 27 Janvier 2006Réunion Gotha14 Exemple illustratif Approche par phases (1) Comparaison entre la solution initiale et la solution donnée par lalgorithme de recherche Tabou Comparaison entre la solution initiale et la solution donnée par lalgorithme de recherche Tabou Solution initiale Solution après RT M1M1M1M1 M2M2M2M2 M3M3M3M3 M4M4M4M4 M5M5M5M5 Charge Ordonnancement préemptif M1M1M1M1 M2M2M2M2 M3M3M3M3 M4M4M4M4 M5M5M5M5Charge Ordonnancement préemptif

15 27 Janvier 2006Réunion Gotha15 Exemple illustratif Approche par phases (2) Étape de séquencement Étape de séquencement Opérateur de mutation dirigée Opérateur de mutation dirigée Chromosome initial Chromosome initial Makespan: 1236, Machine critique: M 3 Makespan: 1236, Machine critique: M 3 Chromosome résultat Chromosome résultat Makespan: 1190, temps mort (71-> 28) Makespan: 1190, temps mort (71-> 28) O 15,1 O 11, O 15,1 O 11,

16 27 Janvier 2006Réunion Gotha16 Exemple illustratif Approche par phases (2) Influence de lopérateur de mutation dirigée Influence de lopérateur de mutation dirigée Convergence Convergence Convergence avec mutation aléatoire Convergence avec mutation dirigée

17 27 Janvier 2006Réunion Gotha17 Exemple illustratif Approche par phases (3) Makespan Makespan Solutioninitiale Solution après RT BI Sol Paramètres Taille de la population Taux de croisement Taux de mutation Méthode de sélection Nombre de générations Nombre dexécution Roulette30010

18 27 Janvier 2006Réunion Gotha18 MPM job-shop Approche intégrée MPM job-shop Approche intégrée Basée sur la résolution exacte du problème à deux jobs Basée sur la résolution exacte du problème à deux jobs Extension de lapproche géométrique

19 27 Janvier 2006Réunion Gotha19 Approche géométrique Rappel (1) Objectif Objectif Réduire la résolution du problème à deux jobs en un problème de recherche de plus court chemin Réduire la résolution du problème à deux jobs en un problème de recherche de plus court chemin Principe Principe Représentation du problème dans le plan à deux dimensions avec obstacles Représentation du problème dans le plan à deux dimensions avec obstacles Construction dun réseau décrivant la progression dans le plan Construction dun réseau décrivant la progression dans le plan

20 27 Janvier 2006Réunion Gotha20 Approche géométrique Rappel (2) Exemple J 1 ={(M 1,2),(M 2,1),(M 3,1)} J 2 = {(M 3,2),(M 1,1),(M 2,1)} Obstacle correspondant à un partage de ressource Job1 proportionnel au temps opératoire de lopération Job2 Chaque sommet a au plus deux successeurs Chaque sommet a au plus deux successeurs Coins SE et NW Coins SE et NW Point final F Point final F

21 27 Janvier 2006Réunion Gotha21 Extensions de LAG Rappel (2) Autorisation de la préemption Autorisation de la préemption Flexibilité des ressources Flexibilité des ressources Contraintes de blocage Contraintes de blocage Contraintes de disponibilité sur les machines: cas de Job-shop (AGT) (Aggoune 02) Contraintes de disponibilité sur les machines: cas de Job-shop (AGT) (Aggoune 02) Problèmes avec flexibilité des ressources et contraintes de disponibilité

22 27 Janvier 2006Réunion Gotha22 Extension prise en compte de la flexibilité Définition des obstacles potentiels Définition des obstacles potentiels Définition des successeurs dun sommet Définition des successeurs dun sommet Détermination des combinaisons de machines permettant la progression diagonale Progression diagonale jusquà la rencontre dune horizontale où une verticale Mis à jour des données: - temps - Coordonnées géometriques - Coordonnées géometriques Test de Disponibilité Initialisation Cas Partage des ressources : Successeurs: SE et NW Pour chaque couple de machines Cas indisponibilité Cas indisponibilité

23 27 Janvier 2006Réunion Gotha23 Progression horizontale ou verticale Mis à jour des données: - temps - temps - Coordonnées géométriques - Coordonnées géométriques Test de Disponibilité Initialisation Initialisation Problème de disponibilité dans les deux directions Successeur: Sommet dattente Problème de disponibilité dans lune des deux directions Fin indisponibilité Successeur: Sommet singulier ou régulier Fin dune opération Extension prise en compte de la flexibilité Pour chaque couple de machines Complexité polynomiale

24 27 Janvier 2006Réunion Gotha24 Heuristique pour le problème général Ordonnancement de deux jobs avec lalgorithme polynomial Des périodes dindisponibilité additionnelles sont fixées Séquence initiale des jobs (J 1, J 2..., J N ) Fin de la séquenc e Arrêt Principe Principe Résolution des jobs deux à deux avec lalgorithme polynomial Résolution des jobs deux à deux avec lalgorithme polynomial

25 27 Janvier 2006Réunion Gotha25 Comparaison Calculée en considérant tous les paires de jobs -Lapproche par phases donne de bons résultats -L'approche intégrée est beaucoup plus complexe (temps de calcul, pas de solution pour les trois dernières instances) -La solution donnée par lapproche intégrée varie avec la séquence dentrée un algorithme doptimisation est nécessaire un algorithme doptimisation est nécessaire Une approche évolutionniste Une approche évolutionnisteUne approche évolutionnisteUne approche évolutionniste intégrée intégrée

26 27 Janvier 2006Réunion Gotha26 Périodes dindisponibilité ne sont pas fixes Périodes dindisponibilité ne sont pas fixes Une fenêtre de temps est allouée à lexécution de chaque tâche Une fenêtre de temps est allouée à lexécution de chaque tâche Périodes dindisponibilité flexibles Périodes dindisponibilité flexibles Hypothèse se rapprochant de la réalité industrielle

27 27 Janvier 2006Réunion Gotha27 Principe de résolution Optimiser les opérations de production Optimiser les opérations de production Utilisation de lapproche évolutionniste développée pour le FJSP Utilisation de lapproche évolutionniste développée pour le FJSP I * : Meilleur chromosome obtenu I * : Meilleur chromosome obtenu Insérer les tâches de maintenance tout en respectant leurs fenêtres temporelles Insérer les tâches de maintenance tout en respectant leurs fenêtres temporelles Date de début au plus tôt : Date de début au plus tôt : Date de début au plus tard : Date de début au plus tard : Intervalle de tolérance : Intervalle de tolérance :

28 27 Janvier 2006Réunion Gotha28 Heuristique HS 1 insertion au plus tard Heuristique HS 1 Heuristique HS 1 Ordonnancement des opérations de production dans lordre de leur apparition dans I * Ordonnancement des opérations de production dans lordre de leur apparition dans I * Insertion des périodes dindisponibilité le plus tard possible dans leurs fenêtres temporelles Insertion des périodes dindisponibilité le plus tard possible dans leurs fenêtres temporelles Réduction du temps mort Réduction du temps mort

29 27 Janvier 2006Réunion Gotha29 Heuristique HS 1 I*= Test de disponibilité - Décalage de la tâche de maintenance -Mise à jour de la date de disponibilité de la machine -Calcul de la date de début et de fin de lopération

30 27 Janvier 2006Réunion Gotha30 Heuristique HS 2 Recherche arborescente Ordonnancement des opérations de production dans lordre de leur apparition dans I * Ordonnancement des opérations de production dans lordre de leur apparition dans I * Insertion des périodes dindisponibilité machine par machine Insertion des périodes dindisponibilité machine par machine Pour chaque machine : tous les emplacements possibles de chaque période sont testés Pour chaque machine : tous les emplacements possibles de chaque période sont testés Tenir compte de lintervalle de tolérance attribué à chaque période dindisponibilité Tenir compte de lintervalle de tolérance attribué à chaque période dindisponibilité

31 27 Janvier 2006Réunion Gotha31 Heuristique HS 2 e1e1 e23e23 Périodes dindisponibilité Intervalles de tolérance e3e3 e4e4 Deux emplacements sont possibles Deux emplacements sont possibles A la fin de chaque tâche qui se trouve à lintérieur de lintervalle A la fin de chaque tâche qui se trouve à lintérieur de lintervalle A la date de début de lintervalle A la date de début de lintervalle Insertion de la 1 ère tâche de maintenance Insertion de la 2 ème tâche de maintenance e1e1 e2e2 e3e3 e4e4 e3e3 e4e4 e0e0 Ordonnancement initial MkMkMkMk

32 27 Janvier 2006Réunion Gotha32 Heuristique HS2 Détermination des différentes solutions dinsertion possibles Mise à jour des données de production Séquence initiale de Machines (M 1, M 2..., M M ) Test de validité Solution partielle écartée Certaines tâches déjà placées risquent dêtre décalées au delà de leurs intervalles de tolérance tenir compte des périodes dindisponibilité déjà placées

33 27 Janvier 2006Réunion Gotha33 Heuristique HS 3 Règle de priorité Définir une fenêtre de temps pour chaque opération de production Définir une fenêtre de temps pour chaque opération de production Date de début au plus tôt dune opération : date de fin de la tâche qui la précède dans le job Date de début au plus tôt dune opération : date de fin de la tâche qui la précède dans le job Date de fin au plus tard : date de début de la tâche qui la suit dans le job Date de fin au plus tard : date de début de la tâche qui la suit dans le job I*=

34 27 Janvier 2006Réunion Gotha34 Heuristique HS 3 Réordonnancer les tâches de production et de maintenance selon la règle Réordonnancer les tâches de production et de maintenance selon la règle Ordonnancement de lopération ayant la plus petite date de fin au plus tard parmi les opérations disponibles (production ou maintenance) Ordonnancement de lopération ayant la plus petite date de fin au plus tard parmi les opérations disponibles (production ou maintenance) Un test est nécessaire avant de placer une opération de production Un test est nécessaire avant de placer une opération de production Vérifier si le placement peut entraîner le dépassement de son deadline de la prochaine tâche de maintenance à programmer Vérifier si le placement peut entraîner le dépassement de son deadline de la prochaine tâche de maintenance à programmer

35 27 Janvier 2006Réunion Gotha35 Heuristique HS 1 I*= Heuristique HS 3 Un bon ordonnancement de production, ne le reste pas systématiquement après insertion de la maintenance Heuristique HS3

36 27 Janvier 2006Réunion Gotha36 Comparaison des heuristiques INST 1 (10 x 6 x 55) 1 période dindisponibilité INST 2 (10 x 6 x 55) 2 période dindisponibilité HS HS HS

37 Merci pour votre attention

38 27 Janvier 2006Réunion Gotha38 Approche intégrée Généralisation du codage CLO proposé pour le job-shop Généralisation du codage CLO proposé pour le job-shop Exemple ( 3 X 4 X 3) Exemple ( 3 X 4 X 3) Introduction FJSP FJSP s.c de disponibilité des machines Conclusions I= Ordre de passage sur les machines Liste des affectations Liste des affectations


Télécharger ppt "Ordonnancement des job-shops flexibles sous contraintes de disponibilité des machines LAGIS - Ecole Centrale de Lille Nozha ZRIBI."

Présentations similaires


Annonces Google