Inhaltsverzeichnis
Der Johnson-Algorithmus liefert für den 2-Maschinen-Fall eine optimale Reihenfolge der jeweiligen Aufträge, die beide Maschinen in derselben Reihenfolgen durchlaufen. Die Bestimmung der optimale Reihenfolge der Aufträge erfolgt, indem die minimale Bearbeitungszeit als Entscheidungskriterium herangezogen wird. Dies soll anhand eines Beispiels dargestellt werden.
Beispiel: Johnson-Algorithmus
Beispiel
Gegeben seien folgende Aufträge $A_i$ und ihre Bearbeitungszeiten $p_{ij}$ auf den Maschinen $M_j$:
$A_1$ | $A_2$ | $A_3$ | $A_4$ | $A_5$ | $A_6$ | |
$M_1$ | 16 | 5 | 4 | 14 | 12 | 5 |
$M_2$ | 6 | 12 | 7 | 9 | 15 | 1 |
Wie sieht die optimale Reihenfolge bei Minimierung der Bearbeitungszeit nach dem Johnson-Algorithmus aus?
Vorgehensweise:
Zuerst wird der Auftrag mit der kürzesten Bearbeitungszeit ausgewählt. Ist dieser Auftrag mit der kürzesten Bearbeitungszeit auf Maschine 2 (also $j = 2$) eingeplant, dann wird dieser Auftrag hinten angeordnet. Ist der Auftrag hingegen bei Maschine 1 (also $j = 1$) eingeplant, dann wird dieser vorne angeordnet.
In diesem Beispiel: Der Auftrag $A_6$ mit der Bearbeitungszeit von $p_{62} = 1$ ist auf Maschine 2 (also $j = 2$) eingeplant. Da dieser bereits hinten angeordnet ist (und sich damit nichts ändert), wird der nächste Auftrag betrachtet (der Auftrag $A_6$ wird nicht mehr berücksichtigt).
Der Auftrag mit der kürzesten Bearbeitungszeit ist jetzt $A_3$ mit $p_{31} = 4$. Da dieser auf Maschine 1 liegt, wird er vorne angeordnet. Die Reihenfolge der Aufträge sieht nun wie folgt aus (grün markierte Aufträge sind bereits abgearbeitet und werden nicht mehr berücksichtigt):
$A_3$ | $A_1$ | $A_2$ | $A_4$ | $A_5$ | $A_6$ | |
$M_1$ | 4 | 16 | 5 | 14 | 12 | 5 |
$M_2$ | 7 | 6 | 12 | 9 | 15 | 1 |
Der nächste Auftrag ist $A_2$ mit $p_{21} = 5$, welcher wieder auf Maschine 1 angeordnet ist und damit nach vorne (aber nach $A_3$) verschoben wird:
$A_3$ | $A_2$ | $A_1$ | $A_4$ | $A_5$ | $A_6$ | |
$M_1$ | 4 | 5 | 16 | 14 | 12 | 5 |
$M_2$ | 7 | 12 | 6 | 9 | 15 | 1 |
Weiter folgt Auftrag $A_1$ mit $p_{12} = 6$ auf Maschine 2, welcher nach hinten verschoben wird (aber vor $A_6$):
$A_3$ | $A_2$ | $A_4$ | $A_5$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 5 | 14 | 12 | 16 | 5 |
$M_2$ | 7 | 12 | 9 | 15 | 6 | 1 |
Als nächstes folgt der Auftrag $A_4$ mit $p_{42} = 9$ auf Maschine 2 (also nach vorne):
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 5 | 12 | 14 | 16 | 5 |
$M_2$ | 7 | 12 | 15 | 9 | 6 | 1 |
$A_5$ ist der letzte Auftrag und bleibt auf der Position bestehen, somit ist die optimale Reihenfolge der Aufträge auf den Maschinen:
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 5 | 12 | 14 | 16 | 5 |
$M_2$ | 7 | 12 | 15 | 9 | 6 | 1 |
Berechnung der Gesamtbearbeitungszeit
Die Gesamtbearbeitungszeit ergibt sich wie folgt:
Für Maschine 1 können die Aufträge ohne Verzögerung nacheinander abgearbeitet werden, da dieser Maschine keine weiteren Maschinen vorgelagert sind. Die Bearbeitungszeiten der Aufträge müssen also nur kumuliert werden. Maschine 1 hat damit eine Gesamtbearbeitungszeit von 56 ohne Pufferzeiten.
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
Für Maschine 2 sieht das schon anders aus. Da die Maschine 1 der Maschine 2 vorgelagert ist, muss dies bei der Berechnung der Bearbeitungszeit berücksichtigt werden. Denn ist ein Auftrag bereits auf Maschine 2 eingeplant, aber auf Maschine 1 noch nicht fertiggestellt, entstehen Pufferzeiten und die Gesamtbearbeitungszeit verlängert sich.
Die Berechnung erfolgt so:
Der Auftrag $A_3$ dauert 7 ZE und ist auf Maschine 1 bei 4 ZE fertiggestellt, kann also auch erst dann auf Maschine 2 einplanbar werden. Das bedeutet also, dass $A_3$ auf Maschine 2 bei 11 Zeitheiten fertiggestellt ist (= 4 + 7).
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 12 | 15 | 9 | 6 | 1 |
Als nächstes betrachtet man Auftrag $A_2$. Dieser ist bei 9 ZE auf Maschine 1 fertiggestellt, allerdings erst bei 11 ZE auf Maschine 2 einsetzbar (der vorherige Auftrag endet erst bei 11 ZE). Das bedeutet eine Zwischenlagerung über 2 ZE von $A_2$. $A_2$ ist also erst bei 11 ZE einplanbar und dauert 12 ZE, insgesamt ergibt sich also 23 ZE:
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 23 | 15 | 9 | 6 | 1 |
Auftrag $A_5$ ist bereits bei 21 ZE auf Maschine 1 fertiggestellt, allerdings auf Maschine 2 erst ab 23 ZE einplanbar (Zwischenlagerung von $A_5$ über 2 ZE). $A_5$ hat eine Bearbeitungszeit von 15 ZE, das ergibt 38 ZE (=23 + 15).
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 23 | 38 | 9 | 6 | 1 |
Auftrag $A_4$ beginnt demnach erst bei 38 ZE (Zwischenlagerung von 3 ZE) und dauert 9 ZE, das ergibt eine Gesamtbearbeitungszeit von 47 ZE.
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 23 | 38 | 47 | 6 | 1 |
Auftrag $A_1$ ist bereits bei 47 ZE auf der Maschine 2 einplanbar, jedoch erst bei 51 ZE auf Maschine 1 fertiggestellt, weshalb die Gesamtbearbeitungsdauer 57 ZE (=51 + 6) darstellt. Der letzte Auftrag beginnt bei 57 ZE und dauert 1 ZE, was eine Gesamtbearbeitungszeit der Maschine 2 von 58 ZE bedeutet.
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 23 | 38 | 47 | 57 | 58 |
Berechnung der Pufferzeit
Die Berechnung der Pufferzeit der Maschine 2 erfolgt so:
Man berechnet für einen Auftrag $A_i$ die Pufferzeit durch:
Pufferzeit = Gesamtbearbeitungszeit aller Aufträge bis $A_i$ (inklusive) - Bearbeitungszeit des Auftrages $A_i$ - Gesamtbearbeitungszeit der vorangegangenen Aufträge (exklusive)
$A_3$ | $A_2$ | $A_5$ | $A_4$ | $A_1$ | $A_6$ | |
$M_1$ | 4 | 9 | 21 | 35 | 51 | 56 |
$M_2$ | 11 | 23 | 38 | 47 | 57 | 58 |
Puffer | 4 | 0 | 0 | 0 | 4 | 0 |
Z.B.: Bei Auftrag $A_1$, berechnet sich die Pufferzeit durch die Gesamtbearbeitungszeit aller Auftrage (inklusive $A_1$), also 57 ZE, abzüglich der Gesamtbearbeitungszeit der vorangegangenen Aufträge (exklusive $A_1$) also 47 ZE, abzüglich der Bearbeitungszeit des Auftrages $A_1$ also 6 ZE.
Grafisch: Johnson-Algorithmus
Man kann das ganze auch grafisch ermitteln, indem man die Reihenfolge in ein Gantt-Diagramm einzeichnet.
Weitere interessante Inhalte zum Thema
-
Johnson-Algorithmus
Vielleicht ist für Sie auch das Thema Johnson-Algorithmus (Termin- und Kapazitätsplanung) aus unserem Online-Kurs Produktion interessant.