• Keine Ergebnisse gefunden

Kapitel 8 Das Benchmark Bench01 115

8.9 Reduzierung der benötigten Parameter

Zur Lösung eines Optimierungsproblems mit dem vorgestellten Simulated Annealing Ansatz bedarf es neben der Modellierung der Problemstellung noch der Einstellung der Nachbarschaft und der Wahl der benötigten Parameter. Nachdem das Modell von einem Optimierungsexperten festgelegt wurde, stellt sich die Frage, ob auch ein nicht besonders versierter Anwender die tägliche Planung mit dem vorgestellten Ansatz durchführen kann. Dazu sollten ihm möglichst viele Entscheidungen abgenommen werden, so dass er im Idealfall nur noch die aktuelle Auftragsliste pflegen muss. In Kapitel 8.4.1 wurde bereits eine Möglichkeit vorgestellt, die Nachbarschaft adaptiv zu regeln. Im Anschluss daran soll nun untersucht werden, wie sich die verschiedenen Parameter des SA vermei-den lassen.

Die folgenden Parameter werden für eine Simulation mit SA gefordert:

• Starttemperatur TS,

• Abkühlschema: linear oder geometrisch,

• Steigung des linearen Schemas oder α-Faktor des geometrischen,

• Einfriertemperatur TE und

• Anzahl Sweeps pro Temperaturschritt.

Einige dieser Parameter sind bei der Gruppe der gegebenen Problemstellungen (Scheduling) unab-hängig von der Modellierung einzustellen. So hat sich das geometrische Abkühlschema mit einem α-Faktor von 0.98 bewährt. Die Wahl von α im Bereich [0.90,0.99] hatte bei keiner der in dieser Arbeit beachteten Problemstellungen besonderen Einfluss auf die erzielten Ergebnisse.

Die Wahl des Temperaturbereichs [TS,TE] hängt jedoch sehr stark von der Problemstellung und de-ren Modellierung ab.

Im Folgenden werden Ergebnisse vorgestellt, die ohne ‚annealing’ bei verschiedenen konstanten Temperaturen erzielt werden konnten (Tabelle 8.20).

Greedy T=1 T=10 T=50 T=100 T=1000 SA-Cool

Sweeps av (dev) av (dev) av (dev) av (dev) av (dev) av (dev) av (dev) 100 2.332,5 (30,5) 2.339,8 (28,9) 2.338,2 (44,0) 2.337,3 (42,5) 2.388,3 (34,7) 2.742,1 (56,0) 2.302,6 (29,1) 1000 2.251,1 (28,4) 2.229,1 (28,2) 2.215,6 (44,7) 2.222,8 (44,9) 2.296,9 (41,0) 2.631,2 (43,5) 2.181,0 (31,1) 5000 2.224,5 (31,6) 2.173,2 (31,6) 2.146,8 (38,1) 2.150,8 (30,4) 2.249,2 (16,2) 2.597,9 (17,2) 2.145,6 (32,8) 10000 2.222,2 (30,6) 2.149,9 (27,6) 2.122,6 (30,9) 2.143,5 (30,7) 2.244,8 (18,2) 2.585,7 (32,7) 2.140,4 (31,5) 100 3.291,3 (79,6) 3.306,3 (95,5) 3.303,4 (81,1) 3.332,3 (84,9)3.609,6 (169,4)4.789,1 (131,3)3.230,6 (77,0) 1000 3.115,9 (38,1) 3.071,2 (51,5) 3.049,3 (43,1) 2.996,5 (56,8) 3.266,7 (48,0) 4.584,5 (61,4) 2.898,5 (88,9) 5000 3.075,4 (39,1) 2.861,4 (41,9) 2.830,0 (81,4) 2.845,1 (48,8) 3.219,9 (39,8) 4.475,3 (58,0) 2.741,5 (67,5) 10000 3.066,7 (43,5) 2.744,1 (58,5) 2.772,2 (78,1) 2.803,8 (38,2) 3.197,6 (40,8) 4.450,6 (97,4) 2.689,6 (42,5) 100 792,0 (26,8) 734,0 (59,9) 696,0 (67,9) 706,0 (65,0) 760,0 (59,0) 1.739,0 (68,0) 629,0 (79,9) 1000 685,0 (27,3) 575,0 (45,2) 543,0 (74,8) 427,0 (24,1) 550,0 (28,6) 1.634,0 (54,1) 413,0 (20,5) 5000 644,0 (47,4) 453,0 (23,3) 432,0 (60,0) 384,0 (6,6) 530,0 (21,0) 1.548,0 (60,6) 392,0 (8,7) 10000 636,0 (56,6) 421,0 (16,4) 413,0 (40,8) 379,0 (3,0) 508,0 (21,8) 1.525,0 (42,0) 385,0 (8,1) M

M+S

S

Tabelle 8.20: Gezeigt werden die Ergebnisse der Simulationen mit einem annealing (SA-Cool) und mehreren kon-stanten Temperaturen (T=...). Zusätzlich sind noch die Ergebnisse eines Greedy Verfahren gegeben.

Die Ergebnisse zeigen, dass

• die einzelnen Kriterien M, M+S, S in verschiedenen Temperaturbereichen optimiert werden.

Es werden die besten Ergebnisse erzielt, falls bei (M, M+S, S) die Temperaturen (10,1-10,50) zugeordnet werden.

• die Ergebnisse sich im Temperaturbereich [1,50] nicht sehr stark unterscheiden.

• der Unterschied zu einem annealing bei längeren Laufzeiten meist kleiner als 5% ist.

• man bei längeren Laufzeiten bei M und bei S bei der richtigen Wahl der konstanten Tempera-tur bessere Ergebnisse erhalten kann als bei einem annealing.

Insgesamt muss jedoch erwähnt werden, dass es einfacher ist, ein Schema für ein annealing zu er-zeugen, als die richtige konstante Temperatur für eine optimale Simulation zu finden. Die Wahl eines Temperaturbereichs hat immer den Vorteil, diese optimale Temperatur zu enthalten und nur den kleinen Nachteil, dass evtl. zu viel Rechenzeit bei zu großen und/oder zu kleinen Temperaturen investiert wird. Ein Fehler, wie z.B. die Wahl der konstanten Temperatur >100, der auch bei langen Rechenzeiten zu keiner Verbesserung der Ergebnisse führt, wird so vermieden.

Bei allen bisherigen Simulationen wurde festgestellt, dass die Temperatur sehr stark von der Prob-lemstellung, manchmal sogar noch von den einzelnen Instanzen (entspricht hier dem Auftragspaket) abhängt. Es wird deshalb im Folgenden versucht, diesen problemspezifischen Parameter durch

ei-nen solchen zu ersetzen, der allgemein definierbar ist. Dadurch soll dann die Temperatur aus der Simulation heraus selbst bestimmt werden. Es wird nun versucht, als Parameter die Akzeptanzrate zu verwenden. Diese sollte während einer SA Simulation von einem anfangs hohen Wert bis auf 0 sinken.

Im Folgenden wird im Unterschied zur der in Kapitel 2.4.4 erwähnten Methode, aus der Akzep-tanzrate die Anfangstemperatur zu bestimmen, nicht der Maximalwert über die Beträge aller Ener-gieänderungen von N getesteten Moves beachtet, sondern nur der Mittelwert des Betrags der letzten N negativen Energieänderungen (Lösungsverbesserungen). Mit der so erstellten Temperatur wird festgelegt, mit welcher Wahrscheinlichkeit man in der Energielandschaft einen Schritt aufwärts gehen darf, dessen Energieänderung dem Mittelwert der letzen N Verbesserungen entspricht. Die Akzeptanzrate kann bei einem festen Wert fixiert sein oder während der Simulation gesenkt werden (vgl. Kapitel 2.4.6).

Bei der Simulation des SA-Acc wird die Akzeptanzrate von 50% in 150 Schritten logarithmisch mit einem α-Faktor von 0.98 gesenkt. Die Ergebnisse (Tabelle 8.21) sind dabei vergleichbar mit denen des SA. Mit Hilfe dieses Parameters lassen sich nun auch Simulationen von in Optimierungsprob-lemen unerfahrenen Benutzern durchführen, nachdem die Modellierung von einem Experten vorge-nommen wurde.

SA-Cool SA-Akz Sweeps av (dev) av (dev)

100 2.302,6 (29,1) 2.272,0 (22,4) 1000 2.181,0 (31,1) 2.189,1 (30,2) 5000 2.145,6 (32,8) 2.139,1 (34,7) 10000 2.140,4 (31,5) 2.131,9 (36,0) 100 3.230,6 (77,0) 3.198,6 (76,8) 1000 2.898,5 (88,9) 2.814,4 (73,1) 5000 2.741,5 (67,5) 2.668,9 (40,2) 10000 2.689,6 (42,5) 2.648,4 (33,8) 100 629,0 (79,9) 625,0 (72,4) 1000 413,0 (20,5) 459,0 (42,1) 5000 392,0 (8,7) 418,0 (23,2) 10000 385,0 (8,1) 405,0 (20,1) M

M+S

S

Tabelle 8.21: Vergleich der Ergebnisse des bisher verwendeten SA (SA-Cool) mit denen der Simulation mit der neu-en Parameterdefinition (SA-Acc).

8.10 Zusammenfassung

In diesem Kapitel wurde zuerst versucht, eine gute Nachbarschaft für eine Modellierung der Prob-lemstellung zu finden. Eine solche Suche bedarf allerdings einigen Aufwands und bedeutet nicht, dass eine einmal gefundene optimale Einstellung der Nachbarschaft auf allen Instanzen des gleichen Optimierungsproblems bei den verschiedenen Optimierungsprioritäten (Durchlaufzeit : Rüstzeit) ebenso optimal ist. Es wurde deshalb versucht, eine adaptive Nachbarschaft zu definieren, die sich während der Simulation selbst einstellt. Im Vergleich zu den per Hand erstellten Nachbarschaften kann diese adaptive Version nicht immer die besten Ergebnisse erzielen, jedoch im Vergleich zum Durchschnitt über alle getesteten Nachbarschaften durchaus ähnlich gute Ergebnisse erzeugen.

Im Anschluss daran wurde eine neue Modellierung für das gleiche Optimierungsproblem erstellt, die das variable Pegging durch ein fixiertes ersetzt. Die Unterschiede bei den Ergebnissen werden vor allem bei den Instanzen deutlich, bei denen viele Aufträge für das gleiche Endprodukt existieren und die zur Verfügung gestellte Rechenzeit relativ klein ist. Ein Modell mit variablem Pegging ist dann sehr viel erfolgreicher als ein Modell mit fixiertem Pegging. Zusätzlich wurde noch eine Ver-besserung der Modellierung mit fixiertem Pegging vorgestellt, bei der zusätzliche Aktivitätslinks definiert werden, um die Aktivitäten, die für gleiche Endprodukte benötigt werden, nach ihren Lie-ferzeitpunkten zu sortieren. Diese Verbesserung der Modellierung war vor allem bei den großen Instanzen sehr hilfreich, um Lösungen zu finden, die die Lieferzeitpunkte einhalten.

Neben der ursprünglich gegebenen Problemstellung wurden dann noch solche bearbeitet, die kleine Veränderungen aufwiesen. Diese Simulationen sollten dazu dienen, eine ‚Was wäre wenn’ Frage zu beantworten. Auf diese Weise können Entscheidungen zur Umstrukturierung des Produktionspro-zesses simulativ getestet werden, bevor hohe Kosten z.B. bei der Anschaffung neuer Maschinen entstehen.

Im Vergleich zu verschiedenen anderen Verfahren aus der Literatur konnte sich die Modellierung mit variablen Pegging mit einem SA Ansatz behaupten. Die aus der Literatur bereits bekannten besten Ergebnisse konnten stets erreicht, in den meisten Fällen sogar verbessert werden.

Zum Schluss wurde erfolgreich versucht, die einzelnen problemabhängigen Steuerungsparameter des SA Algorithmus durch solche zu ersetzen, die, einmal definiert, für alle Problemstellungen an-wendbar sind. Zusammen mit der adaptiven Nachbarschaft ergibt sich damit die Möglichkeit, ein einmal durch einen Experten erstelltes Modell zu benutzen, um Simulationen von einem nicht spe-ziell in Optimierungsfragen ausgebildeten Benutzer durchführen zu lassen.

Kapitel 9

Der Westenberger-Kallrath-Benchmark

R1 R2

R3

R4 R6a

R6b R5

P0 R7a

R7b P11

P21

P22 P31

P42 P43

P44 P75

P61

P63

P74 P73 P72 P71

P41

P52 P51

P62

Abbildung 9.1: Graphische Darstellung der Problemstellung.

9.1 Problemstellung (siehe [9.1] oder [9.2])

a) Zur Verfügung stehende Ressourcen

• 9 Maschinen: R1, R2, R3, R4, R5, R6a, R6b, R7a, R7b

• 10 Lager für die Zwischenprodukte mit Kapazitätsbeschränkung: S11, S21, S22, S31, S42, S43, S44, S61, S63.

• 5 Lager für die Endprodukte ohne Kapazitätsbeschränkung: S71, S72, S73, S74, S75. b) Rezept

Jedes Endprodukt befolgt bei seiner Herstellung ein bestimmtes „Rezept“. Zur Herstellung des Endproduktes sind verschiedene Zwischenprodukte nötig. Die Losgrößen bei der Produktion sind veränderbar innerhalb bestimmter Grenzen. Diese Grenzen hängen dabei von der verwende-ten Maschine ab. Unter der produzierverwende-ten Losgröße versteht man die Summe der Mengen der ein-zelnen hergestellten Produkte. Die Produktionszeiten für die einein-zelnen Produkte sind von der gewählten Maschine (bei Stufe 6 und 7 existieren alternative Ressourcen) und dem Produkt ab-hängig, jedoch unabhängig von der Losgröße.

c) Ablauf der Produktion

Stufe 1: Aus dem Rohstoff P0 wird das Zwischenprodukt P11 auf der Maschine R1 hergestellt.

Da der Rohstoff P0 immer in ausreichender Menge vorhanden ist und das zugehörige Lager keine Kapazitätsrestriktion besitzt, wird im Folgenden auf dieses Produkt (und das Lager) verzichtet.

Stufe 2: Aus P11 werden P21 und P22 auf der Maschine R2 hergestellt. Die Aufteilung in P21 und P22 ist dabei in einem bestimmten Bereich frei wählbar. So muss die Produktion von P21 zwischen 20% und 70% (der Menge von P11) liegen.

Stufe 3: Aus P22 wird P31 auf der Maschine R3 hergestellt. Dabei entsteht jedoch als Nebenpro-dukt noch P11. Die Summe der Mengen von P31 und P11 entspricht dabei der Menge von P22. Die Aufteilung auf P31 und P11 ist hier im Unterschied zur Stufe 2 fest. Je nach Aufgabenstellung wird 100% oder 69,23% von P22 in P31 verwandelt.

Stufe 4: Auf dieser Stufe können verschiedene Produkte auf der Maschine R4 hergestellt wer-den. Aus P21 kann P41 oder P42 produziert werden, aus P31 kann P43 oder P44 entstehen.

P41 ist nicht lagerfähig und muss sofort in Stufe 7 weiterverarbeitet werden.

Stufe 5: Es werden P51 (aus P21) und P52 (aus P31) auf der Maschine R5 hergestellt. Da diese Produkte nicht lagerfähig sind, müssen sie sofort in Stufe 7 weiterverarbeitet werden.

Stufe 6: Es werden P61 (aus P42), P62 (aus P43) und P63 (aus P44) auf den alternativen Maschi-nen R6a und R6b hergestellt. P62 ist nicht lagerfähig und muss sofort in Stufe 7 weiter-verarbeitet werden. Die Produktionszeiten für die einzelnen Produkte hängen nun zu-sätzlich noch von der gewählten Maschine ab.

Stufe 7: Es werden die Endprodukte P71 (aus P51), P72 (aus P52), P73 (aus P41 und P61), P74 (aus P62), P75 (aus P63) auf den alternativen Maschinen R7a und R7b hergestellt. Bei der Pro-duktion von P73 werden P41 und P61 zu gleichen Anteilen verbraucht. Produkt P73 bil-det zusätzlich noch eine Ausnahme zu den anderen Endprodukten, da es nur auf Ma-schine R7a herstellbar ist. Die Produktionszeiten für die einzelnen Produkte hängen nun zusätzlich noch von der gewählten Maschine ab.

Bei den einzelnen Maschinen sind noch Rüstzeiten bei der Produktion zu beachten. Die Definiti-on der Rüstzeiten weist hier einige BesDefiniti-onderheiten auf. So ist nach der ProduktiDefiniti-on für jede Ma-schine grundsätzlich ein Reinigungsvorgang einzuplanen, dessen Dauer der halben Produktions-zeit entspricht. Dieser Reinigungsvorgang entfällt nur, falls sofort nach dem Beenden der Her-stellung eines Produkts mit der HerHer-stellung eines Produkts mit kleinerer Produktnummer begon-nen wird. Am Ende der gesamten Produktion auf einer Maschine ist immer eine Reinigung ein-zuplanen.

Gegeben ist nun noch für jedes Material die zu produzierende Menge. Die Lager können anfangs bereits teilweise gefüllt sein.

d) Aufgabe

Es werden 4 verschiedene Aufgabenstellungen untersucht. Zu minimieren ist bei diesen Aufga-benstellungen unter Einhaltung der Nebenbedingungen der Lagerkapazitäten und Losgrößen nur die Durchlaufzeit.

(1) Es sind keine Rüstzeiten zu beachten. Stufe 3 wandelt P22 zu 100% in P31. (2) Die Rüstzeiten sind zu beachten. Stufe 3 wandelt P22 zu 100% in P31. (3) Es sind keine Rüstzeiten zu beachten. Stufe 3 wandelt P22 zu 69,23% in P31. (4) Die Rüstzeiten sind zu beachten. Stufe 3 wandelt P22 zu 69,23% in P31.

Bei den 4 Aufgabenstellungen werden jeweils 3 verschiedene Initialzustände (I1, I2, I3) der Lager vorgegeben:

P11 P21 P22 P31 P42 P43 P44 P61 P63

I1 0 0 0 0 0 0 0 0 0

I2 20 20 0 20 0 0 0 0 0

I3 10 10 0 10 0 0 0 0 0

Tabelle 9.1: Initialzustände der Lager.

Zusätzlich zu der in [9.1],[9.2] angegebenen Bestellmenge B0 der Endprodukte P71, P72, P73, P74, P75 wird noch die Bestellmenge B1 – B22 aus [9.3], [9.4] und die frei gewählte B23 bearbeitet (Tabelle 9.2).

Aufgabenstellung (4) entspricht nicht ganz der Aufgabenstellung 4 aus [9.1],[9.2]. In Aufgaben-stellung 4 aus [9.1],[9.2] können die Initialzustände der Lager bei der Optimierung frei gewählt werden. Zu beachten ist dort allerdings, dass die Lager am Ende der Produktion (zum Zeitpunkt der minimalen Durchlaufzeit) wieder ihren Initialzustand besitzen müssen. Die zu fertigenden Endprodukte sollten dabei in der originalen Aufgabenstellung 4 aus [9.1],[9.2] genau eingehalten werden.

P71 P72 P73 P74 P75 P71 P72 P73 P74 P75

B0 30 30 40 20 40 B12 30 20 20 10 10

B1 20 20 20 0 0 B13 10 20 30 20 10

B2 20 20 0 20 0 B14 18 18 18 18 18

B3 20 20 0 0 20 B15 15 15 30 30 45

B4 20 0 20 20 0 B16 45 30 30 15 15

B5 20 0 20 0 20 B17 15 30 45 30 15

B6 20 0 0 20 20 B18 27 27 27 27 27

B7 0 20 20 20 0 B19 20 20 40 40 60

B8 0 20 20 0 20 B20 60 40 40 20 20

B9 0 20 0 20 20 B21 20 40 60 40 20

B10 0 0 20 20 20 B22 36 36 36 36 36

B11 10 10 20 20 30 B23 120 90 130 80 80

Tabelle 9.2: Bestellmengen der Endprodukte.

9.2 Modell

9.2.1 Veränderungen an der Modellierungsfunktionalität

Aufgrund der veränderten Bedingung für die Rüstzeiten und der neuen Funktionalität der variablen Losgröße ist eine Anpassung der Modellierung (vgl. Kapitel 3.2) erforderlich.

a) Rüstzeiten

Zur Abbildung der Rüstzeiten muss die Funktionalität der Primärressource leicht verändert wer-den:

3.2.2.1 Primärressource

c) Funktionalität Umrüstung

Die Produktionsdauer PDi der Umrüstung mit Rüstschlüssel RSi, dem direkten Nach-folger Pk und dem direkten Vorgänger auf der Primärressource Pj ist in diesem Fall gegeben durch

⎩⎨

⎧ = ∧ ≤

= M sonst

RS RS P

P P

j RZi

j j i

E k S i

D

,

0

Es ist bei den Rüstzeiten noch darauf zu achten, dass am Ende der Produktion auf jeder Primär-ressource Umrüstungen geplant werden. Dies wird durch eine speziell für diese Problemstellung definierte Funktion am Ende jeder Planung (vgl. Kapitel 3.2.6) erfüllt.

b) Variable Losgröße

Die Funktionalität der variablen Losgröße bedarf einer Veränderung im Modus und der Planung.

3.2.1 Modus f) Losgröße

Der Modus erhält nun den Freiheitsgrad, die Menge des produzierten Materials (seine Losgröße) zu verändern. Die Losgröße MoLi muss dabei im Intervall [min,max] liegen.

Bei der Planung kann die Losgröße nur diskrete Werte annehmen. Sind Mini die vom Modus verbrauchten und Moutj die produzierten Mengen der Materialien Mi und Mj, so ist die Losgröße definiert durch =

j outj Li

M

Mo .

Die Losgröße wird jedoch bei der Planung nicht direkt vorgegeben, vielmehr existiert eine Liste aus vordefinierten Einstellungen für die Materialien. Jede Einstellung legt die Mini und Moutj fest. Eine dieser Einstellungen wird anfangs vorgegeben. Diese ist meist eine Einstellung mit minimaler Losgröße. Bei gleicher Losgröße können ver-schiedene Einstellungen existieren. Diese variable Losgrößenaufteilung ist in diesem Benchmark bei Stufe 2 vorhanden. Mit dieser Modellierung lassen sich die in Abbil-dung 9.2 gezeigten Materialflüsse durch den Modus abbilden.

Modus

Abbildung 9.2: Mögliche Materialflüsse durch einen Modus: a) single input - single output, b) multi input - single output, c) single input - multi output, d) multi input - multi output, e) multi variable input - multi variable output. Bei multi input/output können statt den gezeigten 2 Materialien auch mehrere verbraucht/produziert werden.

Bei der Definition des Modus durch

(

B,S,b

)

DPR

(

SR,PMK

( )

t

)

GR(t)RS

(

P,S,b

)

muss nun noch die Information aus den variablen Losgrößen einfließen. Dazu wird eine Erwei-terung hinzugefügt:

( ) ( ( ) ) ( )

dabei wird durch eine mögliche Einstellung für die Losgröße festgelegt, wobei i den Mengen der verbrauchten Materialien entspricht und j den Mengen der produzierten.

Existieren mehrere Materialien, so sind diese durch ‚;’ voneinander getrennt in der glei-chen Reihenfolge, in der sie beim Modus auftauglei-chen. Die Bedingung F

(

ij

)

1 definiert die Lis-te aller möglichen EinsLis-tellungen der Losgröße und zusammen mit Bedingung F2 die an-fangs vorgegebene Einstellung. Ein ‚*’ vor den Materialien B und P weist auf die variab-le Losgröße hin.

3.2.6.2 Planung

Zu beachten ist nun, dass nicht mehr alle Aktivitäten der Konfiguration geplant werden müssen. Aus der vorliegenden Bestellmenge wird ersichtlich, wie viele Zwischenproduk-te zur HersZwischenproduk-tellung der EndprodukZwischenproduk-te benötigt werden.

Die folgenden Schritte werden ergänzt bzw. neu hinzugefügt:

1.: Die Prüfung, ob eine Aktivität Aik planbar ist, wird mit der anfänglichen Einstellung für die Losgröße aller Modi der Aktivität durchgeführt. Auf die Planung der Aktivität kann verzichtet werden, falls die durch Aik hergestellten Zwischen- bzw. Endproduk-te bereits in ausreichender Menge vorhanden sind.

Zwischen Schritt 4 und Schritt 5 werden die Losgrößen angepasst:

4b: Es wird versucht, die Losgröße aller Modi der Aktivität zu erhöhen, ohne dabei die vorgegebenen Startzeitpunkte zu verändern. Dazu werden für jeden Modus aus der Liste aller Einstellungen diejenigen in eine Liste aus möglichen Einstellungen ko-piert, die zu dem bestimmten Startzeitpunkt möglich sind. Ob eine Einstellung mög-lich ist, hängt von den Losgrößen der einzelnen Produkte und den freien bzw. beleg-ten Kapazitäbeleg-ten der zugehörigen Silos ab. Die Liste der möglichen Einstellungen ist

niemals leer, da sie immer die anfängliche Einstellung des Modus enthält. Aus der Liste der möglichen Einstellungen wird nun diejenige ausgewählt, die am ehesten den noch zu produzierenden Mengen der Produkte entspricht. Sind Boutj die benötig-ten Mengen der Produkte, dann wird die Einstellung mit minimalem f ausgewählt,

wobei =

j

outj outj

M B

f

9.2.2 Modellierung

a) Produkte:

Es existieren 9 lagerfähige, 4 nicht lagerfähige Zwischenprodukte und 5 Endprodukte.

b) Ressourcen:

Es werden 9 Primärressourcen für die Produktion und 14 Silos für die Lagerung der Zwischen- und Endprodukte benötigt. Bei den Silos wird die maximale Kapazität auf 200% der vorhande-nen eingestellt. Das Einhalten der durch die Aufgabenstellung vorgegebevorhande-nen Kapazität wird durch eine weiche Grenze im Silo realisiert. In der Kostenfunktion wird die Nebenbedingung der weichen Silogrenzen mit einem Faktor 10 gewichtet.

c) Aktivitäten:

Es werden 14 verschiedene Aktivitäten definiert (Anhang E.1). Aus diesen Schablonen werden später bei der Umsetzung der Produktionsaufträge die zu planenden Aktivitäten erzeugt.

Produkt P74 kann auf zwei verschiedene Arten hergestellt werden. Bei der ersten Aktivität A74

wird die Stufe 7 von einer Maschine der Stufe 6 befüllt. Die maximale Menge des Produkts liegt dann bei 7 Einheiten. Bei der zweiten Aktivität A74b wird Stufe 7 von beiden Primärressourcen R6a, R6b befüllt. Es ist damit möglich P74 mit einer erhöhten Losgröße zu planen. Es können nun 12 Einheiten P74 produziert werden. Bei der folgenden Planung kann zwischen den beiden Vari-anten während der Planung getauscht werden, falls von beiden VariVari-anten genügend Aktivitäten aus den Produktionsaufträgen für die benötigten Produkte erzeugt werden.

d) Produktionsauftrag:

Es existiert eine Liste an Bestellmengen für die Endprodukte P71, P72, P73, P74, P75. Diese wird in Aktivitäten umgesetzt. Da die Losgrößen nicht festgelegt sind, müssen genug Aktivitäten erzeugt werden, um die benötigten Mengen mit minimaler Losgröße pro Aktivität herstellen zu können.

9.3 Ergebnisse

Ein Vergleich mit anderen Verfahren ist nicht bei allen Aufgaben und Kombinationen aus den Initialzuständen (I1 – I3) und den Bestellmengen (B0 – B23) möglich. Es ist darauf zu achten, dass die Rüstzeiten in [9.3] und [9.7] anders definiert sind als in Aufgabe 2 und 4 aus [9.1],[9.2]. Ein Vergleich mit den angegebenen Verfahren in [9.3] und [9.7] machte daher eine Anpassung der Rüstzeiten erforderlich (-> Aufgabe (4b)).

Der SA Ansatz wird in allen Aufgabenstellungen angewendet. Zusätzlich werden die Ergebnisse der Aufgabe (3) und Aufgabe (4b) mit Initialzuständen I3 denen der Verfahren LPH (LP-Heuristiken) aus [9.3], und dem Verfahren B+BS (Batching+BatchScheduling) aus [9.7] gegen-übergestellt.

Die für jeweils 100000 Sweeps des Verfahrens SA benötigte Rechenzeit (PC Pentium mit 650MHz) ist für jede Aufgabenstellung in Tabelle 9.8 zu sehen. Die Rechenzeiten aus der Literatur für die einzelnen Verfahren sind aufgrund der unterschiedlichen Rechner nicht direkt miteinander ver-gleichbar. Der Vollständigkeit halber wurden sie jedoch angegeben (Tabelle 9.4, Tabelle 9.6, Ta-belle 9.7).

9.3.1 Ergebnisse verschiedener Verfahren aus der Literatur

In [9.3] werden verschiedene LP-Heuristiken vorgestellt. Die Heuristiken werden durch Hinzufügen eines anschließenden Verbesserungsverfahrens erweitert. Im Folgenden werden immer nur die Er-gebnisse der Zeitrasterheuristik (TGB – time grid based heuristic) angegeben, da diese die besten Ergebnisse erzielte. Ergebnisse zu den verschiedenen LP-Heuristiken sind noch in [9.4], [9.5] und [9.6] gegeben. Jedoch ist zu beachten, dass die Definition der Rüstzeiten in [9.4] nicht mit derjeni-gen aus [9.3] übereinstimmt. Für TGB gilt ein Zeitlimit von 3600 Sekunden (PC Pentium II mit 266MHz). Für die maximale Anzahl der Knoten ist 50000 vorgegeben.

In [9.7] wird das Westenberger-Kallrath Problem unterteilt in ein Batching- und ein Batch-Scheduling-Problem. Das Batching-Problem wird mit Hilfe einer linearen Formulierung und CPLEX 6.0 gelöst. Dabei wurden für Aufgabe 3 aus [9.1],[9.2] mit Rüstzeiten (entspricht Aufgabe (4) mit I2 und B0) nur 4 Sekunden (PC Pentium mit 800MHz) für eine optimale Lösung benötigt.

Das folgende Batch-Scheduling-Problem wird mit einem Branch&Bound Algorithmus bearbeitet.

Für Aufgabenstellung 3 aus [9.1],[9.2] mit Rüstzeiten (entspricht Aufgabe (4) mit I2 und B0) konnte in 56 Sekunden (PC Pentium mit 800MHz) eine zulässige Lösung mit einer Durchlaufzeit von 88 Zeiteinheiten (entspricht 3168 Minuten; 1 Zeiteinheit=36 Minuten) gefunden werden. Insgesamt wurde zum Auffinden der Lösung somit nur 1 Minute Rechenzeit benötigt. Dies ist die bis dahin beste bekannte Lösung: ‚best known thus far for the WK example’ [9.7].

Zusätzlich sind noch Ergebnisse gegeben, die Aufgabe (3) mit I3 mit B1–B22 und Aufgabe (4b) mit I3 mit B1–B22 entsprechen. Diese Ergebnisse werden noch dem besten Verfahren (TGB) aus [9.3]

gegenübergestellt. Als Zeitlimit wird bei B+BS generell 60 Sekunden (PC Pentium mit 800MHz) vorgegeben. Bessere Ergebnisse für dieses Planungsverfahren sind in [9.8] gegeben.

Im Folgenden werden die Ergebnisse für die Aufgaben (3) (Tabelle 9.3) und (4b) (Tabelle 9.5) mit I3 und den Bestellmengen B1–B22 für die Verfahren TGB und B+BS tabellarisch zusammengestellt.

Bei TGB wird weiterhin zwischen der ‚reinen’ Heuristik und der Kombination mit einem anschlie-ßenden Verbesserungsverfahrens unterschieden. Es existiert in der angegebenen Literatur nur ein Ergebnis zur Aufgabe (4) (Tabelle 9.7) mit I2 und der Bestellmenge B0.

Die Durchlaufzeit wird immer in Minuten angegeben. In den zitierten Veröffentlichungen wird eine andere Zeiteinheit gewählt. Diese entspricht 36 Minuten (z.B. 88 = 3168 Minuten).

Die benötigten Rechenzeiten sind in Sekunden angegeben und befinden sich in Tabelle 9.4 (Aufga-be (3)), Ta(Aufga-belle 9.6 (Aufga(Aufga-be (4b)) und Ta(Aufga-belle 9.7 (Aufga(Aufga-be (4)). Diese (Aufga-beziehen sich auf Simula-tionen auf einem PC Pentium mit 266MHz (TGB) und einem PC Pentium mit 800MHz (B+BS).

Für Aufgabe (3) sind die Rechenzeiten für TGB [9.6] entnommen. Für diese Aufgabe sind leider keine Rechenzeiten für B+BS gegeben. Die Rechenzeiten für das Verbesserungsverfahren für TGB Aufgabe (4b) sind ebenfalls nicht gegeben ([9.3]).

Zusätzlich zu den Ergebnissen der Verfahren sind teilweise Ergebnisse angegeben, für die bewiesen werden konnte, dass sie optimal sind ([9.3]). Sind keine optimalen Ergebnisse bekannt, so werden die bisher besten Ergebnisse aus [9.3] angegeben.

H VV H VV

B1 1008# 1080 1080 1080 B12 1296# 1512 1512 1440

B2 1080# 1224 1224 1260 B13 1404 1692 1620 1656

B3 1080# 1224 1224 1224 B14 1404 1728 1656 1728

B4 1008# 1260 1188 1188 B15 2268 2808 2592 2592

B5 1008# 1224 1080 1152 B16 1872 2088 1944 2232

B6 1260# 1476 1404 1512 B17 2124 2556 2268 2484

B7 1080# 1260 1188 1296 B18 2088 2592 2448 2628

B8 1080# 1296 1152 1296 B19 2916 3600 3600 3312

B9 1332# 1584 1512 1620 B20 2304 2520 2520 2664

B10 1368 1476 1476 1512 B21 2592 2952 2844 3060 B11 1620 1728 1692 1908 B22 2556 3168 2952 3168 Bestell

menge

beste

# opt

# opt