Vous êtes sur la page 1sur 57

Chapitre 1: Ordonnancement

dans un atelier à une seule


machine

Taïcir Moalla Loukil


Professeur à la faculté des Sciences
Économiques et de Gestion de Sfax
FSEGS 2020-2021
taicir.loukil@fsegs.usf.tn

1
Problèmes d’ordonnancement
contenu du cours
➢ Domaines concernés, applications
➢ Définition de l’ordonnancement
➢ Fonctions et objectifs de l’ordonnancement
➢ Classification des problèmes d’ordonnancement
➢ Environnement machines
➢ Caractéristiques des tâches
➢ Critères d’optimalité
➢ Chapitre 1: Ordonnancement dans un atelier à une seule
machine,
➢ Chapitre 2: Ordonnancement dans un atelier à deux et
trois machines,
➢ Chapitre 3: Cas réels de problèmes d’ordonnancement
2
Résolution du problème d’ordonnancement
➢ Résoudre un problème d’ordonnancement, c’est définir où et à
quel moment précis, un certain nombre de tâches doivent être
réalisées ; c’est à dire :
➢ Quelle machine sera affectée à chaque tâche ?
➢ Quand chaque tâche sera réalisée ?
➢ Ceci réduit un problème d’ordonnancement à un problème
d’affectation (assignment) et / ou à un problème de
jalonnement ou de routage des tâches sur chaque machine
(sequencing).
• L’affectation consiste à distribuer les tâches sur les postes de trava
Il s’agit là d’une planification à court terme de la capacité.
• Le jalonnement consiste à établir le calendrier d’exécution des
tâches sur les machines. Ceci suppose que la gamme opératoire d
chaque tâche et les durées des opérations sont connues
3
Résolution du problème d’ordonnancement
Pour trouver un ordonnancement optimal, minimisant la
mesure de performance choisie, nous avons besoin de
faire une recherche parmi toutes les solutions. En
pratique, le nombre de possibilités, bien que fini, peut être
très grand, de sorte qu’une recherche exhaustive s’avère
impossible. Analysons le nombre de solutions réalisables
dans le cas d’un flow shop à n tâches et m machines ;
Une séquence de traitement donne pour chaque machine
l’ordre de traitement des tâches. Elle spécifie alors, une
permutation de (j1, j2, ..., jn) pour chacune des m machines,
et comme il y a n ! permutations de (j1, j2, ..., jn), il existe
donc (n !)m ordres de traitement possibles. Déjà, pour un
problème qu’on croit simple, avec 8 produits et 2
machines, il existe (8 !)2 = (40320)2 séquences possibles. 4
Résolution du problème d’ordonnancement
➢ Plusieurs approches et modèles sont proposés pour
la résolution des problèmes d’ordonnancement.
➢ Plusieurs problèmes simples sont résolus par des
algorithmes spécifiques;
➢ de nombreuses heuristiques ont été également
mises au point.
➢ Le choix d’une méthode appropriée dépend de la
complexité du problème ; du nombre et de la
configuration des machines, du système de
production en question, du système
d’ordonnancement et de la nature statique ou
dynamique des arrivées des tâches.
5
Les approches et les modèles pour la
résolution des problèmes d’ordonnancement
Les approches anciennes
➢ Le graphe disjonctif
➢ Les approches manuelles (les règles de priorité) ;
➢ La simulation par ordinateur;
➢ L'approche mathématique,
Les nouvelles approches
➢ Les méthodes de recherche locales (recuit simulé, tabu
search, algorithmes génétiques);
➢ Beam search (énumération partielle);
➢ Les méthodes goulot
➢ Les systèmes experts, les réseaux de neurones et les DSS.
Nous nous limitons dans ce cours, aux approches anciennes,
6
Outils pour visualiser les conséquences
d’un choix d’ordonnancement

➢ Deux outils :

- Diagramme de Gantt

- Profil des charges de travail


Le Diagramme de Gantt
➢ L'aide visuelle appelée diagramme de Gantt est
utilisée à diverses fins liées à la planification.
➢ Il tire son nom de Henry Gantt, qui a été le pionnier
de l'utilisation des graphiques pour la planification
industrielle au début du 19e siècle.
➢ Les gestionnaires peuvent utiliser les graphiques
pour le développement des calendriers d'essais et
d'erreurs afin de se faire une idée de ce
qu'impliquerait un arrangement différent ou ils
peuvent utiliser un logiciel qui fournit le calendrier
approprié dans un délai limité.
➢ Le but des diagrammes de Gantt est d'organiser et
de clarifier l'utilisation réelle ou prévue des
ressources dans un cadre temporel.
Le diagramme de Gantt permet de visualiser à la fois :
- l'utilisation des moyens productifs,
- l'avancement de l'exécution des tâches.
Une ligne horizontale illustre l'évolution du temps. Pour
chaque moyen productif (en l'occurence les machines), on
trace une ligne horizontale au dessus (ou en dessous) de
la ligne du temps. Chaque tâche à effectuer est
représentée par un segment horizontal dont la longueur
est proportionnelle à la durée d'exécution de la tâche. Le
numéro de la tâche sera indiqué au dessus du segment.
➢ Les diagrammes de Gantt peuvent être utilisés pour
différents problèmes, par exemple la planification de
l'exécution d’un ordre de fabrication dans un atelier.
Diagramme de Gantt
Permet de visualiser pour un problème de
production:
• La séquence d’opérations

• Le temps pris par chaque opération


0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58

Étape 1 1 2 3 4

Étape 2 1 2 3 4
Étape

Commande 1
Commande 2
Commande 3
Attente Attente Commande 4
Profil de charges de travail
Le profil de charge, très visuel, met rapidement en relief les postes en
surcharge ou en sous charge. Dans les deux cas, il s’agit d’ajuster,
soit la capacité, soit la charge selon les priorités.

Profil de charges

Poste E
Poste D
Problème!
Poste C
Quoi faire?
Poste B
Poste A
0% 50% 100% 150%
Taux d'utilisation prévu
Règles de priorité
➢ Une règle de priorité permet d’établir l’ordre dans
lequel on exécutera les différentes commandes.
➢ Les opérations sont affectées aux machines selon des
règles de priorité et en fonction de la disponibilité des
machines.
➢ Ainsi, lorsqu’une tâche arrive devant une machine
libre, elle est immédiatement traitée et quand une
machine devient vide, nous lui affectons simplement la
tâche ayant la plus haute priorité, parmi celles
disponibles devant la dite machine.
Citons à titre d'exemple:
Règles de priorité (suite)
- PEPS : Premier Entré, Premier Servi FCFS (First Come, First
Served) consiste à choisir l’opération arrivée première devant la
machine.
- TOC: Temps d’opération le plus court ou SPT (Shortest
Processing Time) consiste à choisir l’opération ayant le plus
court temps opératoire.
-TOL: Temps d’opération le plus long ou LPT (Longest
Processing Time) consiste à choisir l’opération ayant le temps
opératoire le plus long.
- DP: Date de livraison Promise ou EDD (Earliest Due Date)
consiste à choisir l’opération ayant la date d’échéance la plus
proche.
-MLM: Marge libre minimale (nombre de jours avant la
livraison moins le temps d’opération pour compléter la
commande) on lappelle aussi marge dynamique,
-PODP : Par ordre de priorité (La priorité est donnée aux
commandes les plus urgentes; au client qui en a le plus besoin.
Par exemple, c’est la règle qui est utilisée dans les hôpitaux)
-RANDOM : consiste à choisir aléatoirement une tâche
-MWKR (Most Work Remain) consiste à choisir l’opération
correspondant à la tâche ayant le plus grand nombre
d’opérations à exécuter ou ayant le plus grand temps de
traitement restant. 14
W

➢ lorsqu’on minimise Cmax toutes les règles de priorité


donnent la même valeur quelque soit la séquence de
traitement obtenue.
➢ Si nous voulons minimiser F nous utiliserons la règle
du temps opératoire minimum, les tâches sont
ordonnancées selon l’ordre suivant :p[1]  p[2]  p[3] 
...  p[n]
où p[j] est le temps de traitement de la tâche
exécutée en jième position.
➢ La règle SPT revient également à minimiser le temps
moyen d’attente, le retard moyen , le temps moyen
d’achèvement, le nombre de tâches non achevées
Nu et le nombre de tâches en attente,
15
➢ Pour le critère Tmax, il suffit d’ordonnancer les tâches
dans l’ordre où elles sont exigées, c.-à-d. la première
tâche programmée sera celle qui a le délai de
livraison le plus proche, la seconde ayant le délai de
livraison suivant, etc... c’est la règle de la date de
livraison minimale (Earliest Due Date : E.D.D). Elle
s’énonce ainsi :
➢ d[1]  d[2]  d[3]  ...  d[n]
➢ Avec d[j] est le délai de livraison de la tâche exécutée
en jième position.

16
EXEMPLE

Cinq commandes, reçues dans l’ordre A,B,C,D et E,


sont émises en même temps dans un atelier.
Le temps de traitement en jours et la date de livraison
promise (à partir d’aujourd’ huit) de chaque commande
sont donnés le tableau suivant.

Comm Temps Date de


ande d’opération livraison
A 6 8
B 2 6
C 8 18
D 3 15
E 9 23
Il s'agit de déterminer l'ordre dans lequel on va effectuer
ces différentes tâches.
Il est clair que, quel que soit l'ordre choisi, le temps
opératoire total est le même =28.
Il faut donc définir un autre critère entre tous les
ordonnancements possibles. Selon l'objectif suivi, on
utilise une des règles de priorités.
On va comparer les règles premier arrivé premier servi,
temps d’opération le plus court, date de livraison la plus
rapprochée, temps d’opération le plus long et marge
dynamique sur la base du temps moyen de traitement,
du nombre moyen de commandes dans le système, du
retard moyen et du temps d’attente moyen.
18
Règles de priorité : PEPS
➢ Les biens et les services sont exécutés selon l’ordre
d’arrivée au centre de travail.

➢ Il s’agit de l’une des pires règles, quel que soit le


critère de performance (car les clients ou les
commandes qui prennent beaucoup de temps
retardent les autres).

➢ C’est une règle simple et d’apparence équitable.

➢ C’est souvent la seule règle applicable dans les


services.
a) Premier arrivé, premier servi
Séquence Temps Temps Date de Temps Retard Avance
D’opération Cumulé Livraison D’attente Tj Ej
Pj Fj Dj Wj

0
A 6 6 8 0 0 2
B 2 8 6 6 2 0
C 8 16 18 8 0 2
D 3 19 15 16 4 0
E 9 28 23 19 5 0
Somme 28 77 49 11 4

Cmax=28 T max = 5 Emax = 2


Temps moyen de traitement = 77 / 5 = 15.4 Jrs/commande
Nombre moyen de cmdes dans le système = 77 /28 = 2.75
Retard moyen = 11/5 = 2.2 jours par commande,
Temps d’attente moyen = 49/5 = 9.8 jours par commande.
20
b) Temps d’opération le plus court
Séquence Temps Temps Date de Temps Retard Avance
D’opération Cumulé Livraison D’attente Tj Ej
Pj Fj Dj Wj

0
B 2 2 6 0 0 4
D 3 5 15 2 0 10
A 6 11 8 5 3 0
C 8 19 18 11 1 0
E 9 28 23 19 5 0
Somme 28 65 37 9 14

Cmax=28 Retard max Tmax= 5 Avance maximale Emax= 10


Temps moyen de traitement = 65 / 5 = 13 jours par commande
Nombre moyen de commandes dans le système = 65 /28 = 2.32
Retard moyen = 9/5 = 1.8 jours par commande,
avance moyenne 14/5 = 2,8 jours/ commande
Temps d’attente moyen = 37/5 = 7.4 jours par commande. 21
Règles de priorité : Le TOC
On donne priorité au travail dont le temps d’exécution
est le plus court.

Avantages Inconvénients
●Simple à appliquer. ● Néglige les commandes les plus
●Ne requiert la connaissance que du longues => si non combinée à une
temps de traitement estimé de autre règle, certaines commandes ne
chacune des commandes. seront jamais satisfaites.
● Présente le plus faible retard ● Ne s’applique pas nécessairement
moyen des commandes => bon dans les services: ex. client dans une
niveau de service. banque.
● Présente le plus faible nombre ● Ne tient pas compte de la date de
moyen de commandes en attente => livraison promise.
meilleur contrôle.
d) Temps d’opération le plus long
Séquence Temps Temps Date de Temps Retard Avance
D’opération Cumulé Livraison D’attente Tj Ej
Pj Fj Dj Wj

0
E 9 9 23 0 0 14
C 8 17 18 9 0 1
A 6 23 8 17 15 0
D 3 26 15 23 11 0
B 2 28 6 26 22 0
Somme 28 103 75 48 15

Cmax=28 Retard max Tmax= 22 Avance maximale Emax= 14


Temps moyen de traitement = 103 / 5 = 20,6 jours par commande
Nombre moyen de commandes dans le système = 103 /28 = 3,68
Retard moyen = 48/5 = 9,6 jours par commande,
avance moyenne 15/5 = 3 jours/ commande
Temps d’attente moyen = 75/5 = 15 jours par commande. 23
Règles de priorité : DP (Date Promise)
EDD Eurliest Dieu date
➢ On donne la priorité au travail dont la date promise
au client est la plus proche.

➢ Cette règle peut être utilisée pour un poste de


travail donné où l’ordre dépend de la date où la
commande est requise.

➢ Cette règle réduit les stocks de produits en cours,


car moins d’articles sont commencés et donc moins
susceptibles d’être en retard.

➢ On peut associer cette règle au juste-à-temps.


d) Date de livraison la plus rapprochée
Séquence Temps Temps Date de Temps Retard Avance
D’opération Cumulé Livraison D’attente Tj Ej
Pj Fj Dj Wj

0
B 2 2 6 0 0 4
A 6 8 8 2 0 0
D 3 11 15 8 0 4
C 8 19 18 11 1 0
E 9 28 23 19 5 0
Somme 28 68 40 6 8

Cmax=28 Retard max Tmax= 5 Avance maximale Emax= 4


Temps moyen de traitement = 68 / 5 = 13,6 jours par commande
Nombre moyen de commandes dans le système = 68 /28 = 2,42
Retard moyen = 6/5 = 1,2 jours par commande,
avance moyenne 8/5 = 1,6 jours/ commande
Temps d’attente moyen = 40/5 = 8jours par commande. 25
e) La marge dynamique

On commence à calculer la marge dynamique pour


toutes les tâches Md=dj-pj
Commande A B C D E
Temps jusqu’à la livraison dj 8 6 18 15 23
Temps d’opération restant pj 6 2 8 3 9
Marge dynamique 2 4 10 12 14

On choisi la commande ayant la plus petite marge


dynamique en première position (ici A) et on se place
à la date 6 (après exécution de A) et on recalcule les
marges :

26
Commande B C D E
Temps jusqu’à la livraison d’j=dj-6 0 12 9 17
Temps d’opération restant 2 8 3 9
Marge dynamique -2 4 6 8

On choisi la tache B dans la 2ème position.


On se place à la date 8 =(pA+pB) et on refait les calculs

Commande C D E
Temps jusqu’à la livraison d’j=dj-8 10 7 15
Temps d’opération restant 8 3 9
Marge dynamique 2 4 6

On choisit la tâche C en 3ème position. On se place à la


date 16= (pA+pB+pC) et on refait les calculs,
27
Commandes D E
Temps jusqu’à la livraison d’j=dj-16 -1 6
Temps d’opération restant 3 9
Marge dynamique -4 -3

On choisi la tâche D dans la 4ème position et donc E


dans la 5ème position d’où la séquence ABCDE qui est
résumée dans le tableau suivant :

28
e) La marge dynamique
Séquence Temps Temps Date de Temps Retard Avance
D’opération Cumulé Livraison D’attente Tj Ej
Pj Fj Dj Wj

0
A 6 6 8 0 0 2
B 2 8 6 6 2 0
C 8 16 18 8 0 2
D 3 19 15 16 4 0
E 9 28 23 19 5 0
Somme 28 77 49 11 4

Cmax=28 T max = 5 Emax = 2


Temps moyen de traitement = 77 / 5 = 15.4 Jrs/commande
Nombre moyen de cmdes dans le système = 77 /28 = 2.75
Retard moyen = 11/5 = 2.2 jours par commande,
Temps d’attente moyen = 49/5 = 9.8 jours par commande.
29
Comparaison des différentes règles de
priorités

Règles Cmax Temps moyen de Nombre de Temps Retard Tmax Avance Emax
traitement comd. dans le D’attente moyen moyenne
système moyen
FCFS 28 15.4 2.75 9.8 2.2 5 0.8 2
TOC 28 13 2.32 7.4 1.8 5 2.8 10
TOL 28 20.6 3.68 15 9.6 22 3 14
EDD 28 13.6 2.48 8 1.2 5 1.6 4
MD 28 15.4 2.75 9.8 1.8 5 0.8 2
min 28 13 2.32 8 8 5 0.8 2
Prise en compte des priorités
(poids des commandes)
Dans la vie pratique les commandes n’ont pas la même importance.
Dans ce cas, toutes les règles de priorités peuvent être appliquées et
on choisi la séquence selon les critères pondérés en tenant compte des
poids des commandes.
Soient les priorités données aux différentes commandes comme
indiqué dans le tableau suivant :
poids
A 6 8 1
B 2 6 2
C 8 18 1
D 3 15 3
E 9 23 3

Le travail D et E ont les plus grand poids; ils sont


trois fois plus importants que les commandes A et
C.
La séquence TOC ou SPT:

B 2 6 2 2 4 0 4 0 8
D 3 15 3 5 15 0 10 0 30
A 6 8 1 11 11 3 0 3 0
C 8 18 1 19 19 1 0 3 0
E 9 23 3 28 84 5 0 15 0
28 133 21 38
Prise en compte des dates de disponibilité ou
d’arrivées rj
Fj = Cj - rj : le temps que la tâche j reste dans le
système, appelé temps de séjour ou de circulation ou
encore “flow time” en anglais.

Si les travaux n’arrivent pas tous à la date 0 on doit tenir


compte des dates d’arrivé dans l’ordonnancement.

34
Commande Temps Dates de Dates de
d’opération disponibilité livraison
A 6 12 8
B 2 0 6
C 8 13 18
D 3 6 15
E 9 15 23

35
Règle du premier arrivé premier servi
Séquence pj Dates Temps Temps de Dates de Temps Retard Avance
d’arrivé Cumulé Cj séjour Livraison D’atte
es rj Fj= Cj - rj nte
B 2 0 2 2 6 0 0 4
D 3 6 9 3 15 0 0 6
A 6 12 18 6 8 0 10 0
C 8 13 26 13 18 5 8 0
E 9 15 35 20 23 11 12 0
Somme 28 90 44 16 30 10

36
D A C E
B D A C E

23 4 5 67 8 9 12 18 26 35

37
La règle date de livraison la plus rapprochée

Séqu Temps Dates Temps Temps de Date de Temps Retard Avance


ence D’opéra d’arrivées Cumulé séjour Livraison D’attente Tj Ej
tion pj rj Cj Fj= Cj - rj dj

B 2 0 2 2 6 0 0 4
A 6 12 18 6 8 0 10 0
D 3 6 21 15 15 18- 6 0
6=12
C 8 13 29 16 18 21- 11 0
13=8
E 9 15 38 23 23 29- 15 0
15=14
28 108 62 42

38
B D C E
A
B A D C E

0 2 12 18 21 29 38

39
Minimisation du nombre de taches en retard,
l’Algorithme de Moore et Hodgson.

➢ Théorème: La séquence EDD fournit un ordonnancement


qui minimise le retard maximum.
➢ Il est parfois judicieux de pénaliser également les tâches en
retard, quelque soit la valeur du retard. Si nous adoptons
cette façon de penser, notre tâche de planification est
simplement de minimiser le nombre de tâches en retard. On
peut montrer que la séquence EDD ne minimise
généralement pas le nombre de tâches en retard. Nous
considérons un algorithme pour résoudre ce problème dû à
40
Moore, sous une forme suggérée par Hodgson.
Algorithme de Moore
➢ Étape 0. nT= 0.
➢ Étape 1. Classifier les travaux selon la règle EDD pour trouver la
séquence courante (Ji(1) , Ji(2), ...., Ji(n)) telle que di (1) ≤ di(2) ≤…≤ di(n).
➢ Étape 2. Trouver la première tâche en retard, dite Ji(k), dans la
séquence courante. Si aucune tâche n'est trouvée, aller à l'étape 4.
➢ Étape 3. Trouver la tâche dans la séquence courante (Ji(1), Ji(2), ....,
Ji(k)) avec le plus grand temps de traitement marquer la par l’indice j*
et rejeter cette tâche à la fin. Revenir à l'étape 2 avec une séquence
d'une tâche plus courte qu'avant. nT= nT+ 1
➢ Étape 4. Former un ordonnancement optimal en prenant la
séquence courante et en y ajoutant les travaux rejetés qui peuvent
être séquencés dans n'importe quel ordre.
➢ Remarque: les travaux rejetés seront tous en retard et ils seront les
41
seuls tâches en retard.
Moore – Hodgson Algorithm – Exemple

■Considérons les tâches suivantes et trouvez une


sequence qui minimise le nomùbre de taches en retard.

Job, i 1 2 3 4 5 6

Pi 10 3 4 8 10 6

di 15 6 9 23 20 30

42
Moore – Hodgson Algorithm
Étape 0. nT= 0.
Étape 1. Séquence EDD :
Ji Pi di Ci Li Ti
2 3 6 3 -3 0
3 4 9 7 -2 0
1 10 15 17 2 2
5 10 20 27 7 7
4 8 23 35 12 12
6 6 30 41 11 11

43
Étape 1:

Ji Pi di Ci Li Ti
2 3 6 3 -3 0
3 4 9 7 -2 0
1 10 15 17 2 2 Retard
5 apparait
4
6

44
Moore – Hodgson Algorithm Étape 2:
Trouver la première tâche en retard, dite Ji(k) C’est
la tâche 1 dans la position 3

Ji Pi di Ci Li Ti
2 3 6 3 -3 0
3 4 9 7 -2 0
1 10 15 17 2 2
5
4
6

45
Moore – Hodgson Algorithm Étape 3:

Enlever la taches 5
De la séquence

46
Étape 1. Ranger les travaux restants dans l’ordre EDD

Ji Pi di Ci Li Ti
2 3 6 3 -3 0
3 4 9 7 -2 0
4 8 23 15 -8 0 Pas de retard
6 6 30 21 -11 0 qui apparait

47
Étape 4. Former un ordonnancement optimal en prenant
la séquence courante et en y ajoutant les travaux rejetés
qui peuvent être séquencés dans n'importe quel ordre

Ji Pi Di Ci Li Ti
2 3 6 3 -3 0
3 4 9 7 -2 0
4 8 23 15 -8 0
6 6 30 21 -11 0
1 10 15 31 16 16
5 10 20 41 21 21 48
minimisation du flow time moyen sous
contrainte Tmax = 0
➢ Considérons un problème d'ordonnancement à une seule
machine où deux mesures de performance sont
considérées simultanément, à savoir Tmax et le flow time
moyen. Supposons que nous voulons trouver un
ordonnancement qui minimise le flow time moyen soumis
à la contrainte que Tmax = 0. Un tel ordonnancement
existe dans lequel Jl est le dernier, si et seulement si
➢ (i) dl≥ (p1 + p2 +…. + pn)
➢ (ii) pl≥pr pour toutes les tâches Jr tels que dr≥ (p1 + p2 +….
+ p n)

4
9
Algorithme de Smith
➢ Étape 1 Soit U = {J1, J2,…., Jn} Cu = (p1 +p2+ ….+pn)
t=|U|=n
➢ Etape 2 déterminer une tâche Ji(l) dans U qui satisfait à la
condition (i) di(l) ≥ Cu et la condition (ii) Ji(l) a le plus grand
temps de traitement parmi les tâches en U pour lesquels
leurs dates d'échéance ≥ Cu. Si plus d'une tâche remplit les
deux conditions, choisissez-en une arbitrairement. S'il n'y a
pas de tâche qui satisfait la condition (i), alors il n'y a pas un
ordonnancement avec Tmax = 0
Ji(l) est planifié en tième position dans σ *
➢ Étape 3 Cu = Cu- pi (l), éliminer Ji(l) de U, t = t-1
➢ Étape 4 Si t ≥1, passez à l'étape 2 sinon nous avons obtenu
un ordonnancement optimal σ *
Exemple
➢ Considérez le problème d’ordonnancement de 5
tâches dans une machine où l'objectif est de
minimiser le flow time moyen sous réserve de la
contrainte Tmax = 0 (toujours ri=0)

Tâche Temps de Date dûe


traitement
J1 7 12
J2 5 17
J3 10 30
J4 15 45
J5 6 48
43
Solution de l’exemple

Etape 1 U={ J1 , J2 , J3 , J4 , J5 }
CU= 43, t=5
Etape 2 J4 et J5 satisfont la condition (I) J4 a le plus
grand temps de traitement donc J4 est planifiée à
5ème position,
Etape 3 t=5-1=4, CU= 43-15 = 28
U={ J1 , J2 , J3 , J5 }
Etape 4 t ≥1
Etape 2 J3 et J5 satisfont la condition (I) J3 a le plus
grand temps de traitement donc J3 est planifiée à
4ème position
Etape 3 U={ J1 , J2 J5 }
CU= 28-10= 18 t=4-1=3
Etape 4 t ≥1
Aller a l'étape 2
Etape 2 J5 satisfait la condition (I) donc J5 est planifiée
à la 3èmè position
Etape 3 t=3-1=2, CU= 18-6 = 12
U={ J1 , J2 }
Etape 4 t ≥1
Aller a l'étape 2
Etape 2 J1 et J2 satisfont la condition (I) J1 a le plus
grand temps de traitement donc J1 est planifiée en 2ème
position alors la tâche J est planifiée à la 1ère position
Un ordonnancement optimale est J2 J1 J5 J3 J4
flow time moyen 106/5=21.2 et Tmax= 0

Job Temps de Flow time


traitement Fj=Cj
J2 5 5
J1 7 12
J5 6 18
J3 10 28
J4 15 43
Somme 106
5
4
Minimiser le flow time moyen sous la contrainte
Tmax≤δ
➢ Nous nous intéressons dans cette section à trouver un
programme optimal qui minimise le flow time moyen soumis
à la contrainte que Tmax≤δ où δ n'est pas nécessairement 0,
et il est fixe.
➢ Résoudre ce problème équivaut à résoudre un problème
similaire de minimisation du flow time moyen soumis à Tmax
= 0, dans lequel les dates d'échéance sont augmentées de
δ.
➢ Un ordonnancement pour le problème d'origine est optimal
si et seulement s'il est également optimal pour le problème
modifié (qui peut être résolu à l'aide de l'algorithme de
Smith)
Comment trouver les solutions efficaces lorsque le flow
time moyen et le Tmax sont simultanément
considérés?

➢ En général, lorsque l'on considère plus d'une mesure


de performance, il n'y a pas d’ordonnancement
optimal, mais nous disons qu'un ordonnancement est
efficace. À l'étape 2 de l'algorithme de Smith, nous
avons fait un choix arbitraire lorsque deux tâches
remplissent les deux conditions, c'est-à-dire qu'ils ont
le même temps de traitement le plus grand et leurs
dates d'échéance ≥ Cu.
➢ Afin de minimiser Tmax, nous devons choisir la tâche
avec la plus grande date d'échéance. Lorsque plus
d'une tâche remplit les deux conditions et qu'ils ont
des dates d'échéance égales. Dans ce cas, nous
devons explorer tous les ordonnancements efficaces
possibles (c'est-à-dire considérer tous les choix)
Exemple
➢ Prenons un problème d’ordonnancement dans un
atelier contenant une seule machine composé de
quatre tâches. Nous voulons trouver tous les
solutions efficaces qui minimisent le flow time moyen
sous contrainte Tmax ≤ .

Tâche J1 J2 J3 J4
Temps de 4 3 6 2
traitement
Date dûe 2 6 3 4

5
7

Vous aimerez peut-être aussi