Optimale Steuerung 1 Kapitel 3: Mixed-Integer Lineare Optimierung Prof. Dr.-Ing. Pu Li Fachgebiet Simulation und Optimale Prozesse (SOP) Beispiel: Produktionsplanung (Mischung) 2 3 Definition: Ziel: Minimierung der Gesamtkosten unter den Restriktionen der Produktspezifikationen 4 Ein Mixed-Integer (gemischtganzzahliges) lineares Programmierungsproblem. 5 Beispiel: Design eines Reaktorsystems Zwei Typen von Reaktoren: F1 F2 Reaktor I Reaktor II Fragen: • Reaktor I oder Reaktor II? • Oder beide? • Wie groß? Die Superstruktur des Systems: F1 Reaktor I F Definition: wenn d. h. dann Produktmenge: F2 dann für Reaktor II 6 Logische Restriktion: mindestens ein Reaktor muss ausgewählt werden, d. h. Formulierung des Optimierungsproblems: Es gibt 3 Möglichkeiten (Aufzählung, Enumeration): Die Lösung ist trivial: Reaktor I wird ausgewählt mit 7 Beispiel: Ein Prozess ist zur Produktion eines Haupt- und Nebenprodukts auszulegen. Es gibt einen Rohrreaktor, einen Rührkesselreaktor und zwei Destillationskolonnen. Die Superstruktur ist wie folgt dargestellt: Die maximale Anzahl der Möglichkeiten: 216 = 65536 8 Modellierung 9 Beziehung zwischen logischer und algebraischer Darstellung für ganzzahlige Variablen • Konjunktiv „und“: Für das Produkt muss Reaktor A und Reaktor B benutzt werden (beides). • Disjunktiv „oder“: Für das Produkt kann Reaktor A oder Reaktor B benutzt werden (mindestens eins). • Implikation: Wenn Reaktor A benutzt wird, muss Kolonne B benutzt werden (wenn Reaktor A nicht benutzt wird, kann Kolonne B benutzt werden), d. h. dann d. h. • Äquivalenz: 10 Wenn Kolonne A benutzt wird, muss Kolonne B benutzt werden und wenn Kolonne B benutzt wird, muss Kolonne A benutzt werden. dann • „nur eins“ In Reaktor A und Reaktor B muss nur eins benutzt werden. • „mindestens eins“ • „maximal eins“ • „B wenn A“ d. h. wenn dann dann kann oder Formulierung logischer Beziehungen mit linearen Gleichungen oder Ungleichungen (1) logische Form schreiben (2) zur konjunktiven Form transformieren (3) lineare Gleichungen oder Ungleichungen formulieren Ein wichtiger Satz von DeMorgan: und Beispiel: Formulierung der folgenden Beziehung mit linearen Ungleichungen: Umformung der Implikation: von DeMorgan und 11 12 dann d. h. mit Integer-Variablen einführen: für bedeutet oder und oder Weil die originale Darstellung die Ungleichungen: entspricht, ergeben sich Modellierung von Mixed-Integer-Problemen 13 (auch für MINLP Probleme) • Aktivierung bzw. Deaktivierung einer Variablen z. B. ein Strom F zu oder nicht zu einem Prozess • Aktivierung bzw. Relaxation einer Gleichung z. B. für eine Gleichung damit , zwei Schlupfvariablen einführen: wobei U ein großer Wert ist. • Aktivierung bzw. Relaxation einer Ungleichung z. B. für eine Ungleichung , dann • Entweder-Oder-Restriktion z. B. entweder oder , dann , • Logische Restriktionen mit Implikation z. B. wenn , dann wobei untere bzw. obere Grenze auf untere bzw. obere Grenze auf ein kleiner positiver Wert d. h. wenn wenn dann dann und wenn dann wenn dann 14 15 Wir definieren: das bedeutet dann zusammenfassend d. h. 16 Beispiel: • Wenn , dann • Wenn , dann , gibt es eine zulässige Lösung. , gibt es keine zulässige Lösung. Dies bedeutet, es gibt vielleicht die Kombinationen der Integer-Variablen, die nicht zulässig sind. Die Lösung soll daher in dem zulässigen Bereich gesucht werden. Aber man erkennt vorher den zulässigen Bereich nicht. Mixed-Integer-Lineare Optimierung Problemformulierung: Beispiel: wobei 17 Problemzerlegung 18 Das originale Problem (P) wird zu Subproblemen zerlegt unter den Bedingungen: • Jede zulässige Lösung von (P) ist eine zulässige Lösung exakt eines Subproblems. • Eine zulässige Lösung irgendeines ist eine zulässige Lösung des (P). Eltern d. h. Nachkommen Die Zerlegungsmethode ist einmal eine Verzweigung einer IntegerVariablen zu 0 und 1. Nachkommen n-te Generation Nachkommen (n+1)-te Generation 19 Beim Beispiel: Die Variablen werden nacheinander verzweigt. Es wird mit einem Familienbaum dargestellt. Relaxation des Problems 20 Definition der Relaxation: Originalproblem (P) relaxiertes Problem (RP) Es gibt: Lösungen des (P) Lösungen des (RP) d. h. • Wenn (RP) keine Lösung hat, hat (P) keine Lösung. • Die Lösungen der beiden Probleme haben die Beziehung: es bedeutet, ist immer die untere Schranke des . • Wenn an einer Lösung des (RP) die -Variablen ganzzahlig sind, sind sie eine Lösung des (P). Die Methode der Relaxation ist der Ersatz der Integer-Variablen durch d. h. Lösung des (P): Lösung des (RP): -Variablen ganzzahlig -Variablen nicht unbedingt ganzzahlig 21 Ausloten (Fathoming) 22 Soll der betrachtete Knoten des Subproblems verzweigt) werden? deaktiviert (nicht weiter ein Subproblem oder ein Knoten • Wenn klar ist, dass es keine bessere als die bisher beste Lösung (Wert der Zielfunktion ) gibt. • Wenn eine optimale Lösung im zulässigen Bereich gefunden wurde. Drei Kriterien zum Ausloten (Deaktivierung): • Wenn das relaxierte Problem keine zulässige Lösung hat, hat keine zulässige Lösung und dann ist ausgelotet (deaktiviert). • Wenn ausgelotet. , wird die Lösung nicht verbessert, dann ist • Wenn an der Lösung des muss sie eine Lösung des die -Variablen ganzzahlig sind, sein und dann ist ausgelotet. Algorithmus „Branch-and-Bound“ 23 Step 1: Relaxation des Problems und Lösung mit LP (die untere Schranke) • Wenn an der Lösung die -Variablen ganzzahlig sind, STOP. • Sonst zwei neue Subprobleme durch Branch einer Variablen erzeugen (Verzweigung) Step 2: Deaktivierung eines Knotens, wenn • Alle Variablen sind ganzzahlig . • Das Subproblem nicht zulässig ist. • An der Lösung gilt: Step 3: Verzweigung eines Subproblems an einem aktiven Knoten • Tiefensuche (depth-first search) • Breitensuche (breadth-first search) Step 4: Traversierung (backtracking), wenn die Nachwuchsknoten deaktiviert sind Tiefensuche 24 Breitensuche Beispiel: Rucksack (Transport-Problem) Ziel: Maximaler Wert im Rucksack Frage: Welche Gegenstände sollen in den Rucksack? • Relaxation des Problems zu einem LP Problem Lösung: • Branch Lösung: und 25 26 • Branch und Lösung Lösung: • Branch und Lösung Lösung: nicht zulässig Baumdarstellung des Branch-and-Bound 27 Strukturoptimierung eines Trennprozesses 28 Feedstrom: 29 Zusammensetzung (Molfraktion): A 0.15 B 0.3 C 0.35 D 0.2 Ökonomische Daten und Wärmeleistungskoeffizienten: Kosten der Hilfsstoffe: Kühlwasser Dampf Analyse der Gesamtkosten einer Kolonne k • Investitionskosten (T€/a) • Betriebskosten (T€/a) • Kosten der Kühl- und Heizleistung (T€/a) wobei die Preise der Kühl- und Heizmittel (T€/kJ) Gesamtkosten einer Kolonne: Gesamtkosten der Superstruktur: Die Optimierungsvariablen: 30 Gleichungsnebenbedingungen: • Totalfeedstrom (kmol/h) • Zwischenstrom (BCD) • Zwischenstrom (ABC) • Zwischenstrom (AB) • Zwischenstrom (BC) 31 • Zwischenstrom (CD) • Wärmezufuhr bzw. Wärmeabfuhr Ungleichungsnebenbedingungen: • Beschränkung der Ströme Parameter: 32 Die optimale Lösung: Kosten: 3308 T€/a Die zweite optimale Lösung: Eine weitere Restriktion einführen: dann ist die Lösung: Kosten 3927 T€/a 33 34 Die dritte optimale Lösung: Eine weitere Restriktion einführen: dann ist die Lösung: Kosten 4102 T€/a Optimal-Molekular-Design für ein Polymer Gewünschte Eigenschaften: ρ Gruppen von chemischen Elementen: -CO-, -COO-, -O-, -CONH-, -CH2-, -CHOH-, -CHCIGruppenbeitragsmodell von Van Krevelen: 35 36 Parameter in den Korrelationen der Eigenschaften Problemformulierung: 37 Die maximale relative Abweichung: wobei Ziel der Optimierung (Zielfunktion): Entscheidungsvariablen: Beschränkungen: Weil , d. h. , also , dann 38 Es folgt Man definiert: dann Zusätzlich Also Die Beschränkungen von Wenn , dann muss Wenn , gilt : und . . Das Optimierungsproblem: 39 40 Die zehn besten Lösungen für optimales Polymerdesign