Technische Universität München Zentrum Mathematik Diskrete Optimierung: Fallstudien aus der Praxis. Das Cutting Stock-Problem

Ähnliche Dokumente
Spiele und Codes. Rafael Mechtel

18. Dynamisches Programmieren

Seminar Analysis und Geometrie Professor Dr. Martin Schmidt - Markus Knopf - Jörg Zentgraf. - Fixpunktsatz von Schauder -

3. Lineare Algebra (Teil 2)

nonparametrische Tests werden auch verteilungsfreie Tests genannt, da sie keine spezielle Verteilung der Daten in der Population voraussetzen

Wir betrachten in diesem Abschnitt Matrixspiele in der Maximierungsform, also endliche 2 Personen Nullsummenspiele der Gestalt

Aufgabe 8 (Gewinnmaximierung bei vollständiger Konkurrenz):

3.3 Lineare Abbildungen und Matrizen

Diskrete Mathematik 1 WS 2008/09

Methoden der innerbetrieblichen Leistungsverrechnung

Universität Karlsruhe (TH)

Nernstscher Verteilungssatz

Finanzwirtschaft. Kapitel 3: Simultane Investitions- und Finanzplanung. Lehrstuhl für Finanzwirtschaft - Universität Bremen 1

Konkave und Konvexe Funktionen

Gruppe. Lineare Block-Codes

Beim Wiegen von 50 Reispaketen ergaben sich folgende Gewichte X(in Gramm):

6.5. Rückgewinnung des Zeitvorgangs: Rolle der Pole und Nullstellen

Stochastische Prozesse

4. Musterlösung. Problem 1: Kreuzende Schnitte **

Der Satz von COOK (1971)

Die Zahl i phantastisch, praktisch, anschaulich

Kreditrisikomodellierung und Risikogewichte im Neuen Baseler Accord

Daten sind in Tabellenform gegeben durch die Eingabe von FORMELN können mit diesen Daten automatisierte Berechnungen durchgeführt werden.

wird auch Spannweite bzw. Variationsbreite genannt ist definiert als die Differenz zwischen dem größten und kleinsten Messwert einer Verteilung:

5. Gruppenübung zur Vorlesung. Höhere Mathematik 1. Wintersemester 2012/2013

Flußnetzwerke - Strukturbildung in der natürlichen Umwelt -

Versicherungstechnischer Umgang mit Risiko

Statistik und Wahrscheinlichkeit

binäre Suchbäume Informatik I 6. Kapitel binäre Suchbäume binäre Suchbäume Rainer Schrader 4. Juni 2008 O(n) im worst-case Wir haben bisher behandelt:

Klassische Gatter und Logikelemente. Seminarvortrag zu Ausgewählte Kapitel der Quantentheorie Quantenalgorithmen

FORMELSAMMLUNG STATISTIK (I)

Standardnormalverteilung / z-transformation

12 LK Ph / Gr Elektrische Leistung im Wechselstromkreis 1/ ω Additionstheorem: 2 sin 2 2

Fallstudie 4 Qualitätsregelkarten (SPC) und Versuchsplanung

50 Matrixnormen und Eigenwertabschätzungen

SIMULATION VON HYBRIDFAHRZEUGANTRIEBEN MIT

NSt. Der Wert für: x= +1 liegt, erkennbar an dem zugehörigen Funktionswert, der gesuchten Nullstelle näher.

Auswertung von Umfragen und Experimenten. Umgang mit Statistiken in Maturaarbeiten Realisierung der Auswertung mit Excel 07

6. Modelle mit binären abhängigen Variablen

Lösungen zum 3. Aufgabenblock

6 Wandtafeln. 6.3 Berechnung der Kräfte und des Schubflusses auf Wandtafeln Allgemeines

Free Riding in Joint Audits A Game-Theoretic Analysis

Netzsicherheit I, WS 2008/2009 Übung 3. Prof. Dr. Jörg Schwenk

Datenträger löschen und einrichten

ω 0 = Protokoll zu Versuch E6: Elektrische Resonanz

Für jeden reinen, ideal kristallisierten Stoff ist die Entropie am absoluten Nullpunkt gleich

"Zukunft der Arbeit" Arbeiten bis 70 - Utopie - oder bald Realität? Die Arbeitnehmer der Zukunft

Lehrstuhl für Empirische Wirtschaftsforschung und Ökonometrie Dr. Roland Füss Statistik II: Schließende Statistik SS 2007

Einführung in Origin 8 Pro

1 BWL 4 Tutorium V vom

Ionenselektive Elektroden (Potentiometrie)

Polygonalisierung einer Kugel. Verfahren für die Polygonalisierung einer Kugel. Eldar Sultanow, Universität Potsdam,

9 Phasengleichgewicht in heterogenen Mehrkomponentensystemen

Beschreibung des Zusammenhangs zweier metrischer Merkmale. Streudiagramme Korrelationskoeffizienten Regression

IT- und Fachwissen: Was zusammengehört, muss wieder zusammenwachsen.

Die Ausgangssituation Das Beispiel-Szenario... 14

Lineare Regression (1) - Einführung I -

Nullstellen Suchen und Optimierung

Was haben Schüler und Großbanken gemein?

Boost-Schaltwandler für Blitzgeräte

H I HEIZUNG I 1 GRUNDLAGEN 1.1 ANFORDERUNGEN. 1 GRUNDLAGEN 1.1 Anforderungen H 5

Bildverarbeitung Herbstsemester Bildspeicherung

Vorlesung 1. Prof. Dr. Klaus Röder Lehrstuhl für BWL, insb. Finanzdienstleistungen Universität Regensburg. Prof. Dr. Klaus Röder Folie 1

Übungen zu Algorithmen

Franzis Verlag, Poing ISBN Autor des Buches: Leonhard Stiny

1.1 Grundbegriffe und Grundgesetze 29

Angeln Sie sich Ihr Extra bei der Riester-Rente. Private Altersvorsorge FONDSGEBUNDENE RIESTER-RENTE

Steuerungsverfahren und ihre Datenstrukturen 09 - Netzplantechnik

Online Algorithmen. k-server randomisiert Teil II

Hydrosystemanalyse: Finite-Elemente-Methode (FEM)

Auswertung univariater Datenmengen - deskriptiv

Erwartungswert, Varianz, Standardabweichung

3.2 Die Kennzeichnung von Partikeln Partikelmerkmale

Funktionsgleichungen folgende Funktionsgleichungen aus der Vorlesung erhält. = e

Wahl auf Bäumen: FireWire

Die Executive/Assistant-Applikation an Ihrem OpenStage 60/80

Übung zur Vorlesung. Informationstheorie und Codierung

1 Definition und Grundbegriffe

Quant oder das Verwelken der Wertpapiere. Die Geburt der Finanzkrise aus dem Geist der angewandten Mathematik

tutorial N o 1a InDesign CS4 Layoutgestaltung Erste Schritte - Anlegen eines Dokumentes I a (Einfache Nutzung) Kompetenzstufe keine Voraussetzung

Physikalisches Anfängerpraktikum Teil 2 Versuch PII 33: Spezifische Wärmekapazität fester Körper Auswertung

1 Mehrdimensionale Analysis

Ich habe ein Beispiel ähnlich dem der Ansys-Issue [ansys_advantage_vol2_issue3.pdf] durchgeführt. Es stammt aus dem Dokument Rfatigue.pdf.

1.1 Das Prinzip von No Arbitrage

?? RUBRIK?? / 1 / Spezial

Kommentierte Linkliste

Itemanalyse und Itemkennwerte. Itemanalyse und Itemkennwerte. Itemanalyse und Itemkennwerte: Itemschwierigkeit P i

Einführung in die Finanzmathematik

Grundlagen der Technischen Informatik. 9. Übung

8. MARKOVKETTEN 127. Abbildung 8.1: Reduzible und periodische Markovkette. p ji IIP[X n 1 = j] = [(IIP[X n 1 = j]) j E P ] i. j=0

Temporäre Stilllegungsentscheidungen mittels stufenweiser E W U F W O R K I N G P A P E R

Musterklausur Wirtschaftsmathematik und Statistik. Zusatzstudium für Wirtschaftsingenieur

Wie eröffne ich als Bestandskunde ein Festgeld-Konto bei NIBC Direct?

Wie eröffne ich als Bestandskunde ein Festgeld-Konto bei NIBC Direct?

AUFGABEN ZUR INFORMATIONSTHEORIE

Klasse : Name1 : Name 2 : Datum : Nachweis des Hookeschen Gesetzes und Bestimmung der Federkonstanten

Technische Rahmenbedingungen Welche Mindestvoraussetzungen müssen erfüllt sein?

III. Theorie des Haushalts

Praktikum Physikalische Chemie I (C-2) Versuch Nr. 6

Transkript:

1 Problem Technsche Unverstät München Zentrum Mathematk Dskrete Optmerung: Fallstuden aus der Praxs Barbara Wlhelm Mchael Rtter Das Cuttng Stock-Problem Ene Paperfabrk produzert Paperrollen der Brete B. Für de Ausleferung an de Kunden müssen dese Rollen auf klenere Breten (z. B. A4, A3, Zetschrftenbögen etc.) geschntten werden (se werden aber weter als Rollen ausgelefert). De Paperfabrk betet de Breten b 1,..., b k an, de Anzahl der vorlegenden Bestellungen für de Brete b se jewels d (n Stück Rollen). Natürlch st de Paperfabrk daran nteressert, möglchst weng Abfall zu produzeren. We sollen de Paperrollen geschntten werden, um alle Bestellungen auslefern zu können, wenn möglchst wenge Paperrollen benutzt werden sollen? Wevele Rollen benötgt de Fabrk? Formuleren Se das Problem als ILP! Rollenbrete B bestellbare Breten b 1,..., b k bestellte Anzahl d 1,..., d k 2 Enfache Formulerung 2.1 Entschedungsvarablen 0, Rolle wrd ncht verwendet y = 1, Rolle wrd verwendet x (j) = Anzahl der Stücke der Brete b j, de aus Rolle geschntten werden Sete 1 von 6

2.2 Modell Se M ene Obergrenze für de Anzahl benötgter Paperrollen, z. B. M := k =1 d. 2.3 Dskusson M mn y =1 k x (j) b j y B für alle = 1,..., M j=1 M x (j) = d j für alle j = 1,..., k =1 y {0, 1} M x N km 0 Das Modell hat mehrere graverende Nachtele, am problematschsten dürfte de Symmetre sen: Jede Lösung entsprcht ener Anzahl von Schnttmustern, de sch natürlch belebg auf de Rollen vertelen lassen (be glechem Zelfunktonswert), es gbt also m schlmmsten Fall M! optmale Lösungen. Selbst für ene gut gewählte Obergrenze M st das ene enorm große Zahl, de bem Branch & Bound für erheblche Probleme sorgen wrd. Außerdem enthält das b j y B, de so etwas we bg M - Bedngungen snd. Ist B m Verglech zu den b groß, so muss man damt rechnen, dass dese Bedngungen für de LP-Relaxaton nur sehr schwache Unglechungen lefern, was de Lösung zusätzlch erschwert. ILP ene große Zahl von Bedngungen der Form k j=1 x (j) 3 Schnttmuster-Formulerung De Schnttmuster-Formulerung verwendet ene Lste aller möglchen Schnttmuster. Unter enem Schnttmuster verstehen wr ene Zerlegung ener kompletten Rolle n Telstücke. Dafür defneren wr ene Matrx A = ( a (j) ). De Spalte a (j) N k 0 der Matrx steht für das j-te Schnttmuster, der Entrag a (j) gbt an, we vele Stücke der Brete b m j-ten Schnttmuster enthalten snd (de Rehenfolge der Stücke spelt ja kene Rolle, en Schnttmuster st für uns also durch dese Anzahlen endeutg charaktersert). Natürlch glt für jedes Schnttmuster j de Unglechung k a (j) B. =1 De Matrx A hat also k Zelen und ene sehr, sehr, sehr, sehr, sehr große Anzahl an Spalten. 3.1 Entschedungsvarablen y j = Anzahl der Rollen, für de Schnttmuster j benutzt wrd Sete 2 von 6

3.2 Modell Se m de Anzahl möglcher Schnttmuster (also de Spaltenzahl der Matrx A). mn m y j j=1 m a (j) y j = d für alle = 1,..., k j=1 3.3 Dskusson y N m 0 Das Modell seht auf den ersten Blck deutlch enfacher aus als de zuvor betrachtete Formulerung, de dort angesprochenen Symmetreprobleme werden vermeden. Es gbt aber enen graverenden Nachtel: De Anzahl der Varablen entsprcht der Anzahl möglcher Schnttmuster, und de st enorm groß. Außerdem müsste man (um de Matrx A zu kennen) alle möglchen Schnttmuster bestmmen we das gehen soll, st a pror auch ncht klar und scher mt sehr großem Aufwand verbunden. Allen das Abspechern der Matrx A dürfte exorbtant vel Specherplatz benötgen! All dese Probleme haben noch ncht enmal etwas mt der Ganzzahlgket zu tun, schon de LP-Relaxaton des Modells st resgn. Damt schedet das Schnttmuster-Modell egentlch für de praktsche Anwendung aus. Es gbt aber ene Lösung für das angesprochene Problem de sogenannte Column Generaton! 4 Column Generaton Im Schnttmuster-Modell haben wr ene LP-Relaxaton n dualer Form vorlegen: mn 1 T y Ay = d y 0, y R m Da wr drekt n der dualen Form arbeten, schreben wr glech A R k m statt A T. De Matrx A hat also k Zelen, m k Spalten und vollen Rang k (das unterstellen wr enfach, sonst führt man vorher geegnete Reduktonen durch). Problematsch: sehr hohe Spaltenzahl von A (und damt sehr hohe Anzahl dualer Varablen) ncht alle Spalten von A können gespechert werden (bzw. es sollen gar ncht alle Spalten explzt ausgerechnet werden, es gbt nur ene mplzte Beschrebung der Spalten) Der Smplex-Algorthmus benutzt m Dualen aber gar ncht alle Spalten der Matrx (so we er m Prmalen ncht alle Zelen benutzt). Es wrd ene Bass B {1,..., m} gewählt, so dass A B y B = d (A B steht her für de Telmatrx von A, de aus den Spalten a (j) mt j B besteht also ncht we m Prmalen ene Telmatrx der Zelen!) und y N = 0 sowe y 0 glt. Wr wssen berets, dass n ener Basslösung nur de dualen Bassvarablen y B postve Werte annehmen können, während für de Nchtbassvarablen glt, dass y N = 0. De Spalten von A, de zu Indzes n N gehören, spelen also gar kene Rolle für de aktuelle Basslösung, nsbesondere müssen wr de Spalten ncht kennen oder spechern. Sete 3 von 6

4.1 Der duale Smplex-Algorthmus En Smplexschrtt m Dualen läuft ähnlch ab we m Prmalen: Wrd n prmaler Form ene Nebenbedngung aus der Bass entfernt und ene andere n de Bass hnengetauscht, so entfernt man m Dualen ene Varable aus der Bass und nmmt dafür ene Nchtbassvarable neu n de Bass auf. De Auswahl der Nchtbassvarable muss dabe (analog zum prmalen Smplex) so geschehen, dass der Tausch proftabel st (geometrsch: ene Verbesserungskante). Im Detal: Se B ene Bass und N := {1,..., m} \ B de Nchtbass. Dann lässt sch de j-te Spalte a (j) der Matrx A als Lnearkombnaton der Bassspalten darstellen, d. h., es gbt für jedes j N Koeffzenten { λ (j) : B } mt a (j) = λ (j) a (). B Das kann man folgendermaßen nterpreteren: Erhöht man de Varable y j um ene Enhet, so muss man dafür je λ (j) Enheten von den Bassvarablen y abzehen, um weter ene Lösung zu erhalten, für de Ay = d glt. Für so enen Erhöhungsschrtt muss daneben auch weterhn y 0 gelten, dese Bedngung bestmmt also, we stark y j erhöht werden kann (und welche Bassvarable m Tausch gegen y j de Bass verlassen wrd). Außerdem wollen wr natürlch nur Austausschrtte vornehmen, de ene bessere Lösung lefern. Ene Erhöhung von y j um ene Enhet verändert de Zelfunkton um 1 λ (j), B das Hnenpvoteren von y j st also dann vortelhaft, wenn deser Term negatv st, d. h., 1 λ (j) < 0. B 4.2 Prcng Nach den Ausführungen oben müssten wr n jedem dualen Smplex-Schrtt jewels 1 B λ (j) für alle j N berechnen. Mt a (j) = B λ (j) a () = A B λ (j) ergbt sch λ (j) = A 1 B a (j), also suchen wr en j N, das de reduzerten Kosten ˆb(j) := 1 1 T ( A 1 B a (j)) mnmert. Ist das Mnmum negatv, so haben wr enen passenden Pvotschrtt gefunden (sonst st das aktuelle y berets optmal). Das Problem dabe: Wr kennen de a (j) ja gar ncht alle, außerdem snd es sehr vele. En enfaches Ausrechnen der reduzerten Kosten für alle Nchtbasselemente (we man es normalerwese machen würde, vgl. prmaler Smplex) schedet also aus, wr brauchen ene andere Methode, um ene geegnete Nchtbassvarable zu fnden. Desen Schrtt bezechnet man auch als Prcng. Sete 4 von 6

Betrachten wr das Problem mal etwas genauer: mn j N max j N max j N 1 ( 1T A 1 ( ) 1 T A 1 } B {{ } =:v T vt a (j) B a (j)) Den Vektor v können wr dabe aus der aktuellen Bass berechnen, de a (j) haben wr mmer noch ncht n der Hand. Es gbt aber ene mplzte Beschrebung deser Vektoren. Wr ernnern uns: a (j) steht für en Schnttmuster, d. h. für enen Vektor a (j) N k 0, der k =1 b a (j) B erfüllt. Da jeder solche Vektor ene Nchtbassspalte von A sen kann, müssen wr also nur folgendes Problem lösen: max v T a (j) k =1 b a (j) a (j) N k 0 Das st aber en Knapsack-Problem! Im Untersched zum klassschen Knapsack darf her jeder Gegenstand auch mehrfach engepackt werden, de bekannten Algorthmen (z. B. dynamsche Optmerung) lassen sch aber enfach auf desen Fall verallgemenern (überlegen Se mal, we das geht!). Deses Problem können wr also lösen, ohne alle Schnttmuster explzt aufzählen zu müssen! Dann blebt nur noch zu prüfen, ob de Lösung enen Wert größer als 1 bestzt, denn nur n desem Fall st der Basstausch snnvoll (wel nur dann de reduzerten Kosten negatv snd). Wenn wr also ene Lösung mt Zelfunktonswert > 1 gefunden haben, tauschen wr de zugehörge y-varable n de Bass hnen und führen den zugehörgen Smplex-Schrtt aus. Es kann übrgens ncht passeren, dass wr als Optmallösung versehentlch ene Bassvarable fnden (es se denn, de Lösung wäre schon optmal), da de reduzerten Kosten aller Bassvarablen mmer 0 betragen (das entspräche also ener Knapsack-Lösung mt Zelfunktonswert 1). 4.3 Allgemene Anwendung Das beschrebene Column Generaton-Verfahren lässt sch natürlch ähnlch auch für vele andere schwere Optmerungsprobleme durchführen, be denen uns sehr vele Varablen das Leben schwer machen. Voraussetzung st dabe mmer, dass wr n der Lage snd, den Prcng-Schrtt effzent durchzuführen. Häufg stößt man dabe auf Probleme, für de polynomelle oder (we her) pseudopolynomelle Algorthmen bekannt snd. Fndet man nchts derartges, kann man sch mt ener Prcng-Heurstk behelfen. Man muss ja ncht unbedngt de Nchtbassvarable mt den gerngsten reduzerten Kosten fnden, es genügt, wenn dese negatv snd. Be ener Heurstk kann es natürlch auch passeren, dass kene entsprechende Nchtbassvarable gefunden wrd, obwohl ene exstert n dem Fall würde man enen möglcherwese proftablen Smplex-Schrtt ncht mehr durchführen und errecht so auch ncht unbedngt das Optmum des Ausgangsproblems. De Grundprobleme der Heurstk übertragen sch also n gewssem Maße auf das Optmerungsproblem, auch wenn de Heurstk nur als Prcng-Verfahren (j) a B Sete 5 von 6

engesetzt wrd. Column Generaton st en Ansatz, der n rener Form nur für LP-Probleme geegnet st. Für de Lösung enes ILP verwendet man Column Generaton daher häufg n Kombnaton mt den bekannten ILP-Verfahren we Branch & Bound (man sprcht von Branch & Prce- Methoden) oder Branch & Bound und Schnttebenen-Verfahren (sogenannte Branch & Cut & Prce-Methoden). Referenzen [He07] [PS98] Susanne Hepcke. Embeddng Optmzaton Algorthms. Techn. Ber. Dash Optmzaton, 2007. url: http://www.dashoptmzaton.com/home/downloads/pdf/ embed.pdf. Chrstos H. Papadmtrou und Kenneth Stegltz. Combnatoral optmzaton: Algorthms and complexty. Corrected reprnt of the 1982 orgnal. Dover Publcatons, Inc., Mneola, NY, 1998. Sete 6 von 6