Notice: Unexpected clearActionName after getActionName already called in /var/www/html/includes/context/RequestContext.php on line 338
Optimierungsproblem – Wikipedia (Deutsch) – Lokale Kopie Zum Inhalt springen

Optimierungsproblem

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Maximierungsproblem)

Ein Optimierungsproblem ist ein mathematisches Problem. Die Aufgabe besteht darin, in einer Menge von Alternativen die beste bezüglich eines Zielkriteriums zu bestimmen.<ref>{{#invoke:Vorlage:Literatur|f}}</ref> Ein Beispiel ist das Problem des Handlungsreisenden, also die Bestimmung einer kürzesten Rundreise durch eine Reihe von Städten. Die Modellierung und das Lösen von Optimierungsproblemen sind Teil der mathematischen Optimierung.

Mathematische Definition und Begriffe

Datei:Optimalpunkt Optimalwert.jpg
f}}</ref>

Ein Optimierungsproblem <math>P</math> besteht aus einer 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 <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 vorherigen 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 Optimalpunkt in der Regel ein hochdimensionaler Vektor ist (zum Beispiel die optimale Route im Falle des Problems des Handlungsreisenden) und der Optimalwert 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 kombinatorischen Optimierung wie beispielsweise bei der Formulierung des Problems des Handlungsreisenden.<ref>{{#invoke:Vorlage:Literatur|f}}</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.

{{#invoke:Vorlage:Siehe auch|f}}

Ausgewählte Beispiele

Klassifikation von Optimierungsproblemen

Optimierungsprobleme lassen sich anhand ihrer mathematischen Eigenschaften klassifizieren.

  • Falls <math>V</math> unendlichdimensional ist, ist <math>P</math> ein unendlichdimensionales Optimierungsproblem. Dies tritt etwa in der Variationsrechnung oder der optimalen Steuerung auf. Im Folgenden gehen wir von endlichdimensionalen Optimierungsproblemen aus.
  • Falls <math>P</math> mehrere Zielfunktionen besitzt, sprechen wir von der Mehrzieloptimierung und bezeichnen <math>P</math> als multikriterielles Optimierungsproblem. Im Folgenden gehen wir von Optimierungsproblemen mit einer Zielfunktion aus. Diese werden auch skalare Optimierungsprobleme genannt.
  • Falls <math>P</math> keine Restriktionen besitzt, d. h. falls <math>M=V</math> gilt, ist <math>P</math> ein unrestringiertes Optimierungsproblem, andernfalls ist <math>P</math> ein restringiertes Optimierungsproblem.
  • Falls <math>V=\mathbb B^n </math> gilt, d. h. alle Entscheidungsvariablen binär sind, <math>P</math> keine Restriktionen besitzt und die Zielfunktion <math>f</math> quadratisch ist, so spricht man von quadratischer unrestringierter binärer Optimierung (QUBO).
  • Falls <math>V=\mathbb R^n</math> gilt und die Zielfunktion <math>f</math> sowie die Funktionen <math>g_i,\ i\in I,</math> und <math>h_j,\ j\in J,</math> linear sind, ist <math>P</math> ein (kontinuierliches) lineares Optimierungsproblem (LP).
  • Falls <math>V=\mathbb R^n</math> gilt, die die Gleichungen definierende Funktionen <math>h_j,\ j\in J,</math> linear sind, und die Zielfunktion <math>f</math> sowie ggf. Funktionen <math>g_i,\ i\in I,</math> quadratisch sind, ist <math>P</math> ein (kontinuierliches) quadratisches Optimierungsproblem (QP) bzw. ein (kontinuierliches) quadratisches Optimierungsproblem mit quadratischen Nebenbedingungen (QCQP).
  • Falls <math>V=\mathbb R^n</math> gilt und <math>M</math> eine konvexe Menge ist sowie die Zielfunktion <math>f</math> eine konvexe Funktion, ist <math>P</math> ein konvexes Optimierungsproblem. Man beachte, das die Zielfunktion nicht zwangsläufig differenzierbar sein muss, da auf das Subdifferential zurückgegriffen werden kann und auch die Funktionen <math>g_i,\ i\in I,</math> nicht selbst konvex sein müssen, um eine konvexe zulässige Menge zu definieren<ref>{{#invoke:Vorlage:Literatur|f}}</ref>. Spezialfälle für konvexe Optimierungsprobleme sind konische Optimierungsprobleme (insbesondere semi-definite und Second-Order-Cone Probleme) und geometrische Optimierungsprobleme.
  • Falls <math>V=\mathbb R^n</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 (jedoch meistens stetig differenzierbar) sind, ist <math>P</math> ein nichtlineares Optimierungsproblem (NLP).
  • Falls <math>V=\mathbb Z^n</math> gilt und die Zielfunktion <math>f</math> sowie die Funktionen <math>g_i,\ i\in I,</math> und <math>h_j,\ j\in J,</math> linear sind, ist <math>P</math> ein ganzzahliges lineares Optimierungsproblem (ILP).
  • Falls <math>V=\mathbb{R^n} \times \mathbb{Z^m}</math> gilt, d. h. falls einige der Entscheidungsvariablen kontinuierlich und andere ganzzahlig sind, und die Zielfunktion <math>f</math> sowie die Funktionen <math>g_i,\ i\in I,</math> und <math>h_j,\ j\in J,</math> linear sind, ist <math>P</math> ein gemischt-ganzzahliges lineares Optimierungsproblem (MILP oder MIP).
  • 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> quadratisch sind, ist <math>P</math> ein gemischt-ganzzahliges quadratisches Optimierungsproblem (MIQP oder ggf. MIQCP)
  • 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-ganzzahliges nichtlineares Optimierungsproblem (MINLP)
  • Falls <math>V=\mathbb Z^n</math> gilt, ist <math>P</math> ein kombinatorisches Optimierungsproblem.
  • Falls <math>V=\mathbb R^n</math> gilt und <math>P</math> (abzählbar) unendlich viele Gleichungsrestriktionen besitzt, ist <math>P</math> ein semi-infinites Optimierungsproblem (SIP).

Optimierungsmethoden

{{#if: Mathematische Optimierung#Optimierungsmethoden|{{#ifexist:Mathematische Optimierung#Optimierungsmethoden|

|{{#if: |{{#ifexist:{{{2}}}|

→ Haupt{{#if:|seite|artikel}}: [[{{{2}}}{{#if: ||{{{titel2}}}}}]]{{#if: |{{#ifexist:{{{3}}}| und [[{{{3}}}{{#if: ||{{{titel3}}}}}]]|}}|}}

|{{#if: |{{#ifexist:{{{3}}}|

→ Haupt{{#if:|seite|artikel}}: [[{{{3}}}{{#if: ||{{{titel3}}}}}]]

|}}|}}|}}|}}|}}|Einbindungsfehler: Die Vorlage Hauptartikel benötigt immer mindestens ein Argument.}}

Einen Algorithmus, der ein Optimierungsproblem löst, nennt man 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 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-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 Metaheuristiken eingesetzt werden, die in der Regel jedoch keine Aussage über die Qualität der gefundenen Lösung treffen.

Weblinks

[[wikt:{{#if:|{{{lang}}}:}}{{#if:|{{{1}}}|{{#invoke:WLink|getArticleBase}}}}|Wiktionary: {{#if:|{{{2}}}|{{#if:|{{{1}}}|{{#invoke:WLink|getArticleBase}}}}}}]]{{#switch: 1

|1|= – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen |0|-= |X|x= |#default= –

}}{{#if:| {{#ifeq: {{{lang}}} | de | {{#ifeq: 0 | 0 | }} | ({{#invoke:Multilingual|format|{{{lang}}}|slang=!|shift=m}}) }}}}

{{#invoke:TemplatePar|check

  |opt= 1= 2= lang= suffix=
  |template=Vorlage:Wiktionary
  |cat=Wikipedia:Vorlagenfehler/Schwesterprojekt
  }}
| {{#if: 
    | Vorlage:DNB-Portal – veraltete Parametrisierung 3=
  }}

}}

Einzelnachweise

<references />

{{#ifeq: s | p | | {{#if: 4390818-4 | |

}} }}{{#ifeq:||{{#if: | [[Kategorie:Wikipedia:GND fehlt {{#invoke:Str|left|{{{GNDCheck}}}|7}}]] }}{{#if: | {{#if: | | }} }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#ifeq: s | p | {{#if: 4390818-4 | | {{#if: {{#statements:P227}} | | }} }} }}{{#ifeq: s | p | {{#if: 4390818-4 | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P227}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P244}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P244}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P214}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P214}} | | }} }} }} }}Vorlage:Wikidata-Registrierung