Rechnerpraktikum zu Grundlagen der Nichtlinearen Optimierung€¦ · Installation von IPOPT...
Transcript of Rechnerpraktikum zu Grundlagen der Nichtlinearen Optimierung€¦ · Installation von IPOPT...
Rechnerpraktikum zuGrundlagen der Nichtlinearen Optimierung
24.3.15-26.3.15
Moritz Keuthen, M.Sc.Sebastian Garreis, B.Sc.Technische Universitat Munchen
Garching, 26.3.2015
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Kursplan
• Dienstag, 24.03.2015
◦ Optimierungsverfahren in der unrestringierten Optimierung◦ Vergleich von Konvergenzverhalten einzelner Verfahren◦ Matlab
• Mittwoch, 25.3.2015
◦ Optimierungsverfahren in der restringierten Optimierung◦ Vorstellen von externer Losungs-Software◦ Modellieren und Losen mit AMPL◦ NEOS
• Donnerstag, 26.3.2015
◦ Innere-Punkte-Verfahren◦ Installation und Kompilieren großerer Optimierungspakete◦ AMPL und Ipopt
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P4 - Installation von AMPL
I AMPL & Solver fur das richtige Betriebssystem runterladen.
I Ausfuhrbare Dateien (ampl und die anderen Solver) werden nurgefunden, falls der Ordner in der PATH-Variable gelistet ist→ Umgebungsvariable PATH richtig setzen.
I Dateien ausfuhrbar machen mit chmod +x.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P4 - Installation von AMPL
I AMPL & Solver fur das richtige Betriebssystem runterladen.
I Ausfuhrbare Dateien (ampl und die anderen Solver) werden nurgefunden, falls der Ordner in der PATH-Variable gelistet ist→ Umgebungsvariable PATH richtig setzen.
I Dateien ausfuhrbar machen mit chmod +x.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P4 - Installation von AMPL
I AMPL & Solver fur das richtige Betriebssystem runterladen.
I Ausfuhrbare Dateien (ampl und die anderen Solver) werden nurgefunden, falls der Ordner in der PATH-Variable gelistet ist→ Umgebungsvariable PATH richtig setzen.
I Dateien ausfuhrbar machen mit chmod +x.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
I Grundlegende AMPL-Modellierungsstruktur verstehen.
I Plotten von Ergebnissen mit gnuplot.
I Unterschiedliche Loser testen.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
I Grundlegende AMPL-Modellierungsstruktur verstehen.
I Plotten von Ergebnissen mit gnuplot.
I Unterschiedliche Loser testen.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
I Grundlegende AMPL-Modellierungsstruktur verstehen.
I Plotten von Ergebnissen mit gnuplot.
I Unterschiedliche Loser testen.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
Ergebnisse mit verschiedenen Losern:
Solver f (x∗) it eval f eval ∇f time Verfahren
MINOS -159.23 180 414 413 0.0139s GRGLOQO -159.23 27 27 27 0.0096s IP
SNOPT -159.23 520 985 984 0.149s SQP
I Konvergenz ist abhangig vom Loser und vom Problem.
I Konvergenzgeschwindigkeit kann sehr unterschiedlich sein.
I Immer genau auf die Ausgabe der Loser achten!LOQO 6.06: optimal solution (27 iter, 27 eval)
MINOS 5.51: the superbasics limit (50) is too small.
I Fehlende Konvergenz kann ggf. mit Veranderung von Parameternbehoben werden (superbasics limit)
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
Ergebnisse mit verschiedenen Losern:
Solver f (x∗) it eval f eval ∇f time Verfahren
MINOS -159.23 180 414 413 0.0139s GRGLOQO -159.23 27 27 27 0.0096s IP
SNOPT -159.23 520 985 984 0.149s SQP
I Konvergenz ist abhangig vom Loser und vom Problem.
I Konvergenzgeschwindigkeit kann sehr unterschiedlich sein.
I Immer genau auf die Ausgabe der Loser achten!LOQO 6.06: optimal solution (27 iter, 27 eval)
MINOS 5.51: the superbasics limit (50) is too small.
I Fehlende Konvergenz kann ggf. mit Veranderung von Parameternbehoben werden (superbasics limit)
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
Ergebnisse mit verschiedenen Losern:
Solver f (x∗) it eval f eval ∇f time Verfahren
MINOS -159.23 180 414 413 0.0139s GRGLOQO -159.23 27 27 27 0.0096s IP
SNOPT -159.23 520 985 984 0.149s SQP
I Konvergenz ist abhangig vom Loser und vom Problem.
I Konvergenzgeschwindigkeit kann sehr unterschiedlich sein.
I Immer genau auf die Ausgabe der Loser achten!LOQO 6.06: optimal solution (27 iter, 27 eval)
MINOS 5.51: the superbasics limit (50) is too small.
I Fehlende Konvergenz kann ggf. mit Veranderung von Parameternbehoben werden (superbasics limit)
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
Ergebnisse mit verschiedenen Losern:
Solver f (x∗) it eval f eval ∇f time Verfahren
MINOS -159.23 180 414 413 0.0139s GRGLOQO -159.23 27 27 27 0.0096s IP
SNOPT -159.23 520 985 984 0.149s SQP
I Konvergenz ist abhangig vom Loser und vom Problem.
I Konvergenzgeschwindigkeit kann sehr unterschiedlich sein.
I Immer genau auf die Ausgabe der Loser achten!LOQO 6.06: optimal solution (27 iter, 27 eval)
MINOS 5.51: the superbasics limit (50) is too small.
I Fehlende Konvergenz kann ggf. mit Veranderung von Parameternbehoben werden (superbasics limit)
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P5 - Durchhangendes Seil
I Verschiedene Loser konnen trotz gleichem Startpunkt verschiedenelokale Minima generieren.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P6 - Optimales Design eines Gebaudes
I MINLP-Problem, also mit Ganzzahligkeitsrestriktionen.
I Losen von Probleminstanzen mit festem nh, nt :
→ Variablen- und Restriktions-Eliminierung von AMPL:Presolve eliminates 2 constraints and 2 variables.
→ Optimaler ZFW ist obere Schranke fur optimalen ZFW desUrsprungsproblems.
I Losen des relaxierten Optimierungsproblems:
→ Optimaler ZFW ist untere Schranke fur optimalen ZFW desUrsprungsproblems.
I Gute Startwerte sind wichtig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Problemstellung
I Problem der Form
minx∈Rn
f (x) u.d.N. g(x) ≤ 0
I Die KKT-Bedingungen lauten dann
∇xL(x , λ) = 0, g(x) ≤ 0
λTg(x) = 0 λ ≥ 0
mit der Lagrangefunktion L(x , λ) = f (x) + g(x)Tλ.
I Nach Einfuhrung von Schlupfvariablen z und Umschreiben derdritten Gleichung haben die Bedingungen die Form
F (x , λ, z) :=
∇xL(x , λ)g(x) + z
ΛTZe
= 0 (1)
(λ, z) ≥ 0 (2)
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Umschreibung des Problems
I Grundidee: abgewandeltes Newton-Verfahren auf die GleichungF (x , λ, z) = 0 anwenden mit (λk , zk) > 0 ∀k .
I Die dritten Komponente vom Gleichungsteil wird durch einen Termτke gestort wird, welcher im Laufe des Verfahrens gegen 0 geht(τk → 0 fur k →∞).
I Also: In jeder Iteration ein Gleichungssystem der Form ∇2xxL(x , λ) ∇g(x) 0∇g(x)T 0 I
0 Z Λ
∆x∆λ∆z
= −
∇xL(x , λ)g(x)
ΛTZe − τe
(3)
losen
I Schrittweite σ muss (λ+ σ∆λ, z + σ∆z) > 0 garantieren
I Um ein global konvergentes Verfahren fur allgemeineOptimierungsprobleme zu bekommen sind noch einige Erweiterungennotig.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Installation von IPOPT
I Installationsanleitung
I Externe Pakete
I configure
I make
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Los geht’s
Heute gemeinsames Ende um 14:00 Uhr.
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8 - Installation von Ipopt
I Kampf durch Installationsanleitung.
I Mischung aus ’Genau lesen!’ und ’Unwichtiges uberspringen’.
I Externe Pakete fur effizientes Losen der Teilprobleme.
I configure und make.
I Fur einige: Durchhalten!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8 - Installation von Ipopt
I Kampf durch Installationsanleitung.
I Mischung aus ’Genau lesen!’ und ’Unwichtiges uberspringen’.
I Externe Pakete fur effizientes Losen der Teilprobleme.
I configure und make.
I Fur einige: Durchhalten!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8 - Installation von Ipopt
I Kampf durch Installationsanleitung.
I Mischung aus ’Genau lesen!’ und ’Unwichtiges uberspringen’.
I Externe Pakete fur effizientes Losen der Teilprobleme.
I configure und make.
I Fur einige: Durchhalten!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8 - Installation von Ipopt
I Kampf durch Installationsanleitung.
I Mischung aus ’Genau lesen!’ und ’Unwichtiges uberspringen’.
I Externe Pakete fur effizientes Losen der Teilprobleme.
I configure und make.
I Fur einige: Durchhalten!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8 - Installation von Ipopt
I Kampf durch Installationsanleitung.
I Mischung aus ’Genau lesen!’ und ’Unwichtiges uberspringen’.
I Externe Pakete fur effizientes Losen der Teilprobleme.
I configure und make.
I Fur einige: Durchhalten!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8+P9 - Minimale Oberflache/Das Problem derFasserrampe
I Diskretisierung durch Triangulierung.
I IPOPT mit Schnittstelle AMPL
I IPOPT mit Schnittstelle C++
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8+P9 - Minimale Oberflache/Das Problem derFasserrampe
I Diskretisierung durch Triangulierung.
I IPOPT mit Schnittstelle AMPL
I IPOPT mit Schnittstelle C++
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
P8+P9 - Minimale Oberflache/Das Problem derFasserrampe
I Diskretisierung durch Triangulierung.
I IPOPT mit Schnittstelle AMPL
I IPOPT mit Schnittstelle C++
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Low rank Approximation
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Low rank Optimization
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Shape Optimization, Wellenbrecher
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Shape Optimization, Wellenbrecher
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Shape Optimization, Umstromtes Objekt
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Shape Optimization, Umstromtes Objekt
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Abschluss
I Danke fur Euer Interesse und Engagement!
I Bitte evaluiert uns!
Zusammenfassung Tag 2Innere-Punkte-VerfahrenInstallation von IPOPT
Zusammenfassung Tag 3
Abschluss
I Danke fur Euer Interesse und Engagement!
I Bitte evaluiert uns!