Vous êtes sur la page 1sur 17

RECHERCHE OPÉRATIONNELLE

ALGORITHME DE JOHNSON
Objectif
L'Algorithme de Johnson (ou plutôt les
Algorithmes de Johnson, car il en existe
plusieurs variantes) est un moyen rapide
d'optimiser l'ordonnancement de process
simples.
1er Cas : 2 machines

Condition
• L’ordre est imposé
• Le temps d’occupation de chaque pièce par poste
est connu
Exemple :
Six pièces A, B, C, D, E et F sont à passer successivement
sur M1,M2 Chaque pièce doit être totalement fini sur M1
avant de passer sur M2.
Les temps de cycle sont donnés par le tableau suivant :
Processus
•Recherche de la valeur la plus petite du tableau :
Si cette valeur correspond à la 1ere tâche, la
pièce passe en tête.
Si cette valeur correspond à la 2nd tâche, la
pièce passe en queue.

•Une fois l’affectation réalisée, on raye la pièce.


Au final, on obtient l’ordonnancement suivant :
ADBEFC
•Calcul du cycle total et des temps
morts
2ème Cas : 3 machines

Les pièces doivent passer successivement sur 3 machines


M1, M2 et M3

• Le temps d’occupation de chaque poste est connu


• L’algorithme est possible si :

Le plus petit temps de M1 est au moins aussi grand


que le plus grand temps sur M2.
Ou le plus petit temps sur M3 est au moins aussi
grand que le plus grand temps de M2.
Mini sur M1 ≥ Maxi sur M2
Mini sur M3 ≥ Maxi sur M2

• Si une des deux conditions est remplie (ou les deux), la


recherche de la séquence optimale se fait en ramenant au
cas de 2 tâches.

• On crée deux machines fictives G et H.

• Les pièces doivent passer successivement sur G et H.

• Les temps d’occupation de G et H sont connus d’après la


relation :
G = M1 + M2
H = M2 + M3
Exemple :

Cinq pièces A, B, C, D et E doivent passer


successivement par les machines M1, M2 et M3.
Chaque pièce doit être totalement fini sur M1 avant de
passer sur M2 et totalement fini sur M2 avant de passer
sur M3. Les temps de cycle sont donnés par le tableau
suivant :
Condition 1 : Mini sur M1 (3) ≥ Maxi sur M2 (7): non-réalisée
OU
Condition 2 : Mini sur M3 (7) ≥ Maxi sur M2 (7) : réalisée

Donc l’algorithme est possible


Cas Général :
Il peut s'appliquer sur toute fabrication dont le processus
de fabrication est séquentiel avec plus de deux postes de
fabrication même si tous les postes ne sont pas utilisés.

Pour chaque pièce :


- Réaliser la somme des temps de toutes les phases (N)
- Réaliser la somme x des temps des n-1 premières
phases
- Réaliser la somme y des temps des n-1 dernières
phases
-Calculer le rapport k=x/y

On obtient l'ordre des fabrications grâce à l'ordre croissant


de k.
Exemple

Solution : P2 P1 P3, date de fin = 21


Produits M1 M2 M3

DATES Début Fin Contraintes Début Fin Contraintes Début Fin Contrain
(HEURES tes
)

P2 0 3 0 3 9 0 9 17 0

P1 3 5 0 9 17 4 17 21 0

P3 5 13 0 17 19 4 - - -

Vous aimerez peut-être aussi