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

Arnaud Thiry Julien Mellano INSA de Rouen - GM4

Présentations similaires


Présentation au sujet: "Arnaud Thiry Julien Mellano INSA de Rouen - GM4"— Transcription de la présentation:

1 Arnaud Thiry Julien Mellano INSA de Rouen - GM4
Les algorithmes génétiques multicritères pour l’ordonnancement du job shop Arnaud Thiry Julien Mellano INSA de Rouen - GM4 Projet proposé par M. Youssef HARRATH

2 SOMMAIRE Présentation générale
Le problème d’ordonnancement Le job shop Les algorithmes génétiques Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion

3 Présentation du problème d’ordonnancement
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion Un ordonnancement décrit l’ordre d’exécution des tâches et l’allocation des ressources au cours du temps, afin de satisfaire un ou plusieurs critères d’optimisation. Nos critères sont : Le C_Max : date de l’achèvement de l’ordonnancement Le flot total : somme des temps passé sur les machines.

4 Présentation du job shop
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion Le job shop est associé à des lignes de production dédiées à la production de moyennes et de petites séries où les changements de produits sont fréquents Chaque tâche possède son propre mode de passage sur les machines.

5 Présentation des algorithmes génétiques
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques multicritères Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion Basés sur le principe d’évolution d’une population d’individus. Les plus forts survivent et engendrent des progénitures. Sur ce schéma, on crée une population de solutions admissibles On élimine une partie des solutions les plus mauvaises puis on recombine les gènes afin d’obtenir une nouvelle population de solutions. Chaque génération, on crée un nouvel ensemble de solution à partir des meilleurs éléments des populations antérieures. Un intérêt supplémentaire des algorithmes génétiques est qu’ils permettent l’optimisation multicritère.

6 Algorithme Génétique : principes de base
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques multicritères Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus interprétation des résultats Conclusion POPULATION (Chromosomes) OPERATEURS GENETIQUES Manipulation Nouvelle génération EVALUATION (fitness) SELECTION (groupement) Parents Reproduction

7 Application à des problèmes de tailles 6*6
Jobs Opérations(Mi,Ti) 1 3,1 1,3 2,6 4,7 6,3 5,6 2 2,8 3,5 5,10 6,10 1,10 4,4 3 6,8 1,9 2,1 5,7 4 2,5 1,5 4,3 5,8 6,9 5 3,9 2,3 5,5 6,4 4,1 6 5,4 Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques multicritères Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion

8 Contraintes et objectifs
Les machines ne sont pas identiques Les opérations d’un même job s’exécutent séparément sur les machines en respectant l’ordre des séquences Préemption non permise Toutes les données du job shop sont connues d’avance Disponibilité infinie Problème de job shop classique dit « carré »

9 Description de l’algorithme programmé
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques multicritères Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto

10 On rentre une matrice job
Ou on génère la matrice Améliorer & réparer Codage du premier chromosome Gantt & évaluation Croisement Génération de la première population Sélection (nouvelle population) Mutation Pareto Affichage des chromosome dominant issue des itérations

11 Le codage du chromosome
A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Choix du type de problème Problème proposé Problème aléatoire

12 Codage à partir d’un problème donné
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Affichage des opérations : Le numéro de la machine Le temps de l’opération

13 Codage à partir d’un problème générer aléatoirement
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto

14 Génération de la population initiale
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Principe d’obtention des 100 premiers chromosomes : On prend le premier chromosome appelé « chromosome père » On intervertit les colonnes = numéro de job

15 La Mutation Pour chaque case i : Tirage d’un nombre aléatoire a
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto 1 2 3 4 5 6 1 2 5 4 3 6 Pour chaque case i : Tirage d’un nombre aléatoire a Si a Є [0;pourcentage mutation] Tirage d’un deuxième nombre aléatoire p Є [1;6] et échange des cellule i et p.

16 Le Croisement Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Plusieurs croisements possibles avec les algorithmes génétiques. Le plus performant : Croisement d’ordre maximal (2 points de coupure)

17 Le Croisement Point de croisement 1 Point de croisement 2
3 4 5 6 2 5 3 4 1 6 Chromosome Père Chromosome Mère 1 2 3 4 5 6 2 5 3 4 1 6 Chromosome Fils1 Chromosome Fils2

18 L’Evaluation (la méthode Gantt)
Méthode principale du programme Plusieurs utilités : définit si le chromosome est valide ou non Identifie les opérations bloquantes Identifie les périodes d’inactivités des machines Attribut au chromosome son C_max, son flot total et son flot moyen. Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto

19 La Réparation Procédure qui a pour but de débloquer une tache.
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Procédure qui a pour but de débloquer une tache. Si deux taches sont bloquantes, on choisira celle avec le numéro de tache le plus faible. Une fois réparer Cas où çà bloque 1,1 2,2 3 4 5 6 2,3 1,4 3,2 4,1 1,2 2 2,4 3,5 1,6 4,2 1 1,1 2,2 3 4 5 6 2,3 1,4 4,1 3,2 1,2 2 2,4 3,5 1,6 4,2 1

20 L’Amélioration But de la procédure : Améliorer le chromosome :
ordonnancement semi-actif ordonnancement sans retard Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto

21 L’Amélioration Machines Temps 3.2 4.1 6 6.2 5.5 1.6 2.6 2.2 5 3.3 6.3
1.5 5.3 4.5 4 5.1 1.4 6.4 2.5 3.4 4.6 3 2.1 1.2 4.2 5.4 3.5 6.6 2 3.1 5.2 1.3 4.4 2.4 6.5 1 1.1 4.3 6.1 2.3 5.6 3.6 Temps

22 La Sélection 2 modes de sélection possibles :
Le mode « super héros » ou appelé sélection par classement Le mode de sélection par roulette Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto

23 Le mode PARETO Compare les chromosomes obtenus après nos itérations
Le codage du chromosome A partir d’un problème donné Générer aléatoirement La génération de la population initiale La mutation Le croisement L’évaluation La réparation L’amélioration La sélection Le mode Pareto Compare les chromosomes obtenus après nos itérations Chromosome dominant ssi : C_Max 1 > C_Max 2 Flot total 1 ≥ Flot total 2 Ou si C_Max 1 ≥ C_Max 2 Flot total 1 > Flot total 2

24 Résultats obtenus En mode sélection par classement :
Meilleurs chromosomes : C MAX = 55 Flot total = 284 Seul chromosome obtenu en PARETO. Obtenu avec 200 itérations en 15s En mode sélection par roulette C MAX = 58 Flot total = 300 Plus long Plus il y a d’itération, plus on diverge de la solution Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion

25 Interprétation des résultats
Présentation générale Le problème d’ordonnancement Le job shop Les algorithmes génétiques Applications à des problèmes de taille 6*6 Description de l’algorithme programmé Résultats obtenus Interprétation des résultats Conclusion Sélection par roulette Résultats pas satisfaisants Poids mal affectés? Sélection par classement Résultat optimal obtenu 1 seul chromosome dominant C_max et Flot total très corrélés(?) Convergence prématurée(?)

26 Conclusion Projet très intéressant Un regret
Découverte d’une nouvelle méthode d’optimisation par les algorithmes génétiques Sensibilisation au problème concret d’ordonnancement du job shop Un regret Manque de temps pour l’adapter l’algorithme à d’autres problèmes du même type


Télécharger ppt "Arnaud Thiry Julien Mellano INSA de Rouen - GM4"

Présentations similaires


Annonces Google