Mlle Yasmin A. RÍOS SOLÍS



Documents pareils
Annexe 6. Notions d ordonnancement.

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Programmation linéaire

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Le modèle de Black et Scholes

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Rappels sur les suites - Algorithme

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

En vue de l'obtention du. Présentée et soutenue par Abir BEN HMIDA SAKLY Le 12/12/2009

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris Mars 2003

Résolution de systèmes linéaires par des méthodes directes

3 Approximation de solutions d équations

LES MÉTHODES DE POINT INTÉRIEUR 1

Cours de Master Recherche

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Image d un intervalle par une fonction continue

Théorèmes de Point Fixe et Applications 1

Chp. 4. Minimisation d une fonction d une variable

Suites numériques 3. 1 Convergence et limite d une suite

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Chapitre 2 Le problème de l unicité des solutions

Les indices à surplus constant

PRIME D UNE OPTION D ACHAT OU DE VENTE

LES MÉTA-HEURISTIQUES : quelques conseils pour en faire bon usage

Fonctions de plusieurs variables

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

Représentation des Nombres

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

I Stabilité, Commandabilité et Observabilité Introduction Un exemple emprunté à la robotique Le plan Problème...

Définitions. Numéro à préciser. (Durée : )

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Principe de symétrisation pour la construction d un test adaptatif

Approximations variationelles des EDP Notes du Cours de M2

Limites finies en un point

Filtrage stochastique non linéaire par la théorie de représentation des martingales

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

ANNUITES. Les annuités définissent une suite de versements identiques ou non effectués à intervalles de temps égaux. -annuités non constantes

Modélisation et Simulation

Minimisation de la somme des retards dans un jobshop flexible

Théorie de la mesure. S. Nicolay

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Programmation linéaire

AVERTISSEMENT. D'autre part, toute contrefaçon, plagiat, reproduction encourt une poursuite pénale. LIENS

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

LE DIPLOME DE MAGISTER

Texte Agrégation limitée par diffusion interne

Apprentissage par renforcement (1a/3)

I. Polynômes de Tchebychev

Le produit semi-direct

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Jean-Philippe Préaux

M2 IAD UE MODE Notes de cours (3)

High Performance by Exploiting Information Locality through Reverse Computing. Mouad Bahi

La classification automatique de données quantitatives

La fonction exponentielle

Fibonacci et les paquerettes

CHAPITRE 5. Stratégies Mixtes

La persistance des nombres

Hela Boukef. To cite this version: HAL Id: tel

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire Gérard Verfaillie ONERA/DCSD/CD, Toulouse

Resolution limit in community detection

Dualité dans les espaces de Lebesgue et mesures de Radon finies

LES PROBLEMES D'ORDONNANCEMENT

Optimisation Discrète

Programmes des classes préparatoires aux Grandes Ecoles

Résolution d équations non linéaires

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Analyse fonctionnelle Théorie des représentations du groupe quantique compact libre O(n) Teodor Banica Résumé - On trouve, pour chaque n 2, la classe

La nouvelle planification de l échantillonnage

Probabilités sur un univers fini

NOTE SUR LA MODELISATION DU RISQUE D INFLATION

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Nom de l application

Introduction à l étude des Corps Finis

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Programmation Linéaire - Cours 1

Couplage Planification et Ordonnancement : Approche hiérarchique et décomposition

LE PROBLEME DU PLUS COURT CHEMIN

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

Gestion de production

Contrainte de flot pour RCPSP avec temps de transfert

Chapitre 5 : Flot maximal dans un graphe

Transcription:

Thèse de DOCTORAT de l UNIVERSITÉ PARIS VI - PIERRE ET MARIE CURIE Spécialité : INFORMATIQUE présentée par : Mlle Yasmin A. RÍOS SOLÍS pour obtenir le grade de DOCTEUR de l UNIVERSITÉ PARIS VI Sujet de la thèse : ORDONNANCEMENT AVANCE-RETARD SUR MACHINES PARALÈLLES soutenue le 30 janvier 2007 devant le jury composé de : M. Jean-Charles BILLAUT Rapporteur Mme. Marie-Claude PORTMANN Rapporteur M. Alain BILLIONNET Examinateur M. Philippe CHRÉTIENNE Directeur de thèse M. Jean-Charles POMEROL Examinateur M. Alain QUILLIOT Examinateur M. Francis SOURD Co-directeur de thèse

Remerciements Je tiens à remercier en tout premier lieu Francis Sourd qui a dirigé cette thèse dans la continuité de mon stage de D.E.A.. Tout au long de ces trois années, il a su orienter mes recherches aux bons moments en me faisant découvrir l ordonnancement au travers de son regard novateur et critique. Pour sa disponibilité pour des discussions, les relectures, en plus de sa confiance, patience et son amitié, je le remercie vivement. Je remercie également Philippe Chrétienne, Professeur à l Université Paris VI, pour ses encouragements, ses conseils et sa confiance. J adresse tous mes sincères remerciements à Marie-Claude Portmann, Professeur à l École des Mines de Nancy, et à Jean-Charles Billaut, Professeur au Polytech Tours, qui m ont fait l honneur de d accepter d être rapporteurs de ces travaux. Merci également aux autres membres du jury qui ont accepté de juger ce travail : Alain Billionnet Professeur à l École Nationale Supérieure d Informatique pour l Industrie et l Entreprise, Jean-Charles Pomerol, Professeur à l Université Paris VI et Alain Quilliot, Professeur à l Université Blaise Pascal-Clermont-Ferrand. Je remercie infiniment le CONACyT (Conseil Mexicain de Science et Technologie) et le SRE (Ministère Mexicain de Relations Extérieures) pour le financement partiel qu ils m ont offert durant le Master (DEA IRO) et la thèse. L équipe DESIR du Laboratoire d Informatique de Paris VI est un cadre privilégié pour effectuer une thèse. Parmi ceux qui ont contribué à mon travail, je remercie tout spécialement Safia Kedad-Sidhoum et Claire Hanen. Dans ces remerciements je ne peux bien sûr pas oublier les chercheurs et doctorants qui ont fait de mon séjour au LIP6, une période très agréable et enrichissante : Patrice, Christophe, Jean-Yves, Olivier, Pierre, Emmanuel, Pierre-Henri, Yann, Nina, Nathalie, Anna, Nabil, Lucie, Nicolas, Paul, Louis-Xavier, Sergio et Antoine. Merci pour tous les rires, les groupes de travail, les mots croisés, les cafés... J ai eu l énorme chance d avoir l amitié et le support de mes copains du DEA et mes copains mexicains tout le long de la thèse. Je pense tout spécialement à Marie-Christine avec laquelle j ai eu, en plus, le plaisir de collaborer scientifiquement. Un particulier remerciement pour ma famille adorée à laquelle je dédie cette thèse : Leonardo, Agueda, Leo et Lucero. Enfin, une tendre pensée pour Gabriel qui m a accompagné et supporté avec beaucoup de patience et surtout d amour. 3

Table des matières 1 Introduction 7 2 État de l art 11 2.1 Notions et notations............................. 11 2.1.1 Complexité des problèmes d ordonnancement........... 15 2.1.2 Production juste-à-temps..................... 15 2.2 Problèmes d ordonnancement d avance-retard............... 17 2.2.1 Modèle avec variables indexées sur le temps............ 18 2.2.2 Modèle avec variables d affectation................. 19 2.2.3 Optimisation des coûts d affectation................ 22 2.3 Problèmes avec une date d échéance commune restrictive......... 24 2.3.1 Ordonnancements dominants de 1 d i = d r i α ie i + β i T i.... 24 2.3.2 Ordonnancements dominants de R d i = d r i α ie i + β i T i... 26 2.3.3 Complexité des problèmes avec une date d échéance commune.. 27 2.3.4 État de l art pour les problèmes à date d échéance commune.. 30 2.4 Minimisation de la somme pondérée des dates de fin........... 32 2.4.1 Modèle quadratique du problème R i w ic i........... 34 2.5 Ordonnancement avec des coûts de position sur les tâches........ 36 3 Voisinage exponentiel : cas à une seule machine 39 3.1 Introduction.................................. 39 3.2 Définition et exploration du voisinage exponentiel............. 42 3.3 Complexité du problème de recherche dans le voisinage.......... 50 3.4 Conclusions.................................. 53 4 Voisinage exponentiel : cas à machines parallèles 55 4.1 Introduction.................................. 55 4.2 Définition et exploration du voisinage exponentiel............. 57 4.2.1 Voisinage V jj T (S)........................... 57 4.2.2 Voisinage V jj E (S)........................... 58 4.2.3 Voisinage V jj ET (S)........................... 60 5

6 TABLE DES MATIÈRES 4.2.4 Le voisinage exponentiel pour le cas à machines parallèles.... 62 4.3 Résultats expérimentaux........................... 63 4.3.1 Instances............................... 63 4.3.2 Algorithmes EXPN, HEUR et LAGRES................ 64 4.3.3 Comparaison des instances à machines parallèles......... 65 4.3.4 Comparaison des instances avec une seule machine........ 68 4.3.5 Algorithme hybride HEUEXPN................... 69 4.4 Conclusions.................................. 71 5 Reformulations quadratiques convexes 73 5.1 Introduction.................................. 73 5.2 Le problème R i w ic i........................... 76 5.2.1 Reformulation convexe (QCR)................... 76 5.2.2 Convexification par perturbation de la diagonale (PDIA).... 80 5.2.3 Résultats expérimentaux pour R i w ic i et P i w ic i.... 82 5.3 Le problème R d i = d r i α ie i + β i T i................... 87 5.4 Conclusions.................................. 93 6 Ordonnancement avec coûts de position 95 6.1 Introduction.................................. 95 6.2 Modélisation du problème P pmtn i fi................. 96 6.3 Solution pour P pmtn i fi....................... 101 6.4 Approche par relaxation Lagrangienne................... 106 6.5 Résultats expérimentaux........................... 108 6.5.1 Algorithmes.............................. 109 6.5.2 Instances............................... 111 6.5.3 Résultats............................... 111 6.6 Conclusions.................................. 113 7 Conclusions et perspectives 115 A Étude préliminaire sur un paysage d espace des solutions 119 A.1 Introduction.................................. 119 A.2 Quelques résultats expérimentaux...................... 120 Bibliographie 123 Yasmin A. Ríos Solís

Chapitre 1 Introduction L intérêt pour la théorie de l ordonnancement a surgi dans les années 1950 et n a pas cessé d augmenter ces dernières années, peut-être du fait de son applicabilité à une multitude croissante de problèmes et de sa difficulté qui intéresse les chercheurs. Parmi les problèmes d optimisation combinatoire, les problèmes d ordonnancement sont probablement les plus liés au monde industriel puisqu il s agit de concilier, de façon optimale, des ressources limitées avec des activités dans le temps. Ainsi, des domaines comme l éducation, l agriculture, le transport ou la santé ont bénéficié des recherches issues de l ordonnancement. La théorie de l ordonnancement étudie des problèmes qui ont souvent la caractéristique d avoir un nombre fini de solutions réalisables. En principe, les solutions optimales d un tel problème pourraient être déterminées par une simple énumération. Toutefois, en pratique, c est souvent impossible, spécialement pour les problèmes qui modélisent des situations réelles, car le nombre de solutions à énumérer est trop grand. Un des objectifs de la théorie de l ordonnancement est de déterminer une solution optimale ou une bonne solution en un temps raisonnable. L immense impact de la théorie de la complexité est basé sur l hypothèse, largement convenue, que définir l appartenance d un problème à la classe des problèmes qui se résolvent en temps polynomial, la classe P, est une manière mathématique appropriée de formaliser le concept empirique des problèmes qui se résolvent bien en pratique. En conséquence, la question est comment aborder les problèmes NP-difficiles d optimisation qui ne peuvent pas efficacement être résolus à l optimalité, à moins que P=NP. Les réponses possibles à cette question sont : les algorithmes de liste qui construisent de façon itérative une solution, les procédures par séparation et évaluation (branch&bound en anglais) qui ont une complexité au pire cas exponentielle, les méthodes heuristiques qui fournissent des bonnes solutions mais qui ne fournissent pas de garantie de performance, les méthodes par relaxation de contraintes, etc. 7

8 Chapitre 1. Introduction Bien que l intérêt pour les problèmes d ordonnancement à une seule machine soit encore très important, les problèmes à machines parallèles sont de plus en plus étudiés dans la littérature. En effet, ils reflètent des environnements de production où, pour des raisons de rapidité, plusieurs ressources sont disponibles pour effectuer les tâches. La généralisation de méthodes pour les problèmes à une seule machine n est pas toujours triviale. En effet, même la complexité du problème peut varier entre le cas à une seule machine et le cas à machines parallèles. Ce travail de thèse vise à étudier des problèmes d ordonnancement sur machines parallèles avec un critère d optimisation juste-à-temps. Il s agit de problèmes souvent NP-difficiles où les tâches sont pénalisées si elles se finissent en avance ou en retard par rapport à une date d échéance fixée. Ce critère d optimisation a comme objectif d éviter toute production anticipée de produits intermédiaires ou finaux et donc de produire la quantité strictement nécessaire, au moment voulu, pour satisfaire la demande de chaque client. Alors que la plupart des critères visent à ordonnancer les tâches au plus tôt, ce type de critères est parfois bénéficié par des temps d inactivité entre l exécution d une paire de tâches. Nous présentons ci-dessous, plus spécifiquement, les problèmes d ordonnancement d avance-retard auxquels nous nous sommes intéressés dans ce travail, ainsi que les différentes méthodes que nous avons utilisées pour les résoudre. Le chapitre 2 constitue une brève présentation des problèmes d ordonnancement auxquels nous nous intéressons dans ce travail. Nous décrivons ces problèmes ainsi que les notations utilisées. Nous donnons également un état de l art et quelques résultats de la littérature qui seront utiles pour la suite de cette thèse. Dans le chapitre 3, nous définissons un nouveau voisinage pour le problème d avance-retard à une seule machine avec une date d échéance commune restrictive (ce problème est conjecturé NP-difficile au sens fort). Ce voisinage a la particularité d être composé d ordonnancements obtenus par l application d un ensemble de mouvements indépendants de tâches à partir d une solution initiale réalisable. Il a la caractéristique d être de taille exponentielle et de n être composé que d ordonnancements dominants. L algorithme pseudo-polynomial de programmation dynamique que nous proposons pour obtenir la meilleure solution de ce voisinage permet, à l aide d un algorithme de recherche locale, d obtenir des minimums locaux de bonne qualité. De plus, nous démontrons que trouver la solution à coût minimum dans le voisinage d un ordonnancement donné, est un problème NP-difficile. Les résultats de ce chapitre nous ont conduit à nous intéresser, dans le chapitre 4, au cas d ordonnancement à machines parallèles. Nous étudions dans le chapitre 4, le problème d ordonnancement d avance-retard à machines parallèles avec une date d échéance commune restrictive qui est NP-difficile au sens fort. Nous utilisons pour son étude la même optique que dans le chapitre 3 : un voisinage exponentiel. Bien qu on se base sur la définition du voisinage dédié à une seule Yasmin A. Ríos Solís

9 machine, la généralisation du voisinage exponentiel pour le cas à machines parallèles n est pas triviale. Un algorithme pseudo-polynomial de programmation dynamique est proposé pour retrouver le meilleur ordonnancement dans le voisinage exponentiel que nous définissons. Des résultats expérimentaux permettent de vérifier la qualité des solutions de cette méthode ainsi que ses limites en temps de calcul. Des comparaisons entre des bornes inférieures et supérieures sont réalisées pour le cas avec 1, 4 et 8 machines. Nous proposons aussi un algorithme hybride qui commence par déterminer une première solution avec un algorithme de recherche locale, simple mais très efficace, et se poursuit par la méthode basée sur les voisinages exponentiels. Nous avons constaté, qu avec cette procédure, nous pouvons échapper à des minima locaux. L article [87], réalisé avec F. Sourd et contenant les résultats obtenus dans les chapitres 3 et 4, sera publié dans le journal Computers & Operations Research (C&OR). Le chapitre 5 propose une méthode exacte qui, à notre connaissance, n a jamais été utilisée pour les problèmes d ordonnancement. Il s agit, premièrement, de modéliser le problème d ordonnancement avec un programme quadratique en 0-1 sous contraintes linéaires. Ensuite, le reformuler de façon convexe tel que l espace des solutions admissibles reste le même que celui du problème initial. Finalement, à l aide d un outil commercial résolvant des programmes en 0-1 quadratiques convexes, trouver la solution optimale. Différentes méthodes de reformulation convexe sont présentées et appliquées aux problèmes d ordonnancement à machines parallèles d avance-retard ainsi qu à des problèmes avec critères d optimisation dits réguliers. Des résultats expérimentaux montrent que cette méthode exacte, basée sur une reformulation convexe, est intéressante et même très efficace en donnant les meilleurs résultats expérimentaux de la littérature pour certains problèmes d ordonnancement. L apport principal de ce chapitre est d avoir lié la théorie de la programmation quadratique en 0-1 avec la théorie de l ordonnancement pour obtenir des solutions exactes. Finalement, le chapitre 6 correspond à l étude d un problème d ordonnancement préemptif sur machines parallèles identiques qui a la particularité de ne pas avoir des fonctions de coût dépendantes des dates de fin des tâches. De plus, les tâches peuvent commencer et être interrompues à n importe quel instant du temps et pas seulement aux instants entiers. En relâchant des contraintes, nous proposons un algorithme polynomial basé sur la décomposition en sous-problèmes indépendants du programme dual. Grâce à un algorithme de sous-gradient ou d ellipsoïde, la solution optimale peut ensuite être obtenue. La résolution de ce type de problème est pour nous très intéressante puisqu elle permet d obtenir des bornes inférieures pour le problème d ordonnancement d avance-retard sans préemption. Nous nous comparons expérimentalement avec quatre autres bornes inférieures et supérieures pour ce type de problèmes à machines parallèles. L article [57], réalisé avec F. Sourd et S. Kedad-Sidhoum, présentant la borne que nous proposons dans ce chapitre ainsi les autres bornes auxquelles nous

10 Chapitre 1. Introduction nous comparons expérimentalement, sera publié dans le journal European Journal of Operational Research (EJOR). Nous présentons à la fin, une conclusion de notre travail ainsi que les directions de recherches futures qui concernent soit des extensions naturelles des problèmes que nous avons étudiés, soit des méthodes différentes à développer et à appliquer. En plus des articles que nous avons cité précédemment, des sections de cette thèse, ont été ou seront publiés dans [58], [89], [88] et [90]. Yasmin A. Ríos Solís

Chapitre 2 État de l art Ce chapitre est dédié à la présentation des problèmes d ordonnancement sur machines parallèles qui seront traités dans cette thèse : les problèmes d avanceretard, les problèmes où l on cherche à minimiser la somme pondérée des retards et les problèmes où les fonctions de coût des tâches ne dépendent pas de leur date de fin. L objectif est d introduire les notions, les notations et l état de l art de ces problèmes, ainsi que de présenter des résultats de la littérature qui seront utiles pour les chapitres suivants. Le but de ce chapitre n est pas d effectuer une présentation exhaustive des problèmes d ordonnancement, mais plutôt d introduire de manière succincte les problèmes, critères et propriétés qui nous intéressent dans les chapitres suivants. Nous commençons par présenter, dans la section 2.1, la théorie de l ordonnancement ainsi que les notions et notations qui seront utilisées dans cette thèse. Ensuite, les problèmes d ordonnancement étudiés dans ce travail sont plus particulièrement décrits dans les sections 2.2 2.5. Pour plus de détails sur la théorie d ordonnancement nous pouvons citer les livres de Carlier et Chrétienne [20], de Leung [26], de Pinedo [82], de Brucker [14], de T Kindt et Billaut [106] et le livre d exercices du groupe de travail GOThA [38]. 2.1 Notions et notations La théorie de l ordonnancement est une branche de la recherche opérationnelle qui s intéresse au calcul de dates d exécution optimales de tâches. De façon plus précise, un problème d ordonnancement consiste à organiser dans le temps la réalisation de tâches, compte tenu de contraintes temporelles (délais, contraintes d enchaînement, etc.) et de contraintes portant sur la disponibilité des ressources requises. Un ordonnancement 11

12 Chapitre 2. État de l art est défini par le planning d exécution des tâches et d allocation des ressources et vise à satisfaire un ou plusieurs objectifs [114]. Plus précisément, Carlier et Chrétienne [20] proposent la définition suivante : Définition 2.1 Ordonnancer c est programmer l exécution d une réalisation en attribuant des ressources aux tâches et en fixant leur date d exécution. La réalisation peut être, par exemple, un programme informatique ou le carnet de commandes d un atelier. Alors les tâches sont des processus informatiques ou des traitements à appliquer à certaines pièces par des machines. Les ressources sont alors des processus et de la mémoire ou des machines et du personnel. Établir un ordonnancement revient à coordonner l exécution de toutes les tâches, en utilisant au mieux les ressources disponibles. Plusieurs problèmes de productivité sont liés à des problèmes d ordonnancement : avoir les produits corrects quand ils sont nécessaires, avoir les machines disponibles quand on en a besoin, utiliser excessivement l inventaire pour palier à des problèmes, inflexibilité, etc. La résolution de ces difficultés peut signifier des bénéfices directs et indirects. Par exemple, l introduction des diagrammes de Gantt pendant la première guerre mondiale a réduit le temps de chargement d un bateau d environ la moitié [81]. Bien que ça soit un moyen efficace de représentation, un diagramme de Gantt (figure 2.1) n est pas une méthode d ordonnancement. Trouver des méthodes qui génèrent des bons ordonnancements est un des objectifs de cette thèse. La difficulté est que les problèmes d ordonnancement auxquels on s intéresse sont NP-difficiles. D un point de vue mathématique, un problème d ordonnancement est un problème d optimisation sous contraintes. En effet, il faut déterminer à l intérieur de l ensemble de solutions, qui vérifient les contraintes du problème, un ordonnancement qui minimise une fonction objectif. Les problèmes d ordonnancement mettent en relation des tâches à exécuter, des machines pour les exécuter et le temps. Une tâche (job en anglais) est une entité élémentaire localisée dans le temps par une date de début et/ou de fin, dont la réalisation nécessite une durée, et qui consomme un moyen selon une certaine intensité. Dans cette thèse, l ensemble des tâches est noté J = {1, 2,..., n} où n = J est le nombre de tâches du problème. Les machines sont des moyens techniques ou humains destinés à être utilisés pour la réalisation des tâches et disponibles en quantité limitée. Les machines sont notées M 1,..., M m où m est le nombre de machines disponibles. La dimension temporelle des problèmes d ordonnancement est modélisée par l intervalle [0, ). Nous considérons que les tâches sont disponibles, pour être ordonnancées, à partir de l instant 0 ou à partir de leur date de disponibilité (qui est positive). Yasmin A. Ríos Solís

2.1. Notions et notations 13 Les contraintes des problèmes d ordonnancement expriment des restrictions sur les valeurs que peuvent prendre simultanément les variables de décision. On distingue les contraintes temporelles et les contraintes des ressources. Contraintes temporelles : elles sont relatives aux dates limites des tâches (délais de livraisons, disponibilité des approvisionnements) ou à la durée totale d un projet. Contraintes de ressources : elles expriment la nature et la quantité des moyens utilisés par les tâches, les caractéristiques d utilisation de ces moyens, la disponibilité des ressources et la quantité des moyens disponibles au cours du temps. Il est important de mentionner deux hypothèses, ou deux contraintes sur les solutions, sous lesquelles se fera toute cette étude. La première consiste à dire qu une machine ne peut exécuter qu une seule tâche à la fois. La seconde dit qu une tâche ne peut être exécutée que par une seule machine à la fois. Maintenant, nous présentons les propriétés individuelles des tâches qui déterminent, de façon significative, la nature du problème d ordonnancement. Temps d exécution : si la tâche i est exécutée totalement sur la machine M j alors son temps d exécution est noté p ij. Dans le cas où les machines sont identiques nous notons le temps d exécution de la tâche i comme p i. Date d échéance : la date à laquelle la tâche i doit être idéalement terminée est d i. Date de disponibilité (ou date de début au plus tôt) : une tâche i ne peut être ordonnancée sur la machine M j qu à partir de l instant r ij. Si les dates de disponibilité des tâches sont égales pour toutes les machines, alors nous notons r i la date de disponibilité de i. Si ces dates sont égales à 0, alors les tâches sont toujours disponibles. Pour la résolution d un problème d ordonnancement, on cherche à déterminer la date de fin C i (ou la date de début S i ) de chaque tâche i et la machine sur laquelle elle sera exécutée, de manière à minimiser un critère d optimisation. Les critères que nous considérons dans ce travail, sont basés sur les indicateurs suivants définis individuellement pour chaque tâche : l avance (earliness en anglais) de la tâche i : E i = max(0, d i C i ), et le retard (tardiness en anglais) de la tâche i : T i = max(0, C i d i ). Il faut préciser que d autres indicateurs peuvent être définis, comme le retard algébrique (L i = C i d i ) ou l indicateur de retard (U i = 1 si C i > d i et U i = 0 sinon). La figure 2.1 représente, à l aide d un diagramme de Gantt, un ordonnancement à 2 machines et 5 tâches. Nous pouvons observer que la tâche 1 est exécutée dès qu elle est disponible, la tâche 2 se trouve en avance puisque sa date de fin est inférieure à sa date d échéance, la tâche 5 est exécutée juste-à-temps car sa date de fin coïncide avec sa date d échéance, et que

14 Chapitre 2. État de l art p 31 M 1 3 2 5 p 12 M 2 1 4 0 r 1 r 2 d 2 d 4 d 5 Fig. 2.1 Diagramme de Gantt d un ordonnancement. la tâche 4 est en retard puisque sa date d échéance est inférieure à sa date de fin. On s intéresse aux fonctions suivantes qui nous permettent d obtenir un critère qui estime, de manière globale, la qualité d un ordonnancement. min i α ie i + β i T i : la combinaison linéaire des coûts d avance et de retard (α i correspond à la pénalité d avance de la tâche i et β i à sa pénalité de retard). Ce critère est dit irrégulier car il n est pas monotone croissant comme la plupart des critères en ordonnancement. min i w ic i : la somme pondérée des dates de fin (critère régulier). D autres fonctions objectif existent et sont usuellement utilisées dans la littérature. Par exemple, la minimisation de la date de fin de la dernière tâche, C max = max i C i (makespan en anglais) ou la somme pondérée des retards min i β it i. Pour décrire de façon synthétique les problèmes d ordonnancement, dans cette thèse nous utilisons la notation à trois champs (α β γ), introduite par Graham et al. [39]. L environnement des machines correspond au champ α, les contraintes liées à l exécution des tâches au champ β, ainsi que le critère d optimisation au champ γ. Le champ de l environnement des machines peut prendre les valeurs suivantes. 1 : une seule machine. P : machines parallèles identiques. La durée de la tâche i est alors de p i quelle que soit la machine qui exécute i. Q : machines parallèles à vitesses différentes et dépendantes (uniform parallel machines en anglais). Lorsque la tâche i est exécutée par la machine M j sa durée est p i /s j où s j est une constante qui dépend de M j appelée vitesse de M j. Par exemple, nous pourrons dire qu une machine va deux fois plus vite qu une autre. Yasmin A. Ríos Solís

2.1. Notions et notations 15 R : machines parallèles à vitesses différentes et indépendantes (unrelated parallel machines en anglais). Dans ce cas, la durée de la tâche i, lorsqu elle est exécutée par la machine M j, est p ij. 2.1.1 Complexité des problèmes d ordonnancement Dans cette thèse, nous considérons principalement les deux classes de problèmes suivants. La classe P est composée de problèmes pouvant être résolus en un temps polynomial, c est-à-dire, le temps d exécution est borné par une fonction polynomiale de la taille de l entrée du problème. La classe NP-difficile (NP signifie Non-déterministe Polynomial ) est composée des problèmes d optimisation tels que pour leur problème de décision associé, la réponse oui peut être décidée par un algorithme non-déterministe en un temps polynomial par rapport à la taille de l instance. De nos jours, il n existe aucune preuve qui démontre que ces deux classes soient distinctes ni qu elles soient identiques, mais aucun algorithme polynomial n a pu être trouvé pour résoudre un seul des innombrables problèmes NP-complets étudiés jusqu à ce jour. Ainsi, la conjecture P NP est aujourd hui largement acceptée. Dans la théorie de l ordonnancement, la plupart des problèmes appartiennent à la classe NP-difficiles. Néanmoins, des problèmes de base peuvent être résolus par des algorithmes polynomiaux et très souvent, ces algorithmes interviennent, par exemple, dans le calcul de bornes inférieures, d heuristiques ou bien des règles de dominance de problèmes NP-difficiles. La classification des problèmes d ordonnancement est encore un champ de recherche actif et passionnant. Pour plus de détail sur la théorie de la complexité on peut citer les livres de Garey et Johnson [32] ou de Papadimitriou [79]. La site Web de Brucker et Knust [15] compile la classification des problèmes d ordonnancement par rapport à différentes classes de complexité et exhibe les problèmes qui ne sont pas encore classifiés. 2.1.2 Production juste-à-temps Le critère lié à la minimisation simultanée des coûts d avance et de retard est particulièrement étudié dans cette thèse. Ce critère est issu de la production juste-àtemps que nous présentons ci-dessous. La philosophie de la production juste-à-temps (JAT) (just-in-time en anglais) s est développée depuis une soixantaine d années comme une politique de production qui permet de limiter les stocks et de fabriquer des produits qui correspondent exactement à la demande [17]. Sourd [99] indique que l idée de base est d éviter toute production anticipée de produits intermédiaires ou finaux, ce qui signifie que le producteur se

16 Chapitre 2. État de l art contente de produire la quantité strictement nécessaire, au moment voulu, pour satisfaire la demande de chaque client. Ainsi, c est la date à laquelle le client demande à être livré qui fixe la date de livraison du produit mais, le JAT va même plus loin : toutes les dates de toutes les opérations de la fabrication du produit livré sont également fixées de manière à ce qu il n y ait pas de temps mort dans la chaîne de fabrication. De cette manière, le produit est emballé juste-à-temps pour être livré, il est assemblé juste-àtemps pour être emballé et, ainsi de suite jusqu à déterminer la date de production des matières premières. Ainsi, en reprenant l expression de Casanova [17], le JAT consiste, en quelque sorte, à ne pas tuer l ours avant d en avoir vendu la peau : la peau d un ours tué doit en effet être stockée, ce qui nécessite la présence d un gardien, elle risque de se dégrader et, de plus, elle risque de ne pas convenir exactement au client finalement trouvé qui pourrait préférer une peau d une autre dimension ou d une autre couleur. Le concept du juste-à-temps a été développé au Japon au sein de l usine Toyota par le célèbre Taiichi Ohno et avait comme motivation principale l élimination des gaspillages à tous les niveaux [76, 17]. L introduction du système du Kanban a permis, au moyen d étiquettes (Kanban signifie étiquette en japonais) signalant les demandes de chaque poste de la chaîne de production, de mettre en œuvre simplement une politique de production JAT : limitation de la production du poste amont aux besoins exacts du poste aval. Les articles de Huang et Kusiak [53] et Akturk et Erhun [3] offrent une synthèse sur la recherche récente dans ce domaine. Il n est pas étonnant de constater que l ordonnancement JAT soit intimement lié à l ordonnancement multicritère [106, 50]. Il s agit, en effet, de trouver un compromis entre éviter d une part les retards et d autre part le stockage trop important. Ainsi, aux critères traditionnels de l ordonnancement qui visent tous à ordonnancer au plus tôt (critères dits réguliers), l étude de modèles basés sur le JAT a conduit à introduire un critère d avance qui pénalise une tâche exécutée trop tôt. Cette introduction de pénalités d avance peut être vue comme un moyen de simplifier les modèles de l ordonnancement en évitant d introduire explicitement des contraintes de stockage. Les modèles traditionnels de l ordonnancement théorique se sont enrichis de concepts venus du JAT. Ces problèmes offrent des challenges intéressants en raison de leur complexité. Par exemple, il n existe pas d algorithmes d approximation pour le problème à une machine (avec dates d échéance distinctes). D un point de vue pratique, les problèmes issus du JAT sont souvent difficiles. Pour trouver de bons algorithmes et de bonnes bornes, il est en effet nécessaire d appliquer à la fois des raisonnements purement combinatoires et des approches basées sur la programmation mathématique pour manipuler des combinaisons linéaires de critères souvent contradictoires [99]. Yasmin A. Ríos Solís

2.2. Problèmes d ordonnancement d avance-retard 17 2.2 Problèmes d ordonnancement d avance-retard La politique du JAT, menée de plus en plus dans les industries, a motivé l étude de problèmes d ordonnancement qui capturent les caractéristiques de cette philosophie. Parmi ces modèles se trouve le problème d ordonnancement où l avance de la fabrication d une tâche ainsi que le retard sont pénalisés. Comme remarqué par Hoogeveen et van de Velde [52], dans un article présentant un des premiers algorithmes exacts pour le problème d ordonnancement d avance-retard pour une seule machine, la résolution exacte se heurte à la difficulté de trouver une bonne borne inférieure d une part et de bonnes règles de dominance d autre part. En effet, en raison des coûts d avance, la plupart des raisonnements classiques ne sont plus applicables, à moins de découpler la minimisation des coûts d avance d une part et celle des coûts de retard d autre part [71]. Dans le chapitre 6 de cette thèse nous développons une borne inférieure pour le problème d avance-retard à machines parallèles P i αe i + β i T i. L objectif maintenant, est de présenter quelques résultats de la littérature sur ce problème ainsi que différentes bornes inférieures qui ont motivé l approche que nous utiliserons dans ce chapitre. Le problème 1 i w it i est NP-difficile [25] et par conséquent, les problèmes 1 i αe i + β i T i et P i αe i + β i T i le sont aussi. Comme observé dans plusieurs états de l art [50, 65, 37, 6], les cas polynomiaux sont rares. Pour le problème à une seule machine, on peut citer Hoogeveen et van de Velde [52] pour le cas où α i = α et β i = β, Kim et Yano [59] et Fry et al. [31] pour le cas où α i = β i = 1. Ils présentent des bornes inférieures et des méthodes de branch&bound. Pour le cas général, en introduisant une relaxation préemptive du problème qui devient alors un problème de transport, Sourd et Kedad-Sidhoum [103] ont pu résoudre des instances jusqu à 30 tâches. Alors que la résolution exacte est difficile et que les algorithmes heuristiques constructifs ont des performances modestes [115], il est à noter que les méthodes par voisinage donnent des bons résultats (voir l algorithme HEUR et la recherche dans des voisinages exponentiels, chapitre 4). Pour le cas à machines parallèles, la plupart des recherches ont été effectuées dans le cas d une date d échéance commune (voir la section 2.3). L article [57] a été le résultat d une collaboration avec Kedad-Sidhoum et Sourd. Cet article propose différentes bornes inférieures pour le problème P i αe i + β i T i et un des objectifs est de les comparer expérimentalement. Les résultats auxquels j ai contribué à cet article sont présentés dans le chapitre 6. Néanmoins, dans les deux sections suivantes nous présentons les contributions de Kedad-Sidhoum et Sourd. Les raisons de présenter dans ce manuscrit les bornes qu ils ont proposées et développées sont les suivantes :

18 Chapitre 2. État de l art elles justifient la motivation de l approche de la borne inférieure que nous présentons dans le chapitre 6, nous nous comparons expérimentalement à elles dans ce même chapitre, de plus, dans les résultats expérimentaux du chapitre 4 nous nous comparons aussi à quelques unes d elles. 2.2.1 Modèle avec variables indexées sur le temps Nous présentons un programme linéaire en nombres entiers pour le problème P r i i α ie i + β i T i présenté dans l article [57]. Nous rappelons que comme les dates d échéance, les temps d exécution et les dates de disponibilité sont toutes entières alors il existe une solution optimale avec dates de début des tâches entières. Le programme en nombres entiers est basé sur la discrétisation du temps : la période t commence à l instant t et finit à l instant t + 1. Nous pouvons démontrer par arguments d échanges, qu il existe un ordonnancement optimal qui se termine avant le temps horizon T = max i d i + max p i + i i J p i m Donc, nous considérons les périodes de temps 0, 1, 2,..., T 1. Soit x it la variable binaire telle que x it = {. 1 si la tâche i commence à l instant t, 0 sinon, et soit est i (t) = max(r i, t p i +1) la valeur de la date de début au plus tôt de la tâche i telle qu elle est exécutée dans l intervalle t. Nous définissons aussi le coût de début c it = max (α i (d i t), β i(t d i )) où d i = d i p i est la date de début cible de la tâche i. Le modèle avec variables indexées sur le temps est le suivant : min i J s.c. T p i T p i t=r i c it x it (2.1) x it = 1 i J (2.2) t=r i t x is m t [0, T 1] (2.3) i J s=est i (t) x it {0, 1} i J, t [r i, T p i ] Les équations (2.2) assurent que les tâches soient réalisées une seule fois. Les inégalités (2.3) correspondent aux contraintes de ressources qui indiquent qu au plus m tâches peuvent être exécutées en même temps. Yasmin A. Ríos Solís

2.2. Problèmes d ordonnancement d avance-retard 19 Un des avantages de cette formulation est que la relaxation continue donne une borne inférieure qui est meilleure que les bornes obtenues par des programme entiersmixtes [109], mais son désavantage est sa taille. Dans l article [57], Kedad-Sidhoum et Sourd ont testé et comparé trois bornes qui essayent de remédier ce problème. Une des bornes, appelée LINCG, est basée sur la génération de colonnes. En effet, à partir d un ordonnancement réalisable donné par l heuristique HEUR (décrite en détail dans la section 4.3.2 du chapitre 4), le programme linéaire (2.1) est restreint aux n variables considérées initialement et résolu pour obtenir des coûts réduits des autres variables. Ainsi, les variables à coût réduits non-négatifs sont ajoutées au programme et la procédure est réitérée jusqu à ce qu il ne reste plus de variables à coût réduit négatif. Ils montrent expérimentalement qu en ajoutant les variables aux coûts réduits bornés, le temps de calcul est diminué ainsi que le nombre d itérations. Les deux autres bornes développées par Kedad-Sidhoum et Sourd dans l article [57] sont basées sur la relaxation Lagrangienne. La première, appelée LAGOCC, est obtenue en relâchant les contraintes (2.2), si bien qu une tâche peut être exécutée plusieurs fois. Cette approche est similaire à celle proposée par Péridy et al. [85] pour le cas à une seule machine où l objectif est de minimiser la somme pondérée des tâches en retard. Kedad-Sidhoum et Sourd montrent que le programme dual du problème Lagrangien peut être résolu par un problème de flots. L optimisation de la fonction Lagrangienne pour obtenir la borne inférieure est faite avec une méthode de sous-gradient. La dernière borne est obtenue en relâchant les contraintes de ressources (2.3). Cette relaxation a été présentée par Luh et al. [73] pour le cas de la minimisation de la somme pondérée des retards. Le programme Lagrangien obtenu peut être décomposé en n problèmes indépendants. Ensuite, la borne inférieure est obtenue, elle aussi, à l aide d un sousgradient. Cette borne inférieure est nommée LAGRES. Récemment, Sourd [102] présente un renforcement de la relaxation Lagrangienne des contraintes (2.2). En effet, des ordonnancements dominés sont exclus en ajoutant des contraintes redondantes. Il teste cette approche sur le problème d ordonnancement d avance-retard sur une seule machine avec une date d échéance commune et il résout de façon optimale des instances jusqu à 1000 tâches en 1000 secondes. 2.2.2 Modèle avec variables d affectation Nous considérons maintenant, une formulation avec variables d affectation (assignment-based formulation en anglais) qui est basée sur la même discrétisation du temps que pour le modèle avec variables indexées sur le temps de la section 2.2.1. Soit y it la variable binaire telle que { 1 si la tâche i est exécutée pendant la période t, y it = 0 sinon.

20 Chapitre 2. État de l art L idée de cette formulation est de voir le problème d ordonnancement comme un problème d affectation d opérations unitaires à des périodes de temps qui sont aussi unitaires. Les premiers à utiliser cette formulation ont été Gelders et Kleindorfer [34] pour le problème à une seule machine pour minimiser la somme pondérée des retards. Plus tard, Sourd et Kedad-Sidhoum [103] et Bülbül et al. [10] ont indépendamment généralisé cette approche pour le problème d avance-retard avec une seule machine. Nous présentons maintenant leur généralisation pour le problème à machines parallèles P r i i α ie i + β i T i. En introduisant les variables z ij, qui indiquent qu un nouveau bloc de la tâche i commence au temps t, c est-à-dire, z it = { 1 si y it = 1 et y it 1 = 0, 0 sinon, nous pouvons formuler le modèle avec variables d affectation : min i J s.c. T p i T p i t=r i c ity it (2.4) y it = p i i J (2.5) t=r i y it m t = 0,..., T 1 (2.6) i J z iri y iri i J (2.7) z it y it y it 1 i J, t {r i + 1,..., T p i } (2.8) T p i t=r i z it = 1 i J (2.9) y it, z it {0, 1} i J, t {r i,..., T p i } (2.10) Nous remarquons que la fonction objectif est reformulée. Le coût d une tâche ne dépend plus de sa date de fin mais il est réparti dans chaque intervalle de temps où elle est réalisée. Alors, le coût d affectation c it pour ordonnancer une partie de la tâche i dans la période t doit satisfaire t 1 s=t p i c is = max (α i (d i t), β i (t d i )) t i J. Une solution proposée par Sourd et Kedad-Sidhoum [103] est : c it = α di t 1 i p i β i t+1 di p i si t < d i, si t d i. (2.11) Yasmin A. Ríos Solís