Vous êtes sur la page 1sur 85

Ordonnancement des SysMS

5OGI
ESPRIT 2018-19

Imen Guebebia 1
TYPES D’ATELIERS

2
Types d’organisation des flux

Machine Uniques

3
Types d’organisation des flux

Machines Parallèles

 Machines parallèles identiques (P) : les durées opératoires des tâches ne dépendent pas des machines, i.e.
la vitesse d’exécution d’une tâche est la même sur toutes les machines.
 Machines parallèles uniformes (Q) : chaque machine a une vitesse d’exécution propre et constante.
 Machines parallèles non-uniformes (R) : la vitesse d’exécution est différente pour chaque machine et pour
chaque tâche.
4
Types d’organisation des flux

Flow Shop

Ateliers à cheminement unique.

5
Types d’organisation des flux

Job Shop

6
Types d’organisation des flux

Job Shop

En sections homogènes :

En Ilots ou Cellules :

7
Ordonnancement des
Systèmes

8
Qu’est ce que l’ordonnancement ?

 L’ordonnancement vise l’affectation et l’utilisation optimale des ressources


humaines et matérielles nécessaires à la production des services ou biens requis
pour qu’ils puissent être disponibles en quantité désirée, au moment opportun et au
moindre coût.

 La personne responsable de l’ordonnancement suppose que les commandes qui lui


sont soumises sont valables et fait du mieux possible pour respecter les objectifs qui
lui sont attribués.

9
Qu’est ce que l’ordonnancement ?

 C’est la planification de l’exécution de la production à très court terme.

 C’est la détermination de l’ordre de traitement des commandes en indiquant pour


chaque tâche à exécuter
• où (par qui) et
• à quel moment elle sera effectuée.

"Ordonnancer, c’est programmer l’exécution d’une réalisation en attribuant des


ressources aux tâches et en fixant leurs dates d’exécution. [. . .]. Enfin, il faut
programmer les tâches de façon à optimiser un certain objectif. "

10
Principales étapes de l’ordonnancement

1. L’affectation
Distribution des tâches aux postes de travail

2. Le jalonnement (le séquencement)


Détermination de la séquence selon laquelle les tâches seront effectuées par
un poste de travail.

11
Objectifs généraux de l’ordonnancement

 Respecter les dates promises (Ventes).

 Respecter les calendriers de maintenance (Entretien).

 Maximiser l’utilisation des ressources (Comptabilité).

 Minimiser les retards (Ventes).

 Minimiser le temps dans le système (Production, Comptabilité).

 Minimiser le temps supplémentaire (Comptabilité).

 Minimiser les coûts (Direction, Comptabilité).

 Minimiser les inventaires (Production, Comptabilité).

12
Approches de l’Ordonnancement

Statique Dynamique

 se fait une fois par période  toutes les commandes sont


considérées au fur et à mesure.
 nouvelle commande =
changement de  nécessite techniques +
l’ordonnancement complexes (file d’attente et
simulation)

13
Les étapes de l’ordonnancement

Planification Contrôle

affectation des tâches


suivi
détermination d’un ordre
de passage relance

calendrier de fabrication

Exécution

lancement

14
Six étapes de l’ordonnancement

1. Affectation: répartition des commandes aux divers postes de travail : qui fait quoi?

2. Détermination d’un ordre de passage: détermination de la séquence de


traitement des commandes à chaque poste de travail: jalonnement

3. Calendrier de fabrication: date et heure de lancement des opérations à chaque


poste de travail

4. Lancement: démarrage des opérations selon le calendrier.

5. Suivi: supervision de l’exécution et vérification de l’adéquation avec la planification

6. Relance: ajustements en fonction des imprévus.

15
Le jalonnement

Pour faire le jalonnement (ou la séquence de traitement), nous avons besoins des :
 Règles de décision ou Règles de priorité
 Objectifs ou Critères de performance
 Algorithmes (affectation, Johnson, etc.)

16
Critères de performance les plus utilisés

1. Le coût total de mise en route


2. La quantité de produits en cours
3. Le taux d’utilisation des équipements
4. Le retard moyen des commandes
5. Le % de commandes en retard
6. Le temps total de production

Les critères de performance servent à établir dans quelle mesure le jalonnement est
efficace.

17
Les règles de priorité

C’est une façon d’établir un ordre de passage des commandes en attribuant une
valeur relative à chacune des commandes afin de les classer par ordre croissant ou
décroissant de valeur.

18
Règles de priorité les plus utilisées

PEPS (Premier entré Premier Servi), FIFO, First In First Out.

Par ordre d’arrivée.


 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).
 Règle simple et d’apparence équitable.

19
Règles de priorité les plus utilisées

Par ordre du temps d’opération.

 TOL (Temps d’opération le plus long), en anglais LPT :Longest Process Time.

 TOC (Temps d’opération le plus court), en anglais SPT :Shortest Process Time.
• La meilleure règle pour presque tous les critères.
• Ne requiert la connaissance que du temps de traitement estimé de chacune
des commandes.

20
Règles de priorité les plus utilisées

Avantages et Désavantages du TOC

Avantages
 Présente le plus faible retard moyen des commandes  bon niveau de service.
 Présente le plus faible nombre moyen de commandes en attente  meilleur contrôle.
 Le temps d’exécution total est le plus faible de toutes les règles.

Désavantages
 Néglige les commandes les plus longues  si non combinée à une autre règle,
certaines commandes ne seront jamais satisfaites.
 Ne s’applique pas nécessairement dans les services.
Exemple : client dans une banque.
 Ne tient pas compte de la date de livraison promise.

21
Règles de priorité les plus utilisées

Par ordre de livraison (1/2)

 DP (Date de livraison la plus rapprochée en premier)


en anglais EDD, Earliest Delivery Date.
• Peut être utilisée pour un poste de travail donné où l’ordre dépend de la date
où la commande est requise.
• Réduit les stocks de produits en cours car moins d’articles sont commencés et
donc moins susceptibles d’être en retard.
• Similaire au juste-à-temps.

22
Règles de priorité les plus utilisées

Par ordre de livraison (2/2)

 MLM (Marge Minimale Libre), SLACK


(Nombre de jours jusqu’à la date de livraison) – (Temps opératoire d’une commande)
SLACK = Date promise - Durée

 CR : Ratio critique, critic ratio.


Ordre de Livraison ayant le ratio critique le plus faible :

23
Calculer quelques Mesures de Performance

24
Règles de priorité sur 1 Machine : Exemple

Six documents doivent être rédigés sur une seule Machine

Documents Temps de rédaction (jours) Date promise


A 2 7
B 8 16
C 4 4
D 10 17
E 5 15
F 12 18

Dans quel ordre traitera-t-on les commandes si on applique les


règles de priorité suivantes : PEPS , TOC, DP, RC ?

25
Règles de priorité sur 1 Machine : Corrigé

FIFO Documents Début Durée Fin Date promise Retard


A 0 2 2 7 0
B 2 8 10 16 0
C 10 4 14 4 10
D 14 10 24 17 7
E 24 5 29 15 14
F 29 12 41 18 23
Total 41 120 54

TMS : Temps Moyen dans le Système = Total fin / Nombre de commandes = 120/6 =20 jours

NMS :Nombre Moyen dans le système = Total fin / Durée totale du travail = 120/41 = 2.93 documents

Retard Moyen = Retard accumulé / Nombre de commandes = 54/6 = 9 jours de retard / commande

Commandes en retard = 4 commandes 26


Règles de priorité sur 1 Machine : Corrigé

TOC Documents Début Durée Fin Date promise Retard


A 0 2 7
C 4 4
E 5 15
B 8 16
D 10 17
F 12 18
Total 41

TMS : Temps Moyen dans le Système = Total fin / Nombre de commandes = ?? jours

NMS :Nombre Moyen dans le système = Total fin / Durée totale du travail = ?? documents

Retard Moyen = Retard accumulé / Nombre de commandes = ?? jours de retard / commande

Commandes en retard = ?? commandes 27


Règles de priorité sur 1 Machine : Corrigé

TOC Documents Début Durée Fin Date promise Retard


A 0 2 2 7 0
C 2 4 6 4 2
E 6 5 11 15 0
B 11 8 19 16 3
D 19 10 29 17 12
F 29 12 41 18 23
Total 41 108 40

TMS :Temps Moyen Dans le système = Total fin / Nombre de commandes = 108/6 =18 jours

NMS :Nombre Moyen Dans le système = Total fin / Durée totale du travail = 108/41 = 2.63 doc

Retard Moyen = Retard accumulé / Nombre de commandes = 40/6 = 6.7 jours de retard / commande

Commandes en retard = 4 Commandes 28


Règles de priorité sur 1 Machine : Corrigé

DP Documents Début Durée Fin Date promise Retard


C 0 4 4
A 2 7
E 5 15
B 8 16
D 10 17
F 12 18
Total 41

TMS :Temps Moyen Dans le système = Total fin / Nombre de commandes = ?? jours

NMS :Nombre Moyen Dans le système = Total fin / Durée totale du travail = ?? doc

Retard Moyen = Retard accumulé / Nombre de commandes = ?? jours de retard / commande

Commandes en retard = ?? commandes 29


Règles de priorité sur 1 Machine : Corrigé

DP Documents Début Durée Fin Date promise Retard


C 0 4 4 4 0
A 4 2 6 7 0
E 6 5 11 15 0
B 11 8 19 16 3
D 19 10 29 17 12
F 29 12 41 18 23
Total 41 110 38

TMS :Temps Moyen Dans le système = Total fin / Nombre de commandes = 110/6 =18,33 jours

NMS :Nombre Moyen Dans le système = Total fin / Durée totale du travail = 110/41 = 2.68 doc

Retard Moyen = Retard accumulé / Nombre de commandes = 38/6 = 6,3 jours de retard / commande

Commandes en retard = 3 commandes 30


Règles de priorité sur 1 Machine : Corrigé

Documents Durée Livraison RC


La séquence initiale des documents sera C-F-D-B-E-A
A 2 7 3.5
B 8 16 2 Le document C sera rédigé en premier, et à la fin de journée 4
C 4 4 1 (date de fin de rédaction), le document est terminé
D 10 17 1,7
Le jour 4 devient la date actuelle de la 2ème itération, et une
E 5 15 3 nouvelle séquence de calcul des RC apparait
F 12 18 1.5

31
Règles de priorité sur 1 Machine : Corrigé

Documents Durée Livraison RC Après le document C, le prochain candidat est le


A 2 7 (7- 4) / 2 = 1.5 document F La séquence des documents sera C-F
B 8 16 (16-4) / 8 = 1.5 Le document F sera rédigé en second, et à la fin de
journée 16 (date de fin de rédaction de F), le document
D 10 17 (17-4) / 10 = 1.3 est terminé
E 5 15 (15-4) / 5 = 2,2
Le jour 16 devient la date actuelle de la 3eme itération,
F 12 18 (18-4) / 12 = 1.17 et une nouvelle séquence de calcul des RC apparait.

32
Règles de priorité sur 1 Machine : Corrigé

Documents Début Durée Fin Date promise Retard


RC
C 0 4 4 4 0
Après toutes les F 4 12 16 18 0
itérations
A 16 2 18 7 11
E 18 5 23 15 8
B 23 8 31 16 15
D 31 10 41 17 24
Total 41 133 58

TMS :Temps Moyen Dans le système = Total fin / Nombre de commandes = 133/6 =22,17 jours

NMS :Nombre Moyen Dans le système = Total fin / Durée totale du travail = 133/41 = 3,24 doc

Retard Moyen = Retard accumulé / Nombre de commandes = 58/6 = 9,7 jours de retard / commande

Commandes en retard = 4 commandes 33


Objectifs / Mesure de
performances

34
Mesure de performances

Objectifs = critères/indicateurs à optimiser

 Se basent sur des critères/indicateurs pour évaluer la qualité d’une solution

 Différents types de critères :


• Liés au temps (exemple : temps de réalisation)
• Liés au ressources (exemple : utilisation)
• Liés aux couts de transport, de stockage, etc.

 Objectif de résolution: minimiser / maximiser des critères

 Liens entre certains objectifs

 Problèmes mono-objectif / multi-objectif

35
Mesure de performances

 Critères liés au temps


• Minimiser le temps total de réalisation de l’ensemble des tâches (Makespan)
• Minimiser le retard maximal / dates limites
• Minimiser le retard moyen, la somme (pondérée) des retard, le nombre de tâches en retard, etc.

 Critères liés aux ressources


• Minimiser la quantité de ressources nécessaire
• Lisser la courbe d’utilisation des ressources, etc.

36
Illustration de quelques Mesures de Performances/Objectifs considérés

37
Illustration de quelques Mesures de Performances/Objectifs considérés

Minimisation du mécontentement des clients

38
Illustration de quelques Mesures de Performances/Objectifs considérés

Minimisation des encours de fabrication ou de Circulation

39
Algorithme d’affectation :
La méthode Hongroise

40
La méthode Hongroise

 Décider comment distribuer un certain nombre de travaux aux différents centres


responsables de leur réalisation de façon à minimiser le temps total alloué ou le coût
total dépensé.

 Il s'agit d'affecter :

- des familles de produits à des zones de stock

- des commerciaux à des secteurs

- des ouvriers sur des machines

- etc.

41
La méthode Hongroise

1. Dans chaque rangée : soustraire la plus petite valeur.

2. Dans chaque colonne de la matrice résultante : soustraire la plus petite valeur.

3. Recouvrir toutes les valeurs nulles par un minimum de "l" lignes horizontales ou verticales.
 Si "l" < "n"  Passez à l’étape suivante (avec "n" = nombre de produits)
 Si "l" = "n"  passez à la dernière étape de l’algorithme.
4. Parmi les valeurs non recouvertes, en soustraire la plus petite valeur. Puis, l’ajouter aux
valeurs se trouvant aux intersections des lignes "l" et retourner à l’étape (3).

5. Affecter à chaque produit la personne correspondant à une valeur pivot nulle, en commençant
avec les rangées et les colonnes ayant un seul "0"

42
La méthode Hongroise

Machine
Produit 1 2 3 4
A 10 5 6 10 → 5
B 6 2 4 6 → 2
C 7 6 5 6 → 5
D 9 5 4 10 → 4
Réduction ligne Réduction colonne Couvrir les zéros
5 0 1 5 3 0 1 4 3 0 1 4
4 0 2 4 2 0 2 3 2 0 2 3
2 1 0 1 0 1 0 0 0 1 0 0
5 1 0 6 3 1 0 5 3 1 0 5


2 1
2
# de lignes ≠ # de colonnes → modifier matrice
43
La méthode Hongroise

Modifier matrice Couvrir les zéros

1 0 1 2 1 0 1 2
# lignes = # colonnes
0 0 2 1 0 0 2 1
0 3 2 0 0 3 2 0 Solution optimale
1 1 0 3 1 1 0 3

Machine Machine

Produit 1 2 3 4 Produit 1 2 3 4
A 1 0 1 2 A 10 5 6 10
B 0 0 2 1 B 6 2 4 6
C 0 3 2 0 C 7 6 5 6
D 1 1 0 3 D 9 5 4 10

44
Présentation des Problèmes
d’ordonnancement

45
Les algorithmes d’ordonnancement

Pour normaliser la présentation des problèmes d’ordonnancement d’atelier, une notation (α / β / γ)


basée sur 3 champs a été établie :

α : correspond à la description physique du modèle


Il est généralement donné par la caractérisation de 2 paramètres qui précisent respectivement le
type d’atelier et le nombre de machines :
Exemples : F6 (Flowshop à 6 machines)
1 (Machine unique)
P2 (2 machines identiques parallèles)
Etc.

β : décrit les contraintes et les hypothèses sur le mode d’exécution des produits.
Il peut être vide, comme il peut contenir plusieurs βi.
Exemples : ri (les produits ont des dates de disponibilité différentes)
di (chaque produit a une date de fin souhaitée)

46
Les algorithmes d’ordonnancement

Notations générales :

Un produit (ou Job) est caractérisé par les données suivantes :

Pi : Durée totale de traitement (Processing time)


ri : Date de disponibilité (Relaese date, Ready time)
di : Date de livraison ou date échue (Due date, Deadline)
Ci : Date de fin d’exécution (Completion time)

47
Pi : Durée totale de traitement (Processing time)
Les algorithmes d’ordonnancement
ri : Date de disponibilité (Relaese date, Ready time)

Notations générales : di : Date de livraison ou date échue (Due date, Deadline)

Pour évaluer une solution, on peut se baser sur les indicateurs suivants : Ci : Date de fin d’exécution (Completion time)

48
Les algorithmes d’ordonnancement

Exemple : 1 / di / Lmax : Cas d’une machine + Minimisation du délai maximal

Théorème 2 : Un ordonnancement minimisant le délai maximal (Lmax) répond à la règle de priorité


EDD (Date promise).
49
Les algorithmes d’ordonnancement :
Algorithme de Johnson

50
La méthode de Johnson

 Applicable dans le cas de n produits passant sur 2 Machines selon la même séquence

 Conditions d’application :
02 postes de travail consécutifs
Chaque commande doit d’abord être traitée par le 1er poste de travail et ensuite par le 2nd
Machine A Machine B

 Critère de performance (objectif) : On cherche le temps total le plus court pour le traitement
complet de l’ensemble de commandes.

 Règle de priorité : Le temps d’opération le plus court.

51
Étapes de la méthode de Johnson (n produits passant sur 2 Machines selon la même séquence)

1. Choisir la commande ayant le temps opératoire le plus court.

2. Si le temps choisi appartient au premier poste de travail, placer la commande en tête de


séquence, sinon la placer à la fin.

3. Choisir parmi les commandes qui restent celle ayant le temps le plus court.

4. Si ce temps correspond au premier poste de travail, placer la commande à la suite de la


séquence. Sinon, placer la commande juste devant la commande placée à la fin de la séquence,
s’il y en a une.

5. Répéter les étapes (3)&(4) jusqu’à ce que toutes les commandes soient placées.

52
Johnson 2 Machines : Exemple

Une petite entreprise manufacturière produit des pièces qui nécessitent deux opérations : le
sablage et la perforation. Ces opérations doivent toujours être effectuées dans le même ordre,
soit le sablage avant la perforation.
La compagnie reçoit 5 commandes. Le tableau suivant fournit, pour chaque commande et
chaque opération, le temps d’opération en minutes.

Commandes Sablage (M1) Perforation (M2)


A 6 8
B 11 6
C 7 3
D 9 7
E 5 10

L’objectif est de déterminez la séquence de traitement des commandes de façon à minimiser le TTT :
1. Déterminez la séquence de traitement des commandes par la règle FIFO ?
2. Déterminez la séquence de traitement des commandes par la règle Johnson ?
3. Dites à quel moment seront terminées toutes les commandes par (1) et (2) [calendrier] 53
Johnson 2 Machines : Corrigé M1 M2
A 6 8
B 11 6
Règle FIFO
C 7 3
D 9 7
E 5 10

Algorithme de Johnson

54
La méthode de Johnson Généralisé (n produits sur 3 Machines)

Applicable dans le cas de n produits passant sur 3 Machines selon la même séquence

55
Johnson Généralisé : Exemple sur 3 machines

Produits M1 M2 M3
P1 2 6 2
P2 2 6 6
P3 8 2 6
P4 6 2 8
P5 6 6 2
P6 6 3 0

1. L’objectif est de déterminez la séquence de traitement des commandes de façon à minimiser le


temps total de traitement en appliquant l’algorithme de Johnson généralisé.
2. Dites à quel moment seront terminées toutes les commandes [calendrier].

56
Johnson Généralisé : Corrigé

57
La méthode de Johnson Généralisé (n produits sur m machines)
Applicable dans le cas de n produits passant sur m Machines selon la même séquence

Trouvez le séquencement optimal qui minimise le temps total de traitement en appliquant


l’algorithme de Johnson généralisé. Calculez le temps total de traitement.

Temps [heures] Conditions d’application de l’algorithme de Johnson :


Job 1 Job 2 Job 3 Job 4
Machine 1 6 5 4 7 1. min M1 ≥ max (M2, M3, …, Mm-1)
Machine 2 4 5 3 2
Machine 3 1 3 4 2 m = 5  Nous devons vérifier que 4 ≥ max (M2, M3, M4)
Machine 4 2 4 5 1
5
Machine 5 8 9 7 5 2. min Mm ≥ max (M2, M3, …, Mm-1)

Une seule condition vérifiée suffit. m = 5  Nous devons vérifier que 5 ≥ max (M2, M3, M4)
5
58
La méthode de Johnson Généralisé (n produits sur m machines)

Temps [heures]
Job 1 Job 2 Job 3 Job 4 Jobs x y
Machine 1 6 5 4 7 J1 13 15
Machine 2 4 5 3 2 J2 17 21
Machine 3 1 3 4 2 J3 16 19
Machine 4 2 4 5 1 J4 12 10
Machine 5 8 9 7 5 Séquencement selon Johnson à 2 machines :
J1 - J3 - J2 - J4

M1 M2 M3 M4 M5
IN OUT IN OUT IN OUT IN OUT IN OUT
J1 0 6 6 10 10 11 11 13 13 21
J3 6 10 10 13 13 17 17 22 22 29
J2 10 15 15 20 20 23 23 27 29 38
J4 15 22 22 24 24 26 26 27 38 43
59
La méthode de Johnson Généralisé (n produits sur m machines)

Jobs M1 M2 M3 M4 1. min M1 ≥ max (M2, M3, …, Mm-1)


A 13 8 7 14 8 ≥ max (M2, M3) = 8 Vrai
B 12 6 8 19
2. min Mm ≥ max (M2, M3, …, Mm-1)
C 9 7 5 15
14 ≥ max (M2, M3) = 8 Vrai
D 8 5 6 15

M1 M2 M3 M4 Jobs x y
IN OUT IN OUT IN OUT IN OUT A 28 29
D 0 8 8 13 13 19 19 34 B 26 33
C 8 17 17 24 24 29 34 49 C 21 27
B 17 29 29 35 35 43 49 68 D 19 26
A 29 42 42 50 50 57 68 82

Séquencement optimal : D - C - B - A
60
Les algorithmes d’ordonnancement :
Algorithme de Jackson

61
Algorithme de Jackson (N produits passant sur 2 Machines avec un ordre différent)

1. Partition de l’ensemble initial en 4 sous ensembles :


 {A} : toutes les tâches ne nécessitant que l’intervention de A
 {B} : toutes les tâches ne nécessitant que l’intervention de B
 {AB} : toutes les tâches passant par A puis B
 {BA} : toutes les tâches passant par B puis A

2. Ordonnancement optimal :
 algorithme de Johnson sur {AB} ⇒ séquence 1
 algorithme de Johnson sur {BA} ⇒ séquence 2
 ordre quelconque sur {A} ⇒ séquence 3
 ordre quelconque sur {B} ⇒ séquence 4

 Sur le centre A : séquences 1 puis 3 puis 2


 Sur le centre B : séquences 2 puis 4 puis 1

62
Algorithme de Jackson : Exemple avec 2 machines

M1 puis M2 M2 puis M1
Job 1 Job 2 Job 3 Job 4 Job 5
M1 3 4 1 3 4
M2 1 5 1 2

Sur [M1 puis M2] selon Johnson : séquence J2 J1


Sur [M2 puis M1] selon Johnson : séquence J4 J5

Sur M1 : J2 J1 J3 J4 J5
Sur M2 : J4 J5 J2 J1

63
Algorithme de Jackson : Exemple avec M machines

Animation Job Shop :

Ordonnancement de 8 commandes sur 4 "groupes fonctionnels" :


Tour
Fraiseuse
Rectifieuse
Four

64
Ordonnancement des travaux selon
des temps de mise en route
différents

65
Ordonnancement des travaux selon des temps de mise en route différents
N produits sur 1 machine

Quand les temps de mise en route diffèrent en fonction de l’ordre d’arrivée des produits, le gestionnaire peut
décider de trouver un jalonnement des produits qui minimise le temps de mise en route de la machine.

Exemple : Tâches nécessitant un temps de réglage (Peinture, etc.)

Temps de mise en route s’ils sont suivis de


Produit Temps mise en route
A B C
A 3 0 6 2
B 2 1 0 4
C 2 5 3 0

Une énumération des possibilités peut aider le gestionnaire à choisir les séquences des produits qui
minimise le temps de mise en route.

La séquence optimale dans ce cas serait : B-A-C = 2+1+2 = 5h


66
Les algorithmes d’ordonnancement :
Algorithme de Moore Hodgson

67
Algorithme de Moore Hodgson

Il existe plusieurs applications pour lesquelles la pénalité sur la tâche en retard est la même quelque soit la
durée de ce retard.

L’algorithme de Moore Hodgson permet de minimiser le nombre de tâches en retard dans le cas d’une seule
machine.

Les étapes de l’algorithme de Moore sont les suivantes :


1. Pour obtenir une première solution (initiale) de départ, commencer par ordonner les tâches selon l’ordre
croissant des dates promises (EDD). Notons cette liste E { }.
2. Repérer la première tâche en retard (qu’on supposera la tâche "i" de la liste E).
Si aucune tâche n’est en retard, passer à l’étape 4.
3. Considérer les tâches 1, 2, … , i.
Rejeter la tâche avec le plus long Pi (Durée totale de traitement (Processing time)).
Retourner à l’étape 2.
4. Former une séquence optimale en utilisant la séquence trouvée, en y ajoutant les tâches rejetées (dans un
ordre quelconque). 68
Algorithme de Moore Hodgson

Sept tâches sont à exécuter sur une rectifieuse selon les données suivantes :

Tâches 1 2 3 4 5 6 7
Date Promise 20 17 25 22 26 30 15
Pi 2 5 10 8 7 4 6

1ère étape : Solution de départ selon date promise


i
Tâches 7 2 1 4 3 5 6
Date Promise 15 17 20 22 25 26 30
Pi 6 5 2 8 10 7 4
Livraison 6 11 13 21 31 38 42

3 tâches en retard

2ème étape :

69
Algorithme de Moore Hodgson

Sept tâches sont à exécuter sur une rectifieuse selon les données suivantes :

Tâches 1 2 3 4 5 6 7
Date Promise 20 17 25 22 26 30 15
Pi 2 5 10 8 7 4 6
i
Tâches 7 2 1 4 3 5 6
Date Promise 15 17 20 22 25 26 30
Pi 6 5 2 8 10 7 4
Livraison 6 11 13 21 31 38 42
3 tâches en retard

3ème étape : On considère les tâches 7, 2, 1, 4, et 3. Puis on rejette celle ayant le plus long temps de traitement.
Soit la tâche 3.

La nouvelle séquence devient : 7, 2, 1, 4, 5, 6.

70
Algorithme de Moore Hodgson
i
Tâches 7 2 1 4 3 5 6
Date Promise 15 17 20 22 25 26 30
Pi 6 5 2 8 10 7 4
Livraison 6 11 13 21 31 28 32
2 tâches en retard
La première tâche en retard est 5.
La tâche ayant le plus long Pi est 4.
La nouvelle séquence devient 7, 2, 1, 5, 6.
Aucune tâche n’est en retard
Tâches 7 2 1 4 3 5 6
Date Promise 15 17 20 22 25 26 30
Pi 6 5 2 8 10 7 4
Livraison 6 11 13 21 31 20 24

La séquence optimale finale est donc la suivante :


7 - 2 - 1 - 5 - 6 - 4 -3
ou bien 7 - 2 - 1 - 5 - 6 - 3 - 4
71
Les algorithmes d’ordonnancement :
Algorithme de Roy

72
Algorithme de Roy

Algorithme permettant de déterminer le calendrier des activités pour une séquence de plusieurs produits à
fabriquer en plusieurs étapes.
 Déterminer le temps requis pour exécuter N produits (P1 à Pn) en M opérations (A à M).

Produits A B … J … M
P1 a1 b1 j1 m1
P2 a2 b2 j2 m2

Pi ai bi ji mi

Pn an bn jn mn

73
Algorithme de Roy
Les étapes de l’algorithme de Roy sont les suivantes :

1. Calculer la somme de la première colonne.


A1 = a1
A2 = A1 + a2
A3 = A2 + a3
Ai = Ai-1 + ai
2. Calculer la somme de la première rangée.
A1 = a1
B1 = A1 + b1
C1 = B1 + c1
Etc.
3. Etablir B2, B3, etc. et C2, C3, etc. de la façon suivante :
B2 = b2 + max (A2, B1)
B3 = b3 + max (A3, B2)
Bn = bn + max (An, Bn-1)

Mn = mn + max (Ln, Mn-1)

74
Algorithme de Roy
Opération A [heures] Opération B [heures]
Produits
Préparation et Nettoyage Peinture
P1 5 5
P2 4 3
P3 8 9
P4 2 7
P5 6 8
P6 12 15

1ère étape : Somme de la première colonne 2ère étape : Somme de la première rangée

Produits Opération A [heures] Opération B [heures]


P1 5 10
P2 9
P3 17
P4 19
P5 25
75
P6 37
Algorithme de Roy
Opération A [heures] Opération B [heures]
Produits
Préparation et Nettoyage Peinture
P1 5 5
P2 4 3
P3 8 9
P4 2 7
P5 6 8
P6 12 15

1ère étape : Somme de la première colonne 2ère étape : Somme de la première rangée

Produits Opération A [heures] Opération B [heures]


P1 5 10
P2 9 = 3 + max (10,9) = 13 3ème étape :
P3 17 = 9 + max (17, 13) =26
P4 19
P5 25
76
P6 37
Algorithme de Roy

Résultat de l’algorithme :

Données initiales Algorithme de Roy


Temps par opération Temps de fin
Produits A [h] B [h] A B
P1 5 5 5 10
P2 4 3 9 13
Exemple :
P3 8 9 17 26
P4 2 7 19 33 L’opération A de P4 se termine à l’heure 19, et
l’opération B à l’heure 33.
P5 6 8 25 41
P6 12 15 37 56 L’ensemble des 6 produits se termine à l’heure 56.

77
Algorithme de Roy

Avantages de l’algorithme de Roy :

 N’est pas limité à un nombre d’opérations ou un nombre de produits


 Applicable à n’importe quelle règle de priorité
 Facilement programmable (sur Excel par exemple)
 Pas besoins d’un graphique.

78
L’ordonnancement dans le
secteur des SERVICES

79
L’ordonnancement dans le secteur des SERVICES

Certains problèmes compliquent l’ordonnancement dans le secteur de services :

 Incapacité de stocker les services (par analogie aux encours (WIP) dans le Manufacturing)
 La nature aléatoire des demandes de services des clients.

Dans certains cas, on peut atténuer la 2ème difficulté avec :

 Système de rendez-vous (Contrôler l’arrivée des clients afin de réduire l’attente et planifier
d’avance la capacité)
 Système de Réservations (Formuler une estimation plus précise de la demande et atténuer la
déception des clients )

80
L’ordonnancement Cyclique des Ressources

Dans plusieurs organisations du secteurs de services, pour planifier les besoins en main d’oeuvre ,
on doit affecter les employés aux quarts de travail d’une façon cyclique, avec la contrainte de jours
de repos successifs.

La procédure d’ordonnancement dans cette situation particulière est alors la suivante :

1. On commence par déterminer le besoin en nombre d’employés par jour.


Exemple :

Jour L M Mer J V S D
Nb d’employés
2 4 3 4 6 5 5
nécessaires

81
L’ordonnancement Cyclique des Ressources

2. Établir l’affectation du premier employé tel que :


 Les 2 jours qui se suivent, et dont la somme en besoin est la plus faible, lui sont attribués
comme jours de repos et les encadrer.
 S’il y a égalité, choisir la paire de jours dont les sommes avec les voisins adjacents sont
minimales.

Jour L M Mer J V S D
Nb d’employés
2 4 3 4 6 5 5
nécessaires
E1 2 4 3 4 6 5 5

Jours de repos pour


l’employé E1
82
L’ordonnancement Cyclique des Ressources

3. Itérer l’affectation pour le reste des employés :


 Soustraire un employé des besoins des jours non encadrés.
 A partir du nombre d’employés restants, affecter comme jours fériés au prochain employé,
les jours dont la somme en besoins est minimale.

Jour L M Mer J V S D
Nb d’employés 2 4 3 4 6 5 5
nécessaires
E1 2 4 3 4 6 5 5
E2 2 4 2 3 5 4 4

83
L’ordonnancement Cyclique des Ressources

4. Répéter l’étape 3 jusqu’à ce que tous les besoins en employés soient satisfaits

Jour L M Mer J V S D
E3 1 3 2 3 4 3 3
E4 1 3 1 2 3 2 2
E5 0 2 1 2 2 1 1
E6 0 1 0 1 1 0 1
E7 0 1 0 0 0 0 0

84
L’ordonnancement Cyclique des Ressources

Résultat & Interprétation

Jour L M Mer J V S D
E3 1 3 2 3 4 3 3
E4 1 3 1 2 3 2 2
E5 0 2 1 2 2 1 1
E6 0 1 0 1 1 0 1
E7 0 1 0 0 0 0 0

 Affectation  Besoin de 7 employés au total pour assurer 29 jours-travaillés par semaine.

 L’employé 7 sera appelé seulement pour travailler le Mardi.


 L’employé 6 aura 4 jours de repos.

 Nous aurions pu trouver une autre combinaison donnant aussi un total de 29 jours travaillés par semaine.
85