El Bahloul Sana. (2008). Flow-shop à deux machines avec des temps de latence : approche exacte et heuristique. Mémoire de maîtrise, Université du Québec à Chicoutimi.
Prévisualisation |
PDF
8MB |
Résumé
Un ordonnancement est défini comme étant une allocation, dans le temps, des ressources (machines) disponibles aux différents travaux (tâches, jobs) à réaliser, dans le but d'optimiser un ou plusieurs objectifs. La richesse de la problématique de l'ordonnancement est due aux différentes interprétations que peuvent prendre les ressources et tâches. Ainsi, les ressources peuvent être des machines dans un atelier, des pistes de décollage et d'atterrissage dans un aéroport, des équipes dans un terrain de construction, des processeurs dans les ordinateurs, etc. Les tâches, quant à elles» peuvent être des opérations dans un processus de production, le décollage et l'atterrissage dans un aéroport, les étapes d'un projet de construction, l'exécution d'un programme informatique, etc. Les différentes tâches sont caractérisées par un degré de priorité et un temps d'exécution. Les ressources, quant à elles, sont caractérisées entre autres par une capacité, des temps de réglage, etc.
Les problèmes d'ordonnancement sont généralement classés en deux modèles dépendamment du nombre d'opérations que requièrent les jobs : les modèles à une opération (modèle à machine unique et modèle à machines parallèles) et les modèles à plusieurs opérations dits modèles en ateliers (flow-shop, open-shop et job-shop). Bien entendu, il est également possible de trouver d'autres modèles, hybrides, qui sont des mélanges de ces deux modèles. Cette classification a permis, un tant soit peu, de mieux comprendre et cerner les problèmes d'ordonnancement réels. Toutefois, l'expérience a montré qu'il existe toujours un gouffre entre la théorie et ce qui se passe réellement dans les centres de production ou les prestations de services.
Parmi les contraintes que la théorie d'ordonnancement n'a pas considérées jusqu'à un passé récent, nous pouvons citer les temps de latence des travaux, correspondant aux différents temps nécessaires devant s'écouler entre la fin d'une opération et le début de la prochaine opération d'un même job. Les temps de latence peuvent correspondre par exemple aux temps de tansport des jobs à travers les ressources ou encore aux temps de refroidissement des jobs, avant leurs prochaines manipulations. Ces temps peuvent dans certains cas prendre des proportions importantes qu'une entreprise ne doit en aucun cas ignorer. Elle devrait même revoir sa politique d'ordonnancement pour pouvoir améliorer sa productivité.
Dans ce mémoire, nous étudions le modèle de flow-shop à deux machines avec des temps de latence dans le but de minimiser le temps total d'accomplissement des jobs, appelé makespan. Pour ce faire, nous avons, tout d'abord, introduit la théorie de l'ordonnancement et survolé quelques concepts de la théorie de la NP-complétude ainsi que les différentes méthodes de résolution d'un problème d'ordonnancement en général, et an flow-shop à deux machines en particulier.
Pour résoudre ce problème de flow-shop à deux machines, nous avons utilisé, dans un premier temps la méthode de branch and bound. Nous avons commencé par appliquer cet algorithme sur le cas particulier des temps d'exécution unitaires. Outre les bornes inférieures et supérieures, nous y avons également présenté des règles de dominance. Limité à 900 secondes, pour l'exécution d'une instance, cet algorithme a pu résoudre efficacement des instances n'excédant pas 30 jobs. Ensuite, nous sommes passés au cas où les temps d'exécution des jobs sont quelconques. Nous y avons présentés plusieurs bornes inférieures. Pour les bornes supérieures, nous avons conçu des heuristiques basées sur NEH, la règle de Johnson, la règle de Palmer et CDS. Au-delà de 10 jobs, l'algorithme de branch and bound, que nous avons implemente, n'a pu résoudre efficacement les instances générées, même en posant Ih d'exécution pour chaque instance. Notons que les temps d'exécution des algorithmes, implémentant ces bornes inférieures et supérieures ainsi que ceux des règles de dominance, pour le cas unitaire, sont tous majorés par une complexité enO(wlogn); n étant le nombre de jobs à ordonnancer. Dans un second temps, nous sommes passés à l'autre approche de résolution qu'est la méthode métaheuristique. Nous avons commencé notre étude par le développement d'un algorithme de recherche avec tabous. Des ajouts itératifs tels des procédures d'intensification et de diversification ont nettement amélioré les résultats générés par cet algorithme. Ensuite, nous avons conçu un algorithme génétique. Nous y avons incorporé une recherche locale pour améliorer les résultats. Cependant, l'algorithme de recherche avec tabous a produit de meilleurs résultats sur l'ensemble des instances testées. En guise de conclusion, nous avons discuté de nouvelles pistes de recherche à explorer.
Type de document: | Thèse ou mémoire de l'UQAC (Mémoire de maîtrise) |
---|---|
Date: | 2008 |
Lieu de publication: | Chicoutimi |
Programme d'étude: | Maîtrise en informatique |
Nombre de pages: | 121 |
ISBN: | 9781412314688 |
Identifiant unique: | 10.1522/030014608 |
Sujets: | Sciences naturelles et génie > Sciences mathématiques > Informatique |
Département, module, service et unité de recherche: | Départements et modules > Département d'informatique et de mathématique > Programmes d'études de cycles supérieurs en informatique |
Directeur(s), Co-directeur(s) et responsable(s): | Rebaïne, Djamal |
Mots-clés: | THESE |
Déposé le: | 01 janv. 2008 12:34 |
---|---|
Dernière modification: | 20 mai 2016 15:47 |
Éditer le document (administrateurs uniquement)