Multikriterielle Optimierung

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Fast Fourier Transformation
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Schnelle Matrizenoperationen von Christian Büttner
Vom graphischen Differenzieren
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Fachreferat in Mathematik
Genetische Algorithmen für die Variogrammanpassung
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Terme mit Variablen Beispiel: Ein Quadrat hat immer 4 gleichlange Seiten. Der Umfang des Quadrats ist die Summe aller Seitenlängen. Auch wenn wir noch.
= = = = 47 = 47 = 48 = =
Klicke Dich mit der linken Maustaste durch das Übungsprogramm!
Algorithmentheorie 04 –Hashing
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Genetische Algorithmen
Kapitel 5 Stetigkeit.
Kapitel 6 Differenzierbarkeit. Kapitel 6: Differenzierbarkeit © Beutelspacher Juni 2005 Seite 2 Inhalt 6.1 Die Definition 6.2 Die Eigenschaften 6.3 Extremwerte.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
K. Desch - Statistik und Datenanalyse SS05
Astronomisch, Physikalische und Mathematische Geodäsie II
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
AC Analyse.
AC Analyse. 2Ausgewählte Themen des analogen Schaltungsentwurfs Sprungantwort.
Minimum Spanning Tree: MST
Schieferdeckarten Dach.ppt
Heute: Scherenzange zeichnen
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
20:00.
Effiziente Algorithmen
Wir üben die Malsätzchen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Polynome und schnelle Fourier-Transformation
Mehrkriterielle Optimierung mit Metaheuristiken

STATISIK LV Nr.: 0028 SS Mai 2005.
PROCAM Score Alter (Jahre)
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Großer Altersunterschied bei Paaren fällt nicht auf!
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
1 Mathematical Programming Nichtlineare Programmierung.
Das Traveling Salesman Problem (TSP)
Technische Frage Technische Frage Bitte löse die folgende Gleichung:
Vom graphischen Differenzieren
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Nichtlineare Optimierung
Optimierungs- Algorithmen
Gliederung der Vorlesung
Geoinformationssysteme
 Präsentation transkript:

Multikriterielle Optimierung Lars Boshold

Inhaltsverzeichniss 1. Optimierung unter Nebenbedingungen 2. Multikriterielle Optimierung 3. Pareto-Optimierung 4. Quellenverzeichnis

Optimierung unter Nebenbedingungen Problemstellung: Minimiere Funktion f(x) unter Nebenbedingungen gi(x) ≥ 0 und hj(x) =0

Optimierung unter Nebenbedingungen Praktischer Hinweis: In der Praxis müssen die Nebenbedingungen nicht zwingend mit Maschinengenauigkeit eingehalten werden.

Optimierung unter Nebenbedingungen Erster Ansatz: Transformation Transformiere ursprüngliches Problem in eines ohne Nebenbedingungen: min(f(x)), hj(x) =0 => min(f2(x)) Aber: Eine solche Transformation ist in der Praxis oftmals nicht durchführbar

Optimierung unter Nebenbedingungen Beispiel: Minimiere Oberfläche einer Kiste bei festem Volumen: min(2*(l*b+h*b+l*b)) unter V=l*g*h=const => min(l*b+(l+b)*V/(l*b))

Optimierung unter Nebenbedingungen Klassischer Ansatz: Lagrange Multiplikatoren Bilde F(x, λ):= f(x) – Σλihi(x) und löse grad F=0 Gewisse Voraussetzungen an f(x) müssen erfüllt sein Lagrange Multiplikatoren vergrößern Dimension des Problems

Optimierung unter Nebenbedingungen Beispiel: minimiere f(x)=x2 unter der Nebenbedingung x=1(d.h. h(x)=x-1) =>F(x, λ)= x2 – λ*(x-1)

Optimierung unter Nebenbedingungen Wie geht man vor, wenn als Nebenbedingungen ebenfalls ein Satz von Ungleichungen gj(x) ≥ 0 vorliegt? Lösung: Führe sogenannte „slack variables“ ein, d.h. schreibe Nebenbed. In der Form gj(x)- aj2=0 => F(x, λ, a)=f(x) – Σλihi(x) – Σλj ( gj(x)-aj2)

Optimierung unter Nebenbedingungen Um Gleichungen für die aj zu erhalten, differentiere F nach aj und setze gleich Null, man erhält 2 λj aj = 0 - λj = 0 => NB ist inaktiv - aj = 0 => NB auf Gleichung reduziert

Optimierung unter Nebenbedingungen Schlussfolgerung: Bei Verwendung von Lagrangen Multiplikatoren können Nebenbedingungen der Form gj(x) ≥ 0 stets als Gleichung aufgefasst bzw., falls nicht verletzt, ignoriert werden.

Optimierung unter Nebenbedingungen Großer Nachteil der Lagrange Multiplikatoren: Minimierung der Lagrange-Funktion löst nicht zwingend das Ausgangsproblem. (z.B. stationäre Punkte mit positiver Hesse-Matrix) Mögliche Lösung: Verwende Newton-Verfahren, um „richtige“ Lösung zu suchen. Aber: Funktioniert nur, wenn Suche in Nähe des gesuchten Minimums beginnt.

Optimierung unter Nebenbedingungen Sequentielle Quadratische Programmierung (nur Grundidee): Verwende quadratische Approximation der Lagrange-Fkt., um eben erwähntes Problem zu umgehen und nähere sich der gesuchten Lösung iterativ an, indem in jedem Schritt das quadratische Minimierungsproblem gelöst wird.

Optimierung unter Nebenbedingungen Je nach Problemstellung kann es erwünscht sein, dass die Nebenbedingungen möglichst „gut“ erfüllt sind, d.h. dass Lösungen erwünscht sind, welche sich im Inneren des zulässigen Bereiches befinden. Beispiel: Nebenbedingung, welche maximale Kostenobergrenze vorgibt

Optimierung unter Nebenbedingungen Methode der zulässigen Richtungen (Feasible Directions Method, FDM) Im Gegensatz zu den Lagrange Mult. hält sich die FDM möglichst weit von den Grenzen des zulässigen Bereichs entfernt, funktioniert folglich nur bei Ungleichungen. Grundidee: Starte an aktiver Grenze und folge der „besten“ Richtung in den zulässigen Wertebereich. Die „beste“ Richtung wird anhand zweier Kriterien bestimmt:

Optimierung unter Nebenbedingungen möglichst rasche Minimierung der Fkt. man möchte die NBen möglichst gut erfüllen Vorgehensweise: b maximiere -sTDgi({x}) + λib ≤ 0, sTDf(x) + b ≤ 0 si² ≤ 1, s definiert die Suchrichtung, λi ≥ 0 sind die sogenannten push-off Faktoren, d.h. sie bestimmen, wie weit die Suche von der Grenze des zuläs. Bereichs entfernt bleibt

Optimierung unter Nebenbedingungen Sobald die Suchrichtung s bestimmt ist, führe eine eindim. Suche in eben diese Richtung aus bis 1.) ein Minimum gefunden werden konnte oder 2.) eine Nebenbedingung verletzt wurde. Im ersten Falle fahre fort mit Minimumssuche ohne Beachtung der NB, im 2. wiederhole Berechnung der zulässigen Richtung und iteriere Prozedur.

Optimierung unter Nebenbedingungen Vorteil der FDM: Lineare Maximierungsproblem können sehr effizient und robust gelöst werden. Nachteil der FDM: Je nachdem, welche Form die Grenzlinie des zulässigen Bereiches hat, kann die Suchrichtung weg von der Grenze kontraproduktiv sein.

Optimierung unter Nebenbedingungen Penalty Function Methods Einfachste Variante: Führe nicht-restringierte Minimumssuche durch, addiere jedes mal eine „große“ Konstante zum Funktionwert, wenn eine NB nicht erfüllt wird.

Optimierung unter Nebenbedingungen Genauer: Arbeite statt mit f(x) mit Funktion fP(x)= f(x)+P, wenn NB nicht erfüllt ist fP(x) = f(x), sonst

Optimierung unter Nebenbedingungen Entscheidende Nachteile dieser Methode: fP(x) nicht glatt Anzahl verletzter NBen bleibt unberücksichtigt Suche führt nicht zwingend in den zulässigen Bereich

Optimierung unter Nebenbedingungen Erweiterter Ansatz: anstatt eines Penalty P nehme einen für jede verletzte Nebenbedingung: fP(x)= f(x)+mP multipliziere P mit einem Wert, welcher abhängt vom Grade der Verletzung der Nebenbedingung: fP(x)= f(x) + ΣP<gi(x) > + ΣP<hj(x) >

Optimierung unter Nebenbedingungen nehme seperate Penaltys für jede NB, d.h. fP(x)= f(x) + ΣPi<gi(x) > + ΣPj<hj(x) > (Skalierung) füge weiteres Set von Penalties hinzu: fP(x)= f(x)+ΣPi<gi(x) >+ΣPj<hj(x) >+ΣSi/gis(x) („interior warning“)

Optimierung unter Nebenbedingungen Vorteil/Nachteil dieser Modifikation: Minima, welche sich an der Grenze des zulässigen Bereiches befinden, werden nicht gefunden.

Optimierung unter Nebenbedingungen Kombination aus Lagrange und Penalty Methoden Funktionen fP(x) unstetig, daher viele Methoden zur Minimumssuche nicht oder nur schwer anwendbar. Idee: Kombiniere Lagrange und Penalty Methoden

Optimierung unter Nebenbedingungen => fm(x)= f(x) - Σλihi(x) + cΣhj(x)2 Vorgehensweise: 0.) wähle λi beliebig, c0=c, ck+1 = 2ck 1.) minimiere fm (x) 2.) λjk+1 = λjk - 2ckhj (x)k h, ck+1 = 2ck d

Optimierung unter Nebenbedingungen Vorteile/Nachteile der vorgestellten Methoden: Transformation: + starke Simplifizierung des Problems - praktisch kaum anwendbar Penalty: + robust - resultierende Fkt. Unstetig FDM: + effizient & robust - bei „schmalem“ zulässigen Bereich können Probleme auftreten SQP: + effektiv, allgemeingültig - Probleme bei Unstetigkeiten

Optimierung unter Nebenbedingungen Insbesondere FDM und SQP werden in der Praxis recht häufig verwendet, FDM für einfachere, SQP durchaus auch für komplexere restringierte Optimierungsprobleme, da recht effektiv und allgemein anwendbar.

Multikriterielle Optimierung Problemstellung: Behandlung von Optimierungsproblemen, bei denen mehrere, sich u.U. widersprechende Zielsetzungen, vorliegen

Multikriterielle Optimierung Beispiele: Portfolio-Optimierung: Gewinnmaximierung – Risikominimierung MKOP min(x2-4x+4) min(-x2+4x+2)

Multikriterielle Optimierung Idee zur Lösung von MKOP: Versuche, den verschiedenen Zielfunktionen Gewichte/Wertigkeiten zuzuordnen. Dies würde z.B. insbesondere dann Sinn machen, wenn das Erreichen eines bestimmten Ziels als wesentlich wichtiger eingestuft werden kann als das eines anderen.

Multikriterielle Optimierung Direct Weight Assignment bewerte die versch. Ziele auf einer Skala, z.B. sehr wichtig, wichtig, neutral, unwichtig, sehr unwichtig addiere die so gewichteten Funktionen (Ziele) nun zu einer über den zulässigen Bereich zu optimierenden Funktion => F(x)=Σλifi(x)

Multikriterielle Optimierung Beispiel: f(x)=x2-2x+4 f(x)=-x2 +4x-2 λ1= 0.8, λ2=0.2 F(x)=0.6x2-0.8x+2.8 F(x) hat min bei x=2/3

Multikriterielle Optimierung Eigenvektor Methode Bewerte paarweise die Relevanz der einzelnen Zielsetzungen in Relation zueinander: Ziel i ist x mal wichtiger als Ziel y, setze pij = x. Sind alle pij konsistent zueinander, so ergibt sich eine Matrix P={pik} mit pik =1/ pki Löse Pw=λmaxw

Multikriterielle Optimierung Beispiel: 3 versch. Ziele, 1 3 6 P= 1/3 1 2 1/6 ½ 1 λmax=3, w=[0.667, 0.222, 0.111] T

Multikriterielle Optimierung Nachteile dieser Methode: nur für Probleme mit kleiner Anzahl Zielsetzungen anwendbar(<10) Konsistenz ist in der Praxis meist nicht gegeben

Pareto-Optimierung Pareto-Optimierung Ein Pareto-Optimum, ist ein Zustand, in dem es nicht möglich ist, ein Individuum besser zu stellen, ohne zugleich ein anderes Individuum schlechter zu stellen.

Die Menge der Pareto-optimalen Punkte heißt Pareto-Front. Pareto-Optimierung Definition: Gegeben sei das MKOP min f1 (x),.…, min fN (x). Eine Lösung x* heißt Pareto – optimal, falls gilt: Gibt es eine Lösung y, so dass fk (y)<fk (x*) für ein k, so existiert ein l mit fl (y)>fl (x*). Die Menge der Pareto-optimalen Punkte heißt Pareto-Front.

=> Verwendung nicht-linearer Funktionen Pareto-Optimierung Bei einem MKOP ist es stets das Ziel, die „beste“ Lösung zu finden. Die DWA Methoden finden jedoch nicht zwingend alle Pareto-optimalen Lösungen: => Verwendung nicht-linearer Funktionen

Pareto-Optimierung Eine Möglichkeit besteht zum Beispiel darin, anstelle von F(x)=Σλifi(x) die Funktion G(x)=Σλifik (x) oder gegebenenfalls eine noch komplexere Fkt. zu verwenden. Einen anderen Ansatz liefert folgende Methode, die zum Ziel hat, mit dem Problem „ungünstig“ geformter Pareto-Fronten umzugehen, indem sie die gewichteten Funktion nicht-linear kombiniert:

Pareto-Optimierung Fuzzy Logic Anstatt jeder Zielsetzung eine feste Wertigkeit zuzuordnen, verwende Funktionen wie in Abbildung.

mögliche weitere Vorgehensweisen: Pareto-Optimierung mögliche weitere Vorgehensweisen: analog wie bei DWA, dividiere durch Anzahl der Funktionen verwende Produkt statt Summe etc Als Ergebnis erhalte Funktion, deren Werte in [0,1] liegen

Resultierende Funktion nicht mehr linear Nachteile: Pareto-Optimierung Vorteile: Designer kann Wertigkeit der einzelnen Ziele mit größerer Toleranz angeben Resultierende Funktion nicht mehr linear Nachteile: Resultierende Funktion kann zwingend noch immer nicht komplette Pareto-Front erreichen Resultierende Funktion „oszilliert“ stark.

Finde Ansatz, welcher obige Problematik umgeht: Pareto-Optimierung Die bisherigen Methoden hatten alle gemein, dass den einzelnen Zielsetzungen gewisse Wertigkeiten zugeteilt wurden. Oftmals ist dies jedoch nicht möglich. Ein weiterer Nachteil besteht dass u.U. sehr komplex zusammengesetzte Funktionen verwendet werden müssen, um die Pareto-Front zu lokalisieren Finde Ansatz, welcher obige Problematik umgeht:

DWA wiederholt ausgeführt mit verschiedenen Gewichtungen Pareto-Optimierung Naheliegende Idee: DWA wiederholt ausgeführt mit verschiedenen Gewichtungen Aber: - Anzahl gegebener Funktionen in der Regel groß (sehr hoher Rechenaufwand) - konvexe Pareto-Fronten können nicht gefunden werden

Ziel ist aber, die Pareto-Front ausfindig zu machen. Pareto-Optimierung Ziel ist aber, die Pareto-Front ausfindig zu machen. Dazu: 1.) Ein Satz Pareto-optimaler Punkte muss gefunden werden 2.) diese müssen gleichmäßig angeordnet sein

Effektive Vorgehensweise: Pareto-Optimierung Effektive Vorgehensweise: suche nicht-dominierte Punkte und archiviere diese n-d Punkte werden solange abgespeichert, bis die gewünschte Anzahl gefunden ist ab dann werden neue n-d Punkte nur dann abgespeichert, wenn sie entweder einen anderen dominieren oder aber zu einer besseren Verteilung der Punkte im Archiv beitragen

Pareto-Optimierung Eine weitere Möglichkeit, mit welcher man die Pareto-Front eines MKOP ausfindig machen kann, liefert die Methode „Nash Equlibria“:

Geg. MKOP - min f1 (x),…, min fN (x) Spielemodell: Pareto-Optimierung Nash Equilibria Geg. MKOP - min f1 (x),…, min fN (x) Spielemodell: Jeder „Spieler“ bekommt ein fi und eine Teilmenge der Variablen zugewiesen, welche er kontrollieren kann. Reihum versuchen die Spieler, „ihr“ fi zu minimieren, wobei sie nur „ihre“ Variablen ändern können

Gleichgewichtszustand Pareto-Optimierung Gleichgewichtszustand Wenn zu Ende „gespielt“ ergibt sich ein Ergebnis, welches auf der Pareto-Front liegt, des weiteren ist dieses Verfahren parallelisierbar, schnell und robust. Aber: Unterschiedliche Startpunkte, Verteilung der Variablen führen zu unterschiedlichen Ergebnissen.

Pareto-Optimierung Zwar ist es mit diesem Verfahren möglich, die Pareto-Front zu lokalisieren, jedoch ist dies nur auf bedingt kontrollierbarem Wege möglich. Aufgrund der vorher beschriebenen positiven Eigenschaften wird dieses Verfahren in der Praxis recht häufig verwendet.

-Keane, Nair: Computional Approaches for Aerospace Design Quellenverzeichnis -Keane, Nair: Computional Approaches for Aerospace Design -wikipedia -eos.tuwien.ac.at -Räbiger, Theis: Optimierung von Mehrkörpersystemen