„Optimierungsproblem“ – Versionsunterschied

[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K typo
Linkvorschlag-Funktion: 3 Links hinzugefügt.
 
(13 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 4:
 
== Mathematische Definition und Begriffe ==
[[Datei:Optimalpunkt Optimalwert.jpg|mini|350px400x400px|Die Minimierung der Funktion <math>f(x) = (x-1)^2+2</math> ergibt den Optimalpunkt <math>x^\star=1</math> und den Optimalwert <math>v=2</math>.<ref>{{Literatur |Autor=Nathan Sudermann-Merx |Titel=Einführung in Optimierungsmodelle |Verlag=Springer |Ort=Berlin / Heidelberg |Datum=2023 |ISBN=978-3-662-67380-5 |DOI=10.1007/978-3-662-67381-2}}</ref> ]]
 
Ein Optimierungsproblem <math>P</math> besteht aus einer [[Reellwertige Funktion|reellwertigen]] '''Zielfunktion''' <math>f </math>, einer '''zulässigen Menge''' <math>M</math>, '''Entscheidungsvariablen''' <math>x</math> und festen problemdefinierenden Eingangsdaten wie etwa den Abständen zwischen den zu besuchenden Städten des Problems des Handlungsreisenden oder dem Wert der Gegenstände im [[Rucksackproblem]]. Es ist gegeben durch
: <math display="block">P:\qquad\min_x f(x)\quad\text{s. t.}\quad x\in M.</math>
Üblicherweise ist hierbei <math>P</math> in einen [[Raum (Mathematik)|Raum]] <math>V</math>, wie etwa den <math>\mathbb{R}^n</math>, eingebettet. In diesem Fall gelten <math>f:V\to \mathbb{R}</math>, <math>M\subseteq V</math> und <math>x\in V</math>. Die Schreibweise <math>\text{s. t.}</math> geht auf den englischen Ausdruck ''subject to'' zurück und bedeutet, dass bei der Suche nach der Lösung von <math>P</math> nur sogenannte '''zulässige Punkte''' <math>x\in M</math>'' infrage kommen. Da <math>\min</math> die Optimierungsrichtung angibt, läge in diesem Fall ein '''Minimierungsproblem''' vor. Bei einem '''Maximierungsproblem''' sind Lösungen <math>x</math> mit möglichst großen <math>f(x)</math> gesucht, aber dieser Fall lässt sich durch Negieren von <math>f</math> auf den vorigenvorherigen zurückführen. Falls <math>P</math> lösbar ist, so gibt es mindestens einen '''Optimalpunkt''' <math>x^\star\in M</math> mit <math>f(x^\star) \le f(x)</math> für alle <math>x\in M</math> und einen eindeutigen '''Optimalwert''' <math>v=f(x^\star)</math>. Zu beachten ist, dass der Optimal''punkt'' in der Regel ein hochdimensionaler Vektor ist (zum Beispiel die optimale Route im Falle des Problems des Handlungsreisenden) und der Optimal''wert'' eine [[reelle Zahl]] ist (etwa die Länge der kürzesten Tour). Die zulässige Menge <math>M</math> von <math>P</math> wird in der Regel durch Gleichungen und Ungleichungen beschrieben und kann daher durch
: <math display="block">M = \{x\in V|\ g_i(x)\le 0,\ h_j(x)=0,\ i\in I,\ j\in J\}</math>
dargestellt werden, wobei <math>I</math> die Indexmenge der '''Ungleichungsrestriktionen''' und <math>J</math> die Indexmenge der '''Gleichungsrestriktionen''' darstellt. ''Restriktionen'' werden auch als '''Nebenbedingungen''' oder ''Constraints'' bezeichnet.
 
== Anmerkungen ==
 
* Anstatt ein Optimierungsproblem [[algebraisch]], also durch Gleichungen und Ungleichungen, zu beschreiben, ist es manchmal auch üblich, die Problemstellung in der Sprache der [[Graphentheorie]] zu formulieren. Dies passiert insbesondere oft in der [[Kombinatorische Optimierung|kombinatorischen Optimierung]] wie beispielsweise bei der Formulierung des Problem des Handlungsreisenden.<ref>{{Literatur |Autor=Bernhard Korte, Jens Vygen |Titel=Combinatorial optimization: theory and algorithms |Nummer= |Auflage=5. |Verlag=Springer |Ort=Berlin Heidelberg |Datum=2012 |Reihe=Algorithms and combinatorics |ISBN=978-3-642-24487-2 |Online=https://www.mathematik.uni-muenchen.de/~kpanagio/KombOpt/book.pdf |Abruf=2024-01-21}}</ref>
* Die funktionale Beschreibung eines Optimierungsproblems, das heißt die Wahl der Funktionen <math>f</math>, <math>g_i</math> und <math>h_j</math>, ist in der Regel nicht eindeutig, sondern das Ergebnis eines Modellierungsprozesses, welcher eine ausreichend genaue Beschreibung der Anwendung bei einer möglichst guten Lösbarkeit des resultierenden Problems gewährleisten soll. Steht die Modellierung im Vordergrund, so spricht man auch von einem [[Optimierungsmodell]].
{{Siehe auch|Optimierungsmodell}}
 
== Ausgewählte Beispiele ==
Zeile 39 ⟶ 45:
* Falls <math>V=\mathbb{R^n} \times \mathbb{Z^m}</math> gilt und beliebig viele der Funktionen <math>f</math>, <math>g_i,\ i\in I,</math> und <math>h_j,\ j\in J,</math> beliebig nichtlinear sind, ist <math>P</math> ein ''[[Gemischt-ganzzahlige Optimierung#Mathematische Definition|gemischt-ganzzahliges nichtlineares Optimierungsproblem]] (MINLP)''
* Falls <math>V=\mathbb Z^n</math> gilt, ist <math>P</math> ein [[Kombinatorische Optimierung|''kombinatorisches Optimierungsproblem'']].
* Falls <math>V=\mathbb R^n</math> gilt und <math>P</math> ([[Abzählbare Menge|abzählbar]]) unendlich viele Gleichungsrestriktionen besitzt, ist <math>P</math> ein ''[[semi-infinites Optimierungsproblem]] (SIP)''.
 
== Optimierungsmethoden ==
{{Hauptartikel|Mathematische Optimierung#Optimierungsmethoden}}
Einen Algorithmus, der ein Optimierungsproblem löst, nennt man [[Mathematische Optimierung#Optimierungsmethoden|Optimierungsmethode]] oder Optimierungsalgorithmus. Je nach Klasse des Optimierungsproblems kommen verschiedene Verfahren zum Einsatz. Neben spezialisierten Verfahren, wie etwa dem [[Dijkstra-Algorithmus]] zur Bestimmung kürzester Wege gibt es auch allgemeine Lösungsverfahren, welche anwendungsunabhängig basierend auf der Kenntnis der Problemklasse eingesetzt werden können. Am bekanntesten sind vermutlich die Verfahren der nichtlinearen Optimierung zur Bestimmung lokaler Optimalpunkte wie das [[Gradientenverfahren]], das [[Newtonverfahren]] und [[Quasi-Newton-Verfahren]]. Für die Minimierung der Verlustfunktion im Bereich [[Maschinelles Lernen|Machine Learning]] werden typischerweise leichtfüßige Varianten des Gradientenverfahrens wie das [[stochastische Gradientenverfahren]] (''stochastic gradient descent'') eingesetzt. Für LPs kommen das [[Simplex-Verfahren]] sowie [[Innere-Punkte-Verfahren|Innere-Punkte-Methoden]] zum Einsatz, wobei letztgenannte auch zur Lösung nichtlinearer konvexer Optimierungsprobleme verwendet werden. Optimierungsprobleme, in denen auch ganzzahlige Variablen auftreten, können exakt mit [[Branch-and-Bound]] sowie [[Branch-and-Cut]] Methoden gelöst werden. Darüber hinaus können auch anwendungsspezifische Heuristiken wie die [[Nearest-Neighbor-Heuristik]] oder allgemeine [[Metaheuristik]]en eingesetzt werden, die in der Regel jedoch keine Aussage über die Qualität der gefundenen Lösung treffen.
 
== Weblinks ==