Académique Documents
Professionnel Documents
Culture Documents
chapIII Plusmachines
chapIII Plusmachines
Problèmes d’ordonnancement
à plusieurs machines
Machines parallèles
• Chaque tâche requiert l’utilisation d’une ressource pour son
exécution
• On dispose de m ressources pour effectuer les n tâches
• Exemples :
✓ Livraisons directes depuis un entrepôt : une flotte de
camions, avec quels camions et dans quel ordre effectuer
les livraisons?
✓ Missions à répartir entre plusieurs équipes
• Les ressources peuvent être identiques (même temps de
traitement sur toutes les machines) ou hétérogènes (les
temps de traitement diffèrent d’une machine à une autre)
25/04/2023 S.Hammami 2
Machines parallèles
◼ Généralisation du problème à une
machine.
◼ Cas particulier du Flow Shop flexible.
◼ Résolution en deux étapes :
◼ déterminer quels travaux affecter à
quelles machines,
◼ déterminer la séquence de travaux sur
chaque machine.
25/04/2023 S.Hammami 3
Machines parallèles : objectifs
◼ Makespan :
◼ Un grand intérêt : Permet d’équilibrer les
charges des machines
◼ La première étape « affectation des tâches
aux machines » est importante
◼ Durée de séjour moyenne
25/04/2023 S.Hammami 4
Pm/ /Cmax
i A B C D E F
pi 4 2 6 3 5 2
• M=2
• Solution 1 :
• M1: B-D-F
• M2: A-C-E
• Solution 2 :
• M1: C-D-F
• M2: A-B-E
25/04/2023 S.Hammami 5
Pm||Cmax (sans préemption)
◼ Problème NP-difficile
◼ Heuristique basée sur la règle LPT
(Longest Processing Time) :
◼ à t = 0, affecter les m travaux les plus
longs aux m machines
◼ quand une machine est libre, affecter le
travail le plus long, parmi les travaux
restants, à cette machine
◼ Performance Cmax ( LPT ) 4 1
−
Cmax (OPT ) 3 3m
25/04/2023 S.Hammami 6
Pm||Cmax (sans préemption)
M2 F D
M1 A
0 10 temps
• garantie de performance 4/3 – 1/9= 1,22
25/04/2023 S.Hammami 7
Exemple le plus pire de P4||Cmax
• Exemple : 9 pièces à usiner et l’atelier dispose de 4 machines outils
identiques
A B C D E F G H I
pi 7 7 6 6 5 5 4 4 4
LPT
M4 D F I
M3 C E
M2 B G
M1 A H
0 7 11 15 temps
• garantie de performance 4/3 – 1/12= 1,25
25/04/2023 S.Hammami 8
Exemple le plus pire de P4||Cmax
• Exemple : 9 pièces à usiner et l’atelier dispose de 4 machines outils
identiques
A B C D E F G H I
pi 7 7 6 6 5 5 4 4 4
Solution optimale
M4 G H I
M3 C D
M2 B F
M1 A E
0 7 12 temps
• garantie de performance 4/3 – 1/12= 1,25
• Cmax(LPT) = 1,25*Cmax(OPT)
25/04/2023 S.Hammami 9
Pm|prmp|Cmax
◼ Solution optimale obtenue avec l’algorithme de Mac Naughton (1959)
1 n
Cmax max pi , max( pi )
m i =1
Borne inférieure pour Pm| |Cmax
25/04/2023 S.Hammami 10
Pm|prmp|Cmax
• Le problème Pm prmp Cmax est polynomial
• Algorithme de Mc Naughton
Soit M = max max i pi , i pi / m
1. Placer les tâches dans n’importe quel ordre sans préemption sur la machine
M1.
2. Découper la séquence au niveau de M* et placer les tâches en aval de M* sur
la machine suivante. Terminer l’ordonnancement des tâches non affectées sur
cette machine.
3. Répéter l’étape 2 jusqu’à ce que toutes les tâches soient ordonnancées.
25/04/2023 S.Hammami 11
Pm|prmp|Cmax
• Algorithme de Mc Naughton : exemple 1 (4 machines)
i A B C D E F G H I
M = 12 pi 7 7 6 6 5 5 4 4 4
M4 G H I
M3 D2 E F
M2 B2 C D1
M1 A B1
0 12
i A B C
M =5
pi 1 2 5
M2 C2
M1 A B C1
5 temps
25/04/2023 S.Hammami 13
Pm|| Ci
◼ SPT est optimale pour 1| | Ci
◼ SPT généralisée est optimale pour
Pm| |Ci
◼ Trier les tâches selon la règle SPT
◼ Affecter la première tâche de la liste non
réalisée à la première machine disponible.
◼ Remarque : la règle SPT généralisée n’est
pas la seule qui optimise Pm| |Ci
25/04/2023
Pm|| Ci
• Exemple : 6 tâches et 3 machines
A B C D E F
pi 10 4 1 1 2 6
M3 E A
M2 D F
M1 C B
temps
0
C i = 1 + 5 + 1 + 7 + 2 + 12 = 28
25/04/2023 S.Hammami 15
Pm|| Ci
• Autre ordonnancement optimal
A B C D E F
pi 10 4 1 1 2 6
M3 E B
M2 D F
M1 C A
temps
0
C = 1 + 1 + 11 + 7 + 6 + 2 = 28
i
25/04/2023 S.Hammami 16
Pm| |wiCi
◼ WSPT est optimale pour 1| |wiCi
◼ Ce résultat ne peut pas être généralisé
pour Pm| |wiCi
◼ WSPT : heuristique de performance
élevée
w C (WSPT ) 1
i i
(1 + 2)
w C (OPT )
i
2
i
25/04/2023 S.Hammami 17
Flow shop
◼ Dans plusieurs enteprises : chaque
travail est composé d’une suite
d’opérations.
◼ Souvent les opérations de chaque
travail ont le même ordre de passage
sur les machines, autrement dit, les
travaux suivent le même chemin.
◼ Ainsi, les machines sont installées en
série : flow shop
25/04/2023 S.Hammami 18
Flow shop
◼ la capacité de stockage entre les machines :
◼ dans la plupart des cas, la capacité est supposée
illimitée : cas de produits de taille petite (circuits
électroniques)
◼ Quand les produits sont volumineux (télévision), la
capacité de stockage entre les machines est
limitée ce qui induit le phénomène de blocage.
25/04/2023 S.Hammami 19
Exemple : obj min Cmax
A B C D
Pi1 5 3 7 3
pi2 8 6 1 1
25/04/2023 S.Hammami 20
Flow shop
M1 M3
M2
25/04/2023 S.Hammami 21
Flow Shop : objectifs
◼ Makespan :
◼ Intérêt : minimisation du makespan induit
la maximisation du taux d’utilisation des
ressources
◼ La résolution : peu compliquée
◼ Temps moyen de séjour et retard
◼ Résolution compliquée
25/04/2023 S.Hammami 22
Fm| | Cmax
◼ Séquences de passage des tâches sur les
machines
◼ Peut différer d’une machine à une autre : les
machines ne sont pas obligées de suivre la règle
FCFS (First Come First Served)
◼ Peut améliorer le Cmax
◼ Proposition1 :
◼ ECDAB pour toutes les machines Cmax= 30
◼ Proposition 2 :
◼ ECDAB pour M1 et M2 Cmax= 27
◼ ECABD pour M3 et M4
25/04/2023 S.Hammami 24
Dominance
◼ Une dominance est une propriété D
vérifiée par au moins une solution optimale
solutions réalisables
propriété D
solutions optimales
Dominance
◼ L'analyse d'un problème particulier
permet d'obtenir des propriétés sur la
structure des solutions optimales,
propriétés à partir desquelles on peut :
◼ ou bien caractériser les solutions optimales
◼ ou bien réduire l'espace des solutions à
explorer (notion de sous-ensemble qui
contient au moins une solution optimale)
25/04/2023 S.Hammami 26
Ordonnancement de permutation
◼ Un ordonnancement est dit de permutation si la
séquence des jobs est la même sur toutes les
machines
◼ Réduction de l’espace des solutions : (n!)m → (n!)
◼ Pour F2//Cmax, il est dominant d’avoir le même
ordre de passage sur les 2 premières machines
Ordonnancement de permutation
◼ Les ordonnancements de permutation sont
dominants pour le problème F3//Cmax
◼ Les ordonnancements de permutation ne
sont plus dominants sur 4 machines
Flow shop de permutation
• Problème F 2 Cmax
• Exemple : dans un atelier, les produits passent successivement sur une
machine outil M1 et un poste de finition M2
A B C D E
pi1 2 2 1 3 5 M1
pi2 1 2 4 3 3 M2
M1 A B C D E
M2 A B C D E
temps
C max
25/04/2023 S.Hammami 29
F2| |Cmax : séquence optimale
◼ Algortihme de Johnson
◼ Former deux ensembles :
◼ SI : tous les travaux tels que p1j < p2j
◼ SII: tous les travaux tels que p1j > p2j
◼ Les travaux : p1j = p2j peuvent être dans SI ou SII
◼ Ordonnancer les tâches :
◼ SI selon l’ordre croissant de p1j (SPT)
◼ SII selon l’ordre décroissant de p2j (LPT)
◼ Cet ordonnancement est noté SPT(1)-LPT(2)
◼ Remarque : Plusieurs ordonnancements peuvent être
générés
25/04/2023 S.Hammami 30
F2| |Cmax: Exemple 2
A B C D E
pi1 2 2 1 3 5 M1
pi2 1 2 4 3 3 M2
M1
M2
Cmax =
25/04/2023 S.Hammami 31
F2| |Cmax : séquence optimale
◼ Théorème : chaque SPT(1)-LPT(2) est
optimal pour F2 || Cmax.
◼ Exemple
Tâche i 1 2 3 4 5
pi1 4 6 2 7 8
pi2 7 3 3 7 6
◼ Résolution
◼ SI={1, 3,4}, SII={2,5}
◼ SPT(1)-LPT(2) : 3-1-4-5-2
S.Hammami
F3| |Cmax
F3| |Cmax : NP-dur
• Cas particulier : min ( pi1 ) max ( pi 2 ) ou min ( pi 3 ) max ( pi 2 )
i i i i
i 1 2 3 4
i 1 2 3 4
pi1 4 6 8 3
pi1 6 7 11 5
pi2 2 1 3 2
pi2 7 2 9 6
pi3 5 1 6 4
Séquence optimale : 4 – 1 – 3 – 2
25/04/2023 S.Hammami 34
Fm| |Cmax
Problème NP- dur, m3
25/04/2023 S.Hammami 35
Exemple 1
◼ Soit le problème à 3 machines et 5 tâches,
dont les temps opératoires sont données par
le tableau ci-dessous :
Tâche i 1 2 3 4 5
Pi1 10 7 14 6 4
Pi2 5 6 3 9 7
pi3 3 11 7 2 13
36
Application
◼ K=1
Tâche i 1 2 3 4 5
P1i1 10 7 14 6 4
P1i2 3 11 7 2 13
37
Application
◼ K=2
Tâche i 1 2 3 4 5
P2i1 15 13 17 15 11
P2i2 8 17 10 11 20
38
Exemple 2 : Fm| |Cmax
i 1 2 3 4 5
pi1 4 6 5 3 2 i 1 2 3 4 5
k=1
pi2 2 1 3 2 4 p1i1 4 6 5 3 2
pi3 5 1 6 4 1 P1i2 3 2 4 1 3
pi4 3 2 4 1 3 séquence 1 : 5 – 3 – 1 – 2 – 4
Cmax =
k=3 k=2
i 1 2 3 4 5 i 1 2 3 4 5
p3i1 11 8 14 9 7 p2i1 6 7 8 5 6
P3i2 10 4 13 7 8 P2i2 8 3 10 5 4
séquence 3 : 5 – 3 – 1 – 4 – 2 séquence 2 : 4 – 1 – 3 – 5 – 2
Cmax = Cmax =
25/04/2023 S.Hammami 39
Flow shop de permutation proportionné
◼ Un flow de shop de permutation proportionné est un
cas particulier d’un flow shop de permutation
◼ les durées du travail j sur chaque machine, sont ègales à pj:
p1j=p2j=..=pmj
◼ Minimiser Cmax d’un flow shop de permutation
proportionné est noté: Fm/prmu,pij=pj/Cmax
◼ Exemple : flow shop sur deux machines
A B C D
pj 5 3 6 4
25/04/2023 S.Hammami 40
◼ Cmax du problème Fm/prmu,pij/Cmax
est indépendante de la séquence
◼ Cmax=σ𝑚 𝑖=1 𝑝𝑗 + (m − 1)max(𝑝𝑗)
25/04/2023 S.Hammami 41
Flow shop de permutation proportionné
◼ Exemple1 : flow shop sur deux machines
A B C D
pj 5 3 6 4
25/04/2023 S.Hammami 43
Exemple : flow shop sur 4 machines
A B C
pj 5 3 6
◼ Minimiser Cj
A B C
pj 5 3 6
dj 21 16 30
◼ Minimiser Uj
◼ Minimiser Tmax
25/04/2023 S.Hammami 44
Job shop
M2
M1 M3
Oi2
Ti2
Oi1 Oi3
Ti1 Ti3
25/04/2023 S.Hammami 45
Job shop
− Ateliers de production : problème Jm Cmax
25/04/2023 S.Hammami 46
J2//Cmax : Exemple
Tâche i Indice de la machine pour Durée d’exécution de
Opération 1 Opération 2 Opération 1 Opération 2
1 1 2 4 6
2 1 - 3 -
3 1 - 4 -
4 1 2 5 2
5 2 1 1 2
6 2 - 1 -
7 2 1 7 8
8 2 - 3 -
9 2 1 6 7
10 1 2 2 4
25/04/2023 47
J2//Cmax : Exemple
Tâche i Indice de la machine pour Durée d’exécution de
Opération 1 Opération 2 Opération 1 Opération 2
1 1 2 4 6
2 1 - 3 -
3 1 - 4 -
4 1 2 5 2
5 2 1 1 2
6 2 - 1 -
7 2 1 7 8
8 2 - 3 -
9 2 1 6 7
10 1 2 2 4
Un ordonnancement optimal est :
▪ Sur M1 : 10-1-4-2-3-5-9-7
25/04/2023 ▪ Sur M2 : 5-9-7-6-8-10-1-4 48
Job shop
− Ateliers de production : problème Jm Cmax
25/04/2023 S.Hammami 49
Job shop
◼ Exemple : 3 jobs et 3 machines
◼ A : M1-M2-M3
◼ B : M3-M2-M1
◼ C : M2-M3-M1
A B C
Durée sur M1 3 6 2
Durée sur M2 2 3 1
Durée sur M3 5 3 7
Poids 0.2 0.5 0.3
25/04/2023 S.Hammami 50
Job Shop Jm||Cmax
Instant Machines Taches Choix
libres disponibles
0 M1 A A
M2 C C
M3 B B
25/04/2023 S.Hammami 51
Problèmes à plusieurs machines: Open
shop
M2
M1 M3
Oi2
Ti2
Oi1 Oi3
Ti1 Ti3
25/04/2023 S.Hammami 52
Open shop (Om)
◼ Il existe m machines
◼ Il n'y a aucune restriction en ce qui concerne le
cheminement de chaque travail par
l'environnement de machine (pas de gamme
précise pour chaque travail)
25/04/2023 S.Hammami 53
Open shop
25/04/2023 S.Hammami 54
Open shop
− Ateliers de production : problème O2 Cmax
• Algorithme de Gonzalez et Sahni : exemple
A B C D
pi1 7 4 1 2 M1
pi2 2 5 3 4 M2
25/04/2023 S.Hammami 55