15
12/11/2015 1 4.1. Notions d’ordonnancement 4.2. Définitions 4.3. Modélisation 4.4. Méthodes de résolution 4.5. Problèmes types Chapitre 4: Introduction à l’ordonnancement IV.1. Notions d’ordonnancement (1) Ordonnancer = Organiser dans le temps la réalisation d’un ensemble d’activités compte tenu : De contraintes temporelles (délais, échéances, enchainement) De contraintes de ressources (disponibilité, utilisation) Eléments d’un problème d’ordonnancement Un ensemble d’activités (ou tâches) Un ensemble de ressources Des contraintes sur les activités et les ressources Un (des) critères d’optimisation (le plus souvent) Par exemple : minimiser la durée de réalisation des tâches, minimiser les retards, etc. 2 IV.1. Notions d’ordonnancement (2) 3 Gestion de projets Gestion de services Gestion de ressources humaines Emplois du temps Gestion de production Organisation d’ateliers IV.1. Notions d’ordonnancement (3) 4 Ordonnancement Obtention d’un plan prévisionnel défini pour un horizon temporel Les données sont connues et fixes sur l’horizon temporel Ordonnancement statique Exécution du plan prévisionnel (lancement) Nécessité d’un contrôle de l’exécution Ajustements éventuels du plan prévisionnel Pour absorber les aléas Utilisation des marges du plan prévisionnel Remise en cause du plan prévisionnel Ordonnancement dynamique

Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

  • Upload
    vohanh

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

1

4.1. Notions d’ordonnancement

4.2. Définitions

4.3. Modélisation

4.4. Méthodes de résolution

4.5. Problèmes types

Chapitre 4: Introduction à

l’ordonnancement

IV.1. Notions d’ordonnancement (1)

Ordonnancer = Organiser dans le temps la réalisation d’un

ensemble d’activités compte tenu :

De contraintes temporelles (délais, échéances, enchainement)

De contraintes de ressources (disponibilité, utilisation)

Eléments d’un problème d’ordonnancement

Un ensemble d’activités (ou tâches)

Un ensemble de ressources

Des contraintes sur les activités et les ressources

Un (des) critères d’optimisation (le plus souvent)

Par exemple : minimiser la durée de réalisation des tâches, minimiser les retards,

etc.

2

IV.1. Notions d’ordonnancement (2)

3

Gestion de projets

Gestion de services

Gestion de ressources humaines

Emplois du temps

Gestion de production

Organisation d’ateliers

IV.1. Notions d’ordonnancement (3)

4

Ordonnancement

Obtention d’un plan prévisionnel défini pour un horizon temporel

Les données sont connues et fixes sur l’horizon temporel

Ordonnancement statique

Exécution du plan prévisionnel (lancement)

Nécessité d’un contrôle de l’exécution

Ajustements éventuels du plan prévisionnel

Pour absorber les aléas

Utilisation des marges du plan prévisionnel

Remise en cause du plan prévisionnel

Ordonnancement dynamique

Page 2: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

2

Exemple

5

IV.2. Définitions (1)

6

Une activité ou tâche :

Entité élémentaire d’un travail à réaliser

Formalisation

Tâches préemptive / Non préemptive

Une tâche est dite préemptive si sa réalisation peut être morcelée dans le temps

Plusieurs dates de début et de fin (par morceaux)

IV.2. Définitions (2)

7

Chaque activité nécessite une (des) ressource(s)

Résoudre un problème d’ordonnancement :

Fixer les dates de début de chaque tâche

Remarque :

les ressources nécessaires à chaque activités peuvent ne pas être fixée un ensemble de ressources possibles

Résoudre un problème d’ordonnancement

Fixer les dates de début de chaque activité

Fixer la(es) ressource(s) pour chaque activité

IV.2. Définitions (3)

8

Une ressource :

Un moyen technique ou humain permettant la réalisation d’une tâche

La quantité de chaque ressource est limitée

Formalisation

La quantité disponible peut varier dans le temps :

Page 3: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

3

IV.2. Définitions (3)

9

Types de ressources

Renouvelables :

Après utilisation pour la réalisation d’une tâche, les ressources sont à nouveau

disponibles en même quantité

Consommables :

Chaque utilisation de ressource fait diminuer la quantité de ressource disponible

Pour les ressources renouvelables :

Ressources disjonctives

Une ressource disjonctive est non partageable. Elle ne peut réaliser qu’une seule tâche à

la fois

Ressources cumulatives

Une ressource cumulative peut être utilisée simultanément par plusieurs tâches

IV.2. Définitions (3)

10

Différentes contraintes en ordonnancement

Commerciales :

certaines tâches doivent être réalisées pour une date donnée

Technologiques :

Certaines tâches ne peuvent débuter tant que d’autres ne sont pas achevées

Matérielles

Effectif limité pour le personnel, nombre de ressources matérielles limité

Financières :

Le budget est limité

IV.2. Définitions (4)

Contrainte :

Exprimer des restrictions sur les valeurs possibles des variables du problème

Ici les variables sont les dates de début des tâches

Deux familles de contraintes en ordonnancement

Contraintes temporelles

Temps allouée pour la réalisation

Succession entre tâches

Contraintes de ressources

Capacité et disponibilité des ressources

Demande en ressources par tâche

11

IV.2. Définitions (5)

Contraintes temporelles

Début au plus tôt (release date )

Fin au plus tard (due date )

Succession entre tâches

Simple, avec attente, avec chevauchement, avec délai maximal, sans délai

Contraintes de ressources (renouvelables)

Ressource disjonctive : (machine)

réalise 1 seule tâche à la fois

Ressource cumulative :

ressource ayant une capacité > 1 et pouvant accepter des demandes > 1

12

Page 4: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

4

IV.2. Définitions (6)

Représentation d’un ordonnancement : Diagramme de Gantt

Abscisse : le temps

Ordonnée : les tâches en l’absence de contraintes de ressources

Exemple

13

F

E

D

C

B

A

5 10

IV.2. Définitions (7)

Représentation d’un ordonnancement : Diagramme de Gantt

Abscisse : le temps

Ordonnée : les ressources

Exemple :

14

m3 A3 B3

m2 B1 A2

m1 A1 B2

5 10

IV.3. Modélisation (1)

15

Graphe X : ensemble de sommets Date de début ( Activités)

1 sommet par activité

1 sommet : Début du projet (S) + 1 sommet Fin du projet (F)

A : ensembles d’arcs Inégalités de potentiels

Exemple : Problème avec 3 tâches telles que :

Donner les contraintes temporelles

Donner le graphe associé

Succession simple :

IV.3. Modélisation (2)

16

Contraintes :

Graphe

Graphe potentiels-tâches:

Nom des sommets

Nom des activités:

Pourquoi ?:

Page 5: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

5

IV.3. Modélisation (3)

17

Hypothèse : Ressources renouvelables

Contraintes de ressources disjonctives

2 tâches utilisant la même ressource disjonctive ne peuvent être réalisées

simultanément

Expression sous la forme d’inégalités de potentiels

Arcs « disjonctifs » dans le graphe potentiels-tâches

ou:

ou:

IV.3. Modélisation (4)

Illustration des contraintes disjonctives

soit une ressource disponible en quantité

soit 3 activités nécessitant cette ressource avec les quantités :

Il y a 3 paires de tâches en conflit :

D’où les contraintes :

18

Paires de disjonction

IV.3. Modélisation (5)

19

Contraintes de ressources cumulatives

Généralisation des contraintes de ressources disjonctives

Si alors les tâches de ne peuvent s’exécuter

simultanément

Remarque : vérifier cette contrainte à chaque instant

IV.3. Modélisation (6)

Illustration des contraintes cumulatives

soit une ressource disponible en quantité

soit 4 activités nécessitant cette ressource avec les quantités :

Ensembles minimaux de tâches en conflit pour la ressource

Attention : non minimal

20

Ensembles critiques

Page 6: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

6

IV.3. Modélisation (7)

21

Illustration des contraintes cumulatives (suite)

Pour chaque ensemble critique

Un ensemble de contraintes de succession

Ces 2 ensembles critiques =

paires de disjonction

Exercice (1)

Soit le problème d’ordonnancement suivant :

8 tâches telles que : T1 < T2; T3 < T4 < T5; T6 < T7 < T8; T4 < T2

Durées respectives : (3, 4, 2, 2, 4, 6, 4, 1)

Question 1. Donner le graphe potentiels tâches correspondant

Question 2. Quelle est la durée minimale de l’ordonnancement ?

22

Exercice (2)

Ajouter des contraintes de ressources

M1 : T4 et T8; ressource disjonctive

M2 : T2, T5, T7; ressource disjonctive

M3 : T1, T3 et T6; ressource cumulative de capacité 3, utilisation (2, 1, 1)

Question 3. Donner le graphe disjonctif correspondant

23

Exercice (3)

Soit une solution pour le partage des ressources

Sur M1 : T4 < T8

Sur M2 : T7 < T5 ; T2 < T5; T7 < T2

Sur M3 : T3 < T1

Question 4. Représenter cette solution sur le graphe

Question 5. Donner la durée de l’ordonnancement

24

Page 7: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

7

Exercice (4)

Question 6. Donner le diagramme de Gantt

25

m3

m2

m1

2 4 6 8 10 12 14 16 18 20

Exercice (6)

Soit une autre solution pour le partage des ressources

Sur M1 : T8 < T4

Sur M2: T5 < T7; T7 < T2; T5 < T2

Sur M3 : T3 < T1

Représenter cette solution par un graphe

Faire le diagramme de Gantt

Quelle est la nouvelle durée de l’ordonnancement ?

26

Exercice (7)

27

m3

m2

m1

2 4 6 8 10 12 14 16 18 20

IV.3. Modélisation … le retour (1)

Modèle de programmation linéaire

Données

Objectif

Contraintes temporelles

28

Page 8: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

8

IV.3. Modélisation … le retour (2)

Modèle de Programmation Linéaire

Données complémentaires :

Contraintes de ressources disjonctives :

Domaine des variables

29

IV.3. Modélisation … le retour (3)

Fonctions objectifs classiques

Makespan

Retards

Retard algébrique

Retard vrai

30

IV.3. Modélisation … le retour (4)

Modèle de programmation linéaire

Variables continues (PL) : méthode du Simplexe

Problème « simple » en termes de complexité

Ici :

Variables discrètes

Variables mixtes

Problèmes difficiles en termes de complexité

PL en Nombres Entiers (PLNE)

PLNE en 0/1

PL variables mixtes

31

IV.4. Méthodes de résolution (1)

Cas des problèmes « faciles »

Il existe un algorithme en temps polynomial pour le résoudre

Exemple : Ordonnancement de projet / Plus court chemin, ….

Cas des problèmes « difficiles »

Méthodes exactes obtention de la solution optimale

Temps de calcul exponentiel dans le pire cas

Méthodes approchées obtention d’une solution (qualité ?)

Heuristiques

Méta-Heuristiques

32

Page 9: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

9

IV.4. Méthodes de résolution (2)

Méthode exacte par séparation et évaluation

Principe (problème de minimisation)

Partir de l’ensemble de solutions

Séparer cet ensemble en 2 sous-ensembles

Evaluer chaque ensemble borne inférieure (meilleur cas)

Pour chaque sous-ensemble : différents tests

Test d’admissibilité : contient-il des solutions ?

Test de résolution : contient une seule solution (admissible) ? : a-t-elle un

meilleure cout que celle déjà mémorisée ?

Test de dominance : cout supérieur au cout de la solution mémorisée ?

33

Branch and Bound

IV.4. Méthodes de résolution (3)

Exemple de Branch and Bound (B&B)

34

Méthode arborescente

Evaluation : relâcher des

contraintes (ie. entiers

réels) et résoudre un PL

IV.4. Méthodes de résolution (4)

Méthodes approchées

Heuristiques gloutonnes

Parfois appelées méthodes de listes (en ordonnancement)

Principe

Instanciation progressive des variables

Ne jamais remettre en cause les choix effectués

Doit garantir l’admissibilité de la solution obtenue

Se donner un ordre de priorité sur les variables (et les valeurs)

Les contraintes satisfaites lors d’une étape de résolution ne peuvent être remises

en cause lors d’étapes suivantes

Pas de garantie d’optimalité

35

IV.4. Méthodes de résolution (5)

Exemple d’heuristique gloutonne en ordonnancement

Objectif : minimisation du Makespan

1. Se placer à la date t (= minimum des dates de début au plus tôt)

2. Construire l’ensemble E des tâches pouvant être réalisées à t

3. Sélectionner la tâche i de plus grande priorité

4. Placer la tâche i au plus tôt sur la ressource k qui la réalise (en respectant les

contraintes de partage de ressources et de précédence)

5. Recommencer en 3 tant qu’il reste des tâches dans E

6. Recommencer en 2 en mettant à jour t (prochain minimum des dates de début

au plus tôt)

36

Page 10: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

10

IV.4. Méthodes de résolution (6)

Quelques règles de priorité en ordonnancement

EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

SPT (Shortest Processing Time) : priorité à la tâche ayant la plus petite durée

LPT (Longest Processing Time) : priorité à la tâche ayant la plus grande durée

Différentes règles de priorité différentes solutions

Priorités statiques / dynamiques

37

Exercice (1)

Soit le problème d’ordonnancement suivant

38

Exercice (2)

Question 1. Calculer la durée minimale de l’ordonnancement (sans prendre en

compte les contraintes de ressource)

Question 2. Donner les dates de début au plus tôt et au plus tard

Question 3. Appliquer une heuristique gloutonne en classant les tâches par dates

de début au plus tard croissantes

Question 4. Donner le diagramme de Gantt associé et donner la valeur du

Cmax de la solution obtenue.

Question 5. A-t-on l’optimum ? Une borne supérieure ? Une borne inférieure ?

39

R2

R1

10 20 30 40 50

IV.4. Méthodes de résolution (7)

Performance d’une méthode approchée (en minimisation)

Qualité de la solution trouvée

Une solution avec une valeur

Borne supérieure de l’optimum

Comparaison avec

Valeur optimale

Borne inférieure

Une méthode approchée ne peut pas trouver mieux qu’une méthode exacte

40

Page 11: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

11

IV.4. Méthodes de résolution (8)

Performance d’une méthode approchée

Temps de calcul

Une méthode approchée est plus rapide qu’une méthode exacte

Solutions réalisables

Tester si les solutions retournées respectent les contraintes du problème !

Evaluation a posteriori

Evaluation statistique

A effectuer sur plusieurs jeux de données de tailles différentes

41

IV.5. Problèmes d’ordonnancement types (1)

Classification des problèmes d’ordonnancement

3 paramètres :

L’organisation des ressources

Les caractéristiques des tâches

Les objectifs

Organisation des ressources

Machine unique

Machines parallèles

Type atelier (organisation du passage de produits sur les machines)

Flow shop

Job shop

Open shop

Général

42

IV.5. Problèmes d’ordonnancement types (2)

43

M1

M2

Mk

Entrée

Atelier

Sortie

Atelier M1 M2

M3

M4

M1 M2 M3 M4

IV.5. Problèmes d’ordonnancement types (3)

Caractéristiques des tâches

Préemptives ou non

Forme des contraintes de précédence (chaine, ….)

Contraintes de dates de disponibilité

Contraintes de dates dues

…..

Objectifs considérés

Makespan

Retard

Avance

etc

44

Page 12: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

12

IV.5. Problèmes d’ordonnancement types (4)

Problème à 1 machine

1 machine (disjonctive)

Ensemble de n tâches

Exemple : étude d’une machine goulet

Un problème trivial

Minimiser le makespan : tout ordre entre les tâche donne la même durée

Exemple :

45

1 2 3 4 5

2 5 11 16 17

IV.5. Problèmes d’ordonnancement types (5)

Problème à 1 machine avec dates dues

Problème facile :

Minimiser le retard (algébrique)

Il existe une heuristique gloutonne permettant d’obtenir la solution optimale :

Trier les tâches par dates dues croissantes (EDD) - Jackson

Exemple : Appliquer la règle EDD et donner la valeur de (2)

46

M

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

IV.5. Problèmes d’ordonnancement types (6)

Problème à 1 machine avec dates dues et minimisation de la

somme pondérée des retards

Objectif : avec et

Illustration d’une méthode exacte (Branch and Bound)

Construire un ordonnancement par la fin (vis à vis de l’objectif à atteindre)

Etat initial : aucune décision d’ordonnancement

Séparation :

o placer une opération en dernier ( n branches)

Evaluation :

o valeur de la fonction objectif pour les opérations déjà placées

47

IV.5. Problèmes d’ordonnancement types (7)

Exemple :

48 48

Page 13: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

13

IV.5. Problèmes d’ordonnancement types (8)

Problème de Flow Shop

Ensemble de produits (travaux ou job) : n

Ensemble de machines : m

Chaque Job : m opérations

L’ordre de passage sur les ressources est identique pour tous les jobs

Variante : Flow Shop Hybride : plusieurs machines / niveau

49

M1 M2 M3 M4

M1 M2

M3

M4

M5

M6

M7

IV.5. Problèmes d’ordonnancement types (9)

Exemple d’un problème de Flow Shop facile

2 machines – Minimisation du makespan (durée totale)

Heuristique conduisant à la solution optimale (Johnson)

Pour M1 : Faire passer les opérations le plus vite possible pour limiter le temps

d’inactivité de M2 SPT sur M1

Pour M2, prendre l’ordre LPT pour éviter que M2 attende trop que M1 transfère

des opérations

50

M1 M2

IV.5. Problèmes d’ordonnancement types (10)

Heuristique de Johnson

Faire deux ensembles d’opérations

Trier les opérations de avec SPT sur

Trier les opérations de avec LPT sur

Ordre total :

Identique sur M1 et M2 flow shop de permutation

Résoudre l’exemple et donner le diagramme de Gantt

51

IV.5. Problèmes d’ordonnancement types (11)

Problème de Job Shop

Ensemble de produits (travaux ou job) : n

Ensemble de machines : m

Chaque Job : m’ opérations : ordre de passage quelconque

Exemple

52

M1 M2

M3

J1

J2

J3

Page 14: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

14

IV.5. Problèmes d’ordonnancement types (12)

Problème de Flox Shop ou Job Shop

Quelques cas particuliers faciles

Voir la littérature en ordonnancement

Sinon problèmes difficiles

Problème d’Open Shop

Ensemble de travaux : n

Ensemble de machines : m

Chaque job passe sur une ensemble de machines dans un ordre quelconque

non spécifié

53

IV.5. Problèmes d’ordonnancement types (13)

Exemple

Soit un problème de job shop

Appliquer l’heuristique suivante :

Classer les tâches par date de début

croissante (en cas d’égalité classer

les tâches par durée croissante)

Placer au plus tôt sur la ressource

demandé

Ordre des tâches :

Diagramme de Gantt :

54

0 *

1

7

4

2

8

5

3

9

6

m1 m2 m3

m1

m3 m2

m3 m1 m2

10 35

250

0

0

15 16 12

11 12

21

10 20 30 40 50 60 70 800 90 100 110 120

M1

M2

M3

IV.5. Problèmes d’ordonnancement types (14)

Donner le séquencement obtenu sur les ressources

Donner les dates de début au plus tôt / au plus tard et le chemin critique

55

0 *

1

7

4

2

8

5

3

9

6

m1 m2 m3

m1

m3 m2

m3 m1 m2

10 35

250

0

0

15 16 12

11 12

21

Exercice (1)

Soit un atelier réalisant 3 types de papier peint différents. Chaque type de papier est fabriqué sous forme d’un rouleau de papier continu qui passe sur plusieurs machines (chacune imprimant une couleur différente)

L’ordre de passage (et la durée) sur les machines dépend du type de papier.

Type 1 : Machine 1 (bleu, 45) puis Machine 3 (jaune, 10)

Type 2 : Machine 2 (vert, 10), Machine 1 (bleu, 20) puis Machine 3 (jaune, 34)

Type 3 : Machine 2 (vert, 17) puis Machine 3 (jaune, 28)

Une machine ne peut traiter qu’un seul type de papier à la fois et qu’un type de papier ne peut passer que sur une machine à la fois

On souhaite réaliser ces 3 types de produits avec une durée minimale

Quel est le problème d’ordonnancement ?

Donner un modèle linéaire

Donner un modèle de graphe

Proposer une méthode de résolution

56

Page 15: Introduction aux problèmes d’ordonnancement · EDD (Earliest Due Date) : priorité à la tâche ayant la plus grande date de fin

12/11/2015

15

Exercice (2)

Modèle de PLNE

57

Exercice (3)

Modèle de Graphe

58

Exercice (4)

Résolution

Solution 99 - Type 1 : 44, 89 / Type 2 : 0, 10, 55 / Type 3 : 10, 27

59