260 likes | 451 Views
Startaufstellung. Algorithmus für die Palettierung Ausarbeitung von Florian Pfeiffer Seminar: Containerumlade- und Stapelprobleme Universität Karlsruhe(TH) ANDOR * Institut für Anwendung des Operations Research Prof. Dr. Gerald Hammer Sommersemester 2004 Betreuer: Dipl. Math. Peer Giemsch.
E N D
Startaufstellung Algorithmus für die Palettierung Ausarbeitung von Florian Pfeiffer Seminar: Containerumlade- und Stapelprobleme Universität Karlsruhe(TH) ANDOR * Institut für Anwendung des Operations Research Prof. Dr. Gerald Hammer Sommersemester 2004 Betreuer: Dipl. Math. Peer Giemsch
Übersicht • Einführung • 1.1 Definitionen/Begriffe • 1.2 Abgrenzung • Vorüberlegungen • Algorithmus (Anhand eines Beispiels) • Lösungsgüte/Ausblick
Überlegungen Algorithmus Ausblick Einführung 1.1 Definitionen/Begriffe: Palettierung: Packen von Einheiten definierter Größe auf eine Palette Stauplan: Gefundene Anordnung auf der Grundfläche einer Palette Totraum: Nicht nutzbarer Platz, echt „verschwendeter“ Platz Freiraum: Vor Fertigstellung des Stauraums noch zur Verfügung stehender Platz
Überlegungen Algorithmus Ausblick Einführung 1.1 Definitionen: L/B: Länge/Breite der Palette l/b: Länge/Breite der zu packenden Einheit / Versandgebinde Ll: Einfache Anordnung: Die Palette wird in ihrer Länge L mit der alleinigen Ausrichtung der Einheiten in deren Länge l gepackt Lb : Einfache Anordnung: Die Palette wird in ihrer Länge L mit der alleinigen Ausrichtung der Einheiten in deren Breite b gepackt Ll+b : Gemischte Anordnung: Die Palette wird in ihrer Länge L mit der gemischten Ausrichtung der Einheiten in deren Breite b und deren Länge l gepackt Bl, Bb, Bl+b: entsprechend für die Breite B
Überlegungen Algorithmus Ausblick Einführung 1.2 Abgrenzung • Homogenes Problem • Massengüterproduktion, kongruente Einheiten • Rechenaufwand • 2-Dimensional • Breite und Länge • Ein Einlade- und Ausladezeitpunkt • Eine Höhenorientierung (Lage, Ebene) • Rechtecke • Häufigste Form bei Palette und den Einheiten • Orthogonalitätsbedingung • Unter Umständen keine optimale Lösung oder nur schlechte Lösung • Relevanz für Algorithmus Geometrie zu verpackende Einheiten: • mittleres L/l-Verhältnis; Versandgebinde • Rechenbarkeit, Stapelbarkeit, Beschädigung der Einheiten
Überlegungen Algorithmus Ausblick Einführung 1.2 Abgrenzung • Zielfunktion • Maximierung der gepackten Einheiten • Zurückführen anderer Zielfunktionen auf diese möglich • Unnütz verbrauchte Fläche in einem Stauplan als Maß der Güte des Stauplans • Stapelbarkeit • Mehrere Lösungen gleicher Güte • möglich • Drehen des Stauplans um 180° • Spiegeln des Stauplans möglich • Sonstiges • Kein Diebstahl • Keine Klimaeinflüsse • Keine Wertigkeit • Freie Drehbarkeit
Überlegungen Algorithmus Ausblick Einführung Motivation
Einführung Überlegungen Algorithmus Ausblick Suboptimale Lösungen Untersuchen aller möglichen Anordnungen in einer Richtung (hier: B) L B Gemischte Anordnung Einfache Anordnung
Einführung Überlegungen Algorithmus Ausblick Suboptimale Lösungen Beste suboptimale Lösung in der Richtung sei o.B.d.A. hier dargestellt: Rand kann nicht ausgefüllt werden Homogenes Problem, nur orthogonale Anordnungen Es passt c. p. keine weitere Einheit in den Totraum Normierung aller suboptimalen Lösungen um den (unnützen) Rand Entscheidungshilfe für die Güte der Lösung wird gegeben Normierte obere Schranke (theoretisch nutzbare Fläche sinkt)
Einführung Überlegungen Algorithmus Ausblick Optimalitätsbedingung Palette wird vollständig mit Einheiten bepackt (kein Totraum) Totraum ist kleiner als der Flächeninhalt einer (weiteren) Einheit Obere Schranke Eine erste obere Schranke ergibt sich aus der Optimalitätsbedingung (L*B)/(l*b) abgerundet ergibt die obere Schranke. Stauplan erfüllt Bedingung Optimale Lösung Modifizierte obere Schranke Werden die suboptimalen Lösungen normiert, so kann sich eine neue, modifizierte obere Schranke ergeben, die kleiner als die bisherige ist, in dem die Palette ebenfalls normiert wird. (homogenes Problem, Orthogonalitätsbedingung)
Einführung Überlegungen Algorithmus Ausblick Packung am Rand ist nicht schlechter als in der Mitte Packe die erste Einheit in eine Ecke der Palette Für gemischte Anordnungen/Startlösung: Lege möglichst die gleichen Ausrichtungen zusammen Für „Zähnemuster“ lässt sich ein äquivalenter Stauplan finden, der „normale“ Startlösung hat. „Zähnemuster“ lässt sich während dem Algorithmus kaum vermeiden Beim Packen: Totraum in der Mitte zulässig
Einführung Überlegungen Algorithmus Ausblick Untere Schranke „Intuitive Anordnung“ in Längsrichtung, in die Breite Maximale Packung mit Bl, Bb oder Ll, Lb wird getestet Im Beispiel: Max B {Bl; Bb} = Max B {16; 15} = 16
Einführung Überlegungen Algorithmus Ausblick Abbruchbedingungen 1. Stauplan erreicht den Wert der oberen Schranke 2. Untere Schranke erreicht den Wert der modifizierten oberen Schranke 3. (Summe eingeplante Einheiten + Freifläche/Grundfläche einer Einheit) < (als untere Schranke) Bedingungen der Suboptimalität Plane nur solche suboptimalen Lösungen ein, welche die Voraussetzung entsprechend ihrer jeweils gefundenen Anordnung auch einhalten können. Plane immer nur in einer Richtung ein (sonst neues Objekt)
Einführung Überlegungen Algorithmus Ausblick Idee des Algorithmus Die optimale Lösung beinhaltet mindestens eine suboptimale Lösung. Eine Belegung der jeweiligen suboptimalen Lösung mit den durch sie verursachten Strafkosten (Opportunitätskosten) gewährleistet dabei ein dynamisches Verhalten des Algorithmus. Die suboptimalen Lösungen werden in eine Schlange gestellt und sukzessive abgearbeitet Abarbeiten der einzelnen Lösungen erfolgt in Form von Objekten Alle suboptimalen Lösungen in einer Richtung bilden den möglichen Lösungsraum; sie werden so dicht wie möglich gepackt Verursacht eine Lösung einen Totraum, so wird ein modifiziertes Objekt erzeugt, welches a) auf dem bereits Eingeplanten aufbaut b) die suboptimale Lösung mit Strafkosten belegt und c) weitere Lösungen aus der anderen Richtung mit einbezieht.
Einführung Überlegungen Algorithmus Ausblick Beispiel : L = 17; l = 6; B = 16; b = 5 Bestimmen der oberen Schranke: (L*B) / (l*b) = 272 / 30 = 9, 10 obere Schranke ist 9
Einführung Überlegungen Algorithmus Ausblick Bestimmen der einfachen suboptimalen Lösungen: Lb: L – k*b, k € N Wert (der Fläche): l* Lb Ll : L – k*l, k € N Wert (der Fläche): b* Ll Entsprechend für B* (Intuitive) untere Schranke: 6
Einführung Überlegungen Algorithmus Ausblick Ll: 17 – 2*l = 5 Wert: 5*5 = 25 Lb: 17 – 3*b = 2 Wert: 6*2 = 12 Bl: 16 – 2*l = 4 Wert: 5*4 = 20 Bb: 16 – 3*b = 1 Wert: 6*1 = 6 Ur- Schlange: Bb(6), Lb(12), Bl(20), Ll(25)
Einführung Überlegungen Algorithmus Ausblick Untere Schranke / einfache Anordnung Aus der Ur- Schlange werden nun entsprechend der Wertigkeit die zusammengesetzten einfachen Lösungen generiert. Da hier Bb ganz oben steht, wird die Schlange für Objekt 1auf alle B* reduziert. Die hier ermittelte untere Schranke wird bereits vom Algorithmus generiert. Das erste Objekt wird also aus 0-Bb erzeugt. D. h.: 0 bislang gepackte Einheiten („leere Palette“), Bb ist Startlösung, es wird nur mit den B* geplant Schlange 1: Bb(6), Bl(20) Objekte - Stapel: 0-Bb, 0-Lb, 0-Bl, 0-Ll
Einführung Überlegungen Algorithmus Ausblick Untere Schranke / einfache Anordnung Objekt 1: Plane aus der reduzierten Schlange so lange bis keine weitere Einheit mehr gepackt werden kann. 8 Einheiten ist neue untere Schranke aber kleiner alsobere Schranke Erzeuge aus dem Stapel neues Objekt bis alle Startlösungen durchprobiert sind oder obere Schranke erreicht Objekt 1*
Einführung Überlegungen Algorithmus Ausblick Untere Schranke / einfache Anordnung Objekt 2: Es wird entsprechend der Schlange eine schlechtere Lösung gefunden Untere Schranke bleibt bei 8, die obere Schranke bei 9 Objekt 1* Objekt 2* Keine Verbesserung für Objekt 3* und Objekt 4*
Einführung Überlegungen Algorithmus Ausblick Gemischte Anordnung Bestimmen der gemischten suboptimalen Lösungen : Bl+b: B – kl * l – kb*b; kl , kb € N Wert: Min {l, b} * Bl+b Bl+b: 16 – l –2*b = 0 Wert: 5 * 0 = 0 Ll+b1: 17 – 2 *l – b = 0 Wert: 5 * 0 = 0 Ll+b2: 17 – l – 2*b = 1 Wert: 5 * 1 = 5 Neue Schlange: Bl+b(0), Ll+b1(0), Ll+b2(5), Bb(6), Lb(12), Bl(20), Ll(25) Beispiel Bl+b Stapel: 0-Bl+b(0), 0-Ll+b1(0), 0-Ll+b2(5),
Einführung Überlegungen Algorithmus Ausblick Gemischte Anordnung Bestimmen der gemischten suboptimalen Lösungen : Erzeugen des fünften Objekts aus dem Stapel (0-Bl+b) und einplanen der zweiten Reihe aus Schlange 5 (hier auch mit den B*): Objekt 5‘ Objekt 5‘‘ Es entsteht ein Totraum (Hier: 1 Flächeneinheit). Plane neue Objekte im Stapel ein und bestrafe die suboptimale Lösung mit Opportunitätskosten. Anschließend weiter im Algorithmus.
Einführung Überlegungen Algorithmus Ausblick Gemischte Anordnung Einplanen der neuen Objekte : Prüfe ob es für Objekt 5‘ weitere suboptimale Lösungen unter den B* und L* gibt, die Anordnung 5‘ als Startlösung zulassen. Plane für die gefundene/n Möglichkeit/en je ein neues Objekt im Stapel ein. Objekt 5‘.L Objekt 5‘.B Schlange 5‘.L: Ll+b1(0), Ll+b2(5), Lb(12), Ll(25) Schlange 5‘.B: Bl+b(0+1), Bb(6), Lb(12), Ll(25) Stapel noch abzuarbeiten: 0-Ll+b1(0), 5‘-Ll+b1(0), 0-Ll+b2(5), 5‘-Bb(6), Hier: Anordnung entsprechend 5‘ noch für alle B*, L* gültig; Startlösung 5‘.B: Bb(6)
Einführung Überlegungen Algorithmus Ausblick Gemischte Anordnung Bestimmen der suboptimalen Lösung, weiter mit Objekt 5‘‘: Objekt 5* Gepackte Einheiten: 9 = obere Schranke, Abbruchkriterium
Einführung Überlegungen Algorithmus Ausblick Lösungsgüte / Ausblick Eigenschaften des Algorithmus/Problems Vereinfachtes Problem, dennoch praxistauglich Im Beispiel entspricht die Lösung einem 7-Block-Verfahren, der Algorithmus ist aber nicht auf diese Blöcke beschränkt Modifiziertes Branch & Bound Bei den untersuchten Beispielen war die Lösungsgüte durchweg zufriedenstellend (war nicht schlechter). Beispiel: Dowsland: 38; Algorithmus: 39; Obere Schranke: 40
Einführung Überlegungen Algorithmus Ausblick Literatur Heinrich Exeler: Das homogene Packproblem in der betriebswirtschaftlichen Logistik, Physica-Verlag, Heidelberg, 1988 Dowsland, Dowsland: A Comparative Analysis of Heuristics for the Two-Dimensional Packing Problem, Paper for Euro VI Conference, July 1983 Vielen Dank für die Aufmerksamkeit – Fragen?