Optimierung für Nichtmathematiker Prof. Dr. R. Herzog WS2010/11 1/1 1 Problemstellung 2 Klassifikation Inhaltsübersicht 1Problemstellung und Grundbegriffe 2Klassifikation von Optimierungsaufgaben Vorlesung 2 I Einführung und Motivation 2 / 61 1 Problemstellung 2 Klassifikation Überblick über spezielle Klassen von Optimierungsproblemen Jedes Verfahren ist zugeschnitten auf eine bestimmte Problemklasse. Diese unterscheiden sich nach • den Eigenschaften der Funktionen f , gi , hi • den Eigenschaften der Grundmenge Ω • der Form, in der die Problemdaten gegeben sind • den Ansprüchen an die Lösung (lokal/global/multikriteriell). Verfahren/Löser für viele wichtige Problemklassen gibt es auf dem NEOS Server for Optimization Vorlesung 2 I Einführung und Motivation 3 / 61 1 Problemstellung 2 Klassifikation f (x) hi (x) = 0 i ∈ E gi (x) ≤ 0 i ∈ I x ∈Ω „hinreichend glatt“, C 1 (Rn ) oder C 2 (Rn ), d.h., mindestens einmal oder zweimal stetig differenzierbar, endliche Mengen (unendlich: „Semiinfinite Optimierung“) falls E = I = ∅: freie/unrestringierte Optimierung sonst: restringierte Optimierung oder Opt. mit Nebenbed. (meist) Nichtlineare Optimierung (NonLinear Programming) f , gi , hi E und I Ω = Rn Vorlesung 2 Minimiere unter I Einführung und Motivation 4 / 61 1 Problemstellung 2 Klassifikation f (x) hi (x) = 0 i ∈ E gi (x) ≤ 0 i ∈ I x ∈Ω „hinreichend glatt“, C 1 (Rn ) oder C 2 (Rn ), d.h., mindestens einmal oder zweimal stetig differenzierbar, endliche Mengen (unendlich: „Semiinfinite Optimierung“) falls E = I = ∅: freie/unrestringierte Optimierung sonst: restringierte Optimierung oder Opt. mit Nebenbed. (meist) Nichtlineare Optimierung (NonLinear Programming) f , gi , hi E und I Ω = Rn Ziel: Anwendung: Verfahren: Input: Größe : Vorlesung 2 Minimiere unter lokales Optimum (aber oft schon Zulässigkeit schwer!) (nichtlineare) Parameterschätzung, Optimalsteuerung, Shape Optimization, Lösung nichtlinearer Gleichungssysteme, . . . Newton, Quasi-Newton, . . . (gute lokale Konvergenz) Line-Search, Trust-Region, CG, . . . (lokale Suche) Unterroutinen für Funktionswert, Gradient, (Hessematrix) einige 100 bis einige 1000 Variablen (mehr bei spez. Struktur) I Einführung und Motivation 5 / 61 1 Problemstellung 2 Klassifikation Konvexe Optimierung (Convex Optimization) f , gi Ax = b I C Vorlesung 2 Minimiere unter f (x) Ax = b gi (x) ≤ 0 x ∈C i ∈I konvexe Funktionen nur lineare Gleichungsnebenbedingungen! falls f , gi glatt → smooth convex opt. falls f , gi nicht notw. diffb. → nonsmooth convex opt. endliche Menge „einfache“ konvexe Menge (Box, ganz Rn , . . . ) I Einführung und Motivation 6 / 61 1 Problemstellung 2 Klassifikation Konvexe Optimierung (Convex Optimization) f , gi Ax = b I C Ziel: Anwendung: Verfahren: Input: Größe : Vorlesung 2 Minimiere unter f (x) Ax = b gi (x) ≤ 0 x ∈C i ∈I konvexe Funktionen nur lineare Gleichungsnebenbedingungen! falls f , gi glatt → smooth convex opt. falls f , gi nicht notw. diffb. → nonsmooth convex opt. endliche Menge „einfache“ konvexe Menge (Box, ganz Rn , . . . ) globales Optimum Portfolio Design, Experimental Design, Optimalsteuerung, Signal Processing, Berechnung von Schranken für nichtlineare Probleme, . . . smooth: Newton, Quasi-Newton, . . . nonsmooth: Subgradienten-, Bündel-Verfahren Unterroutinen für Funktionswert, (Sub-)Gradient, (Hessematrix) einige 100 bis einige 10000 Var. (mehr bei spez. Struktur) I Einführung und Motivation 7 / 61 1 Problemstellung 2 Klassifikation Konvexe Opt. mit Struktur (Structured Convex Opt.) Minimiere unter q(x) Ax = b x ∈K q(·) lineare (affine) oder konvex-quadratische Zielfunktion q(x) = c T x (+ 21 x T Q x mit Q symm. positiv semidefinit) Ax = b lineare Gleichungs- oder auch Ungleichungsnebenbedingungen K konvexe Kegel spezieller Struktur • q linear, K = Rn+ : Lineare Opt. (Linear Programming) • q linear, K = Qn+ : Second Order Cone Programming (SOCP) • q linear, K = S+n : Semidefinite Opt. (SemiDefnite Pogramming.) • q quadrat., K = Rn+ : (Konvexe) Quadratische Opt. (QP) Vorlesung 2 I Einführung und Motivation 8 / 61 1 Problemstellung 2 Klassifikation Konvexe Opt. mit Struktur (Structured Convex Opt.) Minimiere unter q(x) Ax = b x ∈K q(·) lineare (affine) oder konvex-quadratische Zielfunktion q(x) = c T x (+ 21 x T Q x mit Q symm. positiv semidefinit) Ax = b lineare Gleichungs- oder auch Ungleichungsnebenbedingungen K konvexe Kegel spezieller Struktur • q linear, K = Rn+ : Lineare Opt. (Linear Programming) • q linear, K = Qn+ : Second Order Cone Programming (SOCP) • q linear, K = S+n : Semidefinite Opt. (SemiDefnite Pogramming.) • q quadrat., K = Rn+ : (Konvexe) Quadratische Opt. (QP) Ziel: globales Optimum in „kurzer“ Zeit Anwendung: Portfolio Design, Experimental Design, Optimalsteuerung, Signal Processing, Berechnung von Schranken für ganzz. Probleme, . . . Verfahren: LP, SOCP, SDP, QP: Innere-Punkte-Verf. (mit Newton) LP: Simplex Input: Koeffizienten der Matrizen und Vektoren (evtl. Kegeltyp) Größe : einige 1000 bis einige Millionen Variablen Vorlesung 2 I Einführung und Motivation 9 / 61 1 Problemstellung 2 Klassifikation Ganzzahlige Optimierung (Integer Programming) cT x Ax ≤ b x ∈ Zn Vorlesung 2 Minimiere unter cT x Ax ≤ b x ∈ Zn lineare Zielfunktion lineare Gleichungs- oder auch Ungleichungsnebenbedingungen nur ganzzahlige Lösungen! verwandte Varianten: Binary Integer P.: x ∈ {0, 1}n (≈ kombinatorische Opt.) Mixed Integer P.: x ∈ Rn1 × Zn2 Mixed Integer NonLinear P.: f , gi , hi nichtlinear I Einführung und Motivation 10 / 61 1 Problemstellung 2 Klassifikation Ganzzahlige Optimierung (Integer Programming) cT x Ax ≤ b x ∈ Zn Ziel: Anwendung: Verfahren: Input: Größe : Vorlesung 2 Minimiere unter cT x Ax ≤ b x ∈ Zn lineare Zielfunktion lineare Gleichungs- oder auch Ungleichungsnebenbedingungen nur ganzzahlige Lösungen! verwandte Varianten: Binary Integer P.: x ∈ {0, 1}n (≈ kombinatorische Opt.) Mixed Integer P.: x ∈ Rn1 × Zn2 Mixed Integer NonLinear P.: f , gi , hi nichtlinear sehr problemabhängig (meist NP-schwer), „gute“ Näherungslösung mit Gütegarantie Probleme mit Entscheidungskomponenten, z.B. Flüsse in Netzwerken, Zuweisungs-, Transport-, Standortprobleme, VLSI-Design, Basisauswahl, . . . konvexe/lineare Relaxation, lokale Suche/Rundungsheuristiken, exakte Lösung durch „Branch and Bound“ (effiz. Enumerieren), für sehr spezielle Probleme: exakte Algorithmen von Koeffizienten der Matrizen bis hin zu strukturnutzenden Zusatzroutinen extrem problemabhängig, von unter 100 bis zu Millionen I Einführung und Motivation 11 / 61 1 Problemstellung 2 Klassifikation f (x) hi (x) = 0 i ∈ E gi (x) ≤ 0 i ∈ I x ∈Ω hinreichend glatt von bekannter Struktur (z.B. Polynome) es können Unterschätzer konstruiert werden (kleine) endliche Mengen „einfache“ konvexe Menge (Box) Globale Optimierung (Global Optimization) f , gi , hi E und I Ω Vorlesung 2 Minimiere unter I Einführung und Motivation 12 / 61 1 Problemstellung 2 Klassifikation f (x) hi (x) = 0 i ∈ E gi (x) ≤ 0 i ∈ I x ∈Ω hinreichend glatt von bekannter Struktur (z.B. Polynome) es können Unterschätzer konstruiert werden (kleine) endliche Mengen „einfache“ konvexe Menge (Box) Globale Optimierung (Global Optimization) f , gi , hi E und I Ω Ziel: Anwendung: Verfahren: Input: Größe : Vorlesung 2 Minimiere unter globales Optimum (i.A. zu schwer, nur sehr kleine Dimension!) kleine nichtlineare Optimalsteuerungsprobleme . . . Branch and Bound: pro Intervall der Unterteilung untere Schranken durch Lösung konvexer Relaxation und obere Schranken durch NLP-Löser algebraische Beschreibung der Funktionen etwa 10-30 Variable (je nach spez. Struktur u.U. auch mehr) I Einführung und Motivation 13 / 61 1 Problemstellung 2 Klassifikation Einige weitere Klassen Meist durch spezielle Anforderungen einer Anwendung motiviert: Multikriterielle Optimierung (Mehrziel-Optimierung): • Beispiele: Portfolio soll Gewinn maximieren und Risiko minimieren; Auto soll möglichst schnell mit möglichst wenig Treibstoff fahren; größte Stabilität eines Bauteils bei geringstem Materialeinsatz, etc. • Darstellung konkurrierender Ziele durch vektorwertige Zielfunktion f : Rn → Rm (bzw. durch ein Partialordnung auf Rm ) • „Pareto-optimale Lösung“: bzgl. Partialordnung nicht verbesserbar • für m klein: Berechnung der „Paretofront“, sonst Rückführung auf Standardverf. durch Skalarisierung (gewichtete Linearkombination) oder lexikographisches Optimieren mittels neuer Nebenbedingungen Vorlesung 2 I Einführung und Motivation 14 / 61 1 Problemstellung 2 Klassifikation Einige weitere Klassen Meist durch spezielle Anforderungen einer Anwendung motiviert: Multikriterielle Optimierung (Mehrziel-Optimierung): • Beispiele: Portfolio soll Gewinn maximieren und Risiko minimieren; Auto soll möglichst schnell mit möglichst wenig Treibstoff fahren; größte Stabilität eines Bauteils bei geringstem Materialeinsatz, etc. • Darstellung konkurrierender Ziele durch vektorwertige Zielfunktion f : Rn → Rm (bzw. durch ein Partialordnung auf Rm ) • „Pareto-optimale Lösung“: bzgl. Partialordnung nicht verbesserbar • für m klein: Berechnung der „Paretofront“, sonst Rückführung auf Standardverf. durch Skalarisierung (gewichtete Linearkombination) oder lexikographisches Optimieren mittels neuer Nebenbedingungen Ableitungsfreie Optimierung (derivative-free optimization): • Es ist jeweils nur f (x) bestimmbar (wird durch Simulation, Messung etc. ermittelt), aber keine Ableitungsinformationen vorhanden. • f (x) billig: numerisches Differenzieren oder Verf. von Nelder-Mead • f (x) teuer: modellerstellende Verfahren (Kriging, Powell, . . . ) Vorlesung 2 I Einführung und Motivation 15 / 61 1 Problemstellung 2 Klassifikation Einige weitere Klassen Stochastische Optimierung: • Statistische Daten in Entscheidungen einbeziehen: Ein-/Ausschalten von Kraftwerken für stochstisches Verbrauchsmodell, Portfoliooptimierung für stochastische Finanzmodelle, Logistik-Optimierung nach stochastischem Bedarfsmodell • oft Einteilung in gewichtete mehrstufige Szenarien, rekursives Lösen mit Standardverfahren Vorlesung 2 I Einführung und Motivation 16 / 61 1 Problemstellung 2 Klassifikation Einige weitere Klassen Stochastische Optimierung: • Statistische Daten in Entscheidungen einbeziehen: Ein-/Ausschalten von Kraftwerken für stochstisches Verbrauchsmodell, Portfoliooptimierung für stochastische Finanzmodelle, Logistik-Optimierung nach stochastischem Bedarfsmodell • oft Einteilung in gewichtete mehrstufige Szenarien, rekursives Lösen mit Standardverfahren Robuste Optimierung: • Gegen Datenunsicherheit, Mindestanforderungen oder Ungenauigkeiten in der realen Umsetzung absichern: leichteste Brücke für unterschiedliche Lasten, Entwurf von Antennen-Arrays, Mindestproduktionskapazitäten auch bei Maschinenausfällen • geschickte Modellierung erlaubt oft den Einsatz von Standardverfahren Vorlesung 2 I Einführung und Motivation 17 / 61 3 Einführung 4 Orakel und Modellfunktionen Teil II Freie Optimierung Vorlesung 2 II Freie Optimierung 18 / 61 3 Einführung 4 Orakel und Modellfunktionen Inhaltsübersicht 3Einführung in die freie Optimierung 4Orakel und Modellfunktionen Vorlesung 2 II Freie Optimierung 19 / 61 3 Einführung 4 Orakel und Modellfunktionen Freie Nichtlineare Optimierung Verfahren zur Minimierung glatter Funktionen ohne Nebenbedingungen, min f (x), x∈Rn f : Rn → R hinreichend glatt Hinreichend glatt bedeutet, dass f so oft stetig differenzierbar sein soll, wie es für das jeweilige Verfahren erforderlich ist. Vorlesung 2 II Freie Optimierung 20 / 61 3 Einführung 4 Orakel und Modellfunktionen Freie Nichtlineare Optimierung Verfahren zur Minimierung glatter Funktionen ohne Nebenbedingungen, min f (x), x∈Rn f : Rn → R hinreichend glatt Hinreichend glatt bedeutet, dass f so oft stetig differenzierbar sein soll, wie es für das jeweilige Verfahren erforderlich ist. Ziele für die Verfahren: • Finde ein lokales Minimum (sogar weniger: finde ein x̄, das die notwendigen Opt.-Bedingungen 1. Ordnung erfüllt, siehe dort) • schnelle Konvergenz in der Nähe lokaler Optima • der Rechenaufwand soll möglichst klein bleiben • numerische Stabilität und hohe Genauigkeit Vorlesung 2 II Freie Optimierung 21 / 61 3 Einführung 4 Orakel und Modellfunktionen Freie Nichtlineare Optimierung Verfahren zur Minimierung glatter Funktionen ohne Nebenbedingungen, min f (x), x∈Rn f : Rn → R hinreichend glatt Hinreichend glatt bedeutet, dass f so oft stetig differenzierbar sein soll, wie es für das jeweilige Verfahren erforderlich ist. Ziele für die Verfahren: • Finde ein lokales Minimum (sogar weniger: finde ein x̄, das die notwendigen Opt.-Bedingungen 1. Ordnung erfüllt, siehe dort) • schnelle Konvergenz in der Nähe lokaler Optima • der Rechenaufwand soll möglichst klein bleiben • numerische Stabilität und hohe Genauigkeit Anwendungen: • nichtlineare Kleinste-Quadrate-Probleme • als Unterroutine für Optimierungsprobleme mit Nebenbedingungen [siehe Barriere-, Straf- und augmentierte Lagrange-Verfahren] Vorlesung 2 II Freie Optimierung 22 / 61 3 Einführung 4 Orakel und Modellfunktionen Freie Nichtlineare Optimierung Verfahren zur Minimierung glatter Funktionen ohne Nebenbedingungen, min f (x), x∈Rn f : Rn → R hinreichend glatt Hinreichend glatt bedeutet, dass f so oft stetig differenzierbar sein soll, wie es für das jeweilige Verfahren erforderlich ist. Ziele für die Verfahren: • Finde ein lokales Minimum (sogar weniger: finde ein x̄, das die notwendigen Opt.-Bedingungen 1. Ordnung erfüllt, siehe dort) • schnelle Konvergenz in der Nähe lokaler Optima • der Rechenaufwand soll möglichst klein bleiben • numerische Stabilität und hohe Genauigkeit Anwendungen: • nichtlineare Kleinste-Quadrate-Probleme • als Unterroutine für Optimierungsprobleme mit Nebenbedingungen [siehe Barriere-, Straf- und augmentierte Lagrange-Verfahren] In welcher Form soll f für die Verfahren zugänglich sein? Vorlesung 2 II Freie Optimierung 23 / 61 3 Einführung 4 Orakel und Modellfunktionen Inhaltsübersicht 3Einführung in die freie Optimierung 4Orakel und Modellfunktionen Vorlesung 2 II Freie Optimierung 24 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel allgemein und Orakel 0. Ordnung In vielen Anwendungen ist die Funktion f nicht analytisch verfügbar (so wie f (x) = x 2 − sin(x)), sondern ergibt sich z.B. aus der Lösung eines Systems von Differentialgleichungen, d.h. aus einer Simulation. Daher setzen allgemeine Optimierungsverfahren nur eine Unterroutine voraus, die das Verfahren nach dem Wert der Funktion und eventuell auch nach Ableitungsinformation in dem jeweils betrachteten Punkt x befragen kann → „Orakel“. Ist die Funktion doch analytisch gegeben, so erzeugen Modellierungssprachen wie AMPL, GAMS, . . . automatisch entsprechende Orakel/Unterroutinen, die den Funktionswert und zusätzlich Ableitungsinformation liefern. Vorlesung 2 II Freie Optimierung 25 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel allgemein und Orakel 0. Ordnung In vielen Anwendungen ist die Funktion f nicht analytisch verfügbar (so wie f (x) = x 2 − sin(x)), sondern ergibt sich z.B. aus der Lösung eines Systems von Differentialgleichungen, d.h. aus einer Simulation. Daher setzen allgemeine Optimierungsverfahren nur eine Unterroutine voraus, die das Verfahren nach dem Wert der Funktion und eventuell auch nach Ableitungsinformation in dem jeweils betrachteten Punkt x befragen kann → „Orakel“. Ist die Funktion doch analytisch gegeben, so erzeugen Modellierungssprachen wie AMPL, GAMS, . . . automatisch entsprechende Orakel/Unterroutinen, die den Funktionswert und zusätzlich Ableitungsinformation liefern. Ein Orakel 0. Ordnung berechnet für gegebenes x ∈ Rn nur den Funktionswert f (x), aber keine Ableitungsinformation. Verfahren für glatte Funktionen benötigen Ableitungsinformation und approximieren diese numerisch durch vielfache Funktionsaufrufe (siehe später). Vorlesung 2 II Freie Optimierung 26 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. Vorlesung 2 II Freie Optimierung 27 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=1.1, y=0 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. h i −1 • ∇f−1(x) ist der Normalvektor ∂y ∂x zur Tangentialebene an den Graphen ∇f nh i o h i x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 1 0 0 −1 Vorlesung 2 II Freie Optimierung 3 2 1 −1 28 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=1.1, y=0 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. h i −1 • ∇f−1(x) ist der Normalvektor ∂y ∂x zur Tangentialebene an den Graphen ∇f nh i o h i x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 3 2 1 1 0 0 −1 −1 Die Tangentialebene bildet das lineare Modell von f in der Nähe von x̄: f¯x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄). Für x nahe bei x̄ ist es eine gute Näherung an f (x): lim x→x̄ Vorlesung 2 f (x) − f (x̄) − ∇f (x̄)T (x − x̄) f (x̄ + h) − f (x̄) − ∇f (x̄)T h = lim = 0. h→0 kx − x̄k khk II Freie Optimierung 29 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=1, y=0.5 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. h i • ∇f−1(x) ist der Normalvektor −1 ∂ x∂ y zur Tangentialebene an den Graphen nh i o h i ∇f x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 3 2 1 1 0 0 −1 −1 Die Tangentialebene bildet das lineare Modell von f in der Nähe von x̄: f¯x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄). Für x nahe bei x̄ ist es eine gute Näherung an f (x): lim x→x̄ Vorlesung 2 f (x) − f (x̄) − ∇f (x̄)T (x − x̄) f (x̄ + h) − f (x̄) − ∇f (x̄)T h = lim = 0. h→0 kx − x̄k khk II Freie Optimierung 30 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=0.9, y=1 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. h i • ∇f−1(x) ist der Normalvektor −1 ∂∂yx zur Tangentialebene an den Graphen nh i o h i ∇f x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 3 2 1 1 0 0 −1 −1 Die Tangentialebene bildet das lineare Modell von f in der Nähe von x̄: f¯x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄). Für x nahe bei x̄ ist es eine gute Näherung an f (x): lim x→x̄ Vorlesung 2 f (x) − f (x̄) − ∇f (x̄)T (x − x̄) f (x̄ + h) − f (x̄) − ∇f (x̄)T h = lim = 0. h→0 kx − x̄k khk II Freie Optimierung 31 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=0.8, y=1.5 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. h i −1 • ∇f−1(x) ist der Normalvektor ∂y∂x ∇f zur nh Tangentialebene i o an den hGraphen i x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 3 2 1 1 0 0 −1 −1 Die Tangentialebene bildet das lineare Modell von f in der Nähe von x̄: f¯x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄). Für x nahe bei x̄ ist es eine gute Näherung an f (x): lim x→x̄ Vorlesung 2 f (x) − f (x̄) − ∇f (x̄)T (x − x̄) f (x̄ + h) − f (x̄) − ∇f (x̄)T h = lim = 0. h→0 kx − x̄k khk II Freie Optimierung 32 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 1. Ordnung: f (x), ∇f (x) Für x ∈ Rn werden Funktionswert f (x) und Gradient ∇f (x) ∈ Rn berechnet. ∂f Gradient: Gradient in x=0.7, y=2 ∂x1 (x) . .. ∇f (x) := ∂f (x) ∂xn • ∇f (x) zeigt in Richtung des steilsten Anstiegs von f in x. • k∇f (x)k misst die Größe des Anstiegs. −1 h i ∂y ∂x ∇f (x) • −1 ist der Normalvektor ∇f zur Tangentialebene an den Graphen nh i o h i x x n y von f in f (x) . x f (x) : x ∈ R 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 3 2 1 1 0 0 −1 −1 Die Tangentialebene bildet das lineare Modell von f in der Nähe von x̄: f¯x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄). Für x nahe bei x̄ ist es eine gute Näherung an f (x): lim x→x̄ Vorlesung 2 f (x) − f (x̄) − ∇f (x̄)T (x − x̄) f (x̄ + h) − f (x̄) − ∇f (x̄)T h = lim = 0. h→0 kx − x̄k khk II Freie Optimierung 33 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα Vorlesung 2 II Freie Optimierung 34 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 ∂x ∂y 2 1∇ f 2 1 h 0 y Vorlesung 2 −1 0 3 (x,y)=(1.1,0), h=(−1.8,1.8) 2.5 Φ(α), lineares Modell Gradient in (x,y)=(1.1,0), h=(−1.8,1.8) 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 35 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα (x,y)=(1.1,0), h=(1,0.5) Gradient in (x,y)=(1.1,0), h=(1,0.5) 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 2 1 0 y Vorlesung 2 −1 0 ∂x ∂y h 1∇ f 2 3 Φ(α), lineares Modell 2.5 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 36 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 1 0 y Vorlesung 2 −1 ∂ y∂ x ∇f −1 3 (x,y)=(0.8,1.5), h=(1,−2) 2.5 Φ(α), lineares Modell Gradient in (x,y)=(0.8,1.5), h=(1,−2) 2 1.5 1 0.5 0 2 h 1 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 37 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 1 y Vorlesung 2 −1 ∂ y∂ x ∇f 0 h −1 −1 3 (x,y)=(0.8,1.5), h=(−1.1,−1.8) 2.5 Φ(α), lineares Modell Gradient in (x,y)=(0.8,1.5), h=(−1.1,−1.8) 2 1.5 1 0.5 0 2 1 0 −0.5 x II Freie Optimierung 0 0.5 1 α 38 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) [Dλh f (x̄) = λDh f (x̄)] α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 ∂x ∂y 2 1∇ f 2 1 h 0 y Vorlesung 2 −1 0 3 (x,y)=(1.1,0), h=(−1.8,1.8) 2.5 Φ(α), lineares Modell Gradient in (x,y)=(1.1,0), h=(−1.8,1.8) 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 39 / 61 3 Einführung 4 Orakel und Modellfunktionen Gradient und Richtungsableitung, lineares Modell Das lineare Modell von f in x̄ hat in jede Richtung h ∈ Rn den gleichen Anstieg wie f in x̄: die Richtungsableitung von f in x̄ in Richtung h, f (x̄ + αh) − f (x̄) ∇f (x̄)T h = lim =: Dh f (x̄) [Dλh f (x̄) = λDh f (x̄)] α↓0 α d Φ(0) der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] [= Ableitung dα 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 ∂x ∂y 2 1∇ f 2 1 h 0 0 y Vorlesung 2 −1 3 (x,y)=(1.1,0), h=(−0.3,0.3) 2.5 Φ(α), lineares Modell Gradient in (x,y)=(1.1,0), h=(−0.3,0.3) 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 40 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Vorlesung 2 II Freie Optimierung 41 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Quadratisches Modell in x=1.1, y=0 ∂2f ∂2f ∂x1 ∂x1 (x) . . . ∂xn ∂x1 (x) .. .. .. ∇2 f (x) := . . . 2.5 ... ∂2f ∂xn ∂xn (x) • ∇2 f (x) ist symmetrisch, falls f zweimal stetig differenzierbar ist. • ∇2 f (x) best. die Krümmung von f • Das quadrat. Modell aus hf (x),i ∇f (x), 2 1.5 f(x,y) ∂2f ∂x1 ∂xn (x) 1 0.5 0 −0.5 3 x ∇2 f (x) schmiegt sich in f (x) an den nh i o x n Graphen von f an. f (x) : x ∈ R 2 3 2 1 1 0 0 −1 y −1 x f (x̄), ∇f (x̄) und ∇2 f (x̄) bilden das quadratische Modell von f um x̄, 1 f˘x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄) + (x − x̄)T ∇2 f (x̄)(x − x̄). 2 Für x nahe bei x̄ ist es eine sehr gute Näherung an f : f (x)−f (x̄)−∇f (x̄)T (x−x̄)− 12 (x−x̄)T ∇2 f (x̄)(x−x̄) limx→x̄ = 0. kx−x̄k2 Vorlesung 2 II Freie Optimierung 42 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Quadratisches Modell in x=1, y=0.5 ∂2f ∂2f ∂x1 ∂x1 (x) . . . ∂xn ∂x1 (x) .. .. .. ∇2 f (x) := . . . 2.5 ... ∂2f ∂xn ∂xn (x) • ∇2 f (x) ist symmetrisch, falls f zweimal stetig differenzierbar ist. • ∇2 f (x) best. die Krümmung von f • Das quadrat. Modell aus hf (x),i ∇f (x), 2 1.5 f(x,y) ∂2f ∂x1 ∂xn (x) 1 0.5 0 −0.5 3 x ∇2 f (x) schmiegt sich in f (x) an den nh i o x n Graphen von f an. f (x) : x ∈ R 2 3 2 1 1 0 0 −1 y −1 x f (x̄), ∇f (x̄) und ∇2 f (x̄) bilden das quadratische Modell von f um x̄, 1 f˘x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄) + (x − x̄)T ∇2 f (x̄)(x − x̄). 2 Für x nahe bei x̄ ist es eine sehr gute Näherung an f : f (x)−f (x̄)−∇f (x̄)T (x−x̄)− 12 (x−x̄)T ∇2 f (x̄)(x−x̄) limx→x̄ = 0. kx−x̄k2 Vorlesung 2 II Freie Optimierung 43 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Quadratisches Modell in x=0.9, y=1 ∂2f ∂2f ∂x1 ∂x1 (x) . . . ∂xn ∂x1 (x) .. .. .. ∇2 f (x) := . . . 2.5 ... ∂2f ∂xn ∂xn (x) • ∇2 f (x) ist symmetrisch, falls f zweimal stetig differenzierbar ist. • ∇2 f (x) best. die Krümmung von f • Das quadrat. Modell aus hf (x),i ∇f (x), 2 1.5 f(x,y) ∂2f ∂x1 ∂xn (x) 1 0.5 0 −0.5 3 x ∇2 f (x) schmiegt sich in f (x) an den nh i o x n Graphen von f an. f (x) : x ∈ R 2 3 2 1 1 0 0 −1 y −1 x f (x̄), ∇f (x̄) und ∇2 f (x̄) bilden das quadratische Modell von f um x̄, 1 f˘x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄) + (x − x̄)T ∇2 f (x̄)(x − x̄). 2 Für x nahe bei x̄ ist es eine sehr gute Näherung an f : f (x)−f (x̄)−∇f (x̄)T (x−x̄)− 12 (x−x̄)T ∇2 f (x̄)(x−x̄) limx→x̄ = 0. kx−x̄k2 Vorlesung 2 II Freie Optimierung 44 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Quadratisches Modell in x=0.8, y=1.5 ∂2f ∂2f ∂x1 ∂x1 (x) . . . ∂xn ∂x1 (x) .. .. .. ∇2 f (x) := . . . 2.5 ... ∂2f ∂xn ∂xn (x) • ∇2 f (x) ist symmetrisch, falls f zweimal stetig differenzierbar ist. • ∇2 f (x) best. die Krümmung von f • Das quadrat. Modell aus hf (x),i ∇f (x), 2 1.5 f(x,y) ∂2f ∂x1 ∂xn (x) 1 0.5 0 −0.5 3 x ∇2 f (x) schmiegt sich in f (x) an den nh i o x n Graphen von f an. f (x) : x ∈ R 2 3 2 1 1 0 0 −1 y −1 x f (x̄), ∇f (x̄) und ∇2 f (x̄) bilden das quadratische Modell von f um x̄, 1 f˘x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄) + (x − x̄)T ∇2 f (x̄)(x − x̄). 2 Für x nahe bei x̄ ist es eine sehr gute Näherung an f : f (x)−f (x̄)−∇f (x̄)T (x−x̄)− 12 (x−x̄)T ∇2 f (x̄)(x−x̄) limx→x̄ = 0. kx−x̄k2 Vorlesung 2 II Freie Optimierung 45 / 61 3 Einführung 4 Orakel und Modellfunktionen Orakel 2. Ordnung: f (x), ∇f (x), ∇2 f (x) Für x̄ ∈ Rn werden f (x̄), ∇f (x̄) und Hessematrix ∇2 f (x̄) (2. Abl.) berechnet. Quadratisches Modell in x=0.7, y=2 ∂2f ∂2f ∂x1 ∂x1 (x) . . . ∂xn ∂x1 (x) .. .. .. ∇2 f (x) := . . . 2.5 ... ∂2f ∂xn ∂xn (x) • ∇2 f (x) ist symmetrisch, falls f zweimal stetig differenzierbar ist. • ∇2 f (x) best. die Krümmung von f • Das quadrat. Modell aus hf (x),i ∇f (x), 2 1.5 f(x,y) ∂2f ∂x1 ∂xn (x) 1 0.5 0 −0.5 3 x ∇2 f (x) schmiegt sich in f (x) an den nh i o x n Graphen von f an. f (x) : x ∈ R 2 3 2 1 1 0 0 −1 y −1 x f (x̄), ∇f (x̄) und ∇2 f (x̄) bilden das quadratische Modell von f um x̄, 1 f˘x̄ (x) := f (x̄) + ∇f (x̄)T (x − x̄) + (x − x̄)T ∇2 f (x̄)(x − x̄). 2 Für x nahe bei x̄ ist es eine sehr gute Näherung an f : f (x)−f (x̄)−∇f (x̄)T (x−x̄)− 12 (x−x̄)T ∇2 f (x̄)(x−x̄) limx→x̄ = 0. kx−x̄k2 Vorlesung 2 II Freie Optimierung 46 / 61 3 Einführung 4 Orakel und Modellfunktionen Quadratisches Modell in Richtung h Das quadratische Modell von f in x̄ hat in jede Richtung h ∈ Rn die gleiche Steigung und Krümmung wie f in x̄. α2 T 2 f˘x̄ (x̄ + αh) = f (x̄) + α∇f (x̄)T h + h ∇ f (x̄)h. 2 [Taylor-Entw. 2. Ordnung der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] Vorlesung 2 II Freie Optimierung 47 / 61 3 Einführung 4 Orakel und Modellfunktionen Quadratisches Modell in Richtung h Das quadratische Modell von f in x̄ hat in jede Richtung h ∈ Rn die gleiche Steigung und Krümmung wie f in x̄. α2 T 2 f˘x̄ (x̄ + αh) = f (x̄) + α∇f (x̄)T h + h ∇ f (x̄)h. 2 [Taylor-Entw. 2. Ordnung der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 ∂x ∂y 2 1∇ f 2 1 h 0 y Vorlesung 2 −1 0 3 (x,y)=(1.1,0), h=(−1.8,1.8) Φ(α), quadratisches Modell quad. Modell in (x,y)=(1.1,0), h=(−1.8,1.8) 2.5 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 48 / 61 3 Einführung 4 Orakel und Modellfunktionen Quadratisches Modell in Richtung h Das quadratische Modell von f in x̄ hat in jede Richtung h ∈ Rn die gleiche Steigung und Krümmung wie f in x̄. α2 T 2 f˘x̄ (x̄ + αh) = f (x̄) + α∇f (x̄)T h + h ∇ f (x̄)h. 2 [Taylor-Entw. 2. Ordnung der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 −1 2 1 0 y Vorlesung 2 −1 0 ∂x ∂y h 1∇ f 2 3 (x,y)=(1.1,0), h=(1,0.5) Φ(α), quadratisches Modell quad. Modell in (x,y)=(1.1,0), h=(1,0.5) 2.5 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 49 / 61 3 Einführung 4 Orakel und Modellfunktionen Quadratisches Modell in Richtung h Das quadratische Modell von f in x̄ hat in jede Richtung h ∈ Rn die gleiche Steigung und Krümmung wie f in x̄. α2 T 2 f˘x̄ (x̄ + αh) = f (x̄) + α∇f (x̄)T h + h ∇ f (x̄)h. 2 [Taylor-Entw. 2. Ordnung der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 1 0 y Vorlesung 2 −1 ∂ y∂ x ∇f −1 3 2 h 1 0 (x,y)=(0.8,1.5), h=(1,−2) Φ(α), quadratisches Modell quad. Modell in (x,y)=(0.8,1.5), h=(1,−2) 2.5 2 1.5 1 0.5 0 −0.5 −1 x II Freie Optimierung 0 0.5 1 α 50 / 61 3 Einführung 4 Orakel und Modellfunktionen Quadratisches Modell in Richtung h Das quadratische Modell von f in x̄ hat in jede Richtung h ∈ Rn die gleiche Steigung und Krümmung wie f in x̄. α2 T 2 f˘x̄ (x̄ + αh) = f (x̄) + α∇f (x̄)T h + h ∇ f (x̄)h. 2 [Taylor-Entw. 2. Ordnung der 1D-Funktion Φ : R → R, Φ(α) := f (x + αh)] 2.5 2 f(x,y) 1.5 1 0.5 0 −0.5 3 2 1 y Vorlesung 2 −1 ∂ y∂ x ∇f 0 h −1 −1 3 2 1 0 (x,y)=(0.8,1.5), h=(−1.1,−1.8) Φ(α), quadratisches Modell quad. Modell in (x,y)=(0.8,1.5), h=(−1.1,−1.8) 2.5 2 1.5 1 0.5 0 −0.5 x II Freie Optimierung 0 0.5 1 α 51 / 61 3 Einführung 4 Orakel und Modellfunktionen „Klein-o-Notation“ Für glatte Funktionen gilt: f (x̄ + h) − f (x̄) − ∇f (x̄)T h = 0. h→0 khk lim Andere Notation dafür: f (x̄ + h) = f (x̄)+∇f (x̄)Th+ o(khk). Lies: „Die lineare Funktion f (x̄)+∇f (x̄)Th ist in der Nähe von x̄ ein solch gute Näherung für die Funktion f (x̄ + h), dass der Unterschied zwischen den beiden schneller als khk gegen null geht.“ Vorlesung 2 II Freie Optimierung 52 / 61 3 Einführung 4 Orakel und Modellfunktionen „Klein-o-Notation“ Für glatte Funktionen gilt: f (x̄ + h) − f (x̄) − ∇f (x̄)T h = 0. h→0 khk lim Andere Notation dafür: f (x̄ + h) = f (x̄)+∇f (x̄)Th+ o(khk). Lies: „Die lineare Funktion f (x̄)+∇f (x̄)Th ist in der Nähe von x̄ ein solch gute Näherung für die Funktion f (x̄ + h), dass der Unterschied zwischen den beiden schneller als khk gegen null geht.“ Analog für das quadratische Modell: 1 f (x̄ + h) = f (x̄)+∇f (x̄)Th+ hT∇2 f (x̄)h + o(khk2 ). 2 Vorlesung 2 II Freie Optimierung 53 / 61 3 Einführung 4 Orakel und Modellfunktionen „Klein-o-Notation“ Für glatte Funktionen gilt: f (x̄ + h) − f (x̄) − ∇f (x̄)T h = 0. h→0 khk lim Andere Notation dafür: f (x̄ + h) = f (x̄)+∇f (x̄)Th+ o(khk). Lies: „Die lineare Funktion f (x̄)+∇f (x̄)Th ist in der Nähe von x̄ ein solch gute Näherung für die Funktion f (x̄ + h), dass der Unterschied zwischen den beiden schneller als khk gegen null geht.“ Analog für das quadratische Modell: 1 f (x̄ + h) = f (x̄)+∇f (x̄)Th+ hT∇2 f (x̄)h + o(khk2 ). 2 Das Landau-Symbol g (h) = o(e g (h)) steht immer als Ersatz für eine nicht weiter interessierende Funktion g (h) mit der Eigenschaft g (h) = 0. h→0 g e(h) lim Also: g (h) wird schneller klein als ge(h) für h → 0. Vorlesung 2 II Freie Optimierung 54 / 61 3 Einführung 4 Orakel und Modellfunktionen „Klein-o-Notation“ Bei Folgen: g (x (k) ) = o(e g (x (k) )), falls gilt: g (x (k) ) = 0. k→∞ g e(x (k) ) lim Vorlesung 2 II Freie Optimierung 55 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Vorlesung 2 II Freie Optimierung r Sr(f) 56 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Funktionsdarstellungen über Niveaulinien [„Linien“] Nr (f ) := {x ∈ Rn : f (x) = r } (contour plots) helfen, Verfahren zu illustrieren. [Höhenlinien in Landkarten, Wetterkarten] r Sr(f) 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 1 0.5 1 0.5 0 Beachte: Der Gradient ist immer orthogonal zur Niveaulinie, denn für x, x + h ∈ Nr (f ) gilt 0 = f (x + h) − f (x) = ∇f (x)T h + o(khk). 0 −0.5 −0.5 −1 −1 1 0.8 0.6 0.4 0.2 Beispiel: quadratische Funktion 1 T T 2x Q x + q x + d mit Q positiv definit. 0 −0.2 −0.4 −0.6 −0.8 −1 −1 Vorlesung 2 II Freie Optimierung −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 57 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Funktionsdarstellungen über Niveaulinien [„Linien“] Nr (f ) := {x ∈ Rn : f (x) = r } (contour plots) helfen, Verfahren zu illustrieren. [Höhenlinien in Landkarten, Wetterkarten] r Sr(f) 0.6 0.4 0.2 0 −0.2 −0.4 1 0.5 1 0.5 0 Beachte: Der Gradient ist immer orthogonal zur Niveaulinie, denn für x, x + h ∈ Nr (f ) gilt 0 = f (x + h) − f (x) = ∇f (x)T h + o(khk). 0 −0.5 −0.5 −1 −1 1 0.8 0.6 0.4 0.2 Beispiel: quadratische Funktion 1 T T 2x Q x + q x + d mit Q indefinit. 0 −0.2 −0.4 −0.6 −0.8 −1 −1 Vorlesung 2 II Freie Optimierung −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 58 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Funktionsdarstellungen über Niveaulinien [„Linien“] Nr (f ) := {x ∈ Rn : f (x) = r } (contour plots) helfen, Verfahren zu illustrieren. [Höhenlinien in Landkarten, Wetterkarten] r Sr(f) 0 −0.2 −0.4 −0.6 −0.8 −1 1 0.5 1 0.5 0 Beachte: Der Gradient ist immer orthogonal zur Niveaulinie, denn für x, x + h ∈ Nr (f ) gilt 0 = f (x + h) − f (x) = ∇f (x)T h + o(khk). 0 −0.5 −0.5 −1 −1 1 0.8 0.6 0.4 0.2 Beispiel: quadratische Funktion 1 T T 2x Q x + q x + d mit Q negativ definit. 0 −0.2 −0.4 −0.6 −0.8 −1 −1 Vorlesung 2 II Freie Optimierung −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 59 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Funktionsdarstellungen über Niveaulinien [„Linien“] Nr (f ) := {x ∈ Rn : f (x) = r } (contour plots) helfen, Verfahren zu illustrieren. [Höhenlinien in Landkarten, Wetterkarten] r Sr(f) 1 0.8 0.6 0.4 0.2 0 1 0.5 1 0.5 0 Beachte: Der Gradient ist immer orthogonal zur Niveaulinie, denn für x, x + h ∈ Nr (f ) gilt 0 = f (x + h) − f (x) = ∇f (x)T h + o(khk). 0 −0.5 −0.5 −1 −1 1 0.8 0.6 0.4 0.2 Beispiel: quadratische Funktion 1 T T 2x Q x + q x + d mit Q positiv semidefinit. 0 −0.2 −0.4 −0.6 −0.8 −1 −1 Vorlesung 2 II Freie Optimierung −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 60 / 61 3 Einführung 4 Orakel und Modellfunktionen Niveaumengen und Niveaulinien f Verfahren der freien nichtlinearen Optimierung betrachten nur Punkte mit besserem Zielfunktionswert als dem derzeitigen, also nur Punkte aus der Niveaumenge von f zu einem Wert r ∈ R, Sr (f ) := {x ∈ Rn : f (x) ≤ r }. Funktionsdarstellungen über Niveaulinien [„Linien“] Nr (f ) := {x ∈ Rn : f (x) = r } (contour plots) helfen, Verfahren zu illustrieren. [Höhenlinien in Landkarten, Wetterkarten] r Sr(f) 1000 800 600 400 200 0 −200 2.5 2 2 1.5 1.5 1 1 0.5 0.5 Beachte: Der Gradient ist immer orthogonal zur Niveaulinie, denn für x, x + h ∈ Nr (f ) gilt 0 = f (x + h) − f (x) = ∇f (x)T h + o(khk). 0 0 −0.5 −0.5 −1 2.5 2 Beispiel: Rosenbrock-Funktion (banana shape) 1 f (x, y ) = 14 [(y − x 2 )2 + 100 (1 − x)2 ] Minimum wird in (1,1) angenommen. y 1.5 1 0.5 0 −0.5 −1 Vorlesung 2 II Freie Optimierung −0.5 0 0.5 x 1 1.5 2 61 / 61