Académique Documents
Professionnel Documents
Culture Documents
Introduction
◼ La résolution du problème
d’ordonnancement à plusieurs machines
peut recourir aux méthodes de résolution
des problèmes d’ordonnancement à une
seule machine.
◼ En pratique, on rencontre souvent le
problème de la machine goulot
d’étranglement, abordé avec des techniques
propres aux problèmes à une machine
2
Problème à une machine
3
Minimisation de la durée totale : 1 C max
A B C D
pi 5 2 2 3
A B C D
0 12 temps
4
Minimisation de la durée totale :1 prec Cmax
i A B C D E F
pi 5 3 4 2 3 1
5
Minimisation de la durée totale :1 prec Cmax
◼ Les ordonnancements
possibles :
◼ ABCDFE
A ◼ ACBDFE
◼ BCADFE
B D F E ◼ BACDFE
◼ CABDFE
C ◼ CBADFE
◼ Tous ces
ordonnancements sont
de durée pi
6
Minimisation de la durée totale : 1 prec Cmax
7
Minimisation de la durée totale : 1 ri Cmax
A B C D
pi 5 2 2 3
ri 0 9 2 8
• Séquence ABCD
A B C D
0 5 9 11 13 16 temps
• Séquence ACDB
A C D B
0 5 7 8 11 13 temps
8
Minimisation de la durée totale : 1 ri Cmax
◼ Théorème 1 :
FIFO (ri croissant) optimise 1 ri Cmax
Complexité (O(nlogn))
9
Minimisation de la durée totale : 1 ri Cmax
◼ Théorème 1 :
FIFO (ri croissant) optimise 1 ri Cmax
Complexité (O(nlogn))
(démonstration par l’absurde)
Supposons qu’il existe une séquence S dont les tâches
ne sont pas rangées dans l’ordre croissant de ri,
Montrons que S n’optimise pas Cmax
10
Minimisation des encours : 1 F i
Fi
t=0 ri ti Ci
11
Minimisation des encours : 1 C i
A B C D
pi 5 2 2 3
A B C D
0 5 7 9 12 temps
B C D A
0 2 4 7 12 temps
Minimisation des encours : 1 C i
◼ Théorème
SPT optimise 1 C i
13
Minimisation des encours : 1 wCi i
14
Minimisation des encours : 1 w C i i
15
DEMONSTRATION
◼ Proof. By contradiction.
◼ Suppose a schedule S, that is not WSPT, is optimal.
◼ In this schedule there must be at least two adjacent jobs, say job j
followed by job k, such that wj /pj < wk /pk .
◼ Assume job j starts its processing at time t.
◼ Perform a so-called Adjacent Pairwise Interchange on jobs j and k. Call
the new schedule S’.
16
◼ under the original schedule S: job j starts its
processing at time t and is followed by job k,
◼ under the new schedule S’: job k starts its processing
at time t and is followed by job j.
◼ All other jobs remain in their original position: The
total weighted completion time of the jobs processed
before jobs j and k is not affected by the
interchange. Neither is the total weighted completion
time of the jobs processed after jobs j and k.
17
DEMONSTRATION
◼ Thus the difference in the values of the objectives under
schedules S and S’ is due only to jobs j and k.
◼ Under S the total weighted completion time of jobs j and k is (t
+ pj )wj + (t + pj + pk)wk, while under S’ it is (t + pk)wk + (t
+ pk + pj )wj .
◼ It is easily verified that if wj/pj < wk/pk the sum of the two
weighted completion times under S’ is strictly less than under S.
◼ This contradicts the optimality of S and completes the proof of
the theorem.
◼ The computation time needed to order the jobs according to
WSPT is the time required to sort the jobs according to the ratio
of the two parameters.
◼ A simple sort can be done in O(n log(n)) time,
18
Minimisation des encours : 1 r C i i
A B C D
pi 5 2 2 3
ri 0 9 2 8
C B D A
0 2 4 9 11 14 19 temps
A C D B
0 5 7 8 11 13 temps
Minimisation des encours : 1 r C i i
A B C D E
pi 3 1 1 2 2
ri 0 1 2 3 4
A B C D E
0 3 4 5 7 9 temps
B C D E A
0 1 2 3 5 7 10 temps
Minimisation des encours : 1 r C i i
◼ 1 r C est NP-difficile
i i
22
Minimisation des encours 1 r , prmp C i i
A B C D E
pi 3 1 1 2 2
ri 0 1 2 3 4
A1 B C A2 D E
0 1 2 3 5 7 9 temps
Minimisation des retards : 1 L max
◼ Théorème 3 :
◼ L’ordonnancement optimal est obtenu en
rangeant les tâches par di croissant. (règle
dite EDD : Earliest Due Date)
◼ Lemme :
◼ EDD minimise le plus grand retard vrai
« Tmax »
◼ Attention :
◼ Une séquence qui minimise Tmax ne minimise
pas nécessairement Lmax
24
Minimisation des retards : 1 L max
Tâche i A B C
pi 2 5 3
di 7 8 11
Séquence EDD
Lmax =-1, Tmax =0 :
séquence minimise Lmax
25
Minimisation du retard maximum : 1 r T i max
26
Minimisation du retard maximum :
0 3-*-*-* 2-*-*-* B
Tâche i A B C D
1 3-*-9-* 1-*-5-* B
ri 3 0 1 7
2 -*-9-* 0-*-5-* C
di 5 3 9 11
3 -5-9-* 0-3-4-* A
pi 3 2 5 1
6 - -9-* 0-0-4-* C
Séquence selon EDD : B-A-C-D 7 - -9-11 0-0-3-1 C
10 - - -11 0-0-0-1 D
11 -- - 0-0-0-0
B1 B2 C1 A1 C2 C3 D
2 3 6 7 10 temps
1 11
28
Somme des retards : 1 di T
i
A B
pi 6 10
di 9 4
B A
0 10 16 temps
A B
0 6 16 temps
Somme des retards : 1 T i
• Le problème 1 T i
est NP-difficile au sens fort
i A B C
pi 1 2 4
di 5 4 4
B A C
0 2 3 7 temps
Nombre des tâches en retard : 1 U i
d’Hodson et Moore :
◼ Ranger les travaux selon la règle EDD = A ; R= ;
déterminer les Ci
◼ Tant qu’il existe des travaux en retard dans A faire :
i A B C D E
pi 4 8 2 5 3
di 6 14 19 8 11
A E C B D
0 4 7 9 17 22
Synthèse
Problème Méthode de Résolution optimale
1| | Cmax n! (Cmax=pi)
1|prec|Cmax Toute séquence respectant les contraintes de
précédence
1|ri|Cmax FIFO (ri )
1| |Ci SPT (Shortest Porcessing Time : pi )
1| |wiCi WSPT (Weighted Shortest Porcessing Time : pi/wi )
1|ri, prmp|Ci SRPT (Shortest Remaining Porcessing Time)
1|di|Lmax EDD (Earliest Due Date : di )
1|ri,di, prmp|Tmax Une variante de EDD : à tout instant, affecter à la
machine, la pièce disponible de di minimale
1|di|Ui Algorithme d’Hodson et Moore