41542/ 42012 - Reihenfolgeplanung – Branch and Bound Seite 1 Problemformulierung Unterscheidung zwischen Problemen der Reihenfertigung (Flow-Shop-Probleme ) und der Werkstattfertigung (Job-Shop-Probleme). Die Werkstattfertigung unterscheidet sich von der Fließfertigung, dass der Fluss der Werkstücke nicht gleichgerichtet ist, d.h. die Maschinenfolgen aller Aufträge nicht identisch sind. Ein Ablaufplan ist dann zulässig, wenn bei Einhaltung der Maschinenfolgen der Aufträge keine zwei Operationen jemals gleichzeitig auf derselben Maschine stattfinden. Ein Branch and Bound Verfahren zur Lösung von allgemeinen Flow-Shop-Problemen Berechnen eines Branch and Bound Algorithmus mit M = 3 Maschinen Verfahren nach Ignall und Schrage S. 39 Für eine gegebene partielle Auftragsfolge gilt: t1 der späteste Fertigstellungszeitpunkt für die Aufträge in auf Maschine M1 t2 der späteste Fertigstellungszeitpunkt für die Aufträge in auf Maschine M2 t3 der späteste Fertigstellungszeitpunkt für die Aufträge in auf Maschine M3 Untere Schranke (bound) der Bearbeitungsspanne: für Maschine M1: s 1 t 1 p j1 min {p j2 p j3 } min. Summe; pj1,2,3 ist Zeilensumme x j für Maschine M2: s 2 t 2 p j2 min {p j3 } (Zeit Maschine), ohne Zeitanteil pjx s 3 t 3 p j3 für in t berücksichtigter Auftrag x j für Maschine M3: x j x j x j Untere Schranke zur minimalen Zykluszeit : s = max { s1 , s2 , s3 } Branch and Boud Verfahren von Ignall und Schrage Schritt 1: Aufspalten des Anfangsknotens des Verzweigungsbaumes entsprechend des zuerst zu bearbeitenden Auftrags in alternativ partielle Auftragsfolge Schritt 2: Berechnen der Schranken für die neu entstehenden Knoten Schritt 3: Zur weiteren Verzweigung - Erzeugung partieller Auftragsfolgen - wählt man jeweils den im Verzweigungsbaum befindlichen Knoten mit dem niedrigsten Bound aus und wiederholt Schritt 2 Schritt 4: Das Verfahren endet, wenn ein Endknoten in der letzten Zeile des Verzweigungsbaums (vollständige Auftragsfolge) erreicht wird, dessen Bound nicht größer ist als der niedrigste Bound aller im Verzweigungsbaum übrigbleibenden Knoten, die noch nicht weiter aufgespalten worden bzw. nicht mehr weiter aufspaltbar sind. mit diesen Endknoten ist eine optimale Auftragsfolge erreicht. Beispiel KE S. 43 Melanie Mothes/ Rolf Baumanns WS 08/09 Seite 1 41542/ 42012 - Reihenfolgeplanung – Branch and Bound Masch.m Auftr.j A1 A2 A3 X1 3 4 10 X2 11 1 5 X3 7 9 13 Seite 2 X4 10 12 2 Knoten K1 Zunächst die Ermittlung der t-Werte t1 = p11 = 3 t2 = p11 + p12 = 3 + 4 = 7 t3 = p11 + p12 + p13 = 3 + 4 + 10 = 17 Dann die Ermittlung der s-Werte (Schrankenwerte) Exkurs : Was sind die Schranken ? In unserem Beispiel fragen wir nach der optimalen Reihenfolge von 4 Aufträgen auf 3 Fertigungsstufen (X1 ; X2 ; X3) Darstellung der Reihenfolgemöglichkeiten 0 12 123 124 1234 13 14 132 134 142 143 1243 1324 3 nach 4 32 34 321 324 341 342 2 1 1342 1423 1432 21 213 214 2134 23 24 231 234 241 243 2143 2314 2341 2413 2431 31 312 314 3124 3142 3214 3241 3412 3421 Jeder Knoten stellt eine Möglichkeit dar und wir ermitteln mit dem Maximalwert aus dem jeweiligen s1, s2, s3 die Zykluszeit der entsprechenden Möglichkeit. Die auf der 1. Seite stehende Formel für die s-Werte (Schrankenwerte) verbal ausgedrückt : Schranken = Wert t aus Lösungstabelle + Rest der Zeile + min. Spaltensumme unter dem Rest der Zeile untere Schranken für Knoten K11 s1 = t1 + pj1 + min { pj2 + pj3 } = 3 + ( 11 + 7 + 10 ) + min [(1+5) ; (9+13) ; (12+2)] = 37 s2 = t2 + pj2 + min { pj3 } = 7 + ( 1 + 9 + 12 ) + min [5 ; 13 ; 2] = 31 s3 = t3 + pj3 = 17 + (5 + 13 + 2 ) = 37 S = max {s1 ; s2 ; s3} = 37 Melanie Mothes/ Rolf Baumanns WS 08/09 Seite 2 41542/ 42012 - Reihenfolgeplanung – Branch and Bound Seite 3 s1 = Bearbeitungszeit der Auftragsfolge auf 1. Maschine + Bearbeitungszeit der anderen Aufträge auf der 1. Maschine + min. Stillstandszeit der 1.Maschine bis alle Aufträge auf 3. Maschine fertig sind. s2 = Bearbeitungszeit der Auftragsfolge auf 2. Maschine + Bearbeitungszeit der anderen Aufträge auf der 2. Maschine + min. Stillstandszeit der 2.Maschine bis alle Aufträge auf 3. Maschine fertig sind. s3 = Bearbeitungszeit der Auftragsfolge auf 3. Maschine + Bearbeitungszeit der anderen Aufträge auf der 3. Maschine. Maximalwert dieser drei s ergibt die min. Zykluszeit dieser Maschinenfolge Knoten K212 Ab jetzt muss t1, t2, t3 mit Balkendiagramm ermittelt werden/oder rechnen ?? längerer Weg ! 3 M1 11 4 M2 3 1 10 4 5 3 11 4 1 10 5 11 1 M3 Beim Rechnen die Spalten so sortieren wie die A-Werte sind Wert t aus Endtabelle + Rest der Zeile + min Spalte unter dem Rest der Zeile t1=3+11=14 t2= max (3+4+1);(3+11+1)=15 t3= max (3+4+10+5);(3+11+1+5)=22 s1 = t1 + pj1 + min {pj2 + pj3 }= 14 + (7 + 10 ) + min [(9+13) ; (12+2)] = 45 s2 = t2 + pj2 + min {pj3}= 15 + (9 + 12 ) + min [13 ; 2] = 38 s3 = t3 + pj3 = 22 + (13 + 2) = 37 S = max {s1 ; s2 ; s3 } = 45 Knoten K3132 Rechenweg wie vorher bei A1, A3 + A2 A1 A3 A2 A1 t1= 3+7+11 = 21 t2 = max 3 7 11 3 3+7+11+1 = 22 3+7+9+1 = 20 4 9 1 4 3+4+9+1 = 17 t3= max 10 3+7+11+1+5 = 27 3+7+9+1+5 = 25 3+7+9+13+5 = 37 3+4+9+1+5 = 22 immer höchsten Wert nehmen 3+4+9+13+5 = 34 3+4+10+13+5 = 35 Melanie Mothes/ Rolf Baumanns WS 08/09 A3 A2 7 11 9 1 13 5 Seite 3 41542/ 42012 - Reihenfolgeplanung – Branch and Bound Seite 4 Dann die s-Werte: Wert t aus Endtabelle + Rest der Zeile + min Spalte unter dem Rest der Zeile s1 = t1 + pj1 + min {pj2 + pj3 }= 21 + 10 + min [12+2] = 45 s2 = t2 + pj2 + min {pj3}= 22 + 12 + min [ 2] = 36 s3 = t3 + pj3 = 37 + 2 = 39 S = max {s1 ; s2 ; s3 } = 45 Knoten K3134 Schema: A1, A3 + A4 t1 = 3+7+10 = 20 t2 = max 3+7+10+12 = 32 3+7+9+12 = 31 3+4+9+12 = 28 t3= max 3+7+10+12+2 = 34 3+7+9+12+2 = 33 3+7+9+13+2 = 34 3+4+9+12+2 = 30 3+4+9+13+3 = 31 3+4+10+13+2 = 32 1-2-3 1 2 3 1-2-3-6 1-2-5-6 1-4-5-6 1 2 3 4 5 6 1-2-3-6-9 1-2-5-6-9 1-2-5-8-9 1-4-5-6-9 1-4-5-8-9 1-4-7-8-9 1 2 3 4 5 6 7 8 9 Dann auch wieder die s-Werte s1 = t1 + pj1 + min {pj2 + pj3 }= 20 + 11 + min [1+5] = 37 s2 = t2 + pj2 + min {pj3}= 32 + 1 + min [ 5] = 38 s3 = t3 + pj3 = 34 + 5 = 39 S = max {s1 ; s2 ; s3 } = 39 Nun eine Darstellung, wenn alle Knoten (rechts fehlt der 4. aus Platzgründen) ausgerechnet werden würden: 0 45 37 45 45 1234 58 39 45 1243 1324 39 45 45 53 45 52 1342 1423 1432 2134 Melanie Mothes/ Rolf Baumanns 58 46 52 52 2143 2314 54 60 65 2341 2413 2431 WS 08/09 46 58 46 3124 46 46 46 3142 3214 54 46 48 46 3241 3412 3421 Seite 4 41542/ 42012 - Reihenfolgeplanung – Branch and Bound Seite 5 Lösungstableau: Partielle Auftragsfolge X1 X2 X3 X4 X1, X2 X1, X3 X1, X4 X1, X3, X2 X1, X3, X4 ( t1, t2, t3 ) (3, 7, 17) (11, 12, 17) (7, 16, 29) (10, 22, 24) (14, 15, 22) (10, 19, 32) (13, 25, 27) (21, 22, 37) (20, 32, 34) (s1 , s2 , s3) (37, 31, 37) (45, 39, 42) (37, 35, 46) (37, 41, 52) (45, 38, 37) (37, 34, 39) (37, 40, 45) (45, 36, 39) (37, 38, 39) s 37 45 46 52 45 39 45 45 39 Optimale Auftragsreihenfolge: X1 , X3 , X4 , X2 Melanie Mothes/ Rolf Baumanns WS 08/09 Seite 5
© Copyright 2025 ExpyDoc